人脸检测

最近更新时间:2020-06-29 15:07:29

我的收藏
注意:
人脸识别全面升级接口,算法更强、性能更优,欢迎立即体验 人脸识别
新老版本的接口不兼容,控制台的数据统计不互通,但计费模式相同,且共享计费阶梯。
人脸识别1.0版本接口已从2019年6月21日起停止维护,如果您使用的仍是当前的旧接口,请尽快升级成 2.0版本

接口描述

接口请求域名:https://recognition.image.myqcloud.com/face/detect 本接口(detect)用于检测给定图片中的所有人脸( Face )的位置和相应的面部属性,位置包括(x,y,w,h),面部属性包括性别( gender )、年龄( age )、表情( expression )、魅力( beauty )、眼镜( glass )和姿态 (pitch,roll,yaw )。
注意:
本接口支持 HTTPS 协议,如果您现在使用的是 HTTP 协议,为了保障您的数据安全,请切换至 HTTPS。

请求头 header

参数名
必选
描述
host
recognition.image.myqcloud.com
腾讯云人脸识别服务器域名。
content-length
包体总长度
整个请求包体内容的总长度,单位:字节(Byte)。
content-type
application/json 或 multipart/form-data
据不同接口选择:
1. 使用 application/json 格式,参数为 url,其值为图片的 url。
2. 使用 multipart/form-data 格式,参数为 image,其值为图片的二进制内容。
authorization
鉴权签名
多次有效签名,用于鉴权,生成方式见 鉴权签名
注意:
选择 multipart/form-data,请使用 HTTP 框架/库推荐的方式设置请求的 content-type,不推荐直接调用 setHeader 等方法设置,否则可能导致 boundary 缺失引起请求失败。

输入参数

使用 application/json 格式,参数选择 url ;使用 multipart/form-data 格式,参数选择 image。
参数名
必选
类型
参数说明
appid
String
接入项目的唯一标识,可在 账号信息云 API 密钥 中查看。
mode
Int
检测模式,0:所有人脸,1:最大的人脸。
image
Binary
图片内容。
url
String
图片的 url、image提供一个即可;如果都提供,只使用 url

输出参数

字段
类型
说明
data.session_id
String
相应请求的 session 标识符,可用于结果查询。
data.image_width
Int
请求图片的宽度。
data.image_height
Int
请求图片的高度。
data.face
Array(faceItem)
检测出的人脸信息列表。
code
Int
返回状态码。
message
String
返回错误消息。
FaceItem 说明:
字段
类型
说明
face_id
String
人脸标识
x
Int
人脸框左上角 x
y
Int
人脸框左上角 y
width
Float
人脸框宽度
height
Float
人脸框高度
gender
Int
性别 [0(female)~100(male)]
age
Int
年龄 [0~100]
expression
Int
微笑[0(normal)~50(smile)~100(laugh)]
glass
Bool
是否有眼镜 [true,false]
pitch
Int
上下偏移[-30,30]
yaw
Int
左右偏移[-30,30]
roll
Int
平面旋转[-180,180]
Beauty
Int
魅力[0~100]
注意:
如果图片中包含超过5张人脸,在返回的 FaceItem 中,只返回5张人脸完整信息,其他人脸只返回位置信息(face_id,x,y,width,height),属性信息不返回。

示例

输入示例

使用 url 的请求包

POST /face/detect HTTP/1.1
Authorization: FCHXdPTEwMDAwMzc5Jms9QUtJRGVRZDBrRU1yM2J4ZjhRckJi==
Host: recognition.image.myqcloud.com
Content-Length: 123
Content-Type: application/json

{
"appid":"123456",
"mode":1,
"url":"http://test-123456.image.myqcloud.com/test.jpg"
}

使用 image 的请求包

POST /face/detect HTTP/1.1
Authorization: FCHXdPTEwMDAwMzc5Jms9QUtJRGVRZDBrRU1yM2J4ZjhRckJi==
Host: recognition.image.myqcloud.com
Content-Length: 460
Content-Type: multipart/form-data;boundary=--------------acebdf13572468

----------------acebdf13572468
Content-Disposition: form-data; name="appid";

123456
----------------acebdf13572468
Content-Disposition: form-data; name="mode";

1
----------------acebdf13572468
Content-Disposition: form-data; name="image"; filename="test.jpg"
Content-Type: image/jpeg

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
----------------acebdf13572468--

输出示例

HTTP/1.1 200 OK
Connection: keep-alive
Content-Length: 313
Content-Type: application/json

{
"data":{
"session_id": "",
"image_height": 200,
"image_width": 200,
"face": [{
"face_id": "1005338790489817087",
"x": 44,
"y": 33,
"height": 64.0,
"width": 64.0,
"pitch": 5,
"roll": 0,
"yaw": 6,
"age": 37,
"gender": 99,
"glass": true,
"expression": 6
"beauty": 80
}]
},
"code":0,
"message":"OK"
}

错误码

错误码
含义
3
错误的请求,其中 message:account abnormal,errorno is:2 为账号欠费停服
4
签名为空
5
签名串错误
6
签名中的 AppID /存储桶与操作目标不匹配
9
签名过期
10
AppID 不存在
11
SecretId 不存在
12
AppID 和 SecretId 不匹配
13
重放攻击
14
签名校验失败
15
操作太频繁,触发频控
16
存储桶不存在
21
无效参数
23
请求包体过大
24
本接口即将下线,请使用新版人脸识别
107
鉴权服务不可用
108
鉴权服务不可用
213
内部错误
-1101
人脸检测失败
-1102
图片解码失败
-1103
特征处理失败
-1104
提取轮廓错误
-1105
提取性别错误
-1106
提取表情错误
-1107
提取年龄错误
-1108
提取姿态错误
-1109
提取眼镜错误
-1200
特征存储错误
-1300
图片为空
-1301
参数为空
-1302
个体已存在
-1303
个体不存在
-1304
参数过长
-1305
人脸不存在
-1306
组不存在
-1307
组列表不存在
-1308
url 图片下载失败
-1309
人脸个数超过限制
-1310
个体个数超过限制
-1311
组个数超过限制
-1312
对个体添加了几乎相同的人脸
-1313
参数不合法(特殊字符例如空格、斜线、tab、换行符)
-1400
非法的图片格式
-1403
图片下载失败
更多其他 API 错误码请查看 错误码说明