一种高能量聚集性的时频分析方法----多重同步压缩变换(MSST)
多重同步压缩变换简介
在分析一个客观物体时,采集它当前状态的信息,是了解其工作状况最好的方式。通过传感器,记录其信息,得到的就是信号(一般均为时域信号)。时频分析技术(TFA),通过加入频率变量,为我们分析时域信号,提供了更为全面的时频视角。但是,传统TFA是存在很多不足的。帖子
http://forum.vibunion.com/thread-135594-1-6.html
http://forum.vibunion.com/thread-152004-1-1.html
做了比较全的分析。这里不再赘述。
目前,TFA的发展,是冲着两个目标。
一,时频谱具有高能量聚集性,直观地可以理解为高时频分辨率(也有些人,反对将聚集性等同为分辨率)。
二,信号能够被完美重构。(做到完美重构的话,可以使得该TFA技术用于信号去噪,模态分解等方面。)
传统TFA方法,比如,短时傅里叶变换(STFT),小波变换(WT),S变换等等,都是可以做到信号被完美重构的。但是,它们的能量聚集性特别差,时频谱发散严重。同步压缩变换(SST)的出现,就是在不影响信号重构性能的前提下,提高能量聚集性。但是,SST对噪声敏感,并且不适合处理强调频信号(遇到这两种情况,依然会发散严重)。上面的帖子中,介绍了一种叫同步提取变换(SET)的方法。相比于SST,时频聚集性,得到极大的提高。但是,SET不再能够完美重构信号了,只能做到近似重构。
这就有点尴尬了,难道上面两个目标,就不能同时达成吗?!接下来,介绍一种新提出的算法,Multi-synchrosqueezing Transform(MSST),多重同步压缩变换。MSST,既可以实现高能量聚集性,也可以完美重构信号。MSST是基于SST的一种技术,但是,脑洞却开的相当大。了解SST的同仁们应该知道,SST是基于STFT(或者WT)的一种后处理工具,从频率方向对STFT的结果进行压缩,从而提升时频谱的能量聚集性。此刻,大家心里还需要清楚一件事,只要是在频率方向对STFT结果进行的压缩,永远都可以对时域信号进行完美重构。虽然,SST不太适合处理强调频信号。但是,对强调频信号的STFT结果进行SST处理之后,时频谱依然要更加聚集一些。重点来了!那么,我们是不是可以对SST结果继续执行一次同步压缩操作?答案当然是可以的。再执行一次SST操作的结果是,时频谱会更加聚集。那么,继续执行下去,时频谱是不是会继续聚集下去?yes!通过这些idea的汇集,就提出了MSST算法。其原理,就是对时频谱执行多次同步压缩操作。由于多次压缩都是在频率方向进行的,因此,MSST是允许信号被完美重构的。
当然了,执行多次同步压缩,是会产生巨大的计算负担的,不利于实时计算。因此,之后文章中又给出了一种通过函数迭代的方式,极大地减少了计算负担,可以做到与SST相同的计算复杂度,实时性很好。 MSST从构思上,从算法实现上,都非常的简单。但是,其深层的数学原理,却很深。接下来,给大家看一个蝙蝠信号的分析例子。其他的,可以从文章中看看。文章最后,也提供了所有的代码和数据。直接拖进MATLAB里就可以运行。
下图中,a为STFT结果,b为SST结果,c为MSST结果,d为c的放大图。效果还是非常的明显的,时频聚集性的提升也是非常的显著。
说了这么多,MSST还可以做些什么是很关键的,将来大家可以做哪些改进?
(1) 可以把各个领域中,以前用传统时频分析做过的研究,再用MSST做一遍,绝对会有意想不到的新东西发现。(2) 我的这个算法是基于STFT提出的,但是,该理论完全适用于其他时频分析方法,如小波变换,S变换。大家完全可以将该文的研究思路移植于其他方法,保证不坑。(3) 本文方法是一阶的。但是,大家可以顺着思路研究二阶、三阶,一直到N阶。可以参考高阶SST来做。(文章之后提供的代码里,也有高阶sst的代码,稍微一改,就可以做出高阶MSST。)(4) 在信号处理领域,有时候大家会很关注弱信号的检测。因为弱信号,可以帮助大家预测设备将来发展的趋势,发现一些未知的规律,如用于寿命预测、早期故障诊断等等。MSST绝对可以满足大家这方面的需求,值得深入研究。(5) 近些年,EMD赚足了大家的眼球。但是,研究过EMD的人应该会很清楚,这玩意言过其实了。MSST可以实现EMD的功能,看论文中图和数据,效果绝对杠杠的,不坑人不骗人。(6) 在面对更加复杂的信号时,如各分量的瞬时频率挨着太近、甚至是有所交叉时,处理结果还是不够好,这些限制还期待大家去研究打破。(7) 路还很远,希望能够与大家共勉共进退,提出具有中国特色的理论方法。大家加油! 文章下载地址,https://ieeexplore.ieee.org/document/8458385/代码下载地址,https://ww2.mathworks.cn/matlabcentral/fileexchange/68571-multi-synchrosqueezing-transform
补充内容 (2019-3-3 09:31):
这个东西改名了,杂志社把中间的-给去掉了,叫Multisynchrosqueezing Transform了。 于老师做的东西真的真的很好 set那篇是硕士到现在第一篇觉得很简洁很nice的文章以后会继续关注您的文章 个人觉得
对于密集分量调幅调频信号
还是喜欢先用比较靠谱的信号分解方法
把多分量信号变为单分量信号后再利用TFA
这样会轻松些 这个东西改名了,杂志社把中间的-给去掉了,叫Multisynchrosqueezing Transform了。 中文名,建议叫“多次压缩变换”吧,意思会更加直白一些,之前的中文名略长了。 楼主,你好,我想下载你的这篇文章,但是没有下载权限,麻烦你发我邮箱一下吧,1152865778@qq.com,非常感谢 楼主,你好,程序里面的example_1,example_4,example_5,的Sig_noise ,vibdata,vib_data1数据没有,可不可以发我一份,1152865778@qq.com,非常感谢你的帮助。
页:
[1]