sigma.m
来自「sigma滤波程序,和大家分享,运行没有错误大家放心」· M 代码 · 共 36 行
M
36 行
%高斯噪声下的滤波
image=imread('F:\sar\speck.tif');
[m,n]=size(image);
image1=imnoise(image,'Gaussian',0,0.002); %加高斯噪声
image1=double(image1); %将uint8转换成双精度
figure,imagesc(image1),colormap(gray) %显示滤波前的图像
%Sigma滤波
image2=image1;
for i=3:m-2
for j=3:n-2
temp=image1(i-2:i+2,j-2:j+2);
q=std(temp(:));
max=image1(i,j)+2*q;
min=image1(i,j)-2*q;
temp1=zeros(5,5);
temp2=temp;
t=0;
for r=1:5
for s=1:5
if temp2(r,s)<=max & temp2(r,s)>=min
temp1(r,s)=temp2(r,s);
t=t+1;
else
temp1(r,s)=0;
end
end
end
tem=sum(temp1(:))/t;
image2(i,j)=tem;
end
end %
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?