在下面的代码示例中,我希望打印输出的行至少大致匹配。但他们没有。
% 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
估计这些频率,以及我是否可以使用反向估计来预测所需的比例?