GaussianBlur适合整个图像

时间:2017-02-03 21:25:18

标签: python opencv image-processing

我必须从输入图像中过滤高频,我知道高斯滤波器在此任务中很好。首先,我转换我的形象:

import cv2
import numpy as np
from numpy.fft import fft2, ifft2, fftshift, ifftshift
...
image = fftshift(fft2(image))
image_real = image.real
image_imag = image.imag

获取图像的形状,模糊并组合

x, y = image.shape
image_real_filter = cv2.GaussianBlur(image_real, (x, y), 0)
image_imag_filter = cv2.GaussianBlur(image_imag, (x, y), 0)
image = image_real_filter + 1j * image_imag_filter

然后把它改回来。

image = ifft2(ifftshift(image))

它应该过滤高频,但我没有得到黑色图像。

0 个答案:

没有答案