count_1126 发表于 2007-3-20 21:02

怀疑instfreq.m程序的正确性

用instfreq.m求瞬时频率发现第二个imf的瞬时频率比第一个imf大
谁用过这个程序吗?
有问题吗?

eight 发表于 2007-3-20 21:13

原帖由 count_1126 于 2007-3-20 21:02 发表
用instfreq.m求瞬时频率发现第二个imf的瞬时频率比第一个imf大
谁用过这个程序吗?
有问题吗?


正常现象,强烈建议你阅读本版关于EMD的帖子!!!!!特别是这个帖子:emd方法的 几点不明 请高手予以解答7楼

zhangnan3509 发表于 2007-3-20 21:49

eight你的意见是什么呢?关于我的问题?

eight 发表于 2007-3-20 21:56

原帖由 zhangnan3509 于 2007-3-20 21:49 发表
eight你的意见是什么呢?关于我的问题?


我是回答楼主的问题,指引他阅读那个帖子7楼的以下内容:

1. c1 c2 ... cn 的确是严格按照频率从高到低产生的,不过这里有一个误区,其意思并不是说c1的频率一定比c2的高,正确的理解是c1中的某个局部的频率比c2中相同局部的频率要高,这也正好反映了EMD算法局部性强的本质所在,也跟黄的说法“相邻的分量可能包含相同时间尺度的振荡,但是相同时间尺度的振荡绝对不会出现在两个不同的IMF分量的同一个位置”一致

count_1126 发表于 2007-3-20 22:03

读过了 不过还是疑问

Himf(1,:)=hilbert(imf(1,:));
=instfreq(Himf(1,:)');         

Himf(2,:)=hilbert(imf(2,:));
=instfreq(Himf(2,:)');


plot(t1,fnormhat1,'r',t2,fnormhat2,'b');

对一个简单信号:x=cos(t)+0.5*cos(t/2);
红色的整个在蓝色图形下面.

zhangnan3509 发表于 2007-3-20 22:10

我是说以前的emd程序和后来改过的emd相比 有一些变化,比如后来的有fixe 和 fixe_h 你觉得这两个中止条件很有必要吗?起到了什么作用?

eight 发表于 2007-3-20 23:27

原帖由 zhangnan3509 于 2007-3-20 22:10 发表
我是说以前的emd程序和后来改过的emd相比 有一些变化,比如后来的有fixe 和 fixe_h 你觉得这两个中止条件很有必要吗?起到了什么作用?


这个很少留意,呵呵。不过貌似 flandrin 在 emd.m 中实现很多功能,其中之一是用一个 mask 信号来区分频率相近的信号(可参考:The Use of a Masking Signal to Improve Empirical Mode Decomposition),还有就是你提到的 fixe 和 fixe_h,这两个均代表停止准则的不同实现,粗略看了一下, fixe 应该是不断迭代直到信号单调(极值点个数小于等于2),而 fixe_h 应该是只检验IMF的第一个条件(过零点条件),忽略零均值条件

zhangnan3509 发表于 2007-3-21 08:50

多加的这两个fixe和fixe_h在处理过程中作用很明显吗?mask好像是用来消除模态混叠的

xxf 发表于 2007-3-21 09:19

现在的问题是c1的瞬时频率的值全部小于c2,不知道是为什么?

zhangnan3509 发表于 2007-3-21 09:32

不是吧 是局部对应部分吗?你说的太泛泛了,大家都不知道具体情况是什么!

xxf 发表于 2007-3-21 09:42

5楼的程序对吗?就是用那个程序画出的图,从c1的瞬时频率全部小于c2的瞬时频率,就是在每一个点处,c1都小于c2。

count_1126 发表于 2007-3-21 10:13

各位高手说说呀

确实有5楼说的问题
急死了!
还有那个hhspectrum.m
好像也不能用啊

eight 发表于 2007-3-21 10:30

原帖由 count_1126 于 2007-3-21 10:13 发表
确实有5楼说的问题
急死了!
还有那个hhspectrum.m
好像也不能用啊


你以为只有你一个人急吗?我也很急,不过不是急你的问题,是急自己的问题,不要以为个个都很有空,只有你很忙。遇到问题不会自己先动手解决吗?我n多问题都是自己解决的,不要养成太依赖别人的习惯,尤其是男孩子

eight 发表于 2007-3-21 10:32

多加的这两个fixe和fixe_h在处理过程中作用很明显吗?

没用过,可以试试


mask好像是用来消除模态混叠的


是的,不过效果也不太好

eight 发表于 2007-3-21 10:33

原帖由 xxf 于 2007-3-21 09:19 发表
现在的问题是c1的瞬时频率的值全部小于c2,不知道是为什么?


没有试过,最近也忙,迟点有时间再看看,或者等其他高手解答
页: [1] 2
查看完整版本: 怀疑instfreq.m程序的正确性