当前位置:首页|资讯

什么是YOLOv9?深入探索下一代目标探测器的内部特征

作者:3D视觉工坊发布时间:2024-09-14

来源:计算机视觉工坊

添加小助理:CV3d008,备注:方向+学校/公司+昵称,拉你入群。文末附3D视觉行业细分群。

扫描下方二维码,加入「3D视觉从入门到精通」知识星球,星球内凝聚了众多3D视觉实战问题,以及各个模块的学习资料:近20门秘制视频课程、最新顶会论文、计算机视觉书籍、优质3D视觉算法源码等。想要入门3D视觉、做项目、搞科研,欢迎扫码加入!

0. 这篇文章干了啥?

目标检测是计算机视觉中的一项基础任务,影响着自动驾驶、机器人学和监控系统等多个领域。对快速、高效且准确检测模型的需求推动了神经网络架构和训练方法的持续进步。自Redmon等人于2015年首次提出以来,YOLO(You Only Look Once)系列通过将目标检测重塑为单阶段问题,重新定义了目标检测,提供了非凡的速度和效率。

YOLOv9是这一进化过程中的最新突破,由Chien-Yao Wang、I-Hau Yeh和Hong-Yuan Mark Liao于2024年初推出。在继承YOLOv8优势的基础上,YOLOv9解决了深度神经网络中的挑战,如梯度消失和信息瓶颈问题,同时保持了轻量级模型与高准确率之间的平衡。这些增强使得YOLOv9成为实时目标检测技术中的关键升级。与前身YOLOv8相比,YOLOv9在参数上减少了49%,在计算上减少了43%,同时准确率提高了0.6%。本研究探讨了YOLOv9的四个版本(v9-S、v9-M、v9-C、v9-E),为不同的硬件平台和应用场景提供了灵活的选择。通过无缝集成到PyTorch和TensorRT等框架中,YOLOv9为实时目标检测树立了新的基准,展示了在不同用例中提高的准确率、效率和部署便捷性。

本研究的主要目标是全面评估YOLOv8目标检测模型与其他最先进检测算法的性能。本研究将评估YOLOv8不同版本(tiny、small、medium、large)在准确率和推理速度之间的权衡,以确定最适合各种应用场景的模型大小。

重点关注领域包括:

可编程梯度信息(PGI)对梯度流动和模型稳定性的影响。

广义高效层聚合网络(GELAN)在增强特征提取和融合方面的作用。

YOLOv9各变体(v9-S、v9-M、v9-C、v9-E)在准确率和模型大小之间的权衡。

YOLOv9在MS COCO数据集上的性能,与YOLOv8和其他基准的比较。

与PyTorch和TensorRT无缝集成的开发者友好型改进。

1. 论文信息

标题:What is YOLOv9: An In-Depth Exploration of the Internal Features of the Next-Generation Object Detector

作者:Muhammad Yaseen

机构:National University of Computer and Emerging Sciences

原文链接:https://arxiv.org/abs/2409.07813

2. 摘要

这项研究提供了对YOLOv9对象检测模型的全面分析,重点关注其架构创新、训练方法以及相对于其前辈的性能改进。诸如通用高效层聚合网络GELAN和可编程梯度信息PGI等关键进步显著增强了特征提取和梯度流,从而提高了准确性和效率。通过合并深度方向卷积和轻量级C3Ghost架构,YOLOv9在保持高精度的同时降低了计算复杂度。在Microsoft COCO上的基准测试表明,它具有优异的平均精度图和更快的推理时间,在多个指标上优于YOLOv8。从边缘设备到高性能GPU的各种硬件平台的无缝部署凸显了该模型的多功能性,并内置了对PyTorch和TensorRT集成的支持。本文首次深入探讨了YOLOv9s的内部特性及其在现实世界中的适用性,将其确立为从物联网设备到大规模工业应用的各行业实时对象检测的一流解决方案。

3. YOLOv9的演进

YOLOv9于2024年2月发布,是YOLOv8成功之后的重大进展。关键创新包括可编程梯度信息(PGI)和广义高效层聚合网络(GELAN),这两者都显著改进了特征提取、梯度流动和网络效率。

2024年2月:YOLOv9首次发布,引入PGI以解决深度神经网络中的梯度消失问题。

2024年3月:集成GELAN,增强多尺度特征聚合并减少计算开销。

2024年4月:YOLOv9针对边缘设备的轻量级部署进行了优化,在IoT和移动应用中实现了高性能与资源效率的平衡。

4. YOLOv9的架构足迹

YOLOv9在其前代产品的基础上,集成了解决信息瓶颈的突破性方法,同时在目标检测的准确率和效率方面推向了新的极限。与专注于使用CSPNet和增强PANet进行速度和准确率优化的YOLOv8不同,YOLOv9引入了两个新的架构元素:可编程梯度信息(PGI)和广义高效层聚合网络(GELAN)。这些进步针对数据通过网络层传递时的信息丢失问题,提高了梯度稳定性和预测准确率。

关键架构组件

骨干网络:YOLOv9保留了与YOLOv8类似的基于CNN的骨干网络,用于多尺度特征提取,但通过集成GELAN进行了改进。GELAN在Efficient Layer Aggregation Network(ELAN)的基础上进行了扩展,融入了如CSPblocks、Resblocks和Darkblocks等多种计算块,而不增加计算复杂度。这种方法确保了高效的特征提取,同时保留了网络各层中的关键层次特征,从而在准确率和计算之间保持平衡。

颈部:YOLOv9的颈部部分继承了YOLOv8中PANet的进展,但通过使用PGI显著增强了特征融合过程。通过结合PGI中的多级辅助信息,YOLOv9改进了来自不同层的特征融合,有效解决了数据在网络中移动时发生的信息丢失问题。这有助于稳定梯度计算,使YOLOv9特别擅长检测不同大小的对象。

头部:YOLOv9继续采用YOLOv8中引入的无锚点边界框预测方法,但受益于PGI提供的可逆函数。可逆架构确保了在前向和反向传递过程中不会丢失关键数据,从而以更低的计算开销获得更可靠的预测。这种设计提高了推理速度和准确率,使其更适合实时应用。

训练方法和创新

高级数据增强:与YOLOv8类似,YOLOv9采用了如马赛克和混合增强等技术来提高模型的泛化能力。然而,随着PGI的引入,网络能够更好地利用增强数据,即使在浅层或轻量级模型中也能确保跨层的更可靠梯度流动。

损失函数:YOLOv9的损失函数集成了其前代产品的组件(分类的焦点损失和定位的IoU损失),但随着PGI的引入进行了改进。PGI中的辅助可逆分支保证了更精确的梯度更新,这对于优化对象性损失和确保网络正确识别图像中的对象区域尤为重要。

混合精度训练:与YOLOv8一样,混合精度训练被用于加速在兼容GPU上的训练过程。然而,在YOLOv9中引入的GELAN框架进一步提升了这种效率。GELAN优化了计算块的使用,减少了内存消耗,同时在推理过程中确保了高精度,特别是在轻量级模型中。

YOLOv9中的革命性技术

可编程梯度信息(PGI)

YOLOv9引入了PGI,这是一种新颖的方法,它通过引入一个辅助的可逆分支来生成可靠的梯度,同时不会增加推理成本。这种架构确保了信息瓶颈问题得到解决,特别是通过结合多级辅助信息来避免深度网络中常见的信息丢失。结果是,轻量级和深度模型的训练都得到了显著提升。

广义高效层聚合网络(GELAN)

YOLOv9中的GELAN在先前版本中使用的ELAN基础上进行了扩展,但其能力得到了增强,以包含各种计算块,而不仅仅是卷积。通过结合CSPNet和ELAN的最佳特性,GELAN确保了高速推理而不会牺牲准确性。其灵活的设计使网络能够适应各种任务和计算设备,非常适合实时目标检测。

YOLOv9中PGI和GELAN的集成标志着与早期版本的显著不同,其重点在于消除信息瓶颈并提高梯度可靠性。这些创新不仅在网络各层之间保留了关键数据,还使得能够创建与更大模型性能相当或更优的轻量级模型。这种对架构和计算效率的全面关注巩固了YOLOv9作为实时目标检测领域下一步重大进展的地位,在各种模型大小和部署环境中均表现出卓越的性能。这些增强使得YOLOv9在参数上比YOLOv8减少了49%,计算成本降低了43%,同时在MS COCO数据集上的准确度提高了0.6%。

5. 模型性能

6. 讨论

YOLOv9中的改进,特别是引入的广义高效层聚合网络(GELAN)和可编程梯度信息(PGI),在架构和性能上都与其前身有显著的不同。以下讨论将重点介绍这些创新的关键方面:

解决信息瓶颈问题

GELAN在解决深度神经网络中最持久的挑战之一——信息瓶颈问题上发挥了关键作用。通过结合CSP块、Res块和Dark块等多种计算块,GELAN能够在不增加计算复杂性的情况下,确保跨不同网络层的特征提取和聚合效果更佳。这种设计特别有助于在实时目标检测任务中保持精度与计算效率的平衡。

使用PGI改进梯度流

YOLOv9通过引入PGI解决了梯度消失问题,PGI提供了辅助可逆分支和多级辅助信息。这种方法增强了梯度流,特别是在深层网络中,确保了更可靠的参数更新。正如在各种消融研究中所示,PGI显著改进了训练和推理阶段,尤其是在轻量级模型中。PGI的好处体现在模型能够在减少参数和浮点运算(FLOPs)数量的同时,保持高精度。

效率提升

与YOLOv8相比,YOLOv9在参数(减少49%)和计算量(减少43%)方面都实现了显著减少,同时在MS COCO数据集上的平均精度均值(mAP)提高了0.6%。这些改进不仅仅是渐进式的,而是标志着目标检测技术的一个突破,提供了一个结合速度和精度的最先进解决方案。计算开销的减少使YOLOv9特别适合在边缘设备和物联网(IoT)应用上部署,从而扩展了其在高性能GPU之外的适用性。

与YOLOv8的比较

YOLOv9在多个关键指标上超越了其前身,包括mAP和推理时间。较小的模型,如YOLOv9t和YOLOv9s,针对轻量级部署进行了优化,而较大的变体,如YOLOv9c和YOLOv9e,则提供了适合复杂任务(如医学成像和监控)的高精度。跨模型大小的灵活性确保了YOLOv9能够满足从低功耗设备到高端计算环境的广泛应用需求。

实际应用性

YOLOv9的实时目标检测能力,特别是其与PyTorch和TensorRT的集成,简化了部署和模型训练的过程。这种对开发者友好的方法确保了模型可以轻松地应用于不同行业,从自动驾驶汽车到工业自动化等。模型在MS COCO等行业标准数据集上的卓越表现进一步证明了其鲁棒性和在各种目标检测场景中的适用性。

7. 总结

综上所述,YOLOv9在实时目标检测领域取得了重大进展。通过引入GELAN和PGI,YOLOv9解决了信息丢失和梯度不稳定等关键问题,从而开发出了既准确又计算高效的模型。在MS COCO数据集上的表现证明,与YOLOv8和其他领先模型相比,YOLOv9在mAP、推理时间和计算成本方面都有显著改进。

对更多实验结果和文章细节感兴趣的读者,可以阅读一下论文原文~

本文仅做学术分享,如有侵权,请联系删文。

3D视觉交流群,成立啦!

目前我们已经建立了3D视觉方向多个社群,包括2D计算机视觉、最前沿、工业3D视觉、SLAM、自动驾驶、三维重建、无人机等方向,细分群包括:

工业3D视觉:相机标定、立体匹配、三维点云、结构光、机械臂抓取、缺陷检测、6D位姿估计、相位偏折术、Halcon、摄影测量、阵列相机、光度立体视觉等。

SLAM:视觉SLAM、激光SLAM、语义SLAM、滤波算法、多传感器融合、多传感器标定、动态SLAM、MOT SLAM、NeRF SLAM、机器人导航等。

自动驾驶:深度估计、Transformer、毫米波|激光雷达|视觉摄像头传感器、多传感器标定、多传感器融合、自动驾驶综合群等、3D目标检测、路径规划、轨迹预测、3D点云分割、模型部署、车道线检测、Occupancy、目标跟踪等。

三维重建:3DGS、NeRF、多视图几何、OpenMVS、MVSNet、colmap、纹理贴图等

无人机:四旋翼建模、无人机飞控等

2D计算机视觉:图像分类/分割、目标/检测、医学影像、GAN、OCR、2D缺陷检测、遥感测绘、超分辨率、人脸检测、行为识别、模型量化剪枝、迁移学习、人体姿态估计等

最前沿:具身智能、大模型、Mamba、扩散模型等

除了这些,还有求职硬件选型视觉产品落地、产品、行业新闻等交流群

添加小助理: dddvision,备注:研究方向+学校/公司+昵称(如3D点云+清华+小草莓), 拉你入群。

▲长按扫码添加助理:CV3d008

3D视觉知识星球

具身智能、3DGS、NeRF结构光、相位偏折术、机械臂抓取、点云实战、Open3D、缺陷检测、BEV感知、Occupancy、Transformer、模型部署、3D目标检测、深度估计、多传感器标定、规划与控制、无人机仿真C++、三维视觉python、dToF、相机标定、ROS2机器人控制规划、LeGo-LAOM、多模态融合SLAM、LOAM-SLAM、室内室外SLAM、VINS-Fusion、ORB-SLAM3、MVSNet三维重建、colmap、线面结构光、硬件结构光扫描仪等。

▲长按扫码学习3D视觉精品课程

3D视觉模组选型:www.3dcver.com

—  —




Copyright © 2024 aigcdaily.cn  北京智识时代科技有限公司  版权所有  京ICP备2023006237号-1