DetectoRS: Detecting Objects with Recursive Feature Pyramid and Switchable Atrous Convolution
论文地址:https://arxiv.org/pdf/2006.02334v1.pdf
代码地址:https://github.com/joe-siyuan-qiao/DetectoRS
论文简介
这篇论文设计了一种针对目标检测的backbone。
宏观层面:使用 Recursive Feature Pyramid(循环特征金字塔)结构;
微观层面:使用 Switchable Atrous Convolution(可切换的空洞卷积)结构。
最终DetectoRS架构在 COCO 数据集,目标检测 box AP 可达到 54.7%,实例分割 mask AP 可达到 49.6%
论文细节
宏观层面设计 Recursive Feature Pyramid (RFP)
RFP的设计灵感来源于人类的视觉系统 looking and thinking twice 机制,我自己理解是,对同一张图片多看几次,会注意到之前没有注意到的部分。
具体设计是在 FPN 的基础上加入了一个feedback 链接,当数据传到这里后,在这个地方循环 T 次(论文中将T设为2),展开结构如上图c。 从左到右,第一步的 feature map 经过一个 ASPP 加到第二步的 feature map,同时也融合到最终预测的 feature map上 。其中ASPP是 Atrous Spatial Pyramid Pooling 空洞空间卷积池化金字塔,是对空间金字塔池化的改进版。
微观层面设计 Switchable Atrous Convolution (SAC)
作者设计了一种有效的转换机制,可以把标准的卷积转换为条件卷积(Conditional Convolution networks)(条件卷积是指可以动态调整卷积核,宽度或深度的卷积操作)。
SAC 的数学表达式:
其中 S(.)是转换函数,用 5x5平均池化层 后跟 1x1卷积层实现
论文总结
这篇论文,作者分别在宏观微观层面进行设计,宏观对特征层进行重复利用,降低漏检,微观利用可切换空洞卷积操作,使得模型可以学习如何合理的控制感受野,最终取得很好的效果。
模型效果展示如下
可以看出加上RFP(第二列)明显漏检就比较少,而加上SAC(第三列)感受野明显比较大,可以检测出占比图片很大的目标。
其中SAC模块可以做到即插即用的,很方便如果有需要可在源码中找到模块,用在自己的模型中试一试。
而RFP架构则是一个不错的方法,以后设计模型时可以借鉴。