简介
本文档提供关于人脸检索的相关 API 概览以及 SDK 示例代码。
API | 操作描述 |
人脸检索 |
功能说明
从数据集中搜索与指定图片最相似的前 N 张图片并返回人脸坐标可对数据集内文件进行一个或多个人员的人脸识别。
示例代码
from qcloud_cos import CosConfigfrom qcloud_cos import MetaInsightClientimport osimport sys# 替换为用户的 SecretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capisecret_id = os.environ["SECRETID"]# 替换为用户的 SecretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capisecret_key = os.environ["SECRETKEY"]# 替换为用户的 region,已创建桶归属的 region 可以在控制台查看,https://console.cloud.tencent.com/cos5/bucketregion = ('ap-beijing')# COS 支持的所有 region 列表参见 https://www.qcloud.com/document/product/436/6224token = None # 如果使用永久密钥不需要填入 token,如果使用临时密钥需要填入,临时密钥生成和使用指引参见 https://cloud.tencent.com/document/product/436/14048# 用户 appid 请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capiappid = '1250000000'config = CosConfig(Appid=appid, Region=region, SecretId=secret_id,SecretKey=secret_key,Token=token) # 获取配置对象client = MetaInsightClient(config)def ci_dataset_face_search():# 人脸检索body = {# 数据集名称,同一个账户下唯一。# 是否必传:是'DatasetName': "test",# 资源标识字段,表示需要建立索引的文件地址。# 是否必传:是'URI': "cos://examplebucket-1250000000/test.jpg",# 输入图片中检索的人脸数量,默认值为1(传0或不传采用默认值),最大值为10。# 是否必传:否'MaxFaceNum': 1,# 检索的每张人脸返回相关人脸数量,默认值为10,最大值为100。# 是否必传:否'Limit': 10,# 限制返回人脸的最低相关度分数,只有超过 MatchThreshold 值的人脸才会返回。默认值为0,推荐值为80。 例如:设置 MatchThreshold 的值为80,则检索结果中仅会返回相关度分数大于等于80分的人脸。# 是否必传:否'MatchThreshold': 10,}response, data = client.ci_dataset_face_search(Body=body,ContentType="application/json")print(response)print(data)return response, data
参数说明
调用 ci_dataset_face_search 函数,具体请求参数如下:
参数名称 | 参数描述 | 类型 | 是否必填 |
Body | 人脸检索请求参数。 | Container | 是 |
Body 节点内容:
参数名称 | 参数描述 | 类型 | 是否必填 |
DatasetName | 数据集名称,同一个账户下唯一。 | String | 是 |
URI | 资源标识字段,表示需要建立索引的文件地址。 | String | 是 |
MaxFaceNum | 输入图片中检索的人脸数量,默认值为1(传0或不传采用默认值),最大值为10。 | Integer | 否 |
Limit | 检索的每张人脸返回相关人脸数量,默认值为10,最大值为100。 | Integer | 否 |
MatchThreshold | 限制返回人脸的最低相关度分数,只有超过 MatchThreshold 值的人脸才会返回。默认值为0,推荐值为80。 例如:设置 MatchThreshold 的值为80,则检索结果中仅会返回相关度分数大于等于80分的人脸。 | Integer | 否 |
返回结果说明
response 为响应头,data 为响应结果,数据类型都为 dict。
response 内容
响应体 data
响应体具体数据内容如下:
参数名称 | 参数描述 | 类型 |
FaceResult | 人脸检索识别结果信息列表。 | Container Array |
RequestId | 请求 ID。 | String |
FaceResult 节点内容:
参数名称 | 参数描述 | 类型 |
FaceInfos | 相关人脸信息列表。 | Container Array |
InputFaceBoundary | 输入图片的人脸框位置。 | Container |
FaceInfos 节点内容:
参数名称 | 参数描述 | 类型 |
PersonId | 自定义人物 ID。 | String |
FaceBoundary | 相关人脸框位置。 | Container |
FaceId | 人脸 ID。 | String |
Score | 相关人脸匹配得分。 | Integer |
URI | 资源标识字段,表示需要建立索引的文件地址。 | String |
FaceBoundary 节点内容:
参数名称 | 参数描述 | 类型 |
Height | 人脸高度。 | Integer |
Width | 人脸宽度。 | Integer |
Left | 人脸框左上角横坐标。 | Integer |
Top | 人脸框左上角纵坐标。 | Integer |
InputFaceBoundary 节点内容:
参数名称 | 描述 | 类型 |
Height | 人脸高度。 | Integer |
Width | 人脸宽度。 | Integer |
Left | 人脸框左上角横坐标。 | Integer |
Top | 人脸框左上角纵坐标。 | Integer |