%软阈值硬阈值半软阈值巴特沃斯滤波
clc
close all
clear all
map=gray(256);
x=imread('hzw.jpg');
x=rgb2gray(x);
subplot(2,3,1);
image(x);
colormap(map);
title('原始图片');
axis square;
init=2055615866;
randn('seed',init);
x1=50.*randn(size(x)); %均值为0 方差50^2
x=double(x)
nx=x+x1;
subplot(2,3,2);
image(nx);
colormap(map);
title('加噪后的图片');
axis square;
c=num2str(c);
text(100,100,'PSNR:');
text(300,100,c);
%硬阈值
[thr,sorh,keepapp]=ddencmp('den','wv',nx);
nx1=wdencmp('gbl',nx,'sym5',2,thr,'h',keepapp); subplot(2,3,3);
image(nx1);
title('ó2?D?μè¥??oóí???');
axis square;
a1=psnr(nx1,x);
a1=num2str(a1);
text(100,100,'PSNR:');
text(300,100,a1);
%软阈值
nx2=wdencmp('gbl',nx,'sym5',2,thr,'s',keepapp); subplot(2,3,4);
image(nx2);
title('èí?D?μè¥??oóí???');
axis square;
c=psnr(nx2,x);
c=num2str(c);
text(100,100,'PSNR:');
text(300,100,c);
%半软阈值
nx3=hsoft(nx,'sym5',2,0.5,thr);
subplot(2,3,5);
image(nx3);