论文阅读笔记(四)——基于深度卷积神经网络的多视角人脸检测

本文介绍了基于深度卷积神经网络的多视角人脸检测方法DDFD,它无需姿态/标记,能用单模型在大范围角度检测人脸。研究发现正例分布与检测器性能相关,未来可通过优化采样和数据增强提升性能。实验对比了DDFD与R-CNN及传统方法,展示了其在性能上的优势。
摘要由CSDN通过智能技术生成

论文阅读笔记(四)——基于深度卷积神经网络的多视角人脸检测

论文简介

论文中文翻译:《基于深度卷积神经网络的多视角人脸检测》
论文名称:《Multi-view Face Detection Using Deep Convolutional Neural Networks》

会议情况

会议:《ICMR》
情况:计算机图形学与多媒体 B 类会议

摘要

本文考虑多视角人脸检测问题。虽然已经对这个问题进行了大量的研究,但是当前用于该任务的最先进的方法需要面部标志的注释,例如TSM [25],或者面部姿态的注释[28,22]。它们还需要训练几十个模型来完全捕捉所有方向的人脸,例如HeadHunter方法中的22个模型[22]。在本文中,我们提出了深度密集人脸检测器(DDFD),这是一种不需要姿态/标志点标注的方法,并且能够使用基于深度卷积神经网络的单个模型在大范围的方向上检测人脸。该方法复杂度最小;不同于其他最近的深度学习对象检测方法[9],它不需要额外的组件,如分割,包围盒回归,或SVM分类器。此外,我们分析了所提出的人脸检测器对不同方向的人脸的得分,发现1)所提出的方法能够从不同角度检测人脸,并且能够在一定程度上处理遮挡,2)训练集中的正例分布与所提出的人脸检测器的得分之间似乎存在相关性。后者表明,通过使用更好的采样策略和更复杂的数据增强技术,可以进一步提高所提出方法的性能。在流行的人脸检测基准数据集上的评估表明,我们的单模型人脸检测算法与以前的方法相比具有相似或更好的性能,以前的方法更加复杂,需要对不同的姿态或面部标志进行标注。
在这里插入图片描述

类别和主题描述符

1.4[图像处理和计算机视觉]:应用

关键词

人脸检测,卷积神经网络,深度学习

正文

介绍

随着智能手机和快速移动网络的广泛使用,每天有数百万张照片上传到Dropbox等云存储或脸书、Twitter、Instagram、Google+和Flicker等社交网络。从这些照片中组织和检索相关信息非常具有挑战性,并直接影响这些平台上的用户体验。例如,用户通常寻找在特定位置、特定时间或与特定朋友一起拍摄的照片。前两个查询相当简单,因为今天几乎所有的相机都将时间和GPS位置嵌入到照片中。最后一个查询,即上下文查询,更具挑战性,因为没有关于照片中的人的身份的明确信号。这种识别的关键是人脸的检测。这使得低复杂性、快速和准确的人脸检测成为基于云的照片共享/存储平台的重要组成部分。
在过去的二十年里,人脸检测一直是视觉领域的一个活跃的研究领域。维奥拉和琼斯的开创性工作[40]使得以非常低的计算复杂度实时快速检测右上方的人脸成为可能。他们的探测器,叫做探测器级联,由一系列简单到复杂的人脸分类器组成,已经引起了广泛的研究。此外,检测器级联已被部署在许多商业产品中,如智能手机和数码相机。虽然级联检测器可以准确地找到可见的正面朝上的人脸,但它们通常无法从不同的角度检测人脸,例如侧视或部分遮挡的人脸。由于用户生成的内容通常包含来自不同角度的人脸或不完全可见的人脸,因此这种故障会显著影响照片组织软件/应用程序的性能;例如参见图1。这在过去的二十年中激发了许多关于多视角人脸检测问题的工作。目前的解决方案可归纳为三类:

  • 基于级联:这些方法扩展了Viola和Jones检测器级联。例如,[41]建议为面部的每个视图训练一个检测器级联,并在测试时组合它们的结果。最近,[22]将该方法与积分通道特征[3]和软级联[1]相结合,并表明通过使用22个级联,可以获得用于多视角人脸检测的最新性能。然而,这种方法需要面向面的注释。此外,它在训练和测试中的复杂性随着模型数量的增加而线性增加为了解决计算复杂性问题,Viola和Jones [39]建议首先使用树分类器估计人脸姿态,然后运行相应人脸姿态的级联来验证检测。该方法在提高检测速度的同时,由于初始树分类器的错误是不可逆的,因此降低了准确率。[13,12]进一步改进了这种方法,在最初的分类器之后使用几个检测器,而不是一个检测器级联。最后,[35]和[28]将检测器级联与多类增强相结合,提出了一种多类/多视图目标检测方法。
  • 基于DPM:这些方法基于可变形零件模型技术[5],其中一个面被定义为其零件的集合。这些部分通过无监督或有监督的训练来定义,并且训练分类器潜在SVM来找到这些部分及其几何关系这些检测器对部分遮挡是鲁棒的,因为即使当一些部分不存在时,它们也可以检测人脸。然而,这些方法是计算密集型的,因为1)它们需要为每个候选位置求解一个潜在的SVM,2)必须训练和组合多个差分相位调制,以实现最先进的性能[22,25]。此外,在某些情况下,基于DPM的模型需要为训练标注面部标志,例如[25]。
  • 基于神经网络:使用神经网络进行人脸检测的历史悠久[38,37,27,8,7,6,26,11,24,23]。特别是,[38]训练了一个基于卷积神经网络的两阶段系统。第一个网络定位人脸的粗略位置,第二个网络验证检测并进行更精确的定位。在[27]中,作者训练了多个人脸检测网络,并组合它们的输出来提高性能。[8]训练了用于人脸检测的单层多层网络经过训练的网络能够部分处理不同的姿态和旋转角度。最近,[23]提出联合训练神经网络用于人脸检测和姿态估计。他们表明,这种联合学习方案可以显著提高检测和姿态估计的性能。我们的方法遵循了[8,23]中的工作,但构建了一个更深入的CNN人脸检测。
    Viola和Jones [39]指出,多视角人脸检测的关键挑战是,Boosting或SVM等学习算法和HOG或Haar小波等图像特征不足以捕捉不同姿态的人脸,因此得到的分类器不准确。然而,随着深度学习和GPU计算的最新进展,可以利用深度卷积神经网络的高容量来进行特征提取/分类,并为多视图人脸检测任务训练单个模型。
    深度卷积神经网络最近在各种视觉任务中表现出色,如人脸识别[34,30],对象分类[19,31]和对象检测[9,29,18,32]。特别是[19]训练了一个称为AlexNet的8层网络,并表明深度卷积神经网络在大规模图像分类任务中可以显著优于其他方法。对于对象检测的任务,[9]提出了使用图像分割技术的R-CNN方法,选择性搜索[36],以找到候选图像区域,并使用针对PASCAL VOC数据集中的对象进行微调的AlexNet版本对这些候选区域进行分类。最近,[33]改进了R-CNN,方法是:1)用多盒方法的候选区域增加选择性搜索建议[4],2)用更深层次的CNN Google net模型代替8层AlexNet[31]。尽管有最新的性能,这些方法在计算上是次优的,因为它们需要独立地评估超过2000个重叠的候选区域的CNN。为了解决这个问题,[18]最近提议在完整图像上运行CNN模型一次,并创建一个特征金字塔然后,通过选择性搜索获得的候选区域被映射到该特征金字塔空间中。[18]然后使用映射区域上的空间金字塔汇集[20]和SVM来分类候选提议除了基于区域的方法之外,深度卷积神经网络还与滑动窗口方法一起使用,例如过吃[29]和可变形零件模型[10]用于对象检测,而[17]用于人体姿态估计。一般来说,对于目标检测,这些方法与基于区域的方法(如R-CNN [9]和[33])相比,性能仍然较差。然而,在我们的人脸检测实验中,我们发现基于区域的方法通常非常慢,导致相对较弱的性能。
    在本文中,我们提出了一种基于深度学习的方法,称为深度密集人脸检测器(DDFD),该方法不需要姿态/地标注释,并且能够使用单个模型在大范围的方向上检测人脸。所提出的方法具有最小的复杂性,因为与最近的深度学习对象检测方法(如[9])不同,它不需要用于分割、包围盒回归或SVM分类器的附加组件。与以前基于卷积神经网络的人脸检测器(如[8])相比,我们的网络更深,并且是在更大的训练集上训练的。此外,通过分析检测置信度得分,我们表明训练集中的正例分布与所提出的检测器的置信度得分之间似乎存在相关性。这表明,我们的方法的性能可以通过使用更好的采样策略和更复杂的数据增强技术来进一步提高。在我们的实验中,我们将所提出的方法与一种基于深度学习的方法,以及几种基于级联和DPM的方法进行了比较。我们表明,即使不使用姿态标注或关于面部标志的信息,该算法也能获得相似或更好的性能。
提议的方法

在这一部分,我们提供了我们提出的人脸检测器的算法和训练过程的细节,称为深度密集人脸检测器(DDFD)。关键思想是1)利用深度卷积网络用于分类和特征提取的高容量来学习用于从多个视角检测人脸的单个分类器,以及2)通过简化检测器的架构来最小化计算复杂度。
我们从微调AlexNet [19]进行人脸检测开始。为此,我们从AFLW数据集[21]中提取了训练示例,该数据集由21K个图像和24K个人脸注释组成。为了增加正面例子的数量,我们随机抽样图像的子窗口,如果它们与基本事实有超过50%的IOU(交集超过并集),就将它们用作正面例子。为了进一步增加数据,我们还随机翻转了这些训练示例。这导致总共有20万个正面和2000万个负面的训练例子。这些例子随后被调整到227 × 227,并用于微调预先训练的AlexNet模型[19]。为了进行微调,我们使用了50K迭代和128幅图像的批量大小,其中每批包含32个阳性和96个阴性例子。
使用这种微调的深度网络,可以采取基于区域或滑动窗口的方法来获得最终的人脸检测器。在这项工作中,我们选择了滑动窗口方法,因为它的复杂性较低,并且独立于额外的模块,如选择性搜索。此外,正如在实验部分所讨论的,与美国有线电视新闻网相比,这种方法产生了更好的结果。
我们的人脸分类器,类似于AlexNet [19],由8层组成,其中前5层是卷积的,最后3层是全连通的。我们首先通过重塑层参数将完全连接的层转换成卷积层[14]。这使得在任何大小的图像上高效运行CNN并获得人脸分类器的热图成为可能。热图的一个例子如图2所示。热图中的每个点都显示了CNN的响应,即在原始图像中对应的227× 227区域有一张脸的概率。然后对检测到的区域进行非最大抑制处理,以准确定位人脸。最后,为了检测不同大小的人脸,我们放大/缩小了图像并获得了新的热图。我们尝试了不同的缩放方案,发现每倍频程缩放图像3次可以获得相当好的性能。这很有意思,因为许多其他方法,如[22,2],要求每个八度音程的大小调整次数要大得多,例如8次。请注意,不像美国有线电视新闻网[9],它使用SVM分类器来获得最终得分,我们删除了SVM模块,并发现网络输出对于人脸检测任务来说是足够丰富的
在这里插入图片描述
通过使用类似于[29,9]的边界盒回归模块,可以进一步改进人脸定位。然而,在我们的实验中,添加这个模块降低了性能。因此,与其他方法相比,如使用选择性搜索的R-CNN [9],SVM和边界盒回归,或基于可变形零件模型的DenseNet [10],我们提出的方法(DDFD)相当简单。尽管简单,如实验部分所示,DDFD可以实现最先进的人脸检测性能

探测器分析

在本节中,我们研究了所提出的人脸检测器的分数,并观察到这些分数与训练集中的正面例子的分布之间似乎存在相关性。我们可以在以后使用这个假设来获得更好的训练集,或者设计更好的数据扩充程序,并提高分布式数据挖掘的性能。
我们首先在不同的面内和面外旋转、遮挡和光照条件下运行我们的检测器(例如参见图1、图2和图3)。首先,请注意,在所有情况下,除了图1中两个高度遮挡的人脸之外,我们的检测器都能检测到人脸。其次,对于几乎所有检测到的人脸,检测器的置信度都很高,接近1。同样如图2右侧的热图所示,所有其他地区的得分接近于零。这说明DDFD具有很强的分辨力,其输出可以直接使用,不需要像R-CNN [9]中使用的SVM那样的任何后处理步骤第三,如果我们比较图2-左中人脸的检测器得分,很明显底部的右上正面得分非常高,为0.999,而面内旋转较多的人脸得分较低。请注意,这些分数是sigmoid函数的输出,即CNN中的概率(软最大值)层,因此它们的微小变化反映了前一层输出的更大变化。有趣的是,随着面内旋转的增加,分数会降低。在图1和图3中,我们可以看到面外旋转面和遮挡面的趋势相同。我们假设分数的这种趋势不是因为检测旋转的人脸更困难,而是因为在训练过程中缺乏良好的训练例子来表示这些人脸。
为了检验这个假设,我们研究了AFLW数据集的人脸注释[21]。图4显示了标注面的平面内、俯仰(上下)和偏航(左右)旋转的分布。如图所示,面外旋转超过30度的面的数量明显少于旋转小于30度的面。同样,偏航或俯仰小于50度的面的数量明显大于其他面。考虑到这种扭曲的训练集,微调后的CNN对右上面孔更有信心也就不足为奇了。这是因为美国有线电视新闻网被训练成最小化软最大损失函数的风险
在这里插入图片描述
其中,B是随机梯度下降迭代中使用的示例批次,yi是示例xi的标签。乙中选择样本的抽样方法可以严重影响最终检测器的性能。在一个极端的情况下,如果B从来不包含某个类的任何例子,CNN分类器永远不会学习那个类的属性。
在我们的实现中|B| = 128,它是通过随机抽样训练集收集的。然而,由于阴性样品的数量比阳性样品的数量多100倍,均匀取样将导致每批仅约2个阳性样品。这大大降低了CNN区分人脸和非人脸的机会。为了解决这个问题,我们强制每个批次的四分之一为正样本,其中正样本是从正训练样本池中统一采样的。但是,如图4所示,该池在不同方面高度倾斜,例如平面内和平面外旋转。因此,美国有线电视新闻网越来越多的正面曝光;因此,微调后的美国有线电视新闻网对右上方的人脸比对旋转的人脸更有信心也就不足为奇了。这一分析表明,提高DDFD性能的关键是确保所有类别的训练样本在优化CNN方面有相似的贡献机会这可以通过实施基于人口的抽样策略来实现,例如增加低人口类别的选择概率
类似地,如图1所示,当前的人脸检测器仍然无法检测到遮挡严重的人脸。类似于旋转人脸的问题,我们认为这个问题也可以通过修改训练集来解决。事实上,AFLW数据集[21]中的大多数人脸图像都没有被遮挡,这使得CNN很难知道人脸可以被遮挡。这个问题可以通过使用更复杂的数据增强技术来解决,例如封闭正面例子的一部分。请注意,简单地用黑/白或噪声块覆盖部分正面例子是没有用的,因为CNN可能会学习那些人工模式。
综上所述,提出的基于深度CNN的人脸检测器能够从不同角度检测人脸,并在一定程度上处理遮挡。然而,由于训练集是倾斜的,网络对正面更有信心,并且通过使用更好的采样策略和更复杂的数据增强技术可以获得更好的结果。

实验

我们使用Caffe库[16]实现了提出的人脸检测器,并使用其预先训练的Alexnet [19]模型进行微调。关于我们提议的面部检测器的培训过程的更多细节,请参见第2节。在将完全连接的层转换成卷积层[14]之后,可以在对Caffe代码的一次调用中获得整个输入图像的网络响应(热图)。热图显示了原始图像中步长为32像素的每个227 × 227窗口的CNN得分。我们直接使用这个回答来将一个窗口分类为人脸或背景。为了检测小于或大于227×227的人脸,我们分别放大或缩小图像。
我们在帕斯卡人脸[42],AFW [25]和FDDB [15]数据集上测试了我们的人脸检测方法。为了选择和调整所提出的人脸检测器的参数,我们使用了PASCAL人脸数据集。PASCAL人脸数据集由851幅图像和1341张带注释的人脸组成,其中带注释的人脸可以小到35像素。AFW数据集是使用Flickr图像构建的。它有205张图像,473张注释过的脸,它的图像往往包含杂乱的背景,在人脸视点和外观(年龄、太阳镜、化妆品、肤色、表情等)上都有很大的变化。).类似地,FDDB数据集[15]由5171个带注释的人脸和2846幅图像组成,包含遮挡、失焦和低分辨率的人脸。为了进行评估,我们使用了[22]提供的工具箱,该工具箱带有针对PASCAL Face和AFW数据集的校正注释以及FDDB数据集的原始注释。
我们首先使用PASCAL数据集为建议的检测器找到最佳的标度数。我们将图像放大5倍,以检测小至227/5 = 45像素的人脸。然后,我们用因子fs缩小图像,并重复该过程,直到最小图像尺寸小于227像素。对于fs的选择,我们选择了fs∈ {√0.5 = 0.7071,3√0.5 = 0.7937,5√0.5 = 0.8706,7√0.5 = 0.9056 };图5显示了这个参数对我们的人脸检测器(DDFD)的精度和召回率的影响。降低fs允许检测器更精细地扫描图像,并增加计算时间。根据图5,FSS的这些选择似乎对检测器的性能影响不大。令人惊讶的是,fs= 3√0.5的性能似乎稍好一些,尽管确实如此不要像fs= 5√0.5或fs= 7√0.5那样彻底扫描图像。基于这个实验,我们在本文的其余部分使用fs= 3√0.5。
在这里插入图片描述
在这里插入图片描述
我们系统的另一个组件是非最大抑制模块(NMS)。为此,我们评估了两种不同的策略:

  • NMS-马克斯:我们找到最大得分的窗口,并移除所有具有大于重叠阈值的IOU(交集超过并集)的边界框。
  • NMS-平均值:我们首先过滤掉置信度低于0.2的窗口。然后,我们使用OpenCV的组矩形函数根据重叠阈值对检测到的窗口进行聚类。然后,在每个聚类中,我们移除所有分数低于该聚类最高分数90%的窗口。接下来,我们平均剩余边界框的位置,以获得检测窗口。最后,我们使用聚类的最大得分作为所提出的检测的得分。
    我们测试了这两种策略,图6显示了每种策略在不同重叠阈值下的性能。如图所示,两种方法的性能随着重叠阈值的不同而有很大差异。重叠阈值为0.3时,NMS-马克斯的性能最佳,而NMS-平均值为0.2时,性能最佳。根据这个数字,NMS-avg在平均精度方面比NMS-马克斯有更好的表现。
    最后,我们检查了包围盒回归模块对改进检测器定位的效果其思想是训练回归器来预测边界框的位置和地面事实之间的差异在测试时,这些回归可以用来估计位置差异,并相应地调整预测的边界框。这个想法已经被证明可以通过几种方法提高本地化性能,包括[5,29,4]。为了训练我们的边界框回归器,我们遵循了[9]的算法,图7显示了我们的检测器在有和没有这个模块时的性能。如图所示,令人惊讶的是,添加边界框回归器会降低两种NMS策略的性能。我们的分析表明,这是由于训练集和测试集的注释不匹配造成的。这种不匹配主要出现在侧面,如图8所示。除了降低边界框回归模块的性能之外,这种不匹配还会导致评估过程中的误检
与R-CNN的比较

R-CNN [9]是当前最先进的对象检测方法之一。在本节中,我们将我们提出的检测器与美国有线电视新闻网及其变体进行比较。我们首先使用第2节中描述的过程对AlexNet进行人脸检测的微调。然后我们训练了一个SVM使用第七层(f c7特征)的输出进行人脸分类的分类器。我们还训练了一个包围盒回归单元来进一步改善结果,并使用NMS-马克斯进行最终定位。我们在AlexNet的一个版本上重复了这个实验,该版本针对PASCAL VOC 2012数据集进行了微调,并提供了R-CNN代码。图9比较了我们的检测器在不同NMS策略下的性能,以及在有和没有包围盒回归的情况下的性能。如图所示,使用AlexNet对人脸进行微调(Face-FT)的检测器的性能优于使用PASCAL-VOC对象(VOC-FT)进行微调的检测器,这并不奇怪。此外,包围盒回归似乎可以显著提高R-CNN的性能。然而,与我们提出的独立于NMS策略的人脸检测器相比,即使是最好的分类器的性能也明显较差。我们认为,由于1)由于选择性搜索可能会遗漏一些人脸区域而导致的召回率损失,以及2)由于包围盒回归不完美并且可能无法完全对齐分割包围盒而导致的定位损失,导致了无线局域网的性能下降框,由选择性搜索[36]提供,带有基本事实。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

与最先进水平的比较

在这一节中,我们使用PASCAL人脸[42],AFW [25]和FDDB [15]的公开数据集,比较了我们提出的检测器与其他最先进的人脸检测器的性能。特别是,我们将我们的方法与1)基于DPM的方法,如结构模型[42]和TSM [25]以及2)基于级联的方法,如猎头[22]进行了比较。图10和11说明了这种比较。请注意,这些比较并不完全公平,因为大多数其他方法,如DPM或HeadHunter,在培训期间使用了额外的视点注释信息。如这些图所示,我们的单模型人脸检测器与其他最先进的方法相比,能够实现类似或更好的结果,而不使用姿势注释或关于面部标志的信息。

结论和未来工作

本文提出了一种基于深度学习的人脸检测方法——深度密集人脸检测器。所提出的方法不需要姿态/地标注释,并且能够在大范围的ori中检测人脸使用单一模型的实例。此外,在最近的深度学习对象检测方法中,如包围盒回归、SVM或图像分割,DDFD独立于公共模块。我们将所提出的方法与R-CNN和其他专门为多视图人脸检测开发的人脸检测方法(例如基于级联和基于DPM的方法)进行了比较。我们表明,我们的检测器能够实现类似或更好的结果,即使不使用姿势注释或关于面部标志的信息。最后,我们分析了我们提出的人脸检测器在各种人脸图像上的性能,发现训练集中的正例分布与提出的检测器的分数之间似乎存在相关性。在未来,我们计划使用更好的采样策略和更复杂的数据增强技术来进一步提高所提出的检测遮挡和旋转人脸的方法的性能。
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值