声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 5196|回复: 22

[HHT] 请教HHT工具箱中toimage函数中关于频率的问题

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

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

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

x
在toimage函数中
function [im,tt,ff] = toimage(A,f,varargin)
DEFSPL = 400;
...
if isvector(A)%判断A是否为行向量或者列向量
    A = A(:)';%按列转换成一行
    f = f(:)';
end
...
f = min(f,0.5);
f = max(f,0);%保证瞬时频率在0~0.5,是否是由于在hilbert变换中没有采样间隔这个概念,按照采样点数直接变换的,所以频率在0~0.5?
indf = round(2*f*(sply-1)+1);%下标必须为整数
indt = repmat(round(linspace(1,length(t),splx)),size(A,1),1);%下标必须为整数,且与indf对应行数为imf个数,列数为点数
im = accumarray([indf(:),indt(:)],A(:),[sply,splx]);
indt = indt(1,:);
tt = t(indt);
ff = (0:sply-1)*0.5/sply+1/(4*sply);%真实的各点对应的中心频率为什么是这样一个表达式?
烦请了解的给予指教,谢谢!
回复
分享到:

使用道具 举报

发表于 2010-3-21 17:01 | 显示全部楼层
顶一个,希望高人解释
发表于 2010-3-21 20:08 | 显示全部楼层

回复 沙发 sockhui 的帖子

我也站一个位。。。:lol :handshake 我认识你。
发表于 2010-3-23 10:19 | 显示全部楼层
我最近也一直在学习toimage这个函数
通过hhspectrum()函数获得时间间隔,幅值,然后通过toimage将其频率计算出来。
为什么要限制DEFSPL = 400;这个是什么意思呢?
发表于 2010-3-23 14:57 | 显示全部楼层
我也遇到了与楼上相同的问题,并且当我的参数取[im,tt1]=toimage(A,f,tt,length(tt))时会出错,说我的程序超出内存。如果取默认值DEFSPL = 400时,程序运行正常,我想问一下,这样取值对原始数据的分析有影响吗?
请高手帮忙了!
 楼主| 发表于 2010-3-23 17:48 | 显示全部楼层
DEFSPL = 400是频率分辨率,如果分辨率设置过大而采样点数又很多的话,可能会造成matlab内存不足,因为函数中有个变量im是个 时间分辨率x频率分辨率 的二维矩阵
发表于 2010-3-24 10:13 | 显示全部楼层
如果去默认值DEFSPL = 400,对最终出来的结果的正确与否有影响吗?我觉得没有,但不敢确定,讨论一下。
发表于 2010-3-24 10:13 | 显示全部楼层
对不起,是取DEFSPL = 400
 楼主| 发表于 2010-3-25 14:23 | 显示全部楼层
正确性肯定没有影响,只是分辨率高低的问题
发表于 2010-3-25 19:29 | 显示全部楼层
谢谢你的指点!
发表于 2010-8-28 16:54 | 显示全部楼层
回复 wdecai 的帖子
楼主能不能给我发个HHT变换工具箱啊,急用啊,谢谢:15211074650@163.com

   
发表于 2010-10-9 10:42 | 显示全部楼层
新手,受益了,3Q.
发表于 2010-10-14 10:51 | 显示全部楼层
没人研究这个了?
发表于 2010-10-14 11:01 | 显示全部楼层
发表于 2010-11-2 23:04 | 显示全部楼层
楼主能不能给我发一份HHT工具箱啊,我是新手,谢谢啊。
taosky01@msn.com
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-5-19 07:31 , Processed in 0.087234 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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