level 2
孤狼头狼卿
楼主
如图的两张图片,加入的是什么噪声啊~~



还想请教一下为什么我的程序只能处理以上的图片啊?
clear all
clc;
fnoisy=imread('noise.bmp');
fnoisy=double(fnoisy);
%对图像进行三层小波分解
[c,s]=wavedec2(fnoisy,3,'db8');
cA3=appcoef2(c,s,'db8',3);
[cH3,cV3,cD3]=detcoef2('all',c,s,3);c3=[cH3,cV3,cD3];
[cH2,cV2,cD2]=detcoef2('all',c,s,2);c2=[cH2,cV2,cD2];
[cH1,cV1,cD1]=detcoef2('all',c,s,1);c1=[cH1,cV1,cD1];
%固定阈值(VisuShrink阈值):thr=delta*sqrt(2*log(n));
a1=0.6745;
a2=0.5745;
a3=0.7745;
delta=median(abs(cD1(:)))/a1;
thr1c=delta*thselect(c,'sqtwolog');
%origif=cacupsnr(fnoisy,f)
subplot(221),imshow(uint8(fnoisy)),title('噪声图像');
dnc1=wthresfunc(c,s,'newthr1',thr1c);
dnf1=waverec2(dnc1,s,'db8');
subplot(222),imshow(dnf1,[]),title('硬阈值参数(0.6745)');
disp('峰值信噪比1');
psnr(fnoisy,dnf1,255)
delta=median(abs(cD1(:)))/a2;
thr1c=delta*thselect(c,'sqtwolog');
%origif=cacupsnr(fnoisy,f)
dnc1=wthresfunc(c,s,'newthr1',thr1c);
dnf1=waverec2(dnc1,s,'db8');
subplot(223),imshow(dnf1,[]),title('硬阈值参数(0.5745)');
disp('峰值信噪比2');
psnr(fnoisy,dnf1,255)
delta=median(abs(cD1(:)))/a3;
thr1c=delta*thselect(c,'sqtwolog');
%origif=cacupsnr(fnoisy,f)
dnc1=wthresfunc(c,s,'newthr1',thr1c);
dnf1=waverec2(dnc1,s,'db8');
subplot(224),imshow(dnf1,[]),title('硬阈值参数(0.7745)');
disp('峰值信噪比3');
psnr(fnoisy,dnf1,255)
2015年06月06日 15点06分
1



还想请教一下为什么我的程序只能处理以上的图片啊?clear all
clc;
fnoisy=imread('noise.bmp');
fnoisy=double(fnoisy);
%对图像进行三层小波分解
[c,s]=wavedec2(fnoisy,3,'db8');
cA3=appcoef2(c,s,'db8',3);
[cH3,cV3,cD3]=detcoef2('all',c,s,3);c3=[cH3,cV3,cD3];
[cH2,cV2,cD2]=detcoef2('all',c,s,2);c2=[cH2,cV2,cD2];
[cH1,cV1,cD1]=detcoef2('all',c,s,1);c1=[cH1,cV1,cD1];
%固定阈值(VisuShrink阈值):thr=delta*sqrt(2*log(n));
a1=0.6745;
a2=0.5745;
a3=0.7745;
delta=median(abs(cD1(:)))/a1;
thr1c=delta*thselect(c,'sqtwolog');
%origif=cacupsnr(fnoisy,f)
subplot(221),imshow(uint8(fnoisy)),title('噪声图像');
dnc1=wthresfunc(c,s,'newthr1',thr1c);
dnf1=waverec2(dnc1,s,'db8');
subplot(222),imshow(dnf1,[]),title('硬阈值参数(0.6745)');
disp('峰值信噪比1');
psnr(fnoisy,dnf1,255)
delta=median(abs(cD1(:)))/a2;
thr1c=delta*thselect(c,'sqtwolog');
%origif=cacupsnr(fnoisy,f)
dnc1=wthresfunc(c,s,'newthr1',thr1c);
dnf1=waverec2(dnc1,s,'db8');
subplot(223),imshow(dnf1,[]),title('硬阈值参数(0.5745)');
disp('峰值信噪比2');
psnr(fnoisy,dnf1,255)
delta=median(abs(cD1(:)))/a3;
thr1c=delta*thselect(c,'sqtwolog');
%origif=cacupsnr(fnoisy,f)
dnc1=wthresfunc(c,s,'newthr1',thr1c);
dnf1=waverec2(dnc1,s,'db8');
subplot(224),imshow(dnf1,[]),title('硬阈值参数(0.7745)');
disp('峰值信噪比3');
psnr(fnoisy,dnf1,255)