如果我使用 IndexFaces ,则需要提供图像和集合ID,然后将图像中的面添加到指定的集合ID。假设我在包含一百万个面孔的集合上提供了一个集合ID,这是AWS
Rekognition
中集合的限制。因此,在此集合中添加更多面孔会引发错误(我认为)因为这会超过集合中一百万个面的限制。所以我想知道 IndexFaces 会抛出什么错误和/或如何告诉AWS重新识别我的集合中的面孔数量?我已经列出了 IndexFaces 下面的错误列表,以防它有用。
AccessDeniedException您无权执行此操作。
ImageTooLargeException输入图像大小超出允许的限制。有关更多信息,请参阅Amazon重新认知中的限制。
InternalServerError Amazon Rekognition遇到服务问题。再试一次。
InvalidImageFormatException不支持提供的图像格式。
InvalidParameterException输入参数违反了约束。在再次调用API操作之前验证您的参数。
InvalidS3ObjectException Amazon Rekognition无法访问请求中指定的S3对象。
ProvisionedThroughputExceededException请求数超过了吞吐量限制。如果您想增加此限制,请联系Amazon Rekognition。
ResourceNotFoundException找不到请求中指定的集合。
ThrottlingException Amazon Rekognition暂时无法处理请求。再试一次。
答案 0 :(得分:0)
我不知道会导致什么错误,但我所做的是以下列方式计算集合中的面数:
$list = $this->client->listFaces([
'CollectionId' => 'nombrecoleccion',
]);
$substr = substr($list, 294);
$json = json_decode($substr);
$result = $json->{'Faces'};
for ($i = 0; $i < count($result); $i++) {
$faces[$i] = $result[$i]->{'FaceId'};
}
count($faces);