Single-Shot Refinement Neural Network for Object Detection+Dynamic Anchor Feature Selection for Single-Shot Object Detection


两个文章都是关于物体检测的,第二篇文章在第一篇文章的基础上进行的。

  • Single-Shot Refinement Neural Network for Object Detection
    作者认为如果Single-Stage的网络借鉴Two-Stage网络中的设计理念,可以进一步提高检测精度,同时又不失去检测速度。Two-Stage网络相对于Single-Stage网络的效果好主要有以下几个原因:
    (1)两阶段可以筛选掉一些negative,进而解决类别不平衡问题。
    (2)两次回归边界框。
    (3)使用两阶段特性来描述对象。
    如果将这种设计思路运用到Single-Stage网络中,那么最终的网络既有Single-Stage的速度,又有Two-Stage的准确度,这也是本文所做的工作。网路设计图如下:
    RefineDet + Dynamic Anchor Feature Selection for Single-Shot Object Detection
    网络主要由三部分组成:Anchor Refinement Moudle;Transfer Connection Block;Object Detection Moudle

-Anchor Refinement Moudle
ARM模块类似于Faster RCNN中的RPN模块,主要用来产生proposal,并对anchor进行初步的筛选和微调。ARM模块的输出是anchor的微调回归向量和前景/背景的概率。这样设计,通过前景/背景概率就可以对anchor进行筛选,过滤掉一些negative的anchor,从而解决类别不平衡问题。同时还可以对anchor进行粗略的修正。

-Object Detection Moudle
ODM模块主要接受来自ARM模块经过调整后的anchor,ODM和ARM模块有着相同的feature-map-size,将调整过后的anchor输入到ODM模块,抽取对应区域的feature map进行分类和回归。

-Transfer Connection Block
TCB模块主要是用来连接ARM和ODM模块,TCB结构如图所示:

RefineDet + Dynamic Anchor Feature Selection for Single-Shot Object Detection
TCB将ARM中的高层次feature和低层次的feature进行融合,然后输出为ODM对应的特征。
  1. Dynamic Anchor Feature Selection for Single-Shot Object Detection
    本文是在RefineDet的基础上进行的改进,主要创新点有两方面:
    (1)ARM调整后的anchor在ODM模块中会自动选择特征区域( Dynamic Feature selection)。
    (2)使用Bidirectional feature fusion(BFF)代替TCB模块,既将高层特征融合到底层,也将底层特征融合到高层。

RefineDet中使用ARM模块对anchor进行微调,然后将微调后的anchor送到ODM模块中进一步的预测。但是,对比ODM模块和SSD就会发现。ODM中输入的anchor尺寸不在是固定的,而是经过调整之后的。也就是说,在SSD中anchor的W,H是一个标量,但在ODM却成了一个变量。更为重要的是,anchor成为一个变量后,ODM中的输入并没有发生变化,依旧是原始未经过调整anchor对应的feature-map(我是这么理解的),这种不对等性限制了网络的性能。

RefineDet + Dynamic Anchor Feature Selection for Single-Shot Object Detection

所以文章借鉴了ROIAlign策略,使得调整后的anchor可以自动的选择feature points

对于RefineDet中的TCB模块之进行了高层特征到底层的融合,而在本文中,还进行了底层特征到高层的融合,主要使用的是BFF(Bidirectional feature fusion)模块,网络整体结构如下:
RefineDet + Dynamic Anchor Feature Selection for Single-Shot Object Detection

相关文章: