luohui 发表于 2008-12-19 11:11

为何对不同信号emd分解出现不同的结果

我用的EMD的程序是G. Rilling, July 2002版的matlab程序。
对采样的不同状态的信号,有的能顺利分解,有的分解出现“mode 1 nombre d iterations : 600
stop parameter mean value : 0.047062
mode 1 nombre d iterations : 600
stop parameter mean value : 0.0023719”的提示。
有的信号根本不能分解,出现“??? Attempted to access tlmax(1); index out of bounds because numel(tlmax)=0.
Error in ==> emd at 217
    if tlmin(1) > t(1) | tlmax(1) > t(1)
Error in ==> fhh_dealdata at 10
= emd(x);%x = fractional_hilbert_lh(x,P);”

请各位大侠指点一下,我是想对模拟电路采用的不同故障的电压值进行特征提取,我查了一些文章,发现Hilbert huang变换用在机械那块的比较多,
还没有发现用于模拟电路故障诊断的,是不是hilbert huang变换不能用于处理模拟电路采样的信号?

zhuxiaoxun 发表于 2008-12-19 18:21

回复 楼主 luohui 的帖子

我也遇到了同样的问题。
程序本身是没有问题的,程序里自带的信号能够分解。我问过一些高手,他们说造成有些信号不能分解的原因包括边界条件、迭代次数和插值方式。但还不是很明白。
希望有高手解决。
更希望能有搞EMD的高手加上我的QQ:374226711指点我。我是搞旋转机械故障诊断的。非常感谢!:lol

00yangmin 发表于 2008-12-23 18:19

有的信号确实是不能分解,emd并不是万能的,会有模态混叠,边缘效应等问题,除了楼上说的原因,我觉得单次迭代停止条件的设置也会造成有些信号不能分解

anycall 发表于 2008-12-24 11:40

我觉得是工具箱的问题,可以尝试重新安装工具箱

gsmaohj 发表于 2009-2-16 17:25

回复 地板 anycall 的帖子

工具箱怎么安装啊?麻烦指点一下。
页: [1]
查看完整版本: 为何对不同信号emd分解出现不同的结果