OpenCV/Python:MedianBlur 滤镜生成黑色图像

OpenCV/Python: MedianBlur filter produces a black image

我在 python 2.7.

中使用 OpenCV

我正在尝试为灰度图像添加噪点,例如:

localvar = skimage.util.random_noise(imgray, mode="localvar")

然后我尝试使用 MedianBlur 过滤器来减少噪音,例如

median_blur = cv2.medianBlur(localvar.astype(np.uint8),3)

但是当我尝试显示 median_blur 图像时,我得到的图像几乎是黑色的。

plt.subplot(133),plt.imshow(median_blur, cmap = 'gray')
plt.title('Median Filter'), plt.xticks([]), plt.yticks([])

我找到了解决方案。

我必须将 medianBlur 图像输入,在我的示例中 localvar 图像转换为 float32

解决方法如下:

median_blur = cv2.medianBlur(np.float32(localvar),3)