人脸静默活体(FaceLiveness)指通过API接口传入提前获取的人脸图片进行真实人脸检测的服务,算法主要识别人脸是否为屏幕翻拍、打印图片此类基础呈现活体攻击的类型 。该服务适用于低风险业务场景或配合离线人脸识别SDK使用。若您的业务对真实人脸安全要求较高,推荐您集成App或者WebSDK模式。
接口说明
接口名:FaceLiveness
请求方法:HTTPS POST
接口说明:调用FaceLiveness接口对人脸图片进行活体检测。
QPS限量:API独享QPS限量,详情请参见ID Verification服务端API QPS限量说明。
服务地址:
说明内网访问优势:内网指阿里云同一地域内各产品间的私有通信网络。若您的业务服务器部署于阿里云对应地域,请使用内网域名访问 ID Verification 服务,以获得更安全、稳定的通信质量。
海外访问优化建议:海外网络环境复杂,建议参考服务端网络耗时分析与优化,优化集成方案,降低网络延迟及请求失败概率。
中国香港
公网:
cloudauth-intl.cn-hongkong.aliyuncs.com内网:
cloudauth-intl-vpc.cn-hongkong.aliyuncs.com
在线调试和集成
在调试和集成前,请确保您已完整阅读使用OpenAPI调试和集成服务端API文档,充分了解API接口在OpenAPI平台的调用方式和SDK及其代码的获取方式。
您可以在OpenAPI Explorer中直接运行本接口进行调试,并生成本接口的SDK代码示例。
传入图片格式要求
图片格式:JPG、JPEG、PNG。
图片大小:推荐50~100 KB,最大不超过1 MB。
图片分辨率:不超过1920*1080(高*宽),至少为640*480(高*宽),推荐短边缩放到720像素,压缩率大于0.9。照片高大于宽,如果传入的照片宽大于高,可能会影响检测效果。
说明图片转base64格式后,通常会导致数据体积增加。如您需要使用base64格式传参,请保证原始图片的体积不超过0.6MB,以满足1MB的最大数据传输限制。
图片质量建议:
人脸面部需要完整清晰无遮挡,正对摄像头,推荐通过前置摄像头采集的人脸图片。
人脸大小占比图片中面积需要>60%,若人脸较小会影响检测的准确性。
若图片中存在多个人脸,算法默认截取较大的人脸,建议避免传入多人脸图片。
请求参数
照片传入提供两种方式,任选其一即可。
FacePictureBase64
FacePictureUrl
名称 | 类型 | 是否必选 | 描述 | 示例值 |
ProductCode | String | 是 | 要接入的产品方案。取值FACE_LIVENESS_MIN:使用人脸静默活体API。 | FACE_LIVENESS_MIN |
SceneCode | String | 否 | 您自定义的认证场景ID,用于后续控制台输入此场景ID查询相关记录使用。支持长度为10位的字母、数字或下划线的组合。 | 1234567890 |
MerchantBizId | String | 是 | 您自定义的业务唯一标识,用于后续定位排查问题使用。支持长度为32位的字母和数字的组合,请确保唯一。 说明 阿里云服务器不会对该字段的值进行唯一性检查。为了更好地跟踪,强烈建议保证字段唯一性。 | e0c34a77f5ac40a5aa5e6ed20c35**** |
MerchantUserId | String | 是 | 您自定义的用户ID,或者其他可以识别特定用户的标识,例如:手机号码、邮箱地址等。强烈建议对该字段的值进行预先脱敏,例如对值进行哈希处理。 | 123456789 |
FacePictureBase64 | String | 是 | 照片Base64编码。如果您选择FacePictureBase64(照片Base64编码)方式传入人脸照片,请注意检查照片大小,不要传入过大的照片。 | base64 |
FacePictureUrl | String | 是 | 人像地址,公网可访问的HTTP、HTTPS链接。 | https://*** |
FaceQuality | String | 否 | 是否返回人脸质量分数,默认不返回。
| F |
Crop | String | 否 | 是否允许裁剪人脸图片,默认不允许。
| F |
Occlusion | String | 否 | 是否开启遮挡检测功能,默认不开启。
| F |
返回数据
名称 | 类型 | 描述 | 示例值 | |
HTTP Status Code | Integer | HTTP状态码。 | 200 | |
HTTP Body | RequestId | String | 请求ID。 | 130A2C10-B9EE-4D84-88E3-5384FF0**** |
Result.TransactionId | String | 整个认证流程的唯一标识。 | hksb7ba1b28130d24e015d694361**** | |
Code | String | Success | ||
Message | String | 返回Code的详细描述。 | Success | |
Result.Passed | String | 认证结果,取值:
| Y | |
Result.SubCode | String | 认证结果描述。更多信息,请参见ResultObject.SubCode错误码说明。 | 200 | |
Result.ExtFaceInfo | String | 静默活体检测相关结果信息。关于JSON格式,请参见右侧示例。更多信息,请参见ExtFaceInfo。 | | |
返回Code
HTTP状态码 | Code | Message说明 |
200 | Success | 请求成功。 |
400 | MissingParameter | 参数不能为空。 |
InvalidParameter | 非法参数。 | |
401 | UnqualifiedPhoto | 传入的图片不可读,或图片分辨率不符合要求,建议更换图片。 需确保照片清晰、曝光正常,完整无遮挡,角度无太大偏差。 |
DataDuplication | 同时传入Base64编码的图片和Url图片地址,此二参数任选其一即可。 | |
ToolargeImage | 图片尺寸过大,建议压缩图片或更换图片上传方式。 | |
DownloadTimeout | URL图片下载超时。 | |
NoFaceDetected | 传入图片无人脸。 | |
403 | Forbidden.RAMUserAccessDenied | 需要给RAM用户授予 AliyunAntCloudAuthFullAccess 操作权限。更多信息,请参见授权RAM用户访问服务。 |
Forbidden.AccountAccessDenied | 确保您开通了ID verifycation,并且保证账户未欠费。 | |
Throttling.Api | API限流拦截。 | |
500 | InternalError | 系统内部错误,请反馈给工程师排查。 |
503 | ServiceUnavailable | 服务不可用,请反馈工程师排查。 |
ResultObject.SubCode错误码说明
错误码 | 是否计费 | 描述和原因建议 |
200 | 是 | 认证通过。 |
205 | 是 | 活体检测存在风险。 |
ExtFaceInfo
名称 | 类型 | 描述 | 示例值 |
faceQualityScore | Double | 可选。活体人脸质量分数。比对分取值范围0~100。 | 88.62 |
occlusionResult | String | 可选。是否有脸部遮挡,有脸部遮挡为Y,否则为N。 | N |
faceAttack | String | 采集人脸是否涉及活体攻击,攻击为Y,否则为N。 | N |
faceAge | String | 人脸预测的参考年龄,可能存在预测失败无结果值的情况。 | 30 |
faceGender | String | 人脸图片预测的性别,可能存在预测失败无结果值的情况。
| M |