活体人脸识别技术总结及实践

news2024/10/23 16:06:26

文章目录

  • 1、背景
  • 2、人脸反伪装技术
    • 2.1 活体人脸识别常见模式
    • 2.2 学术上反伪装研究
  • 3、工程实现
    • 3.1 Silent-Face
    • 3.2 Silent-Face模型转rknn
    • 3.3 Silent-Face模型的限制


1、背景

1.1 什么是活体检测?
在人脸识别之前,先判断一下屏幕前摄像头捕捉到的人脸是真实人脸还是伪造的人脸(如:照片,视频,面具等)
1.2 为什么人脸识别中需要加入活体检测?
在金融领域或安全等级需求较高的人脸识别应用场景,活体检测一般是人脸识别的前提工作,先要做真人验证,才做人脸识别,以保证非法人脸识别攻击。
1.3 人脸识别常见的攻击手段?
常见攻击手段有A4纸打印,照片,局部五官替换,手机屏幕播放照片/视频,3D面具等,示例图如下:
在这里插入图片描述
1.4 活体检测对应的计算机视觉问题?
活体检测按真假人脸可以看成是分类问题,可看成二分类(真人脸 or 假人脸);也可按不同攻击手段看成多分类(真人,纸张攻击,屏幕攻击,面具攻击)


2、人脸反伪装技术

2.1 活体人脸识别常见模式

第一种是静默的活体识别,判断是真人、照片还是视频,如果照片逼真、等身大小,可能就能攻击成功,因此适合对安全要求不是特别高的场景,比如小区门禁。

第二种是单目可见光摄像头结合动作配合式的识别,通过系统指定一串口令,待识别人完成相应动作,从而可以判断屏幕前是否是真人,这种方式需要待识别人的高度配合,一般应用在安全性较高的金融领域场景。

第三种是可见光加近红外双目摄像头的识别,人的脸是有温度的,在850至940纳米的近红外光下,人脸和照片视频的差异很大,通过人的温度皮肤性能的二维图像,机器可以作出判断。在室外场景,此种方式稳定性不高。

第四种是3D的人脸防伪,通过近红外加3D摄像头捕获到三维结构信息进行识别,一般支付场景就是如此。

2.2 学术上反伪装研究

1. Anti-spoofing 1.0 时代
从早期 handcrafted特征的传统方法说起,目标很明确,就是找到活体与非活体攻击的不同点,然后根据这些差异来设计特征,最后送给分类器去决策。
那么问题来了,活体与非活体有哪些差异?
A. 颜色纹理
B. 非刚性运动变形
C. 材料(皮肤,纸质,镜面)
D. 图像or视频质量
E. 结合动作判别或者多模态

2. Anti-spoofing 2.0 时代
用 Deep learning 来做活体检测,从15年陆陆续续就有人在研究,但由于公开数据集样本太少,一直性能也超越不了传统方法。
A. 多帧方法,CNN-LSTM
B. 单帧,直接用CNN分类
C. 直接把假人脸当成一个类嵌入到人脸检测中,即人脸检测有三个类别(背景,真人脸,假人脸)


3、工程实现

在实际工程应用中,活体人脸识别常嵌入在人脸识别系统中,作为人脸识别阶段的前置条件,当活体人脸识别通过后才进行人脸识别,保证人脸识别系统的安全性。常见流程框图如下图所示,图片来自工程:https://github.com/lishanlu136/FaceRecognition
在这里插入图片描述

3.1 Silent-Face

小视科技团队开源的基于RGB图像的活体检测模型(傅里叶频谱图辅助)。傅里叶频谱图在一定程度上能反应真假脸在频域的差异,因此小视科技采用了一种基于傅里叶频谱图辅助监督的静默活体检测方法,模型架构由分类主分支和傅里叶频谱图辅助监督分支构成。
源代码地址:https://github.com/minivision-ai/Silent-Face-Anti-Spoofing

技术路线:
基于成像介质种类的不同,小视科技团队将样本分为真脸、电子屏幕人脸以及其他伪装人脸三类,根据上述的准则整理和收集训练数据。小视科技团队采用自研的剪枝轻量级网络作为 backbone 训练模型,使用 Softmax + CrossEntropy Loss作为训练分类的监督。使用不同尺度的图片作为网络的输入训练数据,增加模型间的互补性,从而进行模型融合。考虑到用于真假脸判别的有效信息不一定完全分布在脸部区域,可能在取景画面的任何地方(如边框,摩尔纹等),小视科技团队在 backbone 中加入了 SE(Squeeze-and-Excitation)的注意力模块,动态适应分散的判别线索。同时小视科技团队也通过实验发现真假脸在频域中存在明显的差异,为此引入傅里叶频谱图作为模型训练的辅助监督,有效提升了模型精度。

多尺度训练:
在这里插入图片描述
注意力模块:
在这里插入图片描述
傅里叶辅助loss:
在这里插入图片描述
网络整体架构图:
在这里插入图片描述
关键指标:
在这里插入图片描述
在这里插入图片描述
训练方式:见该工程readme

3.2 Silent-Face模型转rknn

步骤:pth -> onnx -> rknn
在这里插入图片描述
就正常转就可以,需注意mean_values,std_values,channel设置。

3.3 Silent-Face模型的限制

通过实践发现,该模型对防御屏幕类攻击能力较强,但对纸张攻击防御能力偏弱,可增加一个纸张边缘分类模型辅助判别活体人脸。单纯靠单目RGB可见光静默活体识别,很容易受到纸张形变,光线等影响,通过增加相应数据是一个解决办法,但可见光静默活体识别受到条件限制,精度的很难再上升。如果需要进一步提升活体人脸识别的精度,可以结合动作配合来完成判定或者结合近红外图像共同判定。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2221702.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Golang】Gin框架中如何定义路由

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…

计算机网络:数据链路层 —— 无线局域网 WLAN

文章目录 局域网无线局域网 WLAN802.11 无线局域网802.11无线局域网的组成WLAN 的组成有固定基础设施的802.11无线局域网漫游服务 无固定基础设施的802.11无线局域网 802.11无线局域网的物理层802.11无线局域网的数据链路层不使用碰撞检测 CD 的原因CSMA/CA 协议CSMA/CA 协议的…

新探索研究生英语读写教程pdf答案(基础级)

《新探索研究生英语读写教程》的设计和编写充分考虑国内研究生人才培养目标和研究生公共英语的教学需求, 教学内容符合研究生认知水平, 学术特征突出;教学设计紧密围绕学术阅读、学术写作和学术研究能力培养;教学资源立体多元&…

阀井燃气监控仪-燃气阀门井数据远程监测设备-旭华智能

在城市的地下,有无数条看不见的生命线——那是为千家万户输送温暖与光明的燃气管线。然而,在这复杂的网络之下,隐藏着不可预知的风险。为了保障每一位市民的安全,我们推出了一款革命性的产品——“智安卫士”可燃气体监测终端。 随…

Python字符串处理深度解析:高级操作技巧、性能优化与实用案例全解

文章目录 前言💗一、字符串的定义与特点💘1.1 字符串的定义1.1.1 单引号和双引号的字符串定义:1.1.2 三引号定义多行字符串: 💘1.2 特点:💘1.3 字符串是序列小结: 💗二、…

软件设计模式------抽象工厂模式

抽象工厂模式(Abstract Factory Pattern),又称Kit模式,属于对象创建型模式。 一:先理解两个概念: (1)产品等级结构: 即产品的继承结构。 通俗来讲,就是不同品…

【计算机网络 - 基础问题】每日 3 题(四十九)

✍个人博客:https://blog.csdn.net/Newin2020?typeblog 📣专栏地址:http://t.csdnimg.cn/fYaBd 📚专栏简介:在这个专栏中,我将会分享 C 面试中常见的面试题给大家~ ❤️如果有收获的话,欢迎点赞…

如何通过智能T0算法增加持仓收益?

第一:什么是智能T0算法?什么是智能T0算法?简单来说,就是基于用户原有的股票持仓,针对同一标的,配合智能T0算法,每天全自动操作,高抛低吸,抓取行情波动价差。操作后每日持…

MySQL的安装(windows,Centos,ubuntu)

目录 在Windows下安装MySQL数据库 在Centos下安装MySQL数据库 在ubuntu下安装MySQL数据库 在Windows下安装MySQL数据库 安装程序的下载地址: https://dev.mysql.com/downloads/ 点击之后就会出现下面的页面 接下来根据安装提示进行操作即可 在Centos下安装MySQL数据库 1.确认…

VMware中Ubuntu安装

VMware官网:https://www.vmware.com/products/desktop-hypervisor/workstation-and-fusion 先在官网下载VMware,一直根据默认点下一步就好了,记得更改安装地址哦,否则默认下在C盘里。 先下载好Ubuntu映像文件:https://…

No.18 笔记 | XXE(XML 外部实体注入)漏洞原理、分类、利用及防御整理

一、XXE 漏洞概述 (一)定义 XXE(XML 外部实体注入)漏洞源于 XML 解析器对外部实体的不当处理,攻击者借此注入恶意 XML 实体,可实现敏感文件读取、远程命令执行和内网渗透等危险操作。 (二&am…

[含文档+PPT+源码等]精品基于Nodejs实现的水果批发市场管理系统的设计与实现

基于Node.js实现的水果批发市场管理系统的设计与实现背景,可以从以下几个方面进行阐述: 一、行业背景与市场需求 水果批发市场的重要性: 水果批发市场作为农产品流通的重要环节,承载着从生产者到消费者之间的桥梁作用。它的运营效…

传统园区与智慧园区:现代化发展的差异和优势

传统园区和智慧园区代表着城市发展不同阶段的产物,两者在功能、管理、环境等多个方面存在显著差异。通过对传统园区和智慧园区进行对比,可以清晰地看到智慧园区的诸多优势所在。 1. 功能对比: 传统园区通常以简单的生产、办公和商业为主要功…

1.深入理解MySQL索引底层数据结构与算法

文章目录 索引的概念数据结构二叉树红黑树B-B两者的区别 Hash 引擎数据所在位置对应关系MyISAMInnoDB 索引主键聚集索引非聚集索引联合索引 如有写的不对的请指正。 索引的概念 索引是帮助MySQL高效获取数据的排好序的数据结构 数据结构 网址: https://www.cs.us…

Kafka-设计思想-2

一、消息传递语义 现在我们对生产者和消费者的工作方式有了一些了解,让我们讨论一下Kafka在生产者和消费者之间提供的语义保证。 1、最多发送一次:会造成数据丢失 2、至少发送一次:会造成数据重复消费 3、只发送一次:我们想要的效…

MDB收款适配器MDBPOS

LETPOS精简版MDBPOS(直接连接MDB协议的刷卡器,按照设定价格收款,输出脉冲) 通过串口设定价格,脉冲宽度。 有人刷卡,扣款成功,输出脉冲,使用简单 适合把MDB协议的刷卡器连接到脉冲投…

【算法】归并排序概念及例题运用

📢博客主页:https://blog.csdn.net/2301_779549673 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正! 📢本文由 JohnKi 原创,首发于 CSDN🙉 📢未来很长&#…

小程序视频SDK解决方案,提供个性化开发和特效定制设计

美摄科技作为视频处理技术的领航者,深知在这一变革中,每一个细微的创新都能激发无限可能。因此,我们精心打造了一套小程序视频SDK解决方案,旨在满足不同行业、不同规模客户的多元化需求,携手共创视频内容的璀璨未来。 …

这几次比赛题解

因为考虑到再看&#xff0c;所以将所有题目都做成了pdf格式 梦熊十三连测 T1 这道题其实什么也不用想&#xff0c;就按照题目给的意思来打代码就行&#xff0c;这就有40分可以拿。懒人做法 #include<bits/stdc.h> using namespace std; typedef long long ll; ll read…

中航资本:股票显示缺口什么意思啊?股票有缺口一定会补吗?

股票显现缺口什么意思啊&#xff1f; 股票显现缺口是指股票在运行进程中&#xff0c;忽然上涨或许下跌使股价远离上一个交易日收盘价的状况&#xff0c;也便是股票当天的开盘价格和股票前一个交易日的收盘价格违背崎岖很大。在K线图中&#xff0c;缺口表现为股价在持续动摇中有…