所以我将中值滤波器应用于图像,但在输出处出现蓝色半点。它们是什么?
这是输出
任何感兴趣的人的python代码
from scipy.ndimage.filters import median_filter
from matplotlib.pylab import imread, imshow, subplot, title, show, get_cmap
img = imread('images/speckle.gif')
new = median_filter(img, 3)
subplot(121); imshow(img, cmap=get_cmap('gray'));
title('The original')
subplot(122); imshow(new, cmap=get_cmap('gray'));
title('Filtered with the median_filter')
show()
编辑:
我已经修好了。事实证明,图像毕竟不是纯粹的灰度。 我不知道怎么可能。我已经将imread函数从pyplot更改为skimage.io
from skimage import io
img = io.imread('images/speckle.gif', as_grey=True)
其余代码是相同的。 这是我的新输出。
奇怪的是,为什么pyplot没有任何将rgb图像转换为灰度图像的选项?!?!