🎯 YOLO 系列目标检测算法总览
一句话理解 YOLO
You Only Look Once —— 只需看一次,就能完成目标检测。
把目标检测从”先找候选区再分类”的两阶段,变成了”一步到位”的回归问题。
版本演进时间线
| 版本 |
年份 |
作者/机构 |
核心创新 |
论文/状态 |
| v1 |
2016 |
Joseph Redmon |
单阶段检测、Grid Cell 划分 |
1506.02640 |
| v2 |
2017 |
Redmon & Farhadi |
Anchor Box、BN、Darknet-19、细粒度特征 |
1612.08242 |
| v3 |
2018 |
Redmon & Farhadi |
Darknet-53、多尺度预测(FPN)、逻辑分类器 |
1804.02767 |
| v4 |
2020 |
Alexey Bochkovskiy |
CSPDarknet53、PAN、Mosaic增强、BoF/BoS |
2004.10934 |
| v5 |
2020 |
Ultralytics |
PyTorch实现、工程化、CSPNet+PAN |
❌ 无论文 |
| v6 |
2022 |
美团 |
工业级部署、EfficientRep、解耦Head |
2301.05586 |
| v7 |
2022 |
WongKinYiu |
可训练BoF、模型重参数化、动态标签分配 |
2207.02696 |
| v8 |
2023 |
Ultralytics |
Anchor-Free、多任务统一(检测/分割/姿态) |
❌ 无论文 |
| v9 |
2024 |
WongKinYiu |
PGI可编程梯度信息、GELAN架构 |
2402.13616 |
| v10 |
2024 |
清华大学 |
NMS-Free、一致双重分配、端到端 |
2405.14458 |
| v11 |
2024 |
Ultralytics |
C3k2块、C2PSA空间注意力、参数更少 |
❌ 无论文 |
| v12 |
2025 |
SUNY Buffalo |
首个注意力中心架构、区域注意力(A²)、R-ELAN |
2502.12524 |
| v13 |
2025 |
清华 & iMoonLab |
HyperACE超图增强、FullPAD范式、DS轻量化 |
2506.17733 |
| YOLO26 |
🚧 |
Ultralytics |
端到端无NMS、MuSGD优化器、边缘优化、CPU提速43% |
预览 |
三大发展阶段
阶段一:奠基期(v1 ~ v3)
1 2
| YOLOv1 ──→ YOLOv2 ──→ YOLOv3 "开创范式" "引入锚框" "成熟架构"
|
- v1: 把检测变成回归,S×S 网格,端到端
- v2: 引入 Anchor Box + BN + 细粒度特征,检测超9000类
- v3: Darknet-53 + 多尺度(FPN) + 逻辑分类器,工程最爱的”黄金版本”
阶段二:架构分化期(v4 ~ v7)
1 2 3 4
| ┌→ v4 (darknet原生) CSP + PAN + BoF/BoS v3 ────┼→ v5 (Ultralytics) PyTorch工程化 ├→ v6 (美团) 工业级高效部署 └→ v7 (WongKinYiu) 可训练BoF + 重参数化
|
关键变化: Backbone/Neck/Head 三段式架构成为标准
阶段三:现代化革新(v8 ~ 未来)
1 2
| v8 ──→ v9 ──→ v10 ──→ v11 ──→ v12 ──→ v13 ──→ YOLO26 Anchor-Free PGI NMS-Free C3k2 注意力中心 超图增强 边缘端到端
|
- Anchor-Free (v8): 摆脱手工设计的锚框
- PGI (v9): 解决深层网络信息丢失
- NMS-Free (v10): 消除后处理瓶颈
- 注意力架构 (v12): CNN → Attention 跨越
- 端到端边缘 (YOLO26): CPU 加速 43%,面向边缘设备
核心架构演进
Backbone 进化
| 版本 |
Backbone |
层数 |
特点 |
| v1 |
自定义CNN |
24 Conv |
基于GoogLeNet |
| v2 |
Darknet-19 |
19 Conv |
BN+全局平均池化 |
| v3 |
Darknet-53 |
53 Conv |
残差连接,无池化层 |
| v4 |
CSPDarknet53 |
53+CSP |
跨阶段部分连接 |
| v5 |
改进CSPDarknet53 |
— |
PyTorch优化的CSP |
| v6 |
EfficientRep |
— |
硬件感知CNN结构 |
| v9 |
GELAN |
— |
广义高效层聚合 |
| v12 |
注意力中心 |
— |
区域注意力替换CNN |
Neck 进化
| 版本 |
Neck 结构 |
作用 |
| v1-v3 |
无专门Neck |
— |
| v4 |
SPP + PANet |
多尺度特征融合 |
| v5-v7 |
改进PANet |
优化特征聚合 |
| v8 |
C2f + SPPF |
更快更轻量 |
| v11 |
C3k2 + C2PSA |
高效CSP+空间注意力 |
| v12 |
R-ELAN |
残差高效层聚合 |
Head 进化
| 版本 |
Head 类型 |
特点 |
| v1-v7 |
Anchor-Based |
预定义锚框,解耦或耦合 |
| v8+ |
Anchor-Free |
无需锚框,直接预测 |
| v10+ |
NMS-Free |
一对一Head,消除NMS |
损失函数演变
| 版本 |
定位损失 |
分类/置信度损失 |
| v1 |
Sum-Square Error (w,h取平方根) |
SSE |
| v2-v4 |
CIOU / DIOU |
BCE |
| v6 |
SIoU + GIoU 组合 |
VariFocal Loss |
| v8 |
CIOU + DFL |
BCE |
| v10+ |
改进IoU系列 |
一致双重分配 |
性能对比速览
| 版本 |
mAP(COCO) |
速度 |
参数量 |
代表模型 |
| v3 |
~33% |
快 |
62M |
darknet-53 |
| v4 |
~43% |
快 |
64M |
CSPDarknet53 |
| v5 |
~37-51% |
很快 |
7-87M |
yolov5s/m/l/x |
| v6 |
~39-52% |
很快 |
— |
yolov6s/m/l |
| v7 |
~37-57% |
很快 |
— |
yolov7-tiny/w6 |
| v8 |
~37-54% |
很快 |
3-68M |
yolov8n/s/m/l/x |
| v9 |
~39-55% |
快 |
— |
yolov9s/m/c/e |
| v10 |
~38-55% |
很快 |
— |
yolov10n/s/m/l/x |
| v11 |
~39-55% |
很快 |
2-57M |
yolo11n/s/m/l/x |
| v12 |
~41-59% |
快(208FPS) |
— |
yolov12n/s/m/l/x |
| v13 |
~42-59% |
快 |
— |
yolov13n/s/m/l/x |
| YOLO26 |
TBD |
很快(CPU+43%) |
极少 |
边缘优化 |
💡 选型建议: 工程落地首选 v8/v11(Ultralytics生态完善);追求精度选 v12/v13;边缘设备选 YOLO26。
关键术语速查
| 术语 |
全称 |
含义 |
| mAP |
mean Average Precision |
平均精度均值,核心评价指标 |
| IoU |
Intersection over Union |
交并比,衡量框的重叠程度 |
| NMS |
Non-Maximum Suppression |
非极大值抑制,去重冗余框 |
| CSP |
Cross Stage Partial |
跨阶段部分连接 |
| FPN |
Feature Pyramid Network |
特征金字塔网络,多尺度融合 |
| PAN |
Path Aggregation Network |
路径聚合网络 |
| SPP/SPPF |
Spatial Pyramid Pooling(-Fast) |
空间金字塔池化 |
| BoF |
Bag of Freebies |
免费包:不增加推理成本的优化 |
| BoS |
Bag of Specials |
特殊包:略微增加成本但大幅提升 |
| PGI |
Programmable Gradient Information |
可编程梯度信息 |
| GELAN |
Generalized ELAN |
广义高效层聚合网络 |
| DFL |
Distribution Focal Loss |
分布焦距损失 |
参考资料
- 📋 [[10.clippings/感知算法/2D检测/单阶段/YOLO/YOLO 详解:从 v1 到 v11]] — 知乎原文(敖丙)
- 📋 [[10.clippings/感知算法/2D检测/单阶段/YOLO/一文全面梳理YOLO系列|从YOLOv1到YOLOv13,再到YOLO26]] — 知乎原文(猫先生)
- 📋 [[10.clippings/感知算法/2D检测/单阶段/YOLO/YOLO系列算法精讲:从yolov1至yolov8的进阶之路(2万字超全整理)-CSDN博客]] — CSDN原文(AI菌)
- 📦 [[30.resources/yolo-master/README]] — Datawhale YOLO Master 教程
- 📝 [[YOLO 核心概念]] — 核心概念详解
后续学习路线
1 2 3 4 5 6
| graph LR A[YOLO 总览] --> B[核心概念掌握] B --> C[动手实践: ultralytics] C --> D[读源码: From Scratch] D --> E[魔改: Hacking YOLO] E --> F[部署与量化]
|
- 入门: 用 Ultralytics 跑通 yolov8n 训练自己的数据集
- 深入: 读 [[30.resources/yolo-master/docs/Pytorch_YoLo_From_Scratch/README|From Scratch 教程]]
- 实战: 参考 [[30.resources/yolo-master/docs/Hands_on_YoLo_with_ultralytics/README|实操教程]]
- 魔改: 参考 [[30.resources/yolo-master/docs/Hacking_YoLo/README|魔改教程]]