猥琐 发表于 2010-11-12 19:35

请赐教,EEMD的一些问题

本帖最后由 牛小贱 于 2014-5-22 12:44 编辑

小的刚刚接触EEMD,从台湾中央大学上下载了程序,然后编写程序如下:
clear;clc
t=1:1000;
t1=t/100*2*pi;
a1=sin(t1);
t2=t/10*2*pi;
b1=linspace(0,0,1000);
for i=250:350
    b1(i)=0.2*sin(t2(i));
end
for i=750:850
    b1(i)=0.2*sin(t2(i));
end
x=a1+b1;%x是原信号
subplot(311);plot(t,a1);
subplot(312);plot(t,b1);
subplot(313);plot(t,x);
plot(x)
imf=emd(x);
emd_visu(x,t,imf)
%eemd
imf_eemd=eemd(x,0.1,100);
figure
subplot(511);plot(imf_eemd(:,1))
subplot(512);plot(imf_eemd(:,2))
subplot(513);plot(imf_eemd(:,3))
subplot(514);plot(imf_eemd(:,4))
subplot(515);plot(imf_eemd(:,5))
figure
subplot(511);plot(imf_eemd(:,6))
subplot(512);plot(imf_eemd(:,7))
subplot(513);plot(imf_eemd(:,8))
subplot(514);plot(imf_eemd(:,9))
subplot(515);plot(imf_eemd(:,10))

原信号:


EMD:

EEMD:


感觉EEMD的第二项为什么会是频率这么高?和EMD差距这么大?是不是我程序有问题?哪位高手请赐教,不胜感激!

hahaer 发表于 2010-11-12 21:02

我认为第二项应该是随机噪声造成的
虽然集总平均理论上为0
但是毕竟是有限次平均逼近
存在的残余也很正常

hahaer 发表于 2010-11-12 21:03

继续关注这个问题……

猥琐 发表于 2010-11-12 21:06

回复 3 # hahaer 的帖子

非常感谢你!

猥琐 发表于 2010-11-12 21:44

我看了论文上一些类似的仿真,没有类似第二项的,不知道是我的问题还是论文作者刻意隐瞒了

hahaer 发表于 2010-11-12 22:18

我仔细分析了下
图中第一项是信号本身
第二项是残余噪声(随机噪声一般是高频)
第三项是仿真信号中的b1
……
不过这个分解结果于我来看还是不理想
待分解信号中断正弦信号最后没在一个IMF分量中

shawnbon 发表于 2010-11-13 01:26

說實在話,這個EEMD的Code其實並不是很正確。
因為它為了確保每次EMD出來的IMF分量數量相同,所以它其實並沒有真的把EMD跑完。
(詳細情況可以看一下論壇其它帖的說明)
另外,你所加入的雜訊大小,是否有先評估過?
根據Huang的建議,最好是在原本信號std的0.1~0.4倍之間。
我個人是認為你加入的雜訊太小,所以沒辦法將IMF的mode mixing徹底解決
因此做出來的IMF分量不漂亮。

猥琐 发表于 2010-11-13 09:34

回复 7 # shawnbon 的帖子

非常感谢你。
请问雜訊如何评估?

shinhwaforever 发表于 2010-11-19 16:19

谢谢楼主的分享,刚刚学习EEMD,感觉很迷惑,先拿程序实践一下

峰之巅 发表于 2010-11-21 20:21

本帖最后由 峰之巅 于 2010-11-21 20:23 编辑

在没有噪音干扰的情况下,采用EMD得到的分解图可以说是正确的。我看到一些文献,总是认为EMD分解就是从高频向低频的分解,实际而言,这种理解是对EMD分解得到单分量IMF的一种误解。如果采用瞬时频率去描述单分量信号,我认为是指信号在某一时刻仅存在一个频率成分。所以对于原信号而言,、与区间内的信号只含有10Hz的低频正弦信号,所以在EMD分解过程中,这些信号成分应该与100Hz的高频成分一起出现在第一层IMF中。第二层IMF中理论上就剩下其余区间内的10Hz正弦信号,但由于EMD分解过程的一些固有缺陷性,才会出现IMF中波形失真等问题。
    对于EEMD,其实际上是利用人为所加的高斯白噪声,来弥补由于频率间断造成的信号间断。由于高斯白噪声的频率遍布于通频带,这样就相当于原本EMD分解第一层和第二层的那三个区间的正弦信号相对于比其频率更高的噪声频带而言,要远离100Hz的正弦信号,所以从图像上就感觉EEMD解决了所谓的“模态混叠”现象,而实际上与EMD结果区别的部分是被白噪声取代。

猥琐 发表于 2010-11-23 10:19

回复 10 # 峰之巅 的帖子

感谢你的回复。
最近看了吴召华的论文,上面讲人为添加的噪声最后在平均过程中会相互抵消,只留下IMF信号。我试着改变了参数Nstd和NE,Nstd从0.1到0.4,NE从10到250都试过了,分解出的IMF1总是有噪声。是不是参数不合适?还是噪声根本就不会抵消?

峰之巅 发表于 2010-11-23 15:17

回复 11 # 猥琐 的帖子

我个人认为,噪声根本不会抵消的,所谓的抵消是理想状况,也就是不同的白噪声要叠加无穷次,但实际上是不可能的。另外,噪声抵消的情况,与多次周期平均去白噪声类似,白噪声是随机的,所以也许噪声降低,也有可能噪声增大。

a1runner 发表于 2010-11-23 21:09

得到了和楼主同样的结果,第二个应该是噪声

猥琐 发表于 2010-11-26 15:40

回复 12 # 峰之巅 的帖子

我的想法跟你差不多,十分感谢仁兄!
继续学习。

0705118124 发表于 2011-3-29 11:23

回复 1 # 猥琐 的帖子

能把EEMD 程序上传一下吗 ?
谢谢
页: [1] 2
查看完整版本: 请赐教,EEMD的一些问题