绘制图像的2D FFT

时间:2016-07-12 15:05:02

标签: python matplotlib scipy fft

我试图绘制图像的2D FFT:

from scipy import fftpack, ndimage
import matplotlib.pyplot as plt

image = ndimage.imread('image2.jpg', flatten=True)     # flatten=True gives a greyscale image
fft2 = fftpack.fft2(image)

plt.imshow(fft2)
plt.show()

但我得TypeError: Image data can not convert to float

如何绘制图像的2D FFT?

1 个答案:

答案 0 :(得分:7)

任何fft的结果通常由复数组成。这就是为什么你不能用这种方式绘制它的原因。根据您要查找的内容,您可以从查看绝对值开始

plt.imshow(abs(fft2))