翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
コレクション内の顔の検索
Amazon Rekognition では、検出した顔に関する情報をコレクションというサーバー側のコンテナに保存できます。コレクションに保存された顔の情報を使用して、イメージ、保存したビデオ、およびストリーミングビデオ内の既知の顔を検索できます。Amazon Rekognition では、IndexFacesオペレーション. このオペレーションを使用して、イメージ内の顔を検出し、検出した顔の特徴に関する情報をコレクション内に保持できます。サービスによって情報がサーバーに保持されるため、これは ストレージベースの API オペレーションの例です。
顔の情報を保存するには、まず、アカウントの AWS リージョンのいずれかで顔コレクションを作成する (CreateCollection) 必要があります。この顔コレクションは、IndexFaces
オペレーションを呼び出すときに指定します。顔コレクションを作成して、すべての顔の特徴情報を保存すると、コレクション内で一致する顔を検索できます。イメージ内の顔を検索するには、SearchFacesByImage を呼び出します。保存したビデオ内の顔を検索するには、StartFaceSearch を呼び出します。ストリーミングビデオ内の顔を検索するには、CreateStreamProcessor を呼び出します。
サービスでは、実際のイメージのバイトを保持しません。代わりに、基になる検出アルゴリズムで、最初に入力イメージ内の顔を検出して、顔ごとに顔の特徴を特徴ベクトルに抽出し、次にその特徴ベクトルをコレクションに保存します。Amazon Rekognition では、これらの特徴ベクトルを使用して顔を一致させます。
コレクションは、さまざまなシナリオで使用できます。たとえば、顔コレクションを作成し、スキャンしたバッジイメージを IndexFaces
オペレーションで保存できます。社員が建物内に入ると、その顔のイメージがキャプチャされ、SearchFacesByImage
オペレーションに送信されます。十分に高い類似スコア (99% など) で顔が一致すると、この社員を認証できます。
コレクションの管理
顔コレクションは Amazon Rekognition のプライマリリソースであり、顔コレクションを作成するたびに一意の Amazon リソースネーム (ARN) が割り当てられます。各顔コレクションは、特定ので作成しますAWSアカウント内のリージョン。コレクションを作成すると、最新バージョンの顔検出モデルに関連付けられます。詳細については、「モデルのバージョニング」を参照してください。
コレクションに対しては、以下の管理オペレーションを実行できます。
CreateCollection でコレクションを作成します。詳細については、「コレクションの作成」を参照してください。
ListCollections で使用可能なコレクションを一覧表示します。詳細については、「コレクションの一覧表示」を参照してください。
-
DescribeCollection でコレクションを定義します。詳細については、「コレクションの定義」を参照してください。
DeleteCollection でコレクションを削除します。詳細については、「コレクションの削除」を参照してください。
コレクション内の顔の管理
顔コレクションを作成したら、それに顔を保存できます。Amazon Rekognition では、以下のオペレーションを使用してコレクション内の顔を管理できます。
IndexFaces オペレーションでは、入力イメージ (JPEG または PNG) 内の顔を検出し、これを指定された顔コレクションに追加します。イメージで検出された顔ごとに一意の顔 ID が返されます。顔を保存したら、顔コレクション内で一致する顔を検索できます。詳細については、「コレクションへの顔の追加」を参照してください。
ListFaces オペレーションは、コレクション内の顔を一覧表示します。詳細については、「コレクションへの顔の追加」を参照してください。
DeleteFaces オペレーションは、コレクションから顔を削除します。詳細については、「コレクションから顔を削除する」を参照してください。
IndexFaces を使用するためのガイダンス
一般的なシナリオで IndexFaces
を使用するためのガイダンスを以下に示します。
重要または公安アプリケーション
-
各画像に 1 つの顔のみを含む画像で IndexFaces を呼び出し、返された顔 ID を画像の被写体の識別子と関連付けます。
-
インデックス作成の前に DetectFaces を使用して、画像内の顔が 1 つのみであることを確認できます。複数の顔が検出された場合は、確認後、顔が 1 つだけの状態で画像を再送信してください。これにより、誤って複数の顔にインデックスを作成し、それらを同じ人物に関連付けることを防ぎます。
写真共有とソーシャルメディアアプリケーション
-
家族のアルバムのようなユースケースでは、複数の顔を含む画像に制限なく、
IndexFaces
を呼び出す必要があります。このような場合は、すべての写真の各人物を識別し、その情報を使用して写真に写っている人物ごとに写真をまとめる必要があります。
一般的な使用
-
照合の質を向上させるために、特に異なる顔の属性 (顔のポーズ、顔面の毛など) を持つ同一人物の複数の異なる画像にインデックスを付けます。
-
その後の顔照合能力を向上させるために、失敗した照合が正しい顔識別子で索引付けされることができるようにレビュープロセスを含めます。
-
画像品質の詳細については、「顔比較入力画像の推奨事項」を参照してください。
コレクション内の顔を検索する
顔コレクションを作成して顔を保存したら、顔コレクション内で一致する顔を検索できます。Amazon Rekognition では、以下と一致するコレクション内の顔を検索できます。
-
指定した顔 ID (SearchFaces)。詳細については、「フェイス ID を使用して顔を検索する」を参照してください。
-
指定したイメージ内の最大の顔 (SearchFacesByImage)。詳細については、「画像を使用して顔を検索する」を参照してください。
-
保存したビデオ内の顔。詳細については、「 保存された動画の顔を検索する」を参照してください。
-
ストリーミングビデオ内の顔。詳細については、「ストリーミングビデオの操作」を参照してください。
CompareFaces
オペレーションと顔検索オペレーションは、以下のように異なります。
-
CompareFaces
オペレーションでは、ソースイメージ内の顔とターゲットイメージ内の顔を比較します。この比較の範囲は、ターゲットイメージで検出された顔に制限されます。詳細については、「画像内の顔の比較」を参照してください。 -
SearchFaces
とSearchFacesByImage
では、顔 (FaceId
または入力イメージのいずれかで識別) と特定の顔コレクション内のすべての顔を比較します。したがって、この検索の範囲はずっと広くなります。また、顔コレクション内に保存した顔の特徴情報は保持されるため、一致する顔を何回でも検索できます。
類似度しきい値を使用してフェースを一致させる
類似度しきい値が入力パラメータとして提供されるため、すべての検索オペレーション (CompareFaces、SearchFaces、および SearchFacesByImage) の結果を制御できます。
SearchFaces
と SearchFacesByImage
の類似度しきい値の入力属性 FaceMatchThreshold
は、マッチングされる顔の類似度に基づいて返される結果の数を制御します (この属性は CompareFaces
では SimilarityThreshold
です)。Similarity
レスポンス属性値がしきい値より小さいレスポンスは返されません。このしきい値は、ユースケースに合わせて調整することが重要です。この値により、一致結果に含まれる誤認識の数が変わるためです。これにより、検索結果のリコールが制御されます。しきい値が低いほど、リコールが高くなります。
すべての機械学習システムは確率的です。適切な類似度しきい値の設定には、ユースケースに応じて、お客様の判断が必要です。たとえば、外見が類似した家族を識別する写真アプリケーションを構築する場合は、より低いしきい値 (80% など) を選択できます。一方、多くの法律執行のユースケースでは、偶発的な誤認識を減らすため、99% 以上の高いしきい値を使用することをお勧めします。
FaceMatchThreshold
に加えて、偶発的な誤認識を減らすための手段として Similarity
レスポンス属性を使用できます。たとえば、低いしきい値 (80% など) を使用して、より多くの結果が返されるようにできます。その後、レスポンス属性 Similarity
(類似度) を使用してそれらの結果を絞り込んで、アプリケーションで正しいレスポンスが得られるようにフィルタ処理できます。ここでも、高い類似度 (99% 以上など) を指定すると、誤認識のリスクが軽減されます。