2016-06-01 9 views
-1

次のコードサンプルでは、​​印刷された出力の行が少なくともおおよそ一致することが予想されます。しかし、彼らはしません。ウェーブレット:周波数からスケールを決定する方法?

% 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で連続ウェーブレット変換を使用しようとしています、と私は、入力信号の異なる周波数で変換を実行したいのですが、対応を推定するための信頼性の高い方法を見つけるのに苦労していますスケール。そのコードサンプルで

、私は(それがすべてx, dtの数値精度までそのscal2frq(scal2frq(x,'morl',dt),'morl',dt) == xすなわち、involutoryであることを知っている)、これらのスケールを推定するscal2freqを使用していますが、その後、私はcwtftによって返された周波数推定値があろうと期待されます類似。ご覧のとおり、そうではありません。

cwtftがこれらの周波数をどのように見積もっているか、逆推定を使用して必要なスケールを予測できるかどうかは誰にも分かりますか?

+0

Downvote説明してください。 – Sheljohn

答えて

0

Morletウェーブレットの周波数とスケールの対応は、scale = 6/(2*pi * frequency*dt)frequency*dtはサイクル/単位)です。

関連する問題