ウェーブレット変換

ウェーブレット変換とは?

ウェーブレット変換は、さまざまなスケールによって特徴が変化する状況でデータを解析するための数学的ツールです。信号の特徴には、経時的に変化する周波数、過渡現象、ゆっくりと変化する傾向などがあります。画像の特徴には、エッジやテクスチャなどがあります。ウェーブレット変換は、主にフーリエ変換の制限に対処するために作成されました。

フーリエ解析では、信号が特定の周波数の正弦波に分解されるのに対し、ウェーブレット解析では、シフトバージョンとスケーリング バージョンのウェーブレットに分解されます。ウェーブレットは、正弦波とは異なり、速やかに減衰する波のような振動です。これにより、ウェーブレットで複数のスケールのデータを表現できます。用途に応じて、さまざまなウェーブレットが使用できます。MATLAB® と併用する Wavelet Toolbox™ では、ウェーブレット解析で使用される Morlet、Morse、Daubechies などのウェーブレットをサポートしています。

音声信号、金融に関する時系列データ、および生物医学的な信号は一般的に、過渡現象によって区切られた区分的に滑らかな挙動を示します。同様に、画像には通常、過渡現象によって区切られた、均質で区分的に滑らかな領域が含まれます。これはエッジとして表されます。信号と画像はいずれも、平坦領域や過渡現象をウェーブレット変換でまばらに表現することができます。

MATLAB ウェーブレット変換を使用して信号の過渡的挙動をキャプチャします。

ウェーブレット変換は、連続ウェーブレット変換 (CWT) と離散ウェーブレット変換 (DWT) の 2 種類に大別されます。

連続ウェーブレット変換は時間周波数変換であり、非定常信号の解析には理想的です。信号が非定常であるということは、その周波数領域の表現が経時的に変化することを意味します。CWT は短時間フーリエ変換 (STFT) に似ています。STFT では、固定ウィンドウを使用して局所周波数解析を行うのに対し、CWT では、可変サイズのウィンドウを使用して時間周波数平面をタイリングします。ウィンドウの幅は時間と共に大きくなるため、低周波現象に適しており、高周波現象には、幅の狭いウィンドウが適しています。連続ウェーブレット変換は、過渡的挙動や、急激に変化する周波数、ゆっくりと変化する挙動の解析に使用できます。

MATLAB で経時的に変化する 2 つの成分を使用して双曲線チャープ信号 (左) を解析します。短時間フーリエ変換 (中央) では瞬時周波数は明確に区別されていませんが、連続ウェーブレット変換 (右) では正確に捕捉しています。

MATLAB で経時的に変化する 2 つの成分を使用して双曲線チャープ信号 (左) を解析。短時間フーリエ変換 (中央) では瞬時周波数は明確に区別されないが、連続ウェーブレット変換 (右) では正確に捕捉される。MATLAB コードを参照。

離散ウェーブレット変換では、CWT の場合よりもスケールが粗く離散化されます。そのため、DWT は重要な特徴を保持しながら、信号や画像の圧縮やノイズ除去を行うのに便利です。離散ウェーブレット変換を使用して多重解像度解析を行い、信号を物理的に意味のある解釈可能なコンポーネントに分割できます。

オリジナル画像 (左) とノイズ除去済み画像 (右)。ウェーブレットのノイズ除去関数を使用して、画像のエッジを維持したまま、ノイズ除去を行いました。

オリジナル画像 (左) とノイズ除去済み画像 (右)。ウェーブレットのノイズ除去関数を使用して、画像のエッジを維持したままノイズを除去。MATLAB コードを参照。

ウェーブレット技術の適用や、MATLAB でのお使いのアプリケーションに適したウェーブレット選択の詳細については、Wavelet Toolbox を参照してください。

参考: Signal Processing Toolbox, DSP System Toolbox, ウェーブレット変換に関するビデオ, 経験的モード分解, ノイズ除去