flutter 刷脸_GitHub - nnnggel/baidu_face_plugin: 百度人脸识别和活体检测 Flutter 插件(目前版本仅支持 Android)...

news/2024/7/5 2:37:17

baidu_face_plugin

百度人脸识别和活体检测 Flutter 插件(目前版本仅支持 Android)

使用方式

注册百度开发者账号

前往 百度开发者账号 进行注册。

申请并配置license

1 . 登录 控制台,前往 全局->人工智能->人脸识别->人脸识别 - 离线采集SDK管理

2 . 新建授权,填入必须的信息(Android 签名方式自行 google,新建授权需要配置签名 MD5),将结果配置在实际项目,参考 /example/android/app/build.gradle

signingConfigs {

def password = "111111"

def alias = "nutella"

def filePath = "/Users/yuanchongyu/nutella.jks" // 签名文件路径

debug {

keyAlias alias

keyPassword password

storeFile file(filePath)

storePassword(password)

}

release {

keyAlias alias

keyPassword password

storeFile file(filePath)

storePassword(password)

}

}

3 . 下载license放在实际项目中,参考 /example/android/app/src/main/assets/idl-license.face-android

步骤 2 和 3 中的配置可以在新建完授权后,可下载示例项目进行参考

初始化和配置

1 . 在实际项目中增加入口 application class(参考 com.example.baidu_face_plugin.baidu_face_plugin_example.MainApplication),在"初始化SDK"的地方配置 License-ID 和 License-File-Name

// 初始化SDK

FaceSDKManager.getInstance().initialize(this, "baidu-face-plugin-face-android", "idl-license.face-android");

2 . 修改实际项目 AndroidManifest.xml 的入口 application class(参考 example - AndroidManifest.xml )

tools:replace="android:label"

android:name="com.example.baidu_face_plugin.baidu_face_plugin_example.MainApplication"

...

如何调用

1 . pubspec.yaml 中加入依赖

dependencies:

baidu_face_plugin: ^1.0.0

2 . import

import 'package:baidu_face_plugin/baidu_face_plugin.dart';

3 . call

LivenessResult result = await new BaiduFacePlugin().liveness();

DetectResult result = await new BaiduFacePlugin().detect();

result 包含两个属性(sucess和image)

success 属性表示是否完成并成功。如果 success == 'true',则 image 返回最佳人脸照片(base64格式)

一些说明

关于入口 application class

入口 application class(参考 com.example.baidu_face_plugin.baidu_face_plugin_example.MainApplication)的作用是初始化和配置插件功能(活体需要哪些动作,是否随机出现;识别的光线、模糊、角度等质量要求;是否开启语音提示等),视实际情况调整。如果你的项目中已经有入口 application class,可以合并。

关于UI样式调整

颜色的调整可以参考并重写 plugin module res/values 中的 colors.xml,放入实际项目的 res/values。

完全定制可以参考并重写 plugin module res/layout 中的 activity_face_detect_v3100.xml 和 activity_face_liveness_v3100.xml 两个文件,放入实际项目的 res/layout。

关于人脸识别和活体检测的结果照片

人脸识别和活体检测 成功后将返回base64格式最佳人脸照片(人脸识别就一张照片,活体检测返回的是多个动作中最佳的一张),调试的时候需要打印完整日志(debug模式或自行分段)才能获取完整字符串。

关于多语言支持

支持多语言配置(语音和提示文字),加入资源文件(src/main/res)后可在入口 application class 中配置(见 FaceSDKResSettings.initResMaps(soundMap, tipsMap);)。

关于依赖关系

官方示例项目中的依赖关系为 app->faceplatform-ui->faceplatform,集成时发现部分配置需要修改 faceplatform-ui 实现,所以将 faceplatform-ui 的源码拷贝在到了 plugin module 进行调整。

官方集成文档


http://lihuaxi.xjx100.cn/news/275942.html

相关文章

深度神经网络模型训练中的 tricks(原理与代码汇总)

↑ 点击蓝字 关注视学算法作者丨Jack Stark来源丨机器学习小王子原文链接|https://mp.weixin.qq.com/s/ujr8XubG9jpvM-zOGcZxRw编辑丨极市平台极市导读 本文总结了多种图像分类任务中的重要技巧,对于目标检测和图像分割等任务,也起到了不错的…

C语言单链表读入文件表妹,电面|LOFTER(乐乎) - 让兴趣,更有趣

【快速排序——详解】(上)在介绍快速排序之前我们必须要了解一下冒泡排序下面我就简单的介绍一下冒泡排序(一) 冒泡排序例如:现有一个10个元素的数组并对其进行“冒泡排序”。那么总共比较了多少次呢?答:总共45次排序过程大体为如…

倒计时 3 天!「2019 嵌入式智能国际大会」全日程大公开!

立即抢购:https://t.csdnimg.cn/otBk还有3天,大伙期待的「2019嵌入式智能国际大会」正式开幕了!2019年12月6日-7日,我们在深圳市人才研修院见!大会以“万物互联泛在智能”为主题,邀请30位海内外顶级专家作为…

CV新手避坑指南:计算机视觉常见的8个错误

点击上方“小白学视觉”,选择加"星标"或“置顶”重磅干货,第一时间送达本文转自:机器学习实验室人类并不是完美的,我们经常在编写软件的时候犯错误。有时这些错误很容易找到:你的代码根本不工作,…

ZOJ 3735 dp

http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode3735 好久没做DP题了,一开始没理解题目里的C(M,3)是干什么,原来就是组合,C M 取3,就等于n*(n-1)*(n-2)/6;题目里还有…

15年!NumPy论文终出炉,还登上了Nature

机器之心报道编辑:魔王、杜伟、小舟NumPy 团队撰写了一篇综述文章,介绍 NumPy 的发展过程、主要特性和数组编程等。这篇文章现已发表在 Nature 上。NumPy 是什么?它是大名鼎鼎的使用 Python 进行科学计算的基础软件包,是 Python 生…

面试常问的PECS原则,到底是什么鬼?

点击上方“方志朋”,选择“设为星标”回复”666“获取新整理的面试资料原创:小姐姐味道(微信公众号ID:xjjdog),欢迎分享,转载请保留出处。温馨提示:泛型相关。以下内容请在安静的场所…

飞机的“黑色十分钟”能被人工智能消灭吗?

【导读】近年来,“AI的应用和落地”逐渐成了具化的关键词,它和很多事物很多行业结合在一起,形成了奇妙的“化学反应”。例如,在日常生活中,AI可以推送我们喜欢的新闻或视频,可以在拍照的时候识别场景提升照…