论文地址:https://arxiv.org/abs/2103.10643

介绍和相关工作

目前的检测器中,FPN是一个关于多尺度的问题的良好解决方法。FPN中通过从高层像底层的语义信息传播来构建多尺度特征图,通过融合浅层表示和深层语义,基于FPN的检测方法提升明显。

但是FPN存在两个明显的问题:

  1. 特征融合时的信息衰减
  2. 跨尺度融合时的混叠效应

下图(a)为传统的FPN,采用1X1卷积来减少输出特征 C i C_i Ci的通道维度,间接损失了通道信息。例如从2048通道到256通道时,高层特征图的信息被大幅减少了。(b),(c)两种方法为了减少通道损失带来的影响做了改进,而非直接利用 C i C_i Ci,并且通过实验侧面证明了这种可以提高检测的结果。

底层和高层的信息对于检测是相互补充的,而自上而下的特征融合过程中这些信息也会被稀释。PAFPN提出了新颖的融合方法来充分利用每层特征。尽管如此,高层语义特征的表示能力也为充分利用于大的感受野。

并且不同层的语义信息可能存在区别,直接使用差值的方法进行跨尺度融合可能会造成混叠的问题。混杂的综合特征可能会混淆定位和识别任务。受Non-local注意力的启发,可以用注意力来设计优化融合后的混叠特征,增强辨别性。

本篇论文,作者就提出了新颖的成分来解决以上问题。

首先,受子像素卷积的启发,提出了一个子像素跳跃融合方法,充分利用原始跨尺度backbone输出的丰富通道信息(图1(d))。

其次提出了一个子像素级的上下文增强模型用于对更高级别的特征图进行提取和整合不同的上下文信息。子像素卷积是先为低分辨率图片增加通道维度后进行一个上采样的方法,对于FPN高层以及有足够的通道信息,可以直接进行子像素卷积。相较于直接使用1X1卷积上采样,能够减少通道的损失。

最后,提出了一个简单有效的通道增强模块,优化最终每层整合的特征,只有一点点的计算力,可以缓解混叠问题。

作者将整个模型成为CE-FPN,用于替代FPN,并且取得了很好的成绩。

方法

总体框架如下,CE-FPN获得四级特征,表示为 { C 2 , C 3 , C 4 , C 5 } \{C_2, C_3, C_4, C_5\} { C2,C3,C4,C5},分别相较于原图的 { 4 , 8 , 16 , 32 } \{4, 8, 16, 32\} { 4,8,16,32}缩放。 { F 2 , F 3 , F 4 } \{F_2, F_3, F_4\} { F2,F3,F4}为通过1X1卷积获得的256维通道的特征。特征金字塔 { P 2 , P 3 , P 4 } \{P_2, P_3, P_4\} { P2,P3,P4}通过FPN中的自上而下的方法获得,未加入FPN中语义特征最高级别的 F 5 F_5 F5 P 5 P_5 P5,因为重复的特征融合不仅会造成更严重的混叠效果,而且会造成不必要的计算负担。通过差值和最大池化获得整合图 I I I,检测在模型获得的最终结果 { R 2 , R 3 , R 4 , R 5 } \{R_2, R_3, R_4, R_5\} { R2,R3,R4,R5}执行,代替FPN的输出结果。

子像素跳跃融合

FPN中,使用残差网络作为backbone获得输出通道数 { 256 , 512 , 1024 , 2048 } \{256,512,1024,2048\} { 256,512,1024,2048}输出结果,高层特征 { C 4 , C 5 } \{C_4,C_5\} { C4,C5}包含丰富的语义信息。如下图(a),通过1X1卷积来减少 C i C_i Ci通道维度但是会造成通道信息丢失,最近的基于FPN的工作致力于充分利用 P I P_I PI,但是对于 C i C_i Ci没有充分利用。

基于此,通道信息更丰富的 { C 4 , C 5 } \{C_4,C_5\} { C4,C5}可以用来改善最终特征金字塔的结果。利用子像素卷积,通过对通道维度的像素进行移动,增强宽和高的维度信息。将原本大小为 H × W × C ⋅ r 2 H×W×C·r^2 H×W×Cr2的特征图变为 r H × r W × C rH×rW×C rH×rW×C:
r r r表示上采样因子, F F F为输入特征, P S ( F ) x , y , c \mathcal {PS}(F)_{x,y,c} PS(F)x,y,c表示坐标 ( x , y , c ) (x,y,c) (x,y,c)的输出特征。

如提上图(b)所示,低分辨率图像通道需要首先被增加后使用子像素卷积进行上采样,高分辨率图像不需要。 { C 4 , C 5 } ( 1024 , 2048 ) \{C_4,C_5\}(1024,2048) { C4,C5}1024,2048通道数足够进行子像素卷积。引入子像素跳跃融合(SSF)来进行不减少通道的情况下上采样低分辨率图像进行特征融合(上图©)。SSF将 { C 4 , C 5 } \{C_4,C_5\} { C4,C5}组合进 F i F_i Fi

φ φ φ表示1X1卷积减少通道维度, i i i代表特征金字塔索引级别。 φ ˉ \bar φ φˉ表示通道变换。子像素卷积的因子 r r r设为2,用于扩大两倍空间维度进行融合。 φ ˉ \bar φ φˉ使用1X1卷积或者分离操作改变通道维度,进行两倍子像素上采样。若通道维度符合要求, φ ˉ \bar φ φˉ执行映射。然后通过和FPN中相同的元素级求和和最近邻上采样,通过 F i F_i Fi获得 P i P_i Pi。SSF同时实现上采样和通道融合,利用高级别特征 { C 4 , C 5 } \{C_4,C_5\} { C4,C5}的通道信息来增强特征金字塔表示能力。

然后SSF可以认为是 C 5 C_5 C5 F 4 F_4 F4 C 4 C_4 C4 F 3 F_3 F3的两个额外连接,通过同时进行上采样和通道融合,利用 { C 4 , C 5 } \{C_4,C_5\} { C4,C5}增强特征金字塔表示能力。

子像素上下文增强

在FPN结构中,低级的特征最终会整合不同语义特征获得不同的上下文信息,而高级别特征不会,只包含单一尺度,为从低级语义特征中获利。并且高分辨率的输入图片需要神经元拥有大的感受野来捕捉大的目标的信息。为解决这两个问题,作者提出了一个子像素上下文增强(SCE)来在 C 5 C_5 C5上使用更大的感受野探索更多的语义信息。提取的上下文信息组合进 I I I,SCF是延续SSF的设计思想,来丰富 C 5 C_5 C5通道信息。

SCE的主要思想是利用大范围局部信息和全局上下文信息产生更具辨别性的特征。假设输入图 C 5 C_5 C5 2 w × 2 H × 8 C 2w\times 2H\times 8C 2w×2H×8C,输出整合后的特征 4 w × 4 h × C 4w\times 4h\times C 4w×4h×C C = 256 C=256 C=256,实现如下图:

最终获得的特征图通过像素级加法整合进特征图 I I I。通过三种缩放拓展特征表示,SCE有效的过大了 C 5 C_5 C5的感受野,微调了 I I I的表示能力。由此FPN中最高处信息被充分利用,节点 F 5 F_5 F5 P 5 P_5 P5就可以去除。

通道注意力指导模块

为了减轻混叠的负面影响,一个直观的解决方案是在特征金字塔上开发注意模块。然而,在金字塔的每一层执行独立的注意力模块是计算昂贵的,因为一些检测器采用6级金字塔甚至更多。并且期望不同层次的注意机制能够从其他层次的信息中学习,由此作者提出了通道注意力指导模块(CAG)指导金字塔去消除重叠影响。CAG只通过整合图 I I I提取通道权重,然后乘以不同的输出特征。

如上图所示,首先通过全局平均池化和最大池化分别聚合获得两个不同空间上下文信息,然后分别送入FC层,通过像素级别的求和和一个sigmoid函数获得最终的通道注意力:

C A ( x ) CA(x) CA(x)代表通道注意力函数, σ σ σ代表sigmoid函数, i i i代表金字塔级别索引。(结合公式感觉pipline图画错了…)

实验