はじめに

みなさん、こんにちは。
当記事ではアノテーションの一つ”Bounding Box Annotation(バウンディングボックスアノテーション)”をご紹介します。

バウンディングボックスアノテーションとは

“Bouding Box(バウンディングボックス)”とはオブジェクトの境界を囲う長方形(=矩形)です。
そしてバウンディングボックスアノテーションとは対象をバウンディングボックスで囲い、
更に囲ったデータのカテゴリーをタグ付けする手法のことです。

バウンディングボックスアノテーションには二次元、三次元のものが存在します。
これらの違いはXY座標(縦横)にZ座標(奥行き)が加わる(=立方体となる)ことです。

バウンディングボックスアノテーションの特徴

バウンディングボックスアノテーションの特徴は、
物体検出精度とコストのバランスの良さです。

セマンティックセグメンテーションと比較すると、
アノテーション作業のコストが圧倒的に少なく済むメリットがあります。
画像全体をピクセル単位で塗り分ける作業が必要なセマンティックセグメンテーションと、
対象を四角で囲うだけのバウンディングボックスセグメンテーションとでは、作業量に大きな差があるためです。

またセマンティックセグメンテーションより物体検出の精度は劣りますが、
そもそもピクセルレベルの物体検出精度は必要なく、
バウンディングボックスの物体検出精度でも十分なケースがほとんどです。

更に学習時間や検出/識別時間もセマンティックセグメンテーションより短く済むので、
学習またはモデルを搭載するマシンのハードウェア的な制限が比較的低い点も大きなメリットです。

このようなバランスの良さから、バウンディングボックスは頻繁に使用されているアノテーションとなっています。

TIPS
バウンディングボックスを効率的に行う手法として、目指しているモデルに近い
既存モデルを用いてアノテーションを行い、それに対して補正を行う手法があります。
バウンディングボックスは矩形を伸縮するだけなので編集作業が少なく済む一方で、
セマンティック・セグメンテーションでは誤ったデータの補正が手間となり編集コストも高くなります。
近いモデルが見つかった場合は、サンプルで数枚アノテーションを行い、0からのアノテーションと
補正アノテーションのどちらがコストが低いか検証してみる手法をお勧めします。

バウンディングボックスの欠点とは

バウンディングボックスは優等生ですが、物体の位置を高精度で検知出来ない欠点があります。
物体の検出が矩形単位なので、矩形内でもどこまでが対象でどこまでが背景なのか分かりません。
もし高精度な物体検出が必要な場合は、ピクセル単位で物体検出が可能な「セマンティック・セグメンテーション」を検討すべきでしょう。

バウンディングボックスのツールとは

バウンディングボックスアノテーションは”座標データ”が必要な特性上、どうしても
専用のツールが必要になってきます。無料で利用出来るツールとしては以下のようなものがあります。

  1. VoTT (Visual Object Tagging Tool)
    Microsoftが提供
  2. Labelme
    githubで人気のあるアノテーションツール
  3. labelImg
    使いやすいと話題のツール。出力形式としてPascalVOC/YOLOフォーマットもサポートしている。ライセンスもMITと非常に緩いのが嬉しいです。
  4. imglab
    オンライン上で実行可能なツール。必要最低限の機能は揃っている。

中でもimglabはブラウザからオンライン上で実行可能なので、
バウンディングボックスの作業を試してみるには打ってつけだと思います。
※バウンディングボックスをカテゴリー毎に色分けすることが出来ず、見辛い点があることはご注意ください。

バウンディングボックスの注意点とは

バウンディングボックスを実施する際の注意点とは何でしょうか?

教師データの形式

教師データの形式を忘れずに決めておきましょう。
・PASCAL VOC(Pattern Analysis, Statistical Modeling and Computational Learning Visual Object Classes)形式、
・YOLO(You Look Only Once)形式
・独自のXML形式やJSON形式
いずれかを検討する必要があります。
プログラムによる相互変換は可能ですが、事前に決めておくと余計な手間が省けます。

difficultの基準

PASCAL VOCにはdifficultフラグがあります。
どのようなケースでdifficultフラグを付与するのか決めておくことをお勧めします。
アノテーションの作業者判断に任せてしまうと、個人差で教師データにバラ付きが出てしまい、
教師データの質の低下に繋がってしまいます。
厳密に決めるのは難しいですが、最低限の基準は設けておきましょう。

見切れの取り扱い

対象が見切れていた場合の考慮を忘れないようにしましょう。
例えば人物をアノテーションする際に、体半分が画面外に見切れているようなケースがこれに該当します。
一般的には二つの解決策があります。
一つはある程度閾値を設けて対象とするケースです。
もう一つは少しでも見切れていたら対象外とするケースです。
前者は幅広い認識を必要とするため、後者と比較すると学習量が多く=教師データが多く必要になります。
それらを考慮しつつ、事前に見切れの取り扱いを決めておくと良いでしょう。

まとめ

バウンディングボックスアノテーションは専門的なツールが必要なものの、
作業内容は比較的簡単でアノテーション作業コストが低く済みます。
しかも物体検出の精度もセマンティック・セグメンテーションと比較すると低いものの、
十分実用に耐えうる精度とコストパフォーマンスが最高のアノテーションです。

無料の教師データも多数出回っておりますので、
機械学習に興味ある方はバウンディングボックスを使用したモデルの作成から入られる事をお勧めします。

弊社ではクライアント様のニーズに応じた教師データの作成サービスを展開しております。"高品質"、"高セキュリティ"、"再学習体制"を掲げ、今まで多数の企業様からご依頼を頂いた実績が御座います。教師データの作成が必要な際は、是非弊社のサービスをご利用下さい! お見積り