沿って, smartwatches 21/02/2023

初学者向け「Amazon Rekognition」(AI画像/動画分析サービス)をPythonで利用するには:AWSチートシート

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

「Amazon Rekognition」とは

Amazon Rekognition

AWSの「AIサービス」はコンソール画面から利用できますが、開発を念頭に置かなくても、慣れてくれば今回のようにAPIを利用する方がより便利で効率的に感じてくるでしょう。本稿がそのように利用するきっかけになれば幸いです。

利用料金について

本稿では割愛するRekognition VideoとRekognition カスタムラベルも従量課金制で、無料利用枠も設定されています。詳しくは公式サイトでご確認ください。

必要条件

メソッド一覧

メソッド名機能引数戻り値
detect_labels画像から物体やイベント、テーマなどのラベルを検出する画像データ、レスポンスに含めるラベル数の最大値、信頼度の下限辞書
detect_faces画像から顔を検出する画像データ、顔属性要件辞書
compare_facesソース画像内の最も大きい顔とターゲット画像内の顔を比較するソース画像データ、ターゲット画像データ、類似度しきい値、品質フィルター値辞書
detect_protective_equipment画像から検出された人が着用している個人用防護具(PPE)を検出する画像データ、概要属性要件辞書
recognize_celebrities画像から有名人を検出する画像データ辞書
get_celebrity_info有名人情報を取得する有名人ID辞書
detect_moderation_labels画像から不適切なコンテンツを検出する画像データ、信頼度の下限、HumanLoop構成辞書
detect_text画像から文字を検出する画像データ、フィルター要件辞書
create_collection特定のリージョンにコレクションを作成するコレクションに付けるIDとタグ辞書
list_collectionsアカウント内のコレクションID情報を返すNextToken、レスポンスの最大値辞書
describe_collection特定のコレクションの情報を返すコレクションID辞書
index_faces画像から顔を検出して特定のコレクションに追加するコレクションID、画像データ、外部画像ID、検出属性要件、最大検出数、品質フィルター値辞書
list_faces特定のコレクションにある顔のメタデータを返すコレクションID、NextToken、レスポンスの最大値辞書
search_faces_by_image入力画像内の最も大きい顔と類似する顔をコレクションから検索するコレクションID、画像データ、検索する顔の数の最大値、信頼度のしきい値、品質フィルター値辞書
search_faces指定した顔IDと類似する顔をコレクションから検索するコレクションID、顔ID、検索する顔の数の最大値、信頼度のしきい値辞書
delete_faces特定のコレクションから顔情報を削除するコレクションID、フェースID辞書
delete_collection特定のコレクションを削除するコレクションID辞書
tag_resource特定のリソースにタグを追加するリソースARN、タグ辞書
list_tags_for_resourceコレクションとカスタムモデルラベル内のタグリストを返すリソースARN辞書
untag_resource特定のリソースからタグを削除するリソースARN、タグのキー辞書
can_paginate各メソッドのページネーション有無を調べるメソッド名真偽値
get_paginatorメソッドに関するページネータを生成するメソッド名ページネータオブジェクト
generate_presigned_url署名済みURLを返すメソッドとその引数署名済みURL
# 画像にバウンディングボックスとキャプションを重ねる際に使用する関数def draw_bbox(img_width, img_height, draw, bbox, caption, color):# バウンディングボックスの値を重ねる画像の大きさにスケーリング left = img_width * bbox['Left'] top = img_height * bbox['Top'] width = img_width * bbox['Width'] height = img_height * bbox['Height']# 頂点を設定 points = ((left, top),(left + width, top),(left + width, top + height),(left, top + height),(left, top))# バウンディングボックスを描画 draw.line(points, fill=color, width=3) # キャプションのサイズを取得 text_w, text_h = draw.textsize(caption) # キャプション領域を描画 draw.rectangle((left, top - text_h, left + text_w, top), fill=color) # キャプションを印字 draw.text((left, top - text_h), caption, fill='black')

detect_labelsメソッド

続きを閲覧するには、ブラウザの JavaScript の設定を有効にする必要があります。

関連記事

初学者向け「Amazon Rekognition」(AI画像/動画分析サービス)をPythonで利用するには:AWSチートシート