IoU(Intersection over Union): 物体検出における評価指標・ロス関数

1. IoU(Intersection over Union)とは [概要]

IoU(Intersection over Union)とは,物体検出モデルで予測した物体バウンディングボックス領域と,正解バウンディングボックスの間での領域誤差量を評価する指標である.Intersection を(over) Union で割った比率として,ボックス同士の重なり度を計算する指標であることから,そのまま「Intersection over Union 」と呼ばれる.物体検出では,Pascal VOCImageNetなどの代表的ベンチマークにおいて,テストの誤差評価にIoUが使用されてきた.

物体検出では,正解ボックスに対して,IoU値が閾値(=0.5)を超えた予測ボックスのみ,Positive(検出成功)と評価し,IoUが閾値(=0.5)未満の場合は,誤差が大きくNegative(未検出)とする閾値=0.5の設定が,標準的である.また,IoUは評価値だけで使われていたのが,途中からは損失としても使用されるようになった(1.3節).

この記事ではまず1節において,IoU評価関数の定義 (1.1) およびアンカーあり物体検出ネットワークでの使用感 (1.2節)で基本事項を押さえた後,その後「IoU ロス」の使用も開始されたことについて述べる. その後,2節では,代表的なIoUを使用した物体検出の発展として,(1) 「密な物体検出」(2.1節)や,「正確な物体検出」(2.2節) でのIoUの活用について,少しだけ触れる.

1.1 IoU の定義とイメージ

IoU (Intersection over Union)
図1 IoU (Intersection over Union)

IoU(Intersection over Union) は,画像上で「Intersection(AND領域)/ Union (OR領域)」の面積割合を,割り算(over)で計算した,「2つのバウンディングボックス間の重なり度(集合間の濃度の比)」である(図1).

物体検出モデルが予測した「予測バウンディングボックス Bpred 」と,データセットの「正解バウンディングボックスボックス Bgt 」との間で計算するmetricとして,以下のように定義できる:

\[
\text{IoU}(B^{pred},B^{gt}) = \frac{|B^{pred} \cap B^{gt}|}{|B^{pred} \cup B^{gt}|} \tag{1.1}
\]

$|\cdot|$は,集合の濃度(Wikipedia)を示している.つまり,IoUは,画像平面上の2つの画素領域集合 BpredBgt の「AND集合/ OR集合 (比率)」を,物体ボックス間の一致度として誤差指標化した値である.

両ボックスが完全に重なると IoU= 1.0 であり,領域間にズレがあり重なりが減るほど値が 0.0に近づく.よって,IoUの値で閾値計算を行う場合,IoU = 0.5 (Pascal VOCの閾値)や, IoU = 0.75 (少し厳しい閾値.COCOで導入)あたりを,閾値の値として用いることが標準的である [Liu et al., 2020].この場合,Average Precision も区別する際には AP50 , AP75 のようにIoU閾値を下付きに添えて示す.

バウンディングボックス表現には,YOLOSSDなどのように中心$(x,y)$とサイズ$(w,h)$による「中心ベースの矩形表現」を用いる.

1.2 アンカーベース手法での IoU評価

ちなみに現在の物体検出モデルのうち,アンカーボックスベースの手法では,各アンカーに配置されたN個の各アンカーボックスから,オフセット(ずれ)量だけを回帰してバウンディンボックスを予測する.

この場合「アンカーボックス v.s 予測ボックス」の間のボックス一致度についても,IoUで評価することはできる.ただ,ディープ物体検出の初期の頃は,Faster R-CNN SmoothL1ロスで回帰を学習していて,IoUはテストの評価時にのみ使用され,学習には使用されていなかった.

1.3 IoU ロスの使用

アンカーボックス-予測ボックス間のずれ量 (=IoU)を,そのまま損失として回帰を学習する「IoU ロス」も,回帰ヘッドの学習に使用されるようになっていった. 近似代替ロスであるLovasz-softmax loss [Berman et al., 2018] や,より洗練された GIoU ロス [Rezatofighi et al., 2019] などがIoUを使用したロス関数の例である.これにより,物体検出ネットワークの回帰ヘッドにおける「損失関数」と「評価関数」が,初めてともに IoU metricへと統一されるようになった.

2. その他の展開

2.1 密な物体検出へ応用

また,深層学習以前の古典的な物体検出では,まずは1つの物体だけが映っている部分から着実に1物体を検出することが目的であった.それが,少しずつ2物体ずつ重なりがある場面でも検出するようになっていくことで,「遮蔽も考慮した2物体間のIoU」も必要になっていった.更には,たくさんの物体が重なり合って密に映っている「Dense Object Detection (RetinaNet のFocal Lossなど)」の仮定下だと,3物体以上が密に互いに遮蔽している中でも,IoUの(特殊な)定義が必要になっていっている.これは物体検出だけでなく,Denseに人物間が重なりあう人物姿勢推定インスタンスセグメンテーションでも同様の課題である.

2.2 正確な物体検出へ応用

一方,「正確な物体検出(Accurate Object Detection)」の目的で,IoUの指標が,より正確なボックス間の重なりを学習・テストするために活用されはじめる.

IoU-Net [Jiang et al., 2018]では,IoU値自体を検出時に推定させるIoU-Netも学習させた.これにより,テスト中に推定したIoU値を補助に,より正確なバウンディングボックスを最終出力できる PrROI poolingと, IoU-guided NMSを提案することで,ボックス位置特定(Localization)の質であるIoUを,推論時にも活用する仕組みを提案した [Jiang et al., 2018].

関連記事

関連書籍

References

  • [Berman et al., 2018] Berman, Maxim, Amal Rannen Triki, and Matthew B. Blaschko. “The lovász-softmax loss: A tractable surrogate for the optimization of the intersection-over-union measure in neural networks.” In CVPR, 2018
  • [Rezatofighi et al., 2019] Hamid Rezatofighi, Nathan Tsoi, JunYoung Gwak, Amir Sadeghian, Ian Reid, and Silvio Savarese. Generalized intersection over union: A metric and a loss for bounding box regression. In CVPR, 2019.
  • [Jiang et al., 2018] Borui Jiang, Ruixuan Luo, Jiayuan Mao, Tete Xiao, and Yuning Jiang. Acquisition of localization confidence for accurate object detection. In ECCV, 2018.
  • [Liu et al., 2020] Liu, L., Ouyang, W., Wang, X., Fieguth, P., Chen, J., Liu, X., & Pietikäinen, M. Deep learning for generic object detection: A survey. International journal of computer vision 128, no. 2 (2020): 261-318.

参照外部リンク