文章目录
Searching Central Difference Convolutional Networks for Face Anti-Spoofing
在CVPR2020由中科院自动化研究所模式识别国家重点实验室主办的ChaLearnFace Anti-spoofing Attack Detection Challenge人脸防伪检测挑战赛中,由奥卢大学与明略科学院深度学习实验室等组成的团队,斩获多模态赛道冠军和单模态赛道亚军。
此次挑战赛中,奥卢大学和明略科学院团队运用的方法,主要来自于《Deep Spatial Gradient and Temporal Depth Learning for FaceAnti-spoofing(FAS-SGTD [2]), CVPR2020 (Oral)》和《Searching Central Difference Convolutional Networks for FaceAnti-spoofing(CDCN [1]), CVPR2020》两篇论文的研究成果。
这篇解读,将重点介绍《Searching Central Difference Convolutional Networks for FaceAnti-spoofing(CDCN [1]), CVPR2020》的内容。
论文地址:https://arxiv.org/abs/2003.04092
代码地址:https://github.com/ZitongYu/CDCN
1 导读
人脸防伪(FAS)在人脸识别系统中起着至关重要的作用。大多数最先进的FAS方法依赖于堆叠卷积和专家设计的网络,在描述详细的纹理信息方面比较弱,在环境变化(如不同的光照度)时容易失效,并且倾向于使用长序列作为输入来提取动态特征,这使得该方法很难部署到需要快速响应的场景中。
2 简介
《Searching Central Difference Convolutional Networks forFace Anti-spoofing(CDCN [1]), CVPR2020》论文,提出了一种基于中心差分卷积(CDC)的新型帧级FAS方法,它能够通过聚合强度和梯度信息来捕获内在的详细模式。用CDC构建的网络,称为中心差分卷积网络(CDCN),相较于用普通卷积构建的网络,能够提供更稳健的建模能力。
此外,在一个专门设计的CDC搜索空间上,可利用神经结构搜索(NAS)发现更强大的网络结构(CDCN++),该网络结构可与多尺度注意力融合模块(MAFM)组装,进一步提升性能。在6个基准数据集上进行了综合实验,结果表明:1)所提出的方法不仅在数据集内部测试中取得了优异的性能(特别是在OULU-NPU数据集(Protocol1)实现了0.2%的ACER),2)在跨数据集测试中也有很好的通用性(特别是从CASIAMFSD到Replay-Attack数据集,实现了6.5%的HTER)。
3 方法
通过下图我们可以直观的看到普通卷积与中心差分卷积(CDC)在伪造线索捕捉上的差异,使用普通卷积非常容易受到光照camera型号等影响,而使用CDC后网络更能捕捉到spoofing的本质特征,且不容易受到外部环境的影响。
中心差分卷积神经网络CDCN:
接下来是核心的CDC公式:
x,y分别为输入,输出的feature map;w,为卷积核参数;P0为当前位置,Pn为局部邻域RR的index。最重要的超参θ,范围是 [0,1],当θ=0时,CDC就变成普通vanilla卷积;当θ=1.0时,就只用了差分信息。当然,这参数可以手工调,也可以自动进行学习,文章里都有对应的消融实验。CDC的代码实现也非常简单,在 Pytorch 或 Tensorflow 只需要几行代码。
上图展示的是文章中用的 Baseline network [4],是18年CVPR中MSU提出来的,我们只用了其单帧伪深度预测的那部分结构。为了公平对比,我们不改变任何的网络架构,只将原始卷积全部换成CDC,结果如下图所示:
Fig. 6 (a) 可见,在OULU-NPU的 protocol-1上,baseline(θ=0)的结果为ACER=3.8%,而随着θ越来越大,性能逐渐变好,当θ=0.7时,取得了最好的性能 ACER=1.0%。也就是说,局部零阶intensity信息和一阶gradient差分信息都在网络中扮演重要的角色,且在活体检测任务中,梯度信息的作用稍微重要一点。
另外我们也探讨了CDC与现有的 LBConv [5] 和 GaborConv [6] 的性能差异,如 Fig. 6 (b) 所示,CDC在活体检测任务中性能远超它们。
搜索一个中心差分卷积神经网络CDCN++:
基于CDC的搜索空间,作者用PC-DARTS [7] 进行low-level, mid-level和high-level的cell架构搜索;如图所示:
在搜出来的backbone里再添加上多级注意力模块,进一步整合multi-level特征,得到 CDCN++;如图所示:
作者在文中同样列出了他们搜索到的网络结构,也就是文中提到的CDCN++本身。利用depth map做回归这类方法所使用的网络结构终于有了更优的选择:
4 实验
下表为OULU-NPU 数据集上的实验结果,OULU-NPU是目前人脸防伪领域最重要的Benchmark之一,难度很大,很有说服力:
CDCN++在OULU-NPU数据集上表现很好,协议1上甚至达到了ACER 0.2%的水平,在所有的协议上均达到了SOTA的水平。再来看下在很具挑战性的跨数据集测试协议上的实验结果:
在跨数据集测试协议上,Train on CASIA-MFSD,Teston Replay-Attack上达到了SOTA水平,在Trainon Replay-Attack, Test on CASIA-MFSD上结果不如FAS-TD与FAS-SGTD[2]。
另外作者在zero-shot的测试协议上也做了实验,zero-shot测试协议为CASIA-MFSD, Replay-Attack, MSU-MFSD三个数据集上的“留一”法实验,结果如下表所示:
CDCN++的结果在大多数协议上甚至超过了专门针对这种cross-type问题的zero-shot方法DTN[3];可见CDC与CDCN++的泛化能力也是很强的。
5 贡献
- 我们设计了一种新的卷积算子——中心差分卷积,由于它在不同环境下对不变的细粒度特征具有显著的表示能力,因此适用于边缘检测任务。
- 在不引入任何额外参数的情况下,CDC可以替代现有神经网络中的普通卷积,形成具有更鲁棒建模能力的中心差分卷积网络(CDCN)。
- CDCN++是CDCN的扩展版本,由搜索到的主干网络和多层次注意力融合模块(MAFM)组成,用于有效地整合多层次疾病预防控制功能。据我们所知,这是为FAS任务搜索神经架构的第一种方法。不同于以前基于Softmax损失的网络连接存储的分类任务,我们在一个专门设计的码分多址搜索空间上搜索适合深度监督的帧级网络。
6 总结
网络结构目前仅针对depth regression的人脸防伪方法是有提升的,未来要扩展到其他方法上,并且在更大的数据集上进行试验。也希望未来的NAS search space里都把CDC考虑进去,毕竟普通vanilla卷积只是CDC的一种特例,使用CDC进行搜索,具有更大的可能性。
Reference:
[1]Zitong Yu et al., Searching Central Difference Convolutional Networks for FaceAnti-Spoofing, CVPR2020
[2]Zezheng Wang et al., Deep Spatial Gradient and Temporal Depth Learning for FaceAnti-spoofing, CVPR2020 (Oral)
[3]Yaojie Liu et al., Deep tree learning for zero-shot face anti-spoofing,CVPR2019
[4]Yaojie Liu et al., Learning deep models for face anti-spoofing: Binary orauxiliary supervision, CVPR2018
[5]Felix Juefei-Xu et al., Local binary convolutional neural networks, ICCV2017
[6]Shangzhen Luan et al., Gabor convolutional networks, TIP2018
[7]Yuhui Xu et al., PC-DARTS: Partial Channel Connections for Memory-EfficientDifferentiable Architecture Search, ICLR2020
[8]Cihang Xie et al., Feature Denoising for Improving Adversarial Robustness,CVPR2019
更多信息请关注公众号: