文档首页 > > API参考> 人脸识别API(V1)> 活体检测

活体检测

分享
更新时间: 2020/03/12 GMT+08:00

功能介绍

活体检测的功能是通过判断视频中的人物动作与传入动作列表是否一致来识别视频中人物是否为活体。如果有多张人脸出现,则选取最大的人脸进行判定。

约束限制:

  • 目前支持检测视频文件,或视频的Base64编码,不支持直接检测视频流,需要用户客户端自己获取视频流并保存成文件,然后调用活体检测接口。
  • 视频文件大小不超过8MB,建议客户端压缩到200KB~2MB
  • application/json请求的body中,请使用标准Json格式。
  • Base64编码中请勿使用回车换行。
  • 系统不保存用户视频。
  • 具体的约束限制信息请参见约束限制章节。

建议:

  • 建议帧率10fps~30fps
  • 视频文件的大小建议客户端压缩到200KB~2MB

URI

  • URI格式
    POST /v1/{project_id}/live-detect
  • 参数说明

    参数名

    参数类型

    是否必选

    说明

    project_id

    String

    项目ID,获取方法请参见获取项目ID/账号名/AK/SK

请求消息

表1 请求参数

参数名

是否必选

参数类型

说明

video_url

与video_file、video_base64三选一

String

视频的URL路径,目前仅支持华为云上OBS的URL,且人脸识别服务有权限读取该OBS桶的数据。开通读取权限的操作请参见 服务授权。视频要求:
  • 视频Base64编码后大小不超过8MB。
  • 限制视频时长1~15秒。
  • 建议帧率10fps~30fps。
  • 封装格式:mp4、avi、flv、webm、asf、mov。
  • 视频编码格式: h261、h263、h264、hevc、vc1、vp8、vp9、wmv3。

video_file

与video_url、video_base64三选一

File

本地视频文件。上传文件时,请求格式为multipart。视频要求:
  • 视频文件大小不超过8MB,建议客户端压缩到200KB~2MB
  • 限制视频时长1~15秒。
  • 建议帧率10fps~30fps。
  • 封装格式:mp4、avi、flv、webm、asf、mov。
  • 视频编码格式: h261、h263、h264、hevc、vc1、vp8、vp9、wmv3。

video_base64

与video_file、video_url三选一

String

视频数据,Base64编码,要求:
  • Base64编码后大小不超过8MB,建议客户端压缩到200KB~2MB
  • 限制视频时长1~15秒。
  • 建议帧率10fps~30fps。
  • 封装格式:mp4、avi、flv、webm、asf、mov。
  • 视频编码格式: h261、h263、h264、hevc、vc1、vp8、vp9、wmv3。

actions

String

动作代码顺序列表,英文逗号(,)分隔。建议单动作,目前支持的动作有:
  • 1:左摇头
  • 2:右摇头
  • 3:点头
  • 4:嘴部动作

action_time

String

该参数为动作时间数组拼接的字符串,数组的长度和actions的数量一致,每一项代表了对应次序动作的起始时间和结束时间,单位为距视频开始的毫秒数。

响应消息

表2 响应参数

参数名

参数类型

说明

video-result

Object

活体检测结果,VideoDetectResult结构见VideoDetectResult

调用失败时无此字段。

warning-list

Object

警告信息列表。WarningList结构见WarningList

调用失败时无此字段。

error_code

String

调用失败时的错误码,具体请参考错误码

调用成功时无此字段。

error_msg

String

调用失败时的错误信息。

调用成功时无此字段。

示例

  • 请求样例(方式一:使用视频的BASE64编码)
    POST https://{endpoint}/v1/{project_id}/live-detect
     Request Header: 
     Content-Type: application/json 
     X-Auth-Token: MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDT... 
      
     Request Body: 
     { 
        "video_base64":"/9j/4AAQSkZJRgABAgEASABIAAD", 
        "actions":"1,3,2",
        "action_time":"1000-3000,4000-7000,9000-12000"
     }
  • 请求样例(方式二:使用视频文件)
    POST https://{endpoint}/v1/{project_id}/live-detect
     Request Header: 
     X-Auth-Token: MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDT... 
      
     Request Body: 
     video_file: File(视频文件) 
     actions: 1,3,2
     action_time: 1000-3000,4000-7000,9000-12000
  • 请求样例(方式三:使用视频url)
    POST https://{endpoint}/v1/{project_id}/live-detect
     Request Header: 
     Content-Type: application/json 
     X-Auth-Token: MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDT... 
      
     Request Body: 
     { 
        "video_url":"/BucketName/ObjectName", 
        "actions":"1,3,2",
        "action_time":"1000-3000,4000-7000,9000-12000"
     }
  • 响应样例
    {
      "video-result": {
        "alive": true,
        "actions": [{
            "action": 1,
            "confidence": 0.823
          },{
            "action": 3,
            "confidence": 0.823
          },{
            "action": 2,
            "confidence": 0.823
          }],
        "picture": "/9j/4AAQSkZJRgABAQEAYABgAAD/2w..."
      },
      "warning-list": []
    }
  • 失败响应样例
    { 
       "error_code": "FRS.0701", 
       "error_msg": "Parse video data failed." 
     }

状态码

状态码请参见状态码

错误码

错误码请参见错误码

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

跳转到云社区