メインコンテンツ

freqz

DWT フィルター バンクの周波数応答

説明

[psidft,f] = freqz(fb) は、ウェーブレット フィルター psidft の複素数値の周波数応答と離散ウェーブレット変換 (DWT) フィルター バンク fb の周波数ベクトル f を返します。周波数の単位はサイクル/サンプル (または、サンプリング周波数が fb で定義されている場合は Hz) です。周波数応答は、ゼロ周波数が中央になるように中央揃えされます。

[psidft,f,phidft] = freqz(fb) は、分解のすべてのレベルで、DWT フィルター バンク fb のスケーリング フィルター phidft について、複素数値の周波数応答を返します。

freqz(fb) は、ウェーブレット フィルター バンク fb の片側振幅周波数応答をプロットします。振幅周波数応答は、すべてのウェーブレット バンドパス フィルターと最も粗い解像度のスケーリング フィルターについてプロットされます。凡例は対話型です。フィルターの振幅応答の表示/非表示を切り替えるには、凡例の対応する行をクリックします。

すべて折りたたむ

長さ 4096 の信号および Fejér-Korovkin fk22 ウェーブレット用の DWT フィルター バンクを作成します。ウェーブレット フィルターと最終解像度スケーリング フィルターの振幅周波数応答をプロットします。

len = 4096;
fb = dwtfilterbank(Wavelet="fk22",SignalLength=len);
freqz(fb)

Figure contains an axes object. The axes object with title DWT Filter Bank fk22, xlabel Normalized Frequency (cycles/sample), ylabel Magnitude contains 8 objects of type line. These objects represent D 1, D 2, D 3, D 4, D 5, D 6, D 7, A 7.

ウェーブレットおよびスケーリング フィルターの周波数応答を取得します。分解のすべてのレベルでスケーリング フィルターの振幅周波数応答をプロットします。

[psidft,f,phidft] = freqz(fb);
plot(f,abs(phidft)')
grid on
xlabel("Normalized Frequency (cycles/sample)")
ylabel("Magnitude")
legend("A1","A2","A3","A4","A5","A6","A7")

Figure contains an axes object. The axes object with xlabel Normalized Frequency (cycles/sample), ylabel Magnitude contains 7 objects of type line. These objects represent A1, A2, A3, A4, A5, A6, A7.

分解の最初の 2 つのレベルで、ウェーブレットとスケーリング フィルターの片側振幅周波数応答をプロットします。レベル 2 の周波数応答がレベル 1 のスケーリング フィルターの振幅応答とどのように重なるかに注意してください。

plot(f(len/2:end),abs(psidft(1,len/2:end))')
hold on
plot(f(len/2:end),abs(phidft(1,len/2:end))')
plot(f(len/2:end),abs(psidft(2,len/2:end))')
plot(f(len/2:end),abs(phidft(2,len/2:end))')
hold off
grid on
xlabel("Normalized Frequency (cycles/sample)")
ylabel("Magnitude")
legend({"Level 1 Wavelet","Level 1 Scaling", ...
    "Level 2 Wavelet","Level 2 Scaling"})

Figure contains an axes object. The axes object with xlabel Normalized Frequency (cycles/sample), ylabel Magnitude contains 4 objects of type line. These objects represent Level 1 Wavelet, Level 1 Scaling, Level 2 Wavelet, Level 2 Scaling.

入力引数

すべて折りたたむ

離散ウェーブレット変換 (DWT) フィルター バンク。dwtfilterbank オブジェクトとして指定します。

出力引数

すべて折りたたむ

DWT フィルター バンク fb 用のウェーブレット フィルターの周波数応答。LN 列の行列として返されます。ここで、L はフィルター バンク LevelN はフィルター バンク SignalLength です。周波数応答は、ゼロ周波数が中央になるように中央揃えされます。

周波数 (単位はサイクル/サンプルまたは Hz)。長さ N の実数値ベクトルとして返されます。ここで、N はフィルター バンク SignalLength です。サンプリング周波数が fb で指定されている場合、周波数の単位は Hz です。

データ型: double

DWT フィルター バンク fb 用のスケーリング関数の周波数応答。LN 列の行列として返されます。ここで、L はフィルター バンク LevelN はフィルター バンク SignalLength です。周波数応答は、ゼロ周波数が中央になるように中央揃えされます。

バージョン履歴

R2018a で導入