イメージを分析する

完了

画像を分析するには、使用するプログラミング言語向け SDK の Analyze Image REST メソッドまたは同等のメソッドを使用して、分析に含める視覚的特徴 (カテゴリを選択した場合は、著名人やランドマークの詳細を含めるかどうか) を指定します。 このメソッドは、要求された情報を含む JSON ドキュメントを返します。

注意

有名人を検出するには、制限付きアクセス ポリシーを使用して承認を得る必要があります。 責任ある AI 標準へのこのポリシーの追加に関する詳細を参照してください。 一部のスクリーンショットには有名人の認識が表示されますが、ラボには含まれていません。

using Azure.AI.Vision.ImageAnalysis;

ImageAnalysisClient client = new ImageAnalysisClient(
    Environment.GetEnvironmentVariable("ENDPOINT"),
    new AzureKeyCredential(Environment.GetEnvironmentVariable("KEY")));

ImageAnalysisResult result = client.Analyze(
    new Uri("<url>"),
    VisualFeatures.Caption | VisualFeatures.Read,
    new ImageAnalysisOptions { GenderNeutralCaption = true });
from azure.ai.vision.imageanalysis import ImageAnalysisClient
from azure.ai.vision.imageanalysis.models import VisualFeatures
from azure.core.credentials import AzureKeyCredential

client = ImageAnalysisClient(
    endpoint=os.environ["ENDPOINT"],
    credential=AzureKeyCredential(os.environ["KEY"])
)

result = client.analyze(
    image_url="<url>",
    visual_features=[VisualFeatures.CAPTION, VisualFeatures.READ],
    gender_neutral_caption=True,
    language="en",
)

使用可能な視覚的特徴は、VisualFeatures 列挙型に含まれています。

  • VisualFeatures.Tags: オブジェクト、風景、設定、アクションなど、画像に関するタグを識別します
  • VisualFeatures.Objects: 検出された各オブジェクトの境界ボックスを返します
  • VisualFeatures.Caption: 自然言語で画像のキャプションを生成します
  • VisualFeatures.DenseCaptions: 検出されたオブジェクトのより詳細なキャプションを生成します
  • VisualFeatures.People: 検出された人物の境界ボックスを返します
  • VisualFeatures.SmartCrops: 対象領域での指定した縦横比の境界ボックスを返します
  • VisualFeatures.Read: 読み取り可能なテキストを抽出します
  • VisualFeatures.TAGS: オブジェクト、風景、設定、アクションなど、画像に関するタグを識別します
  • VisualFeatures.OBJECTS: 検出された各オブジェクトの境界ボックスを返します
  • VisualFeatures.CAPTION: 自然言語で画像のキャプションを生成します
  • VisualFeatures.DENSE_CAPTIONS: 検出されたオブジェクトのより詳細なキャプションを生成します
  • VisualFeatures.PEOPLE: 検出された人物の境界ボックスを返します
  • VisualFeatures.SMART_CROPS: 対象領域での指定した縦横比の境界ボックスを返します
  • VisualFeatures.READ: 読み取り可能なテキストを抽出します

画像内で分析対象とする視覚的特徴を指定することで、応答に含まれる情報が決まります。 ほとんどの応答には、境界ボックス (画像内の場所が妥当な場合) または信頼度スコア (タグやキャプションなどの特徴の場合) が含まれます。

画像分析の JSON 応答は、要求された特徴に応じて、次の例のようになります。

{
  "apim-request-id": "abcde-1234-5678-9012-f1g2h3i4j5k6",
  "modelVersion": "<version>",
  "denseCaptionsResult": {
    "values": [
      {
        "text": "a house in the woods",
        "confidence": 0.7055229544639587,
        "boundingBox": {
          "x": 0,
          "y": 0,
          "w": 640,
          "h": 640
        }
      },
      {
        "text": "a trailer with a door and windows",
        "confidence": 0.6675070524215698,
        "boundingBox": {
          "x": 214,
          "y": 434,
          "w": 154,
          "h": 108
        }
      }
    ]
  },
  "metadata": {
    "width": 640,
    "height": 640
  }
}