Joint Face Detection and Alignment using Multi-task Cascaded Convolutional Networks

本文提出了一种深度级联多任务框架,利用深度卷积网络提高人脸检测和对准性能。通过级联结构和在线硬样本挖掘策略,实现对遮挡、姿态变化等复杂情况的高效处理,同时在FDDB和AFLW基准上表现出优越的精度和实时性。

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

摘要

在无约束环境下,由于姿态、光照和遮挡等因素的影响,人脸检测和对准具有挑战性。最近的研究表明,深度学习方法可以在这两个任务上取得令人印象深刻的表现。在本文中,我们提出了一个深度级联多任务框架,利用它们之间的内在关联来提高它们的性能。特别是,我们的框架采用了一种级联结构,该结构包含精心设计的深度卷积网络的三个阶段,可以粗略地预测人脸和特征点的位置。此外,在学习过程中,我们提出了一种新的在线困难样本挖掘策略,可以自动提高性能,无需人工选择样本。我们的方法在具有挑战性的FDDB和更广泛的技术上取得了优越的精度用于人脸检测的人脸基准,用于人脸对齐的AFLW基准,同时保持实时性。

1 引言

  人脸的检测和对齐是人脸识别和表情分析等许多人脸应用的关键。然而,人脸的巨大视觉变化,如遮挡、位姿变化和极端光照等,给这些任务在现实应用中带来了很大的挑战。
  Viola和Jones[2]提出的级联人脸检测器利用Haar-Like特征和AdaBoost对级联分类器进行训练,取得了良好的性能和实时性。然而,相当多的研究[1,3,4]表明,在现实应用中,即使使用更高级的特征和分类器,这种检测器也可能在人脸视觉变化较大的情况下显著退化。除了级联结构外,[5,6,7]还引入了可变形部分模型(DPM)用于人脸检测,取得了显著的性能。但是,它们需要较高的计算开销,在训练阶段通常需要昂贵的注释。近年来,卷积神经网络(CNNs)在各种计算机视觉任务,如图像分类[9]和人脸识别[10]方面取得了显著进展。
  近年来,由于神经网络在计算机视觉任务中的良好表现,一些基于神经网络的人脸检测方法被提出。Yang等人[11]训练深度卷积神经网络进行人脸属性识别,在人脸区域获得高响应,进而产生人脸的候选窗口。但是,由于CNN结构复杂,这种方法在实际应用中花费了大量的时间。Li等人[19]使用级联CNNs进行人脸检测,但在人脸检测中需要标定边界框,计算开销较大,忽略了人脸特征点定位和边界框回归之间的内在相关性。
  面部对齐也吸引了广泛的兴趣。基于回归的方法[12,13,16]和模板拟合方法[14,15,7]是两个比较流行的类别。最近,Zhang等人[22]提出利用深度卷积神经网络将面部属性识别作为辅助任务来增强人脸对齐性能。
  然而,现有的人脸检测和人脸对齐方法大多忽略了这两个任务之间的内在相关性。虽然已有多部作品试图共同解决这一问题,但仍存在一定的局限性。例如,Chen等[18]利用像素值差的特征,联合使用随机森林进行对齐检测。但是,使用的手工特征限制了它的性能。Zhang等[20]使用多任务CNN来提高多视角人脸检测的准确率,但检测准确率受到初始检测窗口的限制。
  另一方面,在训练过程中,挖掘训练中的难样本对于增强检测器的能力至关重要。然而,传统的硬样本挖掘通常采用脱机方式,这大大增加了手工操作。设计一种能够自动适应当前训练过程的人脸检测与对齐的在线硬样本挖掘方法是理想的。
  在本文中,我们提出了一个新的框架,使用统一的级联网络网络多任务学习来整合这两个任务。我们提出的神经网络包括三个阶段。在第一阶段,它通过一个浅层的CNN快速生成候选窗口。然后,通过一个更复杂的CNN对窗口进行细化,以剔除大量的非人脸窗口。最后,使用功能更强大的CNN对结果进行细化并输出面部特征点位置。该多任务学习框架可以显著提高算法的性能。本文的主要工作概括如下:(1)提出了一种基于级联CNNs的联合人脸检测与对齐框架,并仔细设计了轻量级CNN体系结构,实现了实时性。(2) 提出了一种有效的在线硬样本挖掘方法。(3) 在具有挑战性的基准上进行了广泛的实验,以表明与最新技术相比,该方法在人脸检测和人脸对齐任务中的性能有了显著的提高。

2 方法

在这一节中,我们将描述我们的联合人脸检测和对齐的方法。

A.总体框架

  我们的方法的总体流程如图1所示。给定一幅图像,我们首先将其调整为不同的尺度,构建一个图像金字塔,它是以下三级级联框架的输入:
在这里插入图片描述
图1所示。我们的级联框架流程,包括三级多任务深卷积网络。首先,通过一个快速提议网络(P-Net)生成候选窗口。在此之后,我们在下一个阶段通过优化网络(R-Net)对这些候选人进行优化。在第三阶段,
输出网络(O-Net)产生最终的边界盒和面部特征点位置。
阶段1: 我们利用一个完全卷积的网络[?],被称为建议网络(P-Net),以类似[29]的方式获取候选窗口及其边界框回归向量。然后利用估计的边界框回归向量对候选点进行标定。在此之后,我们使用非最大抑制(NMS)来合并高度重叠的候选对象。
阶段2: 所有候选都被送到另一个CNN,叫做Refine网络(R-Net)进一步剔除大量的假候选数据,使用边界框回归进行标定,并合并NMS候选数据。
阶段3: 这一阶段与第二阶段相似,但是在这一阶段我们的目标是更详细地描述脸部。特别是,该网络将输出五个面部特征点的位置。

B.CNN架构

在[19]中,已经设计了多个cnn用于人脸检测。但是,我们注意到,它的性能可能受到以下因素的限制:(1)一些滤波器缺乏权值的多样性,这可能限制了它们产生有区别的描述。(2)与其他多类目标检测和分类任务相比,人脸检测是一项具有挑战性的二分类任务,它可能需要较少的滤波器数量,但需要更多的辨别能力。为此,我们减少滤波器的数量,将5×5滤波器改为3×3滤波器,以减少计算量,同时增加深度以获得更好的性能。通过这些改进,与[19]中以前的架构相比,我们可以用更少的运行时获得更好的性能(结果如表1所示)。为了公平比较,我们对两种方法使用相同的数据)。我们的CNN架构如图2所示。
在这里插入图片描述

C.训练

  我们利用三个任务来训练我们的CNN检测器:人脸/非人脸分类、边界框回归和人脸特征点定位。
1)人脸分类:将学习目标表述为一个两类分类问题。对每个样本xix_ixi,我们使用交叉熵损失:
在这里插入图片描述
其中,pip_ipi为网络产生的表示样本为人脸的概率。符号yidet∈0,1y_i^{det}∈{0,1}yidet0,1表示真值标签。
2)边界框回归:对于每一个候选窗口,我们预测它与最近的ground truth之间的偏移量(即边框的左上角、高度和宽度)。学习目标被表述为一个回归问题,我们对每个样本xix_ixi使用欧几里得损失:
在这里插入图片描述
其中y^是预测值,y是真实值,y∈R4y∈R^4yR4
3)面部特征点定位:与边界框回归任务相似,人脸特征点检测被制定为一个回归问题,最小化欧氏损失:
在这里插入图片描述
其中y^是预测值,y是真实值,因为有五个特征点,y∈R10y∈R^{10}yR10
4)多源训练:由于我们在每个cnn中使用不同的任务,所以在学习过程中会有不同类型的训练图像,例如face、non-face和部分对齐的face。在这种情况下,一些损失函数没有被使用(如,有时不使用式(1)-(3))。例如,对于背景区域的样本,我们只计算LidetL_i^{det}Lidet,其他两个损失设为0。这可以通过示例类型指示器直接实现。那么整体的学习目标可以表示为:
在这里插入图片描述
其中,N是训练样本数,αjα_jαj代表任务的重要性。P-NET和R-NET中,αdet=1,αbox=0.5,αlandmark=0.5,α_{det}=1,α_{box}=0.5,α_{landmark}=0.5,αdet=1,αbox=0.5,αlandmark=0.5 为了更准确的面部特征点识别,O-NET中,αdet=1,αbox=0.5,αlandmark=1。α_{det}=1,α_{box}=0.5,α_{landmark}=1。αdet=1,αbox=0.5,αlandmark=1 βij∈0,1β_i^j∈{0,1}βij0,1是样本类型指示器。在这种情况下,使用随机梯度下降来训练cnn是很自然的。
5)在线硬样本挖掘:与传统的在原始分类器训练完成后进行硬样本挖掘不同,我们在人脸分类任务中进行在线硬样本挖掘,以适应训练过程。
  特别地,在每个小批中,我们对所有样本在正向传播阶段计算的损失进行排序,并选择其中最顶端的70%作为硬样本。然后我们只计算从硬样本在反向传播阶段的梯度。这意味着我们在训练时忽略了那些对增强检测器帮助不大的简单样本。实验表明,该策略在不需要人工选择样本的情况下,具有更好的性能。其有效性在第三节中得到了证明。

3 实验

  在本节中,我们首先评估所提出的硬样本挖掘策略的有效性。然后将我们的人脸检测器和对齐方法与目前最先进的人脸检测数据集和基准(FDDB)[25],WIDER FACE [24]和
AFLW[8]基准进行比较。FDDB数据集包含了一组2,845张图像中5,171张面孔的注释。更广泛的人脸数据集由32203幅图像中393,703个标记好的人脸边界框组成,其中50%根据图像难度分成三个子集进行测试,40%用于训练,剩下的用于验证。AFLW包含24,386张面孔的人脸地标标注,我们使用与[22]相同的测试子集。最后,我们评估了人脸检测器的计算效率。

A.训练数据

由于我们联合进行人脸检测和对齐,这里我们在训练过程中使用了四种不同的数据注释:(i) negative:即与任何真实人脸的交并比(IoU)值小于0.3的区域;(ii)positive:与真实人脸IoU高于0.65;(3)Part faces:与真实人脸IoU在0.4到0.65之间;和(iv)人脸特征点:标记5个人脸特征点的位置。人脸分类任务采用负脸,正脸和局部脸进行边界框回归,人脸特征点用于进行人脸特征点定位。
每个网络的训练数据描述如下:
1)P-Net:我们从WIDER FACE [24]随机裁剪几块处理[24]以收集positives, negatives和part face。然后,我们从CelebA[23]中裁剪出脸作为人脸特征点。
2) R-Net:我们使用框架的第一阶段从WIDER FACE[24]中检测人脸,收集集positives, negatives和part face。而从CelebA[23]中检测地标脸。
3) O-Net:收集数据类似于R-Net,但是我们使用我们的框架的前两个阶段来检测人脸。

B.在线硬样本挖掘的有效性

  为了评估所提出的在线硬样本挖掘策略的贡献,我们训练了两个O-Nets (一个有在线硬样本挖掘,另一个没有),并比较了它们的损失曲线。为了使比较更加直接,我们只训练
O-Nets用于人脸分类任务。在这两个O-Nets中,包括网络初始化在内的所有训练参数是相同的。为了便于比较,我们使用固定学习率。图3 (a)给出了两种不同训练方式的损失曲线。很明显,硬样本挖掘有利于性能的提高。
在这里插入图片描述
图3所示。(a)有无硬样本挖掘O-Net的验证损失。(b)“JA”表示关节面对齐学习,“No JA”表示不关节。“BBR中没有JA”表示在训练CNN进行边界盒回归时没有将其连接。

C.联合检测与对准的有效性

  为了评估联合检测和对齐的贡献,我们评估了两种不同的O-Net(联合面部特征点回归任务和不联合的O-Net)在FDDB上的性能(为了公平比较,P-Net和R-Net是相同的)。我们还比较了边界框回归在这两种O-Net中的性能。图3 (b)表明,联合特征点定位任务学习对于人脸分类和边界框归任务都是有益的。

D.人脸检测评估

  为了评估我们的人脸检测方法的性能,我们将我们的方法在FDDB上与最先进的方法进行比较[1,5,6,11,18,19,26,27,28,29]和WIDER FACE上最先进的方法[1,24,11]。图4(a)-(d)表明我们的方法在两个基准测试中都比以前的方法有很大的优势。我们还评估了一些挑战的photos1方法。
在这里插入图片描述

E.人脸对齐评价

  在这一部分中,我们比较了我们的人脸对齐方法与以下方法的性能:RCPR [12], TSPM[7], Luxand face SDK [17], ESR [13], CDM [15], SDM [21], TCDCN[22]。在测试阶段,我们的方法有13幅图像没有检测到人脸。因此,我们裁剪这13幅图像的中心区域并将它们作为O-Net的输入。平均误差由估计的特征点与真实值之间的距离来测量,并根据眼间距离进行归一化。图4 (e)表明,我们的方法优于所有最新的方法。

F. 运行效率

  在级联结构的前提下,我们的方法可以实现非常快的联合人脸检测和对准速度。它需要16fps 2.60GHz CPU和99fps GPU (Nvidia Titan Black)。我们的实现目前基于未优化的MATLAB代码。

4.结论

  在本文中,我们提出了一种基于多任务级联网络神经网络的联合人脸检测与对齐框架。实验结果表明,我们的方法在几个具有挑战性的基准测试中(包括用于人脸检测的FDDB和更宽的人脸基准测试,以及用于人脸对齐的AFLW基准测试),在保持实时性能的同时,始终能够超过目前最先进的方法。在未来,我们将利用人脸检测与其他人脸分析任务之间的内在相关性,进一步提高性能。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值