FFT相移

时间:2013-12-05 01:47:20

标签: python image-processing fft phase

我正在实施一种需要相移图像的算法。下面的代码隔离了原始图像的傅里叶域中的单个空间带,然后从该数据中重新组装图像。

相移应该在重建图像中完成空间移动,但是我得到了一个重叠的对角翻转版本的图像...

image_fft = np.fft.fft2(image)
image_fft = np.fft.fftshift(image_fft)

kernel = gabor_kernel(image.shape, 4.0, 0 * np.pi / 4.0, 1.0/4, np.pi / 2.0)

kernel = kernel[:-1, :-1]
kernel /= np.max(kernel)

kernel_fft = np.fft.fft2(kernel)
kernel_fft = np.fft.fftshift(kernel_fft)

band_fft = image_fft * kernel_fft
band_fft.imag *= 200

band = np.fft.ifftshift(bands_fft)
band = np.fft.ifft2(band)

band = np.fft.fftshift(band)

有人能指出我正确的方向吗?

1 个答案:

答案 0 :(得分:0)

我认为您的band_fft = image_fft * kernel_fft应该是频域中的点积。