美文网首页
03.Android本地人脸识别打卡原理及实现笔记

03.Android本地人脸识别打卡原理及实现笔记

作者: 小小秤 | 来源:发表于2021-03-11 11:57 被阅读0次

0.背景

其实在安卓端实现本地人脸识别借助第三方的平台的SDK很容易实现,本文主要阐述不借助第三方SDK实现10人以内的本地人脸识别本地打卡系统的实现过程笔记。

1.开发的整体过程

程序员撸代码,面向对象,面向百度、面向github、面向CSDN等等,一顿狂搜获取关于人脸识别的知识点。自己总结的思维导图如下所示

图1.人脸识别的整体学习过程
人脸识别涉及到的知识点比较多,单单从图1的人脸识别研究来看就涉及到openCV,机器学习,神经网络等。具体的代码过程涉及到C/C++的NDK开发。
《OpenCV Android开发实战》作者贾志刚 这本书的一点学习笔记如图2所示
图2.《OpenCV Android开发实战》笔记
softboy的软件网盘地址https://pan.baidu.com/s/1i5oXoJ7
反编译的方法就不在这里提供了,软件里有很多好的算法,总结其活体检测的主要内容如图3:
图3.softboy人脸识别软件活体检测的学习
最后确定的实现方式是人脸识别借助《手把手教你做安卓端人脸识别应用》(https://blog.csdn.net/wgf5845201314/article/details/111213948?utm_medium=distribute.pc_relevant_download.none-task-blog-baidujs-1.nonecase&depth_1-utm_source=distribute.pc_relevant_download.none-task-blog-baidujs-1.nonecase
这篇文章我看的时候是不收费的,结果现在是收费的,不过第一张思维导图提供了这位写的源码github地址(https://github.com/tianmaxingkong666/android_fc_app)自行看代码总结。下面我也将给出我对源码的理解。
活体检测借助softboy的活体检测里面好的算法思维,不过采用的不同的方式进行人脸关键点检测,openCV的方式(https://blog.csdn.net/kkae8643150/article/details/96134423?utm_medium=distribute.pc_relevant_download.none-task-blog-baidujs-1.nonecase&depth_1-utm_source=distribute.pc_relevant_download.none-task-blog-baidujs-1.nonecase
对于人脸识别的源码理解如图4所示 图4.人脸识别源码解读

人脸的识别的源码作者除了InsightFace + Mxnet的人脸特征提取的代码打包成.so库其他的JNI层如图片转换处理,目标追踪,人脸对齐都提供源码。修改特征点的数据库存储等代码,我本地运行的程序截图如图5所示


2图5.人脸识别APP运行截图

人脸关键点检测的单张图识别结果截图如图6所示


图6.OpenCV人脸关键点检测Demo截图
通过以上可以本地的活体检测+人脸识别打卡功能
(人数较少的情况能满足)

2.后期工作及感受

(1)活体检测与人脸识别的结合
(2)程序的UI修改,识别结果的弹窗提示
(3)活体检测涉及关键点所组成的矩形框计算,帧间数据的比较
(4)UI识别结果的提示,涉及到部分长时间识别不了,和识别到结果,帧数据处理和弹窗后的线程处理
(5)感受:openCV+JNI,tensorflow+机器学习,respect softboy,学无止境。

相关文章

  • 03.Android本地人脸识别打卡原理及实现笔记

    0.背景 其实在安卓端实现本地人脸识别借助第三方的平台的SDK很容易实现,本文主要阐述不借助第三方SDK实现10人...

  • Python&Opencv伪AI深度教程!人脸识别以及人

    python+opencv+face++人脸识别以及人脸解锁,Python代码较少。 原理: 利用Face++实现...

  • 人脸识别技术 通识

    人脸识别技术 通识 1 人脸识别概要 2 人脸识别工作原理 3 人脸识别技术分类 4 人脸识别技术优缺点 5 人脸...

  • Android实现人脸识别(人脸检测)初识

    title: Android实现人脸识别(人脸检测)初识categories: Androidtags: 人脸识别...

  • 人脸表情识别的实现

    在春节前,终于完成了人脸表情识别的实现,在这里简述一下实现的基本原理。首先是人脸识别,可以采用的方法是基于SVM支...

  • 人脸识别

    摘要:人脸识别是一种研究以生物特征为基础的使用计算机实现的识别技术。从人脸图像采集及检测——》人脸图像预处理——》...

  • 人脸识别 -- 活体检测(张嘴摇头识别)

    一:简介 最近项目在做了身份证银行卡识别之后,开始实现人脸识别和活体识别,其中人脸识别包括人脸入库、人脸查找、人脸...

  • 了解人脸识别和二维码识别

    人脸识别方案 CoreImage (二维码识别,人脸识别) face++ 2014阿里 收费(两种方案本地计算 ...

  • 人脸识别技术综述

    文章主要分为:一、人脸识别技术概述;二、人脸识别算法的框架;三、人脸识别的发展历史及分类;四、人脸识别的领域主要方...

  • 人脸识别技术

    人脸识别技术 (一) —— 基于CoreImage实现对静止图片中人脸的识别人脸识别技术 (二) —— 基于Cor...

网友评论

      本文标题:03.Android本地人脸识别打卡原理及实现笔记

      本文链接:https://www.haomeiwen.com/subject/huerqltx.html