數(shù)字圖像處理學(xué)4_第1頁
數(shù)字圖像處理學(xué)4_第2頁
數(shù)字圖像處理學(xué)4_第3頁
數(shù)字圖像處理學(xué)4_第4頁
數(shù)字圖像處理學(xué)4_第5頁
已閱讀5頁,還剩61頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 離散傅里葉變換(離散傅里葉變換(DFTDFT) 傅里葉變換是建立以時(shí)間為自變量的“信號”與以頻率為自變量的“頻譜函數(shù)”之間的某種變換關(guān)系。對于有限長序列的離散傅里葉變換的表達(dá)式如下:第第4章章 頻率域圖像增強(qiáng)頻率域圖像增強(qiáng)4.1 二維離散傅里葉變換二維離散傅里葉變換 離散傅里葉反變換式為: 二維離散傅里葉變換的定義二維離散傅里葉變換的定義 令f(x,y)表示一幅大小為MN的圖像,其中x=0,1,2, ,M-1和y=0,1,2, N-1。f 的二維傅立葉變換可表示為F(u,v),如下式所示:其中u=0,1,2, ,M-1 和 v=0,1,2, ,N-11010)(2),(),(MxNyNvyM

2、uxjeyxfvuF 頻域系統(tǒng)是由F(u,v)所張成的坐標(biāo)系,其中u和v用作頻率變量。由u=0,1,2, ,M-1 和v=0,1,2, ,N-1定義的MN矩形區(qū)域常稱為頻率矩形頻率矩形。頻率矩形的大小與輸入圖像的大小相同。 在頻域原點(diǎn)處變換的值F(0,0)稱為傅里葉變換的直流分量。二維離散傅里葉逆變換的表達(dá)式如下:1010)(2),(1),(MuNvNvyMuxjevuFMNyxf 傅里葉頻譜傅里葉頻譜 令R(u,v)和I(u,v)分別表示F(u,v)的實(shí)部和虛部,則傅里葉頻譜定義為: 2/122),(),(),(vuIvuRvuF),(),(),(22vuIvuRvuP),(/ ),(arc

3、tan),(vuRvuIvu 傅里葉變換的性質(zhì)傅里葉變換的性質(zhì) 共軛對稱性: 周期性: ),(),(*vuFvuF),(),(),(),(NvMuFNvuFvMuFvuF 傅里葉頻譜的平移傅里葉頻譜的平移 對于圖像f(x,y), f(x,y)的平移不影響傅里葉變換的幅值,不管圖像延X軸平移,沿Y軸平移,還是兩個方向上都有平移,對應(yīng)的幅值譜和原始圖像是完全一樣的。根據(jù)此性質(zhì),當(dāng)對圖像進(jìn)行傅里葉變換后,如果原點(diǎn)不在圖像的中心,則可以先進(jìn)行平移,省掉幅值譜的原點(diǎn)不在圖像的中心帶來的麻煩。函數(shù)函數(shù)fft2 F=fft2(f) 返回一個大小仍為MN的傅立葉變換。 使用傅立葉變換進(jìn)行濾波時(shí),需要對輸入數(shù)據(jù)

4、進(jìn)行零填充。 F=fft2(f,P,Q) 使用該語法, fft2將使用所要求的0的個數(shù)對輸入圖像進(jìn)行填充,以便結(jié)果函數(shù)的大小為PQ。4.2 二維離散傅里葉變換的二維離散傅里葉變換的MATLAB計(jì)算計(jì)算 頻譜函數(shù)頻譜函數(shù)abs s=abs(F) 返回傅里葉變換的頻譜。 F=fft2(f); S=abs(F); imshow(S, ) 將頻譜的原點(diǎn)移動到頻率矩形的中心: F=fft2(f); Fc=fftshift(F); S=abs(Fc); imshow(S, ) 改變頻譜顯示的動態(tài)范圍: F=fft2(f); Fc=fftshift(F); S=abs(Fc); S2=log(1+S); i

5、mshow(S2, ) 傅里葉逆變換傅里葉逆變換 f=ifft2(F) f1=real(f) 頻域?yàn)V波與線性空間濾波頻域?yàn)V波與線性空間濾波 兩個空間函數(shù)的卷積可以通過計(jì)算兩個傅立兩個空間函數(shù)的卷積可以通過計(jì)算兩個傅立葉變換函數(shù)的乘積的逆變換得到。相反地,兩葉變換函數(shù)的乘積的逆變換得到。相反地,兩個空間函數(shù)的卷積的傅立葉變換恰好等于兩個個空間函數(shù)的卷積的傅立葉變換恰好等于兩個函數(shù)的傅立葉變換的乘積。函數(shù)的傅立葉變換的乘積。 f(x,y)*h(x,y) H(u,v) F(u,v) f(x,y)h(x,y) H(u,v)*F(u,v)4.3 頻域?yàn)V波頻域?yàn)V波 頻域?yàn)V波的原理頻域?yàn)V波的原理 線性空間濾

6、波由圖像f(x,y)與濾波掩膜h(x,y)卷積完成的。根據(jù)卷積定理,在頻域中可以通過讓F(u,v)乘以H(u,v)來得到相同的結(jié)果,即空間濾波器的傅立葉變換, H(u,v)稱為濾波傳遞函數(shù)。 頻域?yàn)V波的目的是選擇一個濾波器的傳遞函數(shù),以便按照指定的方式修改F(u,v)。 折疊誤差干擾折疊誤差干擾 使用DFT進(jìn)行濾波操作,則圖像及其變換都將自動地看成是周期性的。若周期關(guān)于函數(shù)的非零部分的持續(xù)時(shí)間很靠近,則對周期函數(shù)執(zhí)行卷積運(yùn)算會導(dǎo)致相鄰周期之間的干擾,稱為折疊誤差的干擾。可以通過使用零填充零填充來填充函數(shù)的方法來避免。 零填充零填充 假設(shè)函數(shù)f(x,y) 和和h(x,y)的大小分別為的大小分別為

7、A x B和 C x D。通過對f 和 h補(bǔ)零,構(gòu)造兩個大小均為 P x Q 的擴(kuò)充的函數(shù)。通過選擇 P A+C-1 Q B+D-1以避免折疊誤差。 通過使用用戶自定義函數(shù)paddedsize計(jì)算PQ。 自定義paddedsize函數(shù):計(jì)算用于FFT的最小填充尺寸 function PQ=paddedsize(AB,CD,PARAM) if nargin=1 PQ=2*AB; elseif nargin=2&ischar(CD) PQ=AB+CD-1; PQ=2*ceil(PQ/2); elseif nargin=2 m=max(AB); P=2nextpow2(2*m); PQ=P

8、P; elseif nargin=3 m=max(AB CD); P=2nextpow2(2*m); PQ=P P; else error(wrong number of inputs.) end 使用填充和不使用填充的濾波效果使用填充和不使用填充的濾波效果 M,N=size(f); F=fft2(f); sig=10; H=lpfilter(gaussian,M,N,sig); G=H.*F; g=real(ifft2(G); imshow(g, ) PQ=paddedsize(size(f); Fp=fft2(f,PQ(1),PQ(2); Hp=lpfilter(gaussian,PQ(1

9、),PQ(2),2*sig); Gp=Hp.*Fp; gp=real(ifft2(Gp); gpc=gp(1:size(f,1),1:size(f,2); imshow(gp, ) 線性空間濾波線性空間濾波 h=fspecial(gaussian,15,7); gs=imfilter(f,h); imshow(gs, )空間濾波結(jié)果空間濾波結(jié)果DFT濾波的基本步驟濾波的基本步驟 1.使用paddedsize 獲得填充函數(shù): PQ= paddedsize(size(f); 2.得到使用填充的傅立葉變換 F=fft2(f,PQ(1),PQ(2); 3.生成大小為PQ(1) x PQ(2)的濾波函數(shù)

10、H 4.將變換乘以濾波函數(shù): G=H.*F; 5.獲得G傅立葉逆變換的實(shí)部: g=real(ifft2(G); 6.將左上部的矩形修剪為原始大小: g=g(1:size(f,1),1:size(f,2); 用于濾波的用于濾波的M函數(shù)函數(shù) 以下函數(shù)可接收輸入圖像和一個濾波器,可處理所有的濾波細(xì)節(jié)并輸出經(jīng)濾波和剪切后的圖像。 function g=dftfilt(f,H) F=fft2(f,size(H,1),size(H,2); g=real(ifft2(H.*F); g=g(1:size(f,1),1:size(f,2); 如何將空間濾波器轉(zhuǎn)換為等價(jià)的頻域?yàn)V波器如何將空間濾波器轉(zhuǎn)換為等價(jià)的頻域

11、濾波器 函數(shù)freqz2:計(jì)算二維頻率響應(yīng) H=freqz2(h,R,C) h是一個二維空間濾波器,H是相應(yīng)的二維頻域?yàn)V波器,R為H的行數(shù),C為 H 的列數(shù)。通常取 R=PQ(1),C=PQ(2)。4.4 從空間濾波器獲得頻域?yàn)V波器從空間濾波器獲得頻域?yàn)V波器 空間域?yàn)V波與頻域?yàn)V波的比較空間域?yàn)V波與頻域?yàn)V波的比較 F=fft2(double(f); S=fftshift(log(1+abs(F); S1=gscale(S); imshow(S1, ) 使用函數(shù)使用函數(shù)fspecial來生成空間濾波器來生成空間濾波器 h=fspecial(sobel) freqz2(h)sobel對應(yīng)的頻域?yàn)V波器

12、圖像顯示頻域?yàn)V波器 PQ=paddedsize(size(f); H=freqz2(h,PQ(1),PQ(2); H1=ifftshift(H); imshow(abs(H); figure,imshow(abs(H1) 空間濾波 gs=imfilter(double(f),h); imshow(gs) 頻域?yàn)V波 gf=dftfilt(f,H1); figure,imshow(gf) 通過創(chuàng)建一副二值圖像,可以更清楚地看到邊緣: figure,imshow(abs(gs)0.2*abs(max(gs(:) figure,imshow(abs(gs)0.2*abs(max(gf(:)通過計(jì)算兩者

13、的差來顯示兩種濾波的差別: d=abs(gs-gf); max(d(:) min(d(:) 建立用于實(shí)現(xiàn)頻域?yàn)V波器的網(wǎng)格數(shù)組建立用于實(shí)現(xiàn)頻域?yàn)V波器的網(wǎng)格數(shù)組 在頻域?yàn)V波中,需要計(jì)算在頻率矩形中矩形頻率矩形中矩形原點(diǎn)到任意點(diǎn)的距離原點(diǎn)到任意點(diǎn)的距離,下面通過自定義M函數(shù)dftuv來實(shí)現(xiàn)提供距離計(jì)算的網(wǎng)格數(shù)組網(wǎng)格數(shù)組。 function U,V=dftuvM,N u=0:(M-1); v=0:(N-1); idx=find(uM/2); u(idx)=u(idx)-M;4.5 在頻域中直接生成濾波器在頻域中直接生成濾波器 idy=find(vN/2); v(idy)=v(idy)-N; V,U=m

14、eshgrid(v,u); 在大小為在大小為85的矩陣中計(jì)算矩陣原點(diǎn)到每一的矩陣中計(jì)算矩陣原點(diǎn)到每一點(diǎn)的距離平方點(diǎn)的距離平方 U,V=dftuv8,5; D=U.2+V2; fftshift(D) 低通濾波器(低通濾波器(LPF) 理想低通濾波器的傳遞函數(shù):理想低通濾波器的傳遞函數(shù): n階巴特沃茲低通濾波器的傳遞函數(shù):階巴特沃茲低通濾波器的傳遞函數(shù):00),(),(01),(DvuDDvuDvuHnDvuDvuH20/ ),(11),( 高斯低通濾波器的傳遞函數(shù):高斯低通濾波器的傳遞函數(shù):2022/ ),(),(DvuDevuH 低通濾波舉例低通濾波舉例 PQ=paddedsize(size(

15、f); U,V=dftuv(PQ(1), PQ(2); D0=0.05*PQ(2); F=fft2(f, PQ(1), PQ(2); H=exp(-(U.2+V.2)/(2*(D02); g=dftfilt(f,H); figure,imshow(fftshift(H), ) figure,imshow(log(1+abs(fftshift(F), ) figure,imshow(g, ) 自定義自定義M函數(shù)生成所有低通濾波器的傳遞函數(shù)函數(shù)生成所有低通濾波器的傳遞函數(shù) function H,D=lpfilter(type,M,N,D0,n) U, V = dftuv(M, N); D = sq

16、rt(U.2 + V.2); switch type case ideal H = double(D H=fftshift(lpfilter(gaussian,500,500,50); mesh(H(1:10:500, 1:10:500) axis(0 50 0 50 0 1) colormap(0 0 0) axis off grid off view(-25,30) view(-25, 0) 繪制表面圖:繪制表面圖: H=fftshift(lpfilter(gaussian,500,500,50); surf(H(1:10:500, 1:10:500) axis(0 50 0 50 0 1

17、) colormap(gray) axis off grid off shading interp 高通濾波器(高通濾波器(HPF) 高通濾波器的傳遞函數(shù):高通濾波器的傳遞函數(shù): 自定義自定義M函數(shù)生成所有高通濾波器的傳遞函函數(shù)生成所有高通濾波器的傳遞函數(shù)數(shù) function H=hpfilter(type,M,N,D0,n),(1),(vuHvuHlphp 高通濾波器的可視化高通濾波器的可視化 H=fftshift(hpfilter(ideal,500,500,50); mesh(H(1:10:500, 1:10:500) axis(0 50 0 50 0 1) colormap(0 0 0) axis off grid off figure, imshow(H, ) 高通濾波舉例高通濾波舉例 PQ=paddedsize(size(f); D0=0.05*PQ(1); H=hpfilter(gaus

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論