YOLO算法演进史,从YOLOv1到YOLOv11核心技术剖析
目标检测(Object Detection)是计算机视觉中最具工程价值的任务之一,它要求算法在图像中同时回答"物体在哪里"与"物体是什么"两个问题。从 2015 年 Joseph Redmon 在 CVPR 上发表《You Only Look Once: Unified, Real-Time Object Detection》开始,YOLO 系列用十年时间完成了从"一次回归"到"端到端多任务统一"的跨越。本文将沿着 YOLOv1 → YOLOv2/YOLO9000 → YOLOv3 → YOLOv4 → YOLOv5 → YOLOX/YOLOv6/YOLOv7 → YOLOv8 → YOLOv9/v10/v11 的脉络,逐代剖析骨干网络(Backbone)、颈部(Neck)、检测头(Head)、标签分配(Label Assignment)与训练策略的演进逻辑,并给出可运行的 PyTorch 解码代码与工程选型建议。文中所有术语在首次出现时给出中英文对照,力求让读者既理解"为什么这样设计",也能落地"怎样跑起来"。
一、目标检测范式与 YOLO 的诞生
1.1 目标检测的任务定义与评价指标
目标检测的输出通常是一组边界框(Bounding Box),每个框附带类别标签(Class Label)与置信度分数(Confidence Score)。评价检测质量最核心的指标是交并比(Intersection over Union,IoU),即预测框与真实框(Ground Truth)交集面积除以并集面