定義
コンピュータが画像や映像の中から特定の物体を見つけ出す際に、その物体の位置と大きさを囲んで示す長方形の枠のことです。通常、画面上の座標や縦横のサイズといった、たった数個の数字だけで物体の領域をシンプルかつ明確に表現します。
カメラに現れる四角い枠の正体
スマートフォンのカメラで友達を撮るとき、顔の周りにピタッと黄色い四角枠が表示されるのを見たことがあるはずです。写真の中に人がいるとわかるだけでなく、画面のどの位置に立っているのか正確な位置を示してくれる四角い枠こそが、バウンディングボックス(境界ボックス)です。
コンピュータは、人間の目のように世界を丸ごと直感的に理解することはできません。画面全体をごく小さな点(ピクセル)の集まりとして見ているため、どこからどこまでが猫で、どこが背景なのかを具体的な領域として決めて教えてあげる必要があります。
このように、写真の中で物体が何であるかを特定し、その位置を四角い枠で囲んで示す技術を、人工知能の世界では物体検出(オブジェクト検出)と呼びます。バウンディングボックスは、コンピュータが画像の中の対象を認識して扱うために描く、もっとも基本的な「地図」のような役割を果たしているのです。
たった4つの数字で物体を表現する仕組み
コンピュータはこの四角い枠を複雑な画像データとして扱いません。多くの場合、画面の左上端を基準点(0,0)とし、たった4つの数字だけでとても身軽に記録します。代表的な方法の1つは、枠が始まる位置の座標(x, y)と、枠の幅、高さを記録するやり方です(対角の2頂点や中心点を使う方式もあります)。
対象の複雑な輪郭を細かく追わずにシンプルな長方形で囲むと、結果の表現や処理が簡単になり、一般的に領域分割(セグメンテーション)よりも計算の負担が少なくなります。そのため、自動運転車や防犯カメラのように1秒間に何十コマも送られてくる映像の中でも、走る車や歩行者の位置をリアルタイムに把握するのにとても有利です。
データ構造がシンプルであることは、AIを学習させるときにも大きなメリットになります。大量の学習用写真に対して、人間がマウスドラッグで四角い枠を描くだけでアノテーション(ラベル付け)ができるため、データを準備・加工する時間を大幅に節約できるのです。
もう少し詳しく:長方形であるがゆえの限界
もう少し詳しく見ると、バウンディングボックスは単純な長方形であるため、物体の実際の輪郭を完璧に捉えることはできません。例えば、最も一般的な画面の縦横軸に沿った枠で斜めに傾いた棒や手足を大きく広げた人を囲むと、物体だけでなく余計な背景まで枠の中に入り込んでしまいます。傾いた物体に合わせて枠を回転させる手法もありますが、それでも実際の輪郭線そのものをなぞるわけではありません。
そのため、画像の合成や自動運転の高精度地図の作成など、物体の境界線をドット単位で正確に切り抜く必要があるときは、セグメンテーション(領域分割)というより精密な技術を使います。四角で囲む代わりに、物体に該当するピクセルだけに正確に色を塗るようにして対象を切り分ける方法です。
しかし、セグメンテーションはピクセルごとに判定を行うため、より多くの計算量が必要になります。そのため、瞬時の反応スピードが命となる自動運転車の障害物検知や高速道路のナンバープレート認識などでは、軽くて高速なバウンディングボックスが今も中心的な手法として使われています。
よくある誤解
バウンディングボックスは物体の実際の輪郭の凹凸に合わせて描く技術である。
バウンディングボックスは物体をすべて囲む最小の「長方形」にすぎません。物体の実際の輪郭だけをピクセル単位で精密に切り抜く技術は「セグメンテーション(領域分割)」と呼びます。
日常で出会う場面
スマホのカメラアプリが人の顔を認識してピントを合わせるときに出る四角い枠。
自動運転車が道路上の他の車や歩行者を認識し、画面上に四角い枠で表示するシーン。
駐車場のゲートカメラが自動車のナンバープレートの位置を四角く捉え、文字を読み取るとき。
つまり ひとことで
バウンディングボックスは、画像内の物体の位置と大きさをたった4つの数字で表した最小の長方形枠です。