Ruby で Google Cloud Vision API (Vision AI) を利用する

前提条件

  • サービスアカウントは登録済みで、認証用の JSON ファイルは手元に用意済みとします
    • ファイル名は creds.json とします

結論

1. 環境変数 GOOGLE_APPLICATION_CREDENTIALS に認証用の JSON ファイルのパスを指定する

たとえば direnv を用いるとき、.envrc に以下のように書いて適用します。

export GOOGLE_APPLICATION_CREDENTIALS=/path/to/creds.json

2. Gemfile を作る

以下の Gemfile を作ります。直接 gem コマンドでインストールしてもいいです。

source 'https://rubygems.org'

gem 'google-cloud-vision'

3. bundle install する

$ bundle install します。

4. コードを書く

メインのコード app.rb を書きます。ここでは sample.png を OCR にかける場合を想定します。

require 'google/cloud/vision'

image_annotator = Google::Cloud::Vision.image_annotator
image_filepath = '/path/to/sample.png'
response = image_annotator.text_detection(image: file_path)

puts response

5. 実行する

上記のコードを実行するとレスポンスが得られます。レスポンス内容の詳細については 公式ページ を参照します。

$ bundle exec ruby app.rb
<Google::Cloud::Vision::V1::BatchAnnotateImagesResponse: responses: [<Google::Cloud::Vision::V1::AnnotateImageResponse: face_annotations: [], landmark_annotations: [], logo_annotations: [], label_annotations: [], localized_object_annotations: [], text_annotations: [<Google::Cloud::Vision::V1::EntityAnnotation: mid: "", locale: "ja", description...
Powered by はてなブログ