python-3.x - 使用 python 应用 Wiener 滤波器去除噪声

标签 python-3.x opencv image-processing scikit-image wiener-filter

This is the what my input image looks like

And this is what my wiener filtered output should look like

第一张图片是我的输入图片。第二张图片是维纳滤波后的图片,这是我的输出。

下面是在我的图像上使用维纳滤波器的代码。输入图像为“img5”,输出图像为“Wiener_filtered”。

psf = np.ones((5,5)) / 25
img6 = convolve2d(img5,psf,'same')
img6 += 0.1 * img6.std() * np.random.standard_normal(img6.shape)
Wiener_filtered = restoration.wiener(img6,psf,1100) 

下面我附上了输入图像“img5”以及“img6”和“Wiener_filtered”的结果

Input image img5

输入图片“img5”

img6

“img6”的结果

Wiener_filtered

最终的维纳滤波图像

我需要帮助找出我哪里出错了。我是图像处理的新手。谁能告诉我正确的方法。

最佳答案

您可能想在 SOF 查看类似的问题,以便更好地实际了解您如何使用该算法,例如:

Wiener Filter for image deblur

为了提高您对去噪的基本理解,有一些有用的教程可用于 scipy 和 scikit-image,例如:

http://www.scipy-lectures.org/advanced/image_processing/#denoising

关于python-3.x - 使用 python 应用 Wiener 滤波器去除噪声,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53883717/

相关文章:

android - 即使调用onCreateMenu,Android菜单也不可见

Python OpenCV 打开视频文件与打开网络摄像头

opencv - tesseract 无法准确读取所有数字

python-3.x - 在 Tensorflow 中添加第二个隐藏层会破坏损失计算

python - 处理 Watchdog 的 OSError

python-3.x - Networkx:为给定的一组节点创建一个完整的图

image-processing - 为什么我需要 lanczos(0) 的特例?

python - 使用 List Comprehension 和/或 map 避免嵌套 for 循环

python - 值错误: Could not find a format to write the specified file in single-image mode

python - 我是否使用 Numpy 正确计算逆滤波器?