《Matlab小波变换检测含有两个突变点的信号》由会员分享,可在线阅读,更多相关《Matlab小波变换检测含有两个突变点的信号(4页珍藏版)》请在金锄头文库上搜索。
1、Matlab 小波变换检测含有两个突变点的信号Matlab 小波变换检测奇异点原始时域信号是一个含有两个突变点的信号,信号是是一条光滑的直线,但 是信号在时间为 500 的附近存在两个突变点, 为了确定阶跃信号的突变点, 采用 db5 小波对信号进行处理,以便确定突变点的的位置。仿真程序如下:clearload nearbrk ;whos;figure(1);plot(nearbrk) xlabel( 时间 );ylabel( 幅值 );title( 频率突变信号 ); figure(2);f=fft(nearbrk);plot(abs(f);a3=wrcoef(a,d,a,db5,3);d3
2、=wrcoef(d,d,a,db5,3);d2=wrcoef(d,d,a,db5,2);d1=wrcoef(d,d,a,db5,1);d,a=wavedec(nearbrk,3, db5); 近似信号 ); 细节信号 ); 细节信号 );title( 傅立叶变换后的示意图 ); figure(3);subplot(411);plot(a3);ylabel( title( 小波分解后示意图 );subplot(412);plot(d3);ylabel(subplot(413);plot(d2);ylabel( subplot(414);plot(d1);ylabel( 细节信号 ); xlabe
3、l( 时间 );程序的运行结果如下图所示:图1原始信号原始信号载入后有矩阵表示,其中矩阵大小为1*1000,矩阵名为nearbrk矩阵是以双精度表示相应的图像显示如图1所示。Figure 2File Edit View Insert Tools Desktop Window Help专口曰风!)哽家TD|m3|口图2傅立叶分解后的示意图利用傅立叶变换对原始信号进行处理,可以得到如图 2所示的图像。从图2 可以看出:信号经过傅立叶变换后能够清楚确定出原始信号包含的频率值的大 小,但是对于确定频率突变点的位置,傅立叶变换却没有这种能力。凹IQ Figure 3File Edrt View Inse
4、rt Tools Pesktcp window 旦亡 IpD曰日心k曾0紗遅復口因口OO40嶠Dlr担幸归o o o o o2- o0 0 2醫w护鼎小浪分解后示意圉1002003004005006007003009001000k 1111iiiir ,.h1iiIII10020030040050060070080090010001002003004005006G070080090010001002003004005006007003009001000时间图3小波分解后的示意图利用小波变换对原始信号进行处理,可以得到如图3所示的小波分解示意图。从图中可见,db5小波分解后的3层高频系数重构图形可清楚的确定突变点 的位置。从图3中同样可能看出,第1层分解的di高频系数重构的图像比d2、 d3高频系数重构的图像更清楚的确定了信号突变点的位置。命令行输出结果如下:Name SizeBytes Class Attributesn earbrk 1x10008000 double总结对原始先信号使用db6小波在尺度132上进行连续小波变换。相应系绝对值 的图像如图2所示。从图3的原始信号连续小波变换系数的示意图可以清楚的看出, 在t=710时, 小波系数出现了一个倒锥形的区域, 以此,可以推断在该区域存在突变点。 小波 分析在检测突变点应用中具有傅立叶变换无法比拟的优越性。