1021830113 发表于 2007-10-15 14:10

怎么让hht变换的频率划分的更细啊

我用riling的程序作hht变换,可是发现他的程序只是把频率归一化为400份,这跟小波包分析还有什么区别啊。
有没有直接给出原始频率信号的源程序啊?

zhangnan3509 发表于 2007-10-15 14:18

回复 #1 1021830113 的帖子

HHT从原理上和小波有本质的不同,分解出来的各阶和小波也不一样。楼主想得到什么样的源程序?

zhangnan3509 发表于 2007-10-15 14:23

本帖最后由 wdhd 于 2016-9-7 16:08 编辑

原帖由 1021830113 于 2007-10-15 14:10 发表
我用riling的程序作hht变换,可是发现他的程序只是把频率归一化为400份

这句话从何说起?我之前没有留意过,能不能说得更详细一些:loveliness:

1021830113 发表于 2007-10-15 14:25

我发现,hht变换最后把采样频率的一半进行400等分,而信号在每个时间点上对应的频率值都近视成划分好的频率值,而不是给出原始的信号频率值。我想得到一个程序,计算出来的结果中频率没有经过近似处理。我考虑这可能是riling为了便于处理数据而采取的手段,但是完全可以使用稀疏矩阵表征hht变换结果啊。

zhlong 发表于 2007-10-15 14:36

http://forum.vibunion.com/forum/viewthread.php?tid=50010
里面有频率点数设置

1021830113 发表于 2007-10-15 14:42

刚刚发现A和f应该是每个imf变换后的精确幅值和频率值。程序画图的时候才把频率近似了一下。
不知道这点发现对不对。

1021830113 发表于 2007-10-15 14:48

%TOIMAGEtransforms a spectrum made of 1D functions in an 2D image
%
% = TOIMAGE(A,f,t,splx,sply) transforms a spectrum made
% of 1D functions (e.g., output of "hhspectrum") in an 2D image
%
% inputs :   - A    : amplitudes of modes (1 mode per row of A)
%            - f    : instantaneous frequencies
%            - t    : time instants
%            - splx : number of columns of the output im (time resolution).
%                     If different from length(t), works only for uniform
%                     sampling.
%            - sply : number of rows of the output im (frequency resolution).
% outputs :- im   : 2D image of the spectrum
%            - tt   : time instants in the image
%            - ff   : centers of the frequency bins
%
% Examples : = toimage(A,f); = toimage(A,f,t); = toimage(A,f,sply);
%             = toimage(A,f,splx,sply); = toimage(A,f,t,splx,sply);
%
%
% See also
%emd, hhspectrum, disp_hhs
%
% G. Rilling, last modification 3.2007
% gabriel.rilling@ens-lyon.fr
function = toimage(A,f,varargin)

DEFSPL = 400;
error(nargchk(2,5,nargin));

应该在TOIMAGE函数中修改红色部分,在这里可以选择画图时的频率划分程度。

eight 发表于 2007-10-15 19:11

本帖最后由 wdhd 于 2016-9-7 16:08 编辑

原帖由 1021830113 于 2007-10-15 14:48 发表
%TOIMAGEtransforms a spectrum made of 1D functions in an 2D image
%
%= TOIMAGE(A,f,t,splx,sply) transforms a spectrum made
% of 1D functions (e.g., output of "hhspectrum") in an 2D image
...
这只能看他的文章有没有涉及这方面了,如果没有,可能是随便取的一个经验值。其实在其他函数也有这个情况,例如:

T = 1:4:N;
imagesc(flipud(rs1(1:128,:)))

这些都是跟实际信号相关的值,因此,当你把它们弄懂以后,就可以自己修改了
页: [1]
查看完整版本: 怎么让hht变换的频率划分的更细啊