网上很多关于FFT变换的应用,但是对其性质的探索并不多。
我做了一个简单的实验,来探讨平移,缩放,旋转的性质。
由于我浅薄的知识,如有不对的地方,请各位大佬指正。
- 平移:FFT具有平移不变性,在空域平移图像,频域的信号不发生变换。
- 旋转:旋转同一性,空域图像的旋转,也会带动频域图像的旋转。
- 缩放:在空域缩小图像,频域的信号会相应的缩小信息量,视觉上体现为放大频谱图。
代码实现
先写一些准备代码,这里要注意,需要将fft2
变换的结果,进行后续处理,方便展示。
1.abs
傅里叶变换的结果是复数,需要取模转为实数
2. +(1 ** 10)
防止矩阵为0,无法进行 l o g log log运算
3. log
傅里叶变换的结果,范围很大,例如对于lena来说,变化范围为 [ − 1 0 7 , 1 0 9 ] [-10^7, 10^9] [−107,109],所以我们需要用 l o g log log函数进行缩小范围ÿ