コレクション内での顔の検索 - Amazon Rekognition

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

コレクション内での顔の検索

Amazon Rekognition を使用すると、入力された顔を使用して、保存されている顔のコレクションから一致する顔を検索できます。まず、検出した顔の情報を、サーバー側のコンテナである「コレクション」に保存します。コレクションには個々の顔とユーザー (同一人物の複数の顔) の両方が保存されます。個々の顔は、顔を数学的に表現した顔ベクトルとして保存されます (実在の顔の画像ではなく)。同一人物の異なる画像を使用して、同じコレクションに複数の顔ベクトルを作成し、保存できます。その後、同一人物の複数の顔ベクトルを集計して、ユーザーベクトルを作成できます。ユーザーベクトルは、さまざまなレベルの明るさ、シャープネス、ポーズ、見た目などを含む、より安定した表現であり、より高い精度で顔を検索できます。

コレクションを作成したら、入力した顔を使用して、コレクション内の一致するユーザーベクトルまたは顔ベクトルを検索できます。ユーザーベクトルを検索すると、個々の顔ベクトルを検索する場合よりも精度を大幅に高めることができます。イメージ、保存済みビデオ、ストリーミングビデオ内で検出された顔を使用して、保存した顔ベクトルに対して検索を行うことができます。画像内で検出された顔を使用して、保存されているユーザーベクトルに対して検索を行えます。

顔の情報を保存するときは、次の操作を行う必要があります。

  1. コレクションの作成 - 顔情報を保存するには、まずアカウントのいずれかの AWS リージョンで顔コレクションを作成 (CreateCollection) する必要があります。この顔コレクションは、IndexFaces オペレーションを呼び出すときに指定します。

  2. 顔にインデックスを付ける - この IndexFaces オペレーションでは、画像内の顔を検出し、顔ベクトルを抽出してコレクションに保存します。このオペレーションを使用して、イメージ内の顔を検出し、検出した顔の特徴に関する情報をコレクション内に保持できます。サービスが顔ベクトル情報をサーバーに保持するため、こちらはストレージベースの API オペレーションの一例です。

ユーザーを作成し、このユーザーに複数の顔ベクトルを関連付けるには、次の操作を行う必要があります。

  1. ユーザーを作成する - 最初に CreateUser を使用してユーザーを作成します。同一人物の複数の顔ベクトルをユーザーベクトルに集約することで、顔照合の精度を高めることができます。1 つのユーザーベクトルには、最大で 100 個の顔ベクトルを関連付けることができます。

  2. 顔を関連付ける - ユーザーを作成したら、AssociateFaces オペレーションを使って既存の顔ベクトルをそのユーザーに追加できます。顔ベクトルをユーザーベクトルに関連付けるには、顔ベクトルがユーザーベクトルと同じコレクション内に存在している必要があります。

コレクションを作成して顔ベクトルとユーザーベクトルを保存した後に、以下のオペレーションを使って一致する顔を検索できます。

  • SearchFacesByImage - 保存されている個々の顔の中から、画像の顔を検索します。

  • SearchFaces - 指定した顔 ID を使って、保存されている個々の顔の中から検索します。

  • SearchUsers - 指定した顔 ID またはユーザー ID を使って、保存されているユーザーの中から検索します。

  • SearchUsersByImage - 保存されているユーザーの中から画像の顔を検索します。

  • StartFaceSearch - 保存したビデオ内で顔を検索します。

  • CreateStreamProcessor - ストリーミングビデオ内で顔を検索します。

注記

コレクションには、顔の数学的表現である顔ベクトルが保存されます。コレクションには、顔の画像は保存されません。

以下の図は、コレクションの使用目的に応じて、必要なオペレーションを呼び出す順序を示しています。

ユーザーベクトルとの照合精度を最大にするには:

コレクションにユーザーの顔ベクトルを保存して検索する方法を示す図。CreateCollection、IndexFaces、CreateUser、AssociateFaces、SearchUsersByImage、SearchUsers などのオペレーションが表示されている。

個々の顔ベクトルとの照合精度を高くするには:

コレクションに顔を保存して検索する方法を示す図。CreateCollection、IndexFaces、StartFaceSearch、CreateStreamProcessor、SearchFacesByImage、SearchFaces などのオペレーションが表示されている。

コレクションは、さまざまなシナリオで使用できます。例えば、IndexFaces および AssociateFaces オペレーションを使用することにより、スキャンした従業員バッジのイメージや政府発行の ID から検出した顔を保存する顔コレクションを作成できます。社員が建物内に入ると、その顔のイメージがキャプチャされ、SearchUsersByImage オペレーションに送信されます。十分に高い類似度スコア (99% など) で顔が一致すると、この社員を認証できます。