本文主要是介绍数字图像处理实验六噪声添加和空域滤波,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1. 进入 Matlab 7.11 集成开发环境,并打开脚本编辑器。
2. 在脚本编辑器中编写一段程序,要求:
(1) 读入存放在 eight.tif 中的原始图像;
(2) 调用 imnoise 函数向该图像中添加 2% 的椒盐噪声 ( 参数为“ salt &
pepper ” ) ;
(3) 在同一窗口中,显示原始图像和加噪后的图像;
(4) 将编写的程序保存为 Example3_2_5AddSaltPepper1.m 。
3. 修改上述程序,将添加的噪声改为均值为 0 、方差为 0.001 的高斯噪声 ( 参数
为“ gaussian ” ) ,并将编写的程序另存为 Example3_2_5AddSaltPepper2.m 。
4. 运行这两个程序,修改噪声类型和参数大小,比较噪声对原始图像的影响。
5. 在脚本编辑器中编写一段程序,要求:
(1) 读入存放在 eight.tif 中的原始图像;
(2) 分别向该图像中添加椒盐噪声;
(3) 分别对加噪图像进行 3× 3 平均值滤波和中值滤波,并在同一窗口中,
显示原始图像、加噪后的图像和两种滤波结果图像;
(4) 将编写的程序保存为 Example3_2_6MedianFilter1.m 。
6. 修改上述程序,将添加的噪声改为均值为 0 、方差为 0.001 的高斯噪声 ( 参数
为“ gaussian ” ) ,并将编写的程序另存为 Example3_2_6MedianFilter2.m 。
7. 运行这两个程序,修改噪声类型和参数大小,比较不同滤波方法的滤波效果
%%Example3_2_5AddSaltPepper1
clear;
clc;
TIF=imread('eight.tif');%%读入TIF图像%%该图像中添加2%的椒盐噪声
J=imnoise(TIF,'salt & pepper',0.02);
H.color=[1 1 1];%%设置背景为白色,打开原图像
figure(H);
subplot(121);
imshow(J);
title('0.02加噪图');
subplot(122);
imshow(TIF);
title('原图');
%%Example3_2_5AddSaltPepper2
clear;
clc;
TIF=imread('eight.tif');%%读入TIF图像%%将添加的噪声改为均值为0方差为0.001的高斯噪声
J=imnoise(TIF,'gaussian',0,0.01);
H.color=[1 1 1];%%设置背景为白色,打开原图像
figure(H);
subplot(121);
imshow(J);
title('均值为 0、方差为 0.001 的高斯噪声图');
subplot(122);
imshow(TIF);
title('原图');
%%Example3_2_6MedianFilter1
clear;
clc;
TIF=imread('eight.tif');%%读入TIF图像%%该图像中添加2%的椒盐噪声
J=imnoise(TIF,'salt & pepper',0.02);
J=rgb2gray(J);%%行3×3平均值滤波
Y=ones(3,3)/9;
B_1=imfilter(J,Y);%%中值滤波
B_2=medfilt2(J);%%对比
H.color=[1 1 1];%%设置背景为白色,打开原图像
figure(H);
subplot(221);
imshow(TIF);
title('原图');
subplot(222);
imshow(J);
title('0.02加噪图');
subplot(223);
imshow(B_1);
title('3×3平均值滤波图');
subplot(224);
imshow(B_2);
title('中值滤波图');
%%Example3_2_6MedianFilter2
clear;
clc;
TIF=imread('eight.tif');%%读入TIF图像%%将添加的噪声改为均值为0方差为0.001的高斯噪声
J=imnoise(TIF,'gaussian',0,0.01);
J=rgb2gray(J);%%行3×3平均值滤波
Y=ones(3,3)/9;
B_1=imfilter(J,Y);%%中值滤波
B_2=medfilt2(J);%%对比
H.color=[1 1 1];%%设置背景为白色,打开原图像
figure(H);
subplot(221);
imshow(TIF);
title('原图');
subplot(222);
imshow(J);
title('均值为 0、方差为 0.001 的高斯噪声图');
subplot(223);
imshow(B_1);
title('3×3平均值滤波图');
subplot(224);
imshow(B_2);
title('中值滤波图');
这篇关于数字图像处理实验六噪声添加和空域滤波的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!