论文:Aurora Guard_ Real-Time Face Anti-Spoofing via Light Reflection

AG
腾讯优图

Main Idea

本文提出了一种简单高效的anti-spoofing方法,不需要特别的硬件设备。利用了多帧RGB图在不同光照条件下具有不同的反射。提出并定义了一种光参数序列light CAPTCHA,应用到人脸上,形成了具有不同反射效果的人脸帧。然后对其提取normal cues,该过程使用了Lambert’s Law。将normal cues输入一个多任务CNN,第一个分支使用encoder+decoder估计深度信息(2D softmax + CE),然后再进行分类。另外一个分支对光参数进行回归,使用均方误差。

Abstract

本文提出的方案是一种快速高效的anti-spoofing方法,已经被数百万用户使用。该方法首先通过光反射分析提取normal cues;然后使用一个端到端训练的可训练的多任务CNN不仅恢复对象的深度信息以辅助活体判断,同时还在回归分支中提供了light CAPTCHA(光验证码)检查机制,进一步提升系统的稳定性。此外,本文还搜集了一个12000活体和非活样本的数据集,包括丰富的图像质量和攻击模式。

1.Introduction

本文的方法主要包括两个部分:

  • 以Lambertian model为基础,产生动态变化的光验证码,并从反射帧中提取normal cues.
  • 使用一个端到端的多任务网络来同时判断活体与非活,并同时回归光验证码。前者使用normal cues估计深度,判断活体与非活;后者回归光参数的机制用于处理一种特殊的攻击modality spoofing

***Q:什么是modality spoofing?***
后面的实验部分有详细讲

Contribution

  • 提出了一种简单高效的anti-spoofing方法,在实际场景中不需要特别的硬件设备支持就可以应用。
  • 提出了一种cost-free的深度恢复网络,通过从反射帧提取出来的normal cues即可以恢复深度进行活体分类。
  • 一种新的光验证码检查机制可以提升对抗攻击的安全性,尤其是modality spoofing。
  • 建立了一个具有广泛的攻击模式和各种图像质量的数据集。

2.Related Work

Tan, Chan等已经使用Lambertian反射对anti-spoofing进行研究,但是取得的效果却非常有限。本文的主要区别在于:

  • 本文使用光源产生随机参数的光序列,形成不同的光反射。
  • 本文建立了一个回归分支,形成光验证码检查机制。
  • 使用DNN学习,而前面的工作都是基于手工设计的特征。

3.The Proposed Method

本文方法的流程如图09-1所示。使用手机的前置摄像头和光源产生随机参数的光序列$r=\{(\alpha_i,\beta_i)\}_{i=1}^n$并且采集到$n$帧图片$F_r$,顺序估计normal cues$N$,输入CNN中进行预测,并回归光验证码$\hat{r}$,最终的判断综合考虑预测结果和$\hat{r}$$r$的匹配结果。

[外链图片转存失败(img-uW0iIrwO-1568520402635)(https://github.com/douyh/PaperReading/raw/master/pic/09-1.jpg)]
图09-1

3.1 Normal Cues from Light Reflection

Lambert’s Law(朗伯定律)认为反射部分在漫射表面的所有方向上都是相等的。即任意像素点$p$在特定光照$L_r$下的光强$F_r(p)$可以表示为:

F_r(p)=\rho_p(k_a+k_r\boldsymbol{l}\cdot \boldsymbol{n_p})

其中$k_a, k_r$分别是环境权重和漫反射权重。$\rho_p$是反射率,$\boldsymbol{l}$是光源方向,$\boldsymbol{n_p}$是法线。当光照变化的时候$k_a,\boldsymbol{l}$是不变的,使用PRNet (Feng) 得到的人脸关键点估计的转换矩阵来对齐不同图片对之间的$p^\prime,p$,那么在另外一个光照$L_r^\prime $下的另外一幅图片,对应点$p^\prime$的光强:

F_{r^\prime}(p)=F_{r^\prime}(p^\prime)=\rho_{p^\prime}(k_a+k_{r^\prime}\boldsymbol{l}\cdot \boldsymbol{n_{p^\prime}})

每个点的标量积结果:

N_{\triangle r}(p)=\boldsymbol{l}\cdot \boldsymbol{n_p}=\frac{F_r(p)-F_{r^\prime}(p)}{k_r-k_{r^\prime}}

通过各个点的标量积的结果组成的图就是normal cue

Q2:$\rho$不变且为1?

3.2Multi-Task CNN

  • 活体判别

将normal cues输入到一个encoder-decoder结构的网络中,得到深度图,再被送入到一个简单的分类结构中以区分3D人脸和2D的攻击。使用交叉熵作为损失函数,在深度图恢复部分,使用了2D像素级的softmax和交叉熵。如图09-2:

[外链图片转存失败(img-ehJ3NcSi-1568520402636)(https://github.com/douyh/PaperReading/raw/master/pic/09-2.jpg)]
图09-2

网络结构如图09-3

[外链图片转存失败(img-2ZGyOLWM-1568520402636)(https://github.com/douyh/PaperReading/raw/master/pic/09-3.jpg)]
图09-3

  • 光参数回归

把normal cues输入到回归分支中,损失函数

\mathcal{L}_{reg}=\frac{1}{m}\sum_{i=1}^m\{||\mathcal{R}(\mathcal{S}(N_i))-\triangle r_i||^2\}

其中$\mathcal{R}$表示回归网络,$\triangle r_i$是两帧$F_{r_i},F_{r_{i-1}}$的光参数GT的差。

假设训练集中有$V$个视频,整个网络的损失函数可以表示为:

[外链图片转存失败(img-evdzbbA0-1568520402636)(https://github.com/douyh/PaperReading/raw/master/pic/09-4.jpg)]
图09-4

在实际中,光验证码序列由4中随机次序的光组成,平衡了验证码的检查和复杂度。光照变化与帧率相同,这样帧会有不同的光反射。$F,r$的长度等于$m+1$,使用SNR来检查光参数序列与GT是否匹配。

3.3Dataset Collection

本文采集了一个数据集,其样本是通过投射动态光序列到目标上,并录制30fps的视频得到的。主要采集的是2D攻击的照片。包含12000个live和spoof的video,平均时长3秒,包括200个对象,50种采集设备,print, replay, modality和光投影spoof。

4.实验

ablation study

$\lambda_{depth}$深度信息的监督可以帮助提高分类的准确率。

分类分支可以比较好的解决大部分正常的2D攻击,但是仍然对modality spoofing表现很差。这种攻击方式直接伪造需要的反射模式。当满足以下两种情况的时候,modality spoofing会使分类网络失效。

  • 之前捕获的原始视频是由面部反射帧组成,其中包含真实的反射模式,被高分辨率屏幕泄露和重放。
  • 在攻击试验捕获过程中,投射光不干扰视频帧中人脸的原始反射。

图09-5描述了光验证码对抗这种攻击的原理。

[外链图片转存失败(img-YYQQWojs-1568520402637)(https://github.com/douyh/PaperReading/raw/master/pic/09-5.jpg)]
图09-5

图09-6是使用SNR来比较回归参数和GT的图。

[外链图片转存失败(img-arFZt0ck-1568520402637)(https://github.com/douyh/PaperReading/raw/master/pic/09-6.jpg)]
图09-6

光验证码是由4种随机次序投射的光组成。modality spoofing通过录制这4种面部反射,并重复播放3000遍。固定的视频循环必须匹配到随机产生的光验证码,才能通过系统,而使用了光验证码的检查机制之后,极大提高了对modality spoofing的抵抗能力。

图09-7展示了本文的深度估计方法和当前的anti-spoofing的深度估计方法的对比。本文的深度GT是通过intel的深度摄像头采集得到的。

[外链图片转存失败(img-oBjZCQn9-1568520402638)(https://github.com/douyh/PaperReading/raw/master/pic/09-7.jpg)]
图09-7

图片09-8和09-9展示了本文的方法在自采数据集和公开数据集上的表现。由于公开数据集的活体数据没有光验证码,因此只能测试FAR指标。

[外链图片转存失败(img-BciLYnkS-1568520402638)(https://github.com/douyh/PaperReading/raw/master/pic/09-8.jpg)]
图09-8

[外链图片转存失败(img-12PDI7fs-1568520402639)(https://github.com/douyh/PaperReading/raw/master/pic/09-9.jpg)]
图09-9

实验结果表明本文提出的方法在HATER,错误率,泛化性能,运行时间上与SOTA方法进行了对比,具有相当的优势。和基于硬件的SL3D方法有相当的效果。

一些问题:

1.深度回归是直接通过RGB来做的,是用的深度摄像头的GT来训练的吗?

深度信息

2.光验证码这部分的细节和modality spoofing。

参考

https://zhuanlan.zhihu.com/p/61100492

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章