基本步骤是: f(x,y)--------àDFT-------à频率域滤波--------àIDFT---------àg(x,y) 第一步是二维傅立叶变换,结果是一个傅立叶频谱 如f(x,y)
的变换结果是F(u,v)
。 傅立叶变换速度很慢,可以用快速傅立叶变换进行加速。 第二步,进行频率域滤波 G(u,v)=H(u,v)*F(u,v) 其中H(u,v)为滤波器函数,常见的有以下几种: 1. 平滑的频域滤波器 (1) 理想低通滤波器
(u,v)到中心的距离为: D(u,v)=sqrt((x-WIDTH)^2 + (y-HEIGHT/2)^2); H(u,v)=1 D(u,v)<=D0 H(u,v)=0 D(u,v)>D0 即在超过D0距离的范围全部舍去 (2) 巴特沃思低通滤波器
H(u,v) = 1 / (1 + pow(D(u,v)/D0, 2*n));
(3) 高斯低通滤波器
H(u,v)= pow(M_E,-D(u,v)^2/(2.0f*D0^2)); 2. 频率域锐化滤波器 同平滑滤波器,不过换成高通的了,相应的变换函数很简单: Hhp(u,v)=1 – Hlp(u,v);
3. 傅立叶反变换 把处理过的频率域结果反变换成图像 如上上述指纹图像经过三个低通滤波器后的结果: