0 概述
最近在做图像与视觉方面的一些内容,关于数字图像中的二维傅立叶变换,一直在思考如何将二维傅立叶变换的语义形象地解释。今天翻阅https://plus.maths.org/content/上面的文章,偶尔发现了一篇文章(https://plus.maths.org/content/fourier-transforms-images),居然没用一个公式,将图像处理中的二维傅立叶变换解释得如此清楚。(如果不介意英语,请直接看原文)
1 二维傅立叶变换在图像中的理解
一般而言,我们平时所指的图像是平面图像,包含x轴和y轴,很多情况下,我们是在处理灰度图,如边缘提取、轮廓获取等。在灰度图中,每一个像素点的取值范围维[0, 255],将图像看成一个函数,其中,分别表示轴和轴的坐标值,表示灰度值,则可以看成一个三维立体图像,如下图所示:
在继续之前,先看看平面二维的灰度图在三维空间中长什么样?请看下图:
图2
接着请看:
图3
其中,u轴表示灰度值,它对应的函数是,其中分别表示轴的频率。
其实到这里,熟悉一维ft的同学,应该已经猜到后面该二维傅立叶变换的语义了,只不过一维情况是时间域和频域的对应,时间是一维的,只有一个频率方向变换,而在二维傅立叶变换时,频域对应两个方向分量,一个是轴对应的频率方向分量,还有一个是轴对应的频率方向分量。
继续看下面特殊的例子:
图4: 左边是空间域,右边是频域
在二维傅立叶变换后的图像中(即频域图),每个像素都有一个对应的,其中表示空间域原图中轴频率,表示轴频率。(0, 0)表示空间域图像中灰度没有变化的区域,其亮度表示图像的平均灰度值。
图4是的图像,请看图2,显然,在原图的轴上是没有灰度变化的,而在原图的轴是有灰度变化的,由图4中右边的频域图即可看出,(-1,0)、(0,0)、(1,0)这三个白点刚好体现了这种变化(回忆一维情况下的频域)。
下面两张图更明显:
图5: sin(20x)+sin(10y) 图6: sin(100x+50y)
观察图5和图6,很容易看出其中变化。
如果我们将空间域的原图旋转,则频域的图像必然也跟着旋转(还是看空间域与频域的坐标轴对应关系),请看下图:
2 结论
这篇文章的关键一步是将空间域图像中的灰度值作为一个轴,变换到3维空间,然后在此基础上解释二维傅立叶变换。此外,要注意的是:空间域图像中像素点与频域图像中的像素点是没有直接对应关系,与像一维图像中的情况一样。
网友评论