声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1573|回复: 9

[HHT] 怎样将频率转化成真实的频率。

[复制链接]
发表于 2010-5-24 15:30 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
N=1000;
n=1:N;
fs=1000;
t=n/fs;
fx=10;
fy=50;
x=cos(2*pi*fx*t);
y=10*cos(2*pi*fy*t);
z=x+y;
data=z;
imf=emd(data);emd_visu(data,1:length(data),imf,1);
[A,f,tt]=hhspectrum(imf);
[im,tt]=toimage(A,f);
im=flipud(im);
disp_hhs(im);
colorbar;
这是我的一个程序。但是得到的figure4图的纵坐标不是对应于10或者50。请给我大侠给小弟提点一二,让我知道怎么把纵轴转换成真正的频率轴。谢谢了。
figure4.jpg
回复
分享到:

使用道具 举报

 楼主| 发表于 2010-5-24 18:22 | 显示全部楼层

回复 楼主 jiangxiaolong 的帖子

还有希望给予解答,为什么我的右边纵轴出现了负值。 希望高手给予解答。

评分

1

查看全部评分

发表于 2010-5-24 19:26 | 显示全部楼层
用的是归一化频率  楼主用0.01*fs =100Hz  0.05*fs=50
 楼主| 发表于 2010-5-24 19:50 | 显示全部楼层

回复 板凳 xiangyu537 的帖子

谢谢 解答,我想问能能把 纵坐标轴直接转化成可以看出100hz 和50hz。(就是图像显示的纵坐标直接是100hz和50hz)。2为什什么我右边的是负值,能转化为正值吗?
发表于 2010-5-24 20:15 | 显示全部楼层
那是因为取了-20lg   所以会出现幅值
 楼主| 发表于 2010-5-24 21:48 | 显示全部楼层

回复 5楼 xiangyu537 的帖子

277299838 这个是我的
发表于 2010-5-26 16:27 | 显示全部楼层

回复 地板 jiangxiaolong 的帖子

time:set(gca,'xtick',[0:100:1000],'Xticklabel',[0:0.1:1])
frequency:set(gca,'ytick',[0:0.05:0.5],'yticklabel',[0:50:1000])
右边纵轴出现负值是因为默认蓝色的时候能量最小。如果想改一下话,可以用这个语句
colorbar('yticklabel',{[0:2:20]})
这时候的一个问题是:我这里从0到20的标注是在先colorbar后知道了默认的值以后手动改的,如果能编程序直接
在colorbar后就出现从0到20就比较好了。也希望高手能指点?
 楼主| 发表于 2010-5-27 12:00 | 显示全部楼层

回复 7楼 yanzhang_1 的帖子

1.时间轴的  是在哪里改啊?是在函数上改吗?还是在编程时改,我不知道要怎么做.能解说的详细点吗?
2.你说的colorbar的问题我想是不是在函数里面改,DISP_HHS函数可以改成0到20,具体的是在73和76行 im后面数值都改改成0到20,就可以了。
发表于 2010-5-28 09:41 | 显示全部楼层
disp_hhs(im);将这个函数的输入需要改一下,默认为的采样频率为1,如果想改成真实频率,则需要你输入你的采样频率,disp_hhs(E,[],fs); fs代表你的采样频率!
发表于 2011-4-16 16:43 | 显示全部楼层
在disp-hhs函数里改一下fs
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-9-21 18:56 , Processed in 0.061096 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表