AWSの画像認識で、S3に保存した画像から物体検出するには【Python】

  • 2022-05-08
  • 2022-06-03
  • AI
AI

AWSの画像認識AI(Amazon Rekognition)で、AWSのS3に保存した画像から物体検出するには、detect_labelsを使用します。

 

S3に保存した画像から物体検出するには【Amazon Rekognition】

入力画像・検出画像

例として、次の駐車場に駐車している自動車4台の画像を使います。

1つ目が入力画像(S3に保存した画像)、2つ目が実際のAmazon Rekognitionの検出結果の参考画像です。

Pythonサンプル

import boto3

#boto3のclient作成、AWSサービス名とリージョンを指定
client = boto3.client('rekognition','ap-northeast-1')

# AWSのS3バケットのjpgファイルをAmazon Rekognitionに渡し、ラベル検出結果を受け取る
response = client.detect_labels(Image={'S3Object':{'Bucket':'newbucket1',
    'Name':'駐車場.jpg'}})

# responseのjsonデータについて、検出したラベル名と、各実体数を表示
for label in response['Labels']:
    print(label['Name'] + ': ' + str(len(label['Instances'])))

S3に保存した画像に対して、物体検出するPythonサンプルです。
AWSからレスポンス(json)を受け取り、検出されたラベル名と各実体数を、順に表示しています。

実行結果

Car: 4
Automobile: 0
Vehicle: 0
Transportation: 0
Parking Lot: 0
Parking: 0
Road: 0
Tarmac: 0
Asphalt: 0

1行目を見ると、画像内の自動車4台を、正しく検出できています。
さらに、駐車場や、道、などは実体(検出物体を囲む四角の枠)までは検出されていないものの、入力画像のラベルとしては正しく検出できています。

 

Pythonサンプル使用の前提

・AWSアカウント作成済み
・AWSキー情報を、自分のPCに初期設定済み

上記の準備の上、ご使用ください。

 

まとめ

Amazon Rekognitionで、S3に保存した画像から物体検出する方法をまとめました。
みなさんもAmazon Rekognitionを使用して、AI画像認識で遊んでみてはどうでしょうか。

最後まで読んでいただき、ありがとうございます。
また、お会いしましょう。