prideheart 发表于 2007-11-27 09:43

如何调用HHT处理数据

我不是做HHT的,最近看到hht挺火的,就想把它用到我的课题中。
首先感谢各位高手无私的把程序包什么的都放到了论坛上。
我只是想用这个程序处理一下我的信号,看它是否能够分析出来,如果可以的话,再仔细研究一下HHT。
现在的问题是,我只想调用一下HHT这个程序,随便输入一下信号,看它的处理结果。
我看了一下下载包里的东西,没有hht.m函数。
所以我就对一个信号直接 emd(x),然后hilbert(),变换之后,我就不知道调用什么函数了,只好自己按着说明简单的
写了一下求频率那段,输出波形,但是发现频率几乎一直为零。
真诚的请求大牛帮忙说一下,这个HHT到底怎么调用? 我只是想实验一下,论坛里帖子看了很多,仍然是比较混乱。
请大牛不吝赐教,只是给我稍微说一下,别生气好吗?非常感谢~

[ 本帖最后由 zhangnan3509 于 2007-11-27 09:50 编辑 ]

prideheart 发表于 2007-11-27 09:55

斑竹神速,多谢帮我改了题目。
下次我发帖会自己注意的。

form 发表于 2007-11-27 10:30

回复 #1 prideheart 的帖子

http://forum.vibunion.com/forum/viewthread.php?tid=44797&highlight=emd
求助EMD程序如何使用
http://forum.vibunion.com/forum/viewthread.php?tid=29034&highlight=emd
送给搞EMD或者HHT但没有下载到完整程序的朋友

你自己再搜索一下,还有好多

prideheart 发表于 2007-11-27 10:56

本帖最后由 wdhd 于 2016-9-8 14:20 编辑

原帖由 form 于 2007-11-27 10:30 发表
http://www.chinavib.com/forum/viewthread.php?tid=44797&highlight=emd
求助EMD程序如何使用
http://www.chinavib.com/forum/viewthread.php?tid=29034&highlight=emd
送给搞EMD或者HHT但没有下载到完整程 ...
非常感谢,这些帖子我已经看了好多遍了,还是没搞太明白,所以想找个example,
我再仔细看一下这几个帖子,再次非常感谢。

prideheart 发表于 2007-11-27 21:09

t=1:500;
t=t*1/2000;
x=sin(2*pi*20*t);
y=0.4*sin(2*pi*40*t+140);
z=x+y;
plot(t,z)

imf=emd(z);
emd_visu(z,1:length(z),imf)

=hhspectrum(imf);
=toimage(A,f);
disp_hhs(im);
colormap(flipud(gray))

我运行了zhlong给的一个例子,提示:
??? Input argument "i" is undefined.

Error in ==> emd_visu at 70
figure(i+1)

我看了一下emd_visu.m,里面
% inputs :   - x : analyzed signal
%            - t : time instants
%            - imf : output of emd.m
%            - i (optional) : figure number for display
zhlong的程序中调用emd_visu时,只输入了前三个,没有输入i,i是默认的?
而且就是我运行的时候出不来第三个图——最后的时频图。
感谢大家指点。

prideheart 发表于 2007-11-27 21:14

运行下边程序时
=hhspectrum(imf);
=toimage(A,f);
disp_hhs(im);
colormap(flipud(gray))
提示这样的错误
??? Undefined function or method 'instfreq' for input arguments of type 'double'.

Error in ==> hhspectrum at 45
f(i,:)=instfreq(an(i,:)',tt,l)';

我的emd工具箱就是在论坛下的,应该不会有错误吧?
多谢大家不吝赐教。

zhlong 发表于 2007-11-27 21:28

回复 #6 prideheart 的帖子

下载tftb时频工具箱,instfreq在里面

form 发表于 2007-11-27 21:28

回复 #6 prideheart 的帖子

你还缺少个时频工具箱,这回应该全了,多搜搜
http://zhlong.ys168.com/

prideheart 发表于 2007-11-27 21:57

多谢zhlong 和form。

[ 本帖最后由 prideheart 于 2007-11-27 22:01 编辑 ]

zhangnan3509 发表于 2007-11-27 22:02

回复 #9 prideheart 的帖子

你如果是用05版的话,就把instfreq这个函数放到和emd同一个文件夹下。

如果是新版的,还是要把工具箱添加上

prideheart 发表于 2007-11-27 22:04

本帖最后由 wdhd 于 2016-9-8 14:20 编辑

原帖由 zhangnan3509 于 2007-11-27 22:02 发表
你如果是用05版的话,就把instfreq这个函数放到和emd同一个文件夹下。

如果是新版的,还是要把工具箱添加上
多谢,已经可以了,我装的是7.3版。可以用了。

zhangnan3509 发表于 2007-11-27 22:06

回复 #11 prideheart 的帖子

我说的不是MATLAB,而是emd程序

prideheart 发表于 2007-11-27 22:10

本帖最后由 wdhd 于 2016-9-8 14:20 编辑

原帖由 zhangnan3509 于 2007-11-27 22:06 发表
我说的不是MATLAB,而是emd程序
哦 我理解错了,谢谢。
我两个都下载了,开始我setpath的时候直接添加的tftb-0.1文件夹,不能用,刚才我setpath的时候添加了一下tftb-0.1目录下的mfiles文件夹就可以用了。
页: [1]
查看完整版本: 如何调用HHT处理数据