Google Vision APIで画像解析してもらってみる(pythonでリクエスト用jsonを自動生成)

Google Vision APIのリクエスト用json作成はGoogle先生pythonを使って自動化できるようなので、やってみる。

Google Vision APIを使えるようにするまで

割愛

参考

参考

https://cloud.google.com/vision/docs/requests-and-responses?hl=ja

git clone

cd ~
mkdir project
git clone git@github.com:keiwt/image-analyzer.git
cd image-analyzer

画像配置

/Users/XXXX/project/image-analyzer/img/manchi.jpg

txtファイル作成

/Users/XXXX/project/image-analyzer/input/manchi.txt

  • ファイルの内容
/Users/XXXX/project/image-analyzer/img/manchi.jpg 2:1 3:1 4:1

2(LANDMARK_DETECTION)や3(LOGO_DETECTION)や4(LABEL_DETECTION)は以下のような対応になっています。
それぞれ、最大10設定できるようです。

DETECTION_TYPES = [
    'TYPE_UNSPECIFIED',
    'FACE_DETECTION',
    'LANDMARK_DETECTION',
    'LOGO_DETECTION',
    'LABEL_DETECTION',
    'TEXT_DETECTION',
    'SAFE_SEARCH_DETECTION',
]

jsonファイル作成

python generatejson.py -i ./input/manchi.txt -o ./json/manchi.json

Google Vision APIにリクエスト送信

curl -v -k -s -H "Content-Type: application/json" \
https://vision.googleapis.com/v1/images:annotate?key=$GOOGLE_VISION_API_KEY \
--data-binary @/Users/XXXX/project/image-analyzer/json/manchi.json

レスポンス

{
  "responses": [
    {
      "labelAnnotations": [
        {
          "mid": "/m/01yrx",
          "description": "cat",
          "score": 0.99193996
        }
      ]
    }
  ]
}

これで以下の4ステップで画像解析ができるようになりました。

・解析したい画像を配置
・画像と画像内から何を見つけるかを指定するtxtファイルの指定
・json作成コマンド実行
・APIリクエストコマンド実行