arcFacePlus

论坛示例

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

插件概述

封装的虹软人脸检测sdk,将信息注册到本地,打开摄像头返回检测到的结果。

插件使用攻略

  1. 获取软虹授权信息后,config.xml(可选)配置信息如下:
<feature name="arcFacePlus"> 
    <param name="activeKey" value=""/> 
    <param name="appId" value=""/>  
    <param name="sdkKey" value=""/> 
  </feature>
  1. 需要相机、存储、获取手机号码|IMEI权限
api.requestPermission({
    list: ['camera', 'storage', 'phone-r'],
}, function(ret, err) {
    api.alert({
        msg: JSON.stringify(ret)
    });
});

接口

active

在线激活引擎

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

params

activeKey:

  • 类型:字符串
  • 描述:(可选项) 这里不填则config.xml必填。

appId:

  • 类型:字符串
  • 描述:(可选项) 这里不填则config.xml必填。

sdkKey:

  • 类型:字符串
  • 描述:(可选项) 这里不填则config.xml必填。

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   //布尔型;true||false
}

err:

  • 类型:JSON对象
  • 内部字段:
{
    code: -1, //错误码
    msg : '' //错误描述信息
}

示例代码

var obj = api.require('arcFacePlus');
obj.active(function(ret, err) {
    api.alert({msg: JSON.stringify(ret)});
});

可用性

Android系统

可提供的1.0.0及更高版本

activeFile

离线激活引擎

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

params

filePath:

  • 类型:字符串
  • 描述:(可选项) 离线授权文件路径(支持fs://)

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   //布尔型;true||false
}

err:

  • 类型:JSON对象
  • 内部字段:
{
    code: -1, //错误码
    msg : '' //错误描述信息
}

示例代码

var obj = api.require('arcFacePlus');
obj.activeFile(function(ret, err) {
    api.alert({msg: JSON.stringify(ret)});
});

可用性

Android系统

可提供的1.0.0及更高版本

isActivated

是否激活引擎

isActivated()

##ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   //布尔型;true||false
}

示例代码

var obj = api.require('arcFacePlus');
var ret = obj.isActivated();
api.alert({msg: JSON.stringify(ret)});

可用性

Android系统

可提供的1.0.0及更高版本

addUser

在本地注册用户

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

params

userId:

  • 类型:字符串
  • 描述:(必填项) 用户唯一的id,用来区分每个用户的相关信息和存放位置,必须保证唯一。

faceImage:

  • 类型:字符串
  • 描述:(必填项) 注册人员图片,(支持fs:// http://)。

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   //布尔型;true||false
}

err:

  • 类型:JSON对象
  • 内部字段:
{
    code: -1, //错误码
    msg : '' //错误描述信息
}

示例代码

var obj = api.require('arcFacePlus');
obj.addUser({
    userId : '12222222',
    faceImage : 'http://a06b9b3423f3cd5b8bee.qiniucdn.apicloud-system.com/apicloud/699f1793405ddd92167c6c94d005371d.jpg'
},function(ret, err) {
    api.alert({msg: JSON.stringify(ret)});
});

可用性

Android系统

可提供的1.0.0及更高版本

countUser

获取本地注册用户数

countUser(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   //布尔型;true||false
    count : 0  //
}

示例代码

var obj = api.require('arcFacePlus');
obj.countUser(function(ret, err) {
    api.alert({msg: JSON.stringify(ret)});
});

可用性

Android系统

可提供的1.0.0及更高版本

clearAllUser

清空所有本地注册用户

clearAllUser(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   //布尔型;true||false
}

示例代码

var obj = api.require('arcFacePlus');
obj.clearAllUser(function(ret, err) {
    api.alert({msg: JSON.stringify(ret)});
});

可用性

Android系统

可提供的1.0.0及更高版本

removeUser

移除指定的本地注册用户

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

params

userId:

  • 类型:字符串
  • 描述:(必填项)需要删除用户的用户id

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   //布尔型;true||false
}

err:

  • 类型:JSON对象
  • 内部字段:
{
    code: -1, //错误码
    msg : '' //错误描述信息
}

示例代码

var obj = api.require('arcFacePlus');
obj.removeUser({
    userId : '12222222'
},function(ret, err) {
    api.alert({msg: JSON.stringify(ret)});
});

可用性

Android系统

可提供的1.0.0及更高版本

getUser

获取指定的本地注册用户信息

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

params

userId:

  • 类型:字符串
  • 描述:(必填项)需要查询用户信息的用户id

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   //布尔型;true||false
    id : '',     //id主键
    userId : '',   //用户id
    imagePath : '', //人脸图片
    faceFeature : '', //特征信息
    time : '',
}

err:

  • 类型:JSON对象
  • 内部字段:
{
    code: -1, //错误码
    msg : '' //错误信息
}

示例代码

var obj = api.require('arcFacePlus');
obj.getUser({
    userId : '12222222'
},function(ret, err) {
    api.alert({msg: JSON.stringify(ret)});
});

可用性

Android系统

可提供的1.0.0及更高版本

listUser

获取本地所有注册用户信息

listUser(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   //布尔型;true||false
    list : [{
    id : '',     //id主键
    userId : '',   //用户id
    imagePath : '', //人脸图片
    faceFeature : '', //特征信息
    time : '',
    }]
}

示例代码

var obj = api.require('arcFacePlus');
obj.listUser(function(ret, err) {
    api.alert({msg: JSON.stringify(ret)});
});

可用性

Android系统

可提供的1.0.0及更高版本

setFaceConfig

设置配置参数

setFaceConfig({params})

params

cameraId:

  • 类型:数字型
  • 描述:(可选项)摄像头id (0是后置摄像头,1是前置摄像头)
  • 默认值:1(前置摄像头)

rgbCameraRotation:

  • 类型:数字型
  • 描述:(可选项)可见光预览额外旋转角度 0,90,180,270
  • 默认值:0

irCameraRotation:

  • 类型:数字型
  • 描述:(可选项)红外预览额外旋转角度 0,90,180,270
  • 默认值:0

mirrorHorizontal:

  • 类型:布尔
  • 描述:(可选项)mirrorHorizontal
  • 默认值:false

mirrorVertical:

  • 类型:布尔
  • 描述:(可选项)mirrorVertical
  • 默认值:false

isMirror:

  • 类型:布尔
  • 描述:(可选项)isMirror
  • 默认值:false

isPreviewOverlay:

  • 类型:布尔
  • 描述:(可选项)相机预览是否铺满显示区域
  • 默认值:false

rotate:

  • 类型:数字型
  • 描述:(可选项)人脸优先检测方向 ( 0: 90度,1:180度,3:270度,4:360度)
  • 默认值:3

rotation:

  • 类型:数字型
  • 描述:(可选项)旋转角度ID (0:0度,1:90度,3:180度,4:270度)
  • 默认值:1

maxDetectFaceNum:

  • 类型:数字型
  • 描述:(可选项)maxDetectFaceNum
  • 默认值:1

similarThreshold:

  • 类型:浮点型
  • 描述:(可选项)识别阈值
  • 默认值:0.8

rgbThreshold:

  • 类型:浮点型
  • 描述:(可选项)可见光活体检测阈值
  • 默认值:0.75

irThreshold:

  • 类型:浮点型
  • 描述:(可选项)红外活体检测阈值
  • 默认值:0.7

fqThreshold:

  • 类型:浮点型
  • 描述:(可选项)活体 FQ 检测阈值
  • 默认值:0.7

isKeepMaxFace:

  • 类型:布尔
  • 描述:(可选项)是否多人脸识别(true:单人 false:多人)
  • 默认值:true

enableLiveness:

  • 类型:布尔
  • 描述:(可选项)是否开起活体
  • 默认值:true

##ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   //布尔型;true||false
}

示例代码

var obj = api.require('arcFacePlus');
var ret = obj.setFaceConfig({
    .....
});
api.alert({msg: JSON.stringify(ret)});

可用性

Android系统

可提供的1.0.0及更高版本

openCompare

打开自定义人脸对比界面

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

params

rect:

  • 类型:JSON 对象
  • 默认值:见内部字段
  • 描述:(可选项)浏览器窗口的位置和大小,设置margin后,在不同手机上面会保持与父页面的各方向边距一致,而中间区域会自动扩充。建议使用margin布局,可以完美适配带smartBar的手机。**(注意:当fixed设置false时,margin界面布局会异常)**
  • 内部字段:
{
    x:0,             //左上角x坐标,默认0
    y:0,             //左上角y坐标,默认0
    w:320,           //宽度,默认'auto',页面从x位置开始自动充满父页面宽度
    h:480            //高度,默认'auto',页面从y位置开始自动充满父页面高度

    marginLeft:0,    //相对父页面左外边距的距离,默认0
    marginTop:0,    //相对父页面上外边距的距离,默认0
    marginBottom:0,    //相对父页面下外边距的距离,默认0
    marginRight:0    //相对父页面右外边距的距离,默认0
}

fixedOn:

  • 类型:字符串
  • 描述:(可选项)插件所属 Frame 的名字,若不传则插件归属于当前 Window

fixed:

  • 类型:布尔
  • 描述:(可选项)插件是否随所属 Window 或 Frame 滚动
  • 默认值:true(不随之滚动)

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   //布尔型;true||false
}

err:

  • 类型:JSON对象
  • 内部字段:
{
    code: -1, //错误码
    msg : '' //错误信息
}

示例代码

var demo = api.require('arcFacePlus');
demo.openCompare({
    rect: {
        marginTop:45,
        marginBottom:50
    },
    fixedOn : api.frameName,
    fixed : true,
}, function(ret, err) {
    alert(JSON.stringify(ret)+"  "+JSON.stringify(err));
});

可用性

Android系统

可提供的1.0.0及更高版本

hideCompare

隐藏相机预览界面

hideCompare(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true   //布尔型;true||false
}

示例代码

var demo = api.require('arcFacePlus');
demo.hideCompare(function(ret, err) {
    api.alert({msg: JSON.stringify(ret)});
});

可用性

Android系统

可提供的1.0.0及更高版本

showCompare

显示相机预览界面

showCompare(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true   //布尔型;true||false
}

示例代码

var demo = api.require('arcFacePlus');
demo.showCompare(function(ret, err) {
    api.alert({msg: JSON.stringify(ret)});
});

可用性

Android系统

可提供的1.0.0及更高版本

closeCompare

关闭相机预览界面

closeCompare(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true   //布尔型;true||false
}

示例代码

var demo = api.require('arcFacePlus');
demo.closeCompare(function(ret, err) {
    api.alert({msg: JSON.stringify(ret)});
});

可用性

Android系统

可提供的1.0.0及更高版本

takePhoto

抓拍图片

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

params

qualityValue :

  • 类型: 数字型
  • 描述:(可选项)所拍照片质量 (1-100)
  • 默认值:100

path :

  • 类型: 字符串型
  • 描述:(可选项)图片保存路径,要求本地路径(fs://)
  • 默认值:fs://

album :

  • 类型: 布尔型
  • 描述:(可选项)拍照成功后是否将所拍图片存入系统相册
  • 默认值:false

rotateDegree :

  • 类型: 数字型
  • 描述:(可选项)处理图片旋转角度 (0,90,180,270)
  • 默认值:270

format :

  • 类型: 字符串型
  • 描述:(可选项)图片类型(jpeg png)
  • 默认值:jpeg

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   //布尔型;true||false
    imagePath : '' //照片路径
}

示例代码

var obj = api.require('arcFacePlus');
obj.takePhoto(function(ret, err) {
    api.alert({msg: JSON.stringify(ret)});
});

可用性

Android系统

可提供的1.0.0及更高版本

addFacepassListener

设置人脸对比通过结果监听

addFacepassListener(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   //布尔型;true||false
    userId : '',     //用户id
    similar : 0.9123,
    evenType :'',   //INSERTED REMOVED
    index : 0,
}

示例代码

var obj = api.require('arcFacePlus');
obj.addFacepassListener(function(ret, err) {
    api.alert({msg: JSON.stringify(ret)});
});

可用性

Android系统

可提供的1.0.0及更高版本

removeFacepassListener

移除人脸对比通过结果监听

removeFacepassListener(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   
}

示例代码

var obj = api.require('arcFacePlus');
obj.removeFacepassListener();

可用性

Android系统

可提供的1.0.0及更高版本

switchCamera

相机切换

switchCamera(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   
}

示例代码

var obj = api.require('arcFacePlus');
obj.switchCamera();

可用性

Android系统

可提供的1.0.0及更高版本

processImage

图片本地对比识别

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

params

faceImage:

  • 类型:字符串
  • 描述:(必填项) 待识别人员图片,(支持fs:// http://)。

isKeepMaxFace:

  • 类型:布尔
  • 描述:(可选项)是否多人脸识别(true:单人 false:多人)
  • 默认值:true

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   //布尔型;true||false
    userId : '',     //用户id
    similar : 0.9123 
}

err:

  • 类型:JSON对象
  • 内部字段:
{
    'code': -1,   //错误code.  -1 活体检测值低于阀值,活体验证失败!
    //-2 未进行本地注册的用户!
    //-3 人脸识别比对失败!
    //-4 活体检测失败!
    //-5 FR验证失败!
    'msg' : '' //错误信息
}

示例代码

var obj = api.require('arcFacePlus');
obj.processImage({
    faceImage : 'http://a06b9b3423f3cd5b8bee.qiniucdn.apicloud-system.com/apicloud/699f1793405ddd92167c6c94d005371d.jpg'
},function(ret, err) {
    api.alert({msg: JSON.stringify(ret)});
});

可用性

Android系统

可提供的1.0.0及更高版本

registerUser

注册用户

registerUser(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   //布尔型;true||false
    userId : '',     //用户id
}

err:

  • 类型:JSON对象
  • 内部字段:
{
    'code': -1,
    'msg' : '' //错误信息
}

示例代码

var obj = api.require('arcFacePlus');
obj.registerUser(function(ret, err) {
    api.alert({msg: JSON.stringify(ret)});
});

可用性

Android系统

可提供的1.0.0及更高版本

getDeviceInfo

获取设备信息

getDeviceInfo()

##ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   //布尔型;true||false
    deviceInfo: '',
}

示例代码

var obj = api.require('arcFacePlus');
var ret = obj.getDeviceInfo();
api.alert({msg: JSON.stringify(ret)});

可用性

Android系统

可提供的1.0.0及更高版本

是否仍需要帮助? 请保持联络!
最后更新于 2024/11/18