【目标检测】——Gold-YOLO为啥能超过YOLOV8
作者:小教学发布时间:2023-10-02分类:程序开发学习浏览:75
华为
https://arxiv.org/pdf/2309.11331.pdf
文章的出发点:FPN中的信息传输问题
1. 简介
基于全局信息融合的概念,提出了一种新的收集和分发机制(GD),用于在YOLO中进行有效的信息交换。通过全局融合多层特征并将全局信息注入到更高的层次,显著增强了NECK的信息融合能力,提高了模型在不同对象大小上的性能。具体来说,GD机制包括两个分支:一个浅层收集和分发分支和一个深层收集和分发分支,它们通过卷积基础块和注意力基础块提取和融合特征信息。为了进一步促进信息流动,我们引入了一个轻量级的相邻层融合模块,它在局部范围内结合了来自相邻层的特征。我们的Gold-YOLO架构超越了现有的YOLO系列,有效地展示了我们提出的方法的有效性。
为了进一步提高模型的准确性,我们还引入了一种预训练方法,我们使用MAE方法在ImageNet 1K上预训练模型的主干网络,这显著提高了模型的收敛速度和准确性。例如,我们的Gold-YOLO-S经过预训练后,实现了46.4%的AP,超过了之前的SOTA YOLOv6-3.0-S的45.0%的AP,同时速度相似。
2. method
现有Neck的问题
传统上,不同层次的特征携带了关于各种大小对象的位置信息。较大的特征包含了较小对象的低维纹理细节和位置。相反,较小的特征包含了较大对象的高维信息和位置。特征金字塔网络(FPN)的原始思想是,这些不同的信息可以通过相互协助来提高网络性能。FPN提供了一种有效的架构设计,通过跨尺度连接和信息交换来融合多尺度特征,从而提高了对各种大小对象的检测精度。
基于FPN,路径聚合网络(PANet)引入了一个自下而上的路径,使得不同层次之间的信息融合更为充分。类似地,EfficientDet提出了一种新的可重复模块(BiFPN),以提高不同层次之间信息融合的效率。M2Det引入了一个具有U形和特征融合模块的高效MLFPN架构。Ping-Yang Chen通过双向融合模块改进了深层和浅层之间的交互。与这些层间工作不同,[35]使用集中特征金字塔(CFP)方法探索了单个特征信息。此外,[51]扩展了FPN,使用渐近特征金字塔网络(AFPN)进行非相邻层之间的交互。
YOLO系列的颈部结构,如图3所示,采用了传统的FPN结构,该结构包含多个分支用于多尺度特征融合。然而,它只能完全融合来自相邻层次的特征,对于其他层次的信息,只能通过“递归”方式间接获取。在图3中,展示了传统FPN的信息融合结构:其中现有的level-1、2和3从上到下排列。FPN用于不同层次之间的融合。当level-1从其他两个层次获取信息时,有两种不同的情况:
1. 如果第一层(level-1)想要使用来自第二层(level-2)的信息,它可以直接获取并融合这些信息。
2. 如果第一层想要使用来自第三层(level-3)的信息,它需要递归地调用相邻层的信息融合模块。具体来说,必须先融合第二层和第三层的信息,然后第一层可以通过结合第二层的信息间接获取第三层的信息。
这种方法是为了解决在传统的特征金字塔网络(FPN)结构中存在的信息传输问题。在FPN中,当需要跨层级融合信息时(例如,将level-1和level-3进行融合),传统的FPN结构无法无损地传输信息,这阻碍了YOLOs更好地进行信息融合。因此,作者提出了一种新的收集和分发机制(GD),通过全局融合多尺度特征并将全局信息注入到更高的层次,显著增强了脖子的信息融合能力,提高了模型在不同对象大小上的性能
收集和分发过程对应于三个模块:特征对齐模块(FAM),信息融合模块(IFM)和信息注入模块(Inject)。
收集过程涉及两个步骤。首先,FAM从各个层次收集并对齐特征。其次,IFM融合对齐的特征以生成全局信息。
在从收集过程中获取融合的全局信息后,注入模块将此信息分发到每个层次并使用简单的注意力操作注入,从而增强分支的检测能力。 为了增强模型检测不同大小对象的能力,我们开发了两个分支:低阶收集和分发分支(Low-GD)和高阶收集和分发分支(High-GD)。这些分支分别提取和融合大尺寸和小尺寸的特征图。
网络结构
2.1 low-stage gather-and-distribute branch
分为:对齐,融合,注入三步
- 用PSP对齐不同尺度的特征
- 再用conv,RepConv进行特征融合
- 最后用split分类两个特征用于同B3,B4融合
- 注入:采用注意力机制。具体的实现:
2.2 High-stage gather-and-distribute branch
- 特征融合用transformer来做了。
2.3 增强的特征插入模块
不用原始的特征,而是用多尺度融合后的特征。
2.4 MIM预训练
采用Spark的预训练方式。在ImageNet 1K上预训练了我们模型的主干网络,用于多个Gold-YOLO模型,并取得了显著的改进。
3 实验
3.1 Low-GD, High-GD模块作用
1:说明了Low-GD,低层特征对小目标的作用
2:说明High-GD, 高层特征对大目标的作用
3.2 预训练MIM的作用
采用预训练之后能带来1个点左右的提升
- 程序开发学习排行
-
- 1鸿蒙HarmonyOS:Web组件网页白屏检测
- 2HTTPS协议是安全传输,为啥还要再加密?
- 3HarmonyOS鸿蒙应用开发——数据持久化Preferences
- 4记解决MaterialButton背景颜色与设置值不同
- 5鸿蒙HarmonyOS实战-ArkUI组件(RelativeContainer)
- 6鸿蒙HarmonyOS实战-ArkUI组件(Stack)
- 7鸿蒙HarmonyOS实战-ArkUI组件(GridRow/GridCol)
- 8[Android][NDK][Cmake]一文搞懂Android项目中的Cmake
- 9鸿蒙HarmonyOS实战-ArkUI组件(mediaquery)
- 最近发表
-
- WooCommerce最好的WordPress常用插件下载博客插件模块的相关产品
- 羊驼机器人最好的WordPress常用插件下载博客插件模块
- IP信息记录器最好的WordPress常用插件下载博客插件模块
- Linkly for WooCommerce最好的WordPress常用插件下载博客插件模块
- 元素聚合器Forms最好的WordPress常用插件下载博客插件模块
- Promaker Chat 最好的WordPress通用插件下载 博客插件模块
- 自动更新发布日期最好的WordPress常用插件下载博客插件模块
- WordPress官方最好的获取回复WordPress常用插件下载博客插件模块
- Img to rss最好的wordpress常用插件下载博客插件模块
- WPMozo为Elementor最好的WordPress常用插件下载博客插件模块添加精简版