scudream 发表于 2008-9-8 13:31

回复 14楼 吃书的老虎 的帖子

你这个图的效果已经不错了啊
50HZ出现了.
另一个自由分量的幅值确实要比50HZ大
你是用的我最初传上来的数据
还是自己令的形如:y1=10*sin(2*pi*50*t)
与y2=20*sin(2*pi*40*t+10)
的结果呢

scudream 发表于 2008-9-8 13:42

回复 14楼 吃书的老虎 的帖子

emd无法分解
我把两个正弦信号合成一个信号,然后用emd怎么无法分解成两个信号,这种问题应该如何处理,谢谢
fs=100;N=100;t=(0:N-1)/fs;x1=sin(2*pi*25*t);x2=sin(2*pi*20*t);x=x1+x2;


当两个频率成分比较靠近(有人说是频率比在0.5--2之间)时,EMD不易将其分解开来,但若严格结束准则增加筛分次数,有可能分解得开。我试了一下,筛分次数增加到1000,分解最大模态为2,可以得到两个相应的IMF。

这个人的贴子和这个问题很类似

吃书的老虎 发表于 2008-9-8 14:11

改变结束准则可以提高分解效果。图是你给我数据作的,但是是把你整个数据参加了EMD和边际谱求解,不仅仅是你说的1000个点的数据了。从你的数据IMF看到,在0~0.2是50HZ,在以后的数据都小于50HZ了。

scudream 发表于 2008-9-8 14:26

回复 18楼 吃书的老虎 的帖子

从理论上说如果能分解出
x1=sin(2*pi*25*t);x2=sin(2*pi*20*t);x=x1+x2;
那么我的问题也可以解决了.
因为从理论上说,我也是类似两频率叠加的
能不能把你的M文件发给我呢,还是麻烦你再试一下.
我会一直在此网上等你的消息

scudream 发表于 2008-9-8 16:55

回复 7楼 songzy41 的帖子

大侠,能否帮我考虑下这个问题呢

scudream 发表于 2008-9-8 19:00

回复 18楼 吃书的老虎 的帖子

可以把你的M文件给我,我继续研究下么

吃书的老虎 发表于 2008-9-8 21:17

不好意思,刚看到你的留言。我的EMD程序就是法国人的Rill程序,网上可以搜到的。我是结束准则修改为2000次。

吃书的老虎 发表于 2008-9-8 21:20

理论上如此,但你真实的实验数据肯定会和MATLAB仿真的数据有差别的。这就表现在你的实际数据分解效果没有仿真的好。

scudream 发表于 2008-9-8 21:22

回复 24楼 吃书的老虎 的帖子

是在哪里设置结束准则修改为2000次。
EMD??
把那个函数表达式发给我好吗??
我在一直等你啊.

songzy41 发表于 2008-9-9 07:58

原帖由 吃书的老虎 于 2008-9-7 17:39 发表 http://www.chinavib.com/forum/images/common/back.gif
降低采样率,增加时间长度。

我同意这观点。所谓两分量靠得太近,实际上是和采样频率有关的。我把楼主提供的数据,把采样率下降到1000Hz,这时数据只有801个,做EMD分析,得图如下,能分辨出50Hz和43Hz左右的分量。

[ 本帖最后由 songzy41 于 2008-9-9 07:59 编辑 ]

吃书的老虎 发表于 2008-9-9 10:36

程序放不上去,是EMD,版本是: G. Rilling, last modification: 3.2007。在函数中
function = stop_sifting(m,t,sd,sd2,tol,INTERP,MODE_COMPLEX,ndirs),你将将stop强制为0.这样EMD每次都分解为:2000次了。如果你要改变分解次数你就修改EMD中:“defopts.maxiterations = 2000;”
songzy41图效果不错,我当初的意思是增加信号的周期,而没有想到“两分量靠得太近,实际上是和采样频率有关的”,能解释得更详细些吗?

[ 本帖最后由 吃书的老虎 于 2008-9-9 10:43 编辑 ]

scudream 发表于 2008-9-9 13:57

回复 26楼 songzy41 的帖子

这个图是错误的,图中存在50hz的原因是0ms~250ms只有50hz,所以分辨出来了
我要求的是550~750ms中的各分量,这段时间里有50hz 还有一个40hz的,如果在这个时间段里能出现你所示图的两分量,那才能说明EMD分解成功

scudream 发表于 2008-9-9 14:00

回复 27楼 吃书的老虎 的帖子

这个方法也是无效的
我用用最小二乘拟合出来了曲线的参数:
y1=22*cos(50*2*pi*t+5);
y2=56*cos(38.5*2*pi*t-31.64);
y=y1+y2
修改参数也EMD不出来

scudream 发表于 2008-9-9 14:10

回复 26楼 songzy41 的帖子

你还清楚PRONY,你觉得用PRONY来解决这个问题如何呢

songzy41 发表于 2008-9-9 16:09

原帖由 scudream 于 2008-9-9 13:57 发表 http://www.chinavib.com/forum/images/common/back.gif
这个图是错误的,图中存在50hz的原因是0ms~250ms只有50hz,所以分辨出来了
我要求的是550~750ms中的各分量,这段时间里有50hz 还有一个40hz的,如果在这个时间段里能出现你所示图的两分量,那才能说明EMD分解成功
对于楼主的数据构成不了解,所以得出错误的结果。实际上按楼主的人造数据:
y1=22*cos(50*2*pi*t+5);
y2=56*cos(38.5*2*pi*t-31.64);
y=y1+y2
在采样频率1000下剥落法还是无法分辨50和38.5这两分量。
楼主想用PRONY方法分离,我认为可以分辨出50和38.5这两分量。
页: 1 [2] 3 4
查看完整版本: 急需解决的一个边际谱问题