ウェーブレットスカログラムを解釈する


8

ウェーブレットの私の知識はイプシロンよりも少ないです。私と一緒に耐えなさい。2つのよく分離された正弦波(15および48 Hz)とランダムノイズの信号がある場合、スペクトログラムで2つをはっきりと確認できます(写真の2つの縞模様)。

t=0:0.002:1;   % fs = 500 Hz
x=4*sin(2*pi*15*t)+2*cos(2*pi*48*t);
xn = x + randn(size(x));
figure(1);
plot(xn);
figure(2);
spectrogram(xn, 64, 60, [], 500);

ここに画像の説明を入力してください ここに画像の説明を入力してください

しかし、「wscalogram」を使用すると、コンポーネントを区別できるとは言えません。

    coefs = cwt(xn,1:64,'db8','scalCNT');
    wscalogram('image',coefs,'scales',1:64,'ydata',xn);

ここに画像の説明を入力してください

スカログラムから2つの異なる正弦波があることを読み取る方法はありますか?その場合、ウェーブレット分解とフィルタリングを使用してそれらをどのように分離できますか?おそらくウェーブレット( 'db8')の選択は最適ではないと思いましたが、他のタイプを使用してスケールを大きく(または小さく)しても、大きな違いは見られません。明らかに、どこに、いつ、何にウェーブレットを適用するかについて何か不足しています。

ありがとう


y軸の意味を教えてください。ウェーブレットスカログラムのy軸の周波数は誰が読み取れますか?
Nader Rachid、

回答:


3

ウェーブレットはローカライズされたイベントに最適です。フーリエ変換は関数を正弦波と余弦波の合計として表します。どちらも局所化されていません。スペクトログラムは、周波数分解能を犠牲にして、いくつかの時間情報を保持します

あなたの場合、信号はまったくローカライズされていません。スペクトログラムはいくつかの時間情報をキャプチャするため、15 Hzの帯域を数Hzで塗りつぶし、スカログラムのフラットアウトは失敗します。


1

はい、何か不足しています:)さまざまなウェーブレットファミリを試しましたが、を使用する必要がありGaborWaveletます。これはMathematicaで書きましたが、どのような環境でも実行できます。

cwd = ContinuousWaveletTransform[Table[4 Sin[2 Pi 15 t] + 2 Cos[2 Pi 48 t] +   
               RandomReal[{-.5, .5}], {t, 0, 5 \[Pi], .01}], GaborWavelet[]]

WaveletScalogram[cwd, ColorFunction -> "RoseColors"]

Mathematicaグラフィック


2
GaborWaveletここで説明する必要がある理由を説明します。
Serge Stroobandt
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.