オブジェクトの検出

オブジェクトの検出はタグ付けに似ていますが、API で返されるのは、イメージに検出された各オブジェクトの境界ボックスの座標 (ピクセル単位) です。 たとえば、画像に犬や猫、人物が含まれている場合、オブジェクト検出操作により、それらのオブジェクトと画像内のそれらの座標が一覧表示されます。 この機能を使用すれば、画像に含まれるオブジェクト間の関係を処理することができます。 画像内に同じオブジェクトのインスタンスが複数存在するかどうかも判別できます。

オブジェクト検出機能は、画像内で特定されたオブジェクトや生物に応じてタグを適用します。 タグ付けの分類とオブジェクト検出の分類との間に、正式な関係は存在しません。 概念レベルで言えば、オブジェクト検出機能はオブジェクトや生物を検出するだけであるのに対し、タグ機能では、コンテキスト上の用語 ("indoor" など) も対象となり、それらの位置を境界ボックスで特定することはできません。

Vision Studio を使用して、ブラウザーですばやく簡単にオブジェクト検出の機能を試すことができます。

オブジェクト検出の例

次の JSON 応答は、Analyze API がサンプル画像からオブジェクトを検出するときに返す内容を示しています。

A woman using a Microsoft Surface device in a kitchen

{
   "objects":[
      {
         "rectangle":{
            "x":730,
            "y":66,
            "w":135,
            "h":85
         },
         "object":"kitchen appliance",
         "confidence":0.501
      },
      {
         "rectangle":{
            "x":523,
            "y":377,
            "w":185,
            "h":46
         },
         "object":"computer keyboard",
         "confidence":0.51
      },
      {
         "rectangle":{
            "x":471,
            "y":218,
            "w":289,
            "h":226
         },
         "object":"Laptop",
         "confidence":0.85,
         "parent":{
            "object":"computer",
            "confidence":0.851
         }
      },
      {
         "rectangle":{
            "x":654,
            "y":0,
            "w":584,
            "h":473
         },
         "object":"person",
         "confidence":0.855
      }
   ],
   "requestId":"25018882-a494-4e64-8196-f627a35c1135",
   "metadata":{
      "height":473,
      "width":1260,
      "format":"Jpeg"
   },
   "modelVersion":"2021-05-01"
}

制限事項

検知漏れ (見落とされたオブジェクト) や詳細の利用制限の影響を回避または軽減できるように、オブジェクト検出の制限事項に注意することが重要です。

  • オブジェクトが小さい (画像の 5 % 未満) 場合、通常、それらのオブジェクトは検出されません。
  • オブジェクトが近くに配置されている場合 (積み重ねられた皿など)、通常、それらのオブジェクトは検出されません。
  • オブジェクトは、ブランド名や製品名 (店の棚にある各種のソーダなど) によって区別されません。 ただし、ブランド検出機能を使用すると画像からブランド情報を取得できます。

API の使用

オブジェクト検出機能は Analyze Image API に含まれています。 ネイティブ SDK または REST を呼び出すことでこの API を呼び出すことができます。 ObjectsvisualFeatures クエリ パラメーターに追加します。 次に、完全な JSON 応答が得られたら、"objects" セクションのコンテンツの文字列を解析します。