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

在一些业务需要中,需要识别场景中的用户是否为"真人",因此需要活体检测技术,这篇文章将针对当前行业中的活体检测技术进行总结。

一:活体检测面临的问题

在人脸检测之中,攻击者往往会通过PA(presentation attacks)对系统进行攻击,常见的PA操作包括打印照片,虚假录制视频,面部伪装,3D-人脸面具等方式,如果没有活体检测,系统的安全性会比较低。在2017年之前,行业主要的实现方向是使用传统的机器视觉方法,在17年之后,较多的使用CNN卷积网络来辅助性能,在2019年CVPR中就有多篇关于活体检测的paper,已成热门方向。

二:常见活体检测方式调研

Ⅰ:基于传统图像处理的活体检测

传统的活体检测主要的思路是捕捉图像的纹理,从而进行分类。

这类方法整体的流程大致如下:

1:图像预处理,对图像进行裁剪,对齐,分割等操作,同时对图像的空间进行变换和叠加,通过

从时域到频域,空域或者改变其颜色空间来进行操作。

2:使用如SIFT,HOG,LBP,SURF以及各种魔改变种来对图像的特征进行提取。

3:使用如降维,编码,多通道组合的方法进行进一步的特征提取,进行分类前的预处理

4:使用SVM/LR等特征分类器进行二分类

Ⅱ:传统方法论文思想总结:

①:通过活体和PA攻击纹理统计特性不一致,基于纹理特征进行分类

比较具有代表性的论文:

1:Face Spoofing Detection Using Colour Texture Analysis

通过HSV空间人脸多级LBP特征 + YCbCr空间人脸LPQ特征

Link:https://ieeexplore.ieee.org/abstract/document/7454730

2: Face anti-spoofing based on color texture analysis

通过观测在频域上分布不同,先区分活体还是照片攻击 (因为照片中的人脸提取的频域分布不同),若判别上述结果是活体,再设计一个纹理LBP分类器,来区分活体还是屏幕攻击(因为屏幕视频中人脸频率分布与活体相近)

Link:https://ieeexplore.ieee.org/abstract/document/735128

在这类论文中,活体和PA纹理不一致,如下图

可以通过LBP(局部二值)来提取其纹理特征,再对LBP进行分类:

使用到的模型架构:

②:基于纹理统计特性进行分类

代表论文:

1:Chromatic cooccurrence of local binary pattern for face presentation attack detection

Link:https://ieeexplore.ieee.org/document/8487325

模型架构:

②:On the effectiveness of local binary patterns in face anti-spoofing

Link:https://ieeexplore.ieee.org/abstract/document/6313548

模型架构:

③:LBP-TOP based countermeasure against face spoofing attacks

Link:http://citeseerx.ist.psu.edu/viewdoc/download;jsessionid=271BCC281BDD5D9B869D3DB92A278BB0?doi=10.1.1.493.6222&rep=rep1&type=pdf

模型架构:

④:Face Liveness Detection with Component Dependent Descriptor

这篇文章也是用的纹理统计,但是比较有意思的是使用了面部分割的方法

模型流程:

1:检测面部位置,将面部分割为轮廓,面部,左右眼,鼻,嘴,六个区域

2:提取面部特征,LBP+HOG,将不同部位进行特征联结

3: SVM分类器进行二分类

以上为比较传统的机器学习的活体检测方法,虽然这些算法有一些历史,但大致流程不变,我们仍可以学习其处理的内核精神,下一篇文章将介绍下现在比较主流的基于深度学习的活体检测!

你可能感兴趣的:(CV学习笔记(二十七):活体检测总结①)