本文来源公众号“集智书童”,仅用于学术分享,侵权删,干货满满。
原文链接:YOLOv10开源|清华用端到端YOLOv10在速度精度上都生吃YOLOv8和YOLOv9
在过去几年中,YOLO系列模型已成为实时目标检测领域的主导范式,这得益于它们在计算成本和检测性能之间的有效平衡。研究行人探索了YOLOs的架构设计、优化目标、数据增强策略等,取得了显著的进展。然而,对非最大值抑制(NMS)的后处理依赖阻碍了YOLOs的端到端部署,并不利影响推理延迟。此外,YOLOs中各种组件的设计缺乏全面彻底的检查,导致明显的计算冗余并限制了模型的能力。这导致了次优的效率,同时存在相当大的性能提升潜力。在这项工作中,作者从后处理和模型架构两方面进一步推进了YOLOs的性能效率边界。
为此,作者首先提出了无需NMS训练的YOLOs的一致性双重分配,这同时带来了有竞争力的性能和低推理延迟。此外,作者引入了针对YOLOs的整体效率精度驱动模型设计策略。作者从效率和精度角度全面优化了YOLOs的各种组件,大大减少了计算开销并增强了能力。作者努力的成果是新一代的实时端到端目标检测YOLO系列模型,命名为YOLOv10。广泛的实验表明,YOLOv10在各种模型规模上均实现了最先进的性能和效率。例如,YOLOv10-S在COCO上的类似AP下比RT-DETR-R18快1.8倍,同时享受2.8倍更少的参数和FLOPs。与YOLOv9-C相比,YOLOv10-B在相同性能下延迟减少了46%,参数减少了25%。
代码:https://github.com/THU-MIG/yolov10。
1. 引言
实时目标检测一直是计算机视觉研究领域的一个重点,旨在在低延迟下准确预测图像中物体的类别和位置。它被广泛应用于各种实际应用中,包括自动驾驶,机器人导航,物体跟踪等。近年来,研究行人一直致力于设计基于CNN的目标检测器以实现实时检测。其中,YOLOs因其性能和效率之间的巧妙平衡而越来越受欢迎。YOLOs的检测流程包括两部分:模型前向过程和NMS后处理。然而,这两者仍存在不足,导致次优的准确度-延迟边界。
具体来说,YOLO通常在训练过程中采用一对多的标签分配策略,其中一个 GT 物体对应于多个阳性样本。尽管这种方法取得了优越的性能,但它需要在推理过程中使用NMS来选择最佳的阳性预测。这降低了推理速度,并使性能对NMS的超参数敏感,从而阻碍了YOLO实现最优的端到端部署。解决这个问题的一条途径是采用最近引入的端到端DETR架构。例如,RT-DETR提出了一种有效的混合编码器和非确定性最小 Query 选择,将DETR推向了实时应用领域。然而,部署DETR的固有复杂性阻碍了它在准确性和速度之间达到最优平衡的能力。另一条途径是探索基于CNN的检测器的端到端检测,这通常利用一对一的分配策略来抑制冗余预测。然而,它们通常引入额外的推理开销或达到次优性能。
此外,模型架构设计对于YOLO来说仍然是一个基本挑战,它在准确性和速度上表现出重要影响。为了实现更高效和有效的模型架构,研究行人探索了不同的设计策略。为加强特征提取能力,提出了各种主要计算单元作为主干,包括DarkNet,CSPNet,EfficientRep和ELAN等。对于特征融合部分,研究了PAN,BiC,GD和RepGFPN等,以增强多尺度特征融合。此外,还研究了模型缩放策略和重参化技术。尽管这些努力取得了显著的进展,但从效率和准确性的角度来看,对YOLO中各个组件的全面检查仍然缺乏。因此,YOLO中仍然存在相当大的计算冗余,导致参数使用效率低下和次优效率。此外,由此产生的受限模型能力也导致了性能不佳,为准确性的提升留下了很大的空间。
在这项工作中,作者旨在解决这些问题,并进一步推进YOLO在准确性与速度边界上的发展。作者针对检测流程中的后处理和模型架构。为此,作者首先通过提出一种一致的二元分配策略来解决后处理中的冗余预测问题,该策略用于无需NMS的YOLO,具有双重标签分配和一致匹配度量。它允许模型在训练期间享受丰富且和谐的监督,同时在推理过程中省去NMS,以实现高效竞争力。其次,作者提出了一个整体效率-准确性驱动的模型设计策略,通过对YOLO中各个组件的全面检查来实现模型架构。为了提高效率,作者提出了轻量级