ラベル検出

Vision API では、画像内のエンティティについての情報を、幅広いカテゴリにわたって検出、抽出できます。

ラベルにより、物体、場所、活動、動物の種類、商品などを識別できます。

ラベルは英語でのみ返されます。Cloud Translation は、英語のラベルを多数の他言語のいずれかに翻訳できます。

たとえば、上の画像の場合は、次のラベルのリストが返されます。

説明 スコア
ferris wheel 0.84832066
amusement park 0.8101249
night 0.8036025
outdoor recreation 0.68825835
fair 0.6566326

コードサンプル

さまざまなプログラミング言語でのサンプルについては、以下をご覧ください。

ラベル検出のリクエスト

GCP プロジェクトと認証を設定する

ラベル検出

Powershell

Windows Powershell を使用してラベル検出のリクエストを出すには、https://vision.googleapis.com/v1/images:annotate エンドポイントに対する POST リクエストを実行し、次の例に示すように features.type の値として LABEL_DETECTION を指定します。

$cred = gcloud auth application-default print-access-token
$headers = @{ Authorization = "Bearer $cred" }

Invoke-WebRequest `
  -Method Post `
  -Headers $headers `
  -ContentType: "application/json; charset=utf-8" `
  -Body "{
      'requests': [
        {
          'image': {
            'source': {
              'imageUri': 'https://cloud.google.com/vision/docs/images/ferris-wheel.jpg'
            }
          },
          'features': [
            {
              'type': 'LABEL_DETECTION'
            }
          ]
        }
      ]
    }" `
  -Uri "https://vision.googleapis.com/v1/images:annotate" | Select-Object -Expand Content

画像の渡し方は 3 種類あります(base64 エンコード文字列、Google Cloud Storage URI、HTTPS または HTTP でアクセス可能な公開 URL)。詳しくは、リクエストの作成をご覧ください。

リクエストの本文の構成について詳しくは、AnnotateImageRequest のリファレンス ドキュメントをご覧ください。

curl コマンド

Linux または MacOS コマンドラインから curl を使用してラベル検出のリクエストを出すには、https://vision.googleapis.com/v1/images:annotate エンドポイントに対する POST リクエストを実行し、次の例に示すように features.type の値として LABEL_DETECTION を指定します。

curl -X POST \
     -H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
     -H "Content-Type: application/json; charset=utf-8" \
     --data "{
      'requests': [
        {
          'image': {
            'source': {
              'imageUri': 'https://cloud.google.com/vision/docs/images/ferris-wheel.jpg'
            }
          },
          'features': [
            {
              'type': 'LABEL_DETECTION'
            }
          ]
        }
      ]
    }" "https://vision.googleapis.com/v1/images:annotate"

画像の渡し方は 3 種類あります(base64 エンコード文字列、Google Cloud Storage URI、HTTPS または HTTP でアクセス可能な公開 URL)。詳しくは、リクエストの作成をご覧ください。

リクエストの本文の構成について詳しくは、AnnotateImageRequest のリファレンス ドキュメントをご覧ください。

gcloud コマンド

画像内のラベルを検出するには、次の例に示すように gcloud ml vision detect-labels コマンドを使用します。

gcloud ml vision detect-labels https://cloud.google.com/vision/docs/images/ferris-wheel.jpg

ラベル検出のレスポンス

リクエストが成功すると、サーバーは 200 OK HTTP ステータス コードと JSON 形式のレスポンスを返します。

LABEL_DETECTION レスポンスには、検出されたラベル、そのスコア、不透明ラベル ID が含まれます。

{
  "responses": [
    {
      "labelAnnotations": [
        {
          "mid": "/m/017rgb",
          "description": "ferris wheel",
          "score": 0.84832066
        },
        {
          "mid": "/m/010jjr",
          "description": "amusement park",
          "score": 0.8101249
        },
        {
          "mid": "/m/01d74z",
          "description": "night",
          "score": 0.8036025
        },
        {
          "mid": "/m/05b0n7k",
          "description": "outdoor recreation",
          "score": 0.68825835
        },
        {
          "mid": "/m/02jf28",
          "description": "fair",
          "score": 0.6566326
        }
      ]
    }
  ]
}

ここで:

  • mid: 存在する場合は、このエンティティの Google Knowledge Graph エントリに対応する MID(Machine-generated Identifier)が格納されます。mid の値は異なる言語間でも一意であるため、異なる言語のエンティティをまとめるために使用することもできます。MID 値を調べるには、Google Knowledge Graph API のドキュメントをご覧ください。

  • description: ラベルの説明。

  • score: 信頼度スコア。0(信頼できない)から 1(信頼度が非常に高い)の範囲で示されます。

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...

Cloud Vision API ドキュメント
ご不明な点がありましたら、Google のサポートページをご覧ください。