声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1706|回复: 7

[HHT] HHT反变换与瞬时频率的频移

[复制链接]
发表于 2007-12-1 13:01 | 显示全部楼层 |阅读模式

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

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

x
function [y] = invhht
clear;

f1=100;
f2=5000;
ts=1/20000;
fs=1/ts;
k=0.4;
t=0:ts:k;

y=sin(2*pi*t*f1)+t*4;

[imf,rr] = emd(y);

[m,ii]=size(imf);
figure(1)

[A,fa,tt] = hhspectrum(imf);

plot(fa,abs(A))

th=2*pi*fa.*tt; %求瞬时相位

yy=real(A.*exp(sqrt(-1)*th)); %重构原信号


figure(2)
plot(tt,yy)

figure(21)
    [ff1] = abs(fftshift(fft(yy,length(tt))));
    [ff2] = abs(fftshift(fft(xx,length(t))));
    plot(ff1)
figure(22)
    plot(ff2)
回复
分享到:

使用道具 举报

 楼主| 发表于 2007-12-1 13:05 | 显示全部楼层
结果是

[ 本帖最后由 JulianChin 于 2007-12-1 13:07 编辑 ]
原信号.JPG
IMF.JPG
瞬时频率—瞬时幅度.JPG
重构后的信号.JPG
 楼主| 发表于 2007-12-1 13:10 | 显示全部楼层
注意:
瞬时频率—瞬时幅度谱并不是一条理想垂线,这说明瞬时频率变换有频移!!
因此HHT反变换的实用性还有待研究

我不是搞算法的,编程水平不高,我这种计算HHT反变换方法很原始,我希望论坛上那位前辈能做出精度更好的程序给大家分享
 楼主| 发表于 2007-12-1 17:02 | 显示全部楼层
对于那些瞬时谱成混沌形态的信号,好像没法重构,因为不知道瞬时谱对于时间的函数,也没法拟合
发表于 2007-12-3 15:25 | 显示全部楼层
HHT本质上来说是没法反变换的。因为从imf到瞬时频率有一步微分,即瞬时相位微分成为瞬时频率。如果反变换,就要对瞬时频率积分,此时会产生一个常数项,这个常数项是不确定的。因此也就造成你的途中趋势项的缺失。你的程序中求瞬时相位的那一步其实是默认常数项为零。因此,HHT反变换是没法绕过常数项问题的。这是算法本质决定的。
 楼主| 发表于 2007-12-3 17:58 | 显示全部楼层

回复 #5 playfish 的帖子

我想你是对的
发表于 2007-12-4 09:42 | 显示全部楼层
趋势项的问题,在hht中,在我有限的水平看来,确实是还没有更好的办法解决。
发表于 2008-3-20 14:50 | 显示全部楼层
playfish说的有道理,这问题目前还不好解决
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-11-6 07:30 , Processed in 0.076826 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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