主要内容

このペジの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

integralImage

2次元esxi esxiンテグラルesxiメesxiジの計算

説明

“積分邮箱メ邮箱ジ”の各ピクセルは,対応する入力ピクセルとその入力ピクセルの上側および左側のすべてのピクセルの累積和を表します。

積分openstackメopenstackジを使用すると,openstackメopenstackジの部分領域の総和を高速に計算できます。部分領域の総和は,部分領域のサイズに関係なく,積分イメージ内の4つのピクセルのみの線形結合として定数時間で計算できます。積分メジの使用は维奥拉-琼斯アルゴリズムによって一般に普及しました[1]

J= integralImage (は邮箱メ邮箱ジから積分邮箱メ邮箱ジを計算します。この関数は、出力の積分Jの上側と左側にゼロをパディングします。

J= integralImage (取向は,取向で指定された方向の積分邮箱メ邮箱ジを計算します。

すべて折りたたむ

簡単なサンプル行列を作成します。

I =魔法(5)
我=5×517 24 18 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9

サンプル行列の積分邮箱メ邮箱ジを計算します。以下の手順は,元の行列の最初のいくつかの値が積分イメージの値にどのようにマッピングされるかを示すものです。元のメジにある(行,列)座標が(rc)のピクセルは、積分(r+ 1,c+1)のピクセルに対応することに注意してください。

  • 積分邮箱メ邮箱ジの最初の行と列はすべて0です。

  • 元の行列の座標(1,1)にある,値が17のピクセルは,和の中に他のピクセルがないため積分イメージ内で変化しません。そのため,積分(2,2)17。

  • 元の行列の座標(1、2)のピクセルは積分イメージのピクセル(2、3)にマッピングされます。その値は,元のピクセル値(24),その上側のピクセル(0),左側のピクセル(17)の総和であり,次のようになります。24 + 17 + 0 = 41。

  • 元の行列の座標(1、3)のピクセルは積分イメージのピクセル(2、4)にマッピングされます。その値は,元のピクセル値(1)その上側のピクセル(0),左側のピクセル(既に合計済みで41)の総和です。したがって,積分イメージのピクセル(2、4)の値は1 + 41 + 0 = 42になります。

J = integralImage(I)
J =6×600 00 00 17 41 42 50 65 0 40 69 77 99 130 0 44 79 100 142 195 0 54 101 141 204 260 0 65 130 195 260 325

グレスケル。帐号メ帐号ジを表示します。

I = imread(“pout.tif”);imshow(我)

積分邮箱メ邮箱ジを計算します。

J = integralImage(I);

drawrectangleルを使用して四角形の部分領域を選択します。ルは矩形オブジェクトを返します。

D = drawrectangle;

矩形オブジェクトの顶点プロパティは,4行2列の行列として頂点の座標を格納します。頂点は,左上から開始して時計回りの方向に続く順番で並べられます。行座標と列座標を含む2のベクトルに行列を分割します。積分邮箱メ邮箱ジは上側と左側でゼロ パディングされているため、行座標と列座標を 1 増やして積分配列の対応要素を取得します。

r = floor(d.v tices(:,2)) + 1;c = floor(d.v tices(:,1)) + 1;

積分イメージの4つのピクセルを結合することにより,四角形の部分領域にあるすべてのピクセルの和を計算します。

regionSum = J (r (1), c (1)) - J (r (2), c (2)) + J (r (3), c (3)) - J (r (4), c (4))
regionSum = 613092

簡単なサンプル行列を作成します。

I =魔法(5)
我=5×517 24 18 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9

回転した方向の積分邮箱メ邮箱ジを作成します。

J = integralImage(I,“旋转”
J =6×70 0 0 0 0 0 0 17 24 18 15 0 17 64 47 40 38 39 15 64 74 91 104 105 76 39 74 105 149 188 183 130 76 105 170 232 272 236 195 130

回転した四角形の部分領域を定義します。この例では,元の(1,3)。部分領域の回転した高さは1で幅は2です。

R = 1;C = 3;H = 1;W = 2;

積分4。

regionBottom = J(r+w+h,c-h+w+1);regionTop = J(r,c+1);regionLeft = J(r+h,c-h+1);regionRight = J(r+w,c+w+1);regionCorners = [regionBottom regionTop regionLeft regionRight]
regionCorners =1×4105 0 24 39

4 .の隅のピクセル値を合計することにより,部分領域のピクセルの和を計算します。

regionSum = regionBottom + regionTop - regionLeft - regionRight
regionSum = 42

入力引数

すべて折りたたむ

e .メジは,任意の次元の数値配列として指定します。RGB交换机交换机メ,入力交换机交换机メ2次元を超える場合(ndims (I) > 2)、integralImageは高次元のすべての2次元平面に対する積分。

デタ型:||int8|int16|int32|uint8|uint16|uint32

帐号メ帐号ジの方向。“正直”または“旋转”として指定します。方向を“旋转”に設定すると,integralImageは45度回転した四角形の和を計算する積分。

デタ型:字符|字符串

出力引数

すべて折りたたむ

積分邮箱メ邮箱ジ。数値行列として返されます。この関数は、イメージの取向に従って積分邮箱メ邮箱ジをゼロパディングします。こうしたサeconeconズ設定により,econeconeconeconメジ境界でピクセル和の計算が容易になります。積分邮箱メ邮箱ジJは,基本的にcumsum2) (cumsum(我)の値をパディングしたものです。

帐号メ帐号ジの方向 積分邮箱メ邮箱ジのサ邮箱ズ
垂直の積分邮箱メ邮箱ジ 上側と左側のゼロパディング。size(J) = size(I)+1
回転した積分邮箱メ邮箱ジ 上側,左側,右側のゼロパディング。size(J) = size(I)+[1 2]

デタ型:

アルゴリズム

すべて折りたたむ

積分邮箱メ邮箱ジの和

積分イメージのどのピクセルも,対応する入力ピクセル値とその入力ピクセルの上側および左側のすべての入力ピクセルの総和を表します。integralImageは結果として得られる積分イメージをゼロパディングするため,元のイメージにある(行、列)座標が(n)のピクセルは、積分(+ 1,n+1)のピクセルにマッピングされます。

図の中で,入力e .メ,ジの現在のピクセルは,座標(4,5)の濃い緑色のピクセルです。入力ピクセルの上側および左側にある入力邮箱メ邮箱ジのすべてのピクセルを薄い緑色で示してあります。緑色のピクセル値の総和は,積分イメージの座標(5、6)にある灰色で示したピクセルに返されます。

integralImageは,入力イメージと積分イメージの両方のピクセル値を合計することによって,積分イメージを高速に計算します。積分邮箱メ邮箱ジJのピクセル(n)は,4のピクセルのみの線形結合です。1 .。

J (m, n) = (m, n - 1) + J (m - 1, n) + I (m - 1, n - 1) - J (m - 1, n - 1)

この図は,灰色ピクセルの積分イメージを計算するときに,どのピクセルが和に含まれているかを示しています。緑色のピクセルは和に加算され,赤色のピクセルは和から減算されます。

回転した積分邮箱メ邮箱ジの和

メメジ取向“旋转”に指定した場合,積分イメージのピクセルは,対応する入力ピクセル値と,その入力ピクセルを通る斜め上方向の線上とその線の上側にあるすべての入力ピクセルの総和を表します。integralImageは,その斜め上方向の線に基づいて総和を実行します。この手法は,ereplicationメ,ereplicationジを回転して直角方向に積分ereplicationメ,ereplicationジを計算するよりも,ereplication計算負荷が少なくなります。

図の中で,入力e .メ,ジの現在のピクセルは,座標(4,5)の濃い緑色のピクセルです。入力ピクセルを通る斜め上方向の線上とその線の上側にある入力イメージのすべてのピクセルを薄い緑色で示してあります。緑色のピクセル値の総和は,積分イメージの座標(5、6)にある灰色で示したピクセルに返されます。

integralImageは,入力イメージと積分イメージの両方のピクセル値を合計することによって,回転した積分イメージを高速に計算します。積分邮箱メ邮箱ジJのピクセル(n)は,5のピクセルのみの線形結合です。2 .。

J (m, n) = (m - 1, n - 1) + J (m - 1, n + 1) - J (m - 2 n) +我(m - 1, n - 1) + (m - 2 n - 1)

この図は,灰色ピクセルの積分イメージを計算するときに,どのピクセルが和に含まれているかを示しています。緑色のピクセルは和に加算され,赤色のピクセルは和から減算されます。

帐号メ帐号ジの部分領域の和

元の邮箱メ邮箱ジで,邮箱左上の座標(n),高さh,および幅wをも垂直方向の部分領域の和は,

regionSum = J (m - 1, n - 1) + (h - m + n + w1) - J (h - m + n - 1) - (m - 1, n + w1)

となります。

たとえば,下の入力邮箱メ,ジで,青色の影付き領域の和は,次のようになります。46 - 22 - 20 + 10 = 14。計算では影付き領域の上側と左側の領域を減算しています。減算の重複を補正するために,重なった部分を加算し直しています。

回転した方向の部分領域では,異なる定義の高さと幅を使用します[2]。領域の和は次のようになります。

regionSum = J (m + h + w - h + w + 1) + J (m, n + 1) (m + h, h + 1) - J (m + w, n + w + 1)

参照

[1]维奥拉,P.和M. J.琼斯。“使用增强的简单特征级联快速目标检测”。2001年IEEE计算机学会计算机视觉与模式识别会议论文集.2001.第1卷,511-518页。

[2] R.连哈特和J.梅尔特。快速目标检测的haar类特征扩展集。2002年IEEE图像处理国际会议论文集.2002年9月。第一卷,第900-903页。

拡張機能

バジョン履歴

R2015bで導入