《小波分析(第三讲)Matlab工具使用汇总课件.ppt》由会员分享,可在线阅读,更多相关《小波分析(第三讲)Matlab工具使用汇总课件.ppt(82页珍藏版)》请在三一办公上搜索。
1、小波包分析与第二代小波,北京科技大学,阳建宏,2023/1/25,主要内容,小波包分析第二代小波Matlab在小波分析中的应用,双通道滤波过程,A:信号的近似值 原始信号通过低频滤波器产 生,表示信号的低频分量D:信号的细节值 原始信号通过高频滤波器产 生,表示信号的高频分量,然后,对信号的近似信号A继续使用滤波器进行分解,如果S表示原始的输入信号,DWT的概念是通过两个互补的滤波器(高频和低频)产生A和D两个信号,离散小波的分解,小波分解树,离散小波的分解,完全重构 小波系数不经过处理,通过逆变换重构回原始信号 S=cA1+cD1=cA2+cD2+cD1=cA3+cD3+cD2+cD1单支重
2、构 用其中某一层近似或细节系数重构阈值处理小波系数后重构,代表原始小波系数,表示阈值处理后的小波系数,然后再进行小波的逆变换,软阈值,硬阈值,离散小波的重构,离散小波变换只是对近似信号进行再分解,而没有对细节信号进行再分解,因此没有提高细节信号的频率分辨率。,为什么要用小波包分析?,小波包理论是在多尺度分析和Mallat算法基础上发展起来的。小波包分析同时分解细节信号和近似信号,小波包分解算法:,近似信号,细节信号,H低通滤波器,G高通滤波器,Pij是第j层小波包分解得到的第i个小波包,小波包的分解,从时域来看小波包分解,每一层的小波包数目比上一层中的小波包数目增加一倍每个小波包的数据长度比上
3、一层小波包数据长度减半每个小波包的时域分辨率比上一层小波包的时域分辨率减半,小波包的分解,每个小波包数据是原始信号在不同频率段上的成份小波包的频带相邻,并且带宽相等分解的层数越多,频率段划分得越细,小波包的分解,原始信号,小波包的分解-实例,重构公式:,H*、G*分别为H和G的对偶算子,也为H 和 G的共轭转置矩阵,设原始信号经过J层小波包分解后得到 2j 个小波包 如果要重构第2 i 个小波包的数据,把这一层中其他小波包的 数据置零。将处理后的数据代入重构公式,一层一层向上进行重构,重构过程:,小波包的重构,小波包分解方法是小波分解的一般化,可为信号分析提供更丰富和更详细的信息。例如,小波包
4、分解的原始信号S表示为,S=+,小波包的重构,电机振动信号,采样频率5120Hz,电机转速频率,电机转速频率的四倍频,第5层小波包分解,小波包-应用1,第5层小波包分解,0号小波包重构,2号小波包重构,电机转速频率,电机转速频率的四倍频,小波包-应用1,最高分析频率f=fs/2=2560 Hz每个小波包的频率带宽为 d=f/32=80Hz电机转速频率50Hz0 80,即为0号小波包电机转速频率的四倍频200Hz 160 240,即2号小波包,时域振动信号,轴承内圈出现故障,出现冲击,但被噪声淹没,频域图,第5层小波包分解,由冲击引起的固有振动频率,难以识别轴承故障,小波包-应用2 轴承内圈故障
5、,圆锥轴承内圈轻度剥落信号,23号小波包重构,轴的转动周期,一个周期内约有9个冲击,与理论分析相符,说明小波包分解有效,第5层小波包分解,小波包-应用2 轴承内圈故障,最高分析频率f=fs/2=20/2=10 KHz每个小波包的频率带宽为 d=f/32=312.5 Hz频谱图中的频率范围60008000 Hz对应的小波包频宽范围6000/312.5 8000/312.5 Hz。即为 1826号小波包,频域图,16号小波包重构,第5层小波包分解,一个周期内约有7个冲击,与理论分析相符,说明小波包分解有效,最高分析频率f=fs/2=20/2=10 KHz每个小波包的频率带宽为 d=f/32=312
6、.5 Hz频谱图中的频率范围35005500 Hz对应的小波包频宽范围3500/312.5 5500/312.5 Hz 即为 1118号小波包,小波包-应用3 轴承外圈剥落故障,时域振动信号,小波包-小结,主要内容,小波包分析第二代小波Matlab在小波分析中的应用,1995年,贝尔实验室的Sweldens博士提出了一种全新的在时域中构造小波的第二代小波方法(the second generation wavelet),又名提升方法(Lifting Scheme)。第二代小波方法相对于传统小波算法而言,是一种更为快速有效的小波变换实现方法,它不依赖Fourier变换,完全在时域完成了对双正交小
7、波滤波器的构造。这种构造方法在结构化设计和自适应构造方面的突出优点弥补了传统频域构造方法的不足。,第二代小波的提出,(1)在构造方法上,第二代小波变换采用提升方法,而第一代小波的构造是从滤波器组的频域特性要求 出发,构造不同特性的小波。(2)在多分辨分析方面,第二代小波变换的小波空间和 尺度空间不再是由一个基函数通过伸缩和平移而得 到的,因此,一般情况下,多分辨空间不具备伸缩 和平移不变性。而第一代小波变换的多分辨空间是 由一个固定的基函数经过伸缩和平移构成的。,第二代小波与第一代小波的比较,(3)第一代小波变换的小波函数和尺度函数的特性在构造 完成之后,它们的特性不再改变,而第二代小波变换
8、可以通过提升改善小波的特性。(4)在小波种类上,第一代小波的种类是有限的,而第二 代小波在理论上可以任意构造小波.(5)第一代小波变换是以频域为基础进行的,而第二代小波变换是一种时域方法,但可以获得与第一代小波变换相同的时频特性。,第二代小波与第一代小波的比较,Mallat算法通过低频滤波器和高频滤波器与信号进行卷积得到低频子带和高频子带提升算法剖分(split)将信号分成奇样本和偶样本序列,形成两个不相交的子集预测(predict)利用相邻信号之间的相关性,用一个子集预测另一个子集。通常用偶子集来预测奇子集,通过与原奇子集的差值,确定细节信息更新(update)细节信息通过更新,再与原偶子集
9、相加来确定近似信息,第二代小波的基本思想,第二代小波分解过程,第二代小波的重构过程,分解过程包括:剖分、预测和更新;重构过程包括:恢复更新、恢复预测和合并;其中在预测、更新、恢复更新、恢复预测四个阶 段引入了预测器和更新器的概念。,第二代小波变换,设数据序列,1 第二代小波变换的分解过程如下:,1)剖分.将数据序列,分为奇样本序列和偶样本序,2)预测.设P()为预测器,用,预测,定义预测偏差,。,为细节信号,第二代小波变换,3)更新.设U()为更新器,在细节,的基础上更新,其结果定义为逼近信号,2 重构过程为分解过程的逆过程,由恢复更新、恢复预 测和合并组成。,第二代小波变换,1、Haar小波
10、2、db4小波,第二代小波-构造方法,3、以双正交小波CDF(2,2),第二代小波-构造方法,假设预测器长度N=2,更新器长度N=4,基于插值细分 原理的第二代小波分解过程如下,第二代小波分解过程,第二代小波变换,第二代小波重构过程,第二代小波变换,剖分,预测-用偶样本预测奇样本,更新-偶样本更新得到逼近信号,第一代小波与第二代小波对比,a)小波变换过程 b)小波包变换过程,第二代小波包变换,设数据序列,1)剖分.将数据序列,分为奇样本序列和偶样本序,第二代小波包变换也是有分解和重构两个过程.,2)然后通过下面公式计算小波包第,层分解的各个子带信号,第二代小波包变换,3)按下式对信号进行重构,
11、合成,合成,第二代小波包变换,假设采样频率为1000Hz,则分析频率为500Hz。,下面对信号作2层小波分解和小波包分解,然后进行单支重构。一层分解得到2个频带,用(1,1),(1,2)表示;二层分解得到4个频带,用(2,1),(2,2),(2,3),(2,4)表示。,第二代小波包变换-举例,原始信号频谱图,(1,1)频带的单支重构(1,2)频带的单支重构,第二代小波包变换-举例,(2,3)频带的单支重构(2,4)频带的单支重构,(2,1)频带的单支重构(2,2)频带的单支重构,第二代小波包变换-举例,第二代小波的matlab实现,常用的提升小波,LS=liftwave(WNAME)LS=li
12、ftwave(WNAME,Int2Int),提升方案,小波名,整数到整数的小波变换,要求待分析信号为整型向量,Liftwave-获取常用小波的提升方案,第二代小波变换的matlab实现,LoD,HiD,LoR,HiR=ls2filt(LS)LS=filt2ls(LoD,HiD,LoR,HiR),将提升方案转化为对应的滤波器,将滤波器转化为对应的提升方案,滤波器,提升方案,第二代小波变换的matlab实现,LoD,HiD,LoR,HiR=wfilters(db2)LS=filt2ls(LoD,HiD,LoR,HiR);LoD=-0.1294 0.2241 0.8365 0.4830HiD=-0.
13、4830 0.8365-0.2241-0.1294LoR=0.4830 0.8365 0.2241-0.1294HiR=-0.1294-0.2241 0.8365-0.4830,第一代小波的滤波器可以分解成简单的提升步骤。,第二代小波变换的matlab实现,bswfun-双正交尺度和小波函数,PHIS,PSIS,PHIA,PSIA=bswfun(LoD,HiD,LoR,HiR,ITER,plot),合成函数,分析函数,滤波器,迭代次数,W=cdf3.1,第二代小波变换的matlab实现,lwt-一维提升小波变换,CA,CD=lwt(X,W,LEVEL,typeDEC,typeDEC),低频系数
14、和高频系数,待分析信号,提升小波名,分解层数,分解类型,w或wp,CA,CD=lwt(X,LS,LEVEL,typeDEC,typeDEC),提升方案,第二代小波变换的matlab实现,ilwt-一维提升小波逆变换,X=lwt(CA,CD,W,LEVEL,typeDEC,typeDEC),低频系数和高频系数,信号,提升小波名,分解层数,分解类型,w或wp,第二代小波变换的matlab实现,lwtcoef-一维提升小波变换系数及其重构,Y=lwtcoef(TYPE,XDEC,LS,LEVEL,LEVEXT)Y=lwtcoef(TYPE,XDEC,W,LEVEL,LEVEXT),XDEC小波变换系
15、数;W-小波名;Ls-提升方案;LEVEL-分解的层数;LEVEXT-在该层的位置.,第二代小波变换的matlab实现,第二代小波变换的matlab实现,第二代小波变换的matlab实现,第二代继承了经典小波的多辨特性,运算速度快、占用存储空间小、可以完全重构已经证明,具有有限长度滤波器的经典小波,可以通过代数变换,用第二代小波方式实现 在同样数据长度下,采用第二代小波方法的变换速度至少提高1 倍以上,第二代小波总结,主要内容,小波包分析第二代小波Matlab在小波分析中的应用,分解函数dwt 单尺度一维离散小波变换wavedec 多尺度一维小波分解合成重构函数idwt 单尺度一维离散小波逆变
16、换waverec 多尺度一维小波重构wrcoef对一维小波系数进行单支重构分解结构工具detcoef提取一维小波变换高频系数appcoef提取一维小波变换低频系数,一维离散小波变换常用的matlab函数,小波基函数,待分析信号,细节系数,近似系数,信号的延拓模式,高通分解滤波器系数,低通分解滤波器系数,dwt,可用waveinfo命令查看小波函数的详细信息,既能作cwt,也能作dwt,只能作cwt,不能作dwt,db1 or haar,db2,.,db45,coif1,.,coif5,sym2,.,sym8,.,sym45,bior1.1,bior1.3,bior1.5bior2.2,bior
17、2.4,bior2.6,bior2.8bior3.1,bior3.3,bior3.5,bior3.7bior3.9,bior4.4,bior5.5,bior6.8,rbio1.1,rbio1.3,rbio1.5rbio2.2,rbio2.4,rbio2.6,rbio2.8rbio3.1,rbio3.3,rbio3.5,rbio3.7rbio3.9,rbio4.4,rbio5.5,rbio6.8,返回,小波基函数,实际的运算过程是滤波器系数与信号作卷积即使dwt中给定了小波基函数,也要先用wfilters命令计算出滤波器系数,返回,滤波器系数,目的是为了提高信号边缘计算的准确性,lf=4,lf=
18、8,返回,sym,symw,sym,信号的延拓模式,计算分解滤波器系数根据选定的延拓模式对信号进行延拓对低通滤波器系数和延拓后的信号作卷积将卷积结果隔2抽取 得到近似系数同样的方法得到细节系数,cA,cD=dwt(a,db2),dwt的计算过程,分解层数,包括近似和细节系数,各层系数的长度,x:1024点l=130 130 258 513 1024c:1031点,wavedec,计算重构滤波器系数向上插值对低通滤波器系数和插值后的信号作卷积取卷积结果中间的length(cA)-length(Lo_R)+2个值用高通滤波器进行同样的运算两者得到的结果相加,低通重构滤波器系数,高通重构滤波器系数,
19、返回中间L个结果值,X=idwt(cA,cD,db2),idwt,如果对系数C没有进行任何处理,将得到与原始信号完全一样的结果经常对C中的一部分数据做处理后,再进行重构以达到一定目的,比如降噪、数据压缩等,可取a或d,指定近似或细节,指定对哪一层系数进行重构,waverec和wrcoef,c,l=wavedec(s,5,sym4);a5=wrcoef(a,c,l,sym4,5);,waverec和wrcoef的实例,从多层分解的系数中提取出某一层的近似系数从多层分解的系数中提取出某一层的细节系数,appcoef和detcoef,c,l=wavedec(s,5,sym4);,appcoef和de
20、tcoef的实例,xd=wden(x,sqtwolog,s,mln,3,db3);,信号降噪,c,l=wavedec(x,5,db5);d1=wrcoef(d,c,l,db5,1);,突变性检测,c,l=wavedec(x,6,db3);a6=wrcoef(a,c,l,db3,6);d1=wrcoef(d,c,l,db3,1);,趋势检测,小波基函数,待分析信号,计算出小波系数并画图,选择画图用的着色模式和是否将小波系数取模,指定尺度,尺度的选择决定了小波变换系数的范围如果只对低频信息感兴趣,可以将scale选成非均匀的区间,例如:1:5:30 31:0.5:50,一维连续小波变换常用的mat
21、lab函数,1:32,1:0.2:32,1:100,ccfs=cwt(vonkoch,1:32,sym2,plot);,cwt用于分析信号自相似性,分解函数wpcoef 小波包系数wpdec小波包分解合成重构函数wprcoef重构系数wprec 全重构,小波包变换常用的Matlab函数,wpt=wpdec(x,3,db1,shannon);,Tree Decomposition,Data for node:(0)or(0,0),鼠标单击某节点,右侧图即显示该点的小波系数,小波包的结果wpt是wptree类型的数据,wpcoef可提取出其中某节点的系数,wpdec,cfs=wpcoef(wpt,
22、2 1);,wpcoef提取指定结点的小波系数,rcfs=wprcoef(wpt,2 1);,节点(2,1)的系数,节点(2,1)的系数重构的结果,wprcoef,Tree Decomposition,Data for node:(0)or(0,0),原始信号,时频相平面,wpviewcf(wpt,1);,小波包在信号时频分析中的应用,美国Case Western Reserve University轴承振动信号标准测试数据集试验参数转速为1728 r/min轴频为28.8 Hz内圈故障频率为156.3 Hz采样频率为12k Hz采样点数为12k(频率分辨率为1 Hz),小波在轴承故障诊断中的应用,原始信号时域图,原始信号频域图,小波在轴承故障诊断中的应用,频域放大图,156Hz,可以看到轴承内圈故障频率156Hz,但是二倍频、三倍频不明显我们希望得到156、312和468Hz,所以对信号进行4层分解,并用第4层的近似系数进行单支重构,对重构后的信号作傅立叶变换。,小波在轴承故障诊断中的应用,得到了明显的轴承内圈故障频率156Hz及其二倍频、三倍频!,小波在轴承故障诊断中的应用,FFT STFT wavelet analysis 连续小波 离散小波 多分辨率分析 小波包、二代小波,专题总结,小波分析的参考资料,小波分析的参考资料,