读书笔记:Faster R-CNN:Towards Real-Time Object Detection with Region Proposal Networks

Faster R-CNN:Towards Real-Time Object Detection with Region Proposal Networks

著名的faster R-CNN 当然应该好好读一读~


Abstract:

背景:先进的主流网络的目标检测网络,都依赖着region proposal algorithms来推测对象位置。先进的SPPnet Fast-RCNN 都减少了目标检测探测器的运行时间,而且region proposal computation已经成为了目标检测的瓶颈。
方法1:Faster-rcnn中我们提出了region proposal network ,rpn share full-image convolution features with the detection network,因此region proposal几乎是cost free,RPN就是一个CNN网络,可以同时预测对象边界对象的得分
答案1:由于是端到端(机器学习/机器学习),因此生成了高质量的区域选择—因此被detection使用。
答案2:我们合并了RPN与Faster RCNN 通过分享他们的卷积特征图——还追了个流行——attention mechanisms——运行速度非常块
最后吹捧一下自己的网络运行速度较快。

Introduction:

背景1:Object detection 基于proposal methods和region-based convolutional neural networks. 虽然region based CNN的计算十分耗算力,但是通过卷积共享从而减少了算力的使用。而最近的的Fast RCNN几乎可以达到实时的速度利用很深的网络,同时忽视region proposal所提出的时间。
困难和挑战1:目前先进的目标检测之中,提出proposal计算时间是主要的瓶颈;
背景2:目前的region proposal的方法是依赖廉价的特征提取和推理的方法。eg selective search是一种很流行的方法——基于低维特征而合并超像素。但是与detection network所相比,这种方法还是较慢;
困难挑战2:无一例外,区域建议步骤消耗了大量的时间;
我们的方法:
我们展示了算法改变—使用深度卷积神经网络——带来了优雅有效的解决方法,从而候选区域的计算是几乎不消耗算力(通过detection netowork computation)。我们将其称为Region Proposal Network,使用先进的目标检测所相同的convolutional layers。 通过共享卷积层,来计算proposal的时间被减少。我们观察卷积特征图可以被region-based-CNN使用,如同fast Rcnn,也可以使用region proposal,目标检测是通过region-based detector对feature map处理。
在这些卷积特征之上,同时我们构建了额外的卷积,在一个规则的网格中进行一个回归和客观得分。FPN是一个全连接卷积神经网络——端到端——产生目标选择区域;
介绍:RPN旨在有效率的提出各种比例和长宽的预测区域。在流行的方法里所进行对比,我们有金字塔图像图a,图像和特征图的金字塔分类器在所有尺寸上运行。我们有金字塔滤波器下图b,特征图上运行多个尺度的滤波器。我们也有先进的anchor box——作为多比例多横纵比的参考。我们的方法可视为金字塔形的回归参考——为了避免图像或滤波器存在着不同尺度/不同横纵比。在使用了anchor box之后,训练表现良好,且使用单比例尺度图像进行训练和测试还有着速度优势;
读书笔记:Faster R-CNN:Towards Real-Time Object Detection with Region Proposal Networks_第1张图片
Fast RCNN + FPN = ?
将以上他两结合,我们提出了一个训练策略——交替(微调region proposal task)*(微调目标检测任务)。这种方法产生了一个统一网络——同时使用convolutional feature 在各个任务所共享;与传统方法的对比:我们将FPN+fast rcnn的检测精度与baseline selective search +fast rcnn对比 ,精度速度都提高,最后再吹捧吹捧自己的网络;

Faster R-CNN detection system:composed of two module

  • Module 1 : deep fully convolutional network – propose regions — RPN
  • Module 2 : Fast RCNN — uses the propose region可以理解为RPN告诉Faster RCNN往哪看。

Module 1 : REGION PROPOSAL NETWORK
介绍:input(任意尺寸大小) output(矩阵object proposal, 同时还有一套客观性评分)。我们使用fully convolutional network 作为RPN. 我们的最终目标是与fast rcnn 对象检查网络共享计算。我们研究了2F的模型,有5个可共享的卷积层与VGG16,有13个可共享的卷积层。为了产生矩形region proposal,我们在最后一个共享卷积层输出的卷积特征图上滑动,映射到一个较低维度的特征。然后将这个特征提供给两个全连接层,然后被送到两个兄弟连接层——a box-regression layer/ a box-classification box。
读书笔记:Faster R-CNN:Towards Real-Time Object Detection with Region Proposal Networks_第2张图片

Anchors:
在我们滑动的同时,我们可以同时预测出多个region proposal。其中每个位置的最大可能proposals的数量表示为K。相对我们称之为k个参考框,k的proposals是参数化的。锚点位于滑动窗口的中心,并且比例和横纵比相关性,默认使用了3个刻度,3个纵横比,每个滑动位置产生9个锚框(如下图所示)。
读书笔记:Faster R-CNN:Towards Real-Time Object Detection with Region Proposal Networks_第3张图片
移动不变性的锚点:(未看懂)
多尺度锚点作为回归参考:
我们的anchor的设计解决多尺度和横纵比的新方案。目前解决处理多种尺寸和尺度的不同方案,Figure 1(a)构建图像和特征图的金字塔,并且分类器在所有尺寸/尺度上运行,可以理解为同一个分类器/滤波器,不同尺寸/尺度上运行,这种方法比较耗时。(b)在特征图上运行具有多个尺度/尺寸的滤波器,使用不同尺寸/尺度的滤波器,使用不同滤波器大小。同时使用第二种方式一般与第一种方式一块使用,解决多尺寸多尺度问题。
我们的方法:参考的是多尺度/不同纵横比的锚框进行分类和回归。(它仅参考滑动窗口所得出的单尺度的特征图)。避免了枚举多尺度/不同纵横比的图像或滤波器。
由于这种基于锚点的多尺度的设计,我们可以简单地在单尺度图像上计算的卷积特征,刚好符合fast rcnn的输入。

Anchors 的损失函数:
为了训练RPN,我们每一个锚分配了一个二维度标签(是或否)。同时我们为锚点布置了一个正面标签

  • i与真实框具有重叠交并比IOU最高
  • ii与goundtruth box具有IOU重叠高于0.7的锚点们
    我们的条件以i为主,如果IOU低于0.3,我们会锚分配负标签
    读书笔记:Faster R-CNN:Towards Real-Time Object Detection with Region Proposal Networks_第4张图片
    我们的方法与之前ROI的方法(得出结果是相同的—单尺度的特征窗口),以不同方式实现了边界框的回归。在我们的方法之中,为了考虑不同的大小,学习一组k个边界框回归量。每个回归量负责一个比例和一个纵横比,并且回归时不会共享权重,通过这种方式,即使特征具有固定尺寸/比例的ROI仍然可以被预测。

训练RPN:
RPN可以通过反向传播和随机梯度下降进行端到端的训练,我们的训练仍然是以ROI大为主的采用策略来进行训练。

3.2 RPN与FAST RCNN
以上我们描述了怎么去训练用于产生region proposals,没有去考虑region based object detection去使用proposal去检测网络。我们使用fast rcnn,接下来我们描绘由RPN和FAST RCNN所共享卷积层的FASTER RCNN的算法。
在独立训练的RPN和FAST RCNN都将以不同方式修改卷积层。因此我们要想办法,允许在两个网络之中共享卷积,而不是把他们独立为两个单独的网络,我们讨论了几种方法,在这里我们重点塔伦交替训练的方法。我们先训练RPN,再使用proposal训练Fast RCNN。然后用fast rcnn的卷积初始化给RPN反复进行迭代。通过这种方法我们共享了卷积层,减少了算力的使用。

你可能感兴趣的:(读书笔记,计算机视觉)