基于Matlab的图像滤波
一.实验目的
1 .实现图像中加入高斯白噪声、椒盐噪声、泊松噪声、乘性噪声等进行比较;
2 .实现图像平均滤波、中值滤波、高斯滤波、mgddp等处理;
二.实验步骤
1 .读取图像
image=imread(test2.BMP ); %读取图像
subplot (5,2,1 ); %指定显示图像的位置为52矩阵的第一个位置
imshow(image )、title(‘) (原图); %将读取的图像命名为原始图像并显示
2 .创建过滤器
F1=fspecial (‘average’,[ 5,5 ] ); %平均过滤器,运算符大小为[ 5,5 ]
F2=fspecial (‘Gaussian’,[ 5,5 ],1 ); %高斯滤波器,运算符大小为[ 5,5 ],标准偏差为1
f3=fspecial(laplacian,0 );
%mgddp器,0用于确定滤波器的形状,取[ 0,1 ]的值
3 .在图像中加入高斯白噪声
image1=imnoise(image,‘Gaussian’,0,0.02 );
%图像加高斯白噪声,平均值0,方差0.02
subplot (5,2,2 ); %指定显示图像的位置为52矩阵的第二个位置
imshow(image1 )、title(‘)“在原图中加入高斯白噪声”
4 .将均值为0的高斯白噪声添加到图像中
[m,n]=size(image ); %显示读取图像的尺寸
v=rand(m,n ); %随机生成矩阵
image2=imnoise(image,‘localvar’,v ); 在%图像中添加0平均高斯白噪声
subplot (5,2,3 ); %指定显示图像的位置为52矩阵中的第三个位置