智能多媒体 >
API 文档 >
人脸核验 >
人脸检测
人脸检测
最近更新时间:2020-12-01 11:12:38
接口简介
七牛人脸对比接口face-detect
,检测单张图片中的人脸信息。
注意
- 接口超时时间为 30 秒。
- 资源的 Mime 文件格式仅支持图片类型:image/*,如:image/jpeg、image/png。
- 请求接口为标准的HTTP/HTTPS 协议。
- 前端SDK采集的刷脸照,会reszie到480×640,有些机型会是240×360;证件照则一般在178×220 ~ 480×640之间。Resize之后,可以有效控制模型输入源,确保模型有比较好的性能。
- 如果客户没有使用SDK,而是直接调用人脸检测API,则建议按照上述规则对图片做预处理。
请求语法
POST http(s)://face-detect.qiniuapi.com/facedetect
Host: face-detect.qiniuapi.com
Content-Type: application/json
Authorization: QiniuToken
头部信息
头部名称 |
必填 |
说明 |
Host |
是 |
固定为 face-detect.qiniuapi..com |
Content-Type |
是 |
固定为 application/json |
Authorization |
是 |
该参数应严格按照管理凭证格式进行填充,否则会返回 401 错误码。一个合法的 Authorization 值应类似于:Qiniu QNJi_bYJlmO5LeY08FfoNj9w_r7... |
请求 body
字段 |
是否必填 |
类型 |
说明 |
image_b64 |
是 |
string |
base64编码的图片数据 |
rotate |
否 |
bool |
人脸检测失败时,是否对图像 A 做旋转再检测,旋转角包 括 90、180、270 三个角度,默认值为 False |
返回
字段 |
类型 |
说明 |
num_face |
int |
图像中人脸数量 |
rotangle |
float |
图像旋转角度 |
face |
[ ]faceItem |
[face1,face2,...],其中 face1,face2,...等为 json 格式,具体格式见下表 |
errorcode |
int |
返回状态码 |
errormsg |
string |
返回错误消息 |
faceItem
字段 |
类型 |
说明 |
blur |
float |
人脸模糊度,取值范围[0,1],越大越清晰 |
gender |
string |
性别,’M’代表男,’F’代表女 |
age |
int |
年龄,区间 1-107 岁 |
illumination |
float |
人脸光照范围,取值范围[0,100],越大光照质量越好 |
facesize |
float |
人脸尺寸分数,取值分数[0,100], 越大人脸尺寸越大 |
quality |
float |
人脸综合质量分数,取值范围[0,100], 越大质量越好 |
eye |
flaot |
闭眼概率,取值范围[0,100] |
mouth |
float |
闭嘴概率,取值范围[0,100] |
pitch |
float |
三维旋转之俯仰角,[-180,180] |
roll |
float |
三维旋转之旋转角,[-180,180] |
yaw |
float |
三维旋转之左右旋转角, [-180,180] |
completeness |
int |
取值0到100;0表示人脸不完整,溢出了图像边界,100 表示人脸是完整的,在图像边界内 |
area |
int |
人脸区域的大小 |
face_aligned_b64 |
string |
使用 base64 编码的对齐后人脸图片数据 |
score |
float |
人脸分数 取值范围 [0,100] |
x |
int |
人脸框的左上角 x 坐标 |
y |
int |
人脸框的左上角 y 坐标 |
width |
int |
人脸框的宽度 |
height |
int |
人脸框的高度 |
face_shape |
json |
人脸 106 个关键点坐标,包含 face_profile,left_eye, left_eyebrow,right_eye,right_eyebrow,mouth,nose,pupil 等组件,每个组件都是一个 json |
示例
POST face-detect.qiniuapi.com/facedetect
HTTP/1.1
Host:face-detect.qiniuapi.com
Authorization: Qiniu aWQ6lF1Zxxse43jB6V7lsdfaadf:7cWZPxxxxxasdffed60zkI8=
Content-Type: application/json
{
“image_b64”: IMAGEA_DATA,
“rotate”: True
}
同步请求
接口规格
注意:接口规格不含任何空格与换行符。
请求接口
GET <mediaDownloadURI>?face-detect
字段说明
参数名称 |
必填 |
说明 |
mediaDownloadURI |
Y |
七牛对象存储中的图片地址 |
返回示例
{
“num_face”: 1, “rotangle”: 0, “errorcode”: 0, “errormsg”: ‘OK”, “face”: [{“score”: 0.99,
“x”: 10,
“y”: 20,
“width”: 96,
“height”: 96,
“blur”: 0.7,
“gender”: “M”,
“age”: 30,
"illumination”: 70,
“facesize”: 70,
“quality”: 70,
“pitch”: 10,
“yaw”: 0,
“raw”: 5,
“completeness”: 1,
“area”:9216,
“face_aligned_b64”: ALIGNED_IMAGE_DATA,
"face_shape":{
"face_profile": [{"x":1,"y":1"}, {"x":2,"y":2}, ...],
....,
"pupil": [{"x":555,"y":555"}, {"x":800,"y":800}
]
}
错误码
错误码 |
错误信息 |
说明 |
0 |
OK |
请求成功,无错误 |
55060001 |
ERROR_PARAMETER_INVALID |
请求字段有非法传输 |
55060002 |
IMAGE_DECODE_FAILED |
图片解码失败 |
55060006 |
FEATURE_EXTRACT_FAILED |
人脸特征提取失败 |
55060018 |
FACE_ALIGNMENT_FAILED |
人脸配准失败 |
55060019 |
IMAGE_BASE64_DECODE_FAILED |
人脸检测图片 Base64 解码失败 |
55060033 |
HAS_NOT_VALID_FACE_IMAGE |
人脸图片无效 |