美文网首页
人脸活体检测-中心差分卷积网络分析

人脸活体检测-中心差分卷积网络分析

作者: 教训小磊 | 来源:发表于2021-03-07 12:31 被阅读0次

论文题名:《Searching Central Difference Convolutional Networks for Face Anti-Spoofing》

arxiv:https://arxiv.org/abs/2003.04092v1

github: https://github.com/ZitongYu/CDCN

人脸识别以其方便性,在许多交互式人工智能系统中得到了广泛的应用。然而,对于表示攻击的脆弱性限制了它的部署。仅仅将打印的图像或视频呈现给生物识别传感器可能会愚弄人脸识别系统。典型的表示攻击例子是打印图片,视频回放,3D面具。为保证人脸识别系统的可靠使用,人脸活体检测方法是检测此类表示攻击的重要手段。

现有一些先进的活体检测技术存在以下问题:

1.依赖于堆叠卷积和专家设计的网络,这在描述细粒度信息方面能力较弱,在环境变化(如不同光照)时容易失效;

2.倾向于使用长序列作为输入来提取动态特征,使它们难以部署到需要快速响应的场景中。

本文提出一种新的应用于活体检测的卷积算子,名为中心差分卷积,它能够通过聚合强度和梯度信息来捕获人脸图像的固有细节信息。简单来说,中心差分卷积是在标准卷积的基础上多加了一步中心差分操作。具体操作如下图一所示:

图一 中心差分卷积

标准卷积主要由采样和聚合两个步骤组成,中心差分卷积在这中间插了一个中心差分的步骤,具体操作以3x3卷积核为例,3x3卷积核在特征图上滑动扫描,在聚合前(即和卷积核权重进行点乘操作),提取出3x3卷积核对应区域中的9个像素点,并再取出这9个中的中心点,如图一黄色方块,然后将中心点的像素值与其余9个(包括它本身)像素点相减,得到9个中心差分后的更新像素值,最后以这9个更新值在与卷积核权重进行点积聚合得到最终的输出值。这个是以图像来进行理解的。接下来如图二数值形式的解释,a1~a9为特征图像素值,w1~w9为卷积核权重,b1~b9和c1为操作更新后的值。

图二  数值形式解释

当然前面的卷积方法准确意义上来说还不能叫中心差分卷积。根据论文的阐述,真正的中心差分卷积是标准卷积和带有中心差分的卷积的一个结合体,论文中在网络设计时用的卷积是基于下面的公式的。右边是左边因式分解后的简化结果。

图三 中心差分卷积公式

以上就是这篇文章最核心的东西---中心差分卷积,基于这个卷积算子以及DepthNet,设计了一个活体检测网络,实验结果当然要比原来的DepthNet好很多,这也证明了中心差分卷积的强大。不过我自己实测,发现DepthNet+中心差分卷推理时内存消耗很大,而且速度也相对较慢,我猜测是特征图较大吧,相比基于ImageNet预训练的网络,最后输出分辨率都是7x7,而DepthNet是32x32(当然这个架构不是这篇文章提出的 - -!)。不过优点是效果真的不错,已经达到了我基于ImageNet预训练网络的鉴别精度。

最后这篇文章还有一部分是讲神经架构搜索的,主要在原来DepthNet+中心差分卷积的基础上进行升级,查看源代码可知,主要是加大了通道的数量,加入了多尺度注意力融合模块,这个模块是在CBAM中的空间注意力上改进的。

图四 多尺度注意力融合模块

总结:提出了一种专门用于人脸活体检测的卷积算子---中心差分卷积,高效又不增加模型参数量,基于此设计了新的活体检测模型(DepthNet+中心差分卷积)并取得了不错的鉴别效果,同时通过前言技术---神经架构搜索进一步增强的网络的性能。下一步,希望作者可以在轻量化方向改进,这样这个算法就可以方便地进行部署了。

相关文章

网友评论

      本文标题:人脸活体检测-中心差分卷积网络分析

      本文链接:https://www.haomeiwen.com/subject/ajqlpktx.html