Faster R-CNN:通过区域提议网络实现实时目标检测外文翻译资料
2023-02-26 20:35:24
英语原文共 14 页,剩余内容已隐藏,支付完成后下载完整资料
Faster R-CNN:通过区域提议网络实现实时目标检测
摘要-最新的物体检测网络依靠区域提议算法来假设物体的位置。SPPnet[1]和Fast R-CNN [2]之类的进步减少了这些检测网络的运行时间,暴露了区域提议计算的瓶颈。在这项工作中,我们引入了一个区域提议网络(RPN),该区域提议网络与检测网络共享全图像卷积特征,从而实现几乎免费的区域提议。 RPN是一个完全卷积的网络,可以同时预测每个位置的对象范围和对象得分。对RPN进行了端到端的培训,以生成高质量的区域建议,Fast R-CNN将其用于检测。通过共享RPN和Fast R-CNN的卷积特征,我们将RPN和Fast R-CNN进一步合并为一个网络-使用最近流行的带有“注意力”机制的神经网络术语,RPN组件告诉统一网络要看的地方。对于非常深的VGG-16模型[3],我们的检测系统在GPU上具有5fps(包括所有步骤)的帧速率,同时在PASCAL VOC 2007、2012和2007上实现了最新的对象检测精度。 MS COCO数据集,每个图像仅包含300个建议。在ILSVRC和COCO 2015比赛中,Faster R-CNN和RPN是在多个赛道上获得第一名的作品的基础。代码已公开提供。
索引词-对象检测,区域提议,卷积神经网络。
1引言
区域提议方法(例如[4])和基于区域的卷积神经网络(RCNN)[5]的成功推动了对象检测的最新进展。尽管基于区域的CNN在计算上很昂贵,如最初在[5]中开发的,但由于在提案[1],[2]之间共享卷积,因此其成本已大大降低。最新的化身,Faster R-CNN [2],当忽略区域提案花费的时间时,使用非常深的网络[3]实现了接近实时的速度。现在,建议是最先进的检测系统中的测试时间计算瓶颈。
区域提议方法通常依赖于廉价的功能和经济的推理方案。选择性搜索[4]是最流行的方法之一,它基于工程化的底层特征贪婪地合并超像素。然而,与高效的检测网络相比[2],选择性搜索的速度要慢一个数量级,在CPU实现中每张图像2秒。EdgeBoxes [6]当前提供建议质量和速度之间的最佳权衡,每张图像0.2秒。尽管如此,区域提议步骤仍然消耗与检测网络一样多的运行时间。
可能有人注意到,基于区域的快速CNN充分利用了GPU的优势,而研究中使用的区域提议方法是在CPU上实现的,因此这种运行时比较是不公平的。加速提议计算的一种明显方法是为GPU重新实现。这可能是一种有效的工程解决方案,但是重新实现会忽略下游检测网络,因此会错过共享计算的重要机会。
在本文中,我们证明了算法的变化(使用深度卷积神经网络计算投标)导致了一种优雅而有效的解决方案,考虑到检测网络的计算,投标计算几乎是免费的。为此,我们介绍了与最新的对象检测网络[1],[2]共享卷积层的新颖的区域提议网络(RPN)。通过在测试时共享卷积,计算建议的边际成本很小(例如,每张图片10毫秒)。
我们的观察结果是,基于区域的检测器(如Fast RCNN)使用的卷积特征图也可用于生成区域建议。在这些卷积特征之上,我们通过添加一些其他卷积层来构造RPN,这些卷积层同时回归规则网格上每个位置的区域边界和客观性得分。因此,RPN是一种全卷积网络(FCN)[7],可以专门针对生成检测建议的任务进行端到端训练。
RPN旨在以各种比例尺和纵横比有效地预测区域提议。与使用图像金字塔(图1,a)或滤镜金字塔(图1,b)的流行方法[8],[9],[1],[2]相比,我们引入了新颖的“锚定”框作为多种比例和纵横比的参考。我们的方案可以看作是回归参考的金字塔(图1,c),它避免了枚举具有多个比例或纵横比的图像或过滤器。当使用单比例尺图像进行训练和测试时,此模型表现良好,从而提高了运行速度。
图1:解决多种规模和规模的不同方案。 (a)建立图像和特征图的金字塔,并在所有比例下运行分类器。 (b)在特征图上运行具有多个比例/大小的过滤器的金字塔。 (c)我们在回归函数中使用参考箱的金字塔。
为了将RPN与Faster R-CNN [2]对象检测网络统一起来,我们提出了一种训练方案,该方案在对区域建议任务进行微调与对象检测进行微调之间交替,同时保持建议固定。该方案可以快速收敛,并生成具有卷积功能的统一网络,这两个任务之间可以共享。
我们在PASCAL VOC检测基准[11]上全面评估了我们的方法,其中具有Faster R-CNN的RPN产生的检测精度比具有Faster R-CNN的选择性搜索的强基线更好。同时,我们的方法
几乎免除测试时选择性搜索的所有计算负担-投标的有效运行时间仅为10毫秒。使用昂贵的非常深的模型[3],我们的检测方法在GPU上仍然具有5fps的帧速率(包括所有步骤),因此从速度和准确性上来说都是一种实用的对象检测系统。我们还报告了MS COCO数据集的结果[12],并使用COCO数据研究了PASCAL VOC的改进。代码已在https://github.com/shaoqingren/faster_rcnn(在MATLAB中)和https://github.com/rbgirshick/py-faster-rcnn(在Python中)中公开可用。
该手稿的初步版本先前已发布[10]。 从那时起,RPN和Faster R-CNN的框架就被采用并泛化为其他方法,例如3D对象检测[13],基于零件的检测[14],实例分割[15]和图像标题[ 16]。 我们的快速有效的物体检测系统也已建立在诸如Pinterests [17]的商业系统中,据报道用户参与度有所提高。
- 自会议论文[10]发布以来,我们还发现RPN可以与Fast R-CNN网络联合训练,从而减少了训练时间。
在ILSVRC和COCO 2015竞赛中,Faster R-CNN和RPN是ImageNet检测,Ima-geNet本地化,COCO检测和COCO分段中的几个第一名的基础[18]。 RPN完全学会了根据数据提议区域,因此可以轻松地从更深,更具表现力的功能(例如[18]中采用的101层残差网)中受益。 在这些比赛2中,其他一些领先的参赛者也使用了Faster R-CNN和RPN。 这些结果表明,我们的方法不仅是一种实用的高性价比解决方案,而且还是提高物体检测精度的有效途径。
2相关工作
对象提案。关于对象建议方法的文献很多。在[19],[20],[21]中可以找到对象提议方法的全面调查和比较。广泛使用的对象建议方法包括基于超像素分组的方法(例如,选择性搜索[4],CPMC [22],MCG [23])和基于滑动窗口的方法(例如,窗口中的对象[24],EdgeBoxes [ 6])。对象提议方法被用作独立于检测器的外部模块(例如,选择性搜索[4]对象检测器,R-CNN [5]和Fast R-CNN [2])。
用于对象检测的深度网络。 R-CNN方法[5]端到端训练CNN将提案区域分类为对象类别或背景。R-CNN主要充当分类器,并且不预测对象边界(通过边界框回归进行精炼除外)。它的准确性取决于区域建议模块的性能(请参见[20]中的比较)。几篇论文提出了使用深度网络预测对象边界框的方法[25],[9],[26],[27]。在OverFeat方法[9]中,训练了一个全连接层来预测假设单个对象的定位任务的框坐标。然后,将完全连接的层转换为卷积层,以检测多个特定于类的对象。 MultiBox方法[26],[27]从网络中生成区域提议,该网络的最后一个全连接层同时预测多个类无关的框,从而概括了OverFeat的“单框”方式。这些与类无关的框用作R-CNN的建议[5]。与我们的全卷积方案相比,MultiBox建议网络适用于单个图片作物或多个大图片作物(例如224times;224)。 MultiBox在提议和检测网络之间不共享功能。我们稍后将在我们的方法中更深入地讨论OverFeat和MultiBox。与我们的工作同时,开发DeepMask方法[28]来学习细分建议。2.http://image-net.org/challenges/LSVRC/2015/results.
卷积的共享计算[9],[1],[29],[7],[2]对于高效,准确但可视的识别已引起越来越多的关注。OverFeat论文[9]从图像金字塔计算卷积特征,以进行分类,定位和检测。共享卷积特征图上的自适应大小池(SPP)[1]被开发用于有效的基于区域的对象检测[1],[30]和语义分割[29]。Fast R-CNN[2]可以对共享卷积特征进行端到端检测器训练,并显示出令人信服的速度和准确度。
图2:Faster R-CNN是用于对象检测的单个统一网络。RPN模块充当此统一网络的“注意”。
3FASTER R-CNN
我们的物体检测系统称为Faster R-CNN,它由两个模块组成。第一个模块是提出区域的深层全卷积网络,第二个模块是使用提出的区域的Fast R-CNN检测器[2]。整个系统是用于对象检测的单个统一网络(图2)。RPN模块使用最近流行的带有“注意力” [31]机制的神经网络术语,将Faster R-CNN模块告诉哪里。 3.1我们介绍用于区域提议的网络的设计和属性。 在第3.2节中,我们开发了用于训练具有共享功能的两个模块的算法。
3.1地区提案网络
区域投标网络(RPN)接收(任意大小的)图像作为输入,并输出一组矩形的目标投标,每个目标投标都有一个客观评分3。我们使用全卷积网络对该过程建模[7],我们将在本节中对其进行描述。因为我们的最终目标是与FASTER R-CNN对象检测网络共享计算[2],所以我们假设两个网络共享一组共同的卷积层。在我们的实验中,我们研究了具有5个可共享卷积层的Zeiler和Fergus模型[32](ZF)和具有13个可共享卷积层的Simonyan和Zisserman模型[3](VGG-16)。
为了生成区域建议,我们在最后共享的卷积层输出的卷积特征图上滑动一个小型网络。这个小网络将ntimes;n的空间窗口作为输入卷积特征图。每个滑动窗口都映射到较低维的特征(ZF为256-d,VGG为512-d,其中ReLU [33]如下)。此功能被馈入两个同级的全连接层-框回归层(reg)和框分类层(cls)。我们在本文中使用n = 3,注意输入图像上的有效接收场很大(ZF和VGG分别为171和228像素)。在图3的单个位置(左)显示了此微型网络。请注意,由于小型网络以滑动窗口的方式运行,因此所有空间位置共享完全连接的层。自然地,此架构配备了一个ntimes;n卷积层通过两个同级1times;1卷积层(分别用于reg和cls)。
3.1.1锚
在每个滑动窗口位置,我们同时预测多个区域提议,其中每个位置的最大可能提议数目表示为k。 因此,reg层具有4k个输出,该输出对k个框的坐标进行编码,而cls层输出2k个分数,这些分数估计每个提案4的目标或非目标的概率。 相对于k个参考框(我们称为锚点),k个建议是参数确定的。 锚点位于相关滑动窗口的中心,并与比例和长宽比相关(图3,左)。 默认情况下,我们使用3个比例和3个纵横比,在每个滑动位置产生k = 9个锚点。 对于大小为Wtimes;H(通常约为2400)的卷积特征图,总共有WHk个锚点。
3.“区域”是一个通用术语,在本文中,我们仅考虑矩形区域,这是许多方法所通用的(例如[27],[4],[6])。 “对象”衡量一组对象类与背景之间的隶属关系。
4.为简单起见,我们将cls层实现为两类softmax层。 或者,可以使用逻辑回归来产生k分数。
平移不变锚点
我们的方法的一个重要特性是,在锚点和计算相对于锚点的提案的函数方面,它都是平移不变的。如果要翻译图像中的对象,则建议书应进行翻译,并且同一功能应能够在任一位置预测建议书。我们的方法5保证了这种平移不变的特性。作为比较,MultiBox方法[27]使用k均值生成800个锚,它们不是平移不变的。因此,MultiBox不保证翻译对象时会生成相同的建议。平移不变属性还减小了模型大小。 MultiBox具有(4 1)times;800维全连接输出层,而在k = 9锚的情况下,我们的方法具有(4 2)times;9维卷积输出层。结果,我们的输出层具有2.8times;10^4个参数(对于VGG-16为512times;(4 2)times;9),比具有6.1times;10^6个参数(1536times;(4 1)times;800(对于MultiBox [27]中的GoogleNet [34])。如果考虑要素投影层,我们的建议层的参数仍然比MultiBox6少一个数量级。我们希望我们的方法在较小的数据集(如PASCAL VOC)上过拟合的风险较小。
5.与FCNs [7]一样,我们的网络在翻译过程中始终保持不变。
6.考虑到要素投影层,我们建议层的参数数为3times;3times;512times;512 512times;6times;9 = 2.4times;10^6;MultiBox提案层的参数数为7times;7times;(64 96 64 64)*1536 1536 1536*5*800 =27*10^6。
多尺度锚点作为回归参考
我们的锚设计提出
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[234089],资料为PDF文档或Word文档,PDF文档可免费转换为Word