给我一段matlab代码 在图像加入均值为0,方差为0.02的高斯噪声。设计一款滤波器,去除图片中高斯噪声
时间: 2024-02-18 08:01:03 浏览: 168
图像去噪基于均值滤波实现图像去噪附matlab代码
5星 · 资源好评率100%
好的,以下是一段MATLAB代码,可以将图像加入均值为0,方差为0.02的高斯噪声,并设计一款滤波器,去除图片中高斯噪声:
```matlab
% 读取图像
I = imread('lena.png');
% 将图像转换为双精度类型
I = im2double(I);
% 添加高斯噪声
J = imnoise(I, 'gaussian', 0, 0.02);
% 显示添加噪声后的图像
figure;
imshow(J);
title('添加高斯噪声后的图像');
% 设计滤波器
h = fspecial('gaussian', [5 5], 1);
% 对图像进行滤波
K = imfilter(J, h);
% 显示滤波后的图像
figure;
imshow(K);
title('去除高斯噪声后的图像');
```
这段代码首先读取名为“lena.png”的图像,并将其转换为双精度类型。然后,通过imnoise函数将图像添加均值为0,方差为0.02的高斯噪声,得到添加噪声后的图像J。接着,通过fspecial函数设计一个5×5的高斯滤波器h,对图像J进行滤波,得到去除高斯噪声后的图像K。最后,显示添加噪声后的图像和去除噪声后的图像。
阅读全文