小波包分解与重构目录
1 小波包分解、重构原理
1.1 小波变换
小波变换只对信号的低频部分做进一步分解,而对高频部分也即信号的细节部分不再继续分解,所以小波变换能够很好地表征一大类以低频信息为主要成分的信号,不能很好地分解和表示包含大量细节信息(细小边缘或纹理)的信号,如非平稳机械振动信号、遥感图象、地震信号和生物医学信号等。
1.2 小波包变换
小波包变换既可以对低频部分信号进行分解,也可以对高频部分进行分解,而且这种分解既无冗余,也无疏漏,所以对包含大量中、高频信息的信号能够进行更好的时频局部化分析。
2 小波包使用到的函数及示例代码
以上即是小波包树,其中节点的命名规则是从(1,0)开始,叫1号, (1,1)是2号………依此类推,(3,0)是7号,(3,7)是14号。 每个节点都有对应的小波包系数,这个系数决定了频率的大小,也就是说频率信息已经有了,但是时域信息在哪里呢? 那就是 order。 这个order就是这些节点的顺序,也就是频率的顺序。
2.1 小波包分解
2.1.1 T = wpdec(X,N,‘wname’)
T = wpdec(X,N,‘wname’) 小波分解函数
T为小波包分解树,X为待分解信号,N分解层数,'wname’小波基选择
% Load signal. 载入原始信号
load noisdopp;
x = noisdopp;
figure(1); subplot(211);
plot(x); title('Original signal');
% Decompose x at depth 3 with db1 wavelet packets
% using Shannon entropy.
wpt = wpdec(x,3,'db1');
plot(wpt) % 打印小波包分解树
2.1.2 X = wpcoef(T,N)
X = wpcoef(T,N) 小波包分解系数函数
X为返回的小波包系数,T为小波包分解树,N为小波树节点
% Read packet (2,1) coefficients. 读取小波包(2,1)节点系数
cfs = wpcoef(wpt,[2 1]);
figure(1); subplot