基于深度学习的自动驾驶目标检测系统(YOLOv12完整代码+论文示例+多算法对比)
摘要:本文围绕自动驾驶场景下的车辆、行人及交通目标检测,构建一套可落地的 Qt 桌面端应用:界面基于 PySide6/Qt,支持图片、视频与本地摄像头多源输入,推理结果在主显示区实时叠加框(类别名+置信度),并提供处理进度条与耗时统计。系统集成登录/注册(可跳过)与本地会话管理,检测记录与账户信息统一写入SQLite 本地库,同时支持一键CSV 导出与带框结果导出(单帧 PNG / 多帧 AVI),便于复核与追溯。算法侧覆盖 YOLOv5–YOLOv12(共 8 种),支持**模型选择/权重加载(.pt 热切换)**并同步刷新类别与配色;通过对比 mAP、F1、PR 以及训练曲线,给出不同模型在精度、速度与部署复杂度上的权衡结论。文末提供完整工程与数据集下载链接。
文章目录
1. 系统功能与效果
(1)登录注册:系统提供登录、注册与一次性跳过入口,跳过仅在当前会话内生效,便于快速进入检测流程但不影响后续补登。登录后会绑定本地会话与个性化配置,历史检测记录与账户信息由本地 SQLite 统一管理,并进行基本口令校验以降低误用风险。进入主界面后,用户可沿概览、检测入口、模型选择与导出视图的动线完成一次完整任务,同时可快速定位最近记录并在表格中高亮关联的 CSV 条目以便复核。
(2)功能概况:桌面端以“左侧数据源与阈值控制、中部结果显示、右侧目标详情、底部记录与进度”的布局组织交互,尽量减少频繁切页带来的操作成本。图片、视频与摄像头等输入源互斥切换,保证推理状态与参数一致性,避免多源并行导致的结果混淆。推理过程提供进度与用时反馈,记录区跨页面共享,使用户在不同输入模式下仍能保持同一套查看与导出习惯。
(3)选择模型:用户可在界面中选择本地权重文件完成模型切换,实现 .pt 权重的热切换与快速对比。切换后会同步刷新类别名称、配色与显示映射,确保同类目标在不同模型下呈现一致的视觉语义。常用推理阈值等配置可在本地持久化保存,便于在多次实验与道路场景复测时复用同一套参数基线。
(4)图片检测:单张图片载入后可立即触发推理,主显示区实时叠加检测框、类别名与置信度,便于直观看到目标边界与识别结果。用户可调节置信度与 IoU 阈值以适配远距小目标、遮挡与强反光等自动驾驶常见干扰,并支持对单个目标选中高亮查看细节。检测结果会同步写入底部记录区,便于回看同一图片在不同模型与不同阈值下的差异。
(5)文件保存:系统支持将检测结果导出为结构化表格用于统计分析,并可一键保存带框可视化结果以便汇报与复核。导出文件采用时间戳命名与统一归档策略,便于溯源、批量管理与按文件名快速定位复查。保存动作与历史记录联动,用户可直接从记录区回到对应任务条目,确保导出内容与当次推理配置一致。
2. 绪论
2.1 研究背景及意义
自动驾驶系统需要在复杂道路环境中对车辆、行人、骑行者、交通标志与信号灯等目标进行稳定感知,其中基于摄像头的目标检测因信息密度高、成本可控而成为量产方案的核心环节之一。1 以 KITTI 为代表的公开基准推动了车载视觉检测从“可用”走向“可比”,也让遮挡、小目标与远距目标成为长期高频的工程痛点。1 随着场景与传感器形态扩展,nuScenes 等多模态数据集把 360° 视角、多类别三维标注与跨传感器对齐纳入统一评测框架,从而更贴近真实道路的分布漂移与长尾问题。2 Waymo Open Dataset 进一步在规模与地域多样性上提升了挑战强度,促使研究从“单一数据集刷榜”转向“跨域泛化与可部署鲁棒性”。[3]
从落地角度看,目标检测不仅要追求 mAP 等离线精度,还必须满足低延迟、可解释可视化与人机协同调参的在线需求,才能支撑自动驾驶从研发验证走向持续迭代的闭环。[4] 近年来大量工作围绕 YOLO 系列在自动驾驶检测中的应用与改进进行综述,普遍认为“速度—精度—算力成本”的三方权衡决定了算法能否进入车规级部署链路。[4] 针对车载端到端工程,建立一套可复现的训练、评测、推理与结果追溯系统,有助于把算法差异转化为可量化的指标对比,并将可视化结果直接服务于数据清洗、标注修正与模型迭代。[5]
因此,本文面向“基于深度学习的自动驾驶目标检测系统”这一完整任务,强调算法与系统的协同:一方面在统一数据与指标下比较不同检测范式的精度与效率边界,另一方面在桌面端提供可交互的推理展示、阈值调节与导出归档,使检测结果具备可解释、可复核、可积累的工程价值。
2.2 国内外研究现状
自动驾驶道路场景的目标检测通常同时面对尺度跨度大、密集遮挡、运动模糊、光照剧烈变化与类别长尾等问题,这些因素会导致“同类易漏检、异类易误检”的错误形态在视频流中被放大。[4] 任务层面的难点决定了算法不仅需要更强的特征表达与多尺度建模能力,还需要稳定的后处理策略与一致的时序表现,以避免帧间抖动对决策模块产生连锁影响。[5]
在方法谱系上,两阶段检测器以 Faster R-CNN 为代表,通过候选框机制提升定位与分类质量,但其流水线结构往往带来更高的延迟与更复杂的工程依赖。[6] 单阶段检测器如 SSD 通过密集预测显著简化流程,并为后续实时检测器奠定了端到端训练的基础。[7] 为缓解正负样本极度不均衡,RetinaNet 以 Focal Loss 提升密集检测的有效梯度贡献,使单阶段方法在 COCO 等基准上获得更强的精度表现。[8] 在轻量化与可扩展性方向,EfficientDet 通过复合缩放与特征融合结构在不同算力档位下提供了较清晰的精度—计算量曲线。[9] 另一方面,FCOS 等 Anchor-free 思路通过像素级回归减少先验框设计负担,CenterNet 则将目标表征为关键点回归以提升结构简洁性,但它们在极端遮挡与小目标密集时仍依赖更强的特征融合与训练策略来稳定收敛。[10][11]
Transformer 检测器以 DETR 为代表,将集合预测与二分图匹配引入检测任务,显著弱化了对 NMS 的依赖并重塑了检测头的建模方式,但其训练收敛与计算代价在早期限制了实时应用。[12] 随后 RT-DETR 等工作围绕编码器效率与查询选择策略进行改造,将 DETR 范式推进到实时区间,使“端到端、弱后处理依赖”的检测路线具备工程可用性。[13]
在实时检测领域,YOLO 家族长期占据车载部署的主流路线,典型原因在于其对吞吐、延迟与部署工具链的适配成熟度较高。[4] YOLOv5 以较工程化的训练与推理实现降低了复现门槛,从而加速了行业对 YOLO 的二次开发与数据闭环建设。[14] 面向工业与边缘端,YOLOv6、YOLOv7 等版本持续在主干、颈部与训练“bag-of-freebies”策略上推进精度与速度边界,使不同算力档位具备更稳定的可选模型谱系。[15][16] Ultralytics YOLOv8 在 anchor-free 头与模型族配置上进一步工程化,公开给出了不同规模模型在 COCO 上的 mAP 与推理速度指标,便于做部署选型与预算评估。[17] YOLOv9、YOLOv10 围绕训练信号与端到端效率继续演进,其中 YOLOv10 以 NMS-free 训练与效率驱动的结构设计为核心,在多尺度模型上给出了更优的精度—延迟权衡。[18][19] Ultralytics YOLO11 则在保持实时性的前提下给出了“更高 mAP 与更少参数”的工程指标对比,而 YOLOv12 进一步强调注意力中心化设计并在 T4 TensorRT 条件下报告了毫秒级延迟的实时检测结果,体现出新一代实时检测器在算力友好与部署一致性上的持续推进。[20][21]
在系统与部署趋势上,研究重心正从“单点模型指标”走向“端侧可复现的全链路性能”,包括 ONNX/TensorRT 加速、量化与算子融合带来的延迟收益,以及可视化与可追溯导出支撑的数据闭环。[15] 对自动驾驶工程而言,更重要的是把模型选择、阈值调参、结果导出与历史对比整合到同一套交互式工具中,从而让算法迭代能够被快速验证、被准确复盘,并最终服务于更安全的在线运行。
表 2-1 代表性目标检测方法对比(论文/官方报告口径)
| 方法 | 范式/家族 | 数据集(报告口径) | 关键改进要点 | 优势与局限(面向车载) | 关键指标示例 |
|---|---|---|---|---|---|
| Faster R-CNN + FPN | 两阶段 / Anchor-based | COCO | 候选框 + RoI 头 | 精度稳健但链路更长、延迟与工程复杂度较高 | AP=42.0,FPS=17(V100)[12] |
| DETR (R50) | Transformer / 集合预测 | COCO | 匹配损失 + 端到端集合预测 | 弱化 NMS 依赖但训练与算力成本较高 | AP=42.0,FPS=28(V100)[12] |
| RetinaNet | 单阶段 / Anchor-based | COCO test-dev | Focal Loss | 对密集场景友好但需精心设计先验与后处理 | AP=39.1,≈5 FPS(M40)[8] |
| RT-DETR-R18 | Transformer / 实时 DETR | COCO val | 高效编码器 + 查询选择 | 端到端友好但实现复杂度高于 CNN 检测器 | APval=46.5,T4 TensorRT≈217 FPS[13] |
| YOLOv8s | YOLO / 单阶段 | COCO val | Anchor-free 头 + 工程化模型族 | 生态成熟、速度与精度均衡但仍常依赖 NMS | mAPval=44.9,A100 TensorRT=1.20 ms[17] |
| YOLO11s | YOLO / 单阶段 | COCO val | 架构与训练流程优化 | 参数效率更优,利于边缘端与桌面端快速选型 | mAPval=47.0,T4 TensorRT10=2.5 ms[20] |
| YOLOv10-S | YOLO / 端到端优化 | COCO val | NMS-free 训练 + 效率驱动设计 | 精度—延迟曲线更友好,适合低延迟链路 | APval=46.3,Latency=2.49 ms[19] |
| YOLOv12-N | YOLO / 注意力中心化 | COCO(论文报告) | 注意力中心化实时检测器 | 强调注意力与实时部署一致性,需结合任务数据再验证 | mAP=40.6%,T4 TensorRT=1.64 ms[21] |
2.3 要解决的问题及其方案
围绕自动驾驶目标检测的工程闭环,本文主要关注以下问题:(1)在多目标、多尺度与复杂光照条件下,如何同时保证检测准确性与实时性,以满足视频流在线推理的延迟约束。(2)在跨城市、跨天气与跨时段的数据分布变化下,如何提升模型的环境适应性与泛化能力,降低对单一数据集的过拟合风险。(3)在桌面端交互与验证阶段,如何提供直观可解释的结果展示与调参体验,使研发人员能够高效定位误检漏检原因并快速复盘。(4)在批量推理与长期迭代过程中,如何提升数据处理效率并保障结果与账户信息的本地存储安全性,实现可追溯的实验管理。
针对上述问题,本文给出系统化解决思路:(1)以 YOLO 系列为主要候选模型,并引入 YOLOv5–YOLOv12 的统一训练、推理与评测流程,在 mAP、F1、PR 与训练曲线等指标上进行对比选型以兼顾精度与速度。(2)基于深度学习框架完成从训练到推理的端到端闭环,并结合数据增强、迁移学习与多模型对照实验提升泛化稳定性。(3)采用桌面端交互界面集成图片、视频与摄像头输入的检测流程,支持阈值调参、模型热切换与结果可视化导出,使“看得见的误差”能直接反哺数据与模型迭代。(4)通过统一的记录与归档策略提升批处理效率,并以本地数据库管理账户与历史结果,配合时间戳命名与导出管理实现可靠追溯与稳定运行。
2.4 博文贡献与组织结构
本文的主要贡献可概括为:(1)围绕自动驾驶目标检测的任务难点与工程约束,形成一套覆盖两阶段、单阶段、Anchor-free 与 Transformer 检测器的综述脉络,并给出面向部署选型的对比视角。(2)在统一数据与指标体系下,对 YOLOv5–YOLOv12 进行训练、推理与评测对照,强调精度、速度与资源占用的综合权衡。(3)构建面向研发验证的桌面端交互系统,将多源输入推理、阈值调节、可视化与结果导出整合为闭环工具,以提升误差定位与复盘效率。(4)给出可追溯的实验组织方式与结果管理机制,便于把模型迭代沉淀为可复用的工程资产。(5)配套提供数据与代码资源的组织方式,支持读者复现与二次开发。
全文组织如下:第 3 章介绍数据集处理与标注规范,并说明划分与增强策略如何对应道路场景难点;第 4 章阐述以 YOLO 为主线的模型原理与关键设计;第 5 章给出 YOLOv5–YOLOv12 的实验对比与误差分析;第 6 章从分层架构角度描述桌面端系统设计与实现;第 7 章总结工作并展望面向车载部署与持续学习的未来方向。
3. 数据集处理
本文使用的自动驾驶道路场景数据集共包含 29,800 张图像,按照训练集 23,800 张、验证集 3,000 张、测试集 3,000 张进行划分,对应占比分别约为 79.9%、10.1%、10.1%。样例可视化结果显示,该数据覆盖白天、背光与夜间等多种光照条件,且存在明显的尺度跨度与遮挡现象:近景车辆框占据较大像素面积,而远距目标(车辆、行人、交通灯等)往往呈现小尺寸、低纹理和易被树荫/车体遮挡的特征。类别体系面向道路关键目标,包含骑手、汽车、行人、卡车,以及交通灯及其细分状态(红/黄/绿与左转子类),整体更贴近自动驾驶感知任务中“高频车类 + 小目标信号灯 + 稀疏弱纹理行人/骑手”的组合分布。标签及其对应中文名如下:
Chinese_name = {"biker": "骑手",
"car": "汽车",
"pedestrian": "行人",
"trafficLight": "交通灯",
"trafficLight-Green": "绿灯",
"trafficLight-GreenLeft": "左转绿灯",
"trafficLight-Red": "红灯",
"trafficLight-RedLeft": "左转红灯",
"trafficLight-Yellow": "黄灯",
"trafficLight-YellowLeft": "左转黄灯",
"truck": "卡车"}

在标注与组织规范上,数据采用矩形框对目标进行定位,并以类别标签与框参数共同构成监督信号;结合标签相关性分布图中坐标轴落在 [ 0 , 1 ] [0,1] [0,1] 的表现,本文统一采用归一化框表示(以框中心点 ( x , y ) (x,y) (x,y) 与宽高 ( w , h ) (w,h) (w,h) 描述),训练与评测时保持同一口径,推理展示阶段再将坐标还原到原图尺度进行叠加绘制。从统计现象看,框中心点分布更集中在图像中部及道路延展区域,这与车载前视相机的几何先验一致;与此同时, w w w 与 h h h 呈现明显长尾,小框样本占比高,说明远距目标与交通灯等小目标是该数据集的主要难点之一,这类样本在遮挡、强反光和运动模糊条件下更易漏检,往往直接影响召回率与 m A P 50 : 95 mAP_{50:95} mAP50:95 等综合指标。
在预处理与增强策略上,本文将输入统一到 640×640 的网络尺度以稳定训练与推理的几何一致性,并在训练阶段沿用 Ultralytics YOLO 的常用增强配置(如 Mosaic/MixUp、多尺度缩放、HSV 色彩扰动与随机翻转等),以提升模型对光照变化、背景纹理差异与尺度漂移的适应能力;对于交通灯等细粒度小目标,增强策略的重点在于扩展其出现位置与尺度组合,缓解“只在少量区域出现、易被背景淹没”的学习偏置。数据清洗方面,训练前对异常标注(越界、零面积、极端长宽比)与标签缓存进行校验与更新,确保类别映射一致、标注可解析且与划分集合严格对应;同时在划分时保持随机性可控并尽量避免相邻帧或同路段样本在不同集合间泄漏,从而保证后续 YOLOv5–YOLOv12 的对比评测能够反映真实的泛化能力与工程可部署性。
4. 模型原理与设计
面向自动驾驶场景的目标检测,本系统以 YOLOv12 作为主线模型,遵循“单阶段检测器”的端到端流程:输入图像经统一尺寸预处理后进入骨干网络提取多尺度特征,再由颈部结构完成跨尺度融合,最后在检测头上同时回归边界框并预测类别概率。与两阶段方法相比,单阶段范式天然更利于低延迟推理,适合车载感知对实时性的硬约束;而在本数据集中,交通灯、行人等目标存在小尺度、遮挡和光照剧烈变化等挑战,因此更依赖高质量的多尺度特征与全局上下文建模来抑制误检与漏检。整体上可以把它理解为“CNN 的局部归纳偏置 + 注意力的全局依赖建模”在检测框架内的折中:既保留分层特征金字塔的工程效率,也尽可能把远距离语义关系引入到特征提取阶段,从而在复杂道路场景中提升稳定性与可解释的可视化效果。 (Ultralytics Docs)
在结构设计上,YOLOv12 的关键在于以更“轻量可算”的方式把注意力机制嵌入 YOLO 的分层网络中:标准自注意力可写为
A t t n ( Q , K , V ) = S o f t m a x ! ( Q K ⊤ d ) V , \mathrm{Attn}(Q,K,V)=\mathrm{Softmax}!\left(\frac{QK^{\top}}{\sqrt{d}}\right)V, Attn(Q,K,V)=Softmax!(dQK⊤)V,
其中 Q , K , V Q,K,V Q,K,V 为查询/键/值映射, d d d 为单头维度;若直接在高分辨率特征上做全局注意力,计算与显存开销会快速上升。YOLOv12 提出的 Area Attention 将特征图按水平方向或竖直方向划分为若干等分区域(默认 4 份),通过“区域化重排”的方式在保持较大有效感受野的同时降低注意力计算成本,并可结合 FlashAttention 降低显存访存开销;同时在注意力分支引入大核可分离卷积作为 position perceiver,用更便宜的卷积平滑来补足位置信息感知,并通过调整 MLP ratio、移除显式位置编码、使用卷积与 BN 等策略进一步贴合 YOLO 的实时推理约束。另一方面,在特征聚合模块上,YOLOv12 以 R-ELAN 强化梯度流与特征融合稳定性:通过块级残差与缩放系数缓解大模型训练不稳定,并以“瓶颈式聚合”减少冗余计算,使得注意力骨干在扩大表达能力的同时不至于牺牲过多速度。网络整体架构图如下图所示
在任务建模与损失函数上,检测头需要同时优化分类与定位两类目标:分类分支通常以交叉熵或 BCE 形式约束类别概率,定位分支则围绕 IoU 系列度量进行回归。以 IoU 为例,
I o U = ∣ B ∩ B g t ∣ ∣ B ∪ B g t ∣ , \mathrm{IoU}=\frac{|B\cap B^{gt}|}{|B\cup B^{gt}|}, IoU=∣B∪Bgt∣∣B∩Bgt∣,
在此基础上常用的 CIoU 会同时考虑中心点距离与长宽比一致性,使得优化更“几何友好”:
L C I o U = 1 − I o U + ρ 2 ( c , c g t ) c 2 + α v , \mathcal{L}_{\mathrm{CIoU}}=1-\mathrm{IoU}+\frac{\rho^2(\mathbf{c},\mathbf{c}^{gt})}{c^2}+\alpha v, LCIoU=1−IoU+c2ρ2(c,cgt)+αv,
其中 ρ ( ⋅ ) \rho(\cdot) ρ(⋅) 表示中心点欧氏距离, c c c 为最小外接框对角线长度, v v v 描述长宽比差异, α \alpha α 为平衡系数。对自动驾驶的小目标(如远处交通灯)而言,IoU 类损失能更直接地推动框与目标的重合,但也更依赖正负样本分配与多尺度特征质量;因此在工程实现中通常会结合更细粒度的框分布建模(如 DFL 思路)与更稳健的样本匹配策略,降低密集目标与遮挡情况下的定位抖动,并在推理阶段用置信度阈值与(可选的)NMS 逻辑对候选框进行去冗余,从而在 Precision 与 Recall 之间取得可控折中。 (Ultralytics Docs)
训练与正则化方面,YOLOv12 仍强调“分层结构 + 充分训练”的范式:在公开实现与论文设定中,模型通常使用 SGD 训练,并采用线性学习率衰减与前若干 epoch 的 warm-up 来提升早期收敛稳定性;注意力模块在大规模模型上更容易出现优化震荡,因此 R-ELAN 的残差缩放、卷积与 BN 的组合、以及对注意力结构的简化(如移除位置编码、调整 MLP ratio)都可以视为“为可训练性服务”的结构性正则。落到本系统的自动驾驶检测任务,博主更建议把训练策略与难点一一对齐:用更强的数据增强覆盖光照/阴影/逆光变化,用多尺度训练与合理的尺度抖动缓解远距离小目标的召回问题,并在部署端将 Conf/IoU(或 NMS)阈值作为可交互参数暴露给前端,形成“可视化反馈—阈值调参—结果复查”的闭环,从而在不同道路环境与不同类别(尤其交通灯、行人、骑手等)的误检/漏检风险之间实现可解释的工程权衡。 (ar5iv)
5. 实验结果与分析
本章在同一数据划分(训练 23,800 / 验证 3,000 / 测试 3,000)与统一输入尺度(640×640)下,对比 yolov5nu、yolov6n、yolov7-tiny、yolov8n、yolov9t、yolov10n、yolo11n、yolo12n 八种轻量模型,并补充 s 级别模型族作为“精度上界与部署代价”的参照。评测指标采用 Precision、Recall、F1、mAP@0.5(记为 mAP50)与 mAP@0.5:0.95(记为 mAP50-95),推理时延在 NVIDIA GeForce RTX 3070 Laptop GPU(8GB)上统计单张图像的预处理、推理与后处理耗时,以反映桌面端在线检测的真实体验。
表 5-1 不同 YOLO 模型在 SelfDriving 数据集上的精度与效率对比(RTX 3070 Laptop GPU)
| Model | Params(M) | FLOPs(G) | Total(ms) | Precision | Recall | F1 | mAP50 | mAP50-95 |
|---|---|---|---|---|---|---|---|---|
| YOLOv5nu | 2.6 | 7.7 | 10.94 | 0.871 | 0.627 | 0.729 | 0.710 | 0.428 |
| YOLOv6n | 4.3 | 11.1 | 10.34 | 0.871 | 0.626 | 0.728 | 0.715 | 0.447 |
| YOLOv7-tiny | 6.2 | 13.8 | 21.08 | 0.903 | 0.816 | 0.857 | 0.848 | 0.527 |
| YOLOv8n | 3.2 | 8.7 | 10.17 | 0.870 | 0.648 | 0.743 | 0.730 | 0.446 |
| YOLOv9t | 2.0 | 7.7 | 19.67 | 0.880 | 0.627 | 0.733 | 0.733 | 0.438 |
| YOLOv10n | 2.3 | 6.7 | 13.95 | 0.873 | 0.645 | 0.742 | 0.744 | 0.470 |
| YOLOv11n | 2.6 | 6.5 | 12.97 | 0.856 | 0.660 | 0.745 | 0.728 | 0.457 |
| YOLOv12n | 2.6 | 6.5 | 15.75 | 0.876 | 0.658 | 0.751 | 0.761 | 0.480 |
| YOLOv5su | 9.1 | 24.0 | 12.24 | 0.740 | 0.818 | 0.777 | 0.837 | 0.512 |
| YOLOv6s | 17.2 | 44.2 | 12.26 | 0.908 | 0.740 | 0.815 | 0.814 | 0.542 |
| YOLOv7 | 36.9 | 104.7 | 29.52 | 0.915 | 0.858 | 0.886 | 0.872 | 0.595 |
| YOLOv8s | 11.2 | 28.6 | 11.39 | 0.826 | 0.759 | 0.791 | 0.839 | 0.519 |
| YOLOv9s | 7.2 | 26.7 | 22.17 | 0.877 | 0.765 | 0.817 | 0.843 | 0.522 |
| YOLOv10s | 7.2 | 21.6 | 14.19 | 0.886 | 0.780 | 0.829 | 0.867 | 0.569 |
| YOLOv11s | 9.4 | 21.5 | 13.47 | 0.930 | 0.772 | 0.844 | 0.864 | 0.569 |
| YOLOv12s | 9.3 | 21.4 | 16.74 | 0.863 | 0.795 | 0.828 | 0.845 | 0.566 |

从轻量 n/t 族的整体趋势看,YOLOv7-tiny 在精度侧显著领先(F1=0.857,mAP50=0.848,mAP50-95=0.527),说明当模型容量与特征表达增强后,小目标(如远距交通灯)与遮挡目标的召回收益会更直接地体现在综合指标上;但它的端到端时延达到 21.08 ms,且后处理耗时偏高(4.06 ms),在“多目标密集+候选框多”的道路场景中更容易形成桌面端实时链路的瓶颈。相对而言,YOLOv8n/YOLOv6n/YOLOv5nu 的总耗时都在约 10 ms 左右,更贴近实时推理的体验下限,但 mAP50-95 仍停留在 0.43–0.45 区间,反映出它们在更严格 IoU 阈值下的定位质量仍受限。值得注意的是,YOLOv12n 在参数量与 YOLOv11n/YOLOv5nu 相近的情况下,把 mAP50 提升到 0.761、mAP50-95 提升到 0.480,说明引入更强的上下文建模后,对“小目标的稳定定位”与“框质量”更友好;代价是推理耗时上升(InfTime 12.47 ms),因此更适合作为“轻量端的精度上限”或在桌面端离线批处理模式使用。如上图所示,n 族模型的 F1 与 mAP50 对比能够直观看到“YOLOv7-tiny 的高精度”与“YOLOv12n 的轻量高 mAP”两条路线的差异。
在 s 族对比中,YOLOv7 给出了最高精度上界(F1=0.886,mAP50=0.872,mAP50-95=0.595),但其参数量与 FLOPs 显著增大(36.9M、104.7G),推理耗时达到 23.62 ms,总耗时 29.52 ms,更适合离线评测或算力充足的工作站场景。若以“桌面端实时性 + 精度”作为折中目标,YOLOv11s 与 YOLOv10s 的综合表现更均衡:二者在 mAP50-95 上都达到 0.569,且总耗时分别为 13.47 ms 与 14.19 ms,其中 YOLOv11s 的 Precision 达到 0.930,说明其在误检控制上更强;YOLOv12s 的 Recall(0.795)相对更高,但 Precision 略低,落到系统交互层面通常意味着需要结合 Conf 阈值与目标高亮复核来控制误报成本。结合平均 PR 曲线可以看到,当 Recall 进入 0.8 之后,曲线下坠速度开始成为模型差异的主要来源,这一段往往对应“更小、更模糊、更易遮挡”的目标,因此把训练增强(曝光、模糊、尺度扰动)与推理阈值调参聚焦在该区间,通常比单纯追求更高的低召回精度更有效。
从错误模式与可解释性角度,混淆矩阵揭示了细粒度交通灯子类是主要难点:yellow 的对角占比仅约 0.55,且被预测为 background 的比例更高(约 0.40),符合“黄灯样本少、持续时间短、受曝光影响大”的先验;greenleft/redleft 等转向灯也存在一定混淆,说明在远距小目标条件下,模型更容易依赖颜色与局部亮斑而忽略箭头形态细节。对系统而言,这类错误非常适合通过桌面端的“目标选中高亮 + 历史记录回看 + 带框导出复核”快速定位,并进一步通过两类策略修正:一是数据侧补充黄灯与转向灯的极端光照样本并做类均衡采样,二是推理侧采用更保守的置信度阈值或对交通灯子类启用更细的阈值分段。
F1-Confidence 曲线给出的全类最优点约在 Conf=0.255(全类 F1≈0.82),与系统默认的 0.25 初值基本一致,意味着把 Conf 滑块作为首要交互参数是合理的;当用户更关注“少误检”时,可提高 Conf 以换取更高 Precision,而当更关注“少漏检”(例如行人/骑手安全类目标)时,则建议降低 Conf 并结合导出复核来控制误差风险。
6. 系统设计与实现
6.1 系统设计思路
本系统采用分层架构组织自动驾驶目标检测的端到端链路,整体可抽象为“表现与交互层(Qt 客户端)—业务与会话管理层—推理与任务调度层—数据持久化层”的协同闭环。Qt 客户端负责输入源选择、阈值交互、结果可视化与记录呈现,并将用户的 Conf/IoU 等参数变化以统一状态同步到业务层;业务层维持会话与输入源互斥策略,对检测任务进行编排与状态机管理,保证同一时刻只有一种媒体源参与推理,从而避免视频与摄像头并行引入的资源争用与结果混淆。
推理与任务调度层以事件驱动的帧流作为运行主线:媒体接入模块将图片/视频/摄像头统一转化为帧序列,预处理模块完成尺度对齐(640×640)、归一化与张量化,随后进入 YOLO 推理引擎(YOLOv5–YOLOv12)输出候选框集合。后处理模块在推理输出上施加 Conf/IoU 过滤与(可选)NMS 去冗余,并完成坐标从网络输入尺度到原图尺度的还原;该层将“推理耗时、目标数、类别统计”等结构化信息同步给前端,形成可解释的在线反馈,同时为 CSV/PNG/AVI 导出提供统一的数据结构。
为保证实时性与一致性,系统在任务调度上采用“帧到达触发—推理执行—界面刷新”的顺序控制,并在前端以进度条与用时显示对处理节奏进行可视化提示,使用户能够直观看到视频处理的推进与暂停/切换源的即时生效。扩展性方面,模型权重管理被设计为可替换的资源对象,允许在不重启应用的情况下完成 .pt 权重热切换,并将类别名与配色映射与模型绑定,以保证不同权重下的显示语义一致;配置与主题样式则本地化保存,配合导出文件的时间戳命名与归档策略,使实验结果具备可追溯性与批量管理能力。

图 6-1 系统流程图(自初始化到多源输入的推理闭环)
图注:系统以事件驱动帧流串联“预处理—YOLO 推理—后处理—前端可视化”,并在交互控制下形成可持续循环;Conf/IoU 滑块、目标高亮与 CSV/PNG/AVI 导出在闭环末端落地。

图 6-2 系统设计框图(分层与模块边界)
图注:数据流从“媒体接入”进入推理与调度层,经预处理、YOLO 推理与后处理后回到 Qt 客户端完成可视化与交互闭环;结果同时写入本地数据库并支持导出归档。
6.2 登录与账户管理 — 流程图

图 6-3 登录与账户管理流程图(本地账户、会话与个性化配置衔接)
图注:登录流程以“是否已有账号”为分支,注册与登录均写入本地数据库;登录成功后载入个性化配置与最近记录,并与主检测流程无缝衔接。
登录与账户管理在系统中承担“身份与会话边界”的职责:应用启动后显示登录界面,用户可选择登录或注册,注册信息写入本地数据库并形成可追溯的账户记录;登录阶段对口令进行校验,失败则回到凭据输入以避免异常会话扩散,成功后载入用户的个性化偏好(如主题、默认模型与最近检测记录),从而在进入主界面时保持交互与结果管理的一致体验。该流程与主检测闭环的衔接点在于会话建立后对配置与历史记录的加载,这使得检测参数、模型选择与导出归档能够在同一用户空间内持续累积,并在注销或切换账号时明确完成隔离,满足本地单机环境下的可用性与基础安全性要求。
7. 下载链接
若您想获得博文中涉及的实现完整全部资源文件(包括测试图片、视频,py, UI文件,训练数据集、训练代码、界面代码等),这里见可参考博客与视频,已将所有涉及的文件同时打包到里面,点击即可运行,完整文件截图如下:

本文涉及到的完整全部程序文件: 包括环境配置文档说明、python源码、数据集、训练代码、UI文件、测试图片视频等:
详细介绍文档博客: 基于深度学习的自动驾驶目标检测系统(YOLOv12完整代码+论文示例+多算法对比)
环境配置博客教程:https://deeppython.feishu.cn/wiki/EwnTwJ2H3iLF6VkNG6ccgZYrnvd;
或者环境配置视频教程:Pycharm软件安装视频教程;(2)Anaconda软件安装视频教程;(3)Python环境配置视频教程;
数据集标注教程(如需自行标注数据):数据标注合集
参考文献(GB/T 7714)
1 Geiger A, Lenz P, Urtasun R. Are we ready for autonomous driving? The KITTI vision benchmark suite[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2012: 3354-3361.
2 Caesar H, Bankiti V, Lang A H, et al. nuScenes: A multimodal dataset for autonomous driving[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020: 11621-11631. doi:10.48550/arXiv.1903.11027.
[3] Sun P, Kretzschmar H, Dotiwalla X, et al. Scalability in perception for autonomous driving: Waymo Open Dataset[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020: 2443-2452. doi:10.48550/arXiv.1912.04838.
[4] 茅智慧, 朱佳利, 吴鑫, 李君. 基于YOLO的自动驾驶目标检测研究综述[J]. 计算机工程与应用, 2022, 58(15): 68-77. DOI:10.3778/j.issn.1002-8331.2203-0310.
[5] 杨飞帆, 李军. 面向自动驾驶的YOLO目标检测算法研究综述[J]. 汽车工程师, 2023. DOI:10.20104/j.cnki.1674-6546.20230095.
[6] Ren S, He K, Girshick R, et al. Faster R-CNN: Towards real-time object detection with region proposal networks[J]. IEEE Trans Pattern Anal Mach Intell, 2017, 39(6): 1137-1149.
[7] Liu W, Anguelov D, Erhan D, et al. SSD: Single shot multibox detector[C]//European Conference on Computer Vision. 2016: 21-37.
[8] Lin T Y, Goyal P, Girshick R, et al. Focal loss for dense object detection[C]//Proceedings of the IEEE International Conference on Computer Vision. 2017: 2980-2988.
[9] Tan M, Pang R, Le Q V. EfficientDet: Scalable and efficient object detection[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020: 10781-10790.
[10] Tian Z, Shen C, Chen H, et al. FCOS: Fully convolutional one-stage object detection[C]//Proceedings of the IEEE/CVF International Conference on Computer Vision. 2019: 9627-9636.
[11] Zhou X, Wang D, Krähenbühl P. Objects as points[EB/OL]. arXiv:1904.07850, 2019.
[12] Carion N, Massa F, Synnaeve G, et al. End-to-end object detection with transformers[C]//European Conference on Computer Vision. 2020: 213-229. doi:10.48550/arXiv.2005.12872.
[13] RT-DETR: DETRs Beat YOLOs on Real-time Object Detection[EB/OL]. arXiv:2304.08069, 2023.
[14] Jocher G, et al. Ultralytics YOLOv5[EB/OL]. 2020.
[15] YOLOv6: A single-stage object detection framework for industrial applications[EB/OL]. arXiv:2209.02976, 2022.
[16] Wang C Y, Bochkovskiy A, Liao H Y M. YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2023: 7464-7475.
[17] Ultralytics. Explore Ultralytics YOLOv8 (Performance Metrics on COCO)[EB/OL]. 2023.
[18] YOLOv9: Learning what you want to learn using programmable gradient information[EB/OL]. arXiv:2402.13616, 2024.
[19] YOLOv10: Real-Time End-to-End Object Detection[EB/OL]. arXiv:2405.14458, 2024.
[20] Ultralytics. Ultralytics YOLO11 (Performance Metrics on COCO)[EB/OL]. 2025.
[21] YOLOv12: Attention-Centric Real-Time Object Detectors[EB/OL]. arXiv:2502.12524, 2025.
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)