CV学习笔记(二十九):活体检测总结②

作者:云时之间
来源:知乎
链接:https://zhuanlan.zhihu.com/p/162895378
编辑:王萌

这些主要是深度学习的方法
An original face anti-spoofing approach using partial convolutional neural network
Link:ieeexplore.ieee.org/doc

模型架构:

和传统的方法结构类似,只是使用了VGG进行特征提取,通过CNN网络端到端学习anti-spoofing的表示空间

CV学习笔记(二十九):活体检测总结②

Face anti-spoofing using patch and depth-based cnns
Link:cvlab.cse.msu.edu/pdfs/

基本思想:基于纹理的特征提取

主要表现为:局部特征+整体深度图

人脸活体和PA的局部区域提取出来的特征不同,因此得到的统计特征不同。同时采用图片等***方法的PA模型往往呈现为扁平,缺少面部深度特征,如下图,人脸活体会有深度图状。

CV学习笔记(二十九):活体检测总结②
模型结构:

模型主要使用了两个CNN框架:

patch-based CNN:

端到端训练的,并为每个从人脸图像中随机抽取的patch打一个分数,取平均分。

使用patch的好处:

  1. 增加训练数据
  2. 不用resize整张脸,保持原本的分辨率
  3. 在局部检测可用于活体检测的特征时,设定更具挑战性的约束条件,加强特征提取的性能
    输入:相同大小的不同patches的RGB, HSV, YCbCr特征图等
    输出:pacth spoof scores

depth-based CNN:

完全卷积网络(FCN),对人脸图像的深度图进行估计,并提供一个真实度评分。

研究表明高频部分对anti-spoofing非常重要,为避免对原图进行resize而损失图片的高频部分,因此使用FCN以无视输入特征图的size
CV学习笔记(二十九):活体检测总结②

并且还用到了两个监督信号:

1:patch spoof scores

从人脸图像中挑选某些局部区域patches,根据patch内的文理统计特征计算一个patch spoof scores,用于监督patch-based CNN部分

2:深度图Depth Map

面部深度图显示了面部不同位置的深度信息,据此计算深损失,用于监督depth-based CNN部分

整个模型的架构:

CV学习笔记(二十九):活体检测总结②
但是这个模型性能一般,甚至比不上一些传统的算法。

Deep Convolutional Dynamic Texture Learning with Adaptive Channel-discriminability for 3D Mask Face Anti-spoofing
*这篇文章值得读一下

这篇文章主要是针对3D面具的***。3D面具的***和其他的PA***不同,由于面具覆盖了脸部,面具是无法呈现出人脸的脸部运动的,真实的人脸的面部运动更加的细腻,精细,比如苹果肌,皱纹,眨眼,脸部肌肉的微动等等,我们可以认为是动态纹理的不同。

这套算法基本流程与之前平面处理的不太一致:

1:首先需要对视频进行预处理,这里用到了CLNF模型,来检测面部,对面部的68个特征点进行检测,并对面部进行align对齐。

CLNF模型论文地址:
cl.cam.ac.uk/research/r

CLNK模型的介绍:
CV学习笔记(二十九):活体检测总结②

2:通过VGG网络提取特征

从视频流中连续的5帧选择其中的一帧来作为VGG网络的输入,3*3卷积网络输出的特征图作为光流提取的输入。

3:分类

使用SVM进行分类

模型结构:

CV学习笔记(二十九):活体检测总结②

网络结构;
CV学习笔记(二十九):活体检测总结②

结果:

①:Intra-dataset
CV学习笔记(二十九):活体检测总结②

②:Cross-dataset

CV学习笔记(二十九):活体检测总结②

Learning Deep Models for Face Anti-Spoofing: Binary or Auxiliary Supervision
这篇文章还是很有意思的,性能超过了传统方法。整篇文章的亮点在于Non-rigid Registration部分来对齐各帧人脸的非刚性运动,然后再去让RNN学习。

模型的基本思想:

①:基于纹理:活体和PA***的面部深部图不一致

②:基于生物信号:可以通过面部信息来测量相关的RRPG(心率)

CV学习笔记(二十九):活体检测总结②

模型的结构:

CV学习笔记(二十九):活体检测总结②
网络结构:

CNN

若干block串联,每个block包括三个conv+exponential linear+bn和一个pooling
每个block输出特征图经过resize layer将其resize为64×64,并将其通道维联结
联结后的特征图经过两个branches,一个估计深度图depth map,另一个估计特征图feature map

CV学习笔记(二十九):活体检测总结②

RNN

CV学习笔记(二十九):活体检测总结②

Non-rigid Registration部分*

根据估计的3D面部形状图S对特征图feature map进行对齐,保证RNN跟踪并学习面部同一个区域的特征随时间和物体的变化。RNN不用考虑表情、姿态、背景的影响。
CV学习笔记(二十九):活体检测总结②

这里最有价值的就是为什么设计这个对齐网络:

结合做运动识别的任务进行思考,做运动识别时只需简单把连续帧 合并起来喂进网络就行了,是假定相机是不动的,对象在运动

而文中需要对连续人脸帧进行pulse特征提取,主要对象是人脸上对应ROI在 temporal 上的 Intensity 变化,所以就需要把人脸当成是相机固定不动。

实验结果:

但是没有找到开源代码,比较遗憾。

CV学习笔记(二十九):活体检测总结②

Face De-Spoofing: Anti-Spoofing via Noise Modeling
*这篇论文比较抽象,代码虽然开源但质量一般,约等于没有开源~

实际部署起来也比较难,主要针对print, replay, make-up类别的PA

以往的Anti-Spoofing在基于深度学习方法做的时候通常当做一个二分类,输出是Real/Spoof,内部模型是一个黑箱。这个方法将De-Spoofing的模型的内部机理考虑了进去。

文章中假设:对于照片、视频播放来进行的Spoof会引入噪声,而这个噪声普遍存在且可重复,因此,设公式为:

其中的x是原图,是一个与原始图片N(x)有关的噪声函数,这个公式就是算法的核心。通过估计x^,N(x^)并去除spoof noise、以重建x^。若给定x=x^,则其spoof noise = 0。

CV学习笔记(二十九):活体检测总结②
退化图像的频谱分析:

CV学习笔记(二十九):活体检测总结②
造成图像退化的几个原因:

1:色域:spoof介质色域更窄,颜色空间会出现错误
2: 显示干扰:相机本身在输出图像的时候,会出现颜色近似,下采样的过程,这样会导致像素扰动,模糊等问题。
3:介质:存放图像的介质会产生比如反射,表面透明度等变化
4::CMOS和CCD的传感器阵列的成像矩阵会有光干涉,某些情况下会产生失真和摩尔纹。

以上这些噪声干扰往往都是可加性的,因此也是可以消除,重建的。

模型结构:

CV学习笔记(二十九):活体检测总结②

模型分为三个部分:

输入:2562566,RGB+HSV的颜色空间

1:DS Net

CV学习笔记(二十九):活体检测总结②

2:DQ Net

CV学习笔记(二十九):活体检测总结②

3:VQ Net

CV学习笔记(二十九):活体检测总结②

效果:

CV学习笔记(二十九):活体检测总结②

Exploiting Temporal and Depth Information for Multi-frame face Anti-Spoofing
基本思想:在视频流中,物体的运动有利于提取人脸深度信息,可将面部运动和面部深度信息结合,用于活体检测。

文章给出了很好的思路和结论来使用多帧,这也是继MSU使用多帧来预测rPPG频域后的一大进步,这样未来face anti-spoofing将更多focus在多帧上;而不是单帧深度,单帧color texture,这些方向上。

具体的文章解读在后续会单独拿出一篇文章了解.

总结:

CV学习笔记(二十九):活体检测总结②

深度学习PA数据集
1:Replay-attack 2012

共1300视频样本,不能做商业用途,需由获机构授权者提交申请并签署EULA(End User License Agreement)才能下载

Link:idiap.ch/dataset/replay

2:MSU-USSA

全称MSU Unconstraint Smartphone Spoof Attack Database,共9000图像样本(1000live+8000spoof),不能做商业用途,需签署MSU USSA Agreement才能下载

Link:biometrics.cse.msu.edu/

3:oulu-npu 2017

共4950视频样本,大部分CNN-based数据集都会使用的数据集,不能做商业用途,需由在学术机构担任永久性职位的人签署EULA才能下载

Link:sites.google.com/site/o

  1. SiW 2018

165subjects共4478视频样本,商业用途需获授权,需由获机构授权者提交申请并签署DRA(dataset release agreement)才能下载

  1. CASIA-SURF 2019.6

1000subjects共21000视频样本,目前只接受学术用途,需由学术机构签署CASIA-SURF release agreement才能下载

上一篇:grequests 源码部分


下一篇:linux查找修补文件差异