0

在下面的代码示例中,我希望打印输出的行至少大致匹配。但他们没有。

% input data
y  = rand(10000,1); 
dt = 1/500; % 500Hz is the sampling rate


% wavelet transform
f  = 1:50;                    % frequencies at which to perform WT
s  = scal2frq(f,'morl',dt);   % corresponding scales estimates
wt = cwtft( y, 'wavelet', 'morl', 'scales', s );

[ f; wt.frequencies/dt ]

我正在尝试在 Matlab 中使用连续小波变换,并且我想在输入信号中以不同频率执行变换,但我正在努力寻找一种可靠的方法来估计相应的尺度

在那个代码示例中,我scal2freq用来估计这些尺度(知道它是对合的,即scal2frq(scal2frq(x,'morl',dt),'morl',dt) == x所有的数值精度都达到了x, dt),但是我希望返回的频率估计值cwtft是相似的。如您所见,它们不是。

有谁知道如何cwtft估计这些频率,以及我是否可以使用反向估计来预测所需的比例?

4

1 回答 1

1

Morlet 小波的频率和尺度之间的对应关系是scale = 6 / (2*pi * frequency*dt)(其中frequency*dt是周期/单位)。

于 2016-07-13T12:57:07.917 回答