zyBaiduFace

来自于:勇可可立即使用

论坛示例

为帮助用户更好更快的使用模块,论坛维护了一个示例,示例中包含示例代码供您参考。

概述

简介

zyBaiduFace封装了百度人脸识别离线采集SDK。

IOS SDK版本为v3.3.0,云编译最低版本为9.0,Android SDK版本为v3.3.0,云编译最低版本为4.0.3。

使用之前须从百度开放平台申请开发者账号并完成企业认证,获取 LicenseID和 LicenseFileName。

百度开发平台控制台

制作所需自定义模块文档

config中需配置申请到的apiKey和secretKey也可以init中配置 二者必选其一

<feature name="zyBaiduFace">
  <param name="apiKey" value="*"/>
  <param name="secretKey" value="*"/>
</feature>

模块接口

init

初始化模块,使用模块前必须调用

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

params

licenseID:

  • 类型:字符串
  • 描述:(必项)百度离线采集sdk中申请到的授权信息 License ID

licenseFileName:

  • 类型:字符串
  • 描述:(必项)百度离线采集sdk中申请到的授权信息 license FileName

groupID:

  • 类型:字符串
  • 描述:(必项)人脸库组名

apiKey:

  • 类型:字符串
  • 描述:(选项)百度人脸识别应用apiKey 在config中填写之后此处可不填

secretKey:

  • 类型:字符串
  • 描述:(选项)百度人脸识别应用secretKey 在config中填写之后此处可不填

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
  status:true,    //布尔型 返回true false
  "result":"",    //object 成功返回 AccessToken
}

示例代码

var zyBaiduFace = api.require('zyBaiduFace');
var param = {
  "licenseID":api.systemType=="ios"?'xx-face-ios':'xx-face-android',
  "licenseFileName":api.systemType=="ios"?'idl-license.face-ios':'idl-license.face-android',
  "groupID":"moduleTest",
  "apiKey":"x",
  "secretKey":"x",
};
zyBaiduFace.init(param, function(ret, err){
 alert(JSON.stringify(ret));
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

open

打开人脸识别

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

params

group_id_list:

  • 类型:字符串
  • 描述:(选项)(选填)从指定的group中进行查找 用逗号分隔,上限10个 不传时是init中的groupid

quality_control:

  • 类型:字符串
  • 描述:(选填)图片质量控制 NONE: 不进行控制、LOW:较低的质量要求、NORMAL: 一般的质量要求、HIGH: 较高的质量要求,默认 NORMAL,若图片质量不满足要求,则返回结果中会提示质量检测失败

liveness_control:

  • 类型:字符串
  • 描述:(选填)活体检测控制 NONE: 不进行控制、LOW:较低的质量要求、NORMAL: 一般的质量要求、HIGH: 较高的质量要求,默认 NORMAL,若图片质量不满足要求,则返回结果中会提示质量检测失败

user_id:

  • 类型:字符串
  • 描述:(选填)当需要对特定用户进行比对时,指定user_id进行比对。即人脸认证功能。

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
  status:true,    //布尔型 返回true false
  "result":"",    //object 成功返回 用户信息
}

示例代码

var zyBaiduFace = api.require('zyBaiduFace');
zyBaiduFace.open({}, function(ret, err){
  alert(JSON.stringify(ret));
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

getPic

识别得到一张图片 地址

getPic({params},callback(ret))

params

filePath:

  • 类型:字符型
  • 描述:(选填)传入自定义路径 将保存到 你的路径 支持fs 不支持widget 不传保存到默认路径

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
  status:true,    //布尔型 返回true false
  "result":"",    //字符串 成功返回图片地址
}

示例代码

var zyBaiduFace = api.require('zyBaiduFace');
var param = {
 filePath:"fs://1.jpg",
};
zyBaiduFace.getPic(param, function(ret, err){
 alert(JSON.stringify(ret));
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

pictureToBase64

将地址图片转换成base64

pictureToBase64({params},callback(ret))

params

filePath:

  • 类型:字符型
  • 描述:(必填)图片路径 支持fs widget 等本地路径 转换之后 字符串较大 请不要使用alert 免得app卡死

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
  status:true,    //布尔型 返回true false
  "result":"",    //字符串 成功返回图片base64
}

示例代码

var zyBaiduFace = api.require('zyBaiduFace');
var param = {
 filePath:"fs://1.jpg",
};
zyBaiduFace.pictureToBase64(param, function(ret, err){
 console.log(JSON.stringify(ret));
 alert(ret.status);
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

register

注册到人脸库

register({params},callback(ret))

params

user_id:

  • 类型:字符型
  • 描述:(必填)用户id(由数字、字母、下划线组成),长度限制128B

name:

  • 类型:字符型
  • 描述:(必填)用户名,长度限制256B

filePath:

  • 类型:字符型
  • 描述:(必填)从获取图片取到的 或者自已其它地方的图片路径 支持fs widget 等本地路径

group_id:

  • 类型:字符型
  • 描述:(选填)用户组id,标识一组用户(由数字、字母、下划线组成 不传时是init中的groupid

quality_control:

  • 类型:字符型
  • 描述:(选填)图片质量控制 NONE: 不进行控制、LOW:较低的质量要求、NORMAL: 一般的质量要求、HIGH: 较高的质量要求,默认 NORMAL,若图片质量不满足要求,则返回结果中会提示质量检测失败

liveness_control:

  • 类型:字符型
  • 描述:(选填)活体检测控制 NONE: 不进行控制、LOW:较低的质量要求、NORMAL: 一般的质量要求、HIGH: 较高的质量要求,默认 NORMAL,若图片质量不满足要求,则返回结果中会提示质量检测失败

action_type:

  • 类型:字符型
  • 描述:(选填) 操作方式 APPEND 新注册的图片默认会追加到该user_id下 REPLACE 当对此user_id重复注册时,则会用新图替换库中该user_id下所有图片

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
  status:true,    //布尔型 返回true false
  "result":"",    //object 成功返回 用户信息
}

示例代码

var zyBaiduFace = api.require('zyBaiduFace');
var param = {
 "user_id":userid,
 "name":name,
 "filePath":filePath
 //"group_id":"",
"quality_control":"NORMAL",
 "liveness_control":"NORMAL",
 "action_type":"REPLACE"
};
zyBaiduFace.register(param, function(ret, err){
 alert(JSON.stringify(ret));
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

faceLive

动作检测采集图像

faceLive({params},callback(ret))

params

isLivenessRandom:

  • 类型:布尔型
  • 描述:(选填)是否随机 检测动作 默认false

7个动作 请最少选择一种 不然就是7种按顺序执行

eye:

  • 类型:布尔型
  • 描述:(选填)动作 眨眨眼

mouth:

  • 类型:布尔型
  • 描述:(选填)动作 张张嘴

head_up:

  • 类型:布尔型
  • 描述:(选填)动作 缓慢抬头

head_down:

  • 类型:布尔型
  • 描述:(选填)动作 缓慢低头

head_left:

  • 类型:布尔型
  • 描述:(选填)动作 向左缓慢转头

head_right:

  • 类型:布尔型
  • 描述:(选填)向右缓慢转头

left_right:

  • 类型:布尔型
  • 描述:(选填)摇摇头

isSound:

  • 类型:布尔型
  • 描述:(选填)默认是否开启提示音 默认true

filePath:

  • 类型:字符串
  • 描述:(选填)传入自定义路径 将保存到 你的路径下面 支持fs 不支持widget 不传保存到默认路径 请不要填文件名 这是里文件夹路径

base64:

  • 类型:布尔型
  • 描述:(选填)是否返回base64 传true就返回base64 不传或者false 就是文件路径

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
  status:true,    //布尔型 返回true false
  result:{}    //object 成功返回各种类型图片
            //bestimage0: 无动作图片(默认有) 
            //headup  缓慢抬头
            //headleftorright  摇摇头
            //headright 向右缓慢转头
            //mouth 张张嘴
            //headdown 缓慢低头
            //headleft 向左缓慢转头
            //eye 眨眨眼
}

示例代码

var zyBaiduFace = api.require('zyBaiduFace');
var param = {
    "isLivenessRandom":true,//是否随机 检测动作  默认false
    "eye":true,//动作 眨眨眼    7个动作 请最少选择一种 不然就是7种按顺序执行
    "mouth":true,//动作 张张嘴
    "head_up":false,//动作 缓慢抬头
    "head_down":false,//动作 缓慢低头
    "head_left":false,//动作 向左缓慢转头
    "head_right":false,//动作 向右缓慢转头
    "left_right":false,//动作 摇摇头
    "isSound":true,//默认是否有提示音 默认true
    "filePath":"",//(选填)传入自定义路径  将保存到 你的路径下面 支持fs 不支持widget 不传保存到默认路径 请不要填文件名 这是里文件夹路径
    "base64":false//是否返回base64 传true就返回base64  不传或者false 就是文件路径
};
zyBaiduFace.faceLive(param,function(ret, err){// ret.result.  bestimage0原始图片可存下来  headup  headleftorright headright mouth headdown headleft eye
    alert(JSON.stringify(ret));
});

可用性

iOS系统,Android系统

可提供的1.0.1及更高版本

faceDetect

静态检测采集图像(带提示音) getPic是不带提示音的

faceDetect({params},callback(ret))

params

isSound:

  • 类型:布尔型
  • 描述:(选填)默认是否开启提示音 默认true

filePath:

  • 类型:字符串
  • 描述:(选填)传入自定义路径 将保存到 你的路径下面 支持fs 不支持widget 不传保存到默认路径

base64:

  • 类型:布尔型
  • 描述:(选填)是否返回base64 传true就返回base64 不传或者false 就是文件路径

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
  status:true,    //布尔型 返回true false
  result:""    //字符串 正确返回图片地址 或base64
}

示例代码

var zyBaiduFace = api.require('zyBaiduFace');
var param = {
    //filePath:"fs://1.jpg",//(选填)传入自定义路径  将保存到 你的路径下面 支持fs 不支持widget 不传保存到默认路径
    "isSound":true,//默认是否有提示音 默认true
    "base64":false//是否返回base64 传true就返回base64  不传或者false 就是文件路径  base64显示在界面上就是   img.src = 'data:image/png;base64,'+ ret.result;
};
zyBaiduFace.faceDetect(param,function(ret, err){
    alert(JSON.stringify(ret));
    if(ret.status){
        //filePath = "data:image/png;base64,"+ret.result;
        filePath = ret.result;
    }
});

可用性

iOS系统,Android系统

可提供的1.0.1及更高版本

login

手动检测识别

login({params},callback(ret))

params

filePath:

  • 类型:字符串
  • 描述:(必填)(必填)从(getPic、faceLive、faceDetect 获取的图片路径 不能base64)或者自已其它地方的图片路径 支持fs widget 等本地路径

group_id_list:

  • 类型:字符串
  • 描述:(选项)(选填)从指定的group中进行查找 用逗号分隔,上限10个 不传时是init中的groupid

quality_control:

  • 类型:字符串
  • 描述:(选填)图片质量控制 NONE: 不进行控制、LOW:较低的质量要求、NORMAL: 一般的质量要求、HIGH: 较高的质量要求,默认 NORMAL,若图片质量不满足要求,则返回结果中会提示质量检测失败

liveness_control:

  • 类型:字符串
  • 描述:(选填)活体检测控制 NONE: 不进行控制、LOW:较低的质量要求、NORMAL: 一般的质量要求、HIGH: 较高的质量要求,默认 NORMAL,若图片质量不满足要求,则返回结果中会提示质量检测失败

user_id:

  • 类型:字符串
  • 描述:(选填)当需要对特定用户进行比对时,指定user_id进行比对。即人脸认证功能。

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
  status:true,    //布尔型 返回true false
  "result":{},    //object 成功返回 用户信息
}

示例代码

var zyBaiduFace = api.require('zyBaiduFace');
var param = {
    "filePath":filePath,
//    "group_id":"moduleTest",
    "quality_control":"NORMAL",
    "liveness_control":"NORMAL",
};
zyBaiduFace.login(param, function(ret, err){
    alert(JSON.stringify(ret));
});

可用性

iOS系统,Android系统

可提供的1.0.1及更高版本