matlab-空域和頻域進(jìn)行濾波處理_第1頁
matlab-空域和頻域進(jìn)行濾波處理_第2頁
matlab-空域和頻域進(jìn)行濾波處理_第3頁
matlab-空域和頻域進(jìn)行濾波處理_第4頁
matlab-空域和頻域進(jìn)行濾波處理_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、圖像平滑處理的空域算法和頻域分析1 技術(shù)要求對已知圖像添加高斯白噪聲,并分別用低通濾波器(頻域法)和鄰域平均法(空域法)對圖像進(jìn)行平滑處理(去噪處理),并分析比較兩種方法處理的效果。2 基本原理2.1 圖像噪聲噪聲在理論上可以定義為“不可預(yù)測,只能用概率統(tǒng)計(jì)方法來認(rèn)識的隨機(jī)誤差”。實(shí)際獲得的圖像一般都因受到某種干擾而含有噪聲。引起噪聲的原因有敏感元器件的內(nèi)部噪聲、相片底片上感光材料的顆粒、傳輸通道的干擾及量化噪聲等。噪聲產(chǎn)生的原因決定了噪聲的分布特性及它和圖像信號的關(guān)系。根據(jù)噪聲和信號的關(guān)系可以將其分為兩種形式:(1)加性噪聲。有的噪聲與圖像信號g(x,y)無關(guān),在這種情況下,含噪圖像f(x,

2、y)可表示為f(x,y)=g(x,y)+n(x,y)(2)乘性噪聲。有的噪聲與圖像信號有關(guān)。這又可以分為兩種情況:一種是某像素處的噪聲只與該像素的圖像信號有關(guān),另一種是某像點(diǎn)處的噪聲與該像點(diǎn)及其鄰域的圖像信號有關(guān),如果噪聲與信號成正比,則含噪圖像f(x,y)可表示為f(x,y)=g(x,y)+n(x,y)g(x,y)另外,還可以根據(jù)噪聲服從的分布對其進(jìn)行分類,這時可以分為高斯噪聲、泊松噪聲和顆粒噪聲等。如果一個噪聲,它的幅度分布服從高斯分布,而它的功率譜密度又是均勻分布的,則稱它為高斯白噪聲,一般為加性噪聲。2.2 圖像平滑處理技術(shù)平滑技術(shù)主要用于平滑圖像中的噪聲。平滑噪聲在空間域中進(jìn)行,其基

3、本方法是求像素灰度的平均值或中值。為了既平滑噪聲又保護(hù)圖像信號,也有一些改進(jìn)的技術(shù),比如在頻域中運(yùn)用低通濾波技術(shù)。(1)空域法在空域中對圖像進(jìn)行平滑處理主要是鄰域平均法。這種方法的基本思想是用幾個像素灰度的平均值來代替每個像素的灰度。假定有一幅N*N個像素的圖像f(x,y),平滑處理后得到一幅圖像g(x,y)。g(x,y)由下式?jīng)Q定 式中,x,y=0,1,2,,N-1;S是(x,y)點(diǎn)鄰域中點(diǎn)的坐標(biāo)的集合,但其中不包括(x,y)點(diǎn);M是集合內(nèi)坐標(biāo)點(diǎn)的總數(shù)。上式說明,平滑化的圖像g(x,y)中每個像素的灰度值均由包含在(x,y)的預(yù)定鄰域中的f(x,y)的幾個像素的灰度值的平均值來決定。(2)頻

4、域法低通濾波法是一種頻域處理方法。在分析圖像信號的頻率特性時,一幅圖像的邊緣、跳躍部分以及顆粒噪聲代表圖像信號的高頻分量,而大面積的背景區(qū)則代表圖像信號的低頻分量。用濾波的方法濾除其高頻部分就能去掉噪聲,使圖像得到平滑。由卷積定理可知 其中F(u,v)是含有噪聲的圖像的傅立葉變換,G(u,v)是平滑處理后的圖像的傅立葉變換,H(u,v)是傳遞函數(shù)。選擇傳遞函數(shù)H(u,v),利用H(u,v)使F(u,v)的高頻分量得到衰減,得到G(u,v)后再經(jīng)傅立葉反變換后就可以得到所希望的平滑圖像g(x,y)了。根據(jù)前面的分析,顯然H(u,v)應(yīng)該具有低通濾波特性,所以這種方法叫低通濾波法平滑化處理。常用的

5、低通濾波器有如下幾種:a.理想低通濾波器一個理想的二維低通濾波器有一個參數(shù) 。它是一個規(guī)定的非負(fù)的量,叫做理想低通濾波器的截止頻率。所謂理想低通濾波器是指以截頻 為半徑的圓內(nèi)的所有頻率都能無損地通過,而在截頻之外的頻率分量完全被衰減。理想低通濾波器可以用計(jì)算機(jī)模擬實(shí)現(xiàn),但是卻不能用電子元器件實(shí)現(xiàn)。b.布特沃斯(Butterworth)低通濾波器一個n階布特沃斯低通濾波器的傳遞函數(shù)由下式表示式中, 為截止頻率。布特沃斯低通濾波器又稱最大平坦低通濾波器。它與理想低通濾波器不同,它的通帶與阻帶之間沒有明顯的不連續(xù)性。也就是說,在通帶和阻帶之間有一個平滑的過度帶,通常把H(u,v)下降到某一值的那一點(diǎn)

6、定為截止頻率 。一般情況下常常采用下降到H(u,v)最大值的 那一點(diǎn)為截止頻率點(diǎn),該點(diǎn)也常稱為半功率點(diǎn),這樣上式可修改成 c.指數(shù)低通濾波器 在圖像處理中常用的另一種平滑濾波器是指數(shù)低通濾波器,由于指數(shù)低通濾波器有更快的衰減率,所以,經(jīng)指數(shù)低通濾波器處理的圖像比布特沃斯低通濾波器處理的圖像稍模糊一些。3 建立模型描述圖像平滑處理用到兩種方法,其中空域法使用鄰域平均法處理,其流程圖如圖1所示Imread()函數(shù)讀取圖像rgb2gray()函數(shù)將原圖轉(zhuǎn)換為灰度圖imnoise()函數(shù)為原圖加高斯白噪聲double()將加了噪聲的圖轉(zhuǎn)換為雙精度型創(chuàng)建3*3模板創(chuàng)建5*5模板創(chuàng)建7*7模板用模板對噪聲

7、圖鄰域平均用模板對噪聲圖鄰域平均用模板對噪聲圖鄰域平均Image()顯示處理后的圖像Image()顯示處理后的圖像Image()顯示處理后的圖像圖1 鄰域平均法模型圖頻域法用二階布特沃斯低通濾波器對圖像濾除噪聲,其程序流程圖如圖2所示:imread()函數(shù)讀取圖像 Size()函數(shù)獲取圖像矩陣大小 Image()顯示處理后的圖像Image()顯示處理后的圖像與噪聲圖的傅立葉變換矩陣相乘后用ifft2()求逆傅立葉變換與噪聲圖的傅立葉變換矩陣相乘后用ifft2()求逆傅立葉變換設(shè)定巴特我司低通濾波器的參數(shù),并求出傳遞函數(shù),截頻20設(shè)定巴特我司低通濾波器的參數(shù),并求出傳遞函數(shù),截頻100fft2(

8、)函數(shù)對噪聲圖進(jìn)行傅立葉變換 將原圖轉(zhuǎn)換為灰度圖wgn()函數(shù)產(chǎn)生高斯白噪聲并加入原來圖像中fft2()對圖像進(jìn)行傅立葉變換巴特沃斯低通濾波器傳遞函數(shù)與圖像傅立葉變換相乘ifft2()函數(shù)進(jìn)行逆傅立葉變換image()函數(shù)顯示圖像圖2 低通濾波法模型圖4 源程序代碼(1)鄰域平均法源程序clear;clc;close all;I=imread('tu.jpg'); %讀取圖像f=rgb2gray(I);%轉(zhuǎn)化成灰度圖subplot(2,3,1);% 分割2*3個窗口。取第一個窗口,下面在第一個窗口處顯示圖像imshow (f);%顯示灰度圖colormap(gray);titl

9、e('原始圖')%給顯示的圖像命名為“原始圖”J=imnoise(f,'gaussian',0,0.09);%給原始圖加入?yún)?shù)為0.09的高斯白噪聲subplot(2,3,2);% 分割2*3個窗口。取第二個窗口,如果下面有繪圖語句,就表示要 %在第二個窗口中繪圖imshow(J);%顯示加了高斯白噪聲的圖像Jtitle('噪聲圖')%命名為“噪聲圖”m n=size(f); %獲取灰度圖的大小 f=double(f);%轉(zhuǎn)換f為雙精度型c=1/9*1 1 1;1 1 1;1 1 1; %3*3模板for i=1:m for j=1:n L=f(

10、i:i,j:j).*c; %求點(diǎn)積 G(i,j)=sum(sum(L);%求和 endendsubplot(2,3,3);image(G);%取第三個窗口title('3*3模板')%命名為“3*3模板”c=1/25*1 1 1 1 1;1 1 1 1 1;1 1 1 1 1; %5*5模板for i=1:m for j=1:n L=f(i:i,j:j).*c; %求點(diǎn)積 G(i,j)=sum(sum(L);%求和 endendsubplot(2,3,4);image(G);%在第四個窗口中顯示圖像title('5*5模板')% 命名為“5*5模板”c=1/49

11、*1 1 1 1 1 1 1;1 1 1 1 1 1 1;1 1 1 1 1 1 1; %7*7模板for i=1:m for j=1:n L=f(i:i,j:j).*c; %求點(diǎn)積 G(i,j)=sum(sum(L);%求和 endendsubplot(2,3,5);image(G);%在第五個窗口中顯示圖像title('7*7模板')% 命名為“7*7模板”(2)低通濾波法源程序clear;clc;close all;I=imread('tu.jpg'); %讀取圖像m n p=size(I);%獲取圖像矩陣大小I=double(I);將原來的圖像矩陣轉(zhuǎn)換為

12、雙精度型的I=I(1:m,1:n,1).*0.3+I(1:m,1:n,2).*0.51+I(1:m,1:n,1).*0.11;%將原圖轉(zhuǎn)換為灰度圖subplot(2,3,1);image(I);colormap(gray); %分割2*3個窗口。取第一個窗口,顯示灰度圖 title('原始圖')%命名為“原始圖”Noise=wgn(m,n,25);%產(chǎn)生25dBm的高斯白噪聲New = Noise + I;%將高斯白噪聲與原始信號疊加subplot(2,3,2);image(New);%在第二個窗口中顯示加了噪聲的圖像title('噪聲圖')%命名為“噪聲圖”g

13、=fft2(New); % 傅立葉變換g=fftshift(g); % 轉(zhuǎn)換數(shù)據(jù)矩陣M,N=size(g); %獲取矩陣大小nn=2; % 定義二階巴特沃斯(Butterworth)低通濾波器d0=20; %截止頻率為20m=fix(M/2); n=fix(N/2);圓整函數(shù)for i=1:M for j=1:N d=sqrt(i-m)2+(j-n)2); h=1/(1+0.414*(d/d0)(2*nn); % 計(jì)算低通濾波器傳遞函數(shù) result(i,j)=h*g(i,j);%傳遞函數(shù)與信號傅立葉變換函數(shù)相乘 endendresult=ifftshift(result);J2=ifft2(

14、result); %逆傅立葉變換J3=uint8(real(J2);%將輸出圖像轉(zhuǎn)換為8位數(shù)據(jù)存儲subplot(2,3,3);image(J3); %在第三個窗口中顯示濾波后的圖像title('截止頻率20 ') %命名為“截止頻率20”nn=2; % 定義二階巴特沃斯(Butterworth)低通濾波器d0=100; %截止頻率為100m=fix(M/2); n=fix(N/2);圓整函數(shù)for i=1:M for j=1:N d=sqrt(i-m)2+(j-n)2); h=1/(1+0.414*(d/d0)(2*nn); % 計(jì)算低通濾波器傳遞函數(shù) result(i,j)

15、=h*g(i,j); %傳遞函數(shù)與信號傅立葉變換函數(shù)相乘 endendresult=ifftshift(result);J2=ifft2(result);%二維逆傅立葉變換J3=uint8(real(J2); %轉(zhuǎn)換為8位存儲的圖像subplot(2,3,4);image(J3); %在第四個窗口中顯示綠波后的圖像title('截止頻率100 ')%命名為“截止頻率100”5 調(diào)試過程及結(jié)論在MatLab中輸入鄰域平均法程序代碼后運(yùn)行程序,得到輸出結(jié)果如圖3所示: 圖3 鄰域平均法輸出圖像由噪聲圖與濾波后的圖像對比可看出,鄰域平均法對抑制噪聲有明顯的效果,但隨著鄰域的加大,就是

16、隨著模板的加大,圖像的模糊程度也愈加嚴(yán)重。在MatLab中輸入低通濾波法程序代碼后運(yùn)行程序,得到輸出結(jié)果如圖4所示:圖4 低通濾波法輸出圖像巴特沃斯低通濾波器的去噪效果與所選的截止頻率有關(guān),由于一幅圖像的邊緣、跳躍部分以及顆粒噪聲代表圖像信號的高頻分量,而大面積的背景區(qū)則代表圖像信號的低頻分量所以,截頻設(shè)的太低會使圖像變得越模糊,因?yàn)閳D像的許多細(xì)節(jié)信息也被濾掉了。6 心得體會這次能力強(qiáng)化訓(xùn)練是圖像平滑處理的空預(yù)算法和頻域分析,需要有一定的對數(shù)字圖像處理方面的知識,由于沒有學(xué)習(xí)過數(shù)字圖像處理這門課,已開始題目布置下來時感到無從下手,查閱了大量資料,對圖像平滑處理有了一定的了解,對于MatLab剛

17、開始接觸,許多語法、函數(shù)都不會使用,于是和同學(xué)互相討論,通過參考大量資源,站在巨人的肩膀上稍加整合創(chuàng)新,最終得出了自己的程序,程序調(diào)試運(yùn)行后,發(fā)現(xiàn)最開始根本無法顯示圖像,檢查原因,原來是對MatLab的符號規(guī)則不清楚,MatLab中的標(biāo)點(diǎn)符號必須是在英文狀態(tài)下輸入,這在編寫程序時必須小心!修改后得到了正確的顯示,但是圖像效果對比不明顯,通過不斷摸索試探,使用不同的圖像顯示函數(shù),得到了對比鮮明的圖像,對分析不同方法的優(yōu)缺點(diǎn)提供了很大方便。 這次數(shù)字圖像處理課程設(shè)計(jì)雖然時間短暫,但我在短時間內(nèi)學(xué)到了許多以前沒有接觸過的數(shù)字圖像處理方面的知識,并最終完成了程序設(shè)計(jì),得到正確的結(jié)果,學(xué)到了許多MatLab的知識。為了完成這次課程設(shè)計(jì),我花費(fèi)了很多精力學(xué)習(xí)MatLab,也查閱了很多關(guān)于MatLab

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論