EMD的端点延拓问题
最近用Riling的EMD程序对于有些信号的处理出现了过分解现象。有人说是端点延拓问题。eight有篇帖子也提出“根据信号两端的走势,使用了特定的端点延拓方法”,但具体的延拓方法怎么去选,怎样去观察两端的走势?愿闻其详。 参考 黄大吉镜像延拓法 哦,谢谢。对于端点的延拓我大概看过一些文章,不过我是想问对于一个具体的信号来说,有没有一个大概的规律可循来选择一种适当的方法? 一般情况下,没有万能的延拓方法。要根据你的处理信号特征选择相应的处理方法。个人认为,匹配法对周期成分的信号效果非常很好。镜像法、黄的延拓法、RLLING次之。不知你处理的信号是什么信号,会出现过分解. 我处理的信号是关于旋转机械的振动信号。
但就连一般的仿真信号也回出现过分解,甚至无法分解。x=sin(2*pi*0.08*t)+sin(2*pi*0.11*t)+sin(2*pi*0.15*t)+sin(2*pi*0.17*t) 你这个信号不属于过分解吧
增加采样率试试 个人认为,信号可以分解开,但要增加筛选次数。 我觉得对于这种模拟信号,它的分解结果应该只有信号里出现的几个频率(对于这个信号来说应该有4个),而Rilling的程序只对他程序本身给定的例子能恰到好处的分解,而对其他的几乎所有信号来说却出现了过分解。感觉很苦恼。 不会吧。一般现在分解是有条件的,如果有二个合成信号,f1>f2的话,其要满足a1*f1>a2*f2关系肯定能分解开。Rilling分解存在盲区,但是满足这个条件基本还是可以分解开的 请问a1、a2指的是什么?
我所说的是我的信号都能够分解,只是分解后会出现多余所预期的模态。 a1、a2是指振幅。多余的IMF是正常现象。信号完全符合合成信号的现象很少,一般通过能量来判断,多余的IMF其能量很小。 好,谢谢你。
确实多余的分量的能量很小,我还以为我哪出错了。 我在论坛找到了 处理边界效应的程序,请问在用EMD处理数据的时候怎么调用边界处理的程序?
而且我看了一下EMD程序,好像里面有自带的端点效应处理程序,但没看明白主程序里是怎么调用的呢?
大侠帮忙解释一下,先谢了! 是啊。
还是等高手解决一下吧。
回复 13楼 prideheart 的帖子
主程序中首先调用了stop_sifting这个函数,而stop_sifting中又调用了mean_and_amplitude函数,由mean_and_amplitude再调用的boundary_conditions,即默认的镜像延拓法处理边界问题。
页:
[1]
2