このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
ウェーブレット ファミリ
Wavelet Toolbox™ ソフトウェアには、連続解析と離散解析の両方に使用できる多数のウェーブレットが含まれています。離散解析の場合、たとえば、直交ウェーブレット (Daubechies の極値位相ウェーブレットおよび最小非対称ウェーブレット)、B スプライン双直交ウェーブレットなどがあります。連続解析の場合、Wavelet Toolbox ソフトウェアには、Morlet、Meyer、ガウス導関数、Paul などのウェーブレットが含まれています。
ウェーブレットの選択は、信号またはイメージの特性およびアプリケーションの性質によって決まります。解析ウェーブレットと合成ウェーブレットの特性を理解すれば、アプリケーション用に最適化されたウェーブレットを選択できます。
ウェーブレット ファミリによって、いくつかの重要な性質が異なります。例として以下があります。
時間と周波数におけるウェーブレットのサポートおよび減衰率。
ウェーブレットの対称性または反対称性。付随する完全再構成フィルターの位相は線形です。
消失モーメントの数。ウェーブレットの消失モーメントの数が多いと、さまざまな信号やイメージに対してスパース表現を実現できます。
ウェーブレットの正則性。滑らかなウェーブレットほど、周波数分解能がシャープになります。さらに、ウェーブレット構築の反復アルゴリズムが速く収束します。
スケーリング関数 φ の存在。
連続解析の場合、Wavelet Toolbox ソフトウェアの解析ウェーブレットに基づく解析は一部のウェーブレットが対象です。詳細については、cwt
および icwt
を参照してください。基本的な理論上の目的については、逆連続ウェーブレット変換を参照してください。CWT による時間-周波数解析では、シミュレートした信号および実際の信号に対する連続ウェーブレット変換の使用について説明しています。
コマンド ラインで「waveinfo
」と入力すると、利用できるウェーブレット ファミリの主な性質が表示されます。特定のウェーブレット ファミリについては、ウェーブレット ファミリの略称を指定して waveinfo
を使用します。ウェーブレット ファミリの略称は、次の表および waveinfo
のリファレンス ページに記載されています。
ウェーブレット ファミリの略称 | ウェーブレット ファミリ名 |
---|---|
'haar' | Haar ウェーブレット |
'db' | Daubechies ウェーブレット |
'sym' | Symlet |
'coif' | Coiflet |
'bior' | 双直交ウェーブレット |
'rbio' | 逆双直交ウェーブレット |
'meyr' | Meyer ウェーブレット |
'dmey' | Meyer ウェーブレットの離散近似 |
'gaus' | ガウス ウェーブレット |
'mexh' | Mexican Hat ウェーブレット (別名 Ricker ウェーブレット) |
'morl' | Morlet ウェーブレット |
'cgau' | 複素ガウス ウェーブレット |
'shan' | Shannon ウェーブレット |
'fbsp' | 周波数 B スプライン ウェーブレット |
'cmor' | 複素 Morlet ウェーブレット |
'fk' | Fejer-Korovkin ウェーブレット |
Daubechies の最小非対称直交ウェーブレットについての詳細情報を表示するには、次を入力します。
waveinfo('sym')
ウェーブレットとスケーリング関数 (利用可能な場合) を計算するには、wavefun
を使用します。
Morlet ウェーブレットは連続解析に適しています。Morlet ウェーブレットに関連付けられたスケーリング関数はありません。Morlet ウェーブレットを計算するには、次を入力します。
[psi,xval] = wavefun('morl',10); plot(xval,psi); title('Morlet Wavelet');
多重解像度解析に関連するウェーブレットについては、スケーリング関数とウェーブレットの両方を計算できます。次のコードは、4 つの消失モーメントを持つ Daubechies の極値位相ウェーブレットのスケーリング関数とウェーブレットを返します。
[phi,psi,xval] = wavefun('db4',10); subplot(211); plot(xval,phi); title('db4 Scaling Function'); subplot(212); plot(xval,psi); title('db4 Wavelet');
離散ウェーブレット解析では、関連するスケーリング関数とウェーブレットよりも興味深いのが解析フィルターと合成フィルターです。wfilters
を使用して解析フィルターと合成フィルターを求めることができます。
B スプライン双直交ウェーブレットの分解 (解析) フィルターと再構成 (合成) フィルターを求めます。合成ウェーブレットで 3 つの消失モーメント、解析ウェーブレットで 5 つの消失モーメントを指定します。フィルターのインパルス応答をプロットします。
[LoD,HiD,LoR,HiR] = wfilters('bior3.5'); subplot(221); stem(LoD); title('Lowpass Analysis Filter'); subplot(222); stem(HiD); title('Highpass Analysis Filter'); subplot(223); stem(LoR); title('Lowpass Synthesis Filter'); subplot(224); stem(HiR); title('Highpass Synthesis Filter');
Daubechies ウェーブレット: dbN
dbN
ウェーブレットは、Daubechies の極値位相ウェーブレットです。N
は消失モーメントの数を表します。このフィルターは、文献ではフィルターのタップ数 2N
で表されることもあります。このファミリの詳細については、[Dau92] の 195 ページを参照してください。このファミリの主な性質を調べるには、MATLAB® コマンド プロンプトで「waveinfo('db')
」と入力します。
Daubechies ウェーブレット db4 (左) と db8 (右)
db1
ウェーブレットは、Haar ウェーブレットとも呼ばれます。Haar ウェーブレットは、線形位相をもつ唯一の直交ウェーブレットです。waveinfo('haar')
を使用して、このウェーブレットの主な性質を調べることができます。
Symlet ウェーブレット: symN
symN
ウェーブレットは、Daubechies の最小非対称ウェーブレットとも呼ばれます。Symlet は極値位相ウェーブレットよりも対称的です。symN
で、N は消失モーメントの数です。このフィルターは、文献ではフィルターのタップ数 2N
で表されることもあります。Symlet の詳細については、[Dau92] の 198 ページ、254 ~ 257 ページを参照してください。このファミリの主な性質を調べるには、MATLAB コマンド プロンプトで「waveinfo('sym')
」と入力します。
Symlet sym4 (左) と sym8 (右)
Coiflet ウェーブレット: coifN
Coiflet スケーリング関数にも消失モーメントがあります。coifN
で、N
はウェーブレットとスケーリング関数の両方の消失モーメントの数です。このフィルターは、文献ではフィルター係数の数 3N
で表されることもあります。Coiflet の構築については、[Dau92] の 258 ~ 259 ページを参照してください。このファミリの主な性質を調べるには、MATLAB コマンド プロンプトで「waveinfo('coif')
」と入力します。
Coiflet coif3 (左) と coif5 (右)
s が十分に正則な連続時間信号である場合、大きい j に対して、係数 は で近似されます。
s が次数 d (d ≤ N – 1) の多項式である場合、この近似は等価になります。この性質は、サンプリング問題に関連して、与えられた信号の φj,l に対する展開とそのサンプリング バージョンとの差分を計算するときに使用されます。
双直交ウェーブレット ペア: biorNr.Nd
Haar ウェーブレットは線形位相をもつ唯一の直交ウェーブレットですが、線形位相をもつ双直交ウェーブレットは設計できます。
双直交ウェーブレットの特徴は、スケーリング関数および関連付けられたスケーリング フィルターのペアです。1 つが解析用で、もう 1 つが合成用です。
ウェーブレットおよび関連付けられたウェーブレット フィルターのペアもあります。1 つが解析用で、もう 1 つが合成用です。
解析ウェーブレットと合成ウェーブレットは、異なる数の消失モーメントや異なる正則性の性質をもつことができます。解析には消失モーメントの数が大きいウェーブレットを使用してスパース表現を実現し、再構成には滑らかなウェーブレットを使用することもできます。
双直交ウェーブレット基底の構築の詳細については、[Dau92] の 259 ページ、262 ~ 285 ページおよび [Coh92] を参照してください。このファミリの主な性質を調べるには、コマンド ラインで「waveinfo('bior')
」と入力します。
次のコードは、消失モーメントが 3 個および 5 個の B スプライン双直交再構成フィルターまたは分解フィルターを返し、インパルス応答をプロットします。
ローパス フィルターのインパルス応答は、中点に対して対称です。ハイパス フィルターのインパルス応答は、中点に対して反対称です。
[LoD,HiD,LoR,HiR] = wfilters('bior3.5'); subplot(221); stem(LoD); title('Lowpass Analysis Filter'); subplot(222); stem(HiD); title('Highpass Analysis Filter'); subplot(223); stem(LoR); title('Lowpass Synthesis Filter'); subplot(224); stem(HiR); title('Highpass Synthesis Filter');
逆双直交ウェーブレット ペア: rbioNr.Nd
このファミリは、前述の双直交ウェーブレット ペアから得られます。
このファミリの主な性質については、MATLAB コマンド ラインから「waveinfo('rbio')
」と入力して調べることができます。
逆双直交ウェーブレット rbio1.5
Meyer ウェーブレット: meyr
ψ および φ はともに周波数領域で、補助関数 ν から定義されています ([Dau92] の 117、119、137、152 ページを参照)。MATLAB コマンド プロンプトで「waveinfo('meyr')
」と入力することで、このウェーブレットの主な性質を調べることができます。
Meyer ウェーブレット
Meyer ウェーブレットとスケーリング関数は、周波数領域で定義されています。
ウェーブレット関数
ここで です。
スケーリング関数
補助関数を変更することで、異なるウェーブレットのファミリを取得できます。補助関数 ν に必要な性質など、詳細については、参考文献を参照してください。このウェーブレットは、確実に直交解析になります。
関数 ψ は有限サポートを持ちませんが、 のとき ψ はどの逆多項式よりも速く 0 へと減少します。
s. t.
この性質は導関数にも維持されます。
s. t.
このウェーブレットは無限回微分可能です。
メモ
Meyer ウェーブレットはコンパクト サポートを持ちませんが、適切な近似が存在し、DWT で使用できる FIR フィルターになります。この疑似ウェーブレットの主な性質を調べるには、MATLAB コマンド プロンプトで「waveinfo('dmey')
」と入力します。
ガウス導関数ファミリ: gaus
このファミリは、ガウス関数 を元にして、f の p 次導関数を求めることで構築します。
整数 p はこのファミリのパラメーターであり、前の式において、Cp は となる値です。ここで、f (p) は f の p 次導関数です。
このファミリの主な性質については、MATLAB コマンド ラインから「waveinfo('gaus')
」と入力して調べることができます。
ガウス導関数ウェーブレット gaus8
Mexican Hat ウェーブレット: mexh
このウェーブレットは、ガウス確率密度関数の 2 階微分関数に比例します。このウェーブレットは、さらに大きいガウス導関数 (DOG) ウェーブレット ファミリの特殊なケースです。Ricker ウェーブレットとしても知られています。
このウェーブレットに関連付けられたスケーリング関数はありません。
このウェーブレットの主な性質を調べるには、MATLAB コマンド プロンプトで「waveinfo('mexh')
」と入力します。
このウェーブレットは wavefun
を使用して計算できます。
[psi,xval] = wavefun('mexh',10); plot(xval,psi); title('Mexican Hat Wavelet');
Morlet ウェーブレット: morl
このウェーブレットには実数値のバージョンと複素数値のバージョンの両方があります。実数値の Morlet ウェーブレットの性質を調べるには、MATLAB コマンド ラインで「waveinfo('morl')
」と入力します。
実数値の Morlet ウェーブレットは次のように定義されます。
定数 C は、再構成を考慮した正規化に使用されます。
[psi,xval] = wavefun('morl',10); plot(xval,psi); title('Real-valued Morlet Wavelet');
厳密に言うと、Morlet ウェーブレットはアドミッシブル条件を満たしません。
その他の実数ウェーブレット
その他の実数ウェーブレットのいくつかがツールボックスで使用可能です。
複素数ウェーブレット
ツールボックスは、連続ウェーブレット解析用の複素数値のウェーブレットも多数提供します。複素数値のウェーブレットは位相情報を提供するので、非定常信号の時間-周波数解析で非常に重要です。
複素ガウス ウェーブレット: cgau
このファミリは、次の複素ガウス関数を元に構築されます。
で、f の p 次導関数を求めます。整数 p はこのファミリのパラメーターであり、前の式において、Cp は次を満たす値です。
(ここで、f (p) は f の p 次導関数)。
このファミリの主な性質については、MATLAB コマンド ラインから「waveinfo('cgau')
」と入力して調べることができます。
複素ガウス ウェーブレット cgau8
複素 Morlet ウェーブレット: cmor
[Teo98] の 62 ~ 65 ページを参照してください。
複素 Morlet ウェーブレットは次のように定義されます。
これは次の 2 つのパラメーターに依存します。
fb は帯域幅パラメーター
fc はウェーブレット中心周波数
このファミリの主な性質については、MATLAB コマンド ラインから「waveinfo('cmor')
」と入力して調べることができます。
複素 Morlet ウェーブレット morl 1.5-1
複素周波数 B スプライン ウェーブレット: fbsp
[Teo98] の 62 ~ 65 ページを参照してください。
複素周波数 B スプライン ウェーブレットは、次のように定義されます。
これは次の 3 つのパラメーターに依存します。
m は整数の次数パラメーター (m ≥ 1)
fb は帯域幅パラメーター
fc はウェーブレット中心周波数
このファミリの主な性質については、MATLAB コマンド ラインから「waveinfo('fbsp')
」と入力して調べることができます。
複素周波数 B スプライン ウェーブレット fbsp 2-0.5-1
複素 Shannon ウェーブレット: shan
[Teo98] の 62 ~ 65 ページを参照してください。
このファミリは、周波数 B スプライン ウェーブレットで、m を 1 に設定することで得られます。
複素 Shannon ウェーブレットは次のように定義されます。
これは次の 2 つのパラメーターに依存します。
fb は帯域幅パラメーター
fc はウェーブレット中心周波数
このファミリの主な性質については、MATLAB コマンド ラインから「waveinfo('shan')
」と入力して調べることができます。
複素 Shannon ウェーブレット shan 0.5-1