computer 发表于 2006-10-26 16:02

To 老八:
      不好意思,我找了很久还是没有找到你说的如果看不懂,就在emd.m下面下载两篇著作,请具体说一下,行吗?我回去一定会好好检查我的人品的,呵呵.不甚感激!

computer 发表于 2006-10-26 16:43

我从google下面下载了那些程序,可运行emd.m的文件时还是出现错误了啊,请帮我指点一下,错误如下:
??? Index exceeds matrix dimensions.

Error in ==> emd>init at 575
x = varargin{1};

Error in ==> emd at 75
= init(varargin{:});       

>>

computer 发表于 2006-10-26 16:46

To:老八,刚才问的那两篇著作已经找到,不用帮我解答了,谢谢1能不能帮我看看哪个程序怎么出问题了吗?不甚感激!

eight 发表于 2006-10-26 18:43

原帖由 computer 于 2006-10-26 16:46 发表
To:老八,刚才问的那两篇著作已经找到,不用帮我解答了,谢谢1能不能帮我看看哪个程序怎么出问题了吗?不甚感激!


x是一个向量,我忘记是列向量还是行向量了,这些小问题自己调试跟踪一下就ok了

hdwang 发表于 2006-10-28 19:58

八楼的程序直接运行后出现了下面结果,没有看到图?
mode 1 enregistre
mode 2 enregistre
mode 3 enregistre
mode 4 enregistre
mode 5 enregistre
mode 6 enregistre

晗菲 发表于 2006-11-2 16:22

我想问几个问题
函数=instfreq(x,t,L,trace)是求瞬时频率吗?参数fnormha : Output (normalized) instantaneous frequency为什么值是在在0.0与0.5之间?可不可以不要将瞬时频率标准化?
还有hilbert时间-频率-幅值谱的三维时频谱图和边际谱图是用哪个程序做出来的?找的一些文章里只是给出理论公式,happy说将幅值以等高线或灰度形式画在时间-频率平面上就可以了,但是之前用函数instfreq对各个IMF求瞬时频率,怎么把不同IMF求得的瞬时频率和幅值放到一张图上面?简单的叠加不行吧?
恳请做过这方面工作的前辈赐教,感激不尽

eight 发表于 2006-11-3 19:56

原帖由 晗菲 于 2006-11-2 16:22 发表
我想问几个问题
函数=instfreq(x,t,L,trace)是求瞬时频率吗?参数fnormha : Output (normalized) instantaneous frequency为什么值是在在0.0与0.5之间?可不可以不要将瞬时频率标准化?
还有hilbert时间-频率-幅 ...


参考一下代码对应的文章吧,用instfreq求出来的瞬时频率好像是之间的,其他的我懂得不多,EMD我比较熟悉一点,后续的hht我不熟悉

love4215 发表于 2006-11-22 10:11

请问最新的emd程序里的那个boundary_conditions是不是抑制端点效应的程序啊,我运行了好像不是,大家有没有抑制端点效应的程序呢,还有该怎么得到真正的瞬时频率啊,原程序运行后的频率值是在之间的。

eight 发表于 2006-11-22 10:28

原帖由 love4215 于 2006-11-22 10:11 发表
请问最新的emd程序里的那个boundary_conditions是不是抑制端点效应的程序啊,我运行了好像不是,大家有没有抑制端点效应的程序呢,还有该怎么得到真正的瞬时频率啊,原程序运行后的频率值是在之间的。


boundary_conditions就是边界延拓函数,也可以认为是抑制端点效应的程序,flandrin采用的是极值点对称延拓的方法,可以根据你的需要换成其他方法,如神经网络方法 、镜像闭合方法和多项式拟合方法等。至于瞬时频率的问题,我不是太懂,按照它的方法求得的频率的确在之间,具体请参阅refguide.pdf中的函数对应的文章

kingthaw 发表于 2007-1-10 13:53

对matlab不熟,不知道这个是什么问题
用了前面说的emd.m,下载了io.m,直接这样照猫画虎写的,也不知道怎么改,谁能帮一下忙啊,多谢了
imf = emd(s2);
imf = emd(s2,struct('stop',,'maxiterations',100));
%Remark: the following syntax is equivalent
%>>imf = emd(x,'stop',,'maxiterations',100);
%
options.dislpay = 1;
options.fix = 10;
options.maxmodes = 3;
= emd(s2,options);


??? Error using ==> emd>init
bad option field name: dislpay
Error in ==> emd at 75
= init(varargin{:});
Error in ==> mine at 29
= emd(s2,options);

anna_yl 发表于 2007-1-14 22:54

建议将本贴置顶,好使新人更容易看到而不再重复提问。

lsclsc27 发表于 2007-4-11 19:26

function = hhspectrum(imf,t,l,aff)

% = HHSPECTRUM(imf,t,l,aff) computes the Hilbert-Huang spectrum
% inputs:
%- imf : matrix with one IMF per row
%   - t   : time instants
%   - l   : estimation parameter for instfreq
%   - aff : if 1, displays the computation evolution
我想问一下输入参数l--estimation parameter for instfreq是什么意思?谢谢
谁能上传一下调用该函数的例子啊,谢了

eight 发表于 2007-4-11 19:35

原帖由 lsclsc27 于 2007-4-11 19:26 发表
function= hhspectrum(imf,t,l,aff)

%= HHSPECTRUM(imf,t,l,aff) computes the Hilbert-Huang spectrum
% inputs:
%- imf : matrix with one IMF per row
%   - t   : time instants
%   - l   :...

hhspectrum.m 文件帮助信息中就有调用的例子了

%Examples:
%
%s = randn(1,512);
%imf = emd(s);
% = hhspectrum(imf(1:end-1,:));
%
%s = randn(10,512);
% = hhspectrum(s,1:512,2,1);

至于 l 的意义,要看瞬时频率的相关文章,在 refguide.pdf 和 tutorial.pdf 中就可以找到文章标题

eight 发表于 2007-4-11 19:47

本帖已经重新更新

贺龙 发表于 2007-5-19 18:31

程序看不懂的问题,请按照emd.m文件中的帮助信息下载相关的两篇文章(帮助信息列出的5篇文章中的前两篇),就是Huang和Flandrin写的关于EMD和HHT的经典著作;另外,instfreq函数的实现请参阅 refguide.pdf 和 tutorial.pdf 两个文件中的该函数解释,并根据给出的参考文献查找相关资料阅读,这两个pdf文件在 hhspectrum.m 帮助信息关于时频工具箱(Time-Frequency Toolbox)的下载地址中可以找到.

eight兄台,你好,这几篇文章怎么我都找不到啊,能不能发给我,我有急用。hezhanshu2004@126.com   谢谢兄台。
页: 1 [2] 3 4 5 6 7
查看完整版本: 送给搞EMD或者HHT但没有下载到完整程序的朋友