ホーム›Part 3 ディープラーニングとAI›3.4

Part 3 · ディープラーニングとAI

3.4 物体検出とセグメンテーション

「どこに・何が」を答える

読了目安 10分前提:3.3 CNNと画像認識、2.7 評価指標▶ 動画(約5分)

この回で分かること

  • 画像分類・物体検出・セグメンテーション の違いを、自動運転での使い道とあわせて説明できる
  • 枠の重なり具合を表す IoU を計算でき、重複した枠を消す NMS のしくみを説明できる
  • 検出の評価(IoU の基準、適合率・再現率、AP)と、遠くの小さな物・隠れた物・並んだ物での落とし穴を説明できる

直感で理解する

3.3 の画像分類は、「この画像には歩行者が写っている」と答えるものでした。しかし運転に必要なのは、「左前方に歩行者が1人、右の車線に車が2台」のように、どこに・何が・いくつ あるかです。そのための課題には、次のような種類があります。

課題答えるもの自動運転での例
画像分類画像全体に1つの種類切り出した標識が何の標識か
物体検出物ごとの枠(位置と大きさ)・種類・確信度歩行者・自転車・車を見つける
セマンティックセグメンテーション画素ごとの種類道路・歩道・白線など、走れる所の把握
インスタンスセグメンテーション画素ごとの種類+1つずつの区別重なって写る歩行者を1人ずつ分ける
物体検出:枠で囲む セグメンテーション:画素を塗り分ける 車 0.97 歩行者 0.88 枠・種類・確信度を答える 道路 車 歩行者
同じ場面の2つの答え方(模式図)。物体検出は物ごとに枠と種類と確信度を、セグメンテーションは画素ごとに種類を答える。

物体検出のモデルは、3.3 の CNN などで特徴を拾ったあと、画像のあちこちの位置と大きさについて「ここに物があるか・何か・枠をどう直すか」を一度に予測します。すると同じ物に対して、少しずつずれた枠の候補がたくさん出ます。そこで、確信度の高い枠を残して重複を消し、しきい値(2.4)を超えたものだけを答えにします。

数式で確かめる

① IoU:枠がどれだけ合っているか

予測の枠 A と正解の枠 B が、どれだけ重なっているかを表すのが IoU です(2.7 で紹介)。重なった部分の面積を、2つを合わせた部分の面積で割ります。

$$\mathrm{IoU} = \frac{|A \cap B|}{|A \cup B|}$$

∩ は重なった部分、∪ は合わせた部分、| | は面積を表します(記号表)。ぴったり重なれば1、まったく重ならなければ0です。多くの評価では、IoU が 0.5 以上なら「正しく検出」と数えます。

近くの歩行者(100×200画素) 遠くの歩行者(10×28画素、3倍に拡大) IoU = 14,400 ÷ 25,600 ≈ 0.56 縦横に20画素ずれても 0.5以上 → 正しく検出 IoU = 168 ÷ 392 ≈ 0.43 横に4画素ずれただけで 0.5未満 → 不合格 点線:正解の枠 実線:予測の枠 色の部分:重なり
小さな物ほど、わずかな位置のずれで IoU が大きく下がる。遠くの歩行者では、数画素のずれで「正しく検出」の基準を外れる。

左の例では、重なりが 80 × 180 = 14,400、合わせた面積が 20,000 + 20,000 − 14,400 = 25,600 で、IoU ≈ 0.56。右の例では、重なりが 6 × 28 = 168、合わせた面積が 280 + 280 − 168 = 392 で、IoU ≈ 0.43 です。

② 検出の出力と学習

検出モデルは、物ごとに「枠の位置と大きさ(x, y, 幅, 高さ)」「種類ごとの確率」「確信度」を出します。学習の損失は、枠のずれ(2.2 の回帰)と種類の間違い(2.4 の交差エントロピー)を足し合わせたものです。回帰と分類を同時に解いている、と言えます。

③ NMS:重複した枠を消す

同じ物への重複した枠を消す、代表的な手順が NMS(非最大値抑制)です。

  1. 確信度がいちばん高い枠を1つ選び、答えに残す
  2. その枠との IoU があるしきい値(例:0.5)を超える枠を、同じ物への重複とみなして消す
  3. 残った枠で、1〜2 をくり返す

この手順は、別々の物の枠が大きく重なっているとき に弱点になります。並んで歩く2人の歩行者の枠の IoU が 0.6 なら、しきい値 0.5 の NMS は片方を「重複」として消してしまいます。

④ 検出の評価:AP

評価では、予測の枠を確信度の高い順に並べ、IoU が基準以上で正解の枠と対応するものを「正しく検出」、それ以外を誤検知、対応する予測がない正解を見逃しとして数えます(2.7 の混同行列)。しきい値を動かしながら適合率と再現率を計算し、その曲線の下の面積を AP(平均適合率)、種類ごとの AP の平均を mAP と呼びます。セグメンテーションでは、種類ごとの IoU の平均(mIoU)がよく使われます。

自動運転との接点

  • 検出の結果は次の処理の入力:検出した枠は、追跡・動きの予測・経路の計画へと渡されます。1フレームだけの見逃しは追跡で補えることがありますが、同じ物を見逃し続けると、その先の判断がすべて狂います。→ 4.2 システムの全体像、4.5 予測と経路計画
  • 「近くて進路上」の見逃しほど重い:AP は、遠くの駐車車両の見逃しも、目の前の歩行者の見逃しも同じ1件として数えます。距離や進路との関係で分けて評価したり、運転の判断への影響で重みを付けた指標を使ったりする考え方があります。
  • 小さい・隠れている・並んでいる:遠くの小さな物は IoU の基準を外れやすく、駐車車両の陰から半分だけ見える歩行者や、並んで歩く人は検出や NMS で落ちやすくなります。大きさ・隠れ具合・密集度ごとに分けて確かめます。→ 5.3 機能不十分とトリガー条件
  • 枠の位置の精度も安全に効く:カメラ画像では、枠の下端の位置などから物までの距離を推定することがあります。遠くほど1画素のずれが大きな距離の誤差になり、ブレーキのタイミングに影響します。
  • LiDAR でも同じ考え方:LiDAR の点群からは、3次元の箱(位置・大きさ・向き)として物を検出します。評価も3次元の IoU で行います。→ 4.3 センサとフュージョン

まとめ

  • 物体検出は物ごとに枠・種類・確信度を、セグメンテーションは画素ごとに種類を答える。運転には「どこに・何が・いくつ」が必要
  • 枠の合い具合は IoU(重なり ÷ 合わせた面積)で測り、重複した枠は NMS で消す。検出の評価は IoU を基準にした適合率・再現率と AP
  • 小さな物は数画素のずれで基準を外れ、並んだ物は NMS で消えることがある。近さ・進路・大きさ・隠れ具合で分けて評価する

確認クイズ

Q1. 正解の枠と予測の枠の重なりが 14,400、2つを合わせた面積が 25,600 でした。IoU は? IoU 0.5 を基準にすると、正しい検出?

IoU = 14,400 ÷ 25,600 ≈ 0.56 で、0.5 以上なので正しい検出と数えます。

Q2. 縦28・横10画素の遠くの歩行者に対して、予測の枠が横に4画素ずれました(大きさは同じ)。IoU は?

重なりは 6 × 28 = 168、合わせた面積は 280 + 280 − 168 = 392 で、IoU ≈ 0.43 です。0.5 を基準にすると、この予測は誤検知、正解は見逃しとして数えられます。

Q3. 2人の歩行者が並んで歩いていて、2人の枠どうしの IoU は 0.6 です。NMS のしきい値が 0.5 だと、何が起きうる?

確信度の低いほうの枠が「同じ物への重複」とみなされて消え、1人しかいないことになりえます(見逃し)。密集した場面は、NMS のしきい値を含めて確かめる必要があります。

Q4. 画素ごとに「道路・歩道・白線・車」を塗り分ける課題と、重なって写る歩行者を1人ずつ区別して塗り分ける課題は、それぞれ何と呼ぶ?

前者がセマンティックセグメンテーション、後者がインスタンスセグメンテーションです。

もっと知りたい人へ