理解2D DFT

时间:2018-01-22 08:56:13

标签: python numpy dft

如果使用矩阵属性理解2D DFT计算,那将是一个很好的帮助。因此,我尝试使用python实现它。该守则如下所示。

from PIL import Image
import numpy as np


def compute_dft_1(img):
    img_array = np.array(img, dtype=float)
    global M, N
    (M, N) = img_array.shape
    m = np.arange(M)
    n = np.arange(N)
    k, l = np.meshgrid(m, n)
    e1 = np.exp(-2j * np.pi * ((m * k / M) + (n * l / N)))
    sum_terms = np.dot(e1, data_array)
    return sum_terms

img_a = Image.open("image.png")
compute_dft_1(img_a)

然而,计算结果与真实结果完全不同(我用numpy.fft.fft2检查了它)。我已经努力检查代码的哪一部分是错的,但我找不到它。你能帮我找出问题吗?

0 个答案:

没有答案