AWSのAI画像認識(Amazon Rekognition)で、物体検出するには、detect_labelsを使用します。
具体的には、ラベル検出のレスポンスで、実体(Instances)が存在するものをピックアップします。
AIで物体検出するには【AWS】
入力画像・検出画像
1枚目が入力画像、2枚目が画像認識後の画像です。
それでは、AWSの画像認識で、どのように物体検出できるか見ていきましょう。
Pythonサンプル
import boto3
#boto3のclient作成、rekognitionとリージョンを指定
client = boto3.client('rekognition','ap-northeast-1')
# 画像ファイルを読み込んでバイト列を取得
with open('子どもと自転車.jpg', 'rb') as source_image:
source_bytes = source_image.read()
# AWSへバイト列を渡し、ラベル検出結果を受け取る
response = client.detect_labels(Image={ 'Bytes': source_bytes })
# response内のラベルでInstancesが空でない場合、ラベル名を表示
for label in response['Labels']:
if len(label['Instances']) > 0:
print(label['Name'])
物体検出するには、AWSのラベル検出のレスポンスで、実体(Instances)が存在するものをピックアップすればよいです。
上記のPythonを実行すると、次の結果になります。
実行結果
Bicycle
Person
Wheel
Shoe
自転車、人、車輪、靴を、正しく検出できています。
前提
・AWSアカウント作成済み
・AWSキー情報を、自分のPCに初期設定済み
まとめ
Amazon Rekognitionnで、画像から物体検出する方法をまとめました。
みなさんもAmazon RekognitionnのAPIを使用して、スマホやWebカメラで撮影した画像で、物体検出にトライしてみてはどうでしょうか。
最後まで読んでいただき、ありがとうございます。
また、お会いしましょう。
【もくじ】Amazon Rekognition 画像認識 サンプル集