用matlab写出(3)加入椒盐噪声(P0305),使用3×3模板分别进行中值滤波和均值滤波(P0306)。
时间: 2024-02-03 09:14:23 浏览: 61
加入椒盐噪声的MATLAB函数
3星 · 编辑精心推荐
以下是使用MATLAB实现加入椒盐噪声、中值滤波和均值滤波的代码:
```matlab
% 读入图像
img = imread('lena.jpg');
% 加入椒盐噪声
img_noise = imnoise(img, 'salt & pepper', 0.05);
% 中值滤波
img_median = medfilt2(img_noise, [3 3]);
% 均值滤波
h = fspecial('average', [3 3]);
img_mean = imfilter(img_noise, h);
% 显示结果
subplot(2,2,1);
imshow(img);
title('原图');
subplot(2,2,2);
imshow(img_noise);
title('加入椒盐噪声后的图像');
subplot(2,2,3);
imshow(img_median);
title('中值滤波后的图像');
subplot(2,2,4);
imshow(img_mean);
title('均值滤波后的图像');
```
其中,`imread`函数用于读入图像,`imnoise`函数用于添加椒盐噪声,`medfilt2`函数用于进行中值滤波,`fspecial`函数用于创建均值滤波模板,`imfilter`函数用于进行均值滤波。最后使用`subplot`函数将原图、添加噪声后的图像、中值滤波后的图像和均值滤波后的图像分别显示在四个子图中。
阅读全文