对加噪图像进行均值滤波、中值滤波和高斯滤波的python程序实现
时间: 2024-09-23 17:04:52 浏览: 48
Python 实现中值滤波、均值滤波的方法
5星 · 资源好评率100%
在Python中,我们可以使用OpenCV库来对加噪图像进行均值滤波、中值滤波和高斯滤波。这里是一个简单的例子,展示如何使用这三个滤波器:
```python
import cv2
import numpy as np
# 加载图像
img = cv2.imread('noisy_image.jpg', 0) # 读取灰度图像
# 均值滤波
blur_avg = cv2.blur(img, (5, 5)) # 窗口大小为(5, 5)
cv2.imshow("Mean Filter", blur_avg)
# 中值滤波
blur_median = cv2.medianBlur(img, 5) # 使用5x5窗口大小
cv2.imshow("Median Filter", blur_median)
# 高斯滤波
blur_gaussian = cv2.GaussianBlur(img, (5, 5), 0) # 窗口大小,第二个参数是标准差
cv2.imshow("Gaussian Filter", blur_gaussian)
# 显示所有过滤后的图片
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在这个代码片段中,我们首先加载一幅图像,然后分别使用`cv2.blur()`函数做均值滤波,`cv2.medianBlur()`函数做中值滤波,以及`cv2.GaussianBlur()`函数做高斯滤波。滤波器窗口大小可以根据需要调整。
阅读全文