COCO 迎来新榜首!DetectoRS以54.7mAP成就目前最高精度检测网络

关注

点击关注上方“AI深度视线”,并“星标”公号

技术硬文,第一时间送达!

 

精彩内容

这篇DetectoRS以mAP54.7的成绩刷新COCO目标检测网络榜榜首,同时还以47.1%拿下COCO实例分割第一、49.6AQ拿下COCO全景分割第一!完美诠释强者恒强。

论文地址:

https://arxiv.org/pdf/2006.02334.pdf

代码链接:

https://github.com/joe-siyuan-qiao/DetectoRS

 

1 Introduction

 

 

许多现代的目标检测器通过仔细观察和思考的机制展示了出色的性能。本文在目标检测主干设计中探讨了该机制。

  • 宏观层面:提出了递归特征金字塔,它将特征金字塔网络的额外反馈连接合并到自底向上的骨干层中。

  • 微观层面:提出了可切换Atrous卷积,它对不同的Atrous率的特征进行卷积,并使用切换函数收集结果。

将它们结合在一起形成检测器,大大提高了目标检测的性能。在COCO test-dev上,检测器实现了54.7%的box AP目标检测,47.1%的mask AP实例分割,49.6%的PQ全景分割。

 

2 RelateWork

 

目标检测主要分为two-stage和one-stage两大类,这两大类都涌现出了非常优异的算法模型,如重精度的two-stage目标检测算法有Faster-RCNN、EfficientDet、ResNetSt等都是两阶段网络的重磅成员,重速度的one-stage如YOLOV1-V5系列Centernet系列等,都是在各个落地应用中的中流砥柱担当。本文提出的网络是属于two-stage的,基于HTC(Hybrid Task Cascade)的主干网络。

 

2.1 多尺度特征

RFP:Recursive Feature Pyramid 是基于FPN的多尺度特征提取网络,FPN是自顶向下来顺序的合并多尺度的特征,它的出现有效提升了目标检测网络的性能。所以FPN成了后面很多网络改进的重要对象,如

  • PANet是在FPN的基础上又增加了自底向上多尺度特征

  • STDL是通过尺度转换器的设计使不同尺度的特征可以进行融合

  • G-FRNet通过gating unit增加了反馈

  • NAS-FPN和Auto-FPN是通过架构搜索找出最优的FPN结构

  • EfficientDet是重复一个简单的BiFPN网络来提取多尺度特征

而本文提出一种递归特征金字塔RFP,反复通过自底向上的主干来丰富FPN的表达能力。

许多递归方法被提出来解决不同类型的计算机视觉问题。最近提出了一种用于目标检测的新递归方法CBNet,该方法串联多个骨干输出特征作为FPN的输入。本文中的RFP是通过使用ASPP-enriched FPN以及有效的融合模块进行递归计算。

 

2.2 条件卷积

条件卷积是指采用动态的卷积核、宽和深度,和这些方式不同的是,本文提出的可切换空洞卷积(SAC)允许一个有效的转换机制,从标准卷积到条件卷积,而不改变任何预先训练的模型。因此,对于许多预先训练过的主干网络来说,SAC是一个即插即用模块。此外,SAC使用了全局上下文信息和新的权值锁定机制,使其更加有效。

 

3 RFP-递归特征金字塔

 

3.1 FPN

如令Bi表示自底向上backbone的第i-stage,Fi表示自顶向下backbone的第i-stage,则FPN的第i级输出fi可以由下式表示:

3.2 RFP

本文提出的RFP是在FPN的基础上增加了反馈机制,如下图所示,因此RFP的数学表示变为:

展开成sequential network则表示为:

我们对ResNet主干进行更改,允许它将x和R(f)作为输入。ResNet有四个阶段,每个阶段由几个相似的Block组成。我们只对每个阶段的第一个块进行更改,如下图所示。此block计算一个3层特征,并将其通过short cut添加到计算的特征中。为了使用特征R(f),我们添加另一个卷积层,将内核大小设置为1。这个层的权重被初始化为0,以确保当我们从一个预先训练好的检查点加载权重时,它没有任何实际效果。

 

3.3 ASPP as the Connecting Module

我们使用Asrous Spatial Pyramid Pooling (ASPP)实现连接模块R,该模块以特征为输入,并将其转换为RFP特征通过上图的使用过程。

在这个模块中有四个并行分支,作为它们的输入,然后这些分支的输出按照通道维度连接在一起,形成最终的输出。

其中,三个分支使用卷积层后跟ReLU层,输出通道的数目是1/4的输入通道数量。第四个分支使用全局平均池化层来压缩特征,然后使用1x1卷积层和ReLU层来将压缩的特征转换为1/4大小(通道方向)的特征,并调整它的大小,并将其与其他三个分支的特征连接起来。

这三个分支中的卷积层采用以下配置:kernel size = [1,3,3],atrous rate = [1,3,6],padding =[0,3,6]。请注意,与原始的ASPP不同,我们没有在连接的特征后面加卷积层,而且这四个分支中的每个分支都产生一个只有输入特征1/4通道的特征,并将它们连接起来,生成一个与输入特征大小相同的特征。

 

3.4 Fusion模块更新输出

我们的RFP额外使用了一个融合模块,这个融合模块从t=2时开始发挥作用,以公式(3)中的作为输入,通过一个后跟sigmoid的卷积层来计算注意力图,这个注意力图是用来计算两个输入的权重和进而得到更新的输出fi。更新的fi又会用于下一步的计算。

 

 

4 SAC-可切换的空洞卷积

 

4.1 空洞卷积

Atrous convolution(空洞卷积)是一种在任何卷积层上放大滤波器感受野的有效技术。空洞卷积在连续的滤波器值之间引入了r−1个零,相当于在不增加参数数量和计算量的情况下,将k×k滤波器的核尺寸扩大到ke = k + (k−1)(r−1)。下图为空洞率r设置为1(红色)和2(绿色)的3x3卷积层示例:使用不同的Atrous ration,相同的卷积权值集合可以粗略地检测到不同尺度的同一类对象。

 

4.2 SAC可切换空洞卷积

图4展示了SAC的总体架构,它有三个主要组件:在SAC组件之前和之后附加的两个全局上下文模块。

以y = Conv(x, w, r)表示卷积操作,其中w表示权值,r表示空洞率;则可以通过下式把卷积层转化为SAC层:

S(·)表示切换开关,实现为一个平均池化层,其内核为5x5,卷积层为1x1(图4)。开关函数与输入和位置有关,因此,主干模型能够根据需要进行开关以适应不同的尺度。

 

4.3 Global Context全局上下文

如图4所示,我们在SAC主组件之前和之后插入两个全局上下文模块。这两个模块是轻量级的,作为输入特性首先由全局平均池化层压缩。全局上下文模块与SENet相似,但有两个主要区别:

(1)我们只有一个卷积层,没有任何非线性层;

(2)输出被添加回主通道,而不是将输入乘以由Sigmoid计算的重新校准值。

通过实验,发现在SAC组件之前添加全局上下文信息对检测性能有积极的影响。这是因为当有全局信息可用时,S可以做出更稳定的切换预测。然后,将全局信息移到switch函数之外,并将其放在主主体之前和之后,以便Conv和S都能从中受益。我们没有采用原始的SENet方法,因为对最终模型AP没有提升。

 

5 实验结果

 

5.1 RFP和SAC消融实验

HTC+RFP和HTC+SAC都对精度额有明显提升,后者提升精度更大,如果同时加上RFP和SAC,则达到了精度的最高值。

可切换空洞卷积的可视化输出:

5.2 不同算法比较

目标检测:

DetectorRS在COCO数据集上单尺度和多尺度都达到了目前最高精度:mAP53.3和54.7mAP!速度3.9FPS(TITAN RTX).

 

实例分割:

 

全景分割:

 

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值