DFT & Gaussian low pass filter
此次實做對圖片的DFT與IDFT
並分別在frequency domain 與 spatial domain上實做Gaussian low pass filter
流程為:
1. 輸入一張M*N的圖 f(x,y)
2. 對該圖做zero-padding,pad成 2M*2N 大小的圖 fp(u,v) (原圖保持在左上方)
3. 為了頻譜可以置中,將fp(u,v)奇數點乘上(-1)
4. 對fp(u,v)做DFT得到F(u,v),
以spectrum方式表達: sqrt ( | R * R + I * I | ),R為實部、I為虛部。
以phase angle方式表達: arctan( I / R ) ,R為實部、I為虛部。
5. 計算D(u,v)與H(u,v)
P=2M , Q=2N (中心點)
D0可設定
6. 計算 F(u,v) * H(u,v) 然後對結果做IDFT 所得即為Gaussian low pass filter在頻域作用後的結果。
7. 針對spatial domain 的 Gaussian low pass filter 先以下列公式做出Gaussian mask
之後再以此mask對原圖做Convolution
以 128*128 的lena做實驗
照上述流程,做DFT後的結果。
以phase angle表示
以frequency spectrum表示 ( 有經過log處理,使圖片明亮。公式 : log ( 1+ sqrt ( | R * R + I * I | ) ) )
對頻域做gaussian filter
原圖 D0 = 50 D0=20
對空間域做gaussian filter
原圖 mask大小:3*3 mask大小:5*5
σx,σy都為1.414 σx,σy都為3