基于深度学习的个人防具检测系统(YOLOv12完整代码+论文示例+多算法对比)
摘要:本文面向工地与工厂等安全生产场景,设计并实现一套基于深度学习的个人防具(PPE)检测系统,用于对安全帽、反光背心等佩戴合规性进行实时识别与可视化呈现。系统以 PySide6/Qt 构建桌面端交互界面,支持图片/视频/本地摄像头多源输入,提供处理进度条与耗时显示、Conf/IoU 阈值实时调节、目标选择与高亮、检测记录跨页共享与快速检索,并支持CSV 一键导出与带框结果一键导出(单帧 PNG / 多帧 AVI)。在数据与权限侧,系统采用SQLite 本地入库管理账户、检测记录与导出索引,提供登录/注册(可跳过)并保证会话范围内的配置与记录一致性;在算法侧覆盖 YOLOv5–YOLOv12(共 8 种),支持模型选择/权重加载(.pt 热切换),并对比 mAP、F1、PR 以及训练曲线等指标,为部署选型提供依据;数据与代码均可下载复现。文末提供完整工程与数据集链接。
文章目录
功能效果展示视频:热门实战|《基于深度学习的个人防具检测系统》YOLOv12-v8多版本合集:附论文/源码/PPT/数据集,支持图片/视频/摄像头输入、可视化界面、结果导出与权重切换
1. 系统功能与效果
(1)登录注册:系统启动后提供登录、注册与跳过入口,用户可选择进入个人空间或以访客方式快速体验;会话在本次运行周期内生效,便于统一管理阈值设置、导出偏好与历史记录。账户与记录采用本地 SQLite 持久化,口令校验与数据隔离提升使用安全性,同时保留“一次性跳过”以兼顾现场部署的便捷性。
(2)功能概况:进入主界面后,用户遵循“概览—检测入口—模型选择—结果导出”的动线完成一次完整检测闭环,界面布局围绕左侧数据源与阈值、中部显示区、右侧目标详情、底部记录与进度信息组织。系统支持快速定位最近一次检测任务与导出条目,并通过表格高亮与筛选帮助用户回溯关键帧或关键图片,保证复核效率与操作一致性。
(3)选择模型:用户可在界面中选择不同 YOLO 系列模型并加载本地权重文件,实现 .pt 级别的热切换;切换后类别名称与可视化配色同步刷新,避免“模型变了但显示没变”的认知错位。常用配置(如主题样式、阈值初值与标题文本等)在本地持久化保存,使得不同岗位或不同项目的偏好能够稳定复用。
(4)图片检测:系统支持单张图片与图片目录的检测流程,推理完成后在主显示区叠加目标框,并以“类别名+置信度”的形式直观呈现检测结果;用户可通过 Conf/IoU 调节快速平衡误检与漏检。对检测到的目标可进行选择与高亮联动查看,底部检测记录与右侧详情在同一套数据结构下共享,便于跨页面复查与对比。
带防具检测效果
未带防具检测效果

(5)文件保存:检测结果支持一键导出为结构化 CSV 以及带框可视化文件,单帧保存为 PNG,多帧结果可按序列导出为 AVI,满足留证与复核需求。所有导出文件采用时间戳命名并统一归档,配合按文件名检索与记录表定位,可快速追溯“哪次检测、用的哪套模型、导出了哪些证据”,提升批量管理与审计友好性。
2. 绪论
2.1 研究背景及意义
在施工、制造与能源等高风险场景中,个人防具(如安全帽、反光背心、护目镜、手套与安全鞋等)的规范佩戴是降低伤害概率的最后一道防线,但传统依赖人工巡检与事后抽查的方式往往难以覆盖高频、多工位与跨班组的真实作业过程。1 随着现场摄像头密度提升与边缘算力下沉,基于视觉的自动化检测逐渐成为安全管理的关键抓手,其中以单阶段检测为代表的 YOLO 系列在速度与精度之间提供了更贴近工程落地的折中。[2]
从算法层面看,个人防具检测既要识别“是否佩戴”,又常常要区分“佩戴不规范”与“缺失”,并在复杂背景、强反光与遮挡情况下保持稳定输出,这使得类别不均衡与易混淆目标成为训练阶段的核心矛盾之一。[3] 从系统层面看,安全管理并不只需要一个离线模型分数,更需要“可追溯、可复核、可导出”的证据链,包括框选可视化、记录管理、批量导出与统一归档,这些能力决定了算法是否能真正进入日常流程。[4]
因此,本文面向“深度学习个人防具检测系统”的完整闭环需求,强调目标检测算法与桌面端交互的一体化设计:既在模型侧关注小目标与遮挡下的鲁棒性,也在产品侧强调多源输入、实时调参、结果归档与审计友好,形成可持续迭代的数据反馈机制。[5]
2.2 国内外研究现状
面向工业与施工现场的个人防具检测,任务难点通常集中在三类:其一,目标尺度跨度大且小目标占比高,安全帽、护目镜等在远景下仅占少量像素,容易在下采样与特征融合过程中被淹没。[4] 其二,遮挡与密集目标普遍存在,人员聚集、工具遮挡和姿态变化会导致边界框回归不稳定,并放大漏检风险。[5] 其三,光照变化与反光干扰显著,室外强光、夜间低照与金属反射会造成纹理退化与伪边缘,进一步提升误检与错检概率。[6]
围绕上述问题,研究者首先在数据与任务定义上不断细化“合规检测”的颗粒度,逐步从“是否佩戴”扩展到“缺失类别”与“多品类同时检测”。[13] 例如,SH17 数据集以制造业场景为背景,提出了覆盖多类 PPE 的标注与基准评测,并报告了在该场景上的检测基线表现,为跨域泛化与长尾类别分析提供了更贴近生产的对照坐标系。[13] 在安全帽细分任务上,也有工作通过结构改造与损失设计提升复杂背景下的小目标检出能力,并在公开数据集上给出可复现实验结果。[12]
在算法范式上,主流方法大体沿着“两阶段更稳、单阶段更快”的框架演进,并在工程落地中呈现出向单阶段与端到端方案倾斜的趋势。1 在单阶段体系内,Anchor-free 思路通过直接预测中心点与边界回归,减少锚框超参数依赖,在小目标密集与尺度变化场景中具有更直接的适配性。[4] 与此同时,IoU 系列回归损失通过引入中心距离、长宽比等几何约束,能够在遮挡与截断条件下提供更稳定的定位梯度,常被用于提升安全帽、背心等规则目标的框回归质量。[5]
在 YOLO 家族的技术演进方面,从工程可用性与生态成熟度出发,YOLOv5 与 YOLOv8 在训练、导出与部署链路上形成了较稳定的实践范式,适合作为系统工程的基础版本进行二次开发与对比。[7] 随后,实时检测研究进一步向端到端与去后处理方向推进,典型代表是 YOLOv10 通过 NMS-free 训练与效率驱动的结构设计,给出了明确的延迟与参数量对照表,为“同等精度下更低时延”的目标提供了可核对的证据。[11] 更近一步的 YOLOv12 则将注意力机制以实时友好的方式引入 YOLO 框架,并报告了在 T4 上的推理延迟与 COCO 精度,体现出“性能提升不以牺牲速度为代价”的设计取向。[15]
除 YOLO 外,Transformer 检测器以集合预测与二分匹配为核心,强调端到端训练与全局建模能力,但其在密集目标与实时约束下的效率瓶颈仍需通过结构裁剪与监督增强来缓解。[6] DETR 的提出为端到端检测奠定了统一框架,而后续实时 DETR 路线通过编码器设计与查询筛选策略进一步逼近 YOLO 系列的速度区间。[10] 在系统侧,研究趋势也从“单次推理”走向“在线可视化与可追溯机制”,包括统一导出、批处理复核、日志化评测与数据回流,从而支撑安全管理的闭环治理与持续迭代。[16]
下表给出与本文系统更贴近的代表性方法对比,用于从范式、指标与适用难点角度建立“为什么选 YOLO、为何重点关注 v5–v12”的对照基础。
| 方法名称 | 范式/家族 | 数据集 | 关键改进技术 | 优势与局限性 | 关键性能指标(示例) | 适用场景或对应任务难点 |
|---|---|---|---|---|---|---|
| YOLOv5(工程基线) | 单阶段、Anchor-based、YOLO | 自建/行业数据 | 训练与部署链路成熟、易于迁移 | 生态成熟但对极端小目标仍需增强 | 可达实时推理与较高 mAP(依实现而定) | 适合系统集成与快速迭代验证[7] |
| YOLOv8(工程基线) | 单阶段、Anchor-free/解耦头、YOLO | 自建/行业数据 | 解耦头与更友好的训练导出接口 | 易用性强,复杂场景需更强特征融合 | 工程上常作为轻量端侧基线 | 适合多源输入与在线调参的产品化落地[8] |
| 改进 YOLOv5 安全帽检测 | 单阶段、YOLO | 安全帽场景数据 | 针对实时性与检测稳定性优化 | 针对单类或少类任务,泛化需评估 | 报告 mAP 98.5%、60 f/s | 小目标安全帽与现场实时巡检[9] |
| 改进 YOLOv8 安全帽佩戴检测 | 单阶段、YOLO | SHWD | 注意力与池化结构增强、损失改造 | 对复杂背景更稳,但改造成本更高 | 报告 mAP 提升至 92.0% | 复杂背景与远距小目标安全帽识别[12] |
| YOLOv10-N / S | 单阶段、端到端、YOLO | COCO | NMS-free 训练与效率驱动结构设计 | 时延优势明显,需适配业务标签体系 | 表中给出 AP、延迟、参数量对照 | 追求低延迟的在线视频与摄像头流[11] |
| YOLOv12-N | 单阶段、注意力增强、YOLO | COCO | 注意力中心的实时检测框架 | 强建模能力与实时性兼顾 | 报告 40.6% mAP、1.64 ms | 兼顾精度与时延的在线合规检测[15] |
| 端到端实时 DETR 路线(RT-DETR 等) | Transformer、端到端 | COCO | 编码器效率优化与查询策略改进 | 端到端友好但训练与部署更复杂 | 常以 AP 与端侧延迟权衡 | 希望减少后处理、强调全局建模的场景[10] |
| YOLOv8 多尺度融合 PPE 检测 | 单阶段、YOLO | 自建矿山数据 | 多尺度注意力与低照增强模块 | 面向复杂光照,工程模块较多 | 报告 94.7% 准确率、85 FPS、2.5M 参数 | 低照、眩光与多类 PPE 同时检测[14] |
2.3 要解决的问题及其方案
围绕“个人防具检测系统”从算法到桌面端闭环落地,本文需要解决的问题主要体现在四个方面:(1)检测准确性与实时性难以兼得,既要在摄像头视频流上保持稳定帧率,又要减少安全帽、背心等关键目标的漏检与误检。(2)模型对环境变化的适应性不足,施工现场与厂区在光照、反光、遮挡与背景纹理上差异显著,跨场景泛化与长尾类别稳定性是上线后的主要风险。(3)桌面端交互需要同时满足“易用”和“可复核”,包括多源输入互斥切换、阈值调参即时生效、目标高亮与类别详情联动,以及对历史检测记录的快速定位。(4)数据处理效率与存储安全性需要工程化保证,既要支持批量任务与导出归档,也要保证本地账户与检测结果记录可追溯、可审计、可恢复。
针对上述问题,本文给出相应方案并在工程中落地:(1)以 YOLOv12 作为核心检测模型,并对 YOLOv5 至 YOLOv12 多版本进行对比评测,在统一输入尺度与同一评测指标下寻找精度与速度的更优折中。(2)基于 PyTorch 完成训练与推理链路,结合数据增强与迁移学习提升复杂光照与遮挡条件下的鲁棒性,并通过阈值策略与后处理配置降低误检传播。(3)前端采用 PySide6/Qt 实现桌面交互,将推理、可视化与导出编排打通,支持图片、视频与本地摄像头输入,并提供模型权重热切换以适配不同现场需求。(4)在数据与结果层面引入缓存与统一命名归档策略,配合 SQLite 的本地持久化管理提升记录检索与权限隔离能力,同时在 PyCharm 环境下完成调试、测试与可复现工程组织。
2.4 博文贡献与组织结构
本文的主要贡献体现在以下几个方面:(1)面向个人防具合规检测的真实落地需求,结合实时性、遮挡与光照变化等难点,给出以 YOLO 系列为主线的研究脉络与工程选型依据。(2)围绕 YOLOv12 进行训练与推理链路搭建,并对 YOLOv5 至 YOLOv12 的多版本模型进行统一指标对比分析,为不同算力与场景提供可参考的部署建议。(3)实现美观且可复核的桌面端交互系统,覆盖多源输入、阈值联动、目标高亮、记录检索与批量导出等完整闭环,强调可追溯与可复查的安全管理体验。(4)沉淀一套“评测与数据回流”的系统化工程实践,为后续持续标注、模型迭代与场景扩展提供基础支撑。
全文组织上,后续章节将依次介绍数据集处理与标注规范、YOLOv12 的原理与关键设计、不同 YOLO 版本的实验对比与误差分析,以及 Qt 桌面端的系统架构、交互逻辑与本地化持久化方案,最终在结论中总结系统有效性并展望轻量化、多模态与持续学习方向。
3. 数据集处理
本系统的数据集面向施工与制造等安全生产场景的个人防具(PPE)合规检测,样例可见同时包含室内厂区与室外作业环境、不同拍摄距离与视角、以及一定比例的遮挡与光照变化;部分画面还出现装备近景与宣传物等“非典型背景”,对模型的鲁棒性提出更高要求。数据标注围绕“人”与“防具/未佩戴状态”两条主线组织,共 9 个类别,标签及其对应中文名如下:
Chinese_name = { "Gloves": "手套", "Helmet": "头盔", "Non-Helmet": "无头盔","Person": "人",
"Vest": "背心", "mask": "口罩","non_gloves": "无手套","non_mask": "无口罩", "non_vest": "无背心"}

从规模与划分看,数据集共 4713 幅图像,其中训练集 4287 幅、验证集 385 幅、测试集 41 幅,整体更偏向训练充分与验证调参驱动的工程设置,测试集则更适合用于最终版本的抽检对比与回归验证。结合框分布相关图可以观察到目标框中心点覆盖范围较广且宽高呈明显长尾,小目标占比突出,这与监控视角下“远距人员与细小防具(如口罩、手套)易丢失细节”的客观情况一致;同时,多人同框与装备重叠会带来强重叠框与密集目标,使后处理阈值(Conf/IoU)对漏检与误检的影响更敏感,这也为系统侧提供在线调参与目标选择高亮的交互设计提供了数据依据。
在训练前的数据处理上,建议对全量标注进行一致性校验,重点核对“Non-Helmet/non_vest/non_mask/non_gloves”等负类的判定边界,避免同一场景下规则不统一导致模型学习到冲突监督;同时对极端过曝、严重模糊、旋转异常或重复帧进行清洗,降低噪声样本对收敛的干扰。针对遮挡、尺度变化与反光等难点,训练阶段可采用以多尺度与外观扰动为核心的增强组合,例如随机缩放裁剪以提升部分可见目标的学习概率、颜色与对比度扰动以模拟强光与阴影、轻量模糊与噪声以适配视频帧压缩伪影,并在数据划分时固定随机种子以保证可复现;最终将桌面端导出的带框结果与 CSV 记录作为“误检/漏检样本池”回流到数据集迭代中,可形成持续标注与再训练的闭环,从而稳步提升现场部署的可靠性。
4. 模型原理与设计
本文的检测算法主线以 YOLOv12 为核心,并将其放在“单阶段实时检测器”的统一框架下理解:网络直接在多尺度特征图上同时完成分类与边界框回归,从而在摄像头流等低时延场景中兼顾吞吐与精度。与两阶段方法依赖候选框生成不同,YOLO 系列更强调端到端的密集预测与工程化部署友好,而 YOLOv12 的关键变化在于将“注意力机制”以更适配实时性的方式引入骨干与特征融合路径,试图在不显著牺牲速度的前提下增强全局建模能力与遮挡条件下的判别性。该思路对个人防具检测尤为贴合:安全帽、口罩、手套等常以小目标形态出现,且易被遮挡与反光干扰,模型需要更强的上下文整合来抑制伪目标并提升弱纹理目标的召回。
从结构上看,YOLOv12 仍可按“骨干(Backbone)—颈部(Neck)—检测头(Head)”三段来描述:骨干负责逐级下采样提取语义特征,颈部通过自顶向下与自底向上的多尺度融合(常见为 FPN/PAN 风格的路径聚合)将细粒度定位信息与高层语义对齐,检测头则在多个尺度输出候选框与类别分数。YOLOv12 的注意力中心设计主要体现在两处:一是采用更高效的区域/局部注意力以扩大有效感受野并降低计算开销,二是通过残差化的高效层聚合结构缓解注意力堆叠带来的优化难题,并结合 FlashAttention 等实现层优化降低注意力的显存与访存瓶颈。以经典自注意力为例,其基本形式可写为
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 ∈ R N × d Q,K,V\in\mathbb{R}^{N\times d} Q,K,V∈RN×d 分别为查询、键和值, N N N 表示 token(或展平后的空间位置)数量, d d d 为通道维度;而在区域注意力中可将特征划分为若干区域并在区域内计算注意力,从而将计算从全局的 O ( N 2 ) O(N^2) O(N2) 压缩到若干局部子问题的叠加,更适合实时检测的预算约束。网络整体架构图如下图所示:
在任务建模与损失设计上,个人防具检测通常采用“分类损失 + 边界框回归损失”的联合优化,并通过 IoU 系列损失强化定位质量以降低遮挡与密集场景下的框漂移。以 CIoU 为代表的几何约束形式可写为
L C I o U = 1 − I o U + ρ 2 ( b , b g t ) c 2 + α v , \mathcal{L}_{\mathrm{CIoU}}=1-\mathrm{IoU}+\frac{\rho^2(\mathbf{b},\mathbf{b}^{gt})}{c^2}+\alpha v, LCIoU=1−IoU+c2ρ2(b,bgt)+αv,
其中 I o U \mathrm{IoU} IoU 为预测框与真值框的交并比, ρ ( ⋅ ) \rho(\cdot) ρ(⋅) 表示两框中心点的欧氏距离, c c c 为最小外接框对角线长度, v v v 衡量长宽比一致性, α \alpha α 为平衡系数;该损失在“目标被部分遮挡但中心仍可定位”的情况下更稳定,有助于提升安全帽、口罩等小目标的框回归可靠性。对分类分支而言,若数据存在明显长尾(例如“未佩戴”样本比例与场景分布偏置),常会配合更稳健的样本分配与难例抑制策略,以避免模型被少数高频背景模式牵引而产生系统性误检。
训练与推理策略需要与本任务的难点一一对应:在训练端,批归一化与残差连接用于稳定优化,数据增强(如多尺度、颜色扰动与适度的混合增强)用于覆盖光照变化、反光与遮挡带来的分布漂移,同时应避免过强增强破坏“未佩戴类”的判定边界,使负类学习变得含糊。推理端通常以置信度阈值 τ c \tau_c τc 过滤低质量候选,再以 IoU 阈值 τ n m s \tau_{nms} τnms 执行重叠抑制以应对多人同框与装备重叠:当 I o U ( b i , b j ) > τ n m s \mathrm{IoU}(b_i,b_j)>\tau_{nms} IoU(bi,bj)>τnms 且 s j < s i s_j<s_i sj<si 时抑制 b j b_j bj,其中 s s s 为类别置信度;这解释了系统界面中提供 Conf/IoU 在线调参的必要性——在“强遮挡/小目标”场景适当降低 τ c \tau_c τc 有助于提升召回,而在“反光/复杂背景”场景提高 τ c \tau_c τc 与收紧 τ n m s \tau_{nms} τnms 往往能更有效抑制伪框,从而让导出的 CSV 与带框证据更符合现场复核与留证需求。
5. 实验结果与分析
本章实验目标是在同一数据划分与统一推理流程下,对 YOLOv5–YOLOv12 共 8 种模型进行横向对比,给出个人防具检测任务在“精度指标(Precision/Recall/F1、mAP@0.5、mAP@0.5:0.95)”与“端到端时延(Pre/Inf/Post)”之间的权衡结论,并为桌面端的默认阈值与模型选型提供依据。所有结果均在 NVIDIA GeForce RTX 3070 Laptop GPU(8GB)上统计,时延以毫秒计,分别对应预处理、网络推理与后处理三个阶段;在桌面端实际体验中,三者之和更接近用户感知到的单帧耗时,而 PostTime 的差异会直接影响视频/摄像头流的稳定帧率与“停止/切换源”的响应性。
下表汇总了 n 规格(轻量)与 s 规格(小型)模型的核心指标。整体看,n 规格中 YOLOv12n 以更高的 Precision(0.887)带来最高的 F1(0.839),YOLOv9t 则取得最高的 mAP50(0.875)与 mAP50-95(0.585),但二者推理时延显著高于 YOLOv6n/YOLOv8n;若以实时部署为第一优先,YOLOv8n 在 6.83ms 推理时延下仍保持 0.832 的 F1 与 0.859 的 mAP50,是更均衡的候选。s 规格中,YOLOv8s 以最快推理(7.66ms)取得最高 F1(0.836),YOLOv9s 取得最高 mAP50-95(0.590)但推理时延较大,更适合作为离线质检或“高精度复核模式”的模型配置。
| 组别 | 模型 | Params(M) | FLOPs(G) | InfTime(ms) | Precision | Recall | F1 | mAP50 | mAP50-95 |
|---|---|---|---|---|---|---|---|---|---|
| n | YOLOv5nu | 2.6 | 7.7 | 7.73 | 0.870 | 0.790 | 0.828 | 0.853 | 0.560 |
| n | YOLOv6n | 4.3 | 11.1 | 6.78 | 0.854 | 0.780 | 0.815 | 0.838 | 0.543 |
| n | YOLOv7-tiny | 6.2 | 13.8 | 14.74 | 0.793 | 0.681 | 0.733 | 0.805 | 0.476 |
| n | YOLOv8n | 3.2 | 8.7 | 6.83 | 0.874 | 0.794 | 0.832 | 0.859 | 0.568 |
| n | YOLOv9t | 2.0 | 7.7 | 16.51 | 0.867 | 0.812 | 0.838 | 0.875 | 0.585 |
| n | YOLOv10n | 2.3 | 6.7 | 11.24 | 0.846 | 0.804 | 0.824 | 0.848 | 0.568 |
| n | YOLOv11n | 2.6 | 6.5 | 9.44 | 0.865 | 0.810 | 0.836 | 0.859 | 0.570 |
| n | YOLOv12n | 2.6 | 6.5 | 12.47 | 0.887 | 0.795 | 0.839 | 0.858 | 0.578 |
| s | YOLOv5su | 9.1 | 24.0 | 8.45 | 0.884 | 0.778 | 0.828 | 0.860 | 0.562 |
| s | YOLOv6s | 17.2 | 44.2 | 8.59 | 0.818 | 0.790 | 0.804 | 0.831 | 0.549 |
| s | YOLOv7 | 36.9 | 104.7 | 23.62 | 0.668 | 0.875 | 0.758 | 0.873 | 0.573 |
| s | YOLOv8s | 11.2 | 28.6 | 7.66 | 0.874 | 0.801 | 0.836 | 0.853 | 0.567 |
| s | YOLOv9s | 7.2 | 26.7 | 18.66 | 0.835 | 0.832 | 0.833 | 0.873 | 0.590 |
| s | YOLOv10s | 7.2 | 21.6 | 11.38 | 0.842 | 0.826 | 0.834 | 0.860 | 0.586 |
| s | YOLOv11s | 9.4 | 21.5 | 9.74 | 0.873 | 0.799 | 0.835 | 0.861 | 0.584 |
| s | YOLOv12s | 9.3 | 21.4 | 13.23 | 0.861 | 0.807 | 0.833 | 0.857 | 0.575 |

从“端到端体验”角度进一步看,n 规格里 YOLOv6n、YOLOv8n 的推理延迟最低(约 6.8ms),加上约 2ms 的预处理与约 1.4ms 的后处理,单帧总耗时可稳定在 10–11ms 区间,更适合摄像头实时巡检与视频流顺滑播放;YOLOv10n/YOLOv10s 的 PostTime 仅约 0.6ms,说明其后处理负担更小,在高分辨率视频或多路流扩展时更有潜力,但当前精度并未形成“明显领先”,更适合在系统侧作为“轻后处理优先”的备选。精度侧,YOLOv9t/YOLOv9s 的 mAP50 与 mAP50-95 领先,反映其对定位质量与中高 IoU 阈值更友好,但代价是推理时延显著上升;因此在桌面端的产品化策略上更合理的做法是提供两档默认:实时监控优先选择 YOLOv8n(或 YOLOv6n),离线复核/导出留证优先选择 YOLOv9t/YOLOv9s 或 YOLOv12n,以满足“先发现、后确认”的安全管理流程。
进一步从类别层面分析,以给出的 PR 曲线为例,全类 mAP@0.5 为 0.857,其中 mask(0.989)、Person(0.906)与 Helmet(0.905)表现更稳定,而 Gloves(0.765)与 non_vest(0.700)相对偏低,这与小目标、易遮挡以及“未佩戴类”边界更模糊的属性一致;混淆矩阵中 non_vest 的对角线值也明显低于多数正类,提示该类更容易被背景或相邻类别吸收。
F1-Confidence 曲线给出了一个非常直接的工程结论:全类最优 F1 约为 0.83,出现在置信度阈值约 0.255 附近,这与系统初始 Conf=0.25 的交互设计高度一致,意味着默认值已经接近“全局均衡点”;当现场更强调“不漏报”时可略降 Conf 以抬高召回,但对 Gloves、non_vest 这类弱项类别会带来更明显的误检扩散,因此更推荐在桌面端配合“目标选择与高亮复核”与“导出前二次筛选”来降低风险。
6. 系统设计与实现
6.1 系统设计思路
本系统以“桌面端交互驱动的实时检测闭环”为目标,采用分层架构组织功能边界与数据流:表现与交互层由 PySide6/Qt 客户端承担,负责多源输入选择、阈值调参、结果可视化与导出入口;业务与会话管理层负责用户会话、源互斥、参数一致性、记录检索与导出编排;推理与任务调度层以事件驱动的帧流为核心,完成媒体接入、预处理、YOLO 推理与后处理;数据持久化层则统一承载账户、记录与导出索引的本地化管理,并为统计与复核提供可追溯证据链。该划分使得检测算法、评测逻辑与界面交互保持松耦合,同时在工程上便于替换模型版本(YOLOv5–YOLOv12)与扩展导出能力。
跨层协同以“输入源—帧分发—推理—后处理—界面联动”为主线:系统对图片、视频与摄像头输入进行互斥控制,避免多源并发造成的帧序混乱;预处理阶段统一将输入缩放到 640×640 并完成归一化与张量转换,保证不同输入源的推理尺度一致;推理阶段输出结构化检测结果(类别、置信度、边界框),后处理阶段依据 Conf/IoU 阈值进行过滤与 NMS,并将坐标还原到原图尺度,从而在显示区叠加检测框并驱动右侧详情与底部记录同步刷新。对视频与摄像头流,系统以事件循环驱动帧读取与推理调度,配合进度条与用时统计,使用户能够直观感知处理节奏并随时停止或切换源。
为保障实时性与一致性,系统将阈值参数、模型状态与记录输出纳入统一的会话上下文:Conf/IoU 滑块调整在同一会话内即时生效,并同步影响当前帧的过滤策略与后续导出的结果;源切换与模型热切换均通过状态机约束其互斥关系,防止“模型已切换但帧流仍沿用旧配置”的不一致问题;导出侧以时间戳命名与统一归档策略组织 CSV/PNG/AVI 等结果文件,并在本地数据库中维护导出索引,使复核过程能够从记录表快速定位到对应证据。整体设计兼顾了在线巡检的低延迟需求与安全管理的可追溯需求,同时为后续扩展主题配置、本地化偏好与异常恢复预留接口。

图 6-1 系统流程图
图注:该流程覆盖系统初始化、多源输入、预处理与 YOLO 推理、后处理与坐标还原、界面叠加显示与目标高亮,并在循环帧流中通过进度条与记录导出形成闭环。

图 6-2 系统设计框图
图注:框图以“表现与交互层—业务与会话管理层—推理与任务调度层—数据持久化层”的边界组织模块,并用数据流与控制流描述阈值同步、源互斥与导出归档的跨层协同关系。
6.2 登录与账户管理 — 流程图

图 6-3 登录与账户管理流程图
图注:流程从登录入口出发,覆盖注册写入本地数据库、口令校验与会话建立、个性化配置加载、进入主界面以及注销/切换账户等操作,强调与主检测流程的数据衔接与本地持久化价值。
登录与账户管理的实现强调“低门槛进入与可追溯管理并存”:用户既可通过注册建立本地身份空间,在同一会话内绑定个性化主题、默认模型与历史记录,也可在现场快速部署时完成登录后直达主检测流程;口令校验成功后加载的偏好配置能够保证阈值参数、模型热切换与导出策略在整个检测闭环中保持一致,而注销/切换账户则为多岗位共用终端提供了隔离边界,使检测记录与导出索引具备明确归属并便于后续审计复核。
7. 项目资源链接
若您想获得博文中涉及的实现完整全部资源文件(包括测试图片、视频,py, UI文件,训练数据集、训练代码、界面代码等),这里见可参考博客与视频,已将所有涉及的文件同时打包到里面,点击即可运行,完整文件截图如下:

功能效果展示视频:热门实战|《基于深度学习的个人防具检测系统》YOLOv12-v8多版本合集:附论文/源码/PPT/数据集,支持图片/视频/摄像头输入、可视化界面、结果导出与权重切换
环境配置博客教程:https://deeppython.feishu.cn/wiki/EwnTwJ2H3iLF6VkNG6ccgZYrnvd;
或者环境配置视频教程:Pycharm软件安装视频教程;(2)Anaconda软件安装视频教程;(3)Python环境配置视频教程;
数据集标注教程(如需自行标注数据):数据标注合集
参考文献(GB/T 7714)
1 Ren S, He K, Girshick R, et al. Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks[C]//Advances in Neural Information Processing Systems. 2015: 91-99.
[2] Redmon J, Divvala S, Girshick R, et al. You Only Look Once: Unified, Real-Time Object Detection[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2016: 779-788.
[3] 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.
[4] 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.
[5] Zheng Z, Wang P, Liu W, et al. Distance-IoU Loss: Faster and Better Learning for Bounding Box Regression[C]//Proceedings of the AAAI Conference on Artificial Intelligence. 2020, 34(07): 12993-13000.
[6] Carion N, Massa F, Synnaeve G, et al. End-to-End Object Detection with Transformers[C]//Proceedings of the European Conference on Computer Vision. 2020: 213-229.
[7] Jocher G, Stoken A, Borovec J, et al. ultralytics/yolov5: v7.0 - YOLOv5 SOTA Realtime Instance Segmentation[EB/OL]. Zenodo, 2022[2025-12-23]. DOI:10.5281/zenodo.3908559.
[8] Ultralytics. Ultralytics YOLOv8 Documentation[EB/OL]. [2025-12-23].
[9] 杨振, 杨天祥, 郑华军. 基于YOLOv5的安全帽佩戴实时检测方法研究[J]. 软件导刊, 2022(5): 111-117.
[10] Zhao Y, Lv W, Xu S, et al. DETRs Beat YOLOs on Real-Time Object Detection[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2024.
[11] Wang A, Chen H, Liu L, et al. YOLOv10: Real-Time End-to-End Object Detection[C]//Advances in Neural Information Processing Systems. 2024.
[12] Song X, Zhang T, Yi W. An improved YOLOv8 safety helmet wearing detection network[J]. Scientific Reports, 2024, 14: 17550.
[13] Ahmad H M, Rahimi A. SH17: A Dataset for Human Safety and Personal Protective Equipment Detection in Manufacturing Industry[EB/OL]. arXiv:2407.04590, 2024[2025-12-23].
[14] Wang Z, Zhang Y, Zhang S. Real-time personal protective equipment detection and classification with YOLOv8 multi-scale fusion[J]. Journal of Real-Time Image Processing, 2025, 22: 131.
[15] Tian Y, Ye Q, Doermann D. YOLOv12: Attention-Centric Real-Time Object Detectors[EB/OL]. arXiv:2502.12524, 2025[2025-12-23].
[16] Ultralytics. Construction-PPE Dataset[EB/OL]. [2025-12-23].
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐
所有评论(0)