Shivang Agarwal(∗,1), Jean Ogier du Terrail(∗,1,2), Fr´ ed´ eric Jurie(1)
(∗)equal contribution
(1)Normandie Univ, UNICAEN, ENSICAEN, CNRS
(2)Safran Electronics and Defense
August 21, 2019

https://arxiv.org/pdf/1809.03193.pdf

Abstract

目标检测是近六年来引起社会广泛关注的一项计算机视觉任务,它处理图像中某一类目标(如汽车、飞机等)的实例检测。这种强烈的兴趣不仅可以解释为这项任务对许多应用的重要性,而且还可以解释为自深卷积神经网络(DCNNs)问世以来这一领域的显著进展。本文综述了近年来利用深CNN进行目标检测的研究进展。这项研究不仅涵盖了现代深度(CNN)目标探测器的设计决策,而且还对计算机视觉界目前面临的一系列挑战提供了一个深入的视角,以及如何克服这些挑战的一些补充和新的方向。在其最后一部分,它继续展示如何将目标检测扩展到其他模式,并在不同的约束下进行。这项调查还在其附录中审查了公共数据集和相关的最新算法。

1  Introduction

自动识别和定位图像和视频中的对象是使计算机能够理解或与周围环境交互的重要任务。对人类来说,视觉智能是人类生存、工作和交流的主要任务之一。如果一个人想让机器为我们工作或与我们一起工作,他们将需要像人类一样了解他们的环境,或者在某些情况下甚至比人类更好。解决目标检测问题及其带来的所有挑战,已被确定为解决对周围环境的语义理解问题的主要前兆。

大量的学者和行业研究人员已经对它表现出了兴趣,他们专注于应用,如自动驾驶、监视、救援和救援行动、在工厂部署机器人、行人和面部检测、品牌识别、图像中的视觉效果、数字化文本,理解以目标检测为核心的航空图像等。

语义鸿沟,由Smoulders等人定义。[349]由于在特定情况下,用户从某些视觉数据中提取的信息与其解释之间缺乏一致性,是目标检测必须解决的主要挑战之一。图像中包含的原始像素强度和描述对象的语义信息之间确实存在本质上的差异。

目标检测是分类问题的自然延伸。增加的挑战是正确地检测存在并准确地定位图像中的对象实例(图1)。这通常是一个有监督的学习问题,在给定一组训练图像的情况下,必须设计一个算法,该算法能够在一个矩形框中准确地定位和正确地分类尽可能多的对象实例,同时避免背景的错误检测或同一实例的多个检测。图像可以有来自相同类、不同类或根本没有实例的对象实例。训练集和测试集中的对象类别在统计上应该是相似的。该实例可以占用图像中很少的像素(0.01%到0.25%)以及大部分像素(80%到90%)。除了尺寸上的变化外,变化可以是在灯光、旋转、外观、背景等方面。可能没有足够的数据能够足够准确地涵盖所有变化。特别是小对象,在被检测时性能较低,因为检测它们的可用信息是存在的,但经过压缩,并且在没有某些先验知识或上下文的情况下很难解码。某些对象实例也可以被遮挡。

另一个困难是像视频对象检测这样的现实应用要求实时解决这个问题。目前最先进的探测器往往不是这样。最快的探测器通常比性能最好的探测器差(例如重信号群)。

本文旨在将近年来提出的各种深度学习和数据驱动技术联系起来,因为它们在性能上带来了巨大的改进,尽管最近引入的目标检测数据集具有更大的挑战性。我们打算研究是什么使它们起作用,它们的缺点是什么。我们讨论了该领域的开创性工作和更面向应用的增量工作。我们还看到他们在努力克服每一个挑战方面的做法。以前基于手工制作的特性的方法不在本文的讨论范围内。与目标检测相关的问题(如语义分割)也不在本文的讨论范围内,除非用于将上下文信息带给检测器。与语义分割相关的显著目标检测也不在本文讨论范围内。

过去曾写过一些与目标检测相关的调查,涉及特定的任务,例如行人检测[84]、监视系统中的运动目标[161]、遥感图像中的目标检测[53]、面部检测[126、453]、面部地标检测[420],仅举一些示例。与本文不同的是,上述的调查并没有涵盖深神经网络的最新进展工作。最近,arXiv上出现了四个非同行评审的调查,这些调查也使用深度学习方法来处理目标检测的主题。本文与[470]和[35]有着相同的动机,但由于这两个调查只涉及与现代目标检测相关的主干和旗舰文章,因此本文更全面和广泛地讨论了这一主题。这项工作更深入地研究了一些人们不一定称之为主流的论文,如boosting方法或真正的cascades,并研究了一些相关的课题,如弱监督学习和一些有希望但尚未被社区广泛使用的方法(图网络和生成方法)。在本文的同时,文[220]对现代目标探测器进行了详细的介绍。我们希望这项调查不仅仅是现有方法的清单,而是为读者提供一个完整的工具集,以便能够通过研究周围的主题,如可解释性、终生探测器,来全面了解艺术的状态是如何产生的以及潜在的线索来进一步推进它。fewshot学习或领域适应(除了已经提到的非主流方法)。

以下各小节概述了该问题、该领域的一些开创性工作(手工制作和数据驱动),并描述了任务和评估方法。第二节详细介绍了目前最先进的模型的设计。第3节介绍了最近的方法学进展以及现代探测器必须面对的主要挑战。第4节说明了如何将所提出的检测器扩展到不同的检测任务(视频、3D)或在不同的约束条件(能量效率、训练数据等)下执行。最后,第5节结束了回顾。我们还在附录中列出了各种各样的数据集和相关的最新表演。

1.1什么是图像中的目标检测?如何评价探测器性能?

1.1.1问题定义

目标检测是从图像中提取高层次信息的各种任务之一。即使在文献中没有对它的普遍接受的定义,它通常被定义为定位给定类别的所有实例的任务(例如,在车辆检测的情况下,“汽车”实例),同时避免在不存在实例的情况下发出警报。定位可以作为图像上对象的中心、包含对象的边界框,甚至作为属于对象的像素列表。在一些罕见的情况下,只寻求类别的存在/不存在至少一个实例,而不进行任何本地化。

对象检测总是针对一个数据集定义的,该数据集包含与包含每个图像包含的对象的某些描述(位置、比例等)的列表相关联的图像。用I表示图像,O(I)表示N*I对象描述的集合,其中:

                              

小目标检测怎样提升精度_小目标检测怎样提升精度

其中Y*i∈Y表示第i个对象的类别,Z*N*i∈Z表示其在图像中的位置/比例/几何体。Y是一组可能的类别,可以是分层的,也可以不是。Y是图像中对象的可能位置/比例/几何图形的空间。它可以是物体中心的位置(xc,yc)∈R2,包围物体的包围盒(xmin,ymin,xmax,ymax)∈R4,遮罩等。

使用这些符号,对象检测可以定义为将图像与一组检测关联起来的函数

小目标检测怎样提升精度_目标检测最新进展_02

操作点λ允许在假警报和漏检之间进行权衡。

目标检测与目标分割相关,但不同于目标分割,目标分割的目的是将同一目标的像素分成一个区域,或者语义分割类似于目标分割,只是这些类也可能指不同的背景或“东西”(例如“天”、“草”、“水”等类别)。它也不同于通常定义为识别(即给出类别名称)包含在图像或边界框中的对象的对象识别,假设图像中只有一个对象。对于一些作者来说,目标识别涉及到检测图像中的所有目标。实例对象检测比对象检测更受限制,因为检测器聚焦于单个对象(例如特定的汽车模型),而不是给定类别的任何对象。对于视频,目标检测任务是检测视频中每个帧上的目标。

1.1.2绩效评估

对给定图像I的检测功能的评估是通过将给定类别的对象位置O(I)(所谓的地面真值)的实际列表与检测器提供的检测D(I,λ)进行比较来完成的。只有在给出以下两个定义之后,才有可能进行这种比较: 

一。几何相容函数

小目标检测怎样提升精度_小目标检测怎样提升精度_03

定义将两个位置视为等效位置时必须满足的条件。

2。关联矩阵 

小目标检测怎样提升精度_小目标检测怎样提升精度_04

在检测到的对象之间定义二部图,在检测到的对象之间定义二值图,

小目标检测怎样提升精度_数据驱动_05

以及

小目标检测怎样提升精度_小目标检测怎样提升精度_06

地面真实物体

小目标检测怎样提升精度_数据驱动_07

with:                                    

小目标检测怎样提升精度_目标检测最新进展_08

小目标检测怎样提升精度_数据集_09

 

根据这些定义,正确检测的次数由 

                                  

小目标检测怎样提升精度_数据驱动_10

 如果几个关联矩阵满足先前的约束,则选择最大化正确检测数的一个。图2显示了图像中TP和假阳性(FP)的图示。

这种定义可以看作二分图中最大匹配的大小。节点是位置(一方面是地面真实,另一方面是检测)。边缘基于接受准则G和说明地面真实物体和检测到的目标只能关联一次的约束。

可以通过以下两个比率平均测试集T级别的正确检测:

                           

小目标检测怎样提升精度_小目标检测怎样提升精度_11

通过改变操作点λ得到精度/召回曲线。平均平均精度可以通过对多个召回值(通常为11个等距值)的精度进行平均来计算。

G的定义因数据集而异。然而,只有少数几个定义反映了目前大多数的研究。最常见的挑战之一是帕斯卡VOC挑战赛[88]。它假定基本事实是由包含对象实例的非旋转矩形边界框定义的,这些对象实例与类标签关联。要评估的方法的多样性阻止了ROC(接收器工作特性)或DET(检测误差权衡)的使用,通常用于人脸检测,因为它会假设所有方法使用相同的窗口提取方案(如滑动窗口机制),但并非总是如此。在Pascal VOC挑战中,目标检测是通过每个类别一个单独的AP分数来评估的。对于给定的类别,精度/召回曲线是根据要评估的方法的排序输出(边界框)计算的。回忆是排名在给定排名之上的正面示例的比例,而精确是排名在该排名之上的正面框的数量。AP总结了精度/召回曲线,并定义为11个等间隔召回级别集的平均(插值)精度。如果重叠比(并集上的交集或IOU)超过0.50,则将输出边界框判断为真正(正确检测)。检测输出按置信度降低的顺序分配给地面真值。同一目标的重复检测被认为是错误检测。整个数据集的性能是通过对所有类别的ap进行平均来计算的。 

最近流行的MSCOCO挑战[214]基于同样的原则。主要区别在于,总体性能(mAP)是通过在0.50到0.95之间平均10个不同IOU阈值获得的AP来获得的。ImageNet大规模视觉识别挑战(ILSVRC)还有一项检测任务,算法必须生成三个类别标签,

边界框和信心得分。每幅图像中大多有一个主要对象。丢失目标检测与重复检测一样受到惩罚,检测挑战的获胜者是在大多数对象类别上获得第一AP的人。挑战还包括对象定位任务,定义略有不同。动机不是惩罚算法,如果检测到的对象中有一个实际存在,而不包括在地面真值注释中,这并不罕见,因为数据集的大小和类别的数量(1000)。算法预计将生成5个类标签(按置信度递减顺序)和5个边界框(每个类标签一个)。如果5个边界框中的一个为真正数(根据IOU校正类标签和定位),则算法对图像的误差为0,否则为1。在测试集的所有图像上平均误差。

最近一些数据集,如DOTA[421]提出了两个任务,即水平边界盒检测和定向边界盒检测,这两个任务对应于两种不同的地面真相(有或无目标方向),无论这些方法是如何训练的。在其他一些数据集中,检测的尺度并不重要,如果检测的坐标足够接近物体的中心,则将其视为真正数。这就是吠陀数据集的情况[302]。在3D点云中的目标检测的特定情况下,例如在KITTI目标检测基准[98]中,标准类似于Pascal VOC,只是框是3D的,并且重叠是根据体积相交来测量的。

视频中的对象检测关于视频中对象的检测,最常见的做法是通过将视频的每个帧视为独立图像并对所有帧的性能进行平均来评估性能,如ImageNet VID challenge中所做的[319]。

也可以从2D情况转移并基于tubelets IoU评估视频地图,其中,如果且仅当视频中每帧的平均每帧IoU大于阈值σ且正确预测了管标签,则检测到tubelets。我们直接从[107]中得到这个定义,他们用它来计算视频级别的地图和ROC曲线。

1.1.3其他检测任务

本调查仅涵盖了最近文献中的绩效评估方法。但是,除了这些常见的评价方法外,还有很多更为具体的方法,因为目标检测可以与其他复杂的任务相结合,如[423]中的三维定位和布局推理。读者可以参考Mariano等人的评论。[232]探索这个话题。值得一提的是Okszus等人最近的工作。[260]提出了一种新的度量方法,该度量方法提供了比AP更丰富、更具区分性的信息,特别是在定位误差方面。

考虑到现代深度学习方法在某些数据集上已经接近人类精度,即使有离开此任务的趋势,我们也决定将此调查主要定位于包围盒任务。这种选择的原因是多方面的。首先,从历史上讲,包围盒是第一个目标检测任务之一,因此已经有大量关于这个主题的文献。其次,并不是所有的数据集都提供像素级的注释。例如,在航空图像中,大多数数据集只是边界框。一些行人检测数据集也是如此。实例分段级别的注释目前仍然很昂贵,即使最近开发了便于注释的算法(例如[32230]),这些算法以牺牲用户的几次点击为代价提供像素级别的注释。也许将来所有的数据集都会包含像素级的注释,但现在还不是这样。即使对于正在成为标准的实例分割这样的任务,有像素级的注释,也需要检测器的边界框来区分同一类的8个位置中的两个,这就解释了像[118]这样的大多数现代实例分割管道都有边界框分支。因此,在这种情况下,评估模型边界框的度量仍然是相关的。人们还可以提出这样的论点:边界框是更健壮的注释,因为它们对注释器噪声不太敏感,但这是有争议的。由于所有这些原因,本次调查的其余部分将主要处理边界框和相关任务。

1.2从手工制作到数据驱动探测器

虽然第一个目标检测器最初依赖于使用简单特征(如边缘[217]、关键点[224]或模板[278])将目标的二维/三维模型与图像对齐的机制,但机器学习(ML)的到来是震撼该区域的第一次革命。用于目标检测的最流行的ML算法之一是boosting,例如[326])或支持向量机,例如[64]。第一波基于ML的检测器都是基于分类器或回归器处理的手工(工程)视觉特征。这些手工制作的特征多种多样,如Haar小波[398]、edgelets[418]、shapelets[320]、定向梯度直方图[64]、视觉文字袋[187]、积分直方图[287]、颜色直方图[399]、协方差描述符[388]、线性二元模式Wang等人。[408]或其组合[85]。DCNN革命前最流行的检测器之一是Felzenszwalb等人的可变形部分模型。[90]及其变体,例如[322]。