web-dev-qa-db-ja.com

画像の2DFFTをプロットします

画像の2DFFTをプロットしようとしています。

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をプロットする方法は?

7
Basj

Fftの結果は、通常、複素数で構成されます。そのため、この方法でプロットすることはできません。あなたが探しているものに応じて、あなたは絶対値を見ることから始めることができます

plt.imshow(abs(fft2))
9
Aguy