论文笔记:Guided Anchoring

180 阅读3分钟

模型特点

我们常用(x,y,w,h)4维向量来描述一个anchor,即中心点和宽高 Anchor 的概率分布被分解为两个条件概率分布,也就是给定图像特征之后 anchor 中心点的概率分布,和给定图像特征和中心点之后的形状概率分布。
anchor 的生成过程可以分解为两个步骤,anchor 位置预测和形状预测。在这个看起来很简单的 formulation 上。 在原始 RPN 的特征图基础上,我们采用两个分支分别预测 anchor 位置和形状,然后结合在一起得到 anchor。之后采用一个 Feature Adaption 模块进行 anchor 特征的调整,得到新的特征图供之后的预测(anchor 的分类和回归)使用。整个方法可以 end-to-end training,而且相比之前只是增加了 3 个 1x1 conv 和一个 3x3 deformable conv,带来的模型参数量的变化很小。

  • 位置预测
    将整个 feature map 的区域分为物体中心区域,外围区域和忽略区域
  • 形状预测
    预测最佳的长和宽,这是一个回归问题,按照往常做法,当然是先算出 target,也就是该中心点的 anchor 最优的 w 和 h,然后用 L1/L2/Smooth L1 这类 loss 来监督。由于target不好算,也比较麻烦,所以用iou来监督。
    在分配对应的gt时,由于没有wh,所以无法找Iou最大的gt,于是sample一些可能的wh遍历一遍来求iou的Max,实验发现sample的个数不关键,论文取的9组
  • Feature adaption
    把 anchor 的形状信息直接融入到特征图中,这样新得到的特征图就可以去适应每个位置 anchor 的形状, 利用一个 3x3 的 deformable convolution 来修正原始的特征图,而 deformable convolution 的 offset 是通过 anchor 的 w 和 h 经过一个 1x1 conv 得到的。
  • Anchor设计的准则
    alignment(中心对齐) 和 consistency(特征一致)。其中 alignment 是指 anchor 的中心点要和 feature 的位置对齐,consistency 是指 anchor 的特征要和形状匹配。
    Alignment: 由于每个 anchor 都是由 feature map 上的一个点表示,那么这个 anchor 最好是以这个点为中心,否则位置偏了的话,这个点的 feature 和这个 anchor 就不是非常好地对应起来,用该 feature 来预测 anchor 的分类和回归会有问题。
    Consistency: 由于每个位置 anchor 形状不同而破坏了特征的一致性,我们需要通过 feature adaption 来进行修正。这条准则本质上是对于如何准确提取 anchor 特征的讨论。对于两阶段检测器的第二阶段,我们可以通过 RoI Pooling 或者 RoI Align 来精确地提取 RoI 的特征。但是对于 RPN 或者单阶段检测器的 anchor 来说,由于数量巨大,我们不可能通过这种 heavy 的方法来实现特征和框的精确 match,还是只能用特征图上一个点,也就是 512x1x1 的向量来表示。那么 Feature Adaption 起到了一个让特征和 anchor 对应更加精确的作用,这种设计在其他地方也有可以借鉴之处。

文章内容来自知乎,致谢!