本节首先给出了实验基本条件和骨干网络。然后,在4个数据集上评价DLGC,包含WiderFace [79] 、AFW [80] 、PascalFace [81] 和DOTA [43] 。并与几个基准模型进行比较,实验结果验证了DLGC的有效性。
算法实现部分基于公开发布的代码Finding Tiny Face [24] ,该代码采用Matconv-net [82] 深度学习框架;另外一部分基于公开代码FasterR-CNN [83-84] ,该代码采用MxNet [85] 深度学习框架。为了提取候选区域的特征,本节将原始目标检测所获得的人脸候选区域送入原始框架中的特征提取网络,从而获得感兴趣区域的特征——ResNet-101网络的Res4b22x特征。
本节首先分析DLGC每个模块的有效性,并且在WiderFace数据集上进行实验分析。
该部分验证了判别学习方法在估计候选区域对相似性方面的有效性。本节使用线性库(LIBLINEAR,L-LIB),同时采用正则化逻辑斯蒂L2范数(L2-Regularized Logistic)进行模型的参数回归,使用参数 c =0.0625来实现判别学习。使用本节构建的数据集训练基于SVM的二分类。具体来说,训练集有10500对,样本来自拥挤场景中的50张人脸图片。测试集合与训练集合的构成方法相似,由5250个图像对构成。本节使用准确率来评价训练完毕的SVM的分类性能。在测试集上,该分类器可以达到78.24%的准确率(见表3.1),因此可以验证本节所述判别学习模块能够有效地估计两个候选区域之间的相似度。表3.1显示,通过设置不同的置信度来构造不同的候选区域对,组成训练样本,记录WiderFace验证集上的AP值。与之前的分析一致,当置信度设置为10%时,识别性能最好。于是,本章在实验中选择了10%的置信度。
表3.1 基于SVM的分类准确率
另外,本章也使用神经网络来估计候选区域对之间的相似度。本章神经网络训练一共2000轮,学习率设置为
,第一层节点数为8202个,隐藏层节点数为100~2000个,测试结果如表3.2所示。与神经网络(Neural Network,NN)算法相比,基于SVM的判别学习方法能将准确率提升10.9%。
表3.2 随着隐藏层层数的增长,神经网络分类器的分类性能变化
为了验证谱聚类方法的有效性,本节讨论了在不同聚类个数的情况下,人脸候选区域的聚类结果,本节从数据集中选择了拥挤场景中的50张人脸图片。为了减少相似矩阵中的噪声,使用标准答案(Ground Truth,GT)重新生成候选区域所对应的人脸区域或背景区域。如图3.4所示,人脸区域(绿色矩形框所示)和背景区域(红色矩形框所示)被聚类为不同的组。所有的背景区域似乎应该被聚类成为一组,但是背景的多样性导致背景区域之间也是不一样的。因此,它们应该被聚类成多个组。本节设置聚类个数为4,并将一幅图像的候选区域的聚类结果放在一行。结果显示,本文的谱聚类算法把候选区域划为多个组,相同组的候选区域相似,不同组的候选区域不相似。注意,有部分人脸被错分到背景区域多的组,因为成像分辨率低和背景复杂导致它们之间更加相似。
图3.4 给定不同候选区域之间的相似度矩阵,谱聚类可视化结果
聚类个数的选择是一个关键问题。本节使用基于本征差异Eigengap启发式搜索策略确定聚类个数 k 的取值。根据摄动理论,特征值有 k 个重复的0,第 k 个特征值与第 k +1个特征值之间有差异。如图3.4中第一行所示,前6个特征值逼近于0,第6个特征值与第7个特征值之间存在较大差异。根据摄动理论,这个差异表明数据集包含6个聚类中心,该方法也应用在其他两幅图像中,结果如图3.4所示。
由于WiderFace数据集中存在大量小尺寸人脸及人脸之间的遮挡,因此,该数据集非常具有挑战性。该数据集包含32203张图片,其中训练集占40%、验证集占10%、测试集占50%。根据检测的难度,可将测试集和验证集分为简单、适中、困难的子集。训练集和测试集的图片可以通过官网访问,但是测试集的标注信息还没有发布,所以需要将检测结果发送给该数据集的官方服务器进行评价,从而获得PR(Precision Recall)曲线。
将本节所提出的算法DLGC与HR [24] 、Faceness、ScaleFace [86] 、CMS-RCNN [68] 及MultitaskCascade CNN [87] 进行对比。图3.5(a)是测试集上的PR曲线,并且在测试集上的简单子集上提升了0.2%。图3.5(b)和图3.6是验证集上的PR曲线,本节方法的准确率在简单、适中和困难的子集上分别比HR方法的准确率高0.5%、0.2%和0.3%。
图3.5 WiderFace测试集简单子集和验证集简单子集的PR曲线
AFW数据集有205张图片,标记了473个人脸。将本节评价模型与HR [24] 、DPM [88] 、Headhunter、Structured models [89] 、Shen [39] 、TSM [80] 和商用的人脸检测器进行比较,如Face.com、Face++和Picasa。如图3.7(a)所示,本节DLGC方法的PR曲线优于其他人脸检测器的PR曲线。PascalFace数据集总共有851张图片,共标记了1335个人脸,上述人脸取自Pascal Person数据集子集。图3.8为DLGC方法在WiderFace数据集上进行人脸检测的结果。
图3.6 验证集适中子集和困难子集的PR曲线
图3.7 AFW和Pascal Face数据集上的PR曲线
本节主要探索人脸检测,因此忽略了原始数据集中不包含人脸的部分,这种操作类似DPM。作者也用HR、DPModel [88] 、Headhunter、SquaresChannelFeatures [89] 、StructuredModels [81] 、Shen [39] 、TSModel [80] 及一些商用检测器评价了本节的方法。如图3.7(b)所示,本节方法的PR曲线比其他模型的PR曲线性能都要优越。
图3.8 DLGC方法在WiderFace数据集上进行人脸检测的结果
DOTA [43] 包含2806张航空类图片,图片的尺寸从800像素×800像素到10000像素×10000像素,并且包含188282个目标,各目标在尺寸、方向和形状上差异都很大。考虑本研究的重点是小目标检测,所以实验仅关注该数据集中的飞机、船、大卡车、小轿车这4类小尺寸物体。作者将DLGC方法与Faster R-CNN [90] 、R-FCN2 [83] 、YOLOv23 [91] 、SSD4 [60] 等方法在小目标检测性能方面进行了比较。表3.3记录了DOTA验证集上DLGC方法与Faster R-CNN方法的mAP和AP,用于验证DLGC方法的有效性,表中给出了每个类别的均值平均准确率(mean Average Precision,mAP)和平均准确率(Average Precision,AP)评价。DLGC方法超越基准结果2.75%。表3.4给出了DOTA测试集上感兴趣目标分类的mAP和AP。DLGC方法超越基准结果2.61%。飞机和小轿车在AP方面(超过2%)的提升要多于船和大卡车的(小于2%),这是因为在拥挤场景中,类正方形的物体(飞机和小轿车)与长条形的物体(大卡车和船)有较高的重叠区域。如图3.9所示,基准模型很难检测到小尺寸的目标,但是本书的方法几乎召回了所有的小尺寸的目标(蓝色框所示)并且剔除了虚警目标(红色框所示)。
表3.3 DOTA验证集上DLGC方法与Faster R-CNN方法的mAP和AP
表3.4 DOTA测试集上感兴趣目标分类的mAP和AP
本章研究旨在提升小目标检测的性能,提出了基于上下文信息指导的小目标检测算法,探索目标候选区域之间的语义相似性,创建对约束来描述这种语义相似性。本章在4个数据集上进行实验,实验结果表明,本章提出的方法可以有效提升检测器的性能,并且超过最前沿的小目标检测算法。本章验证了判别学习可以有效地估计候选区域之间的相似度,并且可视化的图割结果能够用于候选区域分组。本章提出的框架具有通用性,有潜力应用于其他类别的小目标检测器中。
图3.9 DLGC遥感图像的目标检测