高效涨点神器 | 台湾国立中央大学最新提出即插即用 SFPN: 显著提升卷积神经网络精度

论文:《SFPN: SYNTHETIC FPN FOR OBJECT DETECTION》
链接:https://arxiv.org/pdf/2203.02445.pdf

导读

FPN(Feature Pyramid Network)已经成为大多数单阶段目标检测器的基本组件。以前的研究多次证明,FPN 可以更精确地捕获不同尺寸的对象的多尺度特征图,以更精确地描述它们。然而,对于大多数骨干网络(如VGGResNetDenseNet),由于受到池化操作或步长卷积影响,每个层的特征图都被缩小。

以常规的2倍下采样为例,这会导致 FPN 无法平滑地融合特征。为此,本文提出了一种新的 SFPN 架构,它在原始 FPN 的层之间创建了各种合成层,以增强轻量级 CNN 骨干提取对象的视觉特征的准确性。最后,实验证明 SFPN 架构在 AP 分数上优于骨干VGG16、ResNet50或经典的轻量级骨干(如MobilenetV2)。

动机

众所周知,特征金字塔中的特征图可以捕捉不同尺度目标的视觉特征。例如,浅层保留细节,如纹理、角点等;深层覆盖更广泛的语义特征。在实际场景中,不同尺寸的对象经常一起出现,如何同时检测它们成为一个关键问题。后来通过 FPN 的引入大家也默认将这一结构作为默认的配置

然而,作者认为,在原先的 FPN 中,特征图在x和y方向都被缩放为1/2、1/4、1/8等。相邻FPN层之间的尺度差距很大,导致相似尺寸的两个对象被预测到不同的层上。例如,在FPN中,尺寸为32×32和31×31的两个对象位于不同的预测图中。这种尺度截断问题可以通过向FPN添加合成层来改善。

于是,本文提出了一种新的 SFPN(Synthetic Fusion Pyramid Network),将密度图缩放为1/2、1/3、1/4、1/6等,以减小尺度截断的影响。作者认为,中等尺度特征图的添加可以使不同尺度之间的过渡更加平滑,从而提高轻量级架构上的目标检测性能。

具体地,文中首先建立了一个仅具有三个输出层的基线,并逐渐合成插入中等尺度的层。这样生成了SFPN。然后,SFPN分别集成到诸如VGG-16和MobileNetV2等经典网络中,并在MS-COCO数据集上进行评估。结果显示,无论是大型还是轻量级骨干都可以受益于合成层。同样的方案再次应用于将最终输出层分为更多层,并仍然优于基线。此外,作者通过可视化SFPN的置信度图来展示合成层如何帮助模型更好地适应对象。合成层可以使原始层保留更多的信息,用于对象表示。研究结果证实了合成层的性能提升,并希望能够推导出更多这种有前途的方法的变种。

方法

下面我们详细描述下 SFPN 的构建过程,旨在改进目标检测性能,特别是解决特征金字塔中的尺度问题。以下是原理图:

合成融合模块(SFM)

首先,作者提出了一个合成融合模块(SFM),用于生成在原始层之间的各种合成层,以便将预测地图缩放为1/2、1/3、1/4、1/6等。SFM 包括三个可选输入步骤,首先是线性缩放输入,然后按像素逐个相加,最后通过 3x3 卷积进行融合。这个模块可以从原始层合成合成层,也可以用于特征融合。SFM 的架构如图3所示。

合成融合块(SFB)

SFB 由多个 SFM 构建。它将层分成两批。首先,特征从第一批层传递到第二批层,然后从第二批层传递到第一批层。这个想法可以看作是将特征集中合并,然后将特征辐射出去。SFB在同一块中整合了自顶向下和自底向上的方向。多个SFB的堆叠可以进行多次特征融合以获得更好的性能。实验中的所有模型都堆叠了三个SFB。

合成融合金字塔网络(SFPN)

SFPN是一种基于FPN的网络,它堆叠了三次SFB。作者将堆叠了三次SFB的FPN称为合成融合金字塔网络(SFPN),并将包含X个输出层的SFPN称为SFPN-X。

建立基线(SFPN-3)

为了验证合成层是一种有效的策略,作者使用SFB构建了一个仅包含原始层的SFPN,称为SFPN-3。SFPN-3保持了与FPN相同的原始尺寸。它采用了两方向的特征融合,与包含合成层的其他SFPN完全相同。在实验中,SFPN-3被用作基线。

SFPN-5和SFPN-9

SFM可以生成合成层,因此在SFPN前面添加几个SFM可以生成几个合成层,然后将其输入以下三个SFB。扩展到五层的网络称为SFPN-5,扩展到九层的网络称为SFPN-9。这两个网络分别添加了三个和六个合成层,用于验证合成层的有效性。

具有合成输出层的SFPN

作者通过添加SFPN-5和SFPN-9的合成输出层,进一步探索了这一组件的能力。这些网络分别称为SFPN5-SOL和SFPN-9-SOL。

Naive Anchors for SOL

最后,作者将 SFPN 连接到 YOLO 头部,采用朴素的锚点生成方法,用于解决锚点生成和分配对目标检测性能的影响。通常,YOLO使用k均值在训练集中找到k个锚点作为先验框。作者采用了一种简单的锚点生成方法,使用比例为1x、2x和4x的优先框作为每个输出特征图的锚点。这个方法可以使三层、五层和九层的输出获得尺度匹配和一致的锚点,从而证明性能提升是由合成输出层获得的。

实验

可视化分析

为了展示这些合成层的效果,作者可视化了SFPN-5输出的置信度图,并将其绘制在原始图像上。

从图中结果展示我们可以看到合成层的尺度优势,包括合成层的尺度位于原始层的上下之间,使原始层能够更顺畅地传递特征,减少特征的损失。此外,某些目标的尺寸更适合合成层的特征描述,因此模型可以获得更适合的对象表示能力。这意味着合成层有助于模型更好地捕捉和描述不同尺寸的对象,从而提高了目标检测的性能。

此外,通过合成层,原始层能够减少特征损失,这对于目标检测非常重要。特征损失可能导致模型无法准确捕捉对象的特征,特别是对于不同尺寸的对象。合成层的加入有助于解决这一问题,使模型能够更好地适应不同尺寸的对象,并生成更适当的边界框。

性能对比

实验结果表明 SFPN 的合成层对于目标检测的性能提升起到了关键作用,特别是在轻量级模型上。这些合成层能够更好地捕捉不同尺寸对象的特征,减少特征损失,提高模型的鲁棒性。

总结

本文介绍了一种名为 SFPN(Synthetic Fusion Pyramid Network)的新型神经网络架构,旨在改进目标检测性能,尤其是在处理不同尺寸对象时。SFPN通过引入合成层来创建更加连续的特征金字塔,从而减少特征损失,提高目标检测的鲁棒性。实验结果显示,SFPN在不同类型的骨干网络上都能显著提高性能,特别是在轻量级模型上。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CVHub

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值