天天看点

活体检测论文研读五:Face De-Spoofing: Anti-Spoofing via Noise Modeling论文简介论文研读资源链接

文章目录

  • 论文简介
  • 论文研读
    • 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

作为最常见的欺骗,打印攻击和重放攻击已经从不同的角度进行了很好的研究。基于线索的方法旨在检测具有活体特征的线索(例如,眨眼、头部运动)进行判别。但这些方法都是可以被视频重放攻击所迷惑。基于纹理的方法试图使用

LBP

HOG

等手工特征比较真实面部和欺骗面部之间的纹理差异。类似于基于纹理的方法,基于CNN的方法设计了一个统一的特征提取和分类过程。对于基于softmax进行二分类监督训练,但往往具有过拟合风险。无论从哪个角度来看,几乎所有的前人工作都将人脸反欺骗视为一个黑盒二分类问题。相比之下,本文通过建模的方式从原始图像生成欺骗图像的过程来打开黑盒。

受到经典

de-X

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

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

,退化矩阵 A ∈ R m × m {\text{A}} \in {\mathbb{R}^{m \times m}} A∈Rm×m以及加性噪声 n ∈ R m {\text{n}} \in {\mathbb{R}^m} n∈Rm的函数

活体检测论文研读五:Face De-Spoofing: Anti-Spoofing via Noise Modeling论文简介论文研读资源链接

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 = A x ^ + 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 ^ + n N(\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)为 0 0 0。基于我们的研究,我们假设欺骗图像的欺骗噪声是普遍存在(即它在图像的空间域中无处不在)且可重复,即它是图像中某些特定噪声的空间重复。重复性可以通过在傅立叶域中最大化估计噪声的高频幅度来促进

根据文献《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,SIFT

SURF

,将人脸投影到低维嵌入。然而,这些手工制作的特征并不是专门设计来捕捉欺骗面部的细微差别,因此这种嵌入的方式难以捕捉到活体人脸与欺骗人脸的细微差别,此外,这些特征对于诸如照明、姿势等的变化可能不稳定。为了克服这些困难,研究人员在不同的域中解决这个问题,如

HSV

YCbCr

颜色空间,

时域

傅里叶频谱

进入深度学习时代,研究人员旨在建立更高精度的深度模型。

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 truth

face 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

应用退化矩阵和加性噪声来生成,这与前面所述方程具有一致性。欺骗图像是真实图像和图像相关噪声的总和,为了进一步验证这个模型,我们在下图中展示了一个例子

活体检测论文研读五:Face De-Spoofing: Anti-Spoofing via Noise Modeling论文简介论文研读资源链接

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 Net

VQ Net

,视觉质量网络)

活体检测论文研读五:Face De-Spoofing: Anti-Spoofing via Noise Modeling论文简介论文研读资源链接

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 Net

VQ Net

的关注。下图显示了网络的详细结构信息,整个网络可以实现端到端的训练

活体检测论文研读五:Face De-Spoofing: Anti-Spoofing via Noise Modeling论文简介论文研读资源链接

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 ∈ R 256 × 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个池化层。受到残差网络的激励,我们采用了一个

捷径连接

来连接来自于 p o o l 1 − 1 pool1-1 pool1−1、 p o o l 1 − 2 pool1-2 pool1−2、 p o o l 1 − 3 pool1-3 pool1−3的响应,然后将其送入 c o n v 1 − 10 conv1-10 conv1−10。这种操作帮助我们将不同尺度的特征相应传递到后面的阶段并简化训练过程。通过三个以上的卷积层,来自于 c o n v 1 − 12 conv1-12 conv1−12的响应 F ∈ R 32 × 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

中的每个卷积层都配有

ELU

BN

层。为了监督

DS Net

的训练,我们设计了多重损失函数:包括与图像质量有关的

DQ Net

VQ 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

估计应该从输入图像中减去的欺骗噪声模式,

J D Q = ∥ CN N D Q ( I ^ ) − D ∥ 1 {J_{DQ}} = {\left\| {{\text{CN}}{{\text{N}}_{DQ}}(\widehat {\text{I}}) - {\text{D}}} \right\|_1} JDQ​=∥∥∥​CNNDQ​(I

)−D∥∥∥​1​

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

Visual Quality Net

我们部署一个GAN来所估计活体图像 I ^ \widehat {\text{I}} I

的视觉质量。给定真实的活体图像 I live \text{I}_{\text{live}} Ilive​以及合成的活体图像 I ^ \widehat {\text{I}} I

VQ Net

被训练来区分 I live \text{I}_{\text{live}} Ilive​和 I ^ \widehat {\text{I}} I

。与此同时,

DS Net

试图重建逼真的活体图像,

VQ Net

则将它们归类为非合成活体(真实活体)图像。

VQ Net

包含6个卷积层和一个全连接层组成,输出为一个

2D

向量,表示输入图像是真实活体还是合成活体的概率。在训练期间的每次迭代中,

VQ Net

被评估为两个批次,第一批次是固定

DS Net

并更新

VQ Net

J V Q t r a i n = − E I ∈ R log ⁡ ( CN N V Q ( I ) ) − E I ∈ S log ⁡ ( 1 − CN N V Q ( CN N D S ( 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

J V Q t e s t = − E I ∈ S log ⁡ ( CN N V Q ( CN N D S ( 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

)来强制真实活体图像的欺骗噪声为 0 0 0。其次,

0\1

映射损失(

0\1 map loss

)被用来证明无处不在的欺骗噪音。最后,通过重复损失(

repetitive loss

)来鼓励欺骗噪声的重复性。我们将三个损失函数描述如下:

Magnitude Loss

真实活体图像的欺骗噪声为 0 0 0。幅度损失可以对估计噪声施加约束。给定估计噪声 N \text{N} N,真实活体图像 I \text{I} I的重建活体图像 I ^ = I − N \widehat {\text{I}}=\text{I}-\text{N} I

=I−N,可以得到,

J m = ∥ 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,可以得到,

J z = ∥ CN N 01 m a p ( F ; Θ ) − M ∥ 1 {J_z} = {\left\| {{\text{CN}}{{\text{N}}_{01map}}({\text{F}};\Theta ) - {\text{M}}} \right\|_1} Jz​=∥CNN01map​(F;Θ)−M∥1​

其中 M ∈ 0 32 × 32 \text{M}\in\text{0}^{32×32} M∈032×32或 M ∈ 1 32 × 32 \text{M}\in\text{1}^{32×32} M∈132×32是zero\one map标签

Repetitive Loss

基于前面的讨论,我们假设欺骗噪声模式是重复的,因为它是由重复的欺骗介质产生的。为了鼓励重复性,我们将估计的噪声 N \text{N} N转换到傅立叶域,并计算高频带中的最大值。高峰的存在表明了重复的模式。我们希望最大化欺骗图像的峰值,最小化真实活体图像的峰值,因此我们设计以下损失函数:

J r = { − max ⁡ ( H ( F ( N ) , k ) ) , I ∈ S p o o f ∥ max ⁡ ( H ( F ( N ) , k ) ) ∥ 1 , I ∈ L i v e {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是傅里叶算子, H H H是掩蔽图像低频域的算子,即将移位的

2D

傅立叶响应中心的 k × k k × k k×k区域设置为零

最后,我们训练中的总损失函数是上述损失函数和图像质量监督的加权和,

J T = J z + λ 1 J m + λ 2 J r + λ 3 J D Q + λ 4 J V Q t e s t {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​表示权重。在训练过程中,我们在优化方程 J T J_T JT​和 J V Q t r a i n J_{{VQ}_{train}} JVQtrain​​之间交替

Experimental Results

Experimental Setup

Databases

此次工作在三个人脸反欺骗数据集上进行评估,其中包括打印和重放攻击:

Oulu-NPU

CASIA-MFSD

Replay-Attack

Oulu-NPU

是一个高分辨率数据库且考虑到许多现实世界的变化。

Oulu-NPU

还包括4个测试协议:

▪协议 1 1 1评估光照变化,

▪协议 2 2 2检查不同欺骗介质的影响,

▪协议 3 3 3检查不同摄像设备的效果,

▪协议 4 4 4包含上述所有挑战,接近交叉测试的场景

CASIA-MFSD

包含分辨率为 640 × 480 640×480 640×480和 1280 × 720 1280×720 1280×720的视频。

Replay-Attack

包括 320 × 240 320×240 320×240的视频。这两个数据库经常用于交叉测试

Parameter setting

作者使用 T e n s o r F l o w TensorFlow TensorFlow实现本文方法。其中

batch size=6

learning rate = 3e-5

。在重复损失中设置

k = 64

, λ 1 λ1 λ1到 λ 4 λ4 λ4分别设置为 3 3 3、 0.005 0.005 0.005、 0.1 0.1 0.1和 0.016 0.016 0.016。

DQ Net

是单独训练的,并且在

DS Net

VQ Net

的更新期间保持固定,但是所有子网络在每个协议中使用相同和各自的数据进行训练

Evaluation metrics

与以前的方法相比,我们使用

Attack Presentation Classification Error Rate

( A P C E R APCER APCER)、

Bona Fide Presentation Classification Error Rate

( B P C E R BPCER BPCER)和 A C E R = ( A P C E R + B P C E R ) / 2 ACER = (APCER + BPCER)/2 ACER=(APCER+BPCER)/2对

Oulu-NPU

进行内部测试,使用

Half Total Error Rate

( H T E R HTER HTER) 、 F A R FAR FAR和 F R R FRR FRR总和的一半在

CASIA-MFSD

Replay-Attack

之间进行交叉测试

Ablation Study

使用

Oulu-NPU

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

Different fusion methods

在所提出的网络结构中,三个输出可用于分类:

0\1 map

的范数、欺骗噪声模式或深度图映射。由于我们的学习具有区分性,我们可以简单地使用像

L-1范数

这样的基本分类器。注意到更高级的分类器是适用的并且可能会导致更好的性能。下表显示了每个输出的性能以及它们最大值和平均值的融合。结果表明,欺骗噪声和深度图的融合效果最好。然而,添加

0\1 map

分数并不能提高准确性,因为它包含与欺骗噪声相同的信息

活体检测论文研读五:Face De-Spoofing: Anti-Spoofing via Noise Modeling论文简介论文研读资源链接

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

因此,在接下来的实验中,我们通过欺骗噪声 N \text{N} N和深度图 D ^ \widehat {\text{D}} D

的平均融合来报告性能,即 s c o r e = ( ∥ N ∥ 1 + ∥ D ^ ∥ 1 ) / 2 score = ({\left\| {\text{N}} \right\|_1} + {\left\| {\widehat {\text{D}}} \right\|_1})/2 score=(∥N∥1​+∥∥∥​D

∥∥∥​1​)/2

Advantage of each loss function

在我们所提出的结构中有三个主要的损失函数。为了显示每个损失函数的效果,我们对每个损失训练一个网络并逐一排除。通过禁用

magnitude loss

0\1 map loss

repetitive loss

,我们分别获得了 5.24 5.24 5.24、 2.34 2.34 2.34和 1.50 1.50 1.50的 A C E R s ACERs ACERs。为了进一步验证

repetitive loss

,我们在高分辨率图像上进行了一项实验,将网络输入更改为原始 1080 P 1080P 1080P图像的脸颊区域。具有

repetitive loss

的网络其 A C E R ACER ACER是 2.92 2.92 2.92,不具有

repetitive loss

的网络无法收敛

Resolution and blurriness

如消融研究的

repetitive loss

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

活体检测论文研读五:Face De-Spoofing: Anti-Spoofing via Noise Modeling论文简介论文研读资源链接

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

的内部测试和

CASIA

Replay-Attack

的交叉测试中的准确性

Intra Testing

我们比较了

Oulu-NPU

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

活体检测论文研读五:Face De-Spoofing: Anti-Spoofing via Noise Modeling论文简介论文研读资源链接

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

我们在

CASIA-MFSD

Replay-Attack

之间进行交叉测试。如下表所示。5、我们的方法从

CASIA-MFSD

Replay-Attack

的交叉测试中取得了竞争性能。然而,与从

Replay-Attack

CASIA-MFSD

的最好结果相比,我们实现了更差的 H T E R HTER HTER。我们假设原因是

CASIA-MFSD

的图像比重放攻击的分辨率高得多。这表明,用高分辨率数据训练的模型可以很好地在低分辨率测试数据上泛化,反过来却不成立。这是该方法的一个局限性,值得进一步研究

活体检测论文研读五:Face De-Spoofing: Anti-Spoofing via Noise Modeling论文简介论文研读资源链接

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 ∈ R 256 × 256 × 6 \text{N}\in\mathbb{R}^{256×256×6} N∈R256×256×6投影到二维平面,下图显示了

Oulu-NPU

协议 1 1 1上测试视频的分布。与我们的噪声假设一致,左图显示活体视频的噪声聚类良好,欺骗视频的噪声与主题相关。为了获得更好的可视化效果,我们利用高通滤波器提取噪声模式的高频信息进行降维。右图显示,高频部分具有更多与主题无关的欺骗类型信息并且可用于欺骗媒体的分类

活体检测论文研读五:Face De-Spoofing: Anti-Spoofing via Noise Modeling论文简介论文研读资源链接

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分类器。我们训练了两个模型,一个三级分类器(

live

print

display

)和一个五级分类器(

live

print1

print2

display1

display2

),它们分别达到 82.0 % 82.0\% 82.0%和 54.3 % 54.3\% 54.3%的分类精度,如下表所示

活体检测论文研读五:Face De-Spoofing: Anti-Spoofing via Noise Modeling论文简介论文研读资源链接

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

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

Successful and failure cases

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

false positive

)案例。失败是由于不希望的噪声估计,这将激励我们进一步研究

活体检测论文研读五:Face De-Spoofing: Anti-Spoofing via Noise Modeling论文简介论文研读资源链接

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.

活体检测论文研读五:Face De-Spoofing: Anti-Spoofing via Noise Modeling论文简介论文研读资源链接

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

继续阅读