By, smartwatches
21/02/2023
To use "Amazon Rekagnition" (AI image / video analysis service) for beginners in Python: AWS Cheat Seat
This article is limited to members.You can see everything by registering (free).
What is "Amazon Rekognition"?
Amazon Rekognition
AWS's "AI Service" can be used from the console screen, but even if you do not keep the development in mind, if you get used to it, you will feel more convenient and more convenient to use the API like this time.I hope that this article will trigger that way.
About the usage fee
In this paper, the rekognition video and the rekagnition custom label, which are omitted, are also charged, and a free usage slot is also set.Please check the official website for details.
Requirements
Method list
メソッド名 | 機能 | 引数 | 戻り値 |
---|---|---|---|
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')