wpt4=wpdec(y4,n,'db30'); %对数据进行小波包分解
for i=1:2^n %wpcoef(wpt4,[n,i-1])是求第n层第i个节点的系数
disp('每个节点的能量E1(i)');
E4(i)=norm(wpcoef(wpt4,[n,i-1]),2)*norm(wpcoef(wpt4,[n,i-1]),2)%求第i个节点的范数平方,其实也就是平方和
end
请教各位,小波包能量如何求?
我的理解
假设信号x,对齐进行n层分解:
wpt=wpdec(x,n,wname);
然后各小波包系数重构分量信号:
dp(i,: )=(wprcoef(wpt,i));
小波包能量为 :
Edp(i)=sum(dp(i,: ).^2);
这样对吗,谢谢大虾指点!
1.小波分析中,原始信号被分解为逼近部分和细节部分。逼近部分再分解为另一层的逼近和细节,这样的过程重复进行,直到设定的分阶层。然而,在小波包分解中,细节部分也进行相同的分解。小波包分解具有任意多尺度特点,避免了小波变换固定时频分解的缺陷(如高频段频率分辨率低),为时频分析提供了极大的选择余地,更能反映信号的本质和特征。你理解也算是对的。
2. s%为已知信号源
for i=1:4
wpt=wpdec(s,i,'db3');
e=wenergy(wpt);
E=zeros(1,length(e));
for j=1:2^i
E(j)=sum(abs(wprcoef(wpt,[i,j-1])).^2);
end
figure(5)
subplot(4,1,i);
bar(e);
axis([0 length(e) 0 130]);
title(['第 ',num2str(i), ' 层']);
for j=1:length(e)
text(j-0.2,e(j)+20,num2str(e(j),'%2.2f'));
end
end
这段程序也是从网上下载的,一起学习一下吧。
因篇幅问题不能全部显示,请点此查看更多更全内容