问题描述
我正在尝试在由RGB图像组成的CIFAR10数据集上实现维纳过滤器。
但是此滤镜只能用于灰度图像。
我尝试在每个R / G / B通道上实现它,然后将它们组合在一起,但是生成的RGB图像甚至不接近初始图像。
有什么想法吗?
(我正在使用scipy.signal.signaltools.wiener)
预先感谢
解决方法
好的,skimage(scikit-image)怎么样?在这里看看: https://scikit-image.org/docs/dev/api/skimage.restoration.html#skimage.restoration.wiener
在rgb图像上给出的示例如下:
from skimage import color,data,restoration
img = color.rgb2gray(data.astronaut())
from scipy.signal import convolve2d
psf = np.ones((5,5)) / 25
img = convolve2d(img,psf,'same')
img += 0.1 * img.std() * np.random.standard_normal(img.shape)
deconvolved_img = restoration.wiener(img,1100)