

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 在集合中搜索人脸
<a name="collections"></a>

Amazon Rekognition 可让您使用输入人脸在存储人脸集合中搜索匹配的人脸。首先，将检测到的人脸信息存储在称为“集合”的服务器端容器中。集合存储单张人脸和单个用户（同一个人有几张人脸）。单张人脸以人脸向量的形式存储，人脸向量是人脸的数学表示（不是人脸的实际图像）。同一个人的不同图像可用于创建多个人脸向量并存储在同一集合中。然后，您可以汇总同一个人的多个人脸向量来创建用户向量。用户向量可以提供更高的人脸搜索精确度，并提供更可靠的描绘，包括不同程度的光照、锐度、姿势、外观等。

创建集合后，您可以使用输入面容在集合中搜索匹配的用户向量或人脸向量。与针对单个人脸向量进行搜索相比，根据用户向量进行搜索可以显著提高准确性。您可以使用在图像、存储视频和流视频中检测到的人脸来搜索存储的人脸向量。您可以使用在图像中检测到的人脸来搜索存储的用户向量。

要存储人脸信息，您需要执行以下操作：

1. 创建收藏夹-要存储面部信息，您必须先在账户中的一个 AWS 区域中创建 ([CreateCollection](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_CreateCollection.html)) 面部集合。在调用 `IndexFaces` 操作时指定此人脸集合。

1. 人脸索引-该[IndexFaces](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_IndexFaces.html)操作可检测图像中的人脸，提取人脸矢量并将其存储在集合中。您可使用此操作检测图像中的人脸，并将有关检测到的人脸特征的信息保存到集合中。这是*基于存储的* API 操作示例，因为服务会将人脸向量信息存储在服务器上。

要创建用户并将多个人脸向量与用户关联，您需要执行以下操作：

1. 创建用户-必须先使用创建用户[CreateUser](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_CreateUser.html)。您可以通过将同一个人的多个人脸向量汇总到一个用户向量中来提高人脸匹配的准确性。您最多可以将 100 个人脸向量与一个用户向量相关联。

1. 关联面孔-创建用户后，您可以通过[AssociateFaces](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_AssociateFaces.html)操作向该用户添加现有人脸矢量。人脸向量必须与用户向量位于同一个集合中，才能与该用户向量相关联。

创建集合并存储人脸和用户向量后，您可以使用以下操作来搜索匹配的人脸：
+ [SearchFacesByImage](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_SearchFacesByImage.html)-使用图像中的人脸搜索存储的单个面孔。
+ [SearchFaces](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_SearchFaces.html)-使用提供的面容 ID 搜索存储的个人面孔。
+ [SearchUsers](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_SearchUsers.html)-使用提供的面容 ID 或用户 ID 对存储的用户进行搜索。
+ [SearchUsersByImage](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_SearchUsersByImage.html)-使用图像中的面孔搜索存储的用户。
+ [StartFaceSearch](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_StartFaceSearch.html)-在存储的视频中搜索人脸。
+ [CreateStreamProcessor](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_CreateStreamProcessor.html)-在直播视频中搜索面孔。

**注意**  
集合存储人脸向量，这些向量是人脸的数学表示。集合不存储人脸图像。

下图根据您使用集合的目标显示了调用操作的顺序：

**为了更大限度地提高与用户向量匹配的精度：**

![该图描绘了在集合中存储和搜索用户面部矢量，列出了诸如 CreateCollection、、、 IndexFaces CreateUser AssociateFaces SearchUsersByImage、和 SearchUsers之类的操作。](http://docs.aws.amazon.com/zh_cn/rekognition/latest/dg/images/uservectorsCollection.png)


**为了与单个人脸向量进行高精度匹配：**

![该图描绘了在集合中存储和搜索人脸，列出了诸如 CreateCollection、、、 IndexFaces StartFaceSearch CreateStreamProcessor SearchFacesByImage、和 SearchFaces之类的操作。](http://docs.aws.amazon.com/zh_cn/rekognition/latest/dg/images/facevectorsCollection.png)


在许多情况下都可以使用集合。例如，您可以使用 `IndexFaces` 和 `AssociateFaces` 操作创建一个人脸集合，用于存储从扫描的员工徽章图像和政府颁发的 ID 中检测到的人脸。当员工进入大楼时，将捕获员工的人脸图像，并将此图像发送到 `SearchUsersByImage` 操作。如果人脸匹配得到了足够高的相似度得分（例如 99%），则可对员工进行身份验证。