クラウドサービス 入門 機械学習

【GCP】Google Cloud Vision APIで10分でダウンタウンの画像認識してみよう!!

今回はGCP(Google Cloud Platform)の一つのサービスであるGoogle Cloud Vision APIを使ってサクッと10分ほどで画像認識をしてみましょう!!

大好きなダウンタウンの画像に対して、画像認識を使ってみようと思います。

Google Cloud Vision APIで10分で画像認識してみよう!!

GCPを理解するのに参考になった本を載せておきますね。参考書探していた人は是非!!

Vision APIとは?

Googleが提供する画像認識APIです。

そもそもAPIとはアプリケーションインターフェースのことで、「処理して〜」と送ってあげると「はいよ〜」って処理したものを返してくれるものです。

つまり、Vision APIとは「画像認識して〜」と画像を送ってあげると、「画像認識したよ〜、はいラベル」などと返してくれる素晴らしいものです!!

ラベルはあとで説明しますね!!!

画像認識してみよう

プロジェクトの作成

ではプロジェクトの作成をしましょう!!(もうしてる人は飛ばしてね!!)

下の画像のプロジェクトの選択というボタンをクリックして、自分で好きなプロジェクト名をつけてあげましょう〜!!

サービスアカウントの取得

これはGoogle Cloud Platformのサービスを使用する為に取得しなければならない認証キーです。

以下のようにサービスアカウントをjson形式のファイルで作成します!!

1. 左上のボタンから「IAMと管理」>>「サービスアカウント」を選択

2. サービスアカウントの作成を選択してjsonファイルをダウンロード

Cloud Shellの起動

右上にShellを起動するボタンがあります。

下の画像の左から二番目のボタンです。

Shellを起動してサービスアカウントのjsonファイルを「ファイルのアップロード」でアップロードしてください(下の画像参照)

pythonコードと画像をアップロード

続いて必要なpythonファイルを作成しましょう!!

下のコードをコピーしてpythonファイルを作成してください。

このコードはlabel_detectionという画像に対してラベル(タグのようなもの)をつけてくれるものです。

下のコードのlabel_detectionをweb_detectionに変更すると、画像に対してWebから取得できる情報を返してくれたり、text_detectionとすると文字を認識して文字起こししてくれます!!!

また、入力したい画像をアップロードして、「hoge.jpg」の部分に画像の名前を入れてくださいね

from pathlib import Path
from google.cloud import vision
p = Path(__file__).parent / 'hoge.jpg'
client = vision.ImageAnnotatorClient()
with p.open('rb') as image_file:
    content = image_file.read()
image = vision.types.Image(content=content)
response = client.label_detection(image=image)
print(response)

画像認識を実行してみよう!

まず、サービスアカウントを有効にしましょう

Shellに下のコマンドを打ち込みましょう!!

export GOOGLE_APPLICATION_CREDENTIALS="取得したjson名.json"

これでVisioAPIが利用できます。

今いるディレクトリにサービスアカウントのjson、python、jpgがあればOKです。

では、pythonを実行しましょう

python detection.py

すると下のようなラベルが帰ってきているはずです!!

ダウンタウンが認識されていないだと。。。。

服装に関するラベルが多いですね笑

参考になったUdemyの講座を載せておきます

現役エンジニアが教える、手を動かして学ぶGoogle Cloud Platform(GCP) 入門

追加検証

label_detectionの関数をweb_detectionに変更して実行してみました!

すると

Masatoshi Hamada(浜田雅功)やMatsumoto Hitoshi(松本人志)やダウンタウンDXまで出てきています!!

web_detectionであるウェブ検出の画像認識はとても活用方法がありそうですね!!

まとめ

画像認識いかがだったでしょうか??

とても簡単にGoogleのサービスを利用可能で、AIのすごさを実感できたのではないでしょうか!!

GCPについてまた紹介記事を書いていこうと思います!!


-クラウドサービス, 入門, 機械学習
-, , ,

© 2020 はやぶさエンジニア Powered by AFFINGER5