版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、摘要 Matlab是當今最優(yōu)秀的科技應用軟件之一,它一強大的科學計算與可視化功能,簡單易用,開放式可擴展環(huán)境,特別是所附帶的30多種面向不同領域工具箱支持,使得它在許多科學領域中成為計算機輔助設計與分析,算法研究和應用開發(fā)的基本工具盒首選平臺在圖像處理中,Matlab也得到了廣泛的應用,例如圖像變換,設計FIR濾波器,圖像增強,四叉樹分解,邊緣檢測,小波分析等等。不同的顏色空間在描述圖像的顏色時側(cè)重點不同。如RGB(紅、綠、藍三原色)顏色空間適用于彩色監(jiān)視器和彩色攝象機,HSI(色調(diào)、飽和度、亮度)更符合人描述和解釋顏色的方式(或稱為HSV,色調(diào)、飽和度、亮度),CMY(青、深紅、黃)、CMY
2、K(青、深紅、黃、黑)主要針對彩色打印機、復印機等,YIQ(亮度、色差、色差)是用于NTSC規(guī)定的電視系統(tǒng)格式,YUV(亮度、色差、色差)是用于PAL規(guī)定的電視系統(tǒng)格式,YCbCr(亮度單一要素、藍色與參考值的差值、紅色與參考值的差值)在數(shù)字影像中廣泛應用。彩色圖像的處理有時需要將圖像數(shù)據(jù)在不同的顏色空間中表示,因此,圖像的顏色空間之間的轉(zhuǎn)換成為一項有意義的工作。其中RGB在顏色空間轉(zhuǎn)換中其關鍵作用,是各個空間轉(zhuǎn)換的橋梁。Matlab中的顏色空間轉(zhuǎn)換只涉及到了RGB、HSV、YCbCr、YIQ等,沒有包含l和其它顏色空間的轉(zhuǎn)換。 關鍵字:Matlab,圖像處理,RGB 武漢理工大學本科生能力拓
3、展訓練任務書學生姓名 專業(yè)班級:指導教師 : 工作單位 :自動化學院題目: 圖像顏色RGB調(diào)整的MATLAB實現(xiàn) 初始條件: PC機,MATLAB要求完成的主要任務:對24bits彩色圖像的顏色,使用RGB顏色模型, 來對其進處理。 設計圖形界面(GUI)程序,使用三個滑動條實現(xiàn)R,G,B各分量上下可調(diào)。調(diào)整范圍在0到1之間,即:滑動條被拖動時,產(chǎn)生一個0到1之間的系數(shù),乘以該分量的原始值,得到調(diào)整后的分量值。顯示原始圖像,和調(diào)整后的圖像。同時顯示原始的R,G,B三分量的灰度圖像。任務安排:設計任務及要求分析方案比較及論證說明系統(tǒng)原理闡述,寫入設計方案及結構圖軟件設計說明:軟件思想,流程圖,源
4、程序及注釋調(diào)試記錄及結果分析總結參考資料5篇以上附錄:程序清單時間安排:6月25日 安排設計任務6月28日 收集資料,方案選擇7月1日 程序設計7月5日-8日 程序調(diào)試7月8日- 撰寫報告9月7日 交設計報告 指導教師簽名: 年 月 日 系主任簽(或責任教師)簽名: 年 月 日 目錄摘要TOC o 1-3 h u HYPERLINK l _Toc1498 1.MATLAB簡介 1.MATLAB簡介 MATLAB是美國MathWorks公司出品的商業(yè)HYPERLINK /view/1658637.htm數(shù)學軟件,用于HYPERLINK /view/7420.htm算法開發(fā)、數(shù)據(jù)可視化、數(shù)據(jù)分析以
5、及HYPERLINK /view/920695.htm數(shù)值計算的高級技術計算語言和交互式環(huán)境,主要包括MATLAB和Simulink兩大部分。MATLAB是matrix和laboratory兩個詞的組合,意為矩陣工廠(矩陣實驗室 圖1-1HYPERLINK /picview/10598/10598/0/0ff41bd5ad6eddc42061e47838dbb6fd536633aa.html MATLAB工作界面)。是由美國HYPERLINK /view/1855191.htmmathworks公司發(fā)布的主要面對科學計算、可視化以及交互式HYPERLINK /view/8332.htm程序設計
6、的高科技計算環(huán)境。它將HYPERLINK /view/295760.htm數(shù)值分析、HYPERLINK /view/2627393.htm矩陣計算、科學數(shù)據(jù)可視化以及非HYPERLINK /view/300474.htm線性動態(tài)系統(tǒng)的HYPERLINK /view/44500.htm建模和仿真等諸多強大功能集成在一個易于使用的視窗環(huán)境中,為科學研究、工程設計以及必須進行有效HYPERLINK /view/920695.htm數(shù)值計算的眾多科學HYPERLINK /view/257682.htm領域提供了一種全面的解決方案,并在很大程度上擺脫了傳統(tǒng)非交互式HYPERLINK /view/1285
7、11.htm程序設計語言(如C、Fortran)的編輯模式,代表了當今國際科學計算軟件的先進水平。MATLAB和HYPERLINK /view/30608.htmMathematica、HYPERLINK /view/127864.htmMaple并稱為三大HYPERLINK /view/1284.htm數(shù)學軟件。它在數(shù)學類科技應用軟件中在數(shù)值計算方面首屈一指。MATLAB可以進行HYPERLINK /view/10337.htm矩陣運算、繪制HYPERLINK /view/15061.htm函數(shù)和數(shù)據(jù)、實現(xiàn)HYPERLINK /view/7420.htm算法、創(chuàng)建用戶界面、連接其他HYPER
8、LINK /view/552871.htm編程語言的程序等,主要應用于工程計算、控制設計、HYPERLINK /view/642820.htm信號處理與通訊、HYPERLINK /view/14662.htm圖像處理、HYPERLINK /view/1345304.htm信號檢測、HYPERLINK /view/2659790.htm金融建模設計與分析等HYPERLINK /view/257682.htm領域。MATLAB的基本數(shù)據(jù)單位是矩陣,它的HYPERLINK /view/178461.htm指令HYPERLINK /view/420676.htm表達式與HYPERLINK /view/
9、1284.htm數(shù)學、工程中常用的形式十分相似,故用MATLAB來解算問題要比用C,HYPERLINK /view/36402.htmFORTRAN等語言完成相同的事情簡捷得多,并且MATLAB也吸收了像Maple等軟件的優(yōu)點,使MATLAB成為一個強大的HYPERLINK /view/1658637.htm數(shù)學軟件。在新的版本中也加入了對HYPERLINK /view/10075.htmC,HYPERLINK /view/36402.htmFORTRAN,HYPERLINK /view/824.htmC+,HYPERLINK /view/29.htmJAVA的支持??梢灾苯诱{(diào)用,用戶也可以將
10、自己編寫的實用程序?qū)氲組ATLABHYPERLINK /view/15061.htm函數(shù)庫中方便自己以后調(diào)用,此外許多的MATLAB愛好者都編寫了一些經(jīng)典的程序,用戶可以直接進行下載就可以用。2.圖像處理簡介數(shù)字圖像處理,通俗地講是指應用計算機以及數(shù)字設備對圖像進行加工處理的技術。2.1.數(shù)字圖像處理發(fā)展概述20世紀20年代,圖像處理技術首次應用于改善倫敦到紐約之間的海底電纜傳送圖片的質(zhì)量。1964年,美國噴氣推動實驗室用計算機成功地對4000多張月球照片進行處理。 70年代中期,隨著離散數(shù)學理論的創(chuàng)立和完善,數(shù)字圖像處理技術得到了迅猛的發(fā)展,理論和方法不斷完善。90年代,隨著個人計算機進入
11、家庭,硬件價格不斷下降,數(shù)字世界逐漸進入人們的生活。2.2.圖像處理技術圖像處理技術包括:1.圖像信息的獲?。簽榱嗽谟嬎銠C上進行圖像處理,必須把作為處理對象的模擬圖像轉(zhuǎn)換成數(shù)字圖像信息。圖像信息的獲取,一般包括圖像的攝取、轉(zhuǎn)換及數(shù)字化等幾個步驟。該部分主要由處理系統(tǒng)硬件實現(xiàn)。2.圖像信息的存儲于交換:由于數(shù)字圖像信息量大,且在處理過程中必須對數(shù)據(jù)進行存儲和交換,為了解決大數(shù)據(jù)量及交換與傳輸時間的矛盾,通常除采用大容量機內(nèi)存存儲器進行并行傳送,直接存儲訪問外,還必須采用外部磁盤、光盤及磁帶存儲方式,從而達到提高處理的目的。該部分組要功能也由硬件完成。3.數(shù)字圖像處理:數(shù)字圖像處理,即把在空間上離
12、散的,在幅度上量化分層的數(shù)字圖像,在經(jīng)過一些特定數(shù)理模式的加工處理,以達到有利于人眼視覺或某種接收系統(tǒng)所需要的圖像過程。4.數(shù)字圖像通訊:80年代以來,由于計算機技術和超大規(guī)模集成電路技術的巨大發(fā)展,推動了通訊技術(包括語言、數(shù)據(jù)、圖像)的飛速發(fā)展。因為圖像通訊具有形象直觀、可靠、高效率等一系列優(yōu)點,尤其是數(shù)字圖像通訊比模擬圖像通訊更具抗干擾性,便于壓縮編碼處理和易于加密,因此在圖像通訊工程中數(shù)字處理技術獲得廣泛應用。5.圖像的輸出和顯示:數(shù)字圖像處理的最終目的是為了提供便于人眼或接收系統(tǒng)解釋和社別圖像,因此圖像的輸出和顯示很重要。一般圖像輸出的方式可分為硬拷貝,諸如照相、打印、掃描鼓等,還有
13、所謂的軟拷貝,諸如CRT監(jiān)視器及各種新型的平板監(jiān)視器等。3圖像處理的內(nèi)容圖像處理的內(nèi)容包括:1.圖像數(shù)字化:圖像數(shù)字化即圖像采樣和量化,是指把連續(xù)的圖像信號變?yōu)殡x散的數(shù)字信號,以適應計算機的處理。2.圖像編碼壓縮:把數(shù)字化的圖像數(shù)據(jù)按一定規(guī)則進行排列或運算過程,稱為圖像編碼。利用圖像本身的內(nèi)在特性,通過某種特殊的編碼方式,達到減少原圖像數(shù)據(jù)時空占用量的處理叫做圖像壓縮編碼。3.圖像變換:一般指利用正交變換的性質(zhì)和特點,將圖像轉(zhuǎn)換到變換域中進行處理,并且大部分變換都有快速算法。4.圖像增強:圖像增強的目的是突出圖像中所感興趣的部分,如強化圖像的高頻分量,可使圖像中物體輪廓清晰,細節(jié)明顯。5.圖像
14、復原:圖像復原是盡可能恢復圖像的本來面貌,是對圖像整體而言,而且在復原處理時,往往必須追求降質(zhì)原因,以便“對癥下藥”,而增強往往是局部。6.圖像分割:將圖像中包含的物體,按其灰度或幾何特性分割,并進行處理分析,從中提取有效分量、數(shù)據(jù)等有用信息。這是進一步進行圖像處理如模式識別、機器視覺等技術的基礎。7.圖像分類:簡單地說就是在圖像分割的基礎上,進行我體的判決分類。8.圖像重建:它是對一些三維物體,應用x射線、超聲波等物理方法,取得物體內(nèi)部結構數(shù)據(jù),再將這些數(shù)據(jù)進行運算處理而構成物體內(nèi)部某些部位的圖像。目前圖像重建最成功的例子是CT技術(計算機斷層掃描成像技術)、彩色超聲波等。RGB模型 RGB
15、模型也稱為加色法混色模型。它是以RGB三色光互相疊加來實現(xiàn)混色的方法,因而適合于顯示器等發(fā)光體的顯示。其混色規(guī)律是:以等量的紅、綠、藍基色光混合時。 如果是三原色光中的兩種色光(注意,不是顏料)進行等比例混合的話,那么,得到的結果是品紅、黃、青三色光。紅+綠=黃紅+藍=品紅綠+藍=青紅+綠+藍=白三種基色光全無=黑這是色光混合,稱為加色混合法。加色法的混色規(guī)律可用圖表示。其配色方程描述:F(物體顏色)=R(紅色的百分比)+G(綠色的百分比)+B(藍色的百分比)如果就是這三種顏料相混的話,那么,大體上,紅+綠=暗灰紅;紅+藍=紫色;綠+藍=青綠色。這是色彩混合,稱為減色混合法。切記,色光混合跟顏
16、料混合是不同性質(zhì)的。4.GUI界面設定1.在matlab命令窗口中運行guide命令,來打開GUIDE界面,如下: 圖4-1 GUIDE界面2.然后,選擇空模板(Blang GUI),點擊OK,即可打開GUIDE 的設計界面,如下: 圖4-2 GUIDE設計界面3.點擊工具欄上的菜單編輯器(Menu Editor),打開菜單編輯器,如下: 圖4-3 菜單編輯器在Menu Bar 中新建一個菜單項,名字為“文件”,其他設置請看下圖: 圖4-4 菜單屬性設置5.在“文件”菜單下添加菜單項:“打開”,“保存”,“退出”。見下圖: 圖4-5 完成后的菜單編輯器6.保存我的界面為pjimage.fig.
17、 保存完畢之后,會自動打開pjimage.m 文件,而我們所有的程序都是要寫在這個M 文件里面的。在界面上,單擊鼠標右鍵選擇“Property Inspector”,即可打開屬性窗口。設置當前Figure 窗口的Tag 屬性為:figure_pjimage,窗口的標題(Name 屬性)為:圖像處理圖像處理實例,如下: 圖4-6 GUI界面屬性設置7.然后點擊GUI界面坐側(cè)的Axes按鈕在界面設置出兩個坐標空間,并用上面的方法將兩個坐標空間的Tag屬性改為“axes_src”和 “axes_dst”;然后點擊GUI界面坐廁的push Button按鈕,在界面上設置兩個按鈕1,并用上面的方法將兩個
18、按鈕的Tag屬性分別設置為 “pushbutton_cf” 和 “pushbutton_hz”,String屬性分別設置為 “DCT button”和 “HZ Button”,BabckgroundClor 屬性分別設置為黃色和紅色。設置完后進行保存,得到界面如下圖上所示: 圖4-7 設置完成的GUI界面5.仿真處理設計好圖形界面(GUI)程序,使用三個滑動條實現(xiàn)R,G,B各分量上下可調(diào),即是如下圖所示。 圖5-1原始圖像和調(diào)節(jié)后的圖像改變其紅綠藍系數(shù),得到如下圖 圖5-2 改變滑動條后的調(diào)整圖像至此,該過程結束,達到題目的要求,使用三個滑動條實現(xiàn)R,G,B各分量上下可調(diào)。調(diào)整范圍在0到1之間
19、,顯示原始圖像,和調(diào)整后的圖像。同時顯示原始的R,G,B三分量的灰度圖像。圖像顏色RGB調(diào)整的MATLAB實現(xiàn)完成。 總結 本次的基礎強化訓練結束后,我感觸頗深。想到萬事開頭難,的確是這樣的。剛開始接觸MATLAB時,感覺什么都不懂,因為這個軟件的復雜性遠遠超出了其他的軟件,全英文不說,還比較繁瑣。其實本次課程設計的難點就是在程序編程上面和軟件的使用上。如果以前沒用過這個軟件,我們會很難下手,但是通過慢慢的熟悉這個軟件后,發(fā)現(xiàn)其實主要的難點就是在程序上了。如果沒有程序還是很難做出來的。因為本次課設所涉及到的知識相Matlab的GUI界面以及所涉及到的圖像處理知識其實都只是皮毛。在做起來后,發(fā)現(xiàn)
20、網(wǎng)上查閱資料是很困難的,因為網(wǎng)上資料不全,所以只好查閱相關資料,查閱相關MATLAB書籍,在有了相關的知識儲備后,開始著手設計,一次次是失敗中找原因,有時候找不出來真的是很急,這是候我很感謝同學的無私幫助,關于好多問題,我請教的他們,沒有同學的幫忙這次基礎強化訓練真的是很難做出來的。當最后程序?qū)懲?,把仿真做完時,我終于長長的舒了口氣。本次基礎強化訓練大大的加強了我對MATLAB軟件的熟悉程度和處理問題能力,同時也鍛煉了我查閱相關資料的能力和自我思考能力。 參考文獻1.李顯宏 MATLAB7.x界面設計與編譯技巧 電子工業(yè)出版社 20062. 飛思科技產(chǎn)品研發(fā)中心 MATLAB6.5輔助圖像處理
21、 電子工業(yè)出版社 20033. 羅軍輝 馮平 MATLAB7.0在圖像處理中的應用 機械工業(yè)出版社 20074. 秦襄培 鄭賢中 MATLAB圖像處理寶典 電子工業(yè)出版社 20115. 賀興華 周媛媛 MATLAB7.x圖像處理 人民郵電出版社 2006附錄程序清單:function varargout = pjimage(varargin)% PJIMAGE MATLAB code for pjimage.fig% PJIMAGE, by itself, creates a new PJIMAGE or raises the existing% singleton*.% H = PJIMAG
22、E returns the handle to a new PJIMAGE or the handle to% the existing singleton*.% PJIMAGE(CALLBACK,hObject,eventData,handles,.) calls the local% function named CALLBACK in PJIMAGE.M with the given input arguments.% PJIMAGE(Property,Value,.) creates a new PJIMAGE or raises the% existing singleton*. S
23、tarting from the left, property value pairs are% applied to the GUI before pjimage_OpeningFcn gets called. An% unrecognized property name or invalid value makes property application% stop. All inputs are passed to pjimage_OpeningFcn via varargin.% *See GUI Options on GUIDEs Tools menu. Choose GUI al
24、lows only one% instance to run (singleton).% See also: GUIDE, GUIDATA, GUIHANDLES% Edit the above text to modify the response to help pjimage% Last Modified by GUIDE v2.5 06-Sep-2013 16:11:48% Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct(gui_Name, mfilename, . gui_Sing
25、leton, gui_Singleton, . gui_OpeningFcn, pjimage_OpeningFcn, . gui_OutputFcn, pjimage_OutputFcn, . gui_LayoutFcn, , . gui_Callback, );if nargin & ischar(varargin1) gui_State.gui_Callback = str2func(varargin1);endif nargout varargout1:nargout = gui_mainfcn(gui_State, varargin:);else gui_mainfcn(gui_St
26、ate, varargin:);end% End initialization code - DO NOT EDIT% Executes just before pjimage is made visible.function pjimage_OpeningFcn(hObject, eventdata, handles, varargin)setappdata(handles.figure_pjimage,img_src,0);% This function has no output args, see OutputFcn.% hObject handle to figure% eventd
27、ata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% varargin command line arguments to pjimage (see VARARGIN)% Choose default command line output for pjimagehandles.output = hObject;% Update handles structureguidata(hObject, handles
28、);% UIWAIT makes pjimage wait for user response (see UIRESUME)% uiwait(handles.figure_pjimage);% Outputs from this function are returned to the command line.function varargout = pjimage_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT);% hObject
29、handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Get default command line output from handles structurevarargout1 = handles.output;% % Executes on slider movement.function slider1_Callback(hObject, eventda
30、ta, handles)% hObject handle to slider1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hints: get(hObject,Value) returns position of slider% get(hObject,Min) and get(hObject,Max) to determine range of slidergl
31、obal Rglobal Gglobal Bglobal val1global val2global val3val1=get(hObject,Value);set(handles.text1,String,num2str(val1);axes(handles.axes3);imshow(val1*R);axes(handles.axes4);imshow(val2*G);axes(handles.axes5);imshow(val3*B);axes(handles.axes2);I=cat(3,val1*R,val2*G,val3*B);imshow(I);% Executes during
32、 object creation, after setting all properties.function slider1_CreateFcn(hObject, eventdata, handles)% hObject handle to slider1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called% Hint: slider controls
33、 usually have a light gray background.if isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor) set(hObject,BackgroundColor,.9 .9 .9);end% Executes on slider movement.function slider2_Callback(hObject, eventdata, handles)% hObject handle to slider2 (see GCBO)% eventdata reserve
34、d - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hints: get(hObject,Value) returns position of slider% get(hObject,Min) and get(hObject,Max) to determine range of sliderglobal Rglobal Gglobal Bglobal val1global val2global val3val2=get(hObje
35、ct,Value);set(handles.text2,String,num2str(val2);axes(handles.axes3);imshow(val1*R);axes(handles.axes4);imshow(val2*G);axes(handles.axes5);imshow(val3*B);axes(handles.axes2);I=cat(3,val1*R,val2*G,val3*B);imshow(I);% Executes during object creation, after setting all properties.function slider2_Creat
36、eFcn(hObject, eventdata, handles)% hObject handle to slider2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called% Hint: slider controls usually have a light gray background.if isequal(get(hObject,Backgrou
37、ndColor), get(0,defaultUicontrolBackgroundColor) set(hObject,BackgroundColor,.9 .9 .9);end% Executes on slider movement.function slider3_Callback(hObject, eventdata, handles)% hObject handle to slider3 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure wi
38、th handles and user data (see GUIDATA)% Hints: get(hObject,Value) returns position of slider% get(hObject,Min) and get(hObject,Max) to determine range of sliderglobal Rglobal Gglobal Bglobal val1global val2global val3val3=get(hObject,Value);set(handles.text3,String,num2str(val3);axes(handles.axes3);
39、imshow(val1*R);axes(handles.axes4);imshow(val2*G);axes(handles.axes5);imshow(val3*B);axes(handles.axes2);I=cat(3,val1*R,val2*G,val3*B);imshow(I);% Executes during object creation, after setting all properties.function slider3_CreateFcn(hObject, eventdata, handles)% hObject handle to slider3 (see GCB
40、O)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called% Hint: slider controls usually have a light gray background.if isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor) set(hObject,Backgrou
41、ndColor,.9 .9 .9);end% function Untitled_1_Callback(hObject, eventdata, handles)% hObject handle to Untitled_1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% function m_file_open_Callback(hObject, eventdata, h
42、andles)% hObject handle to m_file_open (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)filename,pathname=uigetfile(.*.bmp;*.jpg;*.png;*.jpeg,ImageFiles(*.bmp,*.jpg,*.png,*.jpeg);.*.*,All Files(*.*),.Pick an image
43、);if isequal(filename,0)|isequal(pathname,0), return; endglobal Rglobal Gglobal Baxes(handles.axes1); fpath=pathname filename; w=imread(fpath); imshow(w); A=w; R=A(:,:,1);G=A(:,:,2);B=A(:,:,3);% function m_file_save_Callback(hObject, eventdata, handles)filename,pathname=uiputfile(*.bmp,BMP files;*.j
44、pg;,JPG files,Pick an Image);if isequal(filename,0)|isequal(pathname,0) return;else fpath=fullfile(pathname,filename);endimg_src=getappdata(handles.figure_pjimage,img_src);imwrite(imc_src,fpath);% hObject handle to m_file_save (see GCBO)% eventdata reserved - to be defined in a future version of MAT
45、LAB% handles structure with handles and user data (see GUIDATA)% function m_file_exit_Callback(hObject, eventdata, handles)close(handles.figure_pjimage);% hObject handle to m_file_exit (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and us
46、er data (see GUIDATA)% Executes on slider movement.function slider1_Callback(hObject, eventdata, handles)% hObject handle to slider1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hints: get(hObject,Value) ret
47、urns position of slider% get(hObject,Min) and get(hObject,Max) to determine range of sliderglobal Rglobal Gglobal Bval1=get(hObject,Value); set(handles.text1,String,num2str(val1);axes(handles.axes3);imshow(val1*R);% Executes during object creation, after setting all properties.function slider1_Creat
48、eFcn(hObject, eventdata, handles)% hObject handle to slider1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called% Hint: slider controls usually have a light gray background.if isequal(get(hObject,Backgrou
49、ndColor), get(0,defaultUicontrolBackgroundColor) set(hObject,BackgroundColor,.9 .9 .9);end% Executes on slider movement.function slider2_Callback(hObject, eventdata, handles)% hObject handle to slider2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure wi
50、th handles and user data (see GUIDATA)% Hints: get(hObject,Value) returns position of slider% get(hObject,Min) and get(hObject,Max) to determine range of slider% Executes during object creation, after setting all properties.function slider2_CreateFcn(hObject, eventdata, handles)% hObject handle to s
51、lider2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called% Hint: slider controls usually have a light gray background.if isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor) set(h
52、Object,BackgroundColor,.9 .9 .9);end% Executes on slider movement.function slider3_Callback(hObject, eventdata, handles)% hObject handle to slider3 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hints: get(hOb
53、ject,Value) returns position of slider% get(hObject,Min) and get(hObject,Max) to determine range of slider% Executes during object creation, after setting all properties.function slider3_CreateFcn(hObject, eventdata, handles)% hObject handle to slider3 (see GCBO)% eventdata reserved - to be defined
54、in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called% Hint: slider controls usually have a light gray background.if isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor) set(hObject,BackgroundColor,.9 .9 .9);end附錄資料:不需要的可以自行刪除各類濾
55、波器的MATLAB程序理想低通濾波器IA=imread(lena.bmp);f1,f2=freqspace(size(IA),meshgrid);Hd=ones(size(IA);r=sqrt(f1.2+f2.2);Hd(r0.2)=0;Y=fft2(double(IA);Y=fftshift(Y);Ya=Y.*Hd;Ya=ifftshift(Ya);Ia=ifft2(Ya);figuresubplot(2,2,1),imshow(uint8(IA);subplot(2,2,2),imshow(uint8(Ia);figuresurf(Hd,Facecolor,interp,Edgecolor
56、,none,Facelighting,phong); 二、理想高通濾波器IA=imread(lena.bmp);f1,f2=freqspace(size(IA),meshgrid);Hd=ones(size(IA);r=sqrt(f1.2+f2.2);Hd(r0.2)=0;Y=fft2(double(IA);Y=fftshift(Y);Ya=Y.*Hd;Ya=ifftshift(Ya);Ia=real(ifft2(Ya);figuresubplot(2,2,1),imshow(uint8(IA);subplot(2,2,2),imshow(uint8(Ia);figuresurf(Hd,Fac
57、ecolor,interp,Edgecolor,none,Facelighting,phong); Butterworth低通濾波器IA=imread(lena.bmp);f1,f2=freqspace(size(IA),meshgrid);D=0.3;r=f1.2+f2.2;n=4;for i=1:size(IA,1) for j=1:size(IA,2) t=r(i,j)/(D*D); Hd(i,j)=1/(tn+1); endendY=fft2(double(IA);Y=fftshift(Y);Ya=Y.*Hd;Ya=ifftshift(Ya);Ia=real(ifft2(Ya);fig
58、uresubplot(2,2,1),imshow(uint8(IA);subplot(2,2,2),imshow(uint8(Ia);figuresurf(Hd,Facecolor,interp,Edgecolor,none,Facelighting,phong); Butterworth高通濾波器IA=imread(lena.bmp);f1,f2=freqspace(size(IA),meshgrid);D=0.3;r=f1.2+f2.2;n=4;for i=1:size(IA,1) for j=1:size(IA,2) t=(D*D)/r(i,j); Hd(i,j)=1/(tn+1); e
59、ndendY=fft2(double(IA);Y=fftshift(Y);Ya=Y.*Hd;Ya=ifftshift(Ya);Ia=real(ifft2(Ya);figuresubplot(2,2,1),imshow(uint8(IA);subplot(2,2,2),imshow(uint8(Ia);figuresurf(Hd,Facecolor,interp,Edgecolor,none,Facelighting,phong); 高斯低通濾波器IA=imread(lena.bmp);IB=imread(babarra.bmp);f1,f2=freqspace(size(IA),meshgri
60、d);D=100/size(IA,1);r=f1.2+f2.2;Hd=ones(size(IA);for i=1:size(IA,1) for j=1:size(IA,2) t=r(i,j)/(D*D); Hd(i,j)=exp(-t); endendY=fft2(double(IA);Y=fftshift(Y);Ya=Y.*Hd;Ya=ifftshift(Ya);Ia=real(ifft2(Ya);figuresubplot(2,2,1),imshow(uint8(IA);subplot(2,2,2),imshow(uint8(Ia);figuresurf(Hd,Facecolor,inte
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度重型壓路機買賣及維修保養(yǎng)合同3篇
- 2025年度企業(yè)自駕游租車合同二零二五年度專用4篇
- 2025年度個人智能健康監(jiān)測技術入股協(xié)議4篇
- 2025年個人住宅防水保溫一體化合同范本4篇
- 開店策劃指導的合同(2篇)
- 民營醫(yī)療服務:穩(wěn)中求進關注老齡化+供需錯配格局下的投資機會
- 二零二五版門窗行業(yè)綠色物流與倉儲服務合同4篇
- 網(wǎng)架鋼結構施工方案
- 二零二五版智能門牌系統(tǒng)與物聯(lián)網(wǎng)技術合同4篇
- 公路預埋管線施工方案
- 2025年度版權授權協(xié)議:游戲角色形象設計與授權使用3篇
- 2024年08月云南省農(nóng)村信用社秋季校園招考750名工作人員筆試歷年參考題庫附帶答案詳解
- 防詐騙安全知識培訓課件
- 心肺復蘇課件2024
- 2024年股東股權繼承轉(zhuǎn)讓協(xié)議3篇
- 2024-2025學年江蘇省南京市高二上冊期末數(shù)學檢測試卷(含解析)
- 四川省名校2025屆高三第二次模擬考試英語試卷含解析
- 《城鎮(zhèn)燃氣領域重大隱患判定指導手冊》專題培訓
- 湖南財政經(jīng)濟學院專升本管理學真題
- 考研有機化學重點
- 全國身份證前六位、區(qū)號、郵編-編碼大全
評論
0/150
提交評論