R-CNN。 来自 ICCV 2015,可以说是利用深度学习进行目标检测的开山之作。作者Ross Girshick多次在PASCAL VOC的目标检测竞赛中折桂,2010年更带领团队获得终身成就奖,如今供职于Facebook旗下的FAIR。这篇文章思路简洁,在DPM方法多年平台期后,效果提高显著。包括本文在内的一系列目标检测算法:RCNN, Fast RCNN, Faster RCNN代表当下目标检测的前沿水平。
为了能够定位和分割物体,对自下而上的区域推荐应用了大型卷积神经网络。
提出了一种在标签数据明显不足时训练大型CNNs的办法。
首先使用拥有大量丰富数据的辅助任务(图像分类)来进行网络预训练,然后在针对这种数据比较缺乏的任务(物体检测)进行网络调优。这种“有监督预训练-领域调优”的训练方法对那些数据缺乏的视觉任务都会非常有效。
OverFeat。来自2014年ICLR的经典图片分类、定位、物体检测overfeat算法,本文是纽约大学Yann LeCun团队中Pierre Sermanet ,David Eigen和张翔等在13年发表的一篇论文,改进了Alex-net,并用图像缩放和滑窗方法在test数据集上测试网络;提出了一种图像定位的方法;最后通过一个卷积网络来同时进行分类,定位和检测三个计算机视觉任务,并在ILSVRC2013中获得了很好的结果。
本文提出了一种利用卷积网络进行分类、定位和检测的集成框架。展示了如何在 ConvNet 中有效地实现多尺度和滑动窗口方法。通过学习预测对象边界, 我们还引入了一种新的深度学习方法来定位。因此, 为了提高检测的可信度, 边界框将被累积而不是被抑制。可以使用单个共享网络同时学习不同的任务。
第一个提供一个明确的解释如何 ConvNets 可用于定位和检测 ImageNet 数据。
结合许多本地化预测, 可以在没有背景样本的训练的情况下进行检测, 并且有可能避免耗时和复杂的引导训练通过。
SPP。由2015年微软研究院的何恺明等提出。SPP可以生成一个固定长度表示, 无论图像大小/规模。金字塔池对对象变形也很健壮。
仅从整个图像中计算特征映射一次, 然后在任意区域 (子图像) 中的池化特征生成用于训练探测器的固定长度表示。这种方法避免重复计算卷积特征。
在最后的卷积层的顶部添加了一个SPP层,SPP层集中特征和产生固定长度的输出, 然后送入全连接层 (或其他分类器)。换言之,在网络层次的更深阶段 (卷积层和全连接层) 中执行一些信息 “聚合”, 以避免开始时需要裁剪或变形。
SPP方法为整个输入图像计算一个卷积特征映射,然后使用从共享特征映射中提取的特征向量对每个目标提案进行分类。通过最大池化提案内部的部分特征映射来形成一个固定大小的输出(例如:6x6)达到特征提取的目的。多种大小的输出汇集在一起,然后连接成空间金字塔池化(SPP)。
SPP不仅可以生成任意大小的图像/窗口进行测试的表示形式, 而且还允许我们在训练过程中为不同大小或比例的图像提供反馈。使用可变大小的图像进行训练会增加缩放不变性并减少过度拟合。我们开发了一种简单的多尺寸训练方法。
在整个图像上只能运行一次卷积层 (不管窗口的数量如何), 然后在特征图上提取特征。这种方法在 R-CNN 上的速度超过了100倍。
Fast R-CNN。 继2014年的RCNN之后,Ross Girshick在15年推出Fast RCNN,构思精巧,流程更为紧凑,大幅提升了目标检测的速度。
R-CNN使用深度卷积网络来分类目标提案,明显的缺点:
1.多阶段训练过程 R-CNN首先采用log损失在目标提案上微调卷积神经网络,然后,训练适合卷积网络特征的SVM,这些SMV作为目标检测器,使用微调来代替softmax分类器。在第三阶段,进行边界框回归。
2.训练空间和时间消耗大 对于SVM和边界框回归的训练,特征是从每一幅图像的每一个目标提案提取出来并写入磁盘中的。
3.目标检测速度慢 在测试时,特征是从每一幅测试图像的每一个目标提案中提取出来的。
R-CNN速度慢是因为每一个目标提案都会通过卷积神经网络进行前向计算,而不共享计算。空间金字塔池化网络(SPPnet)通过共享计算加速了R-CNN。
SPP方法为整个输入图像计算一个卷积特征映射,然后使用从共享特征映射中提取的特征向量对每个目标提案进行分类。通过最大池化提案内部的部分特征映射来形成一个固定大小的输出(例如:6x6)达到特征提取的目的。多种大小的输出汇集在一起,然后连接成空间金字塔池化(SPP)。
SPP明显的缺点,像R-CNN一样,它的训练过程也是一个多阶段过程,这个过程围绕特征提取、采用log损失对网络进行微调、训练SVM和最后的拟合边界框回归展开。特征也要写入磁盘,但是,微调算法不更新SPP之前的卷积层参数,这些限制限制了深度网络的准确率。
Fast R-CNN有如下优点:
比R-CNN和SPPnet更高的检测质量;
采用多任务损失,训练过程为单阶段;
训练可以更新所有网络层;
特征缓存不需要磁盘存储。
Fast R-CNN网络将一幅完整的图像和一系列目标提案作为输入。该网络首先采用一些卷积层和最大池化层生成卷积特征映射来处理整个图像。然后,对于每一个目标提案,感兴趣区域(RoI)池化层从特征映射中提取出一个固定长度的特征向量。每一个特征向量被送到一系列的全连接层(fc)最终分支到两个同级输出层:一层是在所有K个目标类加上一个全方位的背景类产生softmax概率估计;另一层则对每个K类目标输出4个真实数字,每一组的4个值编码了一个K类目标的精确的边界框位置。
采用反向传播计算所有网络权重是Fast R-CNN的一项非常重要的能力,SPPnet在空间金字塔池化层下不能更新权重的根本原因是当来自于不同图像的训练样本通过SPP层时,它所使用的反向传播算法的效率是非常低的,这是由SPPnet和R-CNN的训练方式所决定的。这种低效源于这样一个事实,那就是每一个RoI有一个非常大的感受野,通常包含整个图像。由于前向传播必须处理整个感受野,而训练输入又很大(通常是整幅图像)。
在训练时利用特征共享的优点。在Fast R-CNN的训练中,随机梯度下降(SGD)的小批采用分层次采样,首先采样N幅图像,然后从每幅图像中采样R/N个RoI。关键的是,来自同一图像的RoI在前向和后向过程中共享计算和内存。
除了分层抽样之外,Fast R-CNN使用了具有一个微调阶段的流线型训练过程,这个微调阶段联合优化了一个softmax分类器和边界框回归,而不是训练一个softmax分类器、SVM和三个独立阶段的回归。这个过程的组成部分:损失、小批量采样策略、RoI池化层的反向传播、SGD超参数。
Faster R-CNN。经过RCNN和Fast RCNN的积淀,微软研究院的任少庆、何恺明以及Ross Girshick等人在2015年提出了新的Faster RCNN。
一个区域提出网络(RPN),该网络与检测网络共享全图像的卷积特征,近乎零成本的区域提出。RPN是一个全卷积网络,可以同时在每个位置预测目标边界和目标分数。RPN经过端到端的训练,可以生成高质量的区域提出,由Fast R-CNN用于检测。我们将RPN和Fast R-CNN通过共享卷积特征进一步合并为一个单一的网络——使用最近流行的具有“注意力”机制的神经网络术语,RPN组件告诉统一网络在哪里寻找。
区域提议方法通常依赖廉价的特征和简练的推断方案。选择性搜索是最流行的方法之一,它贪婪地合并基于设计的低级特征的超级像素。
基于区域的检测器所使用的卷积特征映射,如Fast R-CNN,也可以用于生成区域提议。在这些卷积特征之上,我们通过添加一些额外的卷积层来构建RPN,这些卷积层同时在规则网格上的每个位置上回归区域边界和目标分数。因此RPN是一种全卷积网络(FCN),可以针对生成检测区域建议的任务进行端到端的训练。
RPN旨在有效预测具有广泛尺度和长宽比的区域提议。与使用图像金字塔或滤波器金字塔的流行方法相比,引入新的“锚”盒作为多种尺度和长宽比的参考。我们的方案可以被认为是回归参考金字塔,它避免了枚举多种比例或长宽比的图像或滤波器。
在微调区域提议任务和微调目标检测之间进行交替,同时保持区域提议的固定。该方案快速收敛,并产生两个任务之间共享的具有卷积特征的统一网络。
R-CNN方法端到端地对CNN进行训练,将提议区域分类为目标类别或背景。
R-CNN主要作为分类器,并不能预测目标边界,其准确度取决于区域提议模块的性能。
OverFeat,训练一个全连接层来预测假定单个目标定位任务的边界框坐标。然后将全连接层变成卷积层,用于检测多个类别的目标。
MultiBox方法,从网络中生成区域提议,网络最后的全连接层同时预测多个类别不相关的边界框,并推广到OverFeat的“单边界框”方式。这些类别不可知的边界框框被用作R-CNN的提议区域。与我们的全卷积方案相比,MultiBox提议网络适用于单张裁剪图像或多张大型裁剪图像(例如224×224)。MultiBox在提议区域和检测网络之间不共享特征。
卷积共享计算,可以有效而准确地进行视觉识别。
OverFeat论文计算图像金字塔的卷积特征用于分类,定位和检测。共享卷积特征映射的自适应大小池化(SPP)被开发用于有效的基于区域的目标检测和语义分割。Fast R-CNN能够对共享卷积特征进行端到端的检测器训练,并显示出令人信服的准确性和速度。
Faster R-CNN,由两个模块组成。第一个模块是提议区域的深度全卷积网络,第二个模块是使用提议区域的Fast R-CNN检测器。整个系统是一个单个的,统一的目标检测网络。使用最近流行的“注意力”机制的神经网络术语,RPN模块告诉Fast R-CNN模块在哪里寻找。
解决多尺度和尺寸的不同方案。(a)构建图像和特征映射金字塔,分类器以各种尺度运行。(b)在特征映射上运行具有多个比例/大小的滤波器的金字塔。(c)我们在回归函数中使用参考边界框金字塔。
YOLO。是在CVPR2016提出的一种目标检测算法,核心思想是将目标检测转化为回归问题求解,并基于一个单独的end-to-end网络,完成从原始图像的输入到物体位置和类别的输出。
YOLO在进行预测时,会对图像进行全面地推理。与基于滑动窗口和区域提出的技术不同,YOLO在训练期间和测试时会看到整个图像,所以它隐式地编码了关于类的上下文信息以及它们的外观。快速R-CNN是一种顶级的检测方法,因为它看不到更大的上下文,所以在图像中会将背景块误检为目标。与快速R-CNN相比,YOLO的背景误检数量少了一半。
可变形部件模型。可变形零件模型(DPM)使用滑动窗口方法进行目标检测。DPM使用不相交的流程来提取静态特征,对区域进行分类,预测高评分区域的边界框等。我们的系统用单个卷积神经网络替换所有这些不同的部分。网络同时进行特征提取,边界框预测,非极大值抑制和上下文推理。网络内嵌训练特征而不是静态特征,并为检测任务优化它们。我们的统一架构导致了比DPM更快,更准确的模型。
R-CNN及其变种使用区域提出而不是滑动窗口来查找图像中的目标。选择性搜索产生潜在的边界框,卷积网络提取特征,SVM对边界框进行评分,线性模型调整边界框,非极大值抑制消除重复检测。这个复杂流程的每个阶段都必须独立地进行精确调整,所得到的系统非常慢,测试时每张图像需要超过40秒。
YOLO与R-CNN有一些相似之处。每个网格单元提出潜在的边界框并使用卷积特征对这些框进行评分。但是,我们的系统对网格单元提出进行了空间限制,这有助于缓解对同一目标的多次检测。我们的系统还提出了更少的边界框,每张图像只有98个,而选择性搜索则只有2000个左右。最后,我们的系统将这些单独的组件组合成一个单一的,共同优化的模型。
MultiBox。Szegedy等人训练了一个卷积神经网络来预测感兴趣区域,而不是使用选择性搜索。MultiBox还可以通过用单类预测替换置信度预测来执行单目标检测。然而,MultiBox无法执行通用的目标检测,并且仍然只是一个较大的检测流程中的一部分,需要进一步的图像块分类。YOLO和MultiBox都使用卷积网络来预测图像中的边界框,但是YOLO是一个完整的检测系统。
OverFeat。Sermanet等人训练了一个卷积神经网络来执行定位,并使该定位器进行检测。OverFeat高效地执行滑动窗口检测,但它仍然是一个不相交的系统。OverFeat优化了定位,而不是检测性能。像DPM一样,定位器在进行预测时只能看到局部信息。OverFeat不能推断全局上下文,因此需要大量的后处理来产生连贯的检测。
MultiGrasp。我们的工作在设计上类似于Redmon等的抓取检测。我们对边界框预测的网格方法是基于MultiGrasp系统抓取的回归分析。然而,抓取检测比目标检测任务要简单得多。MultiGrasp只需要为包含一个目标的图像预测一个可以抓取的区域。不必估计目标的大小,位置或目标边界或预测目标的类别,只找到适合抓取的区域。YOLO预测图像中多个类别的多个目标的边界框和类别概率。
YOLO比Fast R-CNN的背景误检要少得多。通过使用YOLO消除Fast R-CNN的背景检测,我们获得了显著的性能提升。对于R-CNN预测的每个边界框,我们检查YOLO是否预测一个类似的框。如果是这样,我们根据YOLO预测的概率和两个盒子之间的重叠来对这个预测进行提升。
YOLO,一种统一的目标检测模型。我们的模型构建简单,可以直接在整张图像上进行训练。与基于分类器的方法不同,YOLO直接在对应检测性能的损失函数上训练,并且整个模型联合训练。
SSD。是Wei Liu在ECCV 2016上提出的一种目标检测算法,截至目前是主要的检测框架之一,相比Faster RCNN有明显的速度优势,相比YOLO又有明显的mAP优势(不过已经被CVPR 2017的YOLO9000超越)。
提出了一种使用单个深度神经网络来检测图像中的目标的方法。将边界框的输出空间离散化为不同长宽比的一组默认框和并缩放每个特征映射的位置。在预测时,网络会在每个默认框中为每个目标类别的出现生成分数,并对框进行调整以更好地匹配目标形状。此外,网络还结合了不同分辨率的多个特征映射的预测,自然地处理各种尺寸的目标。相对于需要目标提出的方法,SSD非常简单,因为它完全消除了提出生成和随后的像素或特征重新采样阶段,并将所有计算封装到单个网络中。这使得SSD易于训练和直接集成到需要检测组件的系统中。
SSD,是一种针对多个类别的单次检测器,比先前的先进的单次检测器(YOLO)更快,并且准确得多,事实上,与执行显式区域提出和池化的更慢的技术具有相同的精度(包括Faster R-CNN)。
SSD的核心是预测固定的一系列默认边界框的类别分数和边界框偏移,使用更小的卷积滤波器应用到特征映射上。
为了实现高检测精度,我们根据不同尺度的特征映射生成不同尺度的预测,并通过纵横比明确分开预测。
这些设计功能使得即使在低分辨率输入图像上也能实现简单的端到端训练和高精度,从而进一步提高速度与精度之间的权衡。
在图像中有两种建立的用于目标检测的方法,一种基于滑动窗口,另一种基于区域提出分类。在卷积神经网络出现之前,这两种方法的最新技术——可变形部件模型(DPM)和选择性搜索——具有相当的性能。然而,在R-CNN结合选择性搜索区域提出和基于后分类的卷积网络带来的显著改进后,区域提出目标检测方法变得流行。
最初的R-CNN方法已经以各种方式进行了改进。第一套方法提高了后分类的质量和速度,因为它需要对成千上万的裁剪图像进行分类,这是昂贵和耗时的。SPPnet显著加快了原有的R-CNN方法。它引入了一个空间金字塔池化层,该层对区域大小和尺度更鲁棒,并允许分类层重用多个图像分辨率下生成的特征映射上计算的特征。Fast R-CNN扩展了SPPnet,使得它可以通过最小化置信度和边界框回归的损失来对所有层进行端到端的微调,最初在MultiBox中引入用于学习目标。
MultiBox中,基于低级图像特征的选择性搜索区域提出直接被单独的深度神经网络生成的提出所取代。这进一步提高了检测精度,但是导致了一些复杂的设置,需要训练两个具有依赖关系的神经网络。Faster R-CNN将选择性搜索提出替换为区域提出网络(RPN)学习到的区域提出,并引入了一种方法,通过交替两个网络之间的微调共享卷积层和预测层将RPN和Fast R-CNN结合在一起。通过这种方式,使用区域提出池化中级特征,并且最后的分类步骤比较便宜。我们的SSD与Faster R-CNN中的区域提出网络(RPN)非常相似,因为我们也使用一组固定的(默认)边界框进行预测,类似于RPN中的锚边界框。但是,我们不是使用这些来池化特征并评估另一个分类器,而是为每个目标类别在每个边界框中同时生成一个分数。因此,我们的方法避免了将RPN与Fast R-CNN合并的复杂性,并且更容易训练,更快且更直接地集成到其它任务中。
完全跳过提出步骤,直接预测多个类别的边界框和置信度。OverFeat是滑动窗口方法的深度版本,在知道了底层目标类别的置信度之后,直接从最顶层的特征映射的每个位置预测边界框。YOLO使用整个最顶层的特征映射来预测多个类别和边界框(这些类别共享)的置信度。我们的SSD方法属于这一类,因为我们没有提出步骤,但使用默认边界框。然而,我们的方法比现有方法更灵活,因为我们可以在不同尺度的多个特征映射的每个特征位置上使用不同长宽比的默认边界框。如果我们只从最顶层的特征映射的每个位置使用一个默认框,我们的SSD将具有与OverFeat相似的架构;如果我们使用整个最顶层的特征映射,并添加一个全连接层进行预测来代替我们的卷积预测器,并且没有明确地考虑多个长宽比,我们可以近似地再现YOLO。
SSD,一种快速的单次多类别目标检测器。我们模型的一个关键特性是使用网络顶部多个特征映射的多尺度卷积边界框输出。这种表示使我们能够高效地建模可能的边界框形状空间。我们通过实验验证,在给定合适训练策略的情况下,大量仔细选择的默认边界框会提高性能。我们构建的SSD模型比现有的方法至少要多一个数量级的边界框预测采样位置,尺度和长宽比。
FCN。 CVPR 2015拿到best paper候选的论文。卷积网络在特征分层领域是非常强大的视觉模型。我们证明了经过端到端、像素到像素训练的卷积网络超过语义分割中最先进的技术。我们的核心观点是建立“全卷积”网络,输入任意尺寸,经过有效的推理和学习产生相应尺寸的输出。我们定义并指定全卷积网络的空间,解释它们在空间范围内dense prediction任务(预测每个像素所属的类别)和获取与先验模型联系的应用。我们改编当前的分类网络(AlexNet,the VGG net , and GoogLeNet )到完全卷积网络和通过微调 传递它们的学习表现到分割任务中。然后我们定义了一个跳跃式的架构,结合来自深、粗层的语义信息和来自浅、细层的表征信息来产生准确和精细的分割。
我们证明了经过端到端 、像素到像素训练的的卷积网络超过语义分割中没有further machinery的最先进的技术。我们认为,这是第一次训练端到端(1)的FCN在像素级别的预测,而且来自监督式预处理(2)。全卷积在现有的网络基础上从任意尺寸的输入预测密集输出。学习和推理能在全图通过密集的前馈计算和反向传播一次执行。网内上采样层能在像素级别预测和通过下采样池化学习。
我们的方法是基于最近深层网络在图像分类上的成功和迁移学习。转移第一次被证明在各种视觉识别任务 ,然后是检测,不仅在实例还有融合proposal-classification模型的语义分割 。我们现在重新构建和微调直接的、dense prediction语义分割的分类网。在这个框架里我们绘制FCNs的空间并将过去的或是最近的先验模型置于其中。
我们改编和扩展了深度分类架构,使用图像分类作为监督预处理,和从全部图像的输入和ground truths(用于有监督训练的训练集的分类准确性)通过全卷积微调进行简单且高效的学习。
我们通过跨层和融合特征来定义一种非线性的局部到整体的表述用来协调端到端。
我们的模型通过重新解释分类网到全卷积网络和微调它们的学习表现将最近在分类上的成功移植到dense prediction。与此相反,先前的工作应用的是小规模、没有超像素预处理的卷积网。
FCN设计和密集预测权衡。
将这些分类网络扩展到分割并通过多分辨率的层结合显著提高先进的技术,同时简化和加速学习和推理。
R-FCN。这篇论文是NIPS 2016的一篇论文,主要贡献在于解决了“分类网络的位置不敏感性(translation-invariance in image classification)”与“检测网络的位置敏感性(translation-variance in object detection)”之间的矛盾,在提升精度的同时利用“位置敏感得分图(position-sensitive score maps)”提升了检测速度。
提出了基于区域的全卷积网络,以实现准确和高效的目标检测。与先前的基于区域的检测器(如Fast/Faster R-CNN)相比,这些检测器应用昂贵的每个区域子网络数百次,我们的基于区域的检测器是全卷积的,几乎所有计算都在整张图像上共享。为了实现这一目标,我们提出了位置敏感分数图,以解决图像分类中的平移不变性与目标检测中的平移变化之间的困境。因此,我们的方法可以自然地采用全卷积图像分类器的主干网络,如最新的残差网络(ResNets),用于目标检测。
开发了一个称为基于区域的全卷积网络(R-FCN)框架来进行目标检测。我们的网络由共享的全卷积架构组成,就像FCN一样。为了将平移可变性并入FCN,我们通过使用一组专门的卷积层作为FCN输出来构建一组位置敏感的分数图。这些分数图中的每一个都对关于相对空间位置(的位置信息进行编码例如,“在目标的左边”)。在这个FCN之上,我们添加了一个位置敏感的RoI池化层,它从这些分数图中获取信息,并且后面没有权重(卷积/fc)层。整个架构是端到端的学习。所有可学习的层都是卷积的,并在整个图像上共享,但对目标检测所需的空间信息进行编码。
R-CNN评估裁剪区域和变形区域的卷积网络,计算不在区域之间共享。SPPnetFast R-CNN和Faster R-CNN是“半卷积”的,卷积子网络在整张图像上进行共享计算,另一个子网络评估单个区域。
FPN。 来自CVPR 2017。利用深度卷积网络内在的多尺度、金字塔分级来构造具有很少额外成本的特征金字塔。开发了一种具有横向连接的自顶向下架构,用于在所有尺度上构建高级语义特征映射。这种称为特征金字塔网络(FPN)的架构在几个应用程序中作为通用特征提取器表现出了显著的改进。
Deep ConvNet按层计算特征层, 并且具有抽样层, 特征层具有固有的多尺度、金字塔形状。这种网络特征层产生了不同空间分辨率的特征映射, 但引入了不同深度引起的大语义缺口。高分辨率的映射具有低级的特征, 损害了它们的表示能力, 用于物体识别。
SSD 风格的金字塔将重用在正向传递中计算的不同层的多尺度特征映射, 并且没有成本。但为了避免使用低级特征 SSD 放弃再利用已经计算的层, 取而代之的是在网络中从高处开始构建金字塔 (例如, conv4 3 of VGG nets ), 然后添加几个新层。因此, 它错失了重用特征层的高分辨率映射的机会。我们表明, 这些对检测小物体很重要。
本文的目标是自然地利用 ConvNet 的特征层的金字塔形状, 同时创建一个具有强烈语义的特征金字塔。为了实现这一目标, 我们依赖于一种体系结构, 它将低分辨率、语义强的特征与高分辨率、语义较弱的特征结合起来, 通过自上而下的途径和横向连接 (图 1 (d))。其结果是一个特征金字塔, 它在所有级别都具有丰富的语义, 并且从单一输入图像比例快速构建。换言之, 我们展示了如何创建网络内特征金字塔, 可用于替换 featurized image pyramids而不牺牲表现力、速度或内存。
我们的方法采取一个任意大小的单尺度图像作为输入, 并输出成比例大小的特征映射在多个标准, 以完全卷积的方式。此过程独立于主干卷积体系结构。
YOLO9000。 YOLO是Joseph Redmon和Ali Farhadi等人于2015年提出的第一个基于单个神经网络的目标检测系统。在2017年CVPR上,Joseph Redmon和Ali Farhadi发表的YOLOv2进一步提高了检测的精度和速度。
一个先进的实时目标检测系统YOLO9000,可以检测超过9000个目标类别。
多尺度训练方法。
YOLOv2模型可以以不同的尺寸运行,从而在速度和准确性之间提供了一个简单的折衷。
提出了一种联合训练目标检测与分类的方法。使用这种方法,我们在COCO检测数据集和ImageNet分类数据集上同时训练YOLO9000。我们的联合训练允许YOLO9000预测未标注的检测数据目标类别的检测结果。
标注检测图像要比标注分类或贴标签要昂贵得多。
提出了一种新的方法来利用我们已经拥有的大量分类数据,并用它来扩大当前检测系统的范围。我们的方法使用目标分类的分层视图,允许我们将不同的数据集组合在一起。
还提出了一种联合训练算法,使我们能够在检测和分类数据上训练目标检测器。我们的方法利用标记的检测图像来学习精确定位物体,同时使用分类图像来增加词表和鲁棒性。
首先,我们改进YOLO基础检测系统,产生最先进的实时检测器YOLOv2。然后利用我们的数据集组合方法和联合训练算法对来自ImageNet的9000多个类别以及COCO的检测数据训练了一个模型。
YOLO造成了大量的定位误差。此外,与基于区域提出的方法相比,YOLO召回率相对较低。因此,我们主要侧重于提高召回率和改进定位,同时保持分类准确性。
批标准化。
高分辨率分类器。
具有锚盒的卷积。
维度聚类。
直接位置预测。
细粒度功能。
多尺度训练。
分类训练。
检测训练。
分层分类。
与WordTree的数据集组合。
联合分类和检测。
YOLOv2和YOLO9000,两个实时检测系统。YOLOv2在各种检测数据集上都是最先进的,也比其他检测系统更快。此外,它可以运行在各种图像大小,以提供速度和准确性之间的平滑折衷。
YOLO9000是一个通过联合优化检测和分类来检测9000多个目标类别的实时框架。我们使用WordTree将各种来源的数据和我们的联合优化技术相结合,在ImageNet和COCO上同时进行训练。YOLO9000是在检测和分类之间缩小数据集大小差距的重要一步。
我们的许多技术都可以泛化到目标检测之外。我们对ImageNet的WordTree表示为图像分类提供了更丰富,更详细的输出空间。使用分层分类的数据集组合在分类和分割领域将是有用的。像多尺度训练这样的训练技术可以为各种视觉任务提供益处。
Mask R-CNN。 ICCV 2017 的最佳论文奖(Best Paper Award),彰显了机器学习计算机视觉领域在2017年的最新成果。在机器学习2017年的最新发展中,单任务的网络结构已经逐渐不再引人瞩目,取而代之的是集成,复杂的多任务网络模型。Mask R-CNN就是典型的代表。
我们提出了一个概念上简单,灵活和通用的目标分割框架。我们的方法有效地检测图像中的目标,同时为每个实例生成高质量的分割掩码。通过添加一个与现有目标检测框回归并行的,用于预测目标掩码的分支来扩展Faster R-CNN。
通过添加一个用于在每个感兴趣区域(RoI)上预测分割掩码的分支来扩展Faster R-CNN,这个分支与用于分类和目标检测框回归的分支并行执行,掩码分支是作用于每个RoI的小FCN,以像素到像素的方式预测分割掩码。Mask R-CNN易于实现和训练,它是基于Faster R-CNN这种灵活的框架的。此外,掩码分支只增加了很小的计算开销。
在原理上,Mask R-CNN是Faster R-CNN的直接扩展,而要获得良好的结果,正确构建掩码分支至关重要。最重要的是,Faster R-CNN不是为网络输入和输出之间的像素到像素对齐而设计的。实际上,应用到目标上的核心操作执行的是粗略的空间量化特征提取。为了修正错位,我们提出了一个简单的,量化无关的层,称为RoIAlign,可以保留精确的空间位置。其次,我们发现解耦掩码和分类至关重要:我们为每个类独立地预测二进制掩码,这样不会跨类别竞争,并且依赖于网络的RoI分类分支来预测类别。相比之下,FCN通常执行每像素多类分类,分割和分类同时进行,基于我们的实验,对于目标分割效果不佳。
R-CNN:R-CNN方法是通过找到一定数量的候选区域,并独立地在每个RoI上执行卷积来进行目标检测的。 基于R-CNN的改进,使用RoIPool在特征图上选取RoI,实现了更快的速度和更好的准确性。Faster R-CNN通过使用RPN学习注意机制来产生候选框。还有后续的对Faster R-CNN灵活性和鲁棒性的改进。
目标分割:在R- CNN的有效性的推动下,目标分割的许多方法都是基于segment proposals的。先前的方法依赖自下而上的分割。 DeepMask和通过学习提出分割候选,然后使用Fast R-CNN分类。在这些方法中,分割先于识别,这样做既慢又不太准确。同样,Dai等人提出了一个复杂的多级联级联,从候选框中预测候选分割,然后进行分类。相反,我们的方法并行进行掩码和类标签的预测,更简单也更灵活。
Mask R-CNN在概念上是简单的:Faster R-CNN为每个候选目标输出类标签和边框偏移量。为此,我们添加了一个输出目标掩码的第三个分支。因此,Mask R-CNN是一种自然而直观的点子。但是,附加的掩码输出与类和框输出不同,需要提取对象的更精细的空间布局。像素到像素对齐是Fast/Faster R-CNN的主要缺失。
Mask R-CNN:Mask R-CNN采用相同的两个阶段,具有相同的第一阶段(即RPN)。在第二阶段,与预测类和框偏移量并行,Mask R-CNN还为每个RoI输出二进制掩码。这与最近的其它系统相反,其分类取依赖于掩码预测。我们的方法遵循Fast R-CNN ,预测类和框偏移量并行(这在很大程度上简化了R-CNN的多级流水线)