0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【GCP】Cloud Vision APIを検証してみた

Last updated at Posted at 2020-05-05

【流れ】
パターン1「コンソール上で結果をみる」
・GAEのチュートリアルを実施
・VisionAPIのチュートリアルを実施

パターン2「webから検証する」
・GCEでPHPの実装を試す
・HTMLとPHPで構築しているサイトからコードを拝借する
 →ここがおすすめ https://book.mynavi.jp/manatee/detail/id=65673

・SSHでログイン
gcloud compute --project
"testclouddatastore-mune" ssh
--zone [vm-zone] [vm-name]
・ユーザ、homeデレクトリでindex.html と main.jsを作成
・sudo python -m SimpleHTTPServer 80 を打つ
・外部IPから接続

【ポイント】
・APIは支払いを有効にしないと使えない
・vision apiを検索して出さないと権限がないと言われる
・認証情報を作成
 vision-api-sampleのキーを作成してダウンロード
 リンクにあるページにはどうやって行くかわからんが、作成していけばロールを選択するところにもいく
・GAEでPythonを使う時、バージョンが27のときがある。いまは37で互換性がない場合があるので、使わないほうがいい。
 https://teratail.com/questions/140455 こちらを参照にして、部分的にはいけるが、
 結局最後まではいけない。

・gcloud compute --project
"testclouddatastore-mune" ssh
--zone asia-northeast1-a mune-test-api-001

[vm-zone] はゾーンの名前
[vm-name] 作成したインスタンスの名前
[]はとる

【認証について】
・認証方法は3種類ある

from google.cloud import vision これを使うとすぐにAPIが使えるみたい

https://cloud.google.com/vision/docs/internet-detection?hl=ja
「API に対する認証」にかかわってそう
ここをやれば APIKeyの入力はいらないのでは?

https://jun-networks.hatenablog.com/entry/2018/02/01/044255
このサイトではAPIKeyを使ってる

詳細な手順の記載

手順の概要
本手順では、Vision APIの検証方法として、以下2つのパターンを記載しております。
1.「コンソール上でAPIの検証をする手順」
2.「webブラウザ上からAPIの検証をする手順」

検証の手順

「コンソール上でAPIの検証をする手順」

※チュートリアルの以下を実施していく流れとなります。
コンソール画面 > 右上? > App Engine を試す
コンソール画面 > 右上? > Cloud Vision API を試す

以下はチュートリアルの「Python」を参考にしています。

1.プロジェクトを作成する。
※ここでは解説いたしません。
2.作成したプロジェクトにて、Cloud Shell を開く
3.以下のコマンドを実行し、githubからコマンドをコピーする。
git clone https://github.com/GoogleCloudPlatform/python-docs-samples
cd python-docs-samples/appengine/standard_python37/hello_world
4.アプリケーションを確認する
cat main.py
5.構成ファイルを確認する
cat app.yaml
6.Cloud Shell でアプリをテストする
virtualenv --python python3 ~/envs/hello_world
7.新しく作成した仮想環境を有効にします
source ~/envs/hello_world/bin/activate
8.プロジェクトの依存関係をインストールします
pip install -r requirements.txt
9.Flask 開発サーバーを使用して Cloud Shell でアプリを実行します。
python main.py
10.「ウェブでプレビュー」ボタンをクリックし、[プレビューのポート: 8080] をクリックし、正常にGAE
11.アプリケーションを作成する
gcloud app create
12.Cloud Shell を使ってデプロイする
gcloud app deploy app.yaml
--project
testclouddatastore-mune
13.外部IPアドレスをクリックし、アプリにアクセスする

1.プロジェクトを作成する。
※ここでは解説いたしません。
2.作成したプロジェクトにて、Vision API の有効化をする
コンソール画面上部検索窓に「Vision API 」を入力し、「Cloud Vision API」をクリック 
APIを有効にするをクリック
3.Cloud Shell を開く
4.以下のコマンドを実行し、githubからソースをコピーする。
git clone https://github.com/GoogleCloudPlatform/python-docs-samples.git
5.ディレクトリに移動する
cd python-docs-samples/vision/cloud-client/quickstart
6.アプリケーションを確認する
cat quickstart.py
7.サービス アカウントを作成する
gcloud iam service-accounts create vision-quickstart --project project名
8.認証情報を作成する
gcloud iam service-accounts keys create key.json --iam-account vision-quickstart@project名.iam.gserviceaccount.com
9.pathを通す
export GOOGLE_APPLICATION_CREDENTIALS=home/ユーザ名/key.json
10.アプリケーションを実行する
python quickstart.py
11.値が返ってくることを確認
※予め、resources/wakeupcat.jpg に猫の画像がセットされており、その画像を解析します。

「webブラウザ上からAPIの検証をする手順」

※チュートリアルの以下を実施し、GCEでWebサーバをたてます。
コンソール画面 > 右上「?」ボタン > Compute Engine を試す

1.https://github.com/asashiho/mynavi-ml-visionapiからzipをダウンロードする
2.ダウンロードしたzipを展開しておく
3.プロジェクトを作成する。
※ここでは解説いたしません。
4.ComputeEnginを選択し、[VM インスタンス] セクションで、[作成] ボタンをクリックします。
5.インスタンスの名前を入力します。
6.インスタンスのリージョンとゾーンを選択します。
7.低コストのマシンタイプを指定する [micro] を選択
8.[HTTP トラフィックを許可する] をオンにします。
9.[作成] をクリック
10.右上にあるナビゲーションバーの [通知] ボタンをクリックし、インスタンスが作成されたことを確認。
11.作成したプロジェクトにて、Vision API の有効化をする
コンソール画面上部検索窓に「Vision API 」を入力し、「Cloud Vision API」をクリック 
APIを有効にするをクリック
12.APImangerの認証情報にある認証情報を作成をクリック
13.APIキーをクリック
14.APIキーが作成されたことを確認し、作成されたAPIキーをコピーする
15.ダウンロードしたzipファイル内のmain.jsを開く
16.ファイル内のAPIkeyにコピーしたAPIキーを記載して、保存する
17.Cloud Shell を開く
18.以下のコマンドを入力し、SSH を使用して VM に接続
gcloud compute --project "PJ名" ssh --zone [vm-zone] [vm-name]
19.index.htmlを作成
sudo vim index.html
20.Cloud Shellの右上にあるアップロードから、ダウンロードしたzipファイル内のindex.htmlをアップする。
21.Cloud Shellの右上にあるアップロードから、APIキーを入力したmain.jsをアップする。
22.Cloud Shellにて、以下のコマンドを入力
sudo python -m SimpleHTTPServer 80
23.外部 IP アドレスでサーバにアクセスする
24.検証したい画像をアップロードし、Json形式の応答が返ってくることを確認

【参考URL】
https://book.mynavi.jp/manatee/detail/id=65673

以下がプロジェクトを無効にする作業となっております。
課金が発生してしまう可能性があるので、検証後は以下の作業を実施してください。

プロジェクトを無効にする
1.[設定] ページに移動します。
2.[アプリケーションを無効にする] をクリックします。

プロジェクトを削除する
1.コンソールの左上にあるナビゲーション メニューで [IAM と管理] に移動します。
2.[リソースの管理] をクリックします。
3.[削除] をクリックします。

【関連URL】
https://cloud.google.com/vision/pricing?hl=ja
https://cloud.google.com/products/calculator?hl=JA
https://amazarashi.me/ocr-google-cloud-vision-api/
https://xtech.nikkei.com/atcl/nxt/cpbook/18/00031/00004/?P=2

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?