




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上摘要本課程設(shè)計(jì)基于對(duì)matlab軟件以及數(shù)字圖象處理的學(xué)習(xí),制作了一個(gè)GUI界面顯示的圖像處理框。可以實(shí)現(xiàn)對(duì)圖像的讀取、保存、顯示,以及直方圖均衡化、閾值化、小波分解、小波重構(gòu)、加噪、去噪、平滑、銳化、邊緣檢測(cè)、圖像分割等功能。通過對(duì)此課題的制作,對(duì)基于matlab的圖像處理函數(shù)以及小波變換等工程及其應(yīng)用有了更深入的了解。設(shè)計(jì)目的1、掌握有關(guān)數(shù)字圖像的常用方法。2、掌握Matlab圖形工具箱中常用函數(shù)的使用方法。3、能用Matlab完成簡(jiǎn)單的圖像處理。4、學(xué)會(huì)使用Matlab的GUI界面。設(shè)計(jì)要求和設(shè)計(jì)指標(biāo)1、 編寫基本的數(shù)字圖象處理程序,包括圖象的讀取、存儲(chǔ)、顯示、
2、直方圖均衡化、閾值化、小波分解、小波重構(gòu)、加噪、去噪、平滑、銳化、邊緣檢測(cè)、圖像分割等功能(可自己任意設(shè)計(jì)、增減功能)。2、 盡量使用界面GUI(選做)。3、 要求使用Matlab編制程序,寫出報(bào)告。報(bào)告包括:設(shè)計(jì)思路、算法、源程序代碼、運(yùn)行示例、界面GUI等內(nèi)容。GUI界面圖設(shè)計(jì)思路一、 設(shè)計(jì)GUI編輯界面4、 在Matlab中Create New GUI,并保存為new.fig,即出現(xiàn)GUI編輯界面,如圖一所示。5、 在GUI編輯界面設(shè)置Push Button按鈕,并在Property Inspector里更改屬性。依次命名為讀取圖片、保存圖片、退出、加噪、去噪、直方圖均值化、閾值化、邊緣
3、監(jiān)測(cè)、圖像分割、理想平滑、銳化、一維離散小波變換、二維離散小波變換。6、 點(diǎn)擊Axes鍵,劃定圖像顯示區(qū)域,如圖一所示。二、 添加圖像處理程序1、 選中“讀取圖片”按鈕,右鍵點(diǎn)擊view callbackscallback,Editor框自動(dòng)跳到該按鈕對(duì)應(yīng)的編程區(qū)function pushbutton1_Callback(hObject, eventdata, handles)。在注釋的后面添加“讀取圖片”所需要的程序,如下:%選擇圖片路徑filename,pathname=.uigetfile('*.jpg''*bmp''*gif','
4、選擇圖片');%合成路徑+文件名str=pathname filename;global I;%讀取圖片I=imread(str);%顯示圖片imshow(I);2、 點(diǎn)擊運(yùn)行按鈕,即挑出GUI運(yùn)行界面,如圖二所示。此時(shí)點(diǎn)擊“讀取圖片”按鈕,即可在指定路徑添加圖片,并在axes窗口中顯示。3、 依次按照前兩個(gè)步驟,分別添加保存圖片、退出、加噪、去噪、直方圖均值化、閾值化、邊緣監(jiān)測(cè)、圖像分割、理想平滑、銳化、一維離散小波變換、二維離散小波變換等程序,并分別調(diào)試運(yùn)行即可。4、 詳細(xì)程序代碼及運(yùn)行示例及GUI界面見附件。算法的應(yīng)用在此次數(shù)字圖像處理中運(yùn)用了多種算法,甚至在有些功能,如銳化就運(yùn)
5、用了5種算法來實(shí)現(xiàn)。算法的具體說明與描述請(qǐng)見附件。邊緣監(jiān)測(cè):edge函數(shù)、Soble邊界探測(cè)器和Canny邊界探測(cè)器分別進(jìn)行邊緣監(jiān)測(cè),用以比較。加噪:疊加均值為0,方差為0.02的高斯噪聲以及疊加密度為0.04的椒鹽噪聲。去噪:先疊加密度為0.04的椒鹽噪聲,再加以去噪。平滑:運(yùn)用低通濾波器銳化:分別采用空間高通濾波法以及四種頻域高通濾波法來銳化。其中頻域銳化分別采用理想高通濾波器、巴特沃斯高通濾波器、指數(shù)型高通濾波器和梯形高通濾波器來實(shí)現(xiàn)。5種算法同時(shí)輸出圖片,進(jìn)行比較。附主要程序代碼如下:讀取圖片:%選擇圖片路徑filename,pathname=.uigetfile('*.jpg
6、''*bmp''*gif','選擇圖片'); %合成路徑+文件名str=pathname filename; global Q; % 定義全局變量Q%讀取圖片Q=imread(str);%顯示圖片imshow(Q);保存圖片:global Q;imwrite(Q,'my.png'); % 圖片保存為my.png退出:close(gcf)直方圖均值化:global Q;figure,imhist(Q);I2=histeq(Q);figure,imshow(I2);閾值化將灰度圖像轉(zhuǎn)化為索引圖像:global Q; X=gra
7、yslice(Q,16); figure(1); imshow(X,hot(16);邊緣檢測(cè):global Q;RGB=Q; figure(1); imshow(RGB);Q=rgb2gray(RGB); figure(2); imshow(Q); colorbar('horiz');ED=edge(Q,'sobel',0.08); figure(3); imshow(ED);圖像分割:global Q; BW=roicolor(Q,128,255); figure(1),imshow(Q) figure(2),imshow(BW);加噪:J1=imnoise(
8、Q,'gaussian',0,0.02); % 疊加均值為0,方差為0.02的高斯噪聲,可以用 % localvar代替figure,imshow (J1);J2=imnoise(Q,'salt & pepper',0.04); % 疊加密度為0.04的椒鹽噪聲。 figure,imshow(J2);去噪:J2=imnoise(Q,'salt & pepper',0.04); % 疊加密度為0.04的椒鹽噪聲。 figure,imshow(J2);Q_Filter1=medfilt2(J2,3 3); %窗口大小為3×3
9、figure,imshow(Q_Filter1);Q_Filter2=medfilt2(J2,5 5); %窗口大小為5×5figure,imshow(Q_Filter2);Q_Filter3=medfilt2(J2,7 7); %窗口大小為7×7figure,imshow(Q_Filter3);理想平滑:figure;imshow(A);A=double(A);m,n=size(A);for i=1:m for j=1:n A(i,j)=A(i,j)*(-1)(i+j); endendfigure;imshow(A,0 255);A=fft2(A);figure;imsh
10、ow(A,0 255);B=abs(A);C=10*log(1+B);figure;imshow(C,0 255);D=zeros(m,n);H=zeros(m,n);Dt=50;for i=1:m for j=1:n D(i,j)=sqrt(i-m/2-1)*(i-m/2-1)+(j-n/2-1)*(j-n/2-1); if D(i,j)<=Dt H(i,j)=1; else H(i,j)=0; end end endG=A.*H;figure;imshow(G,0 255);B=abs(G);C=10*log(1+B);figure;imshow(C,0 255);A=ifft2(G
11、);for i=1:m for j=1:n A(i,j)=A(i,j)*(-1)(i+j); endendfigure;imshow(A,0 255);A=uint8(A);imwrite(A,'test2_change.jpg');銳化: 5種方式實(shí)現(xiàn)銳化clc;I,map=imread(str);figuresubplot(3,2,1),imshow(I,map);I=double(I);IX,IY=gradient(I);GM=sqrt(IX.*IX+IY.*IY);OUT1=GM;subplot(3,3,2),imshow(OUT1,map);OUT2=I;J=find
12、(GM>=10);OUT2(J)=GM(J);subplot(3,2,3),imshow(OUT2,map);OUT3=I;J=find(GM>=10);OUT3(J)=255;subplot(3,2,4),imshow(OUT3,map);OUT4=I;J=find(GM<=10);OUT4(J)=255;subplot(3,2,5),imshow(OUT4,map);OUT5=I;J=find(GM>=10);OUT5(J)=255;Q=find(GM<10);OUT5(Q)=0;subplot(3,2,6),imshow(OUT5,map);一維離散小波變換
13、:load leleccum; s=leleccum(1:3920); ls=length(s); figure,plot(s) %讀入預(yù)先存儲(chǔ)的信號(hào)ca1,cd1=dwt(s,'db1');subplot(1,2,1),plot(ca1);subplot(1,2,2),plot(cd1) %小波分解第一層a1=upcoef('a',ca1,'db1',1,ls);d1=upcoef('d',cd1,'db1',1,ls);subplot(1,2,1),plot(a1);subplot(1,2,2),plot(d1
14、); %重構(gòu)得到的近似信號(hào)和細(xì)節(jié)信號(hào)figure,plot(a1+d1); %近似與細(xì)節(jié)相加a0=idwt(ca1,cd1,'db1',ls);figure,plot(a0); %小波反變換重構(gòu)C,L=wavedec(s,3,'db1'); %第三層小波分解ca3=appcoef(C,L,'db1',3);figure,plot(ca3); %近似分量cd3=detcoef(C,L,3);cd2=detcoef(C,L,2);cd1=detcoef(C,L,1);plot(cd3);figure,plot(cd2);figure,plot(cd1
15、); %三層細(xì)節(jié)分量a3=wrcoef('a',C,L,'db1',3);figure,plot(a3); %重構(gòu)第三層近似信號(hào)d3=wrcoef('d',C,L,'db1',3);d2=wrcoef('d',C,L,'db1',2);d1=wrcoef('d',C,L,'db1',1);plot(d3);figure,plot(d2);figure,plot(d1); %重構(gòu)3層細(xì)節(jié)信號(hào)a0=waverec(C,L,'db1');figure,plo
16、t(a0); %重構(gòu)信號(hào)在第1層的近似信號(hào)二維離散小波變換:load woman2nbcol=size(map,1);colormap(pink(nbcol);cod_X=wcodemat(X,nbcol);image(cod_X);axis('square'); %編碼后的原始圖像ca1,ch1,cv1,cd1=dwt2(X,'db1');cod_ca1=wcodemat(ca1,nbcol);cod_ch1=wcodemat(ch1,nbcol);cod_cv1=wcodemat(cv1,nbcol);cod_cd1=wcodemat(cd1,nbcol);
17、image(cod_ca1,cod_ch1;cod_cv1,cod_cd1); %對(duì)圖像小波分解ca2,ch2,cv2,cd2=dwt2(ca1,'db1');cod_ca2=wcodemat(ca2,nbcol);cod_ch2=wcodemat(ch2,nbcol);cod_cv2=wcodemat(cv2,nbcol);cod_cd2=wcodemat(cd2,nbcol);image(cod_ca2,cod_ch2;cod_cv2,cod_cd2);axis('square') %第2層 a0=idwt2(ca1,ch1,cv1,cd1,'db1
18、',size(X);a0=wcodemat(a0,nbcol);image(a0);axis('square'); %第1層重構(gòu)C,S=wavedec2(X,2,'db1');ca2=appcoef2(C,S,'db1',2);ch2=detcoef2('h',C,S,2);cv2=detcoef2('v',C,S,2);cd2=detcoef2('d',C,S,2);cod_ca2=wcodemat(ca2,nbcol);cod_ch2=wcodemat(ch2,nbcol);cod_cv
19、2=wcodemat(cv2,nbcol);cod_cd2=wcodemat(cd2,nbcol);image(cod_ca2,cod_ch2;cod_cv2,cod_cd2);axis('square');ca1=appcoef2(C,S,'db1',1);ch1=detcoef2('h',C,S,1);cv1=detcoef2('v',C,S,1);cd1=detcoef2('d',C,S,1);cod_ca1=wcodemat(ca1,nbcol);cod_ch1=wcodemat(ch1,nbcol);co
20、d_cv1=wcodemat(cv1,nbcol);cod_cd1=wcodemat(cd1,nbcol);image(cod_ca1,cod_ch1;cod_cv1,cod_cd1);axis('square') %第二層細(xì)節(jié)分量a2=wrcoef2('a',C,S,'db1',2);cod_a2=wcodemat(a2,nbcol);subplot(2,2,1),image(cod_a2);axis('square');h2=wrcoef2('h',C,S,'db1',2);v2=wrcoef2
21、('v',C,S,'db1',2);d2=wrcoef2('d',C,S,'db1',2);cod_h2=wcodemat(h2,nbcol);cod_v2=wcodemat(v2,nbcol);cod_d2=wcodemat(d2,nbcol);subplot(2,2,2),image(cod_h2);axis('square');subplot(2,2,3),image(cod_v2);axis('square');subplot(2,2,4),image(cod_h2);axis('square'); %第二層重構(gòu)C,S=upwlev2(C,S,'db1');ca1=appcoef2(C,S,'db1',1);ch1=detcoef2('h',C,S,1);cv1=detcoef2('v',C,S,1);cd1=detcoef2('d',C,S,1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 IEC 60092-376:2025 EN Electrical installations in ships - Part 376: Cables for control and instrumentation circuits 150/250 V (300 V)
- 2025年消防員職業(yè)資格考試試卷及答案
- 2025年休閑體育管理考試試題及答案
- 2025年創(chuàng)意寫作與批評(píng)考試題及答案
- 2025年疾病控制與預(yù)防專業(yè)考試試題及答案的模擬題
- 2025年金融市場(chǎng)分析考試試卷及答案
- 三個(gè)愿望測(cè)試題及答案
- 一造考試真題及答案
- 一級(jí)數(shù)學(xué)試題及答案
- 甘肅省蘭州市第四片區(qū)2024-2025學(xué)年高一下學(xué)期期中考試數(shù)學(xué)試卷(解析)
- 南瓜種植PPT演示課件(PPT 46頁)
- 消防維護(hù)與保養(yǎng)(通用)ppt課件
- 浙江理工大學(xué)研究生培養(yǎng)方案專家論證意見表
- T∕CADERM 3033-2020 創(chuàng)傷中心創(chuàng)傷復(fù)蘇單元內(nèi)醫(yī)師 站位及分工規(guī)范
- 高等數(shù)學(xué)(下)無窮級(jí)數(shù)PPT通用PPT課件
- 大傾角皮帶輸送機(jī)設(shè)計(jì)(全套圖紙)
- 《老北京四合院》
- 常用化學(xué)中英文名詞對(duì)照表
- 第三章磁功能玻璃
- 國(guó)家開放大學(xué)《機(jī)械制造基礎(chǔ)》章節(jié)測(cè)試題參考答案
- 大學(xué)生對(duì)美團(tuán)滿意調(diào)查問卷
評(píng)論
0/150
提交評(píng)論