欢迎光临
我们一直在努力

从数据到部署:YOLO26吸烟行为检测系统实战(香烟/人/烟雾/电子烟/吸烟动作)(项目源码+数据集+模型权重+UI界面+python+深度学习+远程环境部署)

  摘要

吸烟行为识别在公共安全、健康管理和禁烟区域监控中具有重要应用价值。本文基于YOLO26目标检测框架,构建了一个五类吸烟相关目标的检测系统,包括:香烟(Cigarette)、人(Person)、烟雾(Smoke)、电子烟(Vape)和吸烟动作(smoking)。数据集共包含12486张标注图像,其中训练集12046张,验证集318张,测试集122张。

关键词:YOLO26;吸烟检测;电子烟识别;烟雾检测;目标检测

详细功能展示视频

https://www.bilibili.com/video/BV1S6ohBCE7Q/

引言

吸烟不仅是导致多种慢性疾病的主要风险因素,也是公共安全事故的重要诱因之一。在加油站、森林、工厂、学校、医院等禁烟场所,吸烟行为的及时发现与干预具有重要的社会和经济意义。传统的人工监控方式依赖于安保人员的实时观察,存在人力成本高、反应延迟、监控盲区等问题。随着计算机视觉和深度学习技术的发展,基于图像或视频的自动吸烟检测系统成为解决上述问题的有效手段。

近年来,YOLO系列模型因其检测速度快、精度高、易于部署等优点,在各类实时目标检测任务中得到了广泛应用。然而,吸烟行为检测具有其特殊的挑战性:首先,香烟和电子烟体积小、形态多样;其次,烟雾呈半透明、无固定形状,容易被背景干扰;第三,吸烟动作与人脸、手部动作高度耦合,容易产生特征混淆。

本文旨在基于YOLO26框架构建一个能够同时识别香烟、人、烟雾、电子烟和吸烟动作的综合吸烟识别系统。通过对12046张标注图像进行训练,并在独立验证集和测试集上进行评估,系统分析了模型在各类目标上的检测性能及其主要误差来源。本文的研究成果可为禁烟区域智能监控系统的开发提供技术参考。

目录

  摘要

引言

详细功能展示视频

功能模块

1、用户管理模块

2、界面与交互模块

3、检测源管理模块

4、检测参数配置模块

5、YOLO检测核心模块

6、结果显示模块

7、结果保存模块

8、工具栏功能

9、辅助功能

10、数据校验模块

背景

吸烟检测的现实需求

计算机视觉在吸烟检测中的应用现状

数据集介绍

数据集概述

类别定义

训练结果

核心性能指标​编辑​编辑

曲线图解读

1. Precision-Confidence 曲线​编辑

2. Recall-Confidence 曲线​编辑

3. F1-Confidence 曲线​编辑

训练过程分析(results.png)​编辑

Ultralytics YOLO26

概述

主要功能

详细功能展示视频


功能模块

✅ 用户登录注册:支持密码检测,密码加密。

注册

登录

✅ 图片检测:可对图片进行检测,返回检测框及类别信息。

✅ 参数实时调节(置信度和IoU阈值)

✅ 支持选择检测目标:可以选择一个或者多个类目的目标进行检测

✅ 视频检测:支持视频文件输入,检测视频中每一帧的情况。

✅ 摄像头实时检测:连接USB 摄像头,实现实时监测。

✅日志记录:日志标签页记录操作和错误信息,带时间戳

✅结果保存模块:支持图片/视频/摄像头检测结果保存

1、用户管理模块

功能描述
用户注册 用户名、密码、确认密码、邮箱(选填)注册,密码SHA256加密存储
用户登录 用户名密码验证,自动跳转主界面
用户数据存储 JSON文件存储用户信息(密码加密、注册时间、邮箱)
登录状态 主界面显示当前登录用户名

2、界面与交互模块

功能描述
玻璃效果界面 半透明毛玻璃背景,圆角边框,现代化视觉风格
无边框窗口 自定义标题栏,支持窗口拖动、最小化、最大化、关闭
响应式布局 主窗口三栏布局(左侧控制区、中央显示区、右侧信息区)
状态栏 显示设备信息、模型状态、当前用户、实时时间

3、检测源管理模块

功能描述
图片检测 支持JPG/JPEG/PNG/BMP格式图片载入
视频检测 支持MP4/AVI/MOV/MKV格式视频载入
摄像头检测 实时调用摄像头(默认ID 0)进行检测
检测源切换 下拉菜单切换三种检测模式,自动更新界面状态

4、检测参数配置模块

功能描述
置信度阈值 滑动条调节(0-100%,步长1%),实时显示当前值
IoU阈值 滑动条调节(0-100%,步长1%),实时显示当前值
类别选择 动态生成检测类别复选框,支持全选/取消全选
参数同步 参数实时同步到检测器核心

5、YOLO检测核心模块

功能描述
模型加载 加载best.pt模型文件,自动检测GPU可用性,支持CPU/GPU切换
多模式检测 图片检测、视频检测、摄像头实时检测
检测线程 基于QThread的多线程处理,避免界面卡顿
检测结果 返回目标类别、置信度、边界框坐标
FPS计算 实时计算处理帧率
进度反馈 视频处理进度条实时更新

6、结果显示模块

功能描述
实时画面 中央区域显示检测结果图像(带标注框)
统计信息 检测状态、目标数量、FPS、处理帧数实时更新
检测列表 右侧列表显示当前帧所有检测到的目标(类别+置信度)
日志记录 日志标签页记录操作和错误信息,带时间戳
占位显示 未选择检测源时显示系统LOGO和提示文字

7、结果保存模块

功能描述
保存开关 复选框控制是否保存检测结果
路径选择 自定义保存路径,支持图片/视频格式自动识别
自动命名 保存文件自动添加时间戳(detection_result_20240101_120000.jpg)
视频保存 支持检测结果视频录制(MP4格式)
手动保存 工具栏保存按钮可随时保存当前画面
保存反馈 保存成功弹窗提示,日志记录保存路径

8、工具栏功能

功能描述
图片按钮 快速切换到图片检测模式并打开文件选择器
视频按钮 快速切换到视频检测模式并打开文件选择器
摄像头按钮 快速切换到摄像头检测模式
保存按钮 手动保存当前显示画面

9、辅助功能

功能描述
错误处理 统一错误弹窗提示,日志记录错误详情
资源清理 检测停止时自动释放摄像头、视频文件、视频写入器资源
时间显示 状态栏实时显示系统时间
模型状态 状态栏显示模型加载状态和当前设备(CPU/GPU)

10、数据校验模块

功能描述
注册验证 用户名长度≥3,密码长度≥6,密码一致性检查,邮箱格式验证
协议确认 注册前需勾选同意用户协议
文件校验 模型文件存在性检查,文件大小验证(≥6MB)
输入非空 登录/注册时必填项非空检查

背景

吸烟检测的现实需求

吸烟行为在全球范围内仍是可预防死亡的主要原因之一。据世界卫生组织统计,全球每年约有800万人因吸烟相关疾病死亡。此外,吸烟引发的火灾事故频发,特别是在加油站、化工厂、森林等高风险区域,一个未熄灭的烟头可能引发灾难性后果。因此,实现对禁烟区域的自动吸烟检测具有明确的应用价值。

传统吸烟检测手段包括:

  • 人工巡查:效率低、成本高、无法24小时全覆盖。

  • 烟雾传感器:响应慢、易误报、无法定位吸烟者。

  • 红外热成像:设备昂贵,难以大规模部署。

相比之下,基于普通摄像头的视觉检测方案具有成本低、部署灵活、可回溯等优势,已成为当前研究和应用的热点方向。

计算机视觉在吸烟检测中的应用现状

早期吸烟检测方法多基于传统机器学习与手工特征(如HOG、LBP、SIFT),结合SVM或决策树进行分类。这类方法在简单背景下有一定效果,但难以应对光照变化、姿态变化、遮挡等复杂场景。

随着深度学习的发展,尤其是卷积神经网络在目标检测任务中的突破,吸烟检测进入了新的阶段。主要技术路线包括:

  • 两阶段检测器(如Faster R-CNN):精度较高但速度较慢,适合离线分析。

  • 单阶段检测器(如YOLO、SSD):速度快、适合实时监控。

  • 姿态估计方法:通过检测手部到嘴部的动作轨迹判断吸烟行为。

  • 多模态融合:结合可见光与热成像或深度信息。

  • 其中,YOLO系列因其端到端的训练方式和优异的实时性能,成为吸烟检测系统中应用最广泛的模型之一。

    数据集介绍

    数据集概述

    本研究所使用的数据集为自建的吸烟行为检测数据集,共计包含 12486 张标注图像,划分为训练集、验证集和测试集三个子集。

    数据集图像数量用途
    训练集 12046 模型参数学习
    验证集 318 超参数调优与模型选择
    测试集 122 最终性能评估

    注:验证集和测试集的数量相对较小,可能影响性能评估的统计稳定性。建议后续工作中适当扩大验证和测试规模。

    类别定义

    数据集共包含 5 个目标类别,符合 nc: 5 的配置要求,类别名称及映射如下:

    类别索引英文名称中文名称说明
    0 Cigarette 香烟 传统点燃式烟草制品
    1 Person 吸烟者或潜在吸烟者
    2 Smoke 烟雾 吸烟产生的可见烟雾
    3 Vape 电子烟 电子雾化设备
    4 smoking 吸烟动作 吸烟行为(手持香烟/电子烟靠近嘴部)

    训练结果

    核心性能指标

    类别精确率 (P)召回率 (R)mAP50mAP50-95样本数
    香烟 0.818 0.846 0.829 0.481 250
    0.931 0.891 0.936 0.764 257
    烟雾 0.615 0.285
    电子烟 0.85 1.0 0.615 0.285 34
    吸烟 0.887 0.906 0.945 0.641 64
    平均 0.897 0.629 0.695 0.437 611

    表现较好的类别:吸烟、人、香烟  表现较差的类别:烟雾、电子烟


    曲线图解读

    1. Precision-Confidence 曲线
    • 高置信度下精度接近 1.0

    • 说明模型对高置信度预测较可靠

    2. Recall-Confidence 曲线
    • 平均召回率 0.73(@ confidence=0)

    • 随置信度上升,召回率下降明显

     模型在低置信度下能检出更多目标,但伴随更多误检。

    3. F1-Confidence 曲线
    • 最佳 F1 ≈ 0.65 @ 置信度 0.226

    • 说明当前默认置信度可能不是最优


    训练过程分析(results.png)

    • 训练和验证损失持续下降,未出现过拟合

    • 精度和召回率稳定上升

    • mAP50 在 0.7 左右趋于平稳

     训练收敛正常,无显著异常。

    Ultralytics YOLO26

    概述

    Ultralytics  YOLO26 是 YOLO 系列实时对象检测器的最新演进,从头开始专为边缘和低功耗设备而设计。它引入了简化的设计,消除了不必要的复杂性,同时集成了有针对性的创新,以实现更快、更轻、更易于访问的部署。

    YOLO26 的架构遵循三个核心原则:

    • 简洁性: YOLO26是一个原生的端到端模型,直接生成预测结果,无需非极大值抑制(NMS)。通过消除这一后处理步骤,推理变得更快、更轻量,并且更容易部署到实际系统中。这种突破性方法最初由清华大学的王傲在YOLOv10中开创,并在YOLO26中得到了进一步发展。
    • 部署效率: 端到端设计消除了管道的整个阶段,从而大大简化了集成,减少了延迟,并使部署在各种环境中更加稳健。
    • 训练创新:YOLO26 引入了MuSGD 优化器,它是SGD 和MUON的混合体——灵感来源于 Moonshot AI 在 LLM 训练中Kimi K2的突破。该优化器带来了增强的稳定性和更快的收敛,将语言模型中的优化进展转移到计算机视觉领域。
    • 任务特定优化:YOLO26 针对专业任务引入了有针对性的改进,包括用于 Segmentation 的语义分割损失和多尺度原型模块,用于高精度 姿势估计 的残差对数似然估计 (RLE),以及通过角度损失优化解码以解决 旋转框检测 中的边界问题。

    这些创新共同提供了一个模型系列,该模型系列在小对象上实现了更高的精度,提供了无缝部署,并且在 CPU 上的运行速度提高了 43% — 使 YOLO26 成为迄今为止资源受限环境中最实用和可部署的 YOLO 模型之一。

    主要功能

    • DFL 移除 分布式焦点损失(DFL)模块虽然有效,但常常使导出复杂化并限制了硬件兼容性。YOLO26 完全移除了 DFL,简化了推理过程,并拓宽了对边缘和低功耗设备的支持。

    • 端到端无NMS推理 与依赖NMS作为独立后处理步骤的传统检测器不同,YOLO26是原生端到端的。预测结果直接生成,减少了延迟,并使集成到生产系统更快、更轻量、更可靠。

    • ProgLoss + STAL 改进的损失函数提高了检测精度,在小目标识别方面有显著改进,这是物联网、机器人、航空影像和其他边缘应用的关键要求。

    • MuSGD Optimizer 一种新型混合优化器,结合了SGD和Muon。灵感来自 Moonshot AI 的Kimi K2,MuSGD 将 LLM 训练中的先进优化方法引入计算机视觉,从而实现更稳定的训练和更快的收敛。

    • CPU推理速度提升高达43% YOLO26专为边缘计算优化,提供显著更快的CPU推理,确保在没有GPU的设备上实现实时性能。

    • 实例分割增强 引入语义分割损失以改善模型收敛,以及升级的原型模块,该模块利用多尺度信息以获得卓越的掩膜质量。

    • 精确姿势估计 集​成残差对数似然估计​(RLE),以实现更精确的关键点定位,并优化解码过程以提高推理速度。

    • 优化旋转框检测解码 引入专门的角度损失以提高方形物体的检测精度,并优化旋转框检测解码以解决边界不连续性问题。

    假设您现在准备好进行标注。有几种开源工具可以帮助简化数据标注流程。以下是一些有用的开放标注工具:

    Label Studio:一个灵活的工具,支持各种标注任务,并包含用于管理项目和质量控制的功能。 CVAT:一个强大的工具,支持各种标注格式和可定制的工作流程,使其适用于复杂的项目。 Labelme:一个简单易用的工具,可以快速标注带有多边形的图像,非常适合简单的任务。 LabelImg: 一款易于使用的图形图像标注工具,特别适合以 YOLO 格式创建边界框标注。

    用于实例分割的 LabelMe 标注工具

    这些开源工具经济实惠,并提供一系列功能来满足不同的标注需求。

    界面核心代码:

    详细功能展示视频

    赞(0)
    未经允许不得转载:171主机测评 » 从数据到部署:YOLO26吸烟行为检测系统实战(香烟/人/烟雾/电子烟/吸烟动作)(项目源码+数据集+模型权重+UI界面+python+深度学习+远程环境部署)
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址