Main Content

積分イメージ

"積分イメージ" の各ピクセルは、上側および左側にあるピクセルの総和になります。

説明のために以下を示します。イメージとそれに対応する積分イメージです。積分イメージは計算を考慮して左側と上側にパディングが行われます。元のイメージの (2, 1) のピクセル値は、上のピクセル値を加算 (2+1) して左のピクセル値を加算 (3+0) すると、積分イメージでは (3, 2) のピクセル値になります。同様に、元のイメージの (2, 2) のピクセル (値 4) は、上のピクセル値を加算 (4+5) して左のピクセルを加算 (9+3) すると、積分イメージの (3, 3) のピクセル (値 12) になります。

2-by-2 input image and 3-by-3 integral image. Pixels in the first row and column in the integral image have the value 0, and pixel values monotonically increase as the row and column indices increase.

積分イメージを使用すると、イメージの部分領域の総和を高速に計算できます。積分イメージはピクセルの総和の計算を容易にし、近傍のサイズにかかわらず定数時間で実行できます。次の図は、イメージの部分領域の総和を説明しています。積分イメージの対応する領域が使用できます。たとえば、下の入力イメージの影付き領域の総和は、対応する積分イメージにある四角形の領域の 4 つの参照値を使用すると、計算が簡単になります。この計算は 46 – 22 – 20 + 10 = 14 になります。計算では影付き領域の上側と左側の領域を減算しています。減算の重複を補正するために、重なった部分を加算し直しています。

On the left is a 5-by-5 input image with a subregion highlighted. On the right is the 6-by-6 integral image with the four reference pixels and four overlapping subregions highlighted.

このように、フィルター サイズにかかわらず、四角形の領域の総和を高速に計算できます。積分イメージの使用は Viola-Jones アルゴリズムによって一般に普及しました。このアルゴリズムの詳細な引用文献および積分イメージの作成方法については、integralImage を参照してください。

参考

| | |

関連するトピック