2019 FeatherNets: Convolutional Neural Networks as Light as Feather for Face Anti-spoofing

【代码】https://github.com/SoftwareGift/FeatherNets_Face-Anti-spoofing-Attack-Detection-Challenge-CVPR2019

创新点

  • 提出轻量级网络Feather:
    • thin CNN stem——计算代价小;
    • 提出流模块——比GAP(Global Average Pooling)精确度更高;
  • 设计了一种新的融合分类器体系结构,将从多模态数据(depth 和 IR 数据)中学习到的多模型进行组合和级联;

成就

原理

真实人脸的depth image是不均匀的,攻击人脸的depth image是平面的。

架构设计

2019 FeatherNets: Convolutional Neural Networks as Light as Feather for Face Anti-spoofing
感受野中心对输出的影响大于边缘对输出的影响,因此,RF1比RF2具有更大的有效感受域。

流模块

2019 FeatherNets: Convolutional Neural Networks as Light as Feather for Face Anti-spoofing

  • DWConv(stride>1)用于缩减输出的像素采样
  • 计算过程:
    FVn(y,x,m)=i,jKi,j,mFINy(i),INx(j),mFV_n(y,x,m)=\sum_{i,j}K_{i,j,m}·F_{IN_y(i),IN_x(j),m}
    • 其中,
      N=HWCN=H^{'} * W ^ {'} *C
      n(x,y,m)=m×H×W+y×H+xn(x,y,m)=m\times H^{'}\times W^{'}+y\times H^{‘}+x
      INy(i)=y×S0+iIN_y(i)=y\times S_0+i
      INx(j)=x×S1+jIN_x(j)=x\times S_1+j
      S_0是垂直步长,S_1是水平步长
  • 流模块可用来代替传统网络中的全局平均池化层和全连接层

网络结构

2019 FeatherNets: Convolutional Neural Networks as Light as Feather for Face Anti-spoofing

  • 除了流模块,还有 Block A/B/C 来构成 FeatherNet A/B
    2019 FeatherNets: Convolutional Neural Networks as Light as Feather for Face Anti-spoofing
  • 基于深度数据训练的模型可以达到 0.003 ACER
  • 对于深度模型不确定的样本,IR数据可以提供较好的伪判断性能
  • 第一阶段由多个用深度数据训练的模型加权平均得到,对于不确定的样本进行第二阶段的判断,第二阶段用IR数据训练FeatherNetB模型,若第二阶段判断为假,则作为最后结果,若判断为真,则结合第一阶段的结果共同决定。

评价标准

  • Attack Presentation Classification Error Rate (APCER)
  • Normal Presentation Classification Error Rate (NPCER)
  • Average Classification Error Rate (ACER)

实验结果

2019 FeatherNets: Convolutional Neural Networks as Light as Feather for Face Anti-spoofing
2019 FeatherNets: Convolutional Neural Networks as Light as Feather for Face Anti-spoofing