【YOLO12全网首发】训练+测试行人摔倒
YOLO12在2025年2月新鲜出炉啦~~~~
官方开源地址:github链接
论文下载地址:paper
目录
🔔🔔摘要
🍎🍎0.YOLOv12的主要创新点
🍀架构创新
🍀优化机制
🍀性能优势
⛵⛵运行环境搭建
🍉🍉1.数据集介绍
🍇🍇2.实现效果
🍓🍓3.YOLOv12算法步骤
🍋3.1数据准备
🍋3.2模型选择
🍋3.3加载预训练模型
🍋3.4数据组织
🍭🍭4.目标检测训练代码
🌷4.1训练结果展示
🐸🐸5.目标检测推理代码
整理不易,欢迎一键三连!!!
送你们一条美丽的--分割线--
🔔🔔摘要
长期以来,改进YOLO框架的网络架构一直至关重要,但以往的研究主要集中在基于卷积神经网络(CNN)的改进上,尽管注意力机制在建模能力方面已被证明具有优越性。这是因为基于注意力的模型在速度上无法与基于CNN的模型相匹配。本文提出了一个以注意力为核心的YOLO框架,即YOLOv12,它在保持与之前基于CNN的模型相同速度的同时,利用了注意力机制的性能优势。
YOLOv12在准确性方面超越了所有流行的实时目标检测器,同时保持了竞争力的速度。例如,YOLOv12-N在T4 GPU上的推理延迟为1.64毫秒,达到了40.6%的mAP,超过了先进的YOLOv10-N和YOLOv11-N,分别提高了2.1%和1.2%的mAP,且速度相当。这种优势还扩展到了其他模型规模。YOLOv12还超越了改进DETR的端到端实时检测器,如RT-DETR和RT-DETRv2:YOLOv12-S在运行速度比RT-DETR-R18和RT-DETRv2-R18快42%的情况下,仅使用了它们36%的计算量和45%的参数,就击败了它们。
🍎🍎0.YOLOv12的主要创新点
🍀架构创新
-
引入注意力机制:YOLOv12采用注意力机制为核心,而YOLOv11则延续了YOLOR的CSPPAN结构和BOF技术。YOLOv12通过精心设计的区域注意力模块和后期优化,如移除位置编码、调整MLP比例、减少层深度等,解决了注意力机制计算速度慢且性能相差较大的问题,实现了在保证实时性的同时大幅提升性能。
-
R-ELAN结构:YOLOv12设计了R-ELAN结构,包括两个改进点:引入块级残差设计和重新设计的特征聚合方法。这种结构有利于更好地保留和整合特征信息,从而提高模型的性能。例如,在YOLOv12-X模型中,R-ELAN结构使得模型能够更准确地识别目标,特别是在复杂背景下的小目标检测,相比YOLOv11的ELAN结构,检测精度得到了显著提升。
-
网络架构优化:YOLOv12的网络架构从YOLOv11的CSPPAN转向类似AELAN+SE的结构。CSPPAN结构虽然具有良好的特征融合能力,但在处理大规模数据时可能会出现计算量较大、模型复杂度过高的问题。AELAN+SE结构通过更高效的特征聚合和通道注意力机制,不仅降低了计算量,还提高了特征表达能力,使模型在检测精度和速度之间达到了更好的平衡。
🍀优化机制
-
多尺度特征融合:YOLOv12优化了多尺度特征融合。YOLOv11在多尺度特征融合方面可能存在一些不足,如不同尺度特征之间的交互不够充分。而YOLOv12在这一方面进行了改进,通过更高效的融合机制,使得模型能够更好地利用不同尺度的特征信息,从而提高检测精度。例如,YOLOv12可能采用了更先进的跨尺度连接方式,使得低层的细节特征和高层的语义特征能够更好地融合,进而提升对不同大小目标的检测性能。
-
FlashAttention技术:YOLOv12引入了FlashAttention技术,这一技术显著优化了注意力计算过程。在YOLOv11中,注意力模块的计算可能会受到内存访问速度的限制,导致计算效率低下。FlashAttention技术通过优化内存访问模式和计算流程,极大地提高了注意力机制的计算效率,使得YOLOv12在保持注意力机制优势的同时,实现了更快的推理速度。
-
优化器微调及质量管理:YOLOv12在训练过程中对优化器进行了微调,并且注重质量管理。通过对学习率调度、权重衰减等参数的精细调整,以及对模型训练过程中的质量监控和管理,确保了模型能够更稳定、更高效地收敛,从而提高了最终模型的性能。例如,YOLOv12可能采用了更先进的学习率调整策略,如余弦退火学习率或动态学习率调整,使得模型能够在训练过程中更好地适应数据的变化,避免过拟合和欠拟合的问题。
-
取消TAL结构:与YOLOv11相比,YOLOv12取消了TAL结构。TAL结构可能在YOLOv11中对多尺度检测起到了一定的作用,但其存在的问题导致了性能瓶颈。YOLOv12通过其他机制替代TAL结构,例如采用更灵活的锚框分配策略或动态调整多尺度特征的权重,从而在不引入额外计算成本的情况下,改善了多尺度检测的性能。
🍀性能优势
-
更高的检测精度:YOLOv