基于深度学习的交通标志识别系统(YOLOv12完整代码+论文示例+多算法对比)
摘要:本文面向交通场景的交通标志识别需求,构建一套“训练评测—桌面推理—结果归档”一体化系统:提供可下载的数据与代码,前端采用 PySide6/Qt 桌面界面,支持图片/视频/本地摄像头多源输入与源互斥切换,检测结果在主显示区以“类别名+置信度+边框”叠加呈现,并配套处理进度显示与进度条。系统支持 CSV 一键导出与最近记录快速定位,支持带框结果一键导出(单帧 PNG / 多帧 AVI),并将账户、历史与检测记录写入本地 SQLite 便于追溯;同时提供登录/注册与“可跳过”入口,保证会话在当前客户端范围内生效并兼顾口令校验与本地安全。系统核心强调 模型选择/权重加载(.pt 热切换):用户选择本地权重即可切换当前 YOLO 模型并同步刷新类别信息与可视化配色;算法对比覆盖 YOLOv5–YOLOv12(共 8 种),统一评测 mAP、F1、PR 与训练曲线等指标,形成可复现实验结论与工程部署闭环。文末提供完整工程与数据集下载链接。
文章目录
1. 系统功能与效果
(1)登录注册:系统提供登录、注册与一次性跳过入口,跳过后会话仅在当前客户端与当前运行周期内生效,便于快速体验核心能力。账户信息与历史记录采用本地 SQLite 管理,结合口令校验降低误用风险。进入主界面后可按“概览—选择模型—图片检测—结果查看与导出”的动线完成一次完整流程,并能快速定位最近记录与高亮定位对应的导出条目。
(2)功能概况:主界面采用“左侧参数与数据源、中部结果展示、右侧目标详情、底部记录与进度”的交互布局,保证关键操作无需频繁切页。用户可在概览页查看最近一次识别结果、统计信息与导出状态,并在检测页完成阈值调节、目标筛选与结果回溯。进度条与用时信息贯穿处理过程,使批量图片识别的等待成本可预期。
(3)选择模型:系统支持从本地选择权重文件切换当前 YOLO 模型,并在切换后同步刷新类别名称、颜色映射与推理配置,避免“模型变了但显示不一致”的体验断层。模型选择面向交通标志的细粒度类别需求,允许在不同轻量化与高精度版本之间快速对比。常用配置与界面主题可本地保存,下一次启动可直接继承上次工作状态。
(4)图片检测:支持单张图片与图片目录的快速识别,检测结果在主显示区以边框叠加方式展示交通标志位置,并标注类别名与置信度。用户可实时调整置信度与 IoU 阈值以平衡误检与漏检,并对某一类目标进行筛选与高亮查看,便于快速核对细小标志或密集场景。识别过程自动生成结构化记录,便于在底部记录区按时间与文件名回溯。
“注意儿童”检测效果:
“请注意”检测效果;
(5)文件保存:系统提供一键导出能力,支持保存带框结果图、导出识别明细为 CSV,并将导出任务与历史记录统一归档,便于溯源与批量管理。所有导出文件采用时间戳命名并与原始文件建立关联,便于按文件名快速定位与复查。保存流程与界面记录联动,用户可从历史记录直接跳转到对应的导出结果进行二次核验。
2. 绪论
2.1 研究背景及意义
交通标志作为道路基础设施中最“短文本、强语义”的视觉要素,直接承载限速、禁行、警告与指示等关键规则信息,其可靠识别是高级驾驶辅助系统与自动驾驶感知闭环的重要组成部分。1 由于标志在真实道路中常呈现小尺度、强反光、运动模糊与背景干扰并存等特征,仅依赖传统手工特征与规则工程往往难以同时兼顾鲁棒性与实时性。2 因此,构建一个以深度学习为核心、可在线推理并具备可视化解释能力的交通标志识别系统,不仅具有明确的工程落地价值,也能为后续的场景适配、数据闭环与部署优化提供稳定载体。3
(Zenodo)
从数据与评测角度看,交通标志识别任务通常包含“检测定位”和“类别判别”两层目标,前者决定系统能否在复杂场景中稳定找到标志区域,后者决定规则语义是否可被正确触发。2 以GTSRB为代表的分类基准为多类细粒度识别提供了可复现实验平台。1 以TT100K与Mapillary Traffic Sign Dataset为代表的真实道路数据进一步将研究推向“大规模、跨地域、强光照变化”的工程化场景,为系统泛化能力与实时性评估提供了更贴近应用的约束。3
(sid.erda.dk)
面向实际落地,桌面端可交互系统在研发链路中承担“人机协同”的关键角色:一方面通过可视化框选与置信度呈现提升可解释性与调参效率,另一方面通过标准化导出与本地存储实现结果可追溯与数据闭环。3 在交通安全相关任务中,这类“可视、可控、可复查”的工程能力能够显著降低调试与验收成本,并为后续的模型压缩、跨平台部署与在线迭代打下基础。4
(CVF Open Access)
2.2 国内外研究现状
在道路场景下开展交通标志识别研究,典型输入来源包括路侧监控、车载记录仪与移动采集设备,其共同特点是视角变化大、成像尺度跨度大且标志目标往往占画面极小比例。3 与通用目标检测不同,交通标志存在明显的类间相似与细粒度差异并存现象,易出现相邻类别混淆。1 同时,遮挡、逆光与夜间反光会导致边缘信息缺失或纹理过曝,从而放大漏检与误检风险。4 因此,近期研究通常围绕小目标增强、多尺度特征融合、样本不均衡处理与端侧实时性约束展开。[22]
(CVF Open Access)
在数据集与基线建设方面,德国交通标志检测基准(GTSDB)提供了面向检测任务的公开评测接口与协议,有助于统一对比不同检测器在真实道路图像上的性能差异。2 TT100K由街景全景图构建,标注提供类别、边界框与像素级信息,强调“小目标、长尾类别与环境变化”的现实挑战。3 Mapillary交通标志数据集覆盖全球街景并包含数百类细粒度标注,为跨地域泛化与迁移学习提供了更强的多样性支撑。4 因而,国内外不少工作会在TT100K或Mapillary上建立训练与验证闭环,并将GTSDB作为补充评测以观察模型在不同数据分布下的鲁棒性。3
(ini.rub.de)
从检测算法范式演进看,两阶段检测器以Faster R-CNN为代表,通过候选区域与分类回归分离的方式获得较强的定位与分类能力,但其推理链路相对复杂且对实时性不够友好。5 单阶段检测器以SSD为代表将分类与回归统一到密集预测框架中,显著提升了推理效率并更易工程部署。6 针对密集检测中的正负样本不均衡问题,RetinaNet提出Focal Loss以降低易分类样本权重,从而改善长尾与小目标场景下的学习稳定性。7 在结构设计层面,EfficientDet通过BiFPN与复合尺度策略提升了多尺度特征融合效率,为“精度与算力约束同时成立”的场景提供了可借鉴的折中路径。8
(arXiv)
| 方法名称 | 范式/家族 | 典型数据集 | 关键改进技术 | 优势与局限性 | 关键指标(示例) | 适用场景/对应难点 | 文献 |
|---|---|---|---|---|---|---|---|
| Faster R-CNN | Two-stage | COCO/VOC | RPN生成候选框并联合训练 | 精度强但链路较重 | 约5 FPS(VGG-16示例) | 类间相似、定位要求高 | 5 |
| SSD | One-stage | VOC/COCO | 多尺度特征图默认框密集预测 | 速度快但小目标易受限 | VOC07 mAP 72.1%@58 FPS(300输入) | 轻量实时、资源受限 | 6 |
| RT-DETR | Transformer(End-to-End) | COCO | 混合编码器与查询选择以实现实时端到端 | 去NMS利于延迟但结构较新 | COCO AP 53.1%@108 FPS(T4) | 低延迟、部署端到端 | [12] |
| YOLOv10 | YOLO(End-to-End) | COCO | NMS-free训练与整体效率驱动设计 | 端到端友好但需适配导出链路 | YOLOv10-S同AP下较RT-DETR-R18快1.8× | 高帧率在线检测 | [19] |
| YOLOv12 | YOLO(Attention-centric) | COCO | 注意力中心化设计并保持实时性 | 注意力模块带来显存与稳定性挑战 | YOLOv12-N mAP 40.6%且T4延迟1.64 ms | 精度优先且仍需实时 | [21] |
| 改进YOLOv5 | YOLO+小目标增强 | TT100K | 轻量模块+EFPN+小目标检测头 | 更适配雾天与小目标但需场景调参 | P↑8.9%,mAP0.5↑4.4%,FPS 151.5 | 雾天、反光、小目标密集 | [22] |
| 改进YOLOv5 | YOLO+特征融合 | 自建/公开集 | 加小目标头与结构重构 | 精度提升但速度与复杂度需权衡 | mAP@0.5:0.95 62.6%,约74 FPS | 背景复杂、小目标漏检 | [23] |
| 改进YOLOv8 | YOLO+卷积改进 | 公开集 | 动态蛇形卷积与SPPF改进 | 对小目标更敏感但需验证泛化 | P、R、mAP分别提升2%~3% | 小目标、纹理弱、复杂背景 | [24] |
(arXiv)
围绕YOLO家族的技术演进,工业界与学术界的共同目标是将检测头、特征融合与训练策略持续优化,以在实时性与精度之间取得更优折中。[14] YOLOv6面向工业部署总结了量化、训练与结构的组合策略,并在速度与精度上给出明确的工程指标参照。[15] YOLOv7通过“可训练的bag-of-freebies”进一步提升了通用检测的性能上限,为轻量化与训练技巧的协同提供了经验范式。[16] Ultralytics YOLOv8在工程体系上推进了更统一的训练与推理接口,并被官方说明于2023年初发布以适配更广的任务组合。[17] YOLOv9引入可编程梯度信息与结构设计改进以提升参数利用效率,为后续端到端与注意力化方向提供了过渡方案。[18] YOLOv10从NMS-free与全局效率审视出发,强调端到端部署友好性并给出与RT-DETR的速度对比结论。[19] YOLOv12进一步以注意力机制为核心设计,报告了在T4上毫秒级延迟与mAP提升的量化结果。[21]
(Zenodo)
在系统与部署趋势上,研究关注点正从“单次离线评测”走向“端侧可用、可解释、可追溯”的闭环工程化能力。[12] 一方面,端到端检测器通过减少后处理环节来压缩推理尾延迟,从而更贴合视频流实时预警需求。[12] 另一方面,ONNX等互操作格式与TensorRT等推理优化工具使得模型能够在不同硬件与运行时环境中获得更稳定的吞吐与延迟表现。[25] 在交通标志这一强工程约束任务中,国内也涌现出围绕雾天鲁棒、小目标检测头与损失函数改进的实证研究,为“场景难点对症下药”的系统设计提供了可复现依据。[22]
(arXiv)
2.3 要解决的问题及其方案
本系统面向“基于深度学习的交通标志识别”实际落地,核心问题可归纳为以下四点。(1)检测与识别的准确性与实时性难以同时满足,尤其在小目标、运动模糊与反光场景下容易出现漏检与误检。[22](2)跨城市、跨时段与跨天气的数据分布差异显著,模型在新场景下的泛化能力与鲁棒性需要通过数据与训练策略共同保障。4(3)桌面端交互需要在不增加理解成本的前提下提供清晰可解释的可视化能力,并支持参数调节、目标高亮与结果复查等完整链路。3(4)数据处理与本地存储既要高效,也要满足可追溯与安全性需求,避免结果散落与难以复现的问题。2
(OE Journal)
针对上述问题,本文给出与系统实现紧密耦合的解决方案如下。(1)以YOLO系列为检测核心,组织YOLOv5至YOLOv12等模型的训练与推理对比,并结合小目标增强与阈值调参机制兼顾精度与帧率。[21](2)围绕交通标志的反光、遮挡与长尾分布,采用数据增强、迁移学习与多源数据验证等策略提升跨场景稳定性。[22](3)基于PySide6/Qt构建桌面端交互闭环,将图像、视频与摄像头输入统一到同一推理与可视化流程中,并提供置信度与阈值参数的同步调节与结果导出能力。[25](4)通过标准化的结果记录与本地数据库管理实现可追溯存储,并结合统一命名规则与批量导出机制提升复查与回流效率。2
(arXiv)
2.4 博文贡献与组织结构
本文的主要贡献体现在以下几个方面。(1)围绕交通标志小目标与复杂光照等任务难点,系统梳理从传统两阶段到端到端实时检测的代表性方法,并结合公开数据集与工程指标分析其适配性。[12](2)面向YOLOv5至YOLOv12的技术脉络,给出多模型对比与选型依据,并将注意力化与NMS-free等趋势与实时部署需求对齐。[21](3)完成一个可交互的Qt桌面端识别系统设计,将多源输入、参数调节、可视化解释、结果导出与本地存储纳入统一闭环以支撑研发与验收。[25](4)结合国内外在交通标志场景上的改进实证工作,讨论小目标检测头、特征融合与损失设计对漏检误检的影响,并为后续扩展提出可操作的方向。[22]
(arXiv)
全文组织如下:第3章介绍交通标志数据集的采集、标注、清洗与增强策略,并给出类别分布与划分设置;第4章围绕YOLO检测器给出模型结构、损失函数与训练策略的要点,并说明与小目标、反光与遮挡难点的对应关系;第5章汇报多模型对比实验与可视化评估结果并进行误差分析;第6章从分层架构角度描述Qt桌面端系统设计与关键流程;第7章总结系统效果并展望轻量化部署与持续学习的改进方向。3
(CVF Open Access)
3. 数据集处理
在进入本章之前,建议读者先准备并核对几类关键信息:数据集样例可视化截图、训练/验证/测试划分数量、标注格式(如 YOLO 或 COCO)、类别清单、预处理与增强策略说明,以及类别分布与目标框分布统计图等材料,便于后续训练复现与误差归因。本文当前已给出两张训练批次样例图与一张目标框相关性分布图,同时明确了数据规模与划分(共 7444 张,其中 6516 张训练、632 张验证、296 张测试),并提供了 11 个类别的中英文对照;若需要严格复现实验流程,仍建议补充“标注格式与增强策略”的最终版本说明,以避免不同训练配置带来不可比的结果。标签及其对应中文名如下:
Chinese_name = {'40 Limit': "限速40", '50 Limit': "限速50", '60 Limit': "限速60", '70 Limit': "限速70",
'80 Limit': "限速80", 'Give way': "注意让行", 'No Entry': "禁止驶入", 'Parking': "泊车",
'Pedestrian': "行人", 'Roundabout': "环形交叉", 'stop': "停车"}

从数据内容上看,本数据集覆盖常见交通标志的限速与指示/禁令类目标,类别集合包括:限速40、限速50、限速60、限速70、限速80、注意让行、禁止驶入、泊车、行人、环形交叉与停车(共 11 类)。样例图中可见标志在远距离道路场景中经常以小目标形式出现,且存在雨雪噪点、逆光反光、运动模糊与背景纹理干扰等复杂成像条件;同时,限速类之间属于典型细粒度相似类别,数字区域与边缘细节对分类判别更敏感,这对标注框的紧致度、分辨率与训练时的尺度策略提出更高要求。数据划分方面,为保证各模型对比的公平性,后续实验固定使用该训练/验证/测试划分,并在同一划分上完成 YOLOv5–YOLOv12 的训练与评测,避免因重采样导致的方差干扰。
在标注与预处理层面,系统侧推理通常会将输入统一到固定尺度(如 640×640)以兼顾速度与精度,并在推理后进行坐标还原与可视化叠加,因此数据侧也应保持与训练框架一致的坐标规范(例如采用归一化中心点与宽高的 YOLO 标注形式),同时对异常标签进行清洗(如越界框、零面积框与明显错标)。从目标框分布图可观察到中心点分布更集中于图像中部区域、宽高整体偏小且长尾明显,这符合“道路中远距小目标为主、偶有近景大标志”的数据特征;针对这一点,训练阶段通常需要通过多尺度训练与针对小目标的增强策略提升召回,例如在保证标注一致性的前提下采用随机缩放裁剪、轻度模糊/噪声扰动、颜色与曝光抖动、以及有助于密集小目标学习的拼接类增强等,以分别对抗反光、遮挡、尺度变化与低对比度带来的漏检风险,并缓解细粒度类别在复杂成像下的判别不稳定问题。
4. 模型原理与设计
本文以 YOLOv12 作为交通标志识别系统的主线检测器,其核心定位是“单阶段、密集预测、端到端可部署”的实时目标检测框架:输入图像经过统一尺度的预处理后,由骨干网络提取多层语义特征,颈部网络完成多尺度融合,检测头在多个特征层上同时输出类别置信与边界框回归结果,从而在一帧内完成“找标志 + 判类别”的联合推断。相较于两阶段方法在候选区域生成与多次特征对齐上的开销,YOLOv12的设计更贴合车载与边缘端对低延迟的约束,并将工程侧的可视化框叠加与交互调参(Conf/IoU)自然纳入推理闭环。YOLOv12在公开基准上给出的延迟—精度权衡显示其在实时检测场景具备竞争力,这也为交通标志这类“小目标多、需在线响应”的任务提供了选择依据。
从结构上看,YOLOv12的关键变化在于“以注意力为中心但仍保持实时性”的骨干与模块化设计:一方面引入面积注意力(Area Attention, A2)以维持较大的有效感受野,同时通过区域划分降低传统全局注意力的计算与访存压力;另一方面以 R-ELAN(Residual Efficient Layer Aggregation Networks)改善深层注意力模型的优化稳定性,通过块级残差与缩放等策略缓解梯度传递不畅的问题,并配合 FlashAttention 等实现细节降低注意力机制的内存访问瓶颈。 直观地说,A2 与 R-ELAN 更像是“为实时检测重新改造注意力与特征聚合”,其目标是让模型在复杂天气噪点、反光高亮、尺度剧烈变化与遮挡场景下获得更强的上下文建模能力,同时不过度牺牲推理速度。网络整体架构图如下图所示(示意图展示了 YOLOv12 的 backbone/head 组织方式与多尺度输出思路)。
在任务建模与损失设计上,交通标志检测的关键在于小目标定位与细粒度类别判别的同步收敛,因此训练通常采用“分类损失 + 边框回归损失”的组合,并在回归端使用 IoU 系列度量来对齐几何一致性。常用 IoU 定义为
I o U ( B , B ^ ) = ∣ B ∩ B ^ ∣ ∣ B ∪ B ^ ∣ , \mathrm{IoU}(B,\hat{B})=\frac{|B\cap \hat{B}|}{|B\cup \hat{B}|}, IoU(B,B^)=∣B∪B^∣∣B∩B^∣,
其中 (B) 与 ( B ^ \hat{B} B^) 分别表示标注框与预测框;为了在小目标与尺度变化场景下获得更稳定的梯度,实际训练中常将回归项替换为 CIoU/EIoU 等改进形式,例如 CIoU 可写作
L ∗ C I o U = 1 − I o U + ρ 2 ( c , c ^ ) d 2 + α v , \mathcal{L}*{\mathrm{CIoU}} = 1-\mathrm{IoU}+\frac{\rho^2(\mathbf{c},\hat{\mathbf{c}})}{d^2}+\alpha v, L∗CIoU=1−IoU+d2ρ2(c,c^)+αv,
其中 ( c , c ^ \mathbf{c},\hat{\mathbf{c}} c,c^) 为框中心点,( ρ ( ⋅ ) \rho(\cdot) ρ(⋅)) 表示欧氏距离,(d) 为外接框对角线长度,(v) 则刻画宽高比一致性、( α \alpha α) 为权重系数。分类端通常使用二元交叉熵或其变体以适配长尾与难例学习,整体损失可概括为
L = λ ∗ c l s L ∗ c l s + λ ∗ b o x L b o x , \mathcal{L}= \lambda*{\mathrm{cls}}\mathcal{L}*{\mathrm{cls}}+\lambda*{\mathrm{box}}\mathcal{L}_{\mathrm{box}}, L=λ∗clsL∗cls+λ∗boxLbox,
并通过权重系数平衡“错分/混淆(如限速数字相近)”与“漏检(远距小标志)”之间的训练侧偏好。
训练与推理策略方面,为适配雨雪噪点、反光与运动模糊等真实道路扰动,模型通常配合多尺度训练与颜色/曝光扰动等增强手段提升鲁棒性,并在优化器与学习率策略上强调稳定收敛,避免注意力模块引入的训练不稳定风险;这一点与 YOLOv12在设计层面强调“优化友好”的初衷是一致的。 推理阶段则以置信度阈值与 NMS(或等价抑制策略)控制误检扩散:当阈值偏低时更易召回远距小标志但可能引入背景误检,当阈值偏高时可提升精确率但更易漏掉模糊或被遮挡目标;因此本文系统将 Conf/IoU 作为可交互参数暴露给桌面端,以便在不同光照与不同道路纹理下快速找到“可用的工作点”。
5. 实验结果与分析
本章实验目标是从“精度指标 + 工程效率”两条线同时评价交通标志检测器的可用性:精度侧采用 Precision、Recall、F1、mAP50 与 mAP50-95,效率侧统计参数量 Params、计算量 FLOPs,并将端到端耗时拆解为预处理 PreTime、推理 InfTime 与后处理 PostTime。所有结果均在 NVIDIA GeForce RTX 3070 Laptop GPU(8GB 显存)上测得,便于与桌面端实时推理需求直接对齐;其中 n 系列更偏轻量实时,s 系列在容量与精度之间提供更高上限,二者共同覆盖从“交互演示/摄像头在线”到“离线批处理/更稳健识别”的典型使用场景。
下表汇总了 16 个模型在本数据集上的关键结果。整体看,所有模型的 mAP50 都接近饱和(约 0.989–0.996),说明在当前 11 类交通标志设定下,主流 YOLO 系列均能学到稳定的判别特征;真正拉开差距的往往是更严格的 mAP50-95 与端到端延迟。以 n 系列为例,YOLOv10n 在 mAP50-95 上达到 0.9130,为该组最佳,同时其 PostTime 仅 0.63ms,体现出更“轻后处理”的工程优势;若追求纯推理速度,YOLOv6n 与 YOLOv8n 的 InfTime 最低(约 6.78–6.83ms),端到端总耗时分别约 10.34ms 与 10.17ms,更适合摄像头实时帧流。s 系列中,YOLOv9s 的 mAP50-95 达到 0.9208,为全表最高,但 InfTime 为 18.66ms,偏向“精度优先的离线或较低帧率在线”;YOLOv8s 的端到端总耗时约 11.39ms,同时 mAP50-95 也达到 0.9148,是更均衡的交互部署选择,而 YOLOv7 虽给出最高 mAP50(0.9964)与最高 F1(0.9886),但参数量与推理耗时显著增大(InfTime 23.62ms),更适合作为上限参照而非默认部署款。
| Model | 规模 | Params(M) | FLOPs(G) | Pre(ms) | Inf(ms) | Post(ms) | Precision | Recall | F1 | mAP50 | mAP50-95 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| YOLOv5nu | n | 2.6 | 7.7 | 1.90 | 7.73 | 1.31 | 0.9787 | 0.9701 | 0.9744 | 0.9895 | 0.9033 |
| YOLOv6n | n | 4.3 | 11.1 | 2.17 | 6.78 | 1.39 | 0.9687 | 0.9671 | 0.9679 | 0.9893 | 0.9043 |
| YOLOv7-tiny | n | 6.2 | 13.8 | 2.28 | 14.74 | 4.06 | 0.9751 | 0.9761 | 0.9756 | 0.9919 | 0.8785 |
| YOLOv8n | n | 3.2 | 8.7 | 1.95 | 6.83 | 1.39 | 0.9862 | 0.9727 | 0.9794 | 0.9913 | 0.9072 |
| YOLOv9t | n | 2.0 | 7.7 | 1.87 | 16.51 | 1.29 | 0.9770 | 0.9804 | 0.9787 | 0.9913 | 0.9113 |
| YOLOv10n | n | 2.3 | 6.7 | 2.08 | 11.24 | 0.63 | 0.9737 | 0.9739 | 0.9738 | 0.9907 | 0.9130 |
| YOLOv11n | n | 2.6 | 6.5 | 2.11 | 9.44 | 1.42 | 0.9914 | 0.9743 | 0.9828 | 0.9915 | 0.9087 |
| YOLOv12n | n | 2.6 | 6.5 | 1.91 | 12.47 | 1.37 | 0.9797 | 0.9751 | 0.9774 | 0.9923 | 0.9054 |
| YOLOv5su | s | 9.1 | 24.0 | 2.28 | 8.45 | 1.51 | 0.9852 | 0.9743 | 0.9797 | 0.9925 | 0.9138 |
| YOLOv6s | s | 17.2 | 44.2 | 2.22 | 8.59 | 1.45 | 0.9782 | 0.9654 | 0.9717 | 0.9892 | 0.9088 |
| YOLOv7 | s | 36.9 | 104.7 | 2.44 | 23.62 | 3.46 | 0.9875 | 0.9898 | 0.9886 | 0.9964 | 0.8952 |
| YOLOv8s | s | 11.2 | 28.6 | 2.31 | 7.66 | 1.42 | 0.9833 | 0.9780 | 0.9807 | 0.9929 | 0.9148 |
| YOLOv9s | s | 7.2 | 26.7 | 2.12 | 18.66 | 1.39 | 0.9790 | 0.9847 | 0.9818 | 0.9936 | 0.9208 |
| YOLOv10s | s | 7.2 | 21.6 | 2.21 | 11.38 | 0.60 | 0.9784 | 0.9752 | 0.9768 | 0.9893 | 0.9168 |
| YOLOv11s | s | 9.4 | 21.5 | 2.37 | 9.74 | 1.36 | 0.9789 | 0.9822 | 0.9805 | 0.9910 | 0.9184 |
| YOLOv12s | s | 9.3 | 21.4 | 2.09 | 13.23 | 1.42 | 0.9837 | 0.9791 | 0.9814 | 0.9920 | 0.9135 |

如图 5-1 所示,n 系列在 F1 与 mAP50 上整体差距极小,说明“能否识别出来”已不是主要瓶颈,更值得关注的是在 mAP50-95 与延迟上的取舍:当系统面向摄像头实时推理时,博主更倾向将 YOLOv6n/YOLOv8n 作为默认候选(更低 InfTime 与更短端到端链路),并在对远距小标志、雨雪噪点与遮挡更敏感的路段切换到 YOLOv10n 或 YOLOv11n 来获取更稳的几何定位与更高的精确率。进一步结合 F1-Confidence 曲线可以观察到整体最优 F1 出现在较高置信度阈值附近(约 0.79),这意味着在离线导出与批量处理场景中可适当提高 Conf 以减少背景误检,而在交互标注与快速排查阶段则可保持较低初始阈值以优先召回潜在目标,再通过高亮筛选与二次复核完成“可用工作点”的确定。

从错误类型看,归一化混淆矩阵如图 5-2 所示,对角线数值整体接近 1,说明绝大多数类别都能被稳定区分;相对更容易波动的往往是“形状相近、纹理依赖强”的限速类(数字区域对清晰度与反光更敏感)以及样本外观多变的类别(例如受遮挡或背景结构干扰时更容易被误判为背景或相近语义)。矩阵中“background 列/行”的非零项提示了少量背景误检与漏检:在雨雪噪点、路侧杆件、广告牌边缘等高频结构出现时,模型可能给出与交通标志边缘相似的响应,导致某些类别在高 Recall 区间 Precision 下降,这也与 PR 曲线在 Recall 接近 1 时出现的共同下坠趋势一致。结合这一现象,后续改进更建议从“数据难例补齐 + 小目标增强 + 更严格的后处理阈值策略”入手,而不是在已饱和的 mAP50 上继续做微小增量。
6. 系统设计与实现
6.1 系统设计思路
本系统采用分层架构组织桌面端交互与检测算法的协同关系,整体可划分为表现与交互层(PySide6/Qt 客户端)、业务与会话管理层、推理与任务调度层,以及数据持久化层。表现与交互层负责多源输入选择、阈值滑块调参、检测结果叠加显示与目标详情呈现,并通过底部记录区与进度条形成“可视化—可回溯”的用户闭环;业务与会话管理层在界面事件与推理任务之间提供源互斥、参数同步、记录编排与导出策略,使“同一套推理逻辑”可在图片、视频与摄像头三类输入下保持一致的交互体验。
在推理链路上,系统以“媒体接入—预处理—YOLO 推理—后处理—显示联动”为主干流水线,并采用事件驱动的帧流组织方式保障实时性与一致性:对视频与摄像头输入,读取与推理以帧为粒度进入队列调度,界面侧以信号/槽或等价机制接收结果并刷新显示,从而避免阻塞主线程导致的卡顿。Conf/IoU 等关键阈值参数由业务层统一维护并向推理层广播,确保同一时刻的阈值配置对后处理与可视化完全一致;同时,源切换采取互斥策略,保证推理引擎始终只服务于一种输入源,降低资源竞争与状态污染风险。
系统的可扩展性主要体现在“权重热切换、统计与导出、主题与配置本地化、异常恢复”四个方面:模型管理模块允许用户选择本地权重实现 YOLOv5–YOLOv12 的快速切换,并在切换后同步刷新类别与配色;结果侧提供 CSV 明细导出与带框 PNG/AVI 一键导出,并采用时间戳命名以支持溯源与批量管理;配置侧将主题、默认模型与最近记录等偏好进行本地持久化,使会话体验具有连续性;运行侧对读帧失败、空帧、推理异常与导出失败等状态进行可视化提示并允许恢复,保证系统在工程环境中的可用性与稳定性。

图 6-1 系统流程图
图注:系统自初始化加载配置与模型列表开始,完成多源输入的事件驱动帧流读取,经预处理、YOLO 推理与后处理后联动 Qt 界面;Conf/IoU 滑块、目标高亮、CSV/PNG/AVI 导出与时间戳归档贯穿闭环。

图 6-2 系统设计框图
图注:架构以“表现与交互层—业务与会话层—推理与任务调度层—数据持久化层”自上而下组织模块边界;数据流从多源媒体接入进入推理流水线,结果回流至 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 Stallkamp J, Schlipsing M, Salmen J, et al. The German Traffic Sign Recognition Benchmark: A multi-class classification competition[C]//Proceedings of the IEEE International Joint Conference on Neural Networks (IJCNN). 2011: 1453-1460.
2 Houben S, Stallkamp J, Salmen J, et al. Detection of traffic signs in real-world images: The German Traffic Sign Detection Benchmark[C]//2013 International Joint Conference on Neural Networks (IJCNN). 2013.
3 Zhu Z, Liang D, Zhang S, et al. Traffic-Sign Detection and Classification in the Wild[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR). 2016.
4 Ertler C, Mislej J, Ollmann T, et al. The Mapillary Traffic Sign Dataset for Detection and Classification on a Global Scale[J/OL]. arXiv:1909.04422, 2020.
5 Ren S, He K, Girshick R, et al. Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks[J/OL]. arXiv:1506.01497, 2015.
6 Liu W, Anguelov D, Erhan D, et al. SSD: Single Shot MultiBox Detector[C]//European Conference on Computer Vision (ECCV). Springer, 2016: 21-37.
7 Lin T Y, Goyal P, Girshick R, et al. Focal Loss for Dense Object Detection[J/OL]. arXiv:1708.02002, 2017.
8 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 (CVPR). 2020.
9 Tian Z, Shen C, Chen H, et al. FCOS: Fully Convolutional One-Stage Object Detection[J/OL]. arXiv:1904.01355, 2019.
[10] Zhou X, Wang D, Krähenbühl P. Objects as Points[J/OL]. arXiv:1904.07850, 2019.
[11] Carion N, Massa F, Synnaeve G, et al. End-to-End Object Detection with Transformers[J/OL]. arXiv:2005.12872, 2020.
[12] Zhao Y, Lv W, Xu S, et al. DETRs Beat YOLOs on Real-time Object Detection[J/OL]. arXiv:2304.08069, 2023.
[13] Ge Z, Liu S, Wang F, et al. YOLOX: Exceeding YOLO Series in 2021[J/OL]. arXiv:2107.08430, 2021.
[14] Jocher G, Chaurasia A, Qiu J, et al. YOLOv5[EB/OL]. Zenodo, 2020.
[15] Li C, Li L, Jiang H, et al. YOLOv6: A Single-Stage Object Detection Framework for Industrial Applications[J/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[J/OL]. arXiv:2207.02696, 2022.
[17] Ultralytics. Explore Ultralytics YOLOv8[EB/OL]. 2023.
[18] Wang C Y, Yeh I H, Liao H Y M. YOLOv9: Learning What You Want to Learn Using Programmable Gradient Information[J/OL]. arXiv:2402.13616, 2024.
[19] Wang A, Chen H, Liu L, et al. YOLOv10: Real-Time End-to-End Object Detection[J/OL]. arXiv:2405.14458, 2024.
[20] Ultralytics. Ultralytics YOLO11 Overview[EB/OL]. 2024.
[21] Tian Y, Ye Q, Doermann D. YOLOv12: Attention-Centric Real-Time Object Detectors[J/OL]. arXiv:2502.12524, 2025.
[22] 曲立国, 张鑫, 卢自宝, 等. 基于改进YOLOv5的交通标志识别方法[J]. 光电工程, 2024.
[23] 杨祥, 王华彬, 董明刚. 改进YOLOv5的交通标志检测算法[J]. 计算机工程与应用, 2023.
[24] 苟皓, 唐岚, 孟忠伟. 基于改进Yolov8的交通标志检测算法[J]. 智能系统学报相关刊物(在线版), 2024.
[25] Ultralytics. Model Export with Ultralytics YOLO[EB/OL]. 2024.
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐
所有评论(0)