JA EN

畳み込み

読み: たたみこみ

カーネル (小行列) を画像上でスライドさせ、各位置で加重和を計算する画像処理の基本演算。ぼかし、エッジ検出、シャープ化の基盤。

畳み込み (Convolution) は、カーネルと呼ばれる小さな行列を画像上でスライドさせながら、各位置で周囲ピクセルとの加重和を計算する画像処理の基本演算である。ぼかし、シャープ化、エッジ検出、エンボスなど、ほぼすべての空間フィルタリングがこの演算に基づいている。

畳み込みの処理手順は以下のとおりである。

代表的なカーネルとその効果を示す。

計算量の観点では、N×N カーネルを M×M 画像に適用すると O(M²N²) の計算が必要になる。大きなカーネルでは周波数領域 (FFT) での乗算に変換することで高速化できる。また、ガウシアンカーネルのように分離可能なカーネルは、2 回の 1 次元畳み込みに分解して O(M²N) に削減可能である。

深層学習の CNN (Convolutional Neural Network) も同じ畳み込み演算を基盤としている。ただし CNN ではカーネルの値を学習によって自動決定する点が、手動設計のフィルタと異なる。

関連用語

関連記事