clc
clear
load j.txt;
s=j(77:130);%导入原始离散信号
subplot(4,2,1);
plot(77:130,s);
title('原始信号');%原始信号波形图
[swa,swd] = swt(s,3,'db1');%%使用db1小波做3层小波分解,产生的近似系数在swa中,细节系数在swd中,而且它们有相同的长度
%显示近似和细节的系数
kp = 0;
for i = 1:3
subplot(3,2,kp+1), plot(swa(i,:));
title(['Approx. cfs level ',num2str(i)])
subplot(3,2,kp+2), plot(swd(i,:));
title(['Detail cfs level ',num2str(i)])
kp = kp + 2;
end
%从系数中重建第3层的近似
mzero = zeros(size(swd));
A = mzero;
A(3,:) = iswt(swa,mzero,'db1');
%从系数中重建细节
D = mzero;
for i = 1:3
swcfs = mzero;
swcfs(i,:) = swd(i,:);
D(i,:) = iswt(mzero,swcfs,'db1');
end
%从第3层近似和第2、3层细节中重建第1、2层近似
%重建2、3层的近似
A(2,:) = A(3,:) + D(3,:);
A(1,:) = A(2,:) + D(2,:);
%显示第1、2、3层的近似和细节
kp = 0;
for i = 1:3
subplot(3,2,kp+1), plot(A(i,:));
title(['Approx. level ',num2str(i)])
subplot(3,2,kp+2), plot(D(i,:));
title(['Detail level ',num2str(i)])
kp = kp + 2;
end
使用db1小波做3层小波分解
最新推荐文章于 2025-03-28 22:45:33 发布