更新记录
2.30(2024-09-02)
修复摄像头默认后置的bug
2.29(2024-08-16)
加入监测超时配置
2.27(2023-11-15)
修复横屏debug下 框子先是不正确的问题
查看更多平台兼容性
Android | Android CPU类型 | iOS |
---|---|---|
适用版本区间:4.4 - 14.0 | armeabi-v7a:支持,arm64-v8a:支持,x86:未测试 | 适用版本区间:11 - 17 |
原生插件通用使用流程:
- 购买插件,选择该插件绑定的项目。
- 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
- 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
- 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
- 开发完毕后正式云打包
付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios
注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择
官方文档
- SDK的授权类型分为「试用版」和「正式版」,自您申请SDK完毕后,默认为试用版,试用版存在一定的授权有效期,供您测试使用。 您可以点击申请正式版,提交即将发布的产品信息,即可获得永久免费的SDK授权。(转自官方)
百度人脸插件2.0正式发布 使用的最新百度SDK4.1
百度离线采集已停止申请新的lincense
但是!新版本的人脸实名认证的lincense 也是可以用的
但是!新版本的人脸实名认证的lincense 也是可以用的
但是!新版本的人脸实名认证的lincense 也是可以用的
从人脸实名认证申请应用并下载案例从案例中找到对应授权文件和licnese_key
Android下载体验
1.人脸区域自动裁剪几乎无黑边!
2.相机全景图同步返回!
3.最新加入口罩模式,带着口罩也可完成采集!
4.参数设置更丰富!
5.底部加入可更换修饰图片,全面屏样式更美观!
6.更新迭代更及时!发现问题及时修复!老版功能逐步优化迭代上线
点击移步新版 《人脸插件4.0》
人脸插件4.0正式发布
1.支持取景预览界面自定义
2.集成百度人脸能力
3.适配前后摄像头
4.适配横屏采集
5.适配多种 android 定制终端(不适配的需联系作者定制 QQ:37894663)
6.人脸采集区域自定义,采集更快速更精准
7.采集更灵活,可以实现连续采集,打卡,认证等多业务场景
提供人脸采集、活体检测,支持Android和iOS,提供皮肤更换、android权限检测、智能纠正裁剪、丰富的参数配置等等,如需要更丰富的设置修改可以联系作者(QQ:37894663)
注:可以免费试用,有问题可联系作者,可提供对接指导,远程协助,满意以后付款购买
更多插件订制,或者疑难解答,也可联系作者,知无不言,无套路
配套OCR识别插件最新2.1版本完成更新:[百度OCR2.1](https://ext.dcloud.net.cn/plugin?id=847
详细对接步骤
如果使用HBuilderX3.1.10之前版本公共测试证书,那么注册百度md5: F9:F6:C8:1F:DB:AB:50:14:7D:6F:2C:4F:CE:E6:0A:A5
注意:HBuilderX3.1.10+版本公共测试证书 MD5: 06:83:8C:C8:40:09:3B:9D:46:89:FC:41:9B:A1:A3:F3
官方公共测试证书下载地址:https://ask.dcloud.net.cn/article/36522
如果是使用自有证书,那么注册百度的时候md5一定要填写自己证书的md5
插件对接详细步骤:https://www.jianshu.com/p/afb37f9f19ea
实例程序需要自行到官方申请对应的License文件,放到插件的对应目录替换对应的授权文件 自定义基座请使用百度注册时填写的包名以及对应的签名 如有疑问请联系
下载授权文件(注意跟1.0版本目录有区别)
Android
下载License文件授权文件放到 nativeplugins/PP-BaiduFaceV2/android/assets/idl-license.face-android
iOS
下载License文件授权文件放到 nativeplugins/PP-BaiduFaceV2/ios/idl-license.face-ios
调用实例
注意导入插件请真机调试
//检查权限(仅android使用)
checkRequestPermissions() {
const PPFace = uni.requireNativePlugin('PP-BaiduFaceV2');
PPFace.checkRequestPermissions(res => {
//res.code //返回编码 200 为成功
})
}
//初始化插件(请务必先执行一次,还原参数时也可调用)
initFace() {
const PPFace = uni.requireNativePlugin('PP-BaiduFaceV2');
PPFace.init({
androidLicenseFileName: 'idl-license.face-android',
androidLicenseId: 'xxx-face-android', //*需要修改 android百度申请到的liceenseid
iosLicenseFileName: 'idl-license.face-ios',
iosLicenseId: 'xxx-face-ios', //*需要修改 ios百度申请到的liceenseid
}, res => {
//res.code //返回编码 200 为成功
})
// 初始化错误码(主要关注local auth failed 后面的数字 ):
// 0 成功
// 1 license未初始化
// 2 license数据解密失败
// 3 license数据格式错误
// 4 license-key(api-key)校验错误
// 5 算法ID校验错误
// 6 MD5校验错误
// 7 设备ID校验错误
// 8 包名(应用名)校验错误
// 9 过期时间不正确
// 10 功能未授权
// 11 授权已过期
// 12 本地文件读取失败
// 13 远程数据拉取失败
// 14 本地时间校验错误
// 0xff 其他错误
}
//活体识别+采集
faceliveness() {
const PPFace = uni.requireNativePlugin('PP-BaiduFaceV2');
PPFace.faceliveness({
livenessList: ["Eye","Mouth","HeadUp","HeadDown","HeadLeft","HeadRight"], //活体要求动作集合,可按需删减 注意:HeadLeftOrRight新版百度已经不支持
isLivenessRandom: true, //是否开启动作随机 默认false
isEnableSound: false, //是否开启语音播报 默认 true
isBack:false, //是否开启后置摄像头 版本2.20以后支持
//以下参数目前只针对android
debug: false, //是否开启Debug模式,去除遮挡,看采集框位置,默认false
cameraRatio: 0.75, //设置相机预览在屏幕中的大小,默认0.75 越小,成像越小 参考:横屏0.55f,debug模式下可预览
circleRatio: 0.33, //设置中间镂空圆形的半径,默认0.33 越大 圆越小 参考:横屏0.75f,非debug模式下可预览
detectAreas: [15, 20, 70, 50] //参数:[x,y,w,h] x,w参考的宽度百分比,y,h,参考的高度百分比,不传入该参数,使用系统默认采集区域,自定义采集区域,debug模式下可见
}, res => {
//res.code //返回编码 200 为成功
//res.base64Image //全景图像 可以加前缀 data:image/jpg;base64, 进行预览
//res.base64ImageCrop //裁剪后图像(少量黑边,或者没有) 可以加前缀 data:image/jpg;base64, 进行预览
})
}
//人脸采集
recycler() {
const PPFace = uni.requireNativePlugin('PP-BaiduFaceV2');
PPFace.recycler({
isEnableSound: false //是否开启语音播报 默认 true
isBack:false, //是否开启后置摄像头 版本2.20以后支持
//以下参数目前只针对android
debug: true, //是否开启Debug模式,去除遮挡,看采集框位置,默认false
cameraRatio: 0.75, //设置相机预览在屏幕中的大小,默认0.75 越小,成像越小 参考:横屏0.55f,debug模式下可预览
circleRatio: 0.33, //设置中间镂空圆形的半径,默认0.33 越大 圆越小 参考:横屏0.75f,非debug模式下可预览
detectAreas: [15, 20, 70, 50] //参数:[x,y,w,h] x,w参考的宽度百分比,y,h,参考的高度百分比,不传入该参数,使用系统默认采集区域,自定义采集区域,debug模式下可见
}, res => {
//res.code //返回编码 200 为成功
//res.base64Image //全景图像 可以加前缀 data:image/jpg;base64, 进行预览
//res.base64ImageCrop //裁剪后图像(少量黑边,或者没有) 可以加前缀 data:image/jpg;base64, 进行预览
})
}
//该方法主要针对一些识别参数以及皮肤进行修改,参数是官方默认的请尽量不要修改
setFaceConfig() {
const PPFace = uni.requireNativePlugin('PP-BaiduFaceV2');
//该方法参数并非每次全部要写,按需设置即可,注:该方法设置的参数在init后将重置
PPFace.setFaceConfig({
'VALUE_MIN_FACE_SIZE': 200, //设置可检测的最小人脸阈值 VALUE_MIN_FACE_SIZE 默认 200
'VALUE_NOT_FACE_THRESHOLD': 0.6, // 设置可检测到人脸的阈值 VALUE_NOT_FACE_THRESHOLD 默认 0.6
'VALUE_BLURNESS': 0.3, // 设置模糊度阈值 VALUE_BLURNESS 默认 0.3
'VALUE_BRIGHTNESS': 82, // 设置光照阈值(范围0-255 仅android)VALUE_BRIGHTNESS 默认 82
'VALUE_OCCLUSION': 0.5, // 设置遮挡阈值 VALUE_OCCLUSION 默认 0.5
'VALUE_HEAD_PITCH': 8, // 设置人脸姿态角阈值 VALUE_HEAD_PITCH 默认 8
'VALUE_HEAD_YAW': 8, // 设置人脸姿态角阈值 VALUE_HEAD_YAW 默认 8
'VALUE_CLOSE_EYES': 0.7, // 设置闭眼阈值 VALUE_CLOSE_EYES 默认 0.7 ios无效
'VALUE_CACHE_IMAGE_NUM': 3, // 设置图片缓存数量 VALUE_CACHE_IMAGE_NUM 默认3
'VALUE_OPEN_MASK': true, // 设置口罩判断开关 VALUE_OPEN_MASK 默认 true
'VALUE_MASK_THRESHOLD': 0.7, // 设置口罩口罩阈值 VALUE_MASK_THRESHOLD 默认 0.7
'VALUE_SCALE': 1.0, // 原图缩放系数 VALUE_SCALE 默认 1.0
'VALUE_CROP_HEIGHT': 640, // 抠图高的设定,为了保证好的抠图效果,我们要求高宽比是4:3,所以会在内部进行计算,只需要传入高即可 VALUE_CROP_HEIGHT 默认640
'VALUE_CROP_ENLARGERATIO': 1.5 ,// 抠图人脸框与背景比例 VALUE_CROP_ENLARGERATIO 默认1.5
'VALUE_FAR_RATIO': 0.4 ,// 检测框远近比率 默认0.4 (v2.16新增参数)
'TIME_DETECT_MODULE': 1500 ,// 检测超时设置 默认1500 (v2.29新增参数)
'livenessList': ['Eye', 'Mouth', 'HeadUp', 'HeadDown', 'HeadLeft', 'HeadRight'], //动作集合 livenessList 默认全部动作
'isLivenessRandom': false, // 设置动作活体是否随机 isLivenessRandom 默认 false
'isEnableSound': true, // 设置开启提示音 isEnableSound 默认 true
'hasBottomText':true, // 设置是否显示底部文字 默认 true
'bottomText': '— 修改了底部文字 —' ,// 设置底部文字内容 默认 "— 百度大脑技术支持 —"
'COLOR_BG':'#8CD790' ,// 背景颜色 默认 #FFFFFF
'COLOR_CIRCLE_LINE':'#77AF9C' ,//活体检测周围小竖线的颜色 默认 #CCCCCC
'COLOR_CIRCLE_SELECT_LINE':'#285943' ,//活体检测周围小竖线完成后的颜色 默认 #00BAF2
'topTextColor': '#383A3F',//顶部提示文字颜色 默认 #000000
'topSecondTextColor':'#566270' ,// //顶部第二行小字提示颜色 默认 #666666
'hasBottomImg':true,//是否显示底部图片 默认true(可通过替换res跟换图片)
}, res => {
//res.code //返回编码 200 为成功
})
},
参数说明
- livenessList 采集时需要得项目,可选值:
- Eye 扎眼
- Mouth 张嘴
- HeadUp 抬头
- HeadDown 低头
- HeadLeft 左转头
- HeadRight 右转头