python实现cv2.fastNlMeansDenoising()
时间: 2024-02-11 16:08:39 浏览: 44
`cv2.fastNlMeansDenoising()`函数是OpenCV中的一个快速非局部均值去噪滤波器,用于去除灰度图像中的噪声。下面是Python实现该函数的示例代码:
```python
import cv2
# 读取图像
img = cv2.imread("lena.png", cv2.IMREAD_GRAYSCALE)
# 添加高斯噪声
noise = cv2.randn(img, 0, 50)
img_noise = cv2.add(img, noise)
# 非局部均值去噪
img_denoise = cv2.fastNlMeansDenoising(img_noise, None, 10, 7, 21)
# 显示图像
cv2.imshow("Original", img)
cv2.imshow("Noisy", img_noise)
cv2.imshow("Denoised", img_denoise)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
代码中首先读取一张灰度图像并添加高斯噪声,然后调用`cv2.fastNlMeansDenoising`函数进行非局部均值去噪,最后显示去噪前后的图像。其中,`None`表示不使用掩码图像,`10`为h参数,`7`和`21`分别为局部均值计算和搜索窗口的大小。可以根据实际需要调整这些参数。
相关问题
cv2.fastNlMeansDenoising()
cv2.fastNlMeansDenoising是OpenCV库中的一个函数,用于去除灰度图像中的噪声。它是一种基于非局部均值去噪算法的改进版本,速度较快,适用于处理较大的图像。该函数的输入为待处理的灰度图像,输出为去噪后的图像。它的使用方法如下:
```python
dst = cv2.fastNlMeansDenoising(src, h, templateWindowSize, searchWindowSize)
```
其中,src为待处理的灰度图像,h为控制噪声去除强度的参数,templateWindowSize和searchWindowSize分别为局部均值计算和搜索窗口的大小。函数返回去噪后的图像dst。
python cv2图像去噪
以下是使用Python和OpenCV进行图像去噪的示例代码:
```python
import cv2
import numpy as np
# 读取图像
img = cv2.imread('image.jpg')
# 将图像转换为灰度图像
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 对灰度图像进行高斯模糊
blur = cv2.GaussianBlur(gray, (5, 5), 0)
# 对模糊图像进行自适应阈值处理
thresh = cv2.adaptiveThreshold(blur, 255, cv2.ADAPTIVE_THRESH_GAUSSIAN_C, cv2.THRESH_BINARY_INV, 11, 2)
# 对二值化图像进行形态学操作
kernel = np.ones((3, 3), np.uint8)
closing = cv2.morphologyEx(thresh, cv2.MORPH_CLOSE, kernel, iterations=4)
# 对形态学操作后的图像进行去噪
denoise = cv2.fastNlMeansDenoising(closing, None, 10, 7, 21)
# 将去噪后的图像保存
cv2.imwrite('denoise.png', denoise)
```
上述代码中,我们首先读取了一张图像,并将其转换为灰度图像。然后,我们对灰度图像进行高斯模糊,以减少图像中的噪声。接下来,我们使用自适应阈值处理将图像二值化,并对二值化图像进行形态学操作,以进一步减少噪声。最后,我们使用fastNlMeansDenoising函数对形态学操作后的图像进行去噪,并将结果保存到文件中。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)