去噪算法的程序
时间: 2023-10-12 19:11:30 浏览: 64
以下是一个用Python实现的简单中值滤波去噪算法的程序:
```python
import cv2
import numpy as np
# 读取图像
img = cv2.imread('lena.jpg', 0)
# 定义滤波器大小
kernel_size = 3
# 对图像进行中值滤波
img_median = cv2.medianBlur(img, kernel_size)
# 显示原始图像和去噪后的图像
cv2.imshow('Original Image', img)
cv2.imshow('Median Filtered Image', img_median)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
这个程序首先使用OpenCV库读取一张灰度图像,然后定义滤波器大小为3x3,最后使用`cv2.medianBlur()`函数对图像进行中值滤波。最后显示原始图像和去噪后的图像。通过修改`kernel_size`的值可以尝试不同大小的滤波器,观察去噪效果的变化。
相关问题
图像去噪算法的程序
这里给出一个常见的基于小波变换和软阈值去噪的图像去噪算法的 Python 程序示例:
```python
import cv2
import numpy as np
import pywt
def wavelet_denoising(img):
# 将图像转换为浮点数类型
img = np.float32(img)
# 将图像进行小波变换
coeffs = pywt.dwt2(img, 'haar')
# 将小波系数进行分离
LL, (LH, HL, HH) = coeffs
# 对小波系数进行软阈值去噪
LH = pywt.threshold(LH, np.std(LH) / 2, mode='soft', substitute=0)
HL = pywt.threshold(HL, np.std(HL) / 2, mode='soft', substitute=0)
HH = pywt.threshold(HH, np.std(HH) / 2, mode='soft', substitute=0)
# 将小波系数合并
coeffs = LL, (LH, HL, HH)
# 将小波系数进行反变换
img_denoised = pywt.idwt2(coeffs, 'haar')
# 将图像还原为整数类型
img_denoised = np.uint8(img_denoised)
return img_denoised
# 读入原始图像
img = cv2.imread('lena.jpg',0)
# 对原始图像进行去噪
img_denoised = wavelet_denoising(img)
# 显示原始图像和去噪后的图像
cv2.imshow('Original Image', img)
cv2.imshow('Denoised Image', img_denoised)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
该程序首先读入一张图像,然后将图像进行小波变换,将小波系数进行软阈值去噪,最后将小波系数进行反变换,得到去噪后的图像。程序中使用的是 Haar 小波变换,软阈值参数为小波系数的标准差的一半。
举个简单的去噪算法的例子
一个简单的去噪算法是中值滤波(Median Filtering)算法。该算法通过对图像的每个像素点周围的像素值进行排序,以中间值作为该像素点的值,从而去除图像中的噪声。中值滤波算法简单易懂,计算速度较快,适用于一些简单的图像去噪任务。
这里给出一个基于 OpenCV 库的 Python 程序示例,演示如何使用中值滤波算法对图像进行去噪:
```python
import cv2
# 读入原始图像
img = cv2.imread('lena.jpg',0)
# 对图像进行中值滤波去噪
img_denoised = cv2.medianBlur(img, 5)
# 显示原始图像和去噪后的图像
cv2.imshow('Original Image', img)
cv2.imshow('Denoised Image', img_denoised)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
该程序首先读入一张图像,然后使用 OpenCV 库中的 `cv2.medianBlur` 函数对图像进行中值滤波去噪,最后显示原始图像和去噪后的图像。`cv2.medianBlur` 函数的第二个参数表示滤波器的尺寸,这里使用了 5x5 的滤波器。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.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)