フレーム間のピクセル移動を計算するアルゴリズム — 動きベクトルを生成。モーショントラッキング、フレーム補間に不可欠。
連続するフレーム間のピクセル移動を計算すること、それがオプティカルフロー解析の核となる業務です。このアルゴリズムは、フレームごとに明るさのパターン、エッジ、テクスチャを比較し、各ピクセルに移動ベクトルを割り当てます。このベクトルフィールド表現は、各領域がどの方向にどれくらいの速さで移動しているかを正確に示します。撮影現場では、編集やVFXパイプラインで初めて使用しますが、その品質は元の素材に大きく依存します。モーションブラーとノイズは、クリーンなフロー計算の自然な敵です。
実際には、オプティカルフロー解析は主に3つのシナリオで使用されます。モーショントラッキング — 3Dトラッキングマーカーを追跡したり、有機的な動きを安定させたい場合、テクスチャが意味のある限り、オプティカルフローは手動のポイントマーカーよりも迅速な結果を提供します。フレーム補間 — 撮影現場で撮影しなかったスローモーション効果のために、アルゴリズムは移動ベクトルに基づいて中間フレームを計算します。これは、明確で直線的な動き(カメラのパン、オブジェクトの飛行)では驚くほどうまく機能しますが、オクルージョンや速いカット遷移では不正確になります。モーションブラー合成 — 元の素材がシャープすぎる場合や、後からモーションブラーを追加する必要がある場合、ベクトルフィールドを使用して移動方向と強度をモデル化します。
限界はご存知の通りです。オクルージョン(あるオブジェクトが別のオブジェクトを隠すこと)は、アルゴリズムが隠されたピクセルがどこに属するかを知ることができないため、問題を引き起こします。影と照明の変化は、明るさベースの相関関係を混乱させます。高周波テクスチャ(草、水、ノイズ)は、局所的なパターンが似ているため、誤ったベクトルを生成します。そのため、最新のVFXパイプラインでは、オクルージョンや照明に対してより堅牢な学習ベースのオプティカルフローモデル(ディープラーニングアプローチ)を使用することがよくありますが、計算負荷も高くなります。古典的なブロックマッチングまたは勾配ベースの手法はより高速で、フッテージがクリーンであれば十分な場合が多いです。
撮影現場自体では、オプティカルフロー解析を直接制御することはできませんが、準備はできます。明確でテクスチャ豊かな表面は役立ちますが、平坦または均一な領域は課題となります。素材が後でオプティカルフローで処理される(トラッキングまたは補間用)ことがわかっている場合は、極端なモーションブラーを避け、十分な光のコントラストで作業してください。編集およびコンポジットソフトウェア(Nuke、After Effects)では、オプティカルフローは今日標準であり、新しいバージョンではGPUアクセラレーション計算が提供されているため、長いレンダリング時間を待つことなく、迅速に反復作業を行うことができます。