本文已参与「新人创作礼」活动,一起开启掘金创作之路。
参考
author
paper
code
data
Abstract
- 在目标检测方面,如何解决特征图分辨率和高分辨率输入的感受野之间的对立要求仍然是一个悬而未决的问题。为了解决这个问题,我们构建了一个新的体系结构,称为注意引导上下文特征金字塔网络(AC-FPN),该网络通过整合注意引导的多径特征,利用来自不同大感受域的鉴别信息。该模型包含两个模块。第一个是上下文提取模块(CEM),它探索来自多个感受野的大量上下文信息。由于冗余的上下文关系可能会误导定位和识别,我们还设计了第二个模块,名为注意引导模块(AM),它可以利用注意机制自适应地捕获对象的显著依赖性。AM由两个子模块组成,即上下文注意模块(CxAM)和内容注意模块(CnAM),它们分别侧重于捕捉区分性语义和定位精确位置。最重要的是,我们的AC-FPN可以很容易地插入现有的基于FPN的模型中。大量的目标检测和实例分割实验表明,使用本文提出的CEM和AM的现有模型明显优于没有它们的模型,并且我们的模型成功地获得了最先进的结果。
I. INTRODUCTION
- 如今,为了准确定位目标,代表性的目标检测器,例如更快的R-CNN(14)、RetinaNet(15)和DetNet(16),使用高分辨率图像(较短的边缘为800)作为输入,这些图像包含更详细的信息,提高了目标检测的性能(见表I中的AP)。然而,不幸的是,分辨率更高的图像需要神经元有更大的感受野才能获得有效的语义(图1(b))。否则,在高分辨率图像中捕获大型对象时,会降低性能。(见表一中的APL)。
- 直观地说,为了获得更大的感受野,我们可以通过增加卷积层和下采样层来设计更深的网络模型,其中下采样层包括池层和步幅大于1的卷积层。然而,仅仅增加卷积层的数量是相当低效的, 它会导致更多的参数,从而导致更高的计算和内存成本。更糟糕的是,由于过度拟合的问题,积极深入的网络很难优化。另一方面,下采样层数量的增加导致特征地图尺寸的减小,这在本地化方面带来了更具挑战性的问题。因此,如何在保持高分辨率特征图的同时建立一个能够获得大感受野的模型仍然是目标检测中的一个关键问题。
- 最近,FPN【18】利用深度卷积网络固有的多尺度特征表示。更具体地说,通过引入自顶向下的路径,FPN将低分辨率、大感受野特征与高分辨率、小感受野特征相结合,以检测不同尺度的对象,从而缓解上述特征图分辨率和感受野之间的矛盾要求。为了进一步提高特征图的分辨率,同时保持感受野,DetNet[16]采用了扩大的卷积,并增加了一个额外的阶段。到目前为止,基于FPN的方法(如FPN和DetNet)在目标检测方面已经达到了最先进的水平。然而,这些模型的感受野仍然比其输入大小小得多。
- 此外,由于网络结构的限制,基于FPN的方法不能很好地利用不同大小的感受野。具体地说,自下而上的路径只是堆叠层以扩大感受野,而不鼓励信息传播,而对应于不同感受野的特征映射只是通过自上而下路径中的元素添加进行合并。因此,不同感受野捕捉到的语义信息在相互交流中表现不佳,导致表现有限。
- 简言之,当前基于FPN的方法存在两个主要问题:1)特征图分辨率和感受野对高分辨率输入的矛盾要求,2)多尺寸感受野之间缺乏有效通信。为了有效地解决这两个问题,我们提出了一个称为上下文提取模块(CEM)的模块。在不显著增加计算开销的情况下,CEM可以通过使用具有不同扩张率的多径扩张卷积层从不同的大感受野捕获丰富的上下文信息(图1(c))。此外,为了更好地融合多个感受野信息,我们在CEM中引入了具有不同感受野的层之间的紧密连接。
- 尽管如此,尽管CEM中的特征包含丰富的上下文信息,并有助于检测不同尺度的对象,但我们发现它有些复杂,因此可能会混淆定位和识别任务。因此,如图1(d)所示,为了减少冗余上下文的误导,进一步增强特征的辨别能力,我们设计了另一个名为注意引导模块(AM)的模块,该模块引入了自我注意机制来捕获有效的上下文依赖。具体来说,它由两部分组成:1)上下文注意模块(CxAM),旨在捕捉特征地图任意两个位置之间的语义关系;2)内容注意模块(CnAM),侧重于发现空间依赖性。
- 在本文中,我们将由CEM和AM组成的整个模型命名为注意引导的上下文特征金字塔网络(AC-FPN)。我们提出的AC-FPN可以很容易地插入到现有的基于FPN的模型中,并且可以很容易地进行端到端的训练,而无需额外的监督。
- 我们将AC-FPN与COCO数据集上的几种最先进的基线方法进行了比较。大量实验表明,在没有任何花里胡哨的情况下,我们的模型达到了最佳性能。在我们的模块(CEM和AM)中嵌入基线,可以显著提高目标检测的性能。此外,我们还在更具挑战性的实例分割任务上验证了所提出的方法,实验结果表明,与CEM和AM相结合的模型在很大程度上优于对应的模型(即,没有CEM和AM)。源代码将公开。
- 主要工作如下:为了解决高分辨率图像中特征图分辨率和感受野之间的矛盾要求,我们设计了一个名为CEM的模块,以利用多个大背景中的特征除了产生更显著的上下文信息并进一步增强特征表示的辨别能力外,我们还引入了一个名为AM的注意引导模块我们的两个模块(CEM和AM,合称为AC-FPN)可以很容易地插入现有的基于FPN的模型,例如PANet[19],并显著提高对象检测和实例分割任务的性能。
II. RELATED WORK
A. Object Detection
- 深度学习中的目标检测框架主要分为两类:1)两级检测器和2)一级检测器。两级检测器生成数千个区域建议,然后将每个建议分类为不同的对象类别。例如,R-CNN[20]通过选择性搜索[21]生成2000份候选提案,同时在第一阶段过滤掉大多数负面立场,并在第二阶段将之前的提案分类为不同的对象类别。之后,Ross Girshick提出了快速R-CNN【22】,它共享卷积运算,从而支持分类器和回归器的端到端训练。此外,为了更快的R-CNN【14】,区域建议网络(RPN)将建议生成与分类器集成到单个卷积网络中。已经提出了该框架的许多扩展,如R-FCN【23】、FPN【18】、Mask R-CNN【24】、Cascade R CNN【25】、CBNet【26】和DetNet【16】。
- 另一种方法将目标检测视为回归或分类问题,采用统一的网络直接获得最终结果(位置和类别)。OverFeat(27)是第一个在深度网络上使用单阶段框架的模型之一。随后,Redmon等人提出YOLO【28】利用整个最顶部的特征图来预测分类可信度和边界框。此外,Liu等人设计了SSD[29],使用多个特征地图上的多尺度边界框来处理各种大小的对象。此外,在预测目标或网络架构中,还有大量其他单阶段模型增强了检测过程,如YOLOv2[30]、DSSD[31]和DSOD[32]。
B. Context Information
- 上下文信息可以促进localizing the region proposals表现更好,从而改善检测和分类的最终结果。根据这一点,Bell等人提出了利用感兴趣region内外信息的内外网(ION)[33]。Chen等人提出了一种上下文细化算法[34],该算法探索了丰富的上下文信息,以更好地细化每个区域的proposal。此外,Hu等人设计了一个关系模型[35],该模型关注每个对象之间的相互作用,可以将其视为一种上下文线索。与【35】中的普通建筑不同,【36】、【37】、【5】中的模型以顺序的方式考虑关系。此外,为了对障碍物进行推理,Chen等人提出了一个框架[38],通过知识图利用关系和上下文信息。
C. Attention Modules
- 注意力模块可以建模长期依赖关系,并成为许多具有挑战性任务的主力,包括图像分类[39]、[40]、语义和实例分割[41]、[42]、图像字幕[43]、[44]、[45]、自然语言处理[46]、[47]、[48]、[49]等,用于目标检测,Li等人提出了一个MAD单元[50],用于在低水平和高水平流的特征图中积极搜索神经元激活。同样,为了提高检测性能,Zhu等人设计了一个注意力耦合网,将注意力相关信息与对象的全局和局部属性结合起来。此外,Pirinen等人提出了一种drl RPN[52],它用通过深度强化学习(RL)优化的顺序注意机制取代了RPN[14]的典型RoI选择过程。
III. PROPOSED METHOD
- 最近,FPN【18】和DetNet【16】等分层检测方法取得了令人满意的性能。然而,对于较大的输入图像,这些模型必须堆叠更多的卷积层,以确保感受野的适当性。否则,他们将在特征图分辨率和感受野之间进退两难。此外,对于这些模型,由于不同大小的感受野之间缺乏有效的交流,生成特征的表示能力受到限制。
- 为了缓解这些局限性,我们提出了一种新的注意引导上下文特征金字塔网络(AC-FCN),该网络从不同大小的感受野捕获上下文信息,并产生具有更强辨别能力的客观特征。如图2所示,基于基本FPN架构【18】,我们提出的模型有两个新组件:1)上下文提取模块(CEM),它利用来自不同大小感受野的丰富上下文信息;2) 注意力引导模块(AM),增强显著的上下文依赖性。我们将在下面的小节中描述模型的每个部分。
A. Context Extraction Module
- 为了整合来自不同接收字段的上下文信息,我们构建了上下文提取模块(CEM),该模块只包含几个附加层。具体来说,如图2所示,对于自底向上的路径,我们根据[18]中的设置,将每个尺度中卷积层的输出表示为{F2,F3,F4,F5}。同样,自上而下的路径和横向连接都遵循原始文件[18]中的官方设置。
- 在从前面的层(即F5)获得特征图后,为了利用丰富的上下文信息,我们将其输入到CEM中,CEM由具有不同比例(rate)的多径扩展卷积层(multi-path dilated convolutional layers)组成,例如rate=3、6、12。这些分离的卷积层可以在不同的感受野中获得多个特征图。此外,为了增强几何变换的建模能力,我们在每条路径中引入了可变形卷积层[54]。它确保我们的CEM可以从给定的数据中学习变换不变的特征。
- 此外,为了精细地合并多尺度信息,我们在CEM中使用了密集连接,其中每个扩展层的输出与输入特征映射串联,然后输入到下一个扩展层。DenseNet【55】利用密集连接来解决梯度消失的问题,并在CNN模型越来越深时加强特征传播。相比之下,我们使用密集方式来实现具有不同感受野的特征的更好的尺度多样性。最后,为了保持初始输入的粗粒度信息,我们将扩展层的输出与上采样的输入连接起来,并将其送入1×1卷积层,以融合粗粒度和细粒度特征。
B. Attention-guided Module.
- 尽管CEM的特征包含丰富的感受野信息,但并非所有这些特征都有助于提高目标检测的性能。由于bounding boxes or region proposals被冗余信息误导,准确性可能会降低。因此,为了消除冗余的负面影响,进一步增强特征图的表示能力,我们提出了一种注意力引导模块(AM),该模块能够捕获语义强、位置精确的显著依赖关系。如图2所示,注意模块由两部分组成:1)上下文注意模块(CxAM)和2)内容注意模块(CnAM)。
- 更具体地说,CxAM侧重于给定特征映射(即来自CEM的特征)的子区域之间的语义。然而,由于可变形卷积的影响,每个对象的位置都被严重破坏。为了缓解这个问题,我们引入了CnAM,它更注重确保空间信息,但由于来自较浅层(即F5)的关注,牺牲了一些语义。最后,将CxAM和CnAM细化的特征与输入特征合并,以获得更全面的表示。
- Context Attention Modules:为了主动捕捉子区域之间的语义依赖,我们引入了基于自我注意机制的上下文注意模块(CxAM)。与[56]不同,我们将上述特征输入到CxAM模块中,这些特征由CEM产生,包含多尺度感受野信息。基于这些信息特征,CxAM自适应地更加关注更相关的子区域之间的关系。因此,CxAM的输出特性将具有清晰的语义,并包含周围对象中的上下文依赖关系。
- 可以看图3,给定区分特征映射,我们分别使用卷积层和将它们转换为一个潜在空间。转换后的特征图由以下公式计算: and ,
reshape成:, After normalizing via sigmoid activation function and average pooling, we build an attention matrix , 。
同时,我们变换特征图 同时,我们使用卷积层 将特征图转换为另一个表示:, where .
最后,对和特征执行元素乘法,以获得注意表征E。我们将函数表示为:。
where refers to the feature map along with the channel dimension .
- Content Attention Module:由于CEM中可变形卷积的影响,给定图像的几何特性被彻底破坏,导致位置偏移。为了解决这个问题,我们设计了一个新的注意模块,称为内容注意模块(CnAM),以保持每个对象的精确位置信息。
如图4所示,与CxAM类似,我们使用卷积层来变换给定的特征映射。然而,我们没有使用特征图F来生成注意矩阵,而是采用特征图,可以捕捉到每个物体更精确的位置。
To get the attention matrix, at first we apply two convolutional layers and , to convert into the latent space, respectively:
where . Then, we reshape the dimension of and to , and produce the correlation matrix similar to Eq. (2) as:
where . After reshaping to , we employ sigmoid function and average pooling to produce an attention matrix . To obtain a prominent representation, we combine the extracted features (see Section III-B1) with by element-wise multiplication:
where and indicates the output feature map.