2.6 人脸算法服务 API
更新时间:
本文档旨在定义与人脸算法服务交互的 API。
1、 方案介绍
人脸算法服为边缘服务器提供人脸算法支持,当云端下发人脸权限时,边缘服务器会通过预设的人脸算法获取权限对应的人脸特征值。
2、通讯协议
驱动和边缘人脸算法间通过 HTTP 协议进行数据通讯,边缘服务器作为 HTTP Client 人脸算法服务作为 HTTP Server。
3、接口定义
人脸算法服务应提供以下接口供边缘服务器调用:
3.1、可用检查
边缘服务器调用该接口检查人脸算法是否可用。
URL:http://人脸算法IP:[端口]/
Method:GET
请求参数:
无
示例:
curl -L -X GET 'http://人脸算法IP:[端口]/'
返回参数:
成功:返回 "Face Recognition Service"
失败:HTTP请求失败,无法访问该算法服务
3.2、检测照片上的人脸并提取特征值
边缘服务器发送照片到人脸算法服务,人脸算法服务检测照片上的人脸,当检测到人脸后提取、返回该照片的人脸特征值。
URL:http://人脸算法IP:[端口]/match_with_face_detect
Method:POST
Content-Type:multipart/form-data
请求参数:
key | value | 描述 |
---|---|---|
photo | 照片文件 | 照片文件的大小不得超过 1M |
示例:
curl -L -X POST 'http://人脸算法IP:[端口]/match_with_face_detect' \-F 'photo=@"/face.gif"'
返回参数:
参数 | 类型 | 解释 |
---|---|---|
code | Integer | 成功: 200 输入文件无效: 400 从照片提取特征值失败:500 |
message | String | 成功: 'success' 失败: 描述错误原因 |
data | JsonArray | 成功:返回人脸照片对应的特征值信息 失败: 空数组 |
示例:
{
'code': 200,
'message':'success',
'data': [
-0.009695335291326046,
0.04982885345816612
]
}
3.3、仅提取照片中的人脸特征值
边缘服务器发送照片到人脸算法服务,人脸算法服务直接从照片中提取人脸特征值,随后将提取到的人脸特征值返回。
URL:http://人脸算法IP:[端口]/match
Method:POST
Content-Type:multipart/form-data
请求参数:
key | value | 描述 |
---|---|---|
photo | 照片文件 | 照片文件的大小不得超过 1M |
示例:
curl -L -X POST 'http://人脸算法IP:[端口]/match' \-F 'photo=@"/face.gif"'
返回参数:
参数 | 类型 | 解释 |
---|---|---|
code | Integer | 成功: 200 输入文件无效: 400 从照片提取特征值失败:500 |
message | String | 成功: 'success' 失败: 描述错误原因 |
data | JsonArray | 成功:返回人脸照片对应的特征值信息 失败: 空数组 |
示例:
{
'code': 200,
'message':'success',
'data': [
-0.009695335291326046,
0.04982885345816612
]
}
文档内容是否对您有帮助?