在图像处理和分析中通常需要可视化图像傅里叶变换的幅值谱。通过幅值谱,可以直观地观察频率成分的分布,帮助理解图像的结构和特征。
很多刊物中直接显示傅里叶变换的幅值谱。
FFT = fftshift(fft2(double(Img)));
FFT_mag = mat2gray(log(1+abs(FFT)));
由于傅里叶变换固有的周期性,这样显示的幅值谱通常横向和纵向有高频亮纹,影响观察图像本身包含的主要频率成分。
有两种简单的方法。这个领域是傅里叶变换的边界不连续效应(discontinuity at the periodic boundary),有很多文献,都不如简单的好用。
第一种,模糊边界(edgetapering)。问题是会截断部分能量,尤其高频。
第二种对称延拓一个周期。虽然去掉了恼人的横竖亮纹,但是会改变一些频谱成分,毕竟目标图像变化了。
Steve Eddins给了一个特殊例子。
由一个正弦函数的正半部分生成图像,周期模式的傅里叶变换中本该就若干个峰值。
num = 400;
x = linspace(0,1,num);
y = linspace(0,1,num);
u0 = 40;
v0 = 80;
[Y,X]=meshgrid(y,x);
f=max(sin((u0.*X+v0.*Y)),0);
然而这样的
横向和纵向的高频亮纹怎么来的?周期延拓这样的,这就有了灰度跃变。周期延拓是不想要的特性,这是DFT的缺点,有优点就会有缺点,而且人家优点大于缺点。接受不了他的缺点,但又放不下他的优点,怎么办呢?
科学上都可以想办法解决,加个窗。人生呢?
虽然不能完全解决问题,但基本上解决了问题。人生能基本解决问题我就满足。
在我们的书中使用的是这种edgetapering的显示方式。
禹晶、肖创柏、廖庆敏《数字图像处理(面向新工科的电工电子信息基础课程系列教材)》