1.什么是人脸认证登录?

(简称TRFA:Tencent Research Face Authentication)是由腾讯研究院研制的。
从功能上来看,人脸认证登录系统是基于终端摄像头的一种身份加密技术,其核心为人脸识别技术。它通过视频扫描来确认使用者的身份。用户在进入登录界面时,终端将自动通过摄像头将用户图像传入人脸识别系统,系统对人脸特征进行分析鉴定后,确定用户是否合法。

2.人脸认证登录的优势

采用人脸认证登录,可以免去繁琐的密码输入,交互更加快捷方便。

3.实现流程

(1) 人脸注册流程

用户在注册时,需要登录客户端界面,输入帐号UID和其他相关信息(比如用户的姓名),并拍照向服务器发送一张或多张自己的正 面照片。服务层记录该注册请求的帐号UID,客户端设备号DeviceID,并由接收到的照片生成该用户的人脸特征模板。

(2)人脸登录流程

人脸登录包括认证(Verification)和识别(Recognition)两种模式。用户只需人脸靠近摄像头,系统实时检测人脸并采集人脸视频图像发送至服务器端,服务器端与人脸库中的用户特征模板进行比对。认证模式下,用户需要选定其对应账户,服务器端只进行该账户(该UID必须在DeviceID注册列表中)的人脸模板比对,当比对分数超过给定阈值时,返回人脸登陆成功信号。识别模式下,用户不需要进行账户的选择,服务器端会进行该DeviceID下的全部已注册UID的人脸模板比对。当比对分数超过阈值时,系统登录进入最优相似度的账户。

4.原理:

我们可以借鉴face++的实现:

首先,你将一张图片,上传到服务器,服务器会提取你的面部特征,写进一个文件中,这文件会有一个唯一标识吗,叫做face_token,代表你的身份,然后服务器会把这些特征以及标识通过json数据响应给你。响应给你的json数据里包含面部特征,以及你的face_token。

登录验证就是对比或者说匹配的过程,你通过终端拍摄或者从相册选择一张照片,然后上传到服务器,服务器首先提取你的面部特征,然后和你注册账号时提取的面部特征进行对比,如果相识度达到一定高度,就会认为是同一个人,然后服务器响应验证通过,进入账号。

将一张合影中的所有人的身份都识别出来,原理和登录验证是一样,只不过多了一个工序。首先,服务器会探测一张图片中有多人,并且把能探测到人的脸部特征以及标识码以json数组形式都反馈给你,我们可以通过遍历标识码的方式,一个一个匹配,最后把结果汇总,反馈个用户即可。可能你会有疑惑,为什么要遍历标识码来验证,因为标识码是代表一个人的身份,如果用其他参数,比如是否戴眼镜,那么你会分不清反馈的结果到底指向得是那个人,进而看不出图片中的某个人和服务器反馈的那个人是否是同一个人。

5.实现业务逻辑

1. 通过前置照相机捕捉到人的脸部特征
2. 将人的脸部特征通过一些算法(网上查看诸如adaboost算法,PCA算法)取得特征值,然后ID化
3. 将人脸ID化的结果存入数据库
4. 重复1,2如果ID化的结果在人脸特征值数据库中某记录值的阈值范围内,则证明该值存在,通过验证,否则,提醒注册人脸特征库。

6.需要用到的技术:

javaSE语法,android平台相关知识(页面布局,网络通信,调取摄像头),解析json,图像压缩技术(上传大小有限制),手机权限获取。

图片以二进制数组的形式传给服务器

7.实现的几种方式

google官方自带、Opencv、虹软免费SDK、Face++、科大讯飞人脸识别、百度

相关文章:
https://blog.csdn.net/calvin_zhou/article/details/79010996
face++人脸识别接口实现原理(一)
https://blog.csdn.net/qq_29726359/article/details/75451924

浅谈一下我对Android实现人脸认证登录的认识相关推荐

  1. 浅谈Service Manager成为Android进程间通信(IPC)机制Binder守护进程之路

    原文地址: http://blog.csdn.net/luoshengyang/article/details/6621566 上一篇文章Android进程间通信(IPC)机制Binder简要介绍和学 ...

  2. 浅谈 unix, linux, ios, android 区别和联系

    浅谈 unix, linux, ios, android 区别和联系 网上的答案并不是很好,便从网上整理的相对专业的问答. 1.UNIX 和 Linux UNIX 操作系统(尤尼斯), 是一个强大的多 ...

  3. Android在线人脸识别登录系统

    Android在线人脸识别登录系统 前言 最近需要做一个Android的在线人脸识别项目,需求是能够在线人脸识别登录,找了很多资料都是价格很高或者是离线保存样本的,最后选择免费的虹软人脸识别,经过查询 ...

  4. 腾讯即将推出人脸认证登录技术

    近日,国内很多网站的数据库遭到黑客攻击,大量用户信息被泄露,用户信息的安全问题一下子成为了互联网界的焦点.在信息安全越来越受到重视的背景下,借助 人脸识别或声纹识别等生物识别技术,为身份验证加筑起一道 ...

  5. 手把手教你实现一个人脸认证登录系统

    ​先看下效果图吧,满足你们的好奇心,哈哈哈 人脸登录成功 人脸登录失败 注册人脸 人脸库 一.创作动机 早在很久之前,公司同事已经实现了在网站的登陆模块加上人脸识别认证登陆功能,自己也就萌生了动手在自 ...

  6. 浅谈Service Manager成为Android进程间通信(IPC)机制Binder守护进程之路(1)

    上一篇文章Android进程间通信(IPC)机制Binder简要介绍和学习计划简要介绍了Android系统进程间通信机制Binder的总体架构,它由Client.Server.Service Mana ...

  7. 浅谈蚂蚁聚宝Android秒级编译

    本文PPT来自蚂蚁金服高级技术专家栾砚强于10月14日在2016年杭州云栖上发表的演讲,分享主题为<蚂蚁聚宝Android秒级编译介绍--Freeline>. 传统的Android应用构建 ...

  8. 浅谈H5业务场景下的人脸识别

    吾生也有涯,而知也无涯~欢迎优化补充.指正! 本文主要介绍基于百度的H5业务场景下人脸识别的创建与实现! 首先百度开放平台进入人脸实名认证控制台新建项目: 接着在方案清单页面点击「新建方案」按钮,方案 ...

  9. 浅谈Android系统进程间通信(IPC)机制Binder中的Server和Client获得Service Manager接口之路

    原文地址: http://blog.csdn.net/luoshengyang/article/details/6627260 在前面一篇文章浅谈Service Manager成为Android进程间 ...

最新文章

  1. Android应用程序组件Content Provider的共享数据更新通知机制分析(3)
  2. UML和模式应用学习笔记-1(面向对象分析和设计)
  3. etcd 集群故障(数据变成只读)
  4. linux下使用yum安装新版php7.0
  5. 1.数据库基本概念知识
  6. mysql导出(导入)数据库window平台
  7. 移动页面自适应手机屏幕宽度HTML5开发
  8. Android 系统(91)---Android 平台调试
  9. 不会优化数据库,早晚被优化!
  10. Linux shell 正则表达式(BREs,EREs,PREs)差异比较
  11. flask实现mysql连接池_mysql-Flask-SQLAlchemy-快速连接到多个数据库
  12. ORL人脸数据库matlab,orl ORL人脸数据库,用于图形图像处理,对新接触MATLAB的人来说是一个很好用而且比较简单 238万源代码下载- www.pudn.com...
  13. UCI机器学习库和一些相关算法
  14. no module named pytz(pycharm)
  15. yandex.com搜索等级、限制设置
  16. apache beam入门之编码Coder相关
  17. Pandas-时间(二)-数据类型:DatetimeIndex(其中每个元素的类型为:Timestamp)【创建方式:①pd.DatetimeIndex([]);②pd.to_datetime()】
  18. 【UCIe】UCIe NOP 介绍
  19. 玩转JDBC打造数据库操作万能工具类JDBCUtil,加入了高效的数据库连接池,利用了参数绑定有效防止SQL注入
  20. django orm原理_django 动态创建一个模型的多个table name, 并通过 Django ORM 操作

热门文章

  1. vue3使用vuedraggable实现拖拽
  2. 荷兰专用服务器1g无限流量,sharktech:荷兰机房1Gbps带宽不限流量服务器简单测评...
  3. 我为什么建议大家一定要考研?
  4. python用双重循环输出菱形图案_使用循环创建菱形图案
  5. 对LARS(Least Angle Regression)的简单理解
  6. 合肥长鑫芯片服务器,进军DDR5/GDDR6/LPDDR5内存 合肥长鑫计划第三代10nm工艺
  7. Android Studio 项目依赖由于资源在国外而下载不了的问题
  8. x265代码解读博客合集
  9. 微信小程序全栈开发实践 第三章 微信小程序开发常用的API介绍及使用 -- 3.6 网络接口简介(六)关于Page页面隐藏代码执行及Promise对象catch处理的补充
  10. 【数据库系统原理】数据库课内实验