各ピクセルを隣接ピクセルと重み付けする数学フィルター——ぼかし、シャープニング、エッジ検出の基礎。すべての現代的な画像処理は畳み込みに基づく。
カラーグレーディング中に、適用するすべてのぼかしや、調整するすべてのシャープネスが畳み込みフィルター(Convolution Filter)を介して処理されていることに気づくでしょう。その背後にある数学は単純ですが、デイリーワークフローでの応用は不可欠です。畳み込みフィルターは、1つのピクセルを取り、その近傍ピクセルを参照し、各近傍ピクセルに重み付けを乗算して新しい値を計算します。これらの重み付けは小さな行列(通常は3x3または5x5)に格納されており、何が起こるかを決定します。
実際には、これは作業を行うためには畳み込みフィルターが必要であることを意味します。ブラーカーネル(ぼかし行列)は、近傍ピクセルの値を均等に加算するだけで、カーネルが大きいほど結果は柔らかくなります。シャープン行列は、中央ピクセルから周囲の値を減算することで、エッジを強調します。エッジ検出(ロトスコープやモーショントラッキングに不可欠)には、特定の輝度ジャンプを増幅するSobelフィルターやLaplaceフィルターを使用します。セット自体ではこれを考える必要はありませんが、VFX部門、デノイズ、アップスケーリングでは、すべてバックグラウンドで畳み込みが行われています。
決定的なポイントは、畳み込みフィルターは分離可能であるということです。つまり、2Dでフィルタリングする代わりに、水平方向と垂直方向に順番にフィルタリングできます。これにより、計算時間が大幅に短縮されます。4K素材を高速ワークフローで処理する場合、リアルタイム再生と待機時間の違いは大きいです。NvidiaとAMDは、畳み込みをグラフィックカードのシェーダーに焼き付けており、NukeからAfter Effectsまでのすべての最新コンポジターは、GPUアクセラレーションされた畳み込みを使用しています。デノイズが3分ではなく30秒で完了するようになると、その効果を実感できます。
実用的には、特定のルックやエラー補正のために自分でフィルターを設計する場合、カーネル値で実験することになります。小さい値はより細かい効果をもたらし、高い値はメモリ使用量と計算時間を増加させます。そして注意点として、不適切に設計されたカーネルは、アーティファクトや色のずれを引き起こす可能性があります。そのため、カーネル自体は安定させたまま、半径や強度だけを調整する、実績のあるプリセットを使用することをお勧めします。