imnoise函数
J=imnoise(I,type,parameters)
type有很多种类:
<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]);% 不同的模板
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>
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)