トップに戻る

EVMの原理

Eulerian Video Magnification(EVM)は、動画から微小な動きや色変化を抽出・増幅して可視化する技術です。 このページでは、EVMがどのように動作するのか、4つのステップで解説します。

「オイラー的」アプローチとは?

EVMは「Eulerian(オイラー的)」な視点でピクセルの時間変化を解析します。 物体を追跡するのではなく、各ピクセル位置での明るさや色の変化を観察し、増幅します。

入力動画 I(x,y,t) 1. 空間分解 Laplacian Pyramid 2. 時間フィルタリング Bandpass Filter 3. 増幅 × α (増幅率) 4. 再合成 Reconstruction

1 空間分解(Spatial Decomposition)

最初のステップでは、動画の各フレームを異なる空間周波数帯域に分解します。 これはラプラシアンピラミッド(Laplacian Pyramid)と呼ばれる手法を使用します。

ラプラシアンピラミッドとは

画像を段階的に縮小しながら、各解像度レベルでの差分(詳細情報)を保存する手法です。 これにより、細かい部分(高周波)から大きな構造(低周波)まで分離できます。

元画像 Level 0 1/2 Level 1 1/4 Level 2 ... Level N 解像度を段階的に縮小 → 各レベルで詳細情報を抽出
なぜ空間分解が必要? 空間分解により、異なるスケールの動きを別々に処理できます。 例えば、顔の表情(細部)と頭の揺れ(大きな動き)を分けて扱うことができます。

2 時間フィルタリング(Temporal Filtering)

各ピクセルの時間変化に対してバンドパスフィルタを適用し、 対象とする周波数範囲の信号のみを抽出します。

バンドパスフィルタの役割

特定の周波数範囲だけを通過させ、それ以外をカットするフィルタです。 例えば、心拍(0.8-2.0 Hz)だけを抽出したい場合に使用します。

周波数 (Hz) 振幅 f_low f_high 通過帯域 カット カット
心拍検出の場合: f_low = 0.8 Hz, f_high = 2.0 Hz (48-120 bpm)
ナイキスト制約に注意 検出できる最大周波数は「フレームレート ÷ 2」です。 例: 30 fps → 最大15 Hz まで検出可能。詳しくは限界と制約で解説します。

3 増幅(Amplification)

時間フィルタリングで抽出した信号を、増幅率α(アルファ)倍に増幅します。 これにより、肉眼では見えなかった微小な変化が視認できるようになります。

増幅の仕組み

出力信号 = 元の信号 + α × フィルタリング済み信号

αの値が大きいほど増幅効果は強くなりますが、ノイズも同時に増幅されるため、 適切な値を見つけることが重要です。

増幅率の目安

用途 推奨α 備考
心拍検出(Color) 20-50 肌の色変化を増幅
構造物振動(Motion) 10-30 微小な動きを増幅
呼吸検出 5-20 胸の動きを増幅
増幅とノイズのトレードオフ 増幅率を上げすぎると、ノイズやアーティファクト(偽の動き)が目立ちます。 小さな値から始めて、徐々に上げていくのがコツです。

4 再合成(Reconstruction)

増幅した信号を元の動画に合成し、最終的な出力動画を生成します。 ラプラシアンピラミッドの逆変換を使用して、元の解像度に戻します。

再合成のプロセス

増幅済み ピラミッド 逆変換 元動画 フレーム + 出力動画 (増幅済み)

まとめ

EVMは以下の4ステップで微小な動きや色変化を増幅します:

  1. 空間分解:ラプラシアンピラミッドで画像を周波数帯域ごとに分離
  2. 時間フィルタリング:バンドパスフィルタで対象周波数を抽出
  3. 増幅:増幅率αで信号を拡大
  4. 再合成:増幅した信号を元動画に合成

次のステップ

原理を理解したら、パラメータの意味を学んで適切な設定ができるようになりましょう。 また、限界と制約も理解しておくことが重要です。