图像上添加噪声 并滤波

imnoise函数

J=imnoise(I,type,parameters)

type有很多种类:

图像上添加噪声 并滤波_第1张图片


<span style="font-size:18px;"><span style="font-size:18px;">I=imread('lena.jpg');
J=imnoise(I,'salt & pepper',0.02);
imshow(J)
</span></span>

2、二维中值滤波

二维中值滤波,是把图像一点的值用该点邻域中个点值的中间值代替,,,中值滤波用于处理椒盐噪声


B=medfilt2(A,[m n]) 

[m n]为指定的领域进行中值提取

<span style="font-size:18px;">I=imread('lena.jpg‘);
J=imnoise(I,'salt & pepper',0.02);
imshow(J);
K=medfilt2(J);
figure;
imshow(K)</span>
K2=medfilt2(I,[5 5]);
K3=medfilt2(I,[7 7]);% 不同的模板


3、二维排序统计滤波

B=ordfilt2(A,order,domain)     order 表示用第几个像素值,按升序排列,domian表示邻域的范围


<span style="font-size:18px;">A=[3 4 5;1 2 3;5 6 7];
B1=ordfilt2(A,1,ones(3,3));
B2=ordfilt2(A,9,ones(3,3);
B3=ordfilt2(A,5,ones(3,3)));
B4=ordfilt2(A,4,ones(3,3),'sysmmetric')%  边界填补方式,,默认为0</span>

4、contrast  调整灰度的对比度


5、wiener2    二维维纳滤波


使用二维维纳滤波对图像进行降噪处理。

j=wiener2(I,[m n],noise)

m*n指定邻域哎估计图像均值和方差,

【 J  noise]=wiener2(I,[m n]);

I=imread('lena.jpg');
J=imnoise(I,'gaussian',0,0.02);
K=wiener2(J,[5 5]);
imshow(K)


你可能感兴趣的:(图像上添加噪声 并滤波)