目标检测之FPN的那些事(Feature Pyramid Networks)
1.前言
目前主流检测算结构主要分为backbone、neck、head三大部分,backbone用于初级特征提取,neck用于融合高级语义特征,head用于编解码,具体实现分类和回归任务。FPN属于neck部分,用于构建所有尺度的高级语义特征,融合多尺度特征、扩大感受野,特别是在一阶段检测上网络上取得巨大成功,但仍有改进空间。
2.FPN的缺陷
从2017年FPN(Feature Pyramid Networks for Object Detection)首次被提出,FPN得到广泛发展,主要由于传统FPN存在以下三个缺点:
融合前: 不同层之间存在语义鸿沟,直接融合会降低多尺度表示能力
融合中: 下采样过程会损失最高层金字塔特征信息
融合后 :各层ROI特征独立进行预测,其他层次的被忽略
3.FPN的改进方法
3.1 从注意力角度
DRFPN:用于目标检测的动态特征金字塔网络
设计了一种新的无参数特征金字塔网络——双重细化特征金字塔网络,它由两个模块组成:空间细化块(SRB)和信道细化块(CRB)。SRB基于相邻级别之间的上下文信息来学习采样点的位置和内容。CRB学习了一种基于注意机制的自适应信道合并方法。
PANet:用于图像恢复的金字塔注意网络
提出了一种新的金字塔注意力模块用于图像恢复,它从一个多尺度特征金字塔中捕获远程特征对应。注意力模块被设计成能够从它们在较粗糙水平上的“干净”对应关系中借用干净信号。
3.2 从感受野角度
DyFPN:用于目标检测的动态特征金字塔网络
为平衡性能和整体计算负担。首先引入一个原始FPN,其中每一层都包含具有不同核大小的卷积滤波器,以扩大感受野并整合更多有用的信,DyFPN的输出特征将通过Gate模块根据学习自适应选择的分支来计算,原理类似SENet。
3.3 从多尺度融合角度
PRB-FPN:用于精确目标检测的并行残差双融合特征金字塔网络
提出了一种新的并行FP结构,它具有双向(自顶向下和自底向上)融合和相关的改进,以保持高质量的特征,从而实现精确定位。特别适合检测小物体。
AugFPN:改进多尺度特征学习的目标检测
AugFPN由三个部分组成:一致监管、剩余特征增强和软RoI选择。AugFPN通过一致监督缩小特征融合前不同尺度特征之间的语义差距。在特征融合中,通过残差特征增强提取比率不变的上下文信息,以减少金字塔最高层特征图的信息损失。最后,采用软RoI选择,在特征融合后自适应地学习更好的RoI特征。(有点两阶段网络的意思)
P2Net:用于注意力引导的姿态估计的增强并行金字塔网络
提出了一种并行金字塔网络,由金字塔网络、并行网络和细化网络构成,从平行金字塔结构生成的不同尺度的特征图中提取加权特征,产生高分辨率表示,通道注意力更好地捕捉通道之间的关系。
R-DFPN:基于多尺度旋转密集特征金字塔网络的遥感船舶自动检测
DFPN通过密集连接FPN为所有尺度构建高级语义特征图,增强了特征传播并鼓励特征重用。设计了旋转锚策略来预测物体的最小外接矩形,减少冗余检测区域,提高召回率。为了保持语义和空间信息的完整性,提出了多尺度感兴趣区域对齐。
3.4 从上采样角度出发
CARAFE:内容感知重组
特性:(1)视野大。与以前只利用子像素邻域的工作(如双线性插值)不同,CARAFE可以在一个大的感受野内聚集上下文信息。(2)内容感知处理。CARAFE不是对所有样本使用固定的内核(例如反卷积),而是支持特定于实例的内容感知处理,这种处理可以动态生成自适应内核。(3)轻便,计算速度快。
3.5 从神经架构搜索角度
NAS-FPN:Learning scalable feature pyramid architecture for object detection
当前用于目标检测最先进的FPN都是是手动设计的,一旦设计就被固定,但不一定是最优架构。故该文通过神经搜索框架来动态寻找适合当前任务的最佳特征融合方式,其实也属于从特征融合角度的改进,但NAS实在是很有发展前景的方向,不得不单独提出来。
文末推荐
轻墨:一文看尽物体检测中的各种FPN 也是同类型比较好的文章,大家有兴趣也可以看看。
参考:
1.Feature Pyramid Networks for Object Detection
2.PANet:Path aggregation network for instance segmentation
3.CARAFE:Content-aware reassembly of features
4.NAS-FPN:Learning scalable feature pyramid architecture for object detection
5.Bi-FPN(Efficientdet:Scalable and efficient object detection)
6.Auto-FPN:Automatic network architecture adaptation for object detection beyond classification
7. AugFPN: Improving Multi-scale Feature Learning for Object Detection
8.CE-FPN: Enhancing Channel Information for Object Detection
9.Dual Refinement Feature Pyramid Networks for Object Detection
10.Dynamic Feature Pyramid Networks for Object Detection