close all;clear all;clc
fall=double(imread('lena.png'));
f=fall;%(1:30,1:30);
nf40=impulsenoise(f,0.4,1);i=4;
%function [outImage FinalMap] = newmethod0(f,nf40,i)
if i>2
nf401=nf40;
for k=1:1
Pnew=nf401; nf401=nf40;
Pnewbig=ExtendImage(Pnew,1); [w,l]=size(Pnewbig);Pnewbig1=Pnewbig;
for k1=1:3-k
for i=2:w-1
for j=2:l-1
aaone=reshape(Pnewbig(i-1:i+1,j-1:j+1),[1,9]);
Pnewbig1(i,j)=median(aaone);
end
end
Pnewbig=Pnewbig1;
end
Pnew=Pnewbig(2:w-1,2:l-1);
% imshow(Pnew,[]);figure
% nf401=Pnew;
% [nf401]=newimplusedector2222(nf401,1,4);
% psnr(f,nf401)
% ssim_index(f,nf401)
% imshow(nf401,[]);figure;
%Pnew=nf401;nf401=nf40;
T=15;%-2*(k-1);
[A,f1,I1,I2]=newimplusedector222(nf40,Pnew,1,2,T);
% [falsedet,undet,NN]=FalsesUnDetect1(f,nf40,double(f1));
% I21=I1.*NN;
% imhist(uint8(I21));figure
% NN2=zeros(size(NN));
% NN2(NN==0)=1;
% I31=I1.*NN2;
% imhist(uint8(I31));figure
%
nf401=Fuzzynewmethod(nf401,5,3,55,f1);
%
% psnr(f,nf401)
% % ssim_index(f,nf401)
% imshow(nf401,[]);figure;
T=10;%-2*(k-1);
[A,f11,I1,I2]=newimplusedector222(nf401,Pnew,1,2,T);
% nf401=Fuzzynewmethod(nf401,5,3,55,f11);
% psnr(f,nf401)
% % ssim_index(f,nf401)
% imshow(nf401,[]);figure;
%
% f11=f11+f1;
% f11(f11>0)=1;
%[falsedet1,undet1,NN]=FalsesUnDetect1(f,nf40,double(f11));
%f12=f11;
% T=8-2*(k-1);
% [A,f12,I1,I2]=newimplusedector222(nf401,Pnew,1,2,T);
%
% nf401=Fuzzynewmethod(nf401,5,3,55,f12);
% psnr(f,nf401)
% imshow(nf401,[]);figure;
%
% f12=f11+f12;
% f12(f12>0)=1;
% [falsedet2,undet2,NN]=FalsesUnDetect1(f,nf40,double(f12));
% I21=I1.*NN;
% imhist(uint8(I21));figure
% NN2=zeros(size(NN));
% NN2(NN==0)=1;
% I31=I1.*NN2;
% imhist(uint8(I31));figure
[nf401,f13]=newimplusedector2222(nf401,1,5);
psnr(f,nf401)
% ssim_index(f,nf401)
imshow(nf401,[]);figure;
f13=f13+f12;
f13(f13>0)=1;
%[falsedet3,undet3,NN]=FalsesUnDetect1(f,nf40,double(f13));
% [nf401,f14]=newimplusedector2222(nf401,2,20);
% psnr(f,nf4011)
% ssim_index(f,nf401)
% imshow(nf4011,[]);figure;
% f14=f14+f13;
% f14(f14>0)=1;
%[falsedet4,undet4,NN]=FalsesUnDetect1(f,nf40,double(f14));
% nf401=Fuzzynewmethod(nf40,5,3,55,f14);
% psnr(f,nf401)
% imshow(nf401,[]);figure;
end
%ssim(fall,output)
else
nf401=nf40;
for k=1:1
Pnew=nf401; nf401=nf40;
Pnewbig=ExtendImage(Pnew,1); [w,l]=size(Pnewbig);Pnewbig1=Pnewbig;
for k1=1:3-k
for i=2:w-1
for j=2:l-1
aaone=reshape(Pnewbig(i-1:i+1,j-1:j+1),[1,9]);
Pnewbig1(i,j)=median(aaone);
end
end
Pnewbig=Pnewbig1;
end
Pnew=Pnewbig(2:w-1,2:l-1);
% imshow(Pnew,[]);figure
% nf401=Pnew;
% [nf401]=newimplusedector2222(nf401,1,4);
% psnr(f,nf401)
% ssim_index(f,nf401)
imshow(nf401,[]);figure;
%Pnew=nf401;nf401=nf40;
T=15;%-2*(k-1);
[A,f1,I1,I2]=newimplusedector222(nf40,Pnew,1,2,T);
% [falsedet,undet,NN]=FalsesUnDetect1(f,nf40,double(f1));
% I21=I1.*NN;
% imhist(uint8(I21));figure
% NN2=zeros(size(NN));
% NN2(NN==0)=1;
% I31=I1.*NN2;
% imhist(uint8(I31));figure
%
f13=f1;
nf401=Fuzzynewmethod(nf401,5,3,55,f1);
end
end
%outPSNR=psnr(f,nf401);
outImage=nf401;
FinalMap=f13;
%
% %
% %
% T=20;
% [A,f12,I1,I2]=newimplusedector22(nf401,Pnew,0,0,T);
% nf401=Fuzzynewmethod(nf401,5,3,55,f12);
% psnr(f,nf401)
% imshow(nf401,[]);figure;
% f12=f12+f11;
% f12(f12>0)=1;
% [falsedet2,undet2,NN]=FalsesUnDetect1(f,nf40,double(f12));
%
% I21=I1.*NN;
% imhist(uint8(I21));figure
% NN2=zeros(size(NN));
% NN2(NN==0)=1;
% I31=I1.*NN2;
% imhist(uint8(I31));figure
% %
% %
% T=17;
% [A,f13,I1,I2]=newimplusedector22(nf401,Pnew,0,0,T);
% nf401=Fuzzynewmethod(nf401,5,3,55,f13);
% psnr(f,nf401)
% imshow(nf401,[]);figure;
% f13=f12+f13;
% f13(f13>0)=1;
% [falsedet3,undet3,NN]=FalsesUnDetect1(f,nf40,double(f13));
%
% I21=I1.*NN;
% imhist(uint8(I21));figure
% NN2=zeros(size(NN));
% NN2(NN==0)=1;
% I31=I1.*NN2;
% imhist(uint8(I31));figure
% % %
% % %
% T=15;
% [A,f14,I1,I2]=newimplusedector22(nf401,Pnew,0,0,T);
% nf401=Fuzzynewmethod(nf401,5,3,55,f14);
% psnr(f,nf401)
% imshow(nf401,[]);figure;
% f14=f14+f13;
% f14(f14>0)=1;
% [falsedet4,undet4,NN]=FalsesUnDetect1(f,nf40,double(f14));
%
% I21=I1.*NN;
% imhist(uint8(I21));figure
% NN2=zeros(size(NN));
% NN2(NN==0)=1;
% I31=I1.*NN2;
% imhist(uint8(I31));figure
%
% T=12;
% [A,f15,I1,I2]=newimplusedector22(nf401,Pnew,0,0,T);
% nf401=Fuzzynewmethod(nf401,5,3,55,f15);
% psnr(f,nf401)
% imshow(nf401,[]);figure;
% f15=f14+f15;
% f15(f15>0)=1;
% [falsedet5,undet5,NN]=FalsesUnDetect1(f,nf40,double(f15));
%
% I21=I1.*NN;
% imhist(uint8(I21));figure
% NN2=zeros(size(NN));
% NN2(NN==0)=1;
% I31=I1.*NN2;
% imhist(uint8(I31));figure
%
%end
% T=40;
% [A,f1,I1,I2]=newimplusedector22(nf40,Pnew,1,0,T);
%
% [falsedet,undet,NN]=FalsesUnDetect1(f,nf40,double(f1));
%
% I21=I1.*NN;
% imhist(uint8(I21));figure
% NN2=zeros(size(NN));
% NN2(NN==0)=1;
% I31=I1.*NN2;
% imhist(uint8(I31));figure
%
%
% nf401=Fuzzynewmethod(nf401,5,3,55,f1);
%
% psnr(f,nf401)
% imshow(nf401,[]);figure;
%
% T=30;
% [A,f11,I1,I2]=newimplusedector22(nf401,Pnew,1,0,T);
%
% nf401=Fuzzynewmethod(nf401,5,3,55,f11);
% psnr(f,nf401)
% imshow(nf401,[]);figure;
%
% f11=f11+f1;
% f11(f11>0)=1;
% [falsedet1,undet1,NN]=FalsesUnDetect1(f,nf40,double(f11));
%
% I21=I1.*NN;
% imhist(uint8(I21));figure
% NN2=zeros(size(NN));
% NN2(NN==0)=1;
% I31=I1.*NN2;
% imhist(uint8(I31));figure
%
%
%
% T=20;
% [A,f12,I1,I2]=newimplusedector22(nf401,Pnew,1,0,T);
% nf401=Fuzzynewmethod(nf401,5,3,55,f12);
% psnr(f,nf401)
% imshow(nf401,[]);figure;
% f12=f12+f11;
% f12(f12>0)=1;
% [falsedet2,undet2,NN]=FalsesUnDetect1(f,nf40,double(f12));
%
% I21=I1.*NN;
% imhist(uint8(I21));figure
% NN2=zeros(size(NN));
% NN2(NN==0)=1;
% I31=I1.*NN2;
% imhist(uint8(I31));figure
%
%
% T=15;
% [A,f13,I1,I2]=newimplusedector22(nf401,Pnew,1,0,T);
% nf401=Fuzzynewmethod(nf401,5,3,55,f13);
% psnr(f,nf401)
% imshow(nf401,[]);figure;
% f13=f12+f13;
% f13(f13>0)=1;
% [falsedet3,undet3,NN]=FalsesUnDetect1(f,nf40,double(f13));
%
% I21=I1.*NN;
% imhist(uint8(I21));figure
% NN2=zeros(size(NN));
% NN2(NN==0)=1;
% I31=I1.*NN2;
% imhist(uint8(I31));figure
% %
% %
% T=12;
% [A,f14,I1,I2]=newimplusedector22(nf401,Pnew,1,0,T);
% nf401=Fuzzynewmethod(nf401,5,3,55,f14);
% psnr(f,nf401)
% imshow(nf401,[]);figure;
% f14=f14+f13;
% f14(f14>0)=1;
% [falsedet4,undet4,NN]=FalsesUnDetect1(f,nf40,double(f14));
%
% I21=I1.*NN;
% imhist(uint8(I21));figure
% NN2=zeros(size(NN));
% NN2(NN==0)=1;
% I31=I1.*NN2;
% imhist(uint8(I31));figure
% T=16;
% [A,f15,I1,I2]=newimplusedector222(nf401,Pnew,2,0,T);
% nf401=Fuzzynewmethod(nf401,5,3,55,f15);
% psnr(f,nf401)
% imshow(nf401,[]);figure;
% f15=f15+f14;
% f15(f15>0)=1;
% [falsedet5,undet5,NN]=FalsesUnDetect1(f,nf40,double(f15 ));
%
% I21=I1.*NN;
% imhist(uint8(I21));figure
% NN2=zeros(size(NN));
% NN2(NN==0)=1;
% I31=I1.*NN2;
% imhist(uint8(I31));figure
%
% T=14;
% [A,f16,I1,I2]=newimplusedector222(nf401,Pnew,1,0,T);
% nf401=Fuzzynewmethod(nf401,5,3,55,f16);
% psnr(f,nf401)
% imshow(nf401,[]);figure;
% f16=f16+f15;
% f16(f16>0)=1;
% [falsedet6,undet6,NN]=FalsesUnDetect1(f,nf40,double(f16 ));
%
% I21=I1.*NN;
% imhist(uint8(I21));figure
% NN2=zeros(size(NN));
% NN2(NN==0)=1;
% I31=I1.*NN2;
% imhist(uint8(I31));figure
%
% T=13;
% [A,f17,I1,I2]=newimplusedector222(nf401,Pnew,1,0,T);
% nf401=Fuzzynewmethod(nf401,5,3,55,f17);
% psnr(f,nf401)
% imshow(nf401,[]);figure;
% f17=f16+f17;
% f17(f17>0)=1;
% [falsedet7,undet7,NN]=FalsesUnDetect1(f,nf40,doubl
ASWM(Akkoul2010SPL).zip_ASWM_ASWM教程_aswm焊接_impulse noise_图像去噪
版权申诉
155 浏览量
2022-07-14
23:57:55
上传
评论
收藏 244KB ZIP 举报
小波思基
- 粉丝: 70
- 资源: 1万+