怎么用matlab小波包分解

怎么用matlab小波包分解,第1张

第一行:将wave 用 meyr小波进行3层小波包分解,获得一个小波包树 t

第二行:将小波包树的第二行的四个节点收起来,也就是让第二行的节点变为树的最底层节点。因为第一行中小 波包树的节点个数是 第一层2个,第二层4个,第三层8个。现在将t2就是将第三层的节点再聚合回第二 层。

第三行:读取第二层四个节点系数的size

第四~七行:将所有四个节点的小波包系数变为0

第八行:将四个节点的系数重组到t3小波树中。

第九行:对t3小波树进行重构,获得信号wave2

load ir %将信号装入MATLAB工作环境

s=X106_BA_time(1:1000) %取采样信号的前1~1000个采样点

is=length(s) %计算采样序列长度

subplot(321)plot(s)title('原始信号')%画出原始信号波形

xlabel('样本序列号')

ylabel('幅值A')

wpt=wpdec(s,3,'db1','shannon')% 用db1小波包对信号x3层分解,用shannon熵作为熵标准

plot(wpt)%绘制小波包树

N=allnodes(wpt)% 计算小波包分解树的结点

%提取各节点的小波包系数

for i=1:length(N)

X=wpcoef(wpt,i-1)

subplot(floor((length(N)+1)/2),2,i)plot(X)

title(['节点',num2str(i) '的小波包系数'])

end

figure

%各节点小波包重构系数

for i=1:length(N)

rcfs=wprcoef(wpt,i-1)

subplot(floor((length(N)+1)/2),2,i)plot(rcfs)

title(['重构节点',num2str(i) '小波包系数'])

end


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7790252.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-09
下一篇 2023-04-09

发表评论

登录后才能评论

评论列表(0条)

保存