棒棒糖662 发表于 2008-4-3 16:45

频谱显示

麻烦问一下:我在运行程序时,按照论坛上的一个贴子直接把输入信号当作IMF,但是fs的取值不同,得到的效果也不一样。fs取400的时候能够得到三条直线分别为对应的频率,但是如果fs取200的时候只能得到两条直线分别对应的是4跟12,x2的频率没有显示出来。在高频处也有这样的情况出现。
clc;
clear;
global fs
fs=200;
%fs=400;
n=100;
t=0:1/fs:(n-1)*1/fs;
x1=sin(2*pi*12*t);
x2=sin(2*pi*8*t);
x3=sin(2*pi*4*t)
imf=;
=hhspectrum(imf);
=toimage(A,f);
disp_hhs(im)
colormap(flipud(gray))

zhlong 发表于 2008-4-3 19:02

我照你的程序试了一下,没问题的啊

alicia6 发表于 2008-4-4 07:55

hhspectrum 是什么? 我用的6.5版本,不认识啊!

adminftp 发表于 2008-4-4 08:02

hhspectrum是HHT工具包中的函数,你需要安装该工具包才能使用

tonysysu 发表于 2008-4-5 21:22

我试着运行一下,情况和你说的相反,fs取400的时候能够得到两天条直线,如果fs取200的时候能得到三条直线,我也不懂了。

棒棒糖662 发表于 2008-4-7 09:48

前两天放假出去了没来的及看帖子,谢谢各位的回复,但是我今天又重新调试了一下,还是存在上面的问题,fs在取100,200,300的时候都只有两条线,取101,102时对应4Hz的那条线若隐若现的。所附图为fs=102时的频谱显示
页: [1]
查看完整版本: 频谱显示