jdFace

来自于:官方

detectActive detectSilent cancleActive cancleSilent

概述

jdFace 封装了金蝶人脸识别sdk,可指定动作,指定动作顺序进行活体检测。

使用此模块之前建议先配置 config.xml 文件,配置完毕,需通过云端编译生效,配置方法如下:

  • 名称:jdFace
  • 参数:apiKey、apiSecret
  • 配置示例:
  1. <feature name="jdFace">
  2. <param name="apiKey" value="" />
  3. <param name="apiSecret" value="" />
  4. </feature>
  • 字段描述:

apiKey:(必须配置)金蝶平台API_KEY

apiSecret:(必须配置)金蝶平台API_SECRET

android编译说明

  • 使用升级环境编译
  • 最低版本支持到4.4以上

detectActive

进行交互活体检测

detectActive({params}, callback(ret, err))

params

actions:

  • 类型:JSON数组
  • 描述:活体检测动作以及排序,数组内item必须为取值范围内容
  • 取值范围:0/眨眼、1/张嘴、2/点头、3/摇头
  • 例:‘[0,1,2,3]’

complexity:

  • 类型:数字类型
  • 描述:活体检测困难程度(可选)
  • 取值范围:1/简单、2/正常、3/困难、4/非常困难
  • 默认:2

voice:

  • 类型:布尔类型
  • 描述:声音提示;true/开启声音提示,false/关闭声音提示(可选)
  • 默认:true

immersion:

  • 类型:布尔类型
  • 描述:设置页面沉浸式;true/沉浸式,false/非沉浸式(可选)(仅Android支持)
  • 默认:false

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: true, //布尔型;是否判断成功
  3. images:[] //JSON数组;检测成功后活体验证的图片
  4. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. errorCode:0 //数字类型;错误码
  3. msg:'' //错误信息
  4. }

错误码参考 0:未知错误 1:取消 2:缺少权限 3:相机打开错误 4:检测超时 5:授权文件不存在 6:未通过授权验证 7:授权文件过期 8:绑定包名错误 9:活体检测失败 10:动作幅度太大,请保持人脸在屏幕中央 11:面部遮挡 12:网络超时 13:API_KEY错误 14:服务器访问错误 15:参数不合法

示例代码

  1. var jdFace= api.require('jdFace');
  2. jdFace.detectActive(function(ret, err) {
  3. });

可用性

Android系统,IOS系统

可提供的1.0.0及更高版本

detectSilent

进行静默活体检测

detectSilent({params}, callback(ret, err))

params

duration:

  • 类型:数字类型
  • 描述:最短检测时常;建议至少为1s, 0表示无最小时间限制,不得小于0(可选)
  • 单位:秒(s)
  • 默认:3

frames:

  • 类型:数字类型
  • 描述:最少检测贞数;0表示无最小帧数限制,不得小于0(可选)
  • 默认:4

timeOut:

  • 类型:数字类型
  • 描述:设置超时时间;等于0时为不超时,大于0时为设置的值,不得小于0(可选)
    • 单位:秒(s)
  • 默认:10

farRate:

  • 类型:小数类型
  • 描述:人脸高度/宽度占图像短边的比例;参数设置越靠近0,代表人脸距离屏幕越远,如果设置为0,则无过远提示。(可选)
  • 取值范围:[0.0~1.0]
  • 默认:0.4

closeRate:

  • 类型:小数类型
  • 描述:人脸高度/宽度占图像短边的比例;参数设置越靠近1,代表人脸距离屏幕越近,如果设置为0,则无过近提示。(可选)
  • 取值范围:[0.0~1.0]
  • 默认:0.8

immersion:

  • 类型:布尔类型
  • 描述:设置页面沉浸式;true/沉浸式,false/非沉浸式(可选)(仅Android支持)
  • 默认:false

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: true, //布尔型;是否判断成功
  3. images:[], //JSON数组;检测成功后活体验证的图片
  4. id:'', //活体检测加密文件id
  5. requestId:'', //网络请求id
  6. faceRect:{ //检测图片中人脸框位置
  7. left: //人脸左边框坐标
  8. top: //人脸上边框坐标
  9. right: //人脸右边框坐标
  10. bottom: //人脸下边框坐标
  11. }
  12. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. errorCode:0 //数字类型;错误码
  3. msg:'' //错误信息
  4. }

错误码参考 0:未知错误 1:取消 2:缺少权限 3:相机打开错误 4:检测超时 5:授权文件不存在 6:未通过授权验证 7:授权文件过期 8:绑定包名错误 9:活体检测失败 10:动作幅度太大,请保持人脸在屏幕中央 11:面部遮挡 12:网络超时 13:API_KEY错误 14:服务器访问错误 15:参数不合法

示例代码

  1. var jdFace= api.require('jdFace');
  2. jdFace.detectSilent(function(ret, err) {
  3. });

可用性

Android系统,IOS系统

可提供的1.0.0及更高版本

cancleActive

取消交互活体检测

cancleActive({params}, callback(ret, err))

params

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: true, //布尔型;是否取消成功
  3. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. msg:'' //错误信息
  3. }

示例代码

  1. var jdFace= api.require('jdFace');
  2. jdFace.cancleActive(function(ret, err) {
  3. });

可用性

Android系统,IOS系统

可提供的1.0.0及更高版本

cancleSilent

取消静默活体检测

cancleSilent({params}, callback(ret, err))

params

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: true, //布尔型;是否取消成功
  3. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. msg:'' //错误信息
  3. }

示例代码

  1. var jdFace= api.require('jdFace');
  2. jdFace.cancleSilent(function(ret, err) {
  3. });

可用性

Android系统,IOS系统

可提供的1.0.0及更高版本