浅析人脸活体检测技术的功能及几种分类
在日常生活工作中,出现了人脸验证、人脸支付、人脸乘梯、人脸门禁等等常见的应用场景。这说明人脸识别技术已经在门禁安防、金融行业、教育医疗等领域被广泛地应用,人脸识别技术的高速发展与应用同时也出现不少质疑。其中之一就是人脸识别很容易被照片、视频、人脸模型等方式轻易蒙混,并且网络上也传出不少破解方法。针对这些问题,人脸识别技术其实也是进行了升级迭代,当前的人脸识别系统是需要具有人脸活体检测功能的。那么人脸活体检测功能到底是什么呢?
说的直白一些,人脸活体检测功能也就是人脸防伪技术,而不是人脸的验证技术。像人脸验证技术主要是系统会判断两个人脸是否为同一人的算法,当系统通过人脸比对后获取两个人脸特征的相似度,然后与预设的阈值等进行比较。一旦相似度是大于阈值,则会判定为同一个人,反之则不同。而人脸活体检测功能,它的算法主要是判定是否为真人活体,因而那些企图通过照片、视频或者模型等方式蒙混过关是不能通过的。下面我们具体看一下该功能有什么具体的作用。
1、人脸活体检测能解决利用照片的漏洞
一般情况下,利用照片是很常见钻人脸识别漏洞的方式。现在获取一个人的照片只要在网络社交平台等就可以轻易做到。不过,照片这种媒介是静态的,具有活体检测功能则需要通过动态来判断,因此利用照片的方式是无法通过人脸验证的。毕竟活体检测是在人脸验证时需要利用比如眨眨眼、张张嘴或者抬头、转头等交互动作来进行活体检测的。
2、人脸活体检测能解决利用视频的漏洞
说起视频的漏洞,一般是指预先把相关动作录制成视频。然后把视频对着人脸识别检测系统播放。不过对于这种利用视频对着摄像头成像的方式,其实与人脸的真实度还是有很大的区别,因此经常会存在有诸如反光、有倒影、影像模糊等问题。相对而言,这是比较好识别的一种情况。更何况具有活体检测功能,使得利用视频的方式无法钻漏洞。
3、人脸活体检测能解决利用模型的漏洞
利用模型的漏洞指的是按照真实比例,制作出一个类似真人脸部的3D模型。这个方式虽然说可以解决照片与视频的一些问题,而且真人脸部模型与人相当接近。但是首先模型的材料的表面发射率与真实人脸依然是存在不小的差距,在算法上可以优化解决。其次,模型并非活体,也无法通过活体检测的步骤。
人脸活体检测技术主要分为以下三大类:
1、图片人脸活体检测:通过静态图片进行活体检测,通常基于传统图像处理,主要的方式有基于纹理特征的方式、基于图像质量的方式、以及基于深度特征的方法。
2、配合式人脸活体检测:需要人脸识别使用者的配合交互,通过判断用户是否按照要求在镜头前完成指定动作来进行活体检测,主要包括随机动作指令人脸活体检测和语音活体检测。
随机动作指令人脸活体检测需要用户根据提示做出相应的动作,通过眨眼、点头、摇头、张嘴等面部动作验证用户是否为真实活体本人操作。随机动作式活体检测依赖于动作识别算法的性能和准确率,通常方法是通过对一个连续多帧人脸活体图像数据中包含的活体动作特征执行区域信息进行动作特征识别抽取,例如二值化处理,然后通过分析多帧图像之间特征变化是否大于指定动作对应阈值来判断用户是否完成了该动作。
语音活体检测则是需要用户配合提示读出相应文字验证码,然后分别对视频和音频进行检测。这种技术主要通过人脸关键点定位技术和人脸追踪等技术,通过用户配合完成的动作声音是否与系统要求相符合来验证用户是否为真实的活体本人。也可以通过抽取嘴部区域的光流特征变化,然后使用SVM等分类器识别用户是否完成了文字的朗读。
静默人脸活体检测:无需用户动作或语音配合,可以在不超过1秒的时间内实时完成检测。静默活体检测的主要原理是结合了图片活体检测,除了抽取图片的纹理颜色特征,利用图片的质量进行判断外,还利用了基于生命信息的方法与和时间相关的深度特征。
由于真实人脸并非绝对静止,存在很多不自觉的轻微动作,活体人脸会有心跳导致血管抖,眨眼,微表情引起脸部肌肉跳动等生命特征,可以利用人脸识别过程中的多帧画面提取运动特征,心跳特征,连续性特征等用于人脸活体检测。通过远程光体积变化描记图法等方法可以检测到来自摄像头的人体器官变化信息,通过计算人体心率以及人脸血流导致的颜色变化等有效信息来区分真假人脸。基于生命信息的方法对利用3D模型的虚假人脸攻击有明显的防御效果。
当前的人脸识别技术方面的应用,比如人脸识别门禁系统,活体检测的功能都是最基础的。在当下无接触、无感通行日渐流行的社会中,活体检测的这种人脸防伪技术是给人们的安全与便捷性等方面提供了更多的保障。
申明:文章为本人原创,禁止转载,如有疑问请致邮:283870550@qq.com
相关文章:

浅析人脸活体检测技术的功能及几种分类
在日常生活工作中,出现了人脸验证、人脸支付、人脸乘梯、人脸门禁等等常见的应用场景。这说明人脸识别技术已经在门禁安防、金融行业、教育医疗等领域被广泛地应用,人脸识别技术的高速发展与应用同时也出现不少质疑。其中之一就是人脸识别很容易被照片、…...

【Java基础面试三十五】、谈谈你对面向接口编程的理解
文章底部有个人公众号:热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享? 踩过的坑没必要让别人在再踩,自己复盘也能加深记忆。利己利人、所谓双赢。 面试官:谈谈你对面向接口编程的…...
利用TreeMap来达成离散化的目的
假如有一些奶牛,他们有种类的区别,我们设黑色奶牛的id为1000010000,白色为1,诸如此类以此类推还有红色等各种颜色,接下来给你一群奶牛的颜色id让你统计每种颜色的奶牛有几头。 如过我们使用数组显然1000010000会爆空间…...
PG14安装_rpm方式
一、前期准备 发现生产环境有用rpm安装,故整理安装rpm安装步骤,目的是准备walminer恢复数据用的环境 二、安装包下载 https://download.postgresql.org/pub/repos/yum/ 含多个版本 https://download.postgresql.org/pub/repos/yum/14/redhat/rhel-7-x…...
水管安装过滤器笔记
文章目录 方案准备工具剪管钳热熔器软管接头及单向阀扳手 操作过程花洒 搬家后,水质不行,洗脸掉皮,洗头以前不掉头皮屑的,居然也掉头皮屑。有必要简单过滤下了。 水质情况,并不是脏脏的的那种水,看上去还比…...

【Objective-C】浅析Block及其捕获机制
目录 Block的基本使用Block的声明Block的实现Block的调用 Block作为形参使用Block作为属性使用给Block起别名Block的copy Block的捕获机制auto类型的局部变量__block浅析static类型的局部变量全局变量 其他问题 Block的基本使用 什么是Block? Block (块…...

GitHub和Gitee的区别以及具体使用
文章目录 GitHub和GiteeGitHub和Gitee区别GitHub的使用Gitee的使用 GitHub和Gitee GitHub和Gitee区别 速度不同:GitHub位于美国,而Gitee位于中国。这意味着在中国使用Gitee可能会有更快的访问速度和更好的稳定性。如果我们希望体验Git飞一般的速度&…...

使用Redis实现分布式锁解决商品超卖问题(接上篇文章)
1. RedLock(红锁)简介 RedLock是一种用于分布式系统的锁定算法,旨在提供分布式锁的高可用性和分布式容错性。它是由Redis的创建者Salvatore Sanfilippo提出的,用于克服Redis单实例的单点故障问题。RedLock的目标是确保在多个Redis…...

2001-2022年全国290+个地级市高铁开通数据
2001-2022年全国290个地级市高铁开通数据 1、时间:2001-2022年 2、范围:298地级市(293地级市数(其中莱芜市2019年撤市设区)4直辖市数 ) 3、来源:国家铁路局、铁路客货运输专刊及相关统计 国…...

【Java 进阶篇】深入浅出:Bootstrap 轮播图
在现代网页设计中,轮播图是一个常见的元素。它们可以用于展示图片、广告、新闻、产品或任何您希望吸引用户注意力的内容。要实现一个轮播图,您通常需要一些复杂的HTML、CSS和JavaScript代码,这对于初学者来说可能会感到困难。但幸运的是&…...
75. 颜色分类
75. 颜色分类 双指针——快慢指针 class Solution {public void sortColors(int[] nums) {int n nums.length;int p0 0;for(int i 0; i < n; i){if(nums[i] 0){swap(nums, p0, i);p0;}}int p1 p0;for(int i p0; i < n; i){if(nums[i] 1){swap(nums, p1, i);p1;}…...

网络协议--IP:网际协议
3.1 引言 IP是TCP/IP协议族中最为核心的协议。所有的TCP、UDP、ICMP及IGMP数据都以IP数据报格式传输(见图1-4)。许多刚开始接触TCP/IP的人对IP提供不可靠、无连接的数据报传送服务感到很奇怪。 不可靠(unreliable)的意思是它不能…...
【考研数学】线性代数第六章 —— 二次型(3,正定矩阵与正定二次型)
文章目录 一、基本概念1.1 引例1.2 正定二次型概念 二、正定二次型的判别写在最后 一、基本概念 1.1 引例 (1)二次型 f ( x 1 , x 2 , x 3 ) x 1 2 3 x 2 2 2 x 3 2 X T A X f(x_1,x_2,x_3)x_1^23x_2^22x_3^2\pmb{X^TAX} f(x1,x2,x3)x123…...

【Java 进阶篇】手把手教你创建 Bootstrap 旅游网站
随着互联网的普及,旅游行业在全球范围内迅速发展。人们通过网络规划、预订和分享他们的旅行经历。因此,拥有一个令人印象深刻的旅游网站对于吸引游客和提供有用信息至关重要。在本篇博客中,我们将手把手教您如何创建一个令人兴奋的旅游网站&a…...

一百九十二、Flume——Flume数据流监控工具Ganglia单机版安装
一、目的 在安装好Flume之后,需要用一个工具可以对Flume数据传输进行实时监控,这就是Ganglia 二、Ganglia介绍 Ganglia 由 gmond、gmetad 和 gweb 三部分组成。 (一)第一部分——gmond gmond(Ganglia Monitoring Da…...

光学知识整理-偏振光
偏振光 目录基础概念基础概念的补充平面偏振光(线偏振光)部分偏振光圆偏振光椭圆偏振光菲涅耳公式相位关系 反射折射所引起的偏振态的改变斯托克斯倒逆关系重要参数 目录 基础概念 光是横波:光是电磁波,其电场分量(电场强度)E、磁场分量(磁…...
CUDA纹理内存tex1D/tex2D/tex3D函数
CUDA的tex1D是用于从一维纹理中读取数据的函数。纹理是一种特殊的内存区域,可以用来存储图像、视频或其他数据。tex1D函数可以用于从纹理中读取数据,并将其传递给CUDA程序。 tex1D函数的语法如下: float tex1D(sampler_t sampler, float te…...

【Java基础面试三十八】、请介绍Java的异常接口
文章底部有个人公众号:热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享? 踩过的坑没必要让别人在再踩,自己复盘也能加深记忆。利己利人、所谓双赢。 面试官:请介绍Java的异常接口 …...
LabVIEW中的数据通信方法
LabVIEW中的数据通信方法 LabVIEW中包含多种数据通信方法,不同的方法适用于不同的场景。应该先了解概述,确保在应用程序中使用正确的数据通信方法。 数据通信类型: 数据流元素 缓冲接口 变量接口 应用场景: 在多数程序框图对…...

UE5 学习系列(二)用户操作界面及介绍
这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…...

智慧工地云平台源码,基于微服务架构+Java+Spring Cloud +UniApp +MySql
智慧工地管理云平台系统,智慧工地全套源码,java版智慧工地源码,支持PC端、大屏端、移动端。 智慧工地聚焦建筑行业的市场需求,提供“平台网络终端”的整体解决方案,提供劳务管理、视频管理、智能监测、绿色施工、安全管…...

3.3.1_1 检错编码(奇偶校验码)
从这节课开始,我们会探讨数据链路层的差错控制功能,差错控制功能的主要目标是要发现并且解决一个帧内部的位错误,我们需要使用特殊的编码技术去发现帧内部的位错误,当我们发现位错误之后,通常来说有两种解决方案。第一…...
Java - Mysql数据类型对应
Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...

linux arm系统烧录
1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 (忘了有没有这步了 估计有) 刷机程序 和 镜像 就不提供了。要刷的时…...
Unit 1 深度强化学习简介
Deep RL Course ——Unit 1 Introduction 从理论和实践层面深入学习深度强化学习。学会使用知名的深度强化学习库,例如 Stable Baselines3、RL Baselines3 Zoo、Sample Factory 和 CleanRL。在独特的环境中训练智能体,比如 SnowballFight、Huggy the Do…...

如何在网页里填写 PDF 表格?
有时候,你可能希望用户能在你的网站上填写 PDF 表单。然而,这件事并不简单,因为 PDF 并不是一种原生的网页格式。虽然浏览器可以显示 PDF 文件,但原生并不支持编辑或填写它们。更糟的是,如果你想收集表单数据ÿ…...

Windows安装Miniconda
一、下载 https://www.anaconda.com/download/success 二、安装 三、配置镜像源 Anaconda/Miniconda pip 配置清华镜像源_anaconda配置清华源-CSDN博客 四、常用操作命令 Anaconda/Miniconda 基本操作命令_miniconda创建环境命令-CSDN博客...

c++第七天 继承与派生2
这一篇文章主要内容是 派生类构造函数与析构函数 在派生类中重写基类成员 以及多继承 第一部分:派生类构造函数与析构函数 当创建一个派生类对象时,基类成员是如何初始化的? 1.当派生类对象创建的时候,基类成员的初始化顺序 …...

DBLP数据库是什么?
DBLP(Digital Bibliography & Library Project)Computer Science Bibliography是全球著名的计算机科学出版物的开放书目数据库。DBLP所收录的期刊和会议论文质量较高,数据库文献更新速度很快,很好地反映了国际计算机科学学术研…...