bash:指定した画像ファイルのLABEL検知を行う

説明

以下のサンプル(シェルスクリプト)は指定した画像ファイルのLABEL検知を行います。最初のパラメーターには検知したい画像のパスを指定します。2番目のパラメーターにはGoogle Cloud Vision API登録時のキーを指定します。例えば./sample.sh /Users/mz700/mnt.jpg 【APIキー】のように指定すると自動的にラベル検知が行われ/Users/mz700/mnt.jpg.txtのように画像のファイル名の末尾に.txtを付けたファイルを生成します。なお、Cloud Vision APIが返してくるのはJSON形式なので拡張子をjsonにしたい場合は"$1.txt"のtxtを"$1.json"のように変更してください。
検知数の最大値は1になっていますので、変更したい場合は"maxResults":1の1を好きな数値にしてください。

サンプルプログラム [サンプルをダウンロード]

#!/bin/bash
cd ~
echo '{"requests":[{"image":{"content":"' > ./temp.json
openssl base64 -in $1 | cat >> ./temp.json
echo '"},"features":[{
"type":"LABEL_DETECTION",
"maxResults":1
}]}]}' >> ./temp.json
curl -k -s -H "Content-Type: application/json" https://vision.googleapis.com/v1/images:annotate?key=$2 --data-binary @./temp.json > "$1.txt"
rm ./temp.json
<<戻る