python+opencv图像处理(三十一)
对图像的傅里叶变换,就是将图像从图像空间变换到频率空间,从而可以在频率域对图像进行处理。傅里叶变换的理论在任何一本数字图像处理的书里都有,网上也有很多,这里就不再解释了,本篇主要介绍如何实现它。在numpy中自带了函数fft2进行二维傅里叶变换,它其实是离散快速傅里叶变换。如下图,左图是lena图像,右图是它的傅里叶频谱图。
在频率域对图像进行处理后,要将其反变换到空间域才能显示图像。可用函数 np.fft.ifft2()函数进行傅里叶反变换,如下图所示,最后一张即是反变换回来的图。
在此傅里叶频谱中,频率为0的分量在其左上角,但是一般情况下我们会将其移至中心,再对其进行处理。可以用函数fftshift()将低频部分移至中心。如下图所示,右图就是将低频移至中心的傅里叶频谱图。