DetNet:A Backbone network for Object Detection

DetNet:用于对象检测的骨干网络

摘要:

最近基于CNN的物体探测器,无论是单阶段像YOLO ,SSD 和RetinaNet 这样的方法或像Faster R-CNN ,R-FCN 和FPN 这样的两级检测器通常都在尝试直接从用于图像分类的ImageNet预训练模型中微调。专门为物体检测设计的特征提取器比较少。更重要的是,图像分类和对象检测的任务之间存在若干差异。 (i)最近的物体探测器,如FPN和RetinaNet通常涉及针对图像分类任务的额外阶段,以处理具有各种尺度的对象。 (ii)没有物体检测只需要识别对象实例的类别,但也需要在空间上定位位置。大的下采样因子带来大的有效性感受野,这有利于图像分类,但妥协对象定位能力。由于图像分类和物体检测之间存在差距,我们在本文中提出了DetNet是一种专门用于物体检测的新型骨干网络。此外,DetNet还包括针对传统骨干网的额外阶段网络用于图像分类,同时保持高空间分辨率在更深的层次。没有任何花里胡哨的东西,最先进的结果基于我们的DetNet(4.8G FLOP)在MSCOCO基准测试中获得了对象检测和实例分割骨干。

介绍:

物体检测是计算机视觉中最基本的任务之一。由于深度卷积神经网络的进展快速,物体检测的性能得到了显着改善。最近的基于CNN的物体检测器可以分为一级检测器,如YOLO [1,2],SSD [3]和RetinaNet [4],以及两级检测器,例如,更快的R-CNN [5],R-FCN [6],FPN [7]。它们都依赖于骨干为ImageNet分类任务预先训练的网络。但是,存在差距在图像分类和对象检测问题之间,没有只需要识别对象实例的类别,但也需要在空间上本地化边界框。更具体地说,使用它有两个问题对象检测任务的分类主干。 (i)最近使用的探测器,例如FPN,与用于ImageNet分类的骨干网络相比,涉及额外的阶段,以便检测具有各种大小的对象。 (ii)传统骨干基于大的下采样因子产生更高的感受野,即有利于视觉分类。然而,空间分辨率受到损害,这将无法准确地定位大对象并识别出小物件。

设计良好的检测骨干应解决上述所有问题。在本文中,我们提出了DetNet,它是一种为对象设计的新型骨干检测。更具体地说,由于变体对象比例,DetNet涉及在最近的物体检测器(如FPN)中使用的附加阶段。不同从ImageNet分类的传统预训练模型,我们维护

即使包括额外的阶段,功能的空间分辨率。然而,高分辨率特征图给构建深度神经元带来了更多挑战网络由于计算和内存成本。DetNet采用低复杂度扩张瓶颈结构,通过整合这些改进,我们的DetNet不仅保持高分辨率功能图,但也保持大的感受野,这两者都很重要用于对象检测任务。

总而言之,我们有以下贡献:

我们是第一个分析传统ImageNet固有缺点用于微调近期物体探测器的预训练模型。

我们提出了一种名为DetNet的新型骨干,它是专门设计的通过保持空间分辨率和扩大来进行物体检测任务感受野。

我们在MSCOCO对象检测上获得了最新的最新结果基于低复杂度DetNet59骨干的实例分割跟踪。

相关工作:

对象检测是计算机视觉中一个经过深入研究的主题。它的目标是在给定图像时,找到 “where”和“what”每个对象实例。 旧探测器通过使用手工设计的对象组件提取图像特征描述符,如HOG [18],SIFT [19],选择性搜索[20],Edge Box [21]。在很长一段时间里,DPM [22]及其变体是其中的主导方法传统物体探测器。 随着深度卷积神经网络的迅速发展网络,基于CNN的物体探测器已经取得了显着的成果成为检测文学的新趋势。 在网络结构中,最近有CNN基于探测器通常分为两部分。 一个是骨干网,另一个是检测业务部分。我们简要介绍这两个部分如下。

DPM:大体思路和HOG一致,可以看成是HOG的扩展,先计算梯度方向的直方图,然后使用SVM进行分类。

2.1 主网络

用于对象检测的骨干网络通常借用ImageNet [23]分类。在过去几年中,ImageNet一直被视为一个最权威的数据集来评估深度卷积神经网络的能力。许多新颖的网络旨在获得更高的性能ImageNet。 AlexNet [8]是最早尝试增加CNN深度的人之一。为了减少网络计算并增加有效的感受野,AlexNet使用32个步幅对特征图进行下采样,这是一个标准设置以下作品。 VGGNet [9]将3x3卷积运算叠加到建立一个更深的网络,同时仍然涉及功能图中的32个步幅。大多数以下研究采用类似VGG的结构,并在每个阶段设计一个更好的组件(按步幅分割)。 GoogleNet [10]提出了一个新颖的inception block,涉及更多的多样性功能。 ResNet [11]采用瓶颈设计,在每个阶段都有残差求和运算,这已被证明是一个简单的和有效的建立更深层神经网络的有效方法。 ResNext [13]和Xception [24]使用组卷积层来代替传统的卷积。它减少了参数并同时提高精度。Densenet的密集的连接好几层,它进一步减少参数,同时保持竞争力准确性。另一项不同的研究是扩张残余网络[26],它提取的特征较少。 DRN在分隔方面取得了显着成效,虽然对物体检测几乎没有讨论。还有很多研究有效的骨干,如[17,15,16]。但它们通常是为分类而设计的。

2.2 目标检测部分

目标检测部分通常设计到在ImageNet分类数据集上进行基础模型的设计和训练,有两种不同的设计对象检测的逻辑。一个是单级检测器,它直接使用主干进行对象实例预测。例如,YOLO [1,2]使用简单有效的主干DarkNet [1],然后将检测简化为回归问题。SSD [3]采用简化的VGGNet [9]并提取多层特征,使网络更强大,以处理不同尺度的目标。 RetinaNet [4]使用ResNet作为基本特征提取器,涉及“Focal”loss [4]来解决由极端前景 - 背景比引起的阶级不平衡问题。另一个流行的管道是两级探测器。具体来说,最近的两级探测器将

预测许多建议首先基于主干,然后是额外的分类器涉及提案分类和回归。更快的R-CNN [5]

使用区域提案网络(RPN)从骨干网生成提案。R-FCN [6]建议从输出生成位置敏感特征映射

骨干,然后一种称为位置敏感池的新型汇集方法用于每个proposal。可变形卷积网络[27]试图启用通过在没有监督的情况下学习额外偏移来进行几何变换的卷积运算。它是第一个改进物体检测骨干的公司之一。特征金字塔网络[7]通过利用深度卷积网络固有的多尺度金字塔层次结构构建特征金字塔,特别是FPN利用U形结构组合多层输出,并且仍然借用传统的ResNet而不进一步研究。DSOD [28]首先建议从头开始进行检测,其结果低于预训练方法。

总之,传统的骨干通常设计用于ImageNet分类。 什么是物体检测的合适骨干仍然是未开发的领域。 大多数最近的物体探测器,无论是一级还是两级,都遵循ImageNet预训练模型的管道,不是检测的最佳选择性能。 在本文中,我们提出了DetNet。 DetNet的主要思想是设计一个更好的物体检测骨干。

DetNet:用于对象检测的骨干网络

3.1 动机

最近的物体检测器通常依赖于预训练在ImageNet分类数据集上的骨干网络。ImageNet分类的任务是不同于物体检测,其不仅需要识别物体的类别而且还在空间上定位边界框。该设计图像分类的原则不利于目标定位,对于VGG16和Resnet这样的网络,特征图的空间分辨率逐渐降低。一些技术如特征金字塔网络(FPN)如图1A所示[7]和扩张应用于这些网络保持空间分辨率。但是,仍然存在以下三种用这些骨干网训练时遇到的问题。

DetNet:A Backbone network for Object Detection

图1. FPN中使用的不同骨架的比较。 具有传统骨干的特征金字塔网络(FPN)在(A)中示出。 传统骨干图像分类如(B)所示。 我们提出的骨干在(C)中说明,它具有更高的空间分辨率和与FPN完全相同的阶段。 我们不由于图形尺寸的限制,示出了阶段1(具有步幅2)特征图。

 

网络阶段的数量是不同的如图1B所示,典型的分类网络涉及5个阶段,每个阶段下采特征映射通过汇集2x或步幅2卷积。因此输出特征映射空间大小是 32x下采样。不同于传统的分类网络,功能金字塔探测器通常采用更多阶段。例如,在特征金字塔中网络(FPN)[7],增加了附加阶段P6来处理更大的对象和P6,P7以类似的方式添加到RetinaNet [4]中。显然,额外的阶段就像P6未在ImageNet数据集中预先训练。

大型物体的可见度较弱。具有强语义信息的特征映射在输入图像方面具有很大的进步,这带来了大的感受野,并使得在ImageNet分类任务的成功。但是,大踏步对物体定位有害。在特征金字塔网络中,大对象在更深层中生成并预测这些对象的边界可能太模糊,无法获得准确的回归。由于更多的下采样,分类网络涉及更多阶段,这种情况甚至更糟。

目标的不可见性大步的另一个缺点是缺少小目标。 由于特征图的空间分辨率降低,来自小目标的信息很容易被削弱,大背景信息是整合的。 因此,特征金字塔网络预测很小

浅层中的对象。 然而,浅层通常只具有低语义,可能不足以识别对象类别的信息实例。因此探测器必须通过通过来自更深层的高级表示的上下文线索来增强其分类能力。如图1A显示,功能金字塔网络采用自下而上的方式来缓解它途径。 但是,如果在较深层中缺少小对象,则这些上下文提示会同时错过。

为了解决这些问题,我们提出具有以下特征的DetNet。 (i)阶段数直接设计用于物体检测。

(ii)即使我们涉及比传统分类网络更多的阶段(例如6个阶段或7个阶段),我们仍保持该特征的高空间分辨率地图,同时保持大的感受野。

DetNet用于物体检测时与ResNet等传统骨干网相比有几个优势。 首先,DetNet的阶段数与使用的探测器完全相同, 因此像P6这样的额外阶段可以在ImageNet中进行预训练数据集。 其次,受益于最后阶段的高分辨率特征图,DetNet可以更好的定位大型物体的边界和找小物体。 更详细的讨论可以参考第4节。

3.2 DetNet 设计

在本小节中,我们将介绍DetNet的详细结构。 我们采纳ResNet-50作为我们的基线,这是广泛用作许多物体探测器的骨干网络。 为了与ResNet-50进行公平比较,我们保持阶段性1,2,3,4与DetNet的原始ResNet-50相同。

对于物体检测制定有效的主干有两个挑战。 一方面,保持深层神经系统的空间分辨率

网络花费了极大的时间和内存。 另一方面,减少下采样因子等于减少有效感受野,这将对许多视觉任务有害,例如图像分类和语义分割。

DetNet经过精心设计,可以应对这两大挑战。 具体来说,DetNet从第一阶段到第四阶段遵循相同的ResNet设置。差异从第五阶段开始,并概述我们的DetNet图像分类可以在图2 D中找到。让我们讨论经过ResNet50扩展DetNet59的实现细节。 同样,我们的DetNet也很容易扩展了像ResNet101这样的深层。 DetNet59的细节设计说明如下:

-----我们将在骨干中引入额外的阶段,例如P6,这将是稍后的阶段用于FPN中的对象检测。 同时,即使在第4阶段之后,我们也将空间分辨率固定为16倍下采样。

-----由于在第4阶段之后空间大小是固定的,以便引入新的阶段,我们在每个阶段的开始使用1x1卷积投影(图2B)来扩张的瓶颈。 我们找到了模型图2B对于像FPN这样的多级检测器很重要。

----我们将扩张的瓶颈作为基本网络块有效地扩大感受野。 由于扩张卷积仍然很耗时,

我们的第5阶段和第6阶段保持与第4阶段相同的通道(256个输入通道对于瓶颈块)。 这与传统骨干设计不同,这将在后期通道加倍。

DetNet与任何带/不带特征金字塔的探测器很容易集成。 在不失代表性的情况下,我们采用了突出的探测器FPN我们的基准来验证DetNet的有效性。 因为DetNet只会改变作为FPN的骨干,我们适配除骨干以外的FPN中的其他结构。 因为在Resnet-50的阶段4之后不减小空间大小,简单地总和自上而下的路径方式的这些阶段的输出。

DetNet:A Backbone network for Object Detection

 

总结:看完这篇文章,感觉中心思想就是讲了自己设计的这个主网络结构,但是,没讲这个东西为什么要这么设计,设计主结构的思想来源,然后出来结果还挺好的。所以现在发的文章,全部都是基于xx的改进,嗯哼~