摘要:泳池溺水事故具有突发性强、黄金救援时间短的特点,传统人工监控方式存在注意力分散、疲劳漏检等问题,难以实现全时段高效监控。因此,研究一种能够自动识别泳池中异常行为并及时预警的智能检测系统,对于降低溺水事故发生率、保障游泳者生命安全具有重要的现实意义。

项目简介

本系统基于YOLO11深度学习模型,实现了对泳池场景中游泳、踩水、溺水三类行为的实时检测与智能预警。

系统概述

泳池溺水事故具有突发性强、黄金救援时间短的特点,传统人工监控方式存在注意力分散、疲劳漏检等问题,难以实现全时段高效监控。因此,研究一种能够自动识别泳池中异常行为并及时预警的智能检测系统,对于降低溺水事故发生率、保障游泳者生命安全具有重要的现实意义。

本文设计并实现了一种基于YOLOv11的泳池溺水行为实时检测系统。模型层面,采用轻量化的YOLOv11n作为目标检测网络,针对游泳、踩水和溺水三类行为进行训练与识别,并建立安全、警告、危险三级风险评估机制。系统层面,基于PySide6框架构建可视化交互界面,支持图片、视频及摄像头三种输入模式;采用多线程架构实现检测推理与界面渲染的并行处理,保证实时检测的流畅性;集成pyttsx3语音引擎实现溺水行为的持续语音报警;通过SQLite数据库对检测记录进行持久化存储,并提供数据统计与可视化分析模块。

实验结果表明,该系统能够准确识别泳池场景中的三类行为,在GPU加速条件下可达到实时检测帧率,具备较高的检测精度与响应速度。系统整体运行稳定,交互体验良好,可为泳池安全监控提供一种可行的智能化辅助方案。

系统架构

本系统采用经典的四层架构设计:

图1 泳池溺水行为实时检测系统四层架构图

核心亮点

本章节将快速概览系统的核心技术价值和应用亮点,帮助您快速了解项目的独特优势。无论您是技术人员、研究者还是决策者,都能从中快速获取关键信息,判断本系统是否符合您的需求。

算法特点

本系统采用YOLOv11基线模型作为核心检测算法,该模型具有以下特点:

– 先进的网络架构:采用YOLOv11最新架构,包含C3k2模块和C2PSA注意力机制
– 多尺度特征融合:通过P3/P4/P5三个检测头实现不同尺度目标的精准检测
– 高效的特征提取:使用SPPF模块增强感受野,提升特征表达能力
– 轻量化设计:YOLOv11n模型仅2.6M参数,6.6 GFLOPs计算量,适合实际部署

性能突破

通过在溺水识别数据集(6,049张训练集 + 1,728张验证集)上进行150轮完整训练,YOLOv11基线模型取得了卓越的识别性能:

图2 基线模型性能分析图

核心技术

YOLO11n目标检测模型,基于C3k2特征提取、C2PSA注意力机制与SPPF多尺度融合,实现泳池场景下游泳、踩水、溺水三类行为的实时识别

算法详解

本系统采用 Ultralytics 最新发布的 YOLO11n(Nano)模型作为核心检测算法。YOLO11 采用经典的 Backbone–Neck–Head 三段式架构(见图)。Backbone 以 640×640 输入图像为基础,通过两层初始卷积完成下采样,并利用 6 个 C3k2 轻量化模块逐步降低特征图分辨率、提升通道维度(64→256),实现从低层纹理到高层语义的多尺度特征提取。末端引入 SPPF 扩大感受野以增强多尺度上下文建模能力,同时通过 C2PSA 并行空间注意力强化泳池中人体姿态等关键区域特征。最终输出 P3/8、P4/16、P5/32 三个尺度特征图,分别对应小、中、大目标。

图3 YOLO11网络架构图

Neck 部分采用 FPN+PAN 双向特征金字塔实现多尺度特征融合:FPN 自顶向下将高层语义信息逐级传递至低层,提升小目标检测能力;PAN 自底向上将低层细节与定位信息反馈至高层特征,增强大目标检测精度。Head 由三个独立的解耦检测头组成,分别对三种尺度特征进行预测,输出目标 边界框坐标、28 类概率(22 品牌 + 6 车型)及置信度。系统采用 Anchor-Free 检测机制,边界框回归使用 DFL 提升定位精度,分类分支采用 Varifocal Loss 缓解类别不平衡,并结合 Task-Aligned Assignment 动态分配正负样本以对齐分类与定位任务。

该模型参数量仅 2.6M,计算量 6.6 GFLOPs,模型大小约 5.5 MB;在 GPU 环境下推理速度可达 50 FPS,在保证检测精度的同时具备良好的轻量化与实时性,适用于泳池溺水实时识别场景。

技术优势分析

YOLO11n 在架构设计上对 YOLOv8 与 YOLOv10 进行了系统性优化。通过引入 C3k2 轻量化模块与 2×2 卷积,在保持检测精度的同时显著降低参数量与计算复杂度;结合 C2PSA 并行空间注意力与 SPPF 模块,增强全局建模能力与多尺度特征表达。检测头采用解耦设计,并引入 DFL 与 TAA 优化回归与样本分配策略,有效提升小目标与复杂场景下的检测性能。综合实验结果表明,YOLO11n 在参数效率、推理速度和检测精度之间取得了更优平衡,适用于泳池溺水识别等实时应用场景。

性能表现

YOLO11n基线模型以2.59M参数量、6.4 GFLOPs计算量实现高效推理,在泳池溺水行为检测任务上达到97.3% mAP@0.5和73.4% mAP@0.5:0.95的检测精度,精确率95.8%,召回率95.6%,支持GPU加速和CPU部署,兼顾轻量化与实时性。

模型性能分析

YOLO11n基线模型在泳池溺水行为检测任务上表现出色,经过150轮训练后,在1,728张验证集上达到97.3% mAP@0.5和73.4% mAP@0.5:0.95的检测精度。模型的精确率为95.8%,召回率为95.6%,误识别率和漏检率均控制在5%以内,能够满足实际应用需求。

该模型采用轻量化设计,仅包含2.59M参数和6.4 GFLOPs计算量,模型文件大小约5.5MB,适合在资源受限的边缘设备上部署。在保持高精度的同时,模型推理速度达2.0ms/帧(RTX 4070 Ti SUPER),支持CPU和GPU多种硬件平台,为泳池溺水行为智能检测系统提供了高效可靠的技术支撑。

关键指标(注:真实数据)

YOLO11n基线模型在150轮训练过程中,mAP@0.5:0.95指标从初始的56.6%稳步提升至最终的73.4%,提升幅度达16.8%。训练过程呈现明显的三阶段特征:快速上升阶段(Epoch 1-30)实现从56.6%到70.3%的跃升,稳定收敛阶段(Epoch 30-90)从70.3%提升至72.9%,精细调优阶段(Epoch 90-150)最终达到73.4%并趋于稳定。

图4 YOLO11训练过程mAP50-95曲线图

该曲线展示了模型在泳池溺水行为检测任务上的学习能力和收敛特性,验证了训练策略的有效性。最终73.4% mAP@0.5:0.95配合97.3% mAP@0.5,表明模型在严格评估标准下仍保持稳定性能

性能优势总结

YOLO11n基线模型在泳池溺水行为检测任务上展现出良好的综合性能,以2.59M参数量和6.4 GFLOPs的轻量化设计实现了97.3% mAP@0.5和73.4% mAP@0.5:0.95的检测精度,精确率达95.8%、召回率达95.6%,误识别率和漏检率均控制在5%以内。经过150轮充分 训练,模型在6,049张训练集和1,728张验证集上稳定收敛,mAP@0.5:0.95从初始的56.6%提升至73.4%,提升幅度达16.8%,验证了模型的学习能力和泛化性能。该模型支持CPU/GPU多平台部署,推理速度达2.0ms/帧,适合实时视频流处理和边缘设备应用,为泳 池溺水行为智能检测系统提供了高效、可靠、易部署的技术解决方案。

系统功能

本系统基于YOLO11n深度学习模型,实现了泳池场景下游泳、踩水、溺水三类行为的智能检测与预警。系统采用PySide6构建图形用户界面,提供图片检测、视频检测、实时摄像头检测三种工作模式,并集成了三级风险评估、语音持续报警、数据统计分析、检测记录管理等功能,为泳池安全监控提供高效、可靠的技术支撑。

功能概述

本系统基于YOLO11n深度学习模型,实现了泳池场景下游泳、踩水、溺水三类行为的智能检测与预警。系统采用PySide6构建图形用户界面,提供图片检测、视频检测、实时摄像头检测三种工作模式,并集成了三级风险评估、语音持续报警、数据统计分析、检测记录管理等功能,为泳池安全监控提供高效、可靠的技术支撑。

单张检测功能

图片检测模式支持对静态图像进行溺水行为识别,用户点击界面左侧的”图片检测”按钮并选择图像文件后,系统自动加载图像并进行目标检测,在中央显示区域展示标注后的图像,同时显示行为类别和置信度,右侧面板实时更新当前人数、事件统计及风险等级信息,检测结果自动保存到save_data目录便于后续查询和分析。

视频检测功能

视频检测模式支持对录制的视频文件(MP4、AVI、MOV格式)进行逐帧检测,用户点击”视频检测”按钮选择视频文件后,系统自动读取视频流并对每一帧进行实时行为检测,在界面中显示标注后的视频画面、当前检测帧率(FPS)和累计统计信息,采用DetectWorker多线程异步处理技术避免界面卡顿,支持可选保存检测后的视频文件(带标注),并记录视频中出现的行为类别和风险等级分布情况。

实时检测功能

摄像头检测模式支持连接本地摄像头或网络摄像头进行实时溺水行为检测,系统启动时自动扫描可用摄像头设备(索引0-9),用户点击”摄像头检测”按钮并选择指定摄像头后,系统进行实时视频流检测(支持GPU半精度加速),实时显示检测结果和置信度,当检测到溺水行为时自动触发三级预警(LED状态灯闪烁、pyttsx3语音持续报警、自动截图保存),实时更新当前人数、事件统计及风险等级。

数据统计与分析

数据分析模块提供检测数据的可视化展示和统计分析功能,用户点击”数据分析”按钮打开独立的分析窗口,包含总览、行为分析、详细记录三个标签页,可查看检测总数、行为类型分布、平均置信度、溺水次数等关键指标,通过条形图、饼图、统计卡片等形式直观展示数据分布,支持查询历史检测记录(存储在SQLite数据库data/app.db)、清空当前用户记录等操作,实现检测数据的持久化存储和全面分析。

记录管理功能

记录管理模块集成了检测结果的存储和查询功能,系统自动保存每次检测的时间、图像、行为类别、中文名称、置信度、风险等级、边界框坐标等详细数据到SQLite数据库(data/app.db),用户可通过数据分析窗口查看历史记录,检测图像自动保存到save_data目录便于追溯查询,实现从检测到数据管理的全流程自动化处理。

系统架构

本系统采用Python 3.12开发,基于Ultralytics YOLOv11深度学习框架实现目标检测,使用PySide6构建图形用户界面,通过OpenC V进行图像和视频处理,采用PIL实现中文标签渲染,利用DetectWorker多线程异步处理技术保证界面流畅性,集成pyttsx3语音引 擎实现溺水持续报警,并使用SQLite数据库实现数据持久化存储和查询,系统架构清晰、模块化设计,便于功能扩展和维护。

图5 泳池溺水行为检测系统总流程图

系统优势

本系统基于YOLOv11深度学习模型,实现了泳池溺水行为的智能检测与预警。系统采用YOLOv11n轻量化检测网络,在验证集上达到m AP@0.5 = 97.30%、mAP@0.5:0.95 = 73.40%的检测精度,精确率95.80%、召回率95.60%,模型参数量仅2.59M、模型文件5.5MB,适 合边缘设备部署。支持实时视频流处理,内置FPS监控和推理时间统计功能,支持GPU加速实现流畅响应。提供单张图片、视频文件 、实时摄像头三种检测模式,配备数据统计分析和可视化功能,满足不同应用场景需求。

运行展示

系统界面分为左侧功能按钮和参数设置、中央识别画面显示、右侧统计信息和记录管理三个区域,提供单张/视频/实时识别、数据分析、结果展示、记录查询等完整功能,界面简洁直观、操作便捷。

检测效果展示

登录界面:

图6 登录主界面

用户登录界面,展示系统入口

图7 注册主界面

用户注册界面,新用户创建账号

系统运行模块:

图8 系统运行界面

图9 单张检测:踩水停留

图10 单张检测:疑似溺水

图11 单张检测:正常游泳

图12 视频检测:疑似溺水

图13 实时检测:疑似溺水

图14 退出系统

数据分析模块:

图15 数据概览

图16 行为分析

图17 详细记录

图18 清空记录

数据集与训练

本章介绍了泳池溺水行为检测数据集的构建过程、模型训练流程与配置,以及YOLOv11n基线模型在验证集上达到97.30%的mAP@0.5和73.40%的mAP@0.5:0.95的检测性能。数据集包含8,642张高质量标注图像(训练集6,049张、验证集1,728张、测试集865张),涵盖3个行为类别(swimming、tread_water、drowning),经过150轮充分训练,模型精确率达95.80%、召回率达95.60%,展现出可靠的检测能力和实用价值。

数据集构建

本研究使用的是泳池溺水行为检测数据集,该数据集专门针对泳池场景中人体的不同行为状态进行标注。数据集包含多种泳池场景下的图像,涵盖室内外不同光照条件、不同拍摄角度和水面反光情况,包含3个行为类别(swimming游泳、tread_water踩水、drowning溺水),具有较强的场景多样性和实用价值。数据集共包含8,642张高质量标注图像,按照约7:2:1的比例划分为训练集(6,049张)、验证集(1,728张)和测试集(865张),为模型训练和评估提供了充足的数据支撑。

图19 数据集划分及类别信息统计示意图

数据集特点:

数据集涵盖泳池场景,包含不同光照、角度和水面反光条件下的swimming、tread_water、drowning三类行为标注,共8,642张图像。

数据集划分:

数据集按照约 70:20:10 的比例划分为训练集、验证集和测试集:

表1 数据集划分及用途说明

训练集用于模型的参数学习和特征提取能力训练。验证集用于训练过程中的性能监控和超参数调优,帮助选择最优模型。测试集用于最终的性能评估,确保模型在未见过的数据上具有良好的泛化能力。

图20 数据集在训练、验证和测试集上的分布

数据集质量保证:

为了确保实验数据的可靠性和有效性,本研究的数据集经过严格的质量控制。所有图像均无损坏或无效背景,保证了数据的完整性。标注工作经过多轮人工审核,确保边界框定位精确,类别标注一致且符合定义标准。这些措施有效提升了数据集的质量,为模型训练和性能评估提供了可靠保障。

训练流程

模型训练采用端到端的方式,首先加载训练集和验证集进行数据预处理,然后加载YOLOv11预训练权重进行模型初始化,接着使用SGD优化器进行150轮迭代训练,每轮训练后在验证集上评估性能指标,系统自动保存验证集上性能最佳的模型权重,最终输出完整的性能指标和训练曲线。

图21 模型训练流程

训练流程:
1. 开始训练 → 加载训练集和验证集进行数据预处理
2. 模型初始化 → 加载YOLOv11预训练权重(yolo11n.pt),使用标准YOLOv11架构
3. 模型训练 → 使用SGD优化器进行150轮迭代训练,应用数据增强技术
4. 模型验证 → 每轮训练后在验证集上评估性能指标(Precision, Recall, mAP@0.5, mAP@0.5:0.95)
5. 最佳模型保存 → 系统自动监控验证性能,保存验证集上性能最佳的模型权重(best.pt)
6. 训练完成 → 输出完整的性能指标报告和训练曲线图

训练配置

硬件环境:

软件环境

训练超参数

数据增强策略

为提高模型泛化能力,训练过程中采用以下数据增强方法:Mosaic增强将4张图像拼接成一张以增加小目标检测能力;随机翻转以50%的概率对图像进行水平翻转;随机缩放在0.5-1.5倍范围内调整图像尺寸;色彩抖动在HSV色彩空间进行随机调整,其中色调(Hue)调整范围为±0.015、饱和度(Saturation)为±0.7、明度(Value)为±0.4;随机平移在±10%范围内对图像进行位置偏移。

学习率调度策略

学习率调度策略采用线性衰减方式,前3个epoch进行warmup预热,学习率从0线性增长到初始学习率0.01,之后按线性方式从0.01逐步衰减到最终学习率0.0001。

训练结果

性能指标:

经过150轮训练,YOLO11n 基线模型在溺水检测验证集上取得了优异的性能:

训练曲线分析:

下图展示了模型在150轮训练过程中的完整性能变化,包括损失函数曲线和精度指标曲线:

图22 训练曲线分析

图中展示了10个关键指标的训练过程:训练损失(box/cls/dfl)、验证损失(box/cls/dfl)、精确率、召回率、mAP@50和mAP@50-95

(1)损失函数曲线

从训练曲线图可以看出,训练过程中损失函数呈现稳定下降趋势:训练集边界框损失(train/box_loss)从初始的约1.4快速下降,在第50轮后趋于稳定在约0.8;训练集分类损失(train/cls_loss)从初始的约3.0快速下降至约0.5,表明分类准确率持续提高;训练集DFL损失(train/dfl_loss)从约1.6稳步降低至约1.1。验证集损失方面,val/box_loss稳定在约1.0-1.1,val/cls_loss下降后稳定在约0.6,val/dfl_loss稳定在约1.1,均与训练集走势一致,曲线平滑,表明模型泛化能力良好,无明显过拟合

(2)精度指标曲线

Precision曲线从初始的约85%起步,训练过程中有一定波动,最终稳定在93%-96%区间,best.pt验证值为95.80%;Recall曲线从初始的约75%快速上升,最终稳定在95%-96%区间,验证值达到95.60%;mAP@50曲线从初始的约82%快速上升,最终稳定在97.30%;mAP@50-95曲线从初始的56.64%持续上升,经历快速上升阶段(1-30轮,提升至70.26%)、稳定提升阶段(30-90轮,提升至72.90%)和收敛稳定阶段(90-150轮),最终达到73.40%。

(3)Precision-Recall 曲线

图23 Precision-Recall 曲线

展示模型在不同置信度阈值下的精确率和召回率关系,all classes mAP@0.5达到0.995

(4)混淆矩阵(归一化)

图24 归一化混淆矩阵

归一化混淆矩阵展示模型的分类准确性

最佳模型选择

训练过程中,系统自动保存验证集上性能最佳的模型,最佳模型出现在第116轮(mAP@50-95达到峰值73.44%),保存路径为runs/train/yolo11/weights/best.pt,选择标准为验证集mAP@50:0.95指标最高。

训练稳定性分析

  • 收敛速度:前30轮快速收敛(56.64%→70.26%),30-90轮稳定提升,90轮后收敛
  • 过拟合控制:训练集与验证集损失走势一致,无过拟合
  • 训练稳定性:损失曲线平滑,学习率逐步衰减,训练稳定
  • 最终状态:最佳模型第116轮,mAP@50-95达73.44%

项目资源

我们提供项目的完整技术资源,包括源代码、训练脚本、配置文件、数据集和模型权重等全部内容。代码采用模块化设计,结构清晰,注释完善,支持完全复现论文中的所有实验结果。项目提供详细的文件清单和技术架构说明(网页已经提供),帮助用户快速理解项目结构,便于二次开发和功能扩展。所有资源均已开源,遵循AGPL-3.0协议,用户可自由使用、修改和分发。

关于项目

本项目基于YOLOv11n目标检测算法,实现了对泳池溺水行为的高精度智能检测。模型采用标准的YOLOv11n(Nano)架构,在自定义3类行为数据集上经过150轮训练,在验证集上达到97.30%的mAP@50和73.40%的mAP@50:0.95,同时保持了轻量级特性(模型大小仅5.5MB,参数量2.59M),为泳池安全监控提供了高效的技术支持。

项目背景

随着公共水域安全管理需求的日益增长,泳池溺水事故的及时发现与预警成为安全监控领域的核心需求。传统的人工巡视方式效率低下、易疲劳疏漏,难以实现全天候不间断监控。近年来,深度学习技术在目标检测领域取得突破性进展,为解决这一问题提供了新思路。本项目立足于实际应用需求,针对泳池场景下游泳、踩水、溺水三类行为的精准识别难题,采用基于YOLOv11n的轻量级智能检测方案,旨在通过技术手段提升泳池安全监控的智能化水平,降低管理成本,提高溺水行为检测的准确性和实时性。

作者信息

作者:Bob (张家梁)
项目编号:YOLO_1 & Datasets-2
原创声明:本项目为原创作品

开源协议

本项目采用AGPL-3.0开源协议,允许个人和组织自由使用、修改和分发代码,但基于本项目的衍生作品必须同样开源,且用于提供网络服务时需向用户提供完整源代码。本项目仅供学习研究使用,作者不对使用本项目产生的任何后果承担责任,使用者应遵守当地法律法规,合理合法使用本项目。如本项目对您的研究或工作有所帮助,欢迎引用并注明出处。

版权声明:本站除特别标注外的所有源码与资料均为原创,受《中华人民共和国著作权法》等相关法律保护。未经本站事先书面许可,任何个人或机构不得以复制、转载、爬取、汇编、改写、引用等方式使用本站内容,不得将本站内容发布或用于任何形式的商业活动。对未经授权使用本站内容的行为,本站保留追究法律责任的权利,包括但不限于要求删除、赔偿、诉讼等。如认为本站内容侵犯其合法权益,请提供权属证明并联系我们,我们将在核实后依法及时处理。