图片人脸检测‑人脸位置标记‑人像区域识别‑人脸框选解析 API 接口介绍

举报
聚美智数 发表于 2026/09/16 15:36:25 2026/09/16
【摘要】 前言在人像业务开发中,经常需要识别图像内是否存在人脸,并获取人脸所在区域信息,用于人像裁剪、人脸预处理、内容筛查等环节。自研人脸检测模型开发门槛高,调优成本大。通过人脸检测接口,能够识别图片当中的人脸,输出人脸对应的位置信息,为人像类业务提供基础图像分析能力。 核心能力可精准检测图像内出现的人脸区域,定位人脸坐标位置信息,支持多张人脸同时检测;能够适配实拍照片、证件照片、环境抓拍等多种人像...

前言

在人像业务开发中,经常需要识别图像内是否存在人脸,并获取人脸所在区域信息,用于人像裁剪、人脸预处理、内容筛查等环节。自研人脸检测模型开发门槛高,调优成本大。通过人脸检测接口,能够识别图片当中的人脸,输出人脸对应的位置信息,为人像类业务提供基础图像分析能力。

核心能力

  • 可精准检测图像内出现的人脸区域,定位人脸坐标位置信息,支持多张人脸同时检测;
  • 能够适配实拍照片、证件照片、环境抓拍等多种人像画面;
  • 支持PNG、JPG、JPEG、BMP等格式;
  • 对不同光照、角度下的人脸具备良好识别效果。

戳这里查看详情

API介绍

请求说明

名称 类型 必须 说明
file String 人脸照片文件,文件类型
base64 String 人脸照片Base64
url String 人脸照片url
faceField String 包括age,expression,face_shape,gender,glasses,landmark,landmark150,quality,eye_status,emotion,face_type,mask,spoofing信息,逗号分隔.
默认只返回face_token、人脸框、概率和旋转角度
maxFaceNum Integer 最多处理人脸的数目,默认值为1,根据人脸检测排序类型检测图片中排序第一的人脸(默认为人脸面积最大的人脸),最大值120
faceType String 人脸的类型,默认LIVE。
LIVE表示生活照:通常为手机、相机拍摄的人像图片、或从网络获取的人像图片等
IDCARD表示身份证芯片照:二代身份证内置芯片中的人像照片
WATERMARK表示带水印证件照:一般为带水印的小图,如公安网小图CERT表示证件照片:如拍摄的身份证、工卡、护照、学生证等证件图片
livenessControl String 活体控制,默认NONE, 检测结果中不符合要求的人脸会被过滤
NONE: 不进行控制
LOW:较低的活体要求(高通过率 低攻击拒绝率)
NORMAL: 一般的活体要求(平衡的攻击拒绝率, 通过率)
HIGH: 较高的活体要求(高攻击拒绝率 低通过率)
faceSortType String 人脸检测排序类型,默认为0。
0:代表检测出的人脸按照人脸面积从大到小排列
1:代表检测出的人脸按照距离图片中心从近到远排列
displayCorpImage String 是否显示检测人脸的裁剪图base64值,默认为0
0:不显示(默认)
1:显示
当取值为1时,max_face_num字段的取值上限按5计算,即最多可返回5张人脸的裁剪图

关于合成图检测spoofing的判断阈值选择,可参考以下数值信息

阈值 误拒率(FRR) 通过率(TAR) 攻击拒绝率(TRR)
0.00023 5% 95% 94.93%
0.00048(推荐) 1% 99% 89.71%
0.00066 0.5% 99.5% 88.02%
0.00109 0.1% 99.9% 84.57%
0.00171 0.05% 99.95% 81.52%
0.00547 0.01% 99.99% 65.52%

关于以上数值的概念介绍:

拒绝率(TRR):如99%,代表100次作弊假体攻击,会有99次被拒绝。
误拒率(FRR):如0.5%,指1000次真人请求,会有5次因为活体分数低于阈值被错误拒绝。
通过率(TAR):如99%,指100次真人请求,会有99次因为活体分数高于阈值而通过。
阈值(Threshold):高于此数值,则可判断为是合成图攻击。

返回样例

{
  "code": 200,
  "msg": "成功",
  "taskNo": "788988200161527391185660",
  "data": {
    "faceNum": 1,//检测到的图片中的人脸数量
    "faceList": [//人脸信息列表,具体包含的参数参考下面的列表。
      {
        "face_token": "35235asfas21421fakghktyfdgh68bio",//人脸图片的唯一标识 (人脸检测face_token有效期为60min)
        "location": {//人脸在图片中的位置
          "left": 117,//人脸区域离左边界的距离
          "top": 131,//人脸区域离上边界的距离
          "width": 172,//人脸区域的宽度
          "height": 170,//人脸区域的高度
          "rotation": 4 //人脸框相对于竖直方向的顺时针旋转角,[-180,180]
        },
        "spoofing":"",//判断图片是合成图的概率
        "face_probability": 1,//人脸置信度,范围【0~1】,代表这是一张人脸的概率,0最小、1最大。其中返回0或1时,数据类型为Integer
        "angle" :{//人脸旋转角度参数
          "yaw" : -0.34859421849251,//三维旋转之左右旋转角[-90(左), 90(右)]
          "pitch": 1.9135693311691,//三维旋转之俯仰角度[-90(上), 90(下)]
          "roll" :2.3033397197723 //平面内旋转角[-180(逆时针), 180(顺时针)]
        },
        "landmark": [ //4个关键点位置,左眼中心、右眼中心、鼻尖、嘴中心。face_field包含landmark时返回
          {
            "x": 161.74819946289,
            "y": 163.30244445801
          }
        ],
        "landmark72": [ //     72个特征点位置 face_field包含landmark时返回
          {
            "x": 115.86531066895,
            "y": 170.0546875
          }
        ],
        "age": 29.298097610474,//年龄 ,当face_field包含age时返回
        "expression": { //表情,当 face_field包含expression时返回
          "type": "smile", //none:不笑;smile:微笑;laugh:大笑
          "probability" : 0.5543018579483 //表情置信度,范围【0~1】,0最小、1最大
        },
        "gender": { //性别,face_field包含gender时返回
          "type": "male", //male:男性 female:女性
          "probability": 0.99979132413864 //性别置信度,范围【0~1】,0代表概率最小、1代表最大
        },
        "glasses": { //是否带眼镜,face_field包含glasses时返回
          "type": "sun", //none:无眼镜,common:普通眼镜,sun:墨镜
          "probability": 0.99999964237213 //眼镜置信度,范围【0~1】,0代表概率最小、1代表最大。
        },

        "face_shape": { //脸型,当face_field包含face_shape时返回
          "type": "triangle", //square: 正方形 triangle:三角形 oval: 椭圆 heart: 心形 round: 圆形
          "probability": 0.5543018579483 //置信度,范围【0~1】,代表这是人脸形状判断正确的概率,0最小、1最大。
        },
        "quality": {//人脸质量信息。face_field包含quality时返回
          "occlusion": { //人脸各部分遮挡的概率,范围[0~1],0表示完整,1表示不完整
            "left_eye": 0,//左眼遮挡比例,[0-1] ,1表示完全遮挡
            "right_eye": 0,//右眼遮挡比例,[0-1] , 1表示完全遮挡
            "nose": 0,//鼻子遮挡比例,[0-1] , 1表示完全遮挡
            "mouth": 0,//嘴巴遮挡比例,[0-1] , 1表示完全遮挡
            "left_cheek": 0.0064102564938366,//左脸颊遮挡比例,[0-1] , 1表示完全遮挡
            "right_cheek": 0.0057411273010075,//右脸颊遮挡比例,[0-1] , 1表示完全遮挡
            "chin_contour": 0 //下巴遮挡比例,,[0-1] , 1表示完全遮挡
          },
          "blur": 1.1886881756684e-10,//   人脸模糊程度,范围[0~1],0表示清晰,1表示模糊
          "illumination": 141,//取值范围在[0~255], 表示脸部区域的光照程度 越大表示光照越好
          "completeness": 1, //人脸完整度,0或1, 0为人脸溢出图像边界,1为人脸都在图像边界内
          "livemapscore": 1 //单张图片的活体得分范围[0~1], liveness_control包含NORMAL时返回
        }
      }
    ]
  }
}
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。