ウェーブレット変換
フーリエでは潰れる「いつ・どの周波数か」を、時間と周波数を同時に掴んで捉える技術。多重解像度解析とマザーウェーブレットの原理から、圧縮・特徴抽出まで腑に落ちます。
- 1.ウェーブレット変換は、有限長で振動する波形(マザーウェーブレット)を伸縮(スケール)と平行移動(シフト)させながら信号と相関を取り、時間と周波数を同時に局在化して解析する。フーリエが失う「いつ起きたか」を保持できる。
- 2.離散ウェーブレット変換(DWT)は多重解像度解析として、ローパス(スケーリング関数)とハイパス(ウェーブレット)のフィルタ対で信号を近似成分と詳細成分に分け、近似側だけを 1/2 に間引いて再帰する。演算量は O(N) で FFT の O(N log N) より軽い。
- 3.低周波は広い時間窓で細かい周波数分解能、高周波は狭い時間窓で細かい時間分解能という可変解像度が特徴。エッジや過渡を少数の大きな係数に集約するため、JPEG 2000 の画像圧縮や特徴抽出・ノイズ除去で威力を発揮する。
フーリエが失う「いつ」を取り戻す
フーリエ変換 は信号を無限に続く正弦波の重ね合わせに分解します。基底となる正弦波は時間軸上に無限に広がるため、「どの周波数が含まれるか」は分かっても 「その周波数がいつ現れたか」 は完全に失われます。定常信号ならそれで十分ですが、音声・地震波・心電図・画像のエッジのように性質が時間とともに変わる 非定常信号 では、周波数成分の発生時刻こそが重要です。
素朴な対策が短時間フーリエ変換(STFT)で、窓を掛けて区間ごとに FFT を取ります。しかし窓幅を一度固定すると、その時間分解能と周波数分解能が全周波数帯で一律に決まってしまいます。ガボールの不確定性——時間と周波数の分解能は同時には上げられず、その積には下限がある——により、細かい時間を見れば周波数がぼやけ、逆もまた然りです。ウェーブレット変換の核心は、この窓幅を周波数に応じて可変にした点 にあります。
マザーウェーブレットとスケール・シフト
ウェーブレットは「小さな波」の名の通り、有限長(コンパクトな台)で振動し、全区間の平均が 0 になる波形です。この原型を マザーウェーブレット ψ(t) と呼びます。これを 1 つ用意し、2 つの操作で変形します。
- スケール(伸縮)
a:aを大きくすると横に引き伸ばされ、ゆっくりした低周波成分を捉える。小さくすると圧縮され、速い高周波成分を捉える。 - シフト(平行移動)
b:波形を時間軸上でbだけ動かし、信号のどの位置を見るかを選ぶ。
連続ウェーブレット変換(CWT)は、伸縮・移動した各ウェーブレットと信号の相関(内積)を計算します。
CWT(a, b) = (1/√a) ∫ x(t) · ψ*( (t - b) / a ) dt
a : スケール(1/a が周波数の目安。a 大 → 低周波、a 小 → 高周波)
b : 時間シフト(解析する位置)
1/√a : どのスケールでもエネルギーを揃える正規化係数
出力 CWT(a, b) は スケール(縦)× 時間(横) の 2 次元マップ(スケーログラム)になります。フーリエが 1 次元スペクトルなのに対し、ウェーブレットは時間と周波数の両軸に情報を展開する点が本質的な違いです。
平均が 0(アドミッシビリティ条件)でないと逆変換で原信号を復元できません。直流成分を持たない振動だからこそ、特定の「変化」だけに反応します。また台が有限(またはガウス窓で急減衰)だからこそ、その時刻の局所的な情報だけを拾え、時間局在性が生まれます。マザーウェーブレットには Haar、Daubechies、Morlet、メキシカンハットなど多数あり、解析対象の波形に形が似たものほど少数の大きな係数で信号を表せます。
多重解像度解析とスケーリング関数
CWT は a, b を連続に動かすため冗長で計算も重い。実用の主役は、スケールとシフトを 2 のべき乗の格子に離散化した 離散ウェーブレット変換(DWT) です。その理論的支柱が Mallat による 多重解像度解析(MRA) です。
MRA では 2 種類の関数を対にします。
- スケーリング関数
φ(t)(父ウェーブレット):ローパス的な平滑化を担い、信号の 近似成分(大まかな形) を作る。 - ウェーブレット
ψ(t)(母ウェーブレット):ハイパス的に差分を担い、隣接解像度の間で失われた 詳細成分(細部) を作る。
ある解像度で信号を近似したとき、1 段階粗い近似との差分がその段のウェーブレット係数です。つまり信号を「粗い近似」+「各解像度で足りない詳細の積み重ね」に分解します。決定的なのは、φ と ψ が満たす 2 スケール関係(細分方程式) です。
φ(t) = √2 · Σ_k h[k] · φ(2t - k) (スケーリング関数は自身の2倍密版の和)
ψ(t) = √2 · Σ_k g[k] · φ(2t - k) (ウェーブレットも同じ基底で書ける)
この係数列 h[k](ローパス)と g[k](ハイパス)こそが実装の中身で、連続関数を陽に扱う必要はありません。DWT は結局 2 つの FIR フィルタ+間引き(ダウンサンプリング)の再帰 に帰着します。
フィルタバンクとしての実装
MRA を計算に落とすと、畳み込み と 2:1 間引きを組み合わせた フィルタバンク になります。1 段の分解は次の通りです。
入力 x[n]
├─ ローパス h[k] で畳み込み → 2で間引き → 近似係数 cA(低周波・粗い形)
└─ ハイパス g[k] で畳み込み → 2で間引き → 詳細係数 cD(高周波・細部)
次段は cA だけを同じ2フィルタに再帰的に通す(cD は保存)
近似側 cA だけを再帰的に分解していく構造を ピラミッド分解 と呼びます。各段で cA の点数が半分になるため、L 段でも総演算量は N + N/2 + N/4 + … で O(N) に収まり、フーリエ の FFT(O(N log N))より軽いのが利点です。分解後の係数総数は入力と同じ N 個で、冗長がありません。逆変換は、各段でゼロを挿入してアップサンプリングし、合成フィルタで畳み込んで足し合わせれば元信号を完全に復元できます(完全再構成)。
各フィルタ出力を 2:1 で間引くと、単体では エイリアシング が生じます。DWT が破綻しないのは、分解フィルタ {h, g} と合成フィルタを 直交ミラー(QMF)条件 に従って設計し、ローパス側とハイパス側で生じたエイリアス成分が合成時に打ち消し合うためです。この条件を満たして初めて完全再構成が成立します。任意の 2 フィルタを繋いでも元には戻りません。
可変解像度:低周波は周波数優先、高周波は時間優先
ウェーブレットが STFT と決定的に違うのは、周波数帯ごとに時間・周波数分解能を切り替える 点です。ピラミッド分解では、段が深く(低周波に)なるほどスケーリング関数が横に広がり、広い時間窓で細かい周波数を見ます。逆に高周波の詳細係数は狭い時間窓で、時間的に鋭く局在します。
これは実信号の性質に合致します。低周波(背景・トレンド)はゆっくり変わるので時間精度は粗くてよく、高周波(エッジ・過渡・クリック音)は一瞬なので発生時刻を正確に押さえたい——ウェーブレットの可変窓はこの要求にそのまま応えます。
| 観点 | フーリエ / STFT | ウェーブレット変換 |
|---|---|---|
| 基底 | 無限に続く正弦波(STFTは固定窓付き) | 有限長で振動するマザーウェーブレットの伸縮・移動版 |
| 時間局在性 | 純フーリエは無し。STFTは固定窓で一律 | 有り。周波数に応じ窓幅が自動で可変 |
| 分解能 | 全帯域で一定(窓幅で固定) | 低周波=周波数優先/高周波=時間優先 |
| 向く信号 | 定常・周期信号のスペクトル解析 | 非定常・過渡・エッジを含む信号 |
| 主な演算量 | FFT で O(N log N) | DWT で O(N) |
圧縮・特徴抽出・ノイズ除去への応用
ウェーブレット表現の実用価値は エネルギーの集中(スパース性) にあります。滑らかな領域は少数の近似係数にまとまり、エッジや過渡だけが局所の詳細係数に大きく現れます。大多数の詳細係数はほぼ 0 になるため、少数の大きな係数だけ残せば信号をよく近似できます。
- 圧縮:小さい係数を切り捨てて(しきい値処理)符号化する。JPEG 2000 は DCT ブロックの代わりに 2 次元 DWT を採用し、ブロックノイズが出ず、1 本のストリームから解像度・画質を段階的に取り出せる。
- ノイズ除去(デノイジング):白色ノイズは全係数に薄く広がるが、信号の本質は少数の大係数に集中する。小係数をしきい値でゼロ化(ソフト/ハードしきい値)して再構成すると、エッジを保ったままノイズだけ削れる。ここが移動平均など線形平滑化に対する優位点。
- 特徴抽出:各サブバンドのエネルギーや係数統計を特徴量として使う。心電図の QRS 検出、機械振動の異常検知、画像のテクスチャ分類などで、時間・周波数の局所情報をそのまま特徴にできる。
JPEG の DCT は画像を固定ブロックに切って各ブロックを周波数分解するため、低ビットレートでブロック境界の段差(ブロックノイズ)が出ます。DWT は画像全体を階層的に多重解像度分解するので境界の不連続が原理的に生じません。その代わり、しきい値を強めるとエッジ周辺に軽いリンギング(ぼやけ)が出るのがウェーブレット圧縮の典型的な劣化です。
- フーリエとの違い:フーリエは周波数のみ(いつ失う)、ウェーブレットは時間と周波数を同時局在化。基底は正弦波 vs 有限長ウェーブレット。
- CWT と DWT:CWT は
a, bを連続に動かし冗長。DWT は 2 のべき乗格子で離散化し、非冗長・高速。 - スケーリング関数 vs ウェーブレット:
φはローパス=近似成分、ψはハイパス=詳細成分。2 スケール関係で係数{h, g}に対応。 - 多重解像度解析:ローパス/ハイパスのフィルタ対+2:1 間引きの再帰(ピラミッド分解)。近似側のみ再帰、演算量 O(N)。
- 完全再構成:QMF/直交条件でエイリアスが相殺され原信号を復元。
- 応用:スパース性を利用して JPEG 2000 圧縮、しきい値によるデノイジング、サブバンドエネルギーで特徴抽出。
まとめ
ウェーブレット変換は、有限長で振動するマザーウェーブレットを伸縮・移動させて信号と相関を取り、時間と周波数を同時に掴む 解析手法です。要点は、(1) フーリエが失う発生時刻を保持し、STFT の固定窓と違って周波数ごとに分解能を可変にすること、(2) 多重解像度解析により、スケーリング関数(近似)とウェーブレット(詳細)のフィルタ対+2:1 間引きの再帰=フィルタバンクへ帰着し、演算量 O(N) で完全再構成できること、(3) エッジや過渡を少数の大係数に集約するスパース性が、JPEG 2000 圧縮・デノイジング・特徴抽出で本質的な武器になること。時間とともに姿を変える信号を、いつ・どの周波数かで同時に読み解く共通言語がウェーブレットです。
信号処理・制御 Article
ウェーブレット変換を実務で読む
TL;DRは入口です。実際に選ぶ・使う段階では、何を解決するか、何と比較するか、導入後にどこで詰まるかまで見る必要があります。
解決すること
ウェーブレット変換
比較で見る軸
難易度: advanced / カテゴリ: 信号処理・制御 / タグ数: 6
導入後に効く点
離散ウェーブレット変換(DWT)は多重解像度解析として、ローパス(スケーリング関数)とハイパス(ウェーブレット)のフィルタ対で信号を近似成分と詳細成分に分け、近似側だけを 1/2 に間引いて再帰する。演算量は O(N) で FFT の O(N log N) より軽い。
先に潰すリスク
用語だけ覚えても、設計・実装・運用でどこに効くかを確認しないと判断を誤る。
- 難易度
- advanced
- カテゴリ
- 信号処理・制御
- タグ数
- 6
判断チェックリスト
- 自社の用途が「ウェーブレット変換 / 多重解像度解析」に近いか確認する。
- 強みである「ウェーブレット変換は、有限長で振動する波形(マザーウェーブレット)を伸縮(スケール)と平行移動(シフト)させながら信号と相関を取り、時間と周波数を同時に局在化して解析する。フーリエが失う「いつ起きたか」を保持できる。」が本当に評価軸になるか確認する。
- 注意点の「用語だけ覚えても、設計・実装・運用でどこに効くかを確認しないと判断を誤る。」を運用で吸収できるか確認する。
- 公開値や仕様値は、対象プラン・対象機種・対象リージョンまで確認する。
- 既存システム、ID、ネットワーク、監視、バックアップとの接続方法を先に洗い出す。
- 小さく試してから、本番移行、権限設計、障害時手順、コスト監視を決める。