文章目录

  • 论文简介
  • 论文研读
    • Introduction
    • Prior Work
    • Face De-spoofing
      • A Case Study of Spoof Noise Pattern
      • De-Spoof Network
      • DQ Net and VQ Net
      • Loss functions
    • Experimental Results
      • Experimental Setup
      • Ablation Study
      • Experimental Comparison
      • Qualitative Experiments
    • Conclusions
  • 资源链接

Face De-Spoofing: Anti-Spoofing via Noise Modeling


论文简介

一、许多先前的工作都是研究和开发判别模型通过区别真假脸的的细微差异来实现人脸反欺骗,这些方法将图像视为一个不可分割的整体,对图片进行整体处理而没有对欺骗过程进行清楚的建模。受到噪声建模以及去噪算法的影响,提出噪声建模的人脸反欺骗方法:通过将伪造人脸分解为伪造噪声以及真实人脸,然后利用伪造噪声进行分类来实现人脸反欺骗

二、本文通过CNN架构实现,通过提出适当约束以及监督来弥补分解图像没有ground truth的问题

三、通过在大量人脸反欺骗数据集上的评估,其结果显示噪声建模的反欺骗模型有希望改进人脸反欺骗性能,此外,估计的欺骗噪声通过可视化的方式提供了有助于理解每种欺骗介质增加的欺骗噪声


论文研读


Introduction

作为最常见的欺骗,打印攻击和重放攻击已经从不同的角度进行了很好的研究。基于线索的方法旨在检测具有活体特征的线索(例如,眨眼、头部运动)进行判别。但这些方法都是可以被视频重放攻击所迷惑。基于纹理的方法试图使用LBPHOG等手工特征比较真实面部和欺骗面部之间的纹理差异。类似于基于纹理的方法,基于CNN的方法设计了一个统一的特征提取和分类过程。对于基于softmax进行二分类监督训练,但往往具有过拟合风险。无论从哪个角度来看,几乎所有的前人工作都将人脸反欺骗视为一个黑盒二分类问题。相比之下,本文通过建模的方式从原始图像生成欺骗图像的过程来打开黑盒

受到经典de-X问题的启发,例如图像去噪和去模糊。在图像去噪中,被破坏的图像被认为是加性噪声(例如,椒盐噪声和高斯白噪声)的退化。在图像去模糊中,未被破坏的图像由于运动而退化,这可以被描述为卷积的过程。类似地,在面部反欺骗中,欺骗图像可以被视为实时图像带有来自欺骗介质和环境的一些“特殊”噪声的二次渲染。因此,自然的问题是,当给定欺骗图像时,类似于图像去噪,我们是否能恢复潜在的真实图像

答案是肯定的。本文展示了如何做到这一点。如下图所示,我们把一个伪造人脸分解成伪造噪声和一个真实脸的过程称为“人脸去欺骗”与之前的de-X工作类似,退化图像x∈Rm{\text{x}} \in {\mathbb{R}^m}x∈Rm可以表述为原始图像x^\widehat {\text{x}}x,退化矩阵A∈Rm×m{\text{A}} \in {\mathbb{R}^{m \times m}}A∈Rm×m以及加性噪声n∈Rm{\text{n}} \in {\mathbb{R}^m}n∈Rm的函数

The illustration of face spoofing and anti-spoofing processes. De-spoofing process aims to estimate a spoof noise from a spoof face and reconstruct the live face. The estimated spoof noise should be discriminative for face anti-spoofing.

x = Ax^+n=x^+(A−I)x^+n=x^+N(x^){\text{x = A}}\widehat {\text{x}} + {\text{n}} = \widehat {\text{x}} + ({\text{A}} - \mathbb{I})\widehat {\text{x}} + {\text{n}} = \widehat {\text{x}} + N(\widehat {\text{x}})x = Ax+n=x+(A−I)x+n=x+N(x)

其中N(x^)=(A−I)x^+nN(\widehat {\text{x}})=({\text{A}} - \mathbb{I})\widehat {\text{x}} + {\text{n}}N(x)=(A−I)x+n为图像相关的噪声函数,我们并不求解这里的A\text{A}A和n\text{n}n,而是使用神经网络去估计N(x^)N(\widehat {\text{x}})N(x)。本质上,通过估计N(x^)N(\widehat {\text{x}})N(x)和x^\widehat {\text{x}}x的目的是剥离欺骗噪声,重建原始的活体人脸。同样,如果给定一个活体人脸,Face de-spoofing模型应该返回自身并加上零噪声。需要注意的是,本文的Face de-spoofing被设计为处理纸张攻击、重放攻击和可能的化妆攻击,但实验仅限于前两个PAs(Presentation Attacks)。

Face de-spoofing有两点优势:
1)它逆转或撤销了欺骗生成过程,这有助于我们对不同欺骗介质的欺骗噪声模式进行建模和可视化
2)欺骗噪声本身在真实图像和欺骗图像之间是有区别的,因此对于面部反欺骗是有用的

face de-spoofing有以下几个明显的困难需要克服:
No Ground Truth:图像de-X工作通常使用合成数据,其中原始的未退化图像可以用作监督学习的ground truth。相比之下,我们无法获得x^\widehat {\text{x}}x,因此没有ground truth。其中x^\widehat {\text{x}}x是欺骗人脸图像对应的活体人脸
No Noise Model:对于欺骗模式的噪声没有全面的研究和了解。因此,并不清楚如何约束解空间来忠实地估计欺骗噪声模式
Diverse Spoof Mediums:每种类型的欺骗都利用不同的欺骗介质来生成欺骗图像。每种欺骗媒介代表一种特定类型的噪声模式

为了应对这些挑战,作者通过先前的知识和案例研究的结论提出了一些限制和监督措施,如下所示:

假设一个真实的人脸没有欺骗噪声,则我们强加的约束N(x)为000。基于我们的研究,我们假设欺骗图像的欺骗噪声是普遍存在(即它在图像的空间域中无处不在)且可重复,即它是图像中某些特定噪声的空间重复。重复性可以通过在傅立叶域中最大化估计噪声的高频幅度来促进

根据文献《Learning deep models for face anti-spoofing: Binary or
auxiliary supervision》中提出的约束和辅助监督,本文提出了一种新的CNN结构。给定一幅图像,设计一个CNN来合成欺骗噪声模式并重建相应的实时图像为了检查重建的实时图像,我们以端到端的方式训练了另一个具有辅助监督并类似GAN的鉴别器的CNN这两个网络旨在确保重建图像的质量,包括活体图像和欺骗图像的区分度,以及合成的活体图像的视觉可信度。

概括起来,这项工作的主要贡献包括:

◇提供了一种新的视角,通过将欺骗人脸图像反向分解为真实人脸和欺骗噪声来检测来自打印攻击和重放攻击的欺骗人脸
◇提出了一种新的用于face de-spoofing的CNN架构,其中施加了适当的约束和辅助监督
◇我们通过face de-spoofing对欺骗噪声模式的可视化贡献来证明face de-spoofing的价值


Prior Work

本文从两个角度回顾了与本次工作最相关的先前工作:基于纹理的人脸反欺骗和de-X问题

Texture-based Face Anti-spoofing

纹理分析被广泛应用于人脸反欺骗和其他计算机视觉任务,其中定义一个有效的特征表示最为关键的一环。早期的工作应用手工制作的特征描述符,如LBP,HoG,SIFTSURF,将人脸投影到低维嵌入。然而,这些手工制作的特征并不是专门设计来捕捉欺骗面部的细微差别因此这种嵌入的方式难以捕捉到活体人脸与欺骗人脸的细微差别此外,这些特征对于诸如照明、姿势等的变化可能不稳定。为了克服这些困难,研究人员在不同的域中解决这个问题,如HSVYCbCr颜色空间,时域傅里叶频谱

进入深度学习时代,研究人员旨在建立更高精度的深度模型。CNN的大部分工作都是将人脸反欺骗作为一个二分类问题来处理并应用softmax损失函数。与手工制作的特征相比,这种模型在内部测试(即在同一数据集内进行训练和测试)方面取得了显著的改进。然而,在交叉测试(即在不同的数据集上训练和测试)过程中,由于对训练数据的过度拟合,这些CNN模型表现出较差的泛化能力。一些研究者观察到softmax损失的过拟合问题后提出了新的辅助驱动损失函数来代替softmax来监督CNN

就我们所知,所有以前的方法都是判别模型。只有少数论文试图对欺骗噪声模式的类型和属性进行分类。在这项工作中,我们分析了欺骗噪声的特性,并设计了一个类GAN的生成模型来估计欺骗噪声模式并将其从欺骗图像中剥离。我们相信,通过分解欺骗图像,CNN可以更直接、更有效地分析欺骗噪声,并获得更多应对人脸反欺骗的知识。

De-X problems

De-X问题,如去噪、去模糊、去马赛克、超分辨率和图像修复是经典的低级视觉问题,可消除图像的退化效果或伪影。一般去噪工作假设加性高斯噪声,研究人员提出非局部滤波器或CNNs来利用图像中固有的相似性。对于去马赛克和超分辨率,许多模型是从给定的低质量输入和高质量ground truth对中学习。在图像修复中,用户在蒙版图中标记要修复的区域,并基于现有的面片纹理和无蒙版区域中的整体视图结构应用填充

现有的de-X问题的一个优点是大多数图像退化可以容易地合成。这带来两个好处:
1)它为模型训练提供了输入的退化样本和用于监督的golden ground-truth原始图像
2)易于合成大量数据用于训练和评估

与此相反的是,由于欺骗所造成的退化是多方面、复杂和微妙的。它包括两个阶段的退化:一个来自欺骗介质(例如,纸和数字屏幕),另一个来自欺骗介质与成像环境的交互。每个阶段都包括大量的变化,如媒介类型,照明,非刚性变形和传感器类型等。这些变化的结合使得整体退化变化性很大。因此,通过合成退化图像来模仿真实的欺骗几乎是不可能的,与传统的de-X问题相比,face de-spoofing面临明显的挑战

如果没有退化图像的ground truthface de-spoofing就成为一个非常具有挑战性的问题。在这项工作中,我们提出了一个具有全新的损失函数以及监督的encoder-decoder结构以解决反欺骗问题


Face De-spoofing

在本节中,我们从欺骗噪声模式的案例研究开始,它展示了噪声的一些重要特征。这项研究激励我们设计新颖的CNN架构


A Case Study of Spoof Noise Pattern

face de-spoofing的核心任务是估计给定人脸图像中与欺骗相关的噪声模式。尽管使用了强大的CNN模型,我们仍然面临着在没有噪声模式的ground truth情况下学习的挑战。为了应对这一挑战,我们希望首先对噪声模式进行案例研究,目的是回答以下问题:
1)所述方程是否是一个好的噪声建模模型;2)欺骗噪声具有什么样的特征

使用I^\widehat {\text{I}}I代表真实面部,通过在数字设备上使用打印纸或视频回放,攻击者可以制造一个来自I^\widehat {\text{I}}I的欺骗图像I\text{I}I,考虑到两者图像之间没有非刚性变形,我们将从I^\widehat {\text{I}}I到I\text{I}I的退化概括为以下步骤:
1、Color distortion:颜色失真是由于欺骗介质(如LCD屏或碳粉盒)的色域较窄造成的。它是从原始颜色空间到更小的颜色子空间的投影。该噪声取决于目标的颜色强度,因此在退化期间,它可以作为退化矩阵应用于真实面部I^\widehat {\text{I}}I

2、Display artifacts:欺骗媒介通常使用几个邻近的点/传感器来近似一个像素的颜色,并且它们也可以以不同于原始尺寸的方式显示面部。近似和下采样过程会导致一定程度的高频信息丢失、模糊和像素扰动。这种噪声由于依赖于目标对象,因此也可以作为退化矩阵

3、Presenting artifacts:当向摄像机呈现欺骗媒体时,媒体与环境相互作用,并带来几个假象,包括表面的反射和透明。这种噪声可应用为加性噪声

4、Imaging artifacts:在相机的传感器(如互补金属氧化物半导体和电荷耦合器件)上成像点阵图案(如屏幕像素)会导致光的干涉。这种效应导致混叠并产生莫尔图案,出现在重放攻击和一些具有强晶格伪影的印刷攻击中。这种噪声可应用为加性噪声

这四个步骤表明,欺骗图像I\text{I}I可以通过对真实活体图像I^\widehat {\text{I}}I应用退化矩阵和加性噪声来生成,这与前面所述方程具有一致性。欺骗图像是真实图像和图像相关噪声的总和,为了进一步验证这个模型,我们在下图中展示了一个例子

The illustration of the spoof noise pattern. Left: live face and its local regions. Right: Two registered spoofing faces from print attack and replay attack. For each sample, we show the local region of the face, intensity difference to the live image, magnitude of 2D FFT, and the local peaks in the frequency domain that indicates the spoof noise pattern. Best viewed electronically.

给定一个高质量的真实图像,我们小心地通过打印和重放攻击产生两个具有最小非刚性变形欺骗图像。在每个欺骗图像与真实图像配准之后,如果我们要对欺骗图像执行de-spoofing,则真实图像变成ground truth真实图像(将真实图像作为ground truth,这方便比较从真实图像所得的欺骗图像通过去噪而获得的伪真实图像与原真实图像的差异)。这允许我们计算真实图像和欺骗图像之间的差异,即噪声模式N(I^)N(\widehat {\text{I}})N(I)。为了分析其频率特性,我们对欺骗噪声进行了快速傅立叶变换,并显示了2D频移幅度响应(2D shifted magnitude response

在这两种欺骗情况下,我们观察到低频域中的高响应,这与颜色失真和显示伪影有关。在印刷攻击中,步骤3中的重复噪声导致高频域中的一些“峰值”响应。类似地,在重放攻击中,可见的摩尔纹在低频域中反映为几个杂散,而导致摩尔纹的晶格图案在高频域中表示为峰值。此外,由于欺骗介质的均匀纹理,欺骗模式在图像域中均匀分布。并且重复模式在频域中的高响应准确地证明了它广泛地出现在图像中,因此可以被视为无处不在。

在这种理想的配准下,真实图像和欺骗图像之间的比较为我们提供了对欺骗噪声模式的基本理解。它是一种纹理,重复且无处不在。基于这种建模和噪声特性,我们设计了一个网络来估计噪声,而无需像本案例研究那样访问精确配准的ground truth真实图像


De-Spoof Network

Network Overview

下图展示了所提出方法的网络结构,一共包括三个部分:De-Spoof Net(DS Ne,去欺骗网络), Discriminative Quality Net (DQ Net,质量判别网络), and Visual Quality NetVQ Net,视觉质量网络)

The proposed network architecture.

DS Net用于估计输入图像I\text{I}I的噪声模式N\text{N}N,即N(I^)N(\widehat {\text{I}})N(I)的输出。真实人脸图像I^\widehat {\text{I}}I可由输入图像I\text{I}I减去估计噪声N\text{N}N,这种重建的图像I^\widehat {\text{I}}I应该既具有视觉质量也具有活体效应,这两种状态的评估分别受到DQ NetVQ Net的关注。下图显示了网络的详细结构信息,整个网络可以实现端到端的训练

The network structure of DS Net, DQ Net and VQ Net. Each convolutional layer is followed by an exponential linear unit (ELU) and batch normalization layer. The input image size for DS Net is 256 × 256 × 6. All the convolutional filters are 3 × 3. 0\1 Map Net is the bottom-left part, i.e., conv1-10, conv1-11, and conv1-12.

作为网络的核心部分,DS Net被设计成encoder-decoder结构,其输入为图像I∈R256×256×6{\text{I}} \in {\mathbb{R}^{256 \times 256 \times 6}}I∈R256×256×6,其中的6个通道为RGB+HSV颜色空间,这项措施来源于《Atoum, Y ., Liu, Y ., Jourabloo, A., Liu, X.: Face anti-spoofing using patch and depth-based cnns. In: ICJB, IEEE (2017)》,在encoder部分,堆叠了10个卷积层和3个池化层。受到残差网络的激励,我们采用了一个捷径连接来连接来自于pool1−1pool1-1pool1−1、pool1−2pool1-2pool1−2、pool1−3pool1-3pool1−3的响应,然后将其送入conv1−10conv1-10conv1−10。这种操作帮助我们将不同尺度的特征相应传递到后面的阶段并简化训练过程。通过三个以上的卷积层,来自于conv1−12conv1-12conv1−12的响应F∈R32×32×32{\text{F}} \in {\mathbb{R}^{32 \times 32 \times 32}}F∈R32×32×32是欺骗模式的特征表示。响应幅度越大,输入越具有欺骗感知

编码器出来后,特征表示F\text{F}F被喂入到解码器来重建欺骗噪声模式。F\text{F}F直接被resize成256×256而没有使用诸如反卷积等额外的调整尺寸的方法。然后,将调整后的F\text{F}F通过几个卷积层来重建噪声模式N\text{N}N。根据前面的方程,重建的真实图像可由以下公式获得:x^=x−N(x^)=I−N\widehat {\text{x}}=\text{x}-N(\widehat {\text{x}})=\text{I}-\text{N}x=x−N(x)=I−N

DS Net中的每个卷积层都配有ELUBN层。为了监督DS Net的训练,我们设计了多重损失函数:包括与图像质量有关的DQ NetVQ Net损失,0\1 map损失以及噪声属性损失


DQ Net and VQ Net

尽管我们没有ground truth来监督估计的欺骗噪声模式,但是监督重建的真实图像是可能的,这隐含的指导了噪声估计。为了估计高质量的欺骗噪声,重建的真实图像应该在视觉上以及量化程度接近活体状态。为此,在整个网络结构中提出另外两个网络:质量判别网络(DQ Net)以及视觉质量网络(VQ Net)。VQ Net的目的是保证重建的活体人脸是逼真的。基于预训练的人脸反欺骗网络的判断,DQ Net用于保证重建的人脸确实被认为是活体,详细的网路结构如上图所示

Discriminative Quality Net

我们遵循最先进的反欺骗网络来建立DQ Net。它是一个全卷积网络,包含三个filter blocks和三个附加卷积层。每个block包含三个卷积层和一个池化层,每个池化层之后的特征图被重新调整大小并堆叠,以喂入到后面的卷积层。最后,对DQ Net进行监督,以估计输入人脸的伪深度D\text{D}D,其中真实人脸的伪深度是人脸形状的深度,欺骗人脸的伪深度是零矩阵。我们采用3D人脸对齐算法来估计人脸形状,并通过Z-Buffering渲染深度

DQ Net通过预训练来获得真假人脸的语义知识。在DS Net训练过程中,DQ Net的参数是固定的。由于重建图像I^\widehat {\text{I}}I是真实图像,相应的伪深度D\text{D}D应该是面部形状的深度。来自DQ Net的误差的反向传播指导DS Net估计应该从输入图像中减去的欺骗噪声模式,
JDQ=∥CNNDQ(I^)−D∥1{J_{DQ}} = {\left\| {{\text{CN}}{{\text{N}}_{DQ}}(\widehat {\text{I}}) - {\text{D}}} \right\|_1}JDQ​=∥∥∥​CNNDQ​(I)−D∥∥∥​1​

其中CNNDQ{{\text{CN}}{{\text{N}}_{DQ}}}CNNDQ​是固定的网络结构,D\text{D}D是人脸形状的深度

Visual Quality Net

我们部署一个GAN来所估计活体图像I^\widehat {\text{I}}I的视觉质量。给定真实的活体图像Ilive\text{I}_{\text{live}}Ilive​以及合成的活体图像I^\widehat {\text{I}}I,VQ Net被训练来区分Ilive\text{I}_{\text{live}}Ilive​和I^\widehat {\text{I}}I。与此同时,DS Net试图重建逼真的活体图像,VQ Net则将它们归类为非合成活体(真实活体)图像。VQ Net包含6个卷积层和一个全连接层组成,输出为一个2D向量,表示输入图像是真实活体还是合成活体的概率。在训练期间的每次迭代中,VQ Net被评估为两个批次,第一批次是固定DS Net并更新VQ Net

JVQtrain=−EI∈Rlog⁡(CNNVQ(I))−EI∈Slog⁡(1−CNNVQ(CNNDS(I))){J_{V{Q_{train}}}} = - {\mathbb{E}_{{\text{I}} \in \mathcal{R}}}\log ({\text{CN}}{{\text{N}}_{VQ}}({\text{I}})) - {\mathbb{E}_{{\text{I}} \in \mathcal{S}}}\log (1 - {\text{CN}}{{\text{N}}_{VQ}}({\text{CN}}{{\text{N}}_{DS}}({\text{I}})))JVQtrain​​=−EI∈R​log(CNNVQ​(I))−EI∈S​log(1−CNNVQ​(CNNDS​(I)))

其中R\mathcal{R}R和S\mathcal{S}S分别是真实和合成活体图像的集合。第二批则是固定VQ Net并直接更新DS Net
JVQtest=−EI∈Slog⁡(CNNVQ(CNNDS(I))){J_{V{Q_{test}}}} = - {\mathbb{E}_{{\text{I}} \in \mathcal{S}}}\log ({\text{CN}}{{\text{N}}_{VQ}}({\text{CN}}{{\text{N}}_{DS}}({\text{I}})))JVQtest​​=−EI∈S​log(CNNVQ​(CNNDS​(I)))


Loss functions

欺骗建模的主要挑战是缺乏欺骗噪声模式的ground truth,我们可以设计几个新的损失函数来约束收敛空间。首先,我们引入幅度损失(magnitude loss)来强制真实活体图像的欺骗噪声为000。其次,0\1映射损失(0\1 map loss)被用来证明无处不在的欺骗噪音。最后,通过重复损失(repetitive loss)来鼓励欺骗噪声的重复性。我们将三个损失函数描述如下:

Magnitude Loss

真实活体图像的欺骗噪声为000。幅度损失可以对估计噪声施加约束。给定估计噪声N\text{N}N,真实活体图像I\text{I}I的重建活体图像I^=I−N\widehat {\text{I}}=\text{I}-\text{N}I=I−N,可以得到,
Jm=∥N∥1{J_m} = {\left\| {\text{N}} \right\|_1}Jm​=∥N∥1​

Zero\One Map Loss:为了学习编码器中的区别特征,我们在DS Net中定义了一个子任务来为真实人脸估计zero-map以及欺骗人脸估计one-map。因为这是一个per pixel监督,同时也是对噪声的一个无处不在的约束。此外,0\1 map使每个像素的感受野能够覆盖一个局部区域,这有助于为此问题学习可泛化的特征。给定输入图像I\text{I}I在编码器中所提取的特征F\text{F}F,可以得到,
Jz=∥CNN01map(F;Θ)−M∥1{J_z} = {\left\| {{\text{CN}}{{\text{N}}_{01map}}({\text{F}};\Theta ) - {\text{M}}} \right\|_1}Jz​=∥CNN01map​(F;Θ)−M∥1​
其中M∈032×32\text{M}\in\text{0}^{32×32}M∈032×32或M∈132×32\text{M}\in\text{1}^{32×32}M∈132×32是zero\one map标签

Repetitive Loss

基于前面的讨论,我们假设欺骗噪声模式是重复的,因为它是由重复的欺骗介质产生的。为了鼓励重复性,我们将估计的噪声N\text{N}N转换到傅立叶域,并计算高频带中的最大值。高峰的存在表明了重复的模式。我们希望最大化欺骗图像的峰值,最小化真实活体图像的峰值,因此我们设计以下损失函数:
Jr={−max⁡(H(F(N),k)),I∈Spoof∥max⁡(H(F(N),k))∥1,I∈Live{J_r}=\begin{cases} - \max (H(\mathcal{F}({\text{N}}),k)),{\text{I}} \in Spoof\\ {\left\| {\max (H(\mathcal{F}({\text{N}}),k))} \right\|_1},{\text{I}} \in Live\\ \end{cases} Jr​={−max(H(F(N),k)),I∈Spoof∥max(H(F(N),k))∥1​,I∈Live​
其中F\mathcal{F}F是傅里叶算子,HHH是掩蔽图像低频域的算子,即将移位的2D傅立叶响应中心的k×kk × kk×k区域设置为零

最后,我们训练中的总损失函数是上述损失函数和图像质量监督的加权和,
JT=Jz+λ1Jm+λ2Jr+λ3JDQ+λ4JVQtest{J_T} = {J_z} + {\lambda _1}{J_m} + {\lambda _2}{J_r} + {\lambda _3}{J_{DQ}} + {\lambda _4}{J_{V{Q_{test}}}}JT​=Jz​+λ1​Jm​+λ2​Jr​+λ3​JDQ​+λ4​JVQtest​​
其中λ1\lambda _1λ1​、λ2\lambda _2λ2​、λ3\lambda _3λ3​、λ4\lambda _4λ4​表示权重。在训练过程中,我们在优化方程JTJ_TJT​和JVQtrainJ_{{VQ}_{train}}JVQtrain​​之间交替


Experimental Results


Experimental Setup

Databases

此次工作在三个人脸反欺骗数据集上进行评估,其中包括打印和重放攻击:Oulu-NPUCASIA-MFSDReplay-AttackOulu-NPU是一个高分辨率数据库且考虑到许多现实世界的变化。Oulu-NPU还包括4个测试协议:
▪协议111评估光照变化,
▪协议222检查不同欺骗介质的影响,
▪协议333检查不同摄像设备的效果,
▪协议444包含上述所有挑战,接近交叉测试的场景

CASIA-MFSD包含分辨率为640×480640×480640×480和1280×7201280×7201280×720的视频。Replay-Attack包括320×240320×240320×240的视频。这两个数据库经常用于交叉测试

Parameter setting

作者使用TensorFlowTensorFlowTensorFlow实现本文方法。其中batch size=6learning rate = 3e-5。在重复损失中设置k = 64,λ1λ1λ1到λ4λ4λ4分别设置为333、0.0050.0050.005、0.10.10.1和0.0160.0160.016。DQ Net是单独训练的,并且在DS NetVQ Net的更新期间保持固定,但是所有子网络在每个协议中使用相同和各自的数据进行训练

Evaluation metrics

与以前的方法相比,我们使用Attack Presentation Classification Error Rate(APCERAPCERAPCER)、Bona Fide Presentation Classification Error Rate(BPCERBPCERBPCER)和ACER=(APCER+BPCER)/2ACER = (APCER + BPCER)/2ACER=(APCER+BPCER)/2对Oulu-NPU进行内部测试,使用Half Total Error Rate(HTERHTERHTER) 、FARFARFAR和FRRFRRFRR总和的一半在CASIA-MFSDReplay-Attack之间进行交叉测试


Ablation Study

使用Oulu-NPU协议111,我们对分数融合的效果、每个损失函数的重要性以及图像分辨率和模糊度的影响进行了三项研究。

Different fusion methods

在所提出的网络结构中,三个输出可用于分类:0\1 map的范数、欺骗噪声模式或深度图映射。由于我们的学习具有区分性,我们可以简单地使用像L-1范数这样的基本分类器。注意到更高级的分类器是适用的并且可能会导致更好的性能。下表显示了每个输出的性能以及它们最大值和平均值的融合。结果表明,欺骗噪声和深度图的融合效果最好。然而,添加0\1 map分数并不能提高准确性,因为它包含与欺骗噪声相同的信息

The accuracy of different outputs of the proposed architecture and their fusions.

因此,在接下来的实验中,我们通过欺骗噪声N\text{N}N和深度图D^\widehat {\text{D}}D的平均融合来报告性能,即score=(∥N∥1+∥D^∥1)/2score = ({\left\| {\text{N}} \right\|_1} + {\left\| {\widehat {\text{D}}} \right\|_1})/2score=(∥N∥1​+∥∥∥​D∥∥∥​1​)/2

Advantage of each loss function

在我们所提出的结构中有三个主要的损失函数。为了显示每个损失函数的效果,我们对每个损失训练一个网络并逐一排除。通过禁用magnitude loss0\1 map lossrepetitive loss,我们分别获得了5.245.245.24、2.342.342.34和1.501.501.50的ACERsACERsACERs。为了进一步验证repetitive loss,我们在高分辨率图像上进行了一项实验,将网络输入更改为原始1080P1080P1080P图像的脸颊区域。具有repetitive loss的网络其ACERACERACER是2.922.922.92,不具有repetitive loss的网络无法收敛

Resolution and blurriness

如消融研究的repetitive loss所示,图像质量对于实现高精度至关重要。在低分辨率或运动模糊的图像中可能检测不到欺骗噪声模式。不同图像分辨率和模糊度的测试结果如表所示

ACER of the proposed method with different image resolutions and blurriness. To create blurry images, we apply Gaussian filters with different kernel sizes to the input images.

这些结果验证了欺骗噪声模式对低分辨率或模糊图像的辨别能力较低,因为输入图像的高频部分包含大部分欺骗噪声模式


Experimental Comparison

为了展示我们所提出的方法的性能,我们给出了我们在Oulu-NPU的内部测试和CASIAReplay-Attack的交叉测试中的准确性

Intra Testing

我们比较了Oulu-NPU所有4个协议的内部测试性能。下表显示了本文方法与之前181818种方法中最好的333种方法的比较。我们提出的方法在所有协议上都取得了令人满意的结果。具体来说,我们在最具挑战性的协议444(类似于交叉测试)中大大超过了以前的技术水平

The intra testing results on 4 protocols of Oulu-NPU. Cross Testing

我们在CASIA-MFSDReplay-Attack之间进行交叉测试。如下表所示。5、我们的方法从CASIA-MFSDReplay-Attack的交叉测试中取得了竞争性能。然而,与从Replay-AttackCASIA-MFSD的最好结果相比,我们实现了更差的HTERHTERHTER。我们假设原因是CASIA-MFSD的图像比重放攻击的分辨率高得多。这表明,用高分辨率数据训练的模型可以很好地在低分辨率测试数据上泛化,反过来却不成立。这是该方法的一个局限性,值得进一步研究

The HTER of different methods for the cross testing between the CASIA-MFSD and the Replay-Attack databases. We mark the top-2 performances in bold.


Qualitative Experiments

Spoof medium classification

测试图像所估计的欺骗噪声模式可用于将它们聚类成不同的组,并且每组代表一种欺骗介质。为了可视化结果,我们使用t-SNE进行降维。t-SNE通过保持最佳KL发散距离将噪声N∈R256×256×6\text{N}\in\mathbb{R}^{256×256×6}N∈R256×256×6投影到二维平面,下图显示了Oulu-NPU协议111上测试视频的分布。与我们的噪声假设一致,左图显示活体视频的噪声聚类良好,欺骗视频的噪声与主题相关。为了获得更好的可视化效果,我们利用高通滤波器提取噪声模式的高频信息进行降维。右图显示,高频部分具有更多与主题无关的欺骗类型信息并且可用于欺骗媒体的分类

The 2D visualization of the estimated spoof noise for test videos on Oulu-NPU Protocol 1. Left: the estimated noise, Right: the high-frequency band of the estimated noise, Color code used: black=live, green=printer1, blue=printer2, magenta=display1, red=display2.

为了进一步显示估计欺骗噪声的辨别能力,我们将协议1的测试集划分为训练部分和测试部分,并训练用于欺骗媒介分类的SVM分类器。我们训练了两个模型,一个三级分类器(liveprintdisplay)和一个五级分类器(liveprint1print2display1display2),它们分别达到82.0%82.0\%82.0%和54.3%54.3\%54.3%的分类精度,如下表所示

The confusion matrices of spoof mediums classification based on spoof noise pattern.

五级模型的大部分分类错误都在同一个欺骗媒介内。这个结果值得注意,因为在学习欺骗噪声模型的过程中没有提供欺骗介质类型的标签。然而,估计的噪声实际上携带了关于介质类型的可观信息;因此,我们可以观察到欺骗介质的合理分类结果。这表明估计的噪声包含欺骗媒介信息,并且实际上我们正朝着估计出存在于每个欺骗图像中的可信赖欺骗噪声的方向前进。未来,如果欺骗媒体分类的性能有所提高,将会给取证等应用带来新的冲击

Successful and failure cases

我们在下面的两张图中显示了几个成功和失败的例子。第一张图显示出估计的欺骗噪声在同种介质中是相似的,不同介质中则不同。我们怀疑前四列中的淡黄色是由于纸张攻击中更强的颜色失真引起的。第五行显示真实活体图像的估计噪声几乎为零。对于失败的案例,我们只有少数的假阳性(false positive)案例。失败是由于不希望的噪声估计,这将激励我们进一步研究

The visualization of input images, estimated spoof noises and estimated live images for test videos of Protocol 1 of Oulu-NPU database. The first four columns in the first row are paper attacks and the second four are the replay attacks. For a better visualization, we magnify the noise by 5 times and add the value with 128, to show both positive and negative noise. The failure cases for converting the spoof images to the live ones.


Conclusions

本文介绍了一种通过反变换将欺骗面孔分解为活体面孔和欺骗的噪声模式来解决面部反欺骗的新视角。提出了一种具有多个适当监督的新颖CNN\text{CNN}CNN结构。通过设计损失函数来鼓励欺骗图像的模式无处不在且重复,而实时图像的噪声应为零。通过可视化欺骗噪声模式将有助于更深入地了解每种欺骗介质所增加的噪声。我们在多个广泛使用的面部反欺骗数据库上评估了该方法

Acknowledgment This research is based upon work supported by the Office of the Director of National Intelligence (ODNI), Intelligence Advanced Research Projects Activity (IARPA), via IARPA R&D Contract No. 2017-17020200004. The views and conclusions contained herein are those of the authors and should not be interpreted as necessarily representing the official policies or endorsements, either expressed or implied, of the ODNI, IARPA, or the U.S. Government. The U.S.Government is authorized to reproduce and distribute reprints for Governmental purposes notwithstanding any copyright annotation thereon.


资源链接

Computer Vision Lab
ECCV 2018-Face De-Spoofing Code

活体检测论文研读五:Face De-Spoofing: Anti-Spoofing via Noise Modeling相关推荐

  1. 活体检测论文研读二:Learn Convolutional Neural Network for Face Anti-Spoofing

    Learn Convolutional Neural Network for Face Anti-Spoofing 论文简介 ➢指出手工制作的特征例如LBP.LBP-TOP无法捕捉到真假脸之间最具区别 ...

  2. 活体检测论文研读六:Searching Central Difference Convolutional Networks for Face Anti-Spoofing

    文章目录 论文简介 论文研读 Introduction Related Work Methodology Central Difference Convolution CDCN CDCN++ Expe ...

  3. 活体检测论文研读三:Learning Deep Models for Face Anti-Spoofing: Binary or Auxiliary Supervision

    Learning Deep Models for Face Anti-Spoofing: Binary or Auxiliary Supervision 论文简介 一.指出先前的深度学习方法将人脸反欺 ...

  4. 活体检测论文研读四:RetinaFace: Single-stage Dense Face Localisation in the Wild

    文章目录 论文简介 主要贡献 论文研读 摘要 相关工作 图像金字塔与特征金字塔 两阶段与单阶段 上下文建模 多任务学习 RetinaFace 多任务损失 密集回归分支 实验 数据集 实现细节 消融研究 ...

  5. [人脸活体检测] 论文:Face De-Spoofing: Anti-Spoofing via Noise Modeling

    Face De-Spoofing: Anti-Spoofing via Noise Modeling 论文简介 将非活体人脸图看成是加了噪声后失真的x,用残差的思路检测该噪声从而完成分类. 文章引用量 ...

  6. [人脸活体检测] 论文: Learning Deep Models for Face Anti-Spoofing: Binary or Auxiliary Supervision

    Learning Deep Models for Face Anti-Spoofing: Binary or Auxiliary Supervision 论文简介 与人脸生理相关的rppG信号被研究者 ...

  7. Pupil dynamics for iris liveness detection 瞳孔活体检测论文翻译

    Pupil dynamics for iris liveness detection Abstract 本文的主要目的是提出一种基于瞳孔动力学的完整的眼睛活性检测方法.这种方法可以作为虹膜识别系统中呈 ...

  8. 活体检测论文笔记2——Deep Spatial Gradient and Temporal Depth Learning for Face Anti-spoofing

    本文创新点: 设计了一种基于两种见解来检测来自多个框架的表示攻击的新方法: 1)详细的鉴别线索(例如,空间梯度大小)可以通过叠加的普通卷积被丢弃:2)三维运动人脸的动力学为检测假人脸提供了重要的线索 ...

  9. [人脸活体检测] 论文:Aurora Guard- Real-Time Face Anti-Spoofing via Light Reflection

    Aurora Guard- Real-Time Face Anti-Spoofing via Light Reflection 论文简介 该论文提出的方法已经部署到百万台终端,整篇文章底气十足.作者设 ...

最新文章

  1. @程序员,第一批00后开始报考AI专业了
  2. 20天持续压测,告诉你云存储性能哪家更强?
  3. .NET Core微服务之路:不断更新中的目录 (v0.42)
  4. 【控制】《多智能体系统一致性协同演化控制理论与技术》纪良浩老师-第5章-多智能体系统双阶脉冲一致性
  5. CentOS下如何完全卸载MySQL?解决卸载不干净的问题
  6. 【环境搭建005】UBUNTU13.04 android4.08 源码编译实践中遇到的问题
  7. python开发飞船游戏
  8. Linux服务器安装JavaWeb环境(二) Redis,MySql,Zookeeper,Keepalive
  9. 大数据在银行的七个应用实例
  10. c语言中大于号什么意思和作用,程序员必须要使用的大于号,小于号你知道几个?教你轻松入门C语言...
  11. AR智能眼镜会成未来趋势
  12. C#里的进制与ASCII转换
  13. 主动雷达和被动雷达的区别
  14. 专访百度资深工程师孙源:代码强迫症的死实践派
  15. 自动化运维 -- 02 Ansible
  16. 【Unity】获取免费可商用的中文像素字体
  17. $vjudge-$基本算法专题题解
  18. 我们都是大数据的俘虏
  19. 微信电脑版登录时出现:微信遇到错误,给您带来不便,我们深表歉意
  20. Tushare判断指定日期股票是否ST

热门文章

  1. flask之flash
  2. 前端VUE面试题总结
  3. 使用mmdetection训练自己的coco数据集(免费分享自制数据集文件)
  4. SQL视图View的总结和使用
  5. asn1编码格式的解析过程
  6. Node.js CQRS 幻灯片系统开发实战-曾亮-专题视频课程
  7. 关于洛谷哪些题目(入门)
  8. OSG中uniform变量
  9. 数据的离散程度度量:极差、四分位差、平均差、方差、标准差、异众比率、离散系数
  10. java通过进程名称杀进程_根据进程名杀死进程 -kill进程名