matlab维纳滤波添加噪声函数
时间: 2023-08-24 11:37:12 浏览: 116
图像去噪复原-基于matlab实现维纳滤波图像恢复源码+详细注释.zip
你可以使用MATLAB中的`imnoise`函数来添加噪声,然后使用`wiener2`函数来进行维纳滤波。
下面是一个示例代码:
```matlab
% 读入图像
I = imread('lena.bmp');
% 添加高斯噪声
J = imnoise(I, 'gaussian', 0, 0.005);
% 进行维纳滤波
K = wiener2(J);
% 显示结果
subplot(1,3,1)
imshow(I)
title('原始图像')
subplot(1,3,2)
imshow(J)
title('添加高斯噪声后的图像')
subplot(1,3,3)
imshow(K)
title('维纳滤波后的图像')
```
其中,`imnoise`函数的第二个参数指定噪声类型,这里选择了高斯噪声;第三个参数指定噪声均值,这里设为0;第四个参数指定噪声方差,这里设为0.005。`wiener2`函数则是进行维纳滤波的函数,它会自动估计噪声功率谱密度,无需手动指定。
阅读全文