一种基于YOLOv4的泳池溺水检测方法技术

技术编号:29403478 阅读:32 留言:0更新日期:2021-07-23 22:41
本发明专利技术公开了一种基于YOLOv4的泳池溺水检测方法,通过对YOLOv4检测模型加入泳池判定线进一步约束检测目标类别,提高检测精度。游泳池布置的水下摄像机采集游泳池中所有游泳人群的图像并对其进行标注,得到专有游泳者数据库;游泳者数据库采用K‑means聚类算法得到先验框的尺寸,按照不同尺度聚类出9种尺寸的先验框;构建YOLOv4网络模型,进行迭代训练,直到损失函数收敛,保存训练好的网络模型;将上述训练好的网络模型加入泳池判定线模型,使模型对识别到的目标类别可以进行再一次判定;输出符合要求的YOLOv4‑泳池判定线检测模型;使用YOLOv4‑泳池判定线检测模型对水下序列图像进行目标检测。本发明专利技术检测速度快,准确度高,溺水检测误报率低,满足实时监控的要求。

【技术实现步骤摘要】
一种基于YOLOv4的泳池溺水检测方法
本专利技术涉及计算机视觉人工智能技术,特别是涉及一种基于YOLOv4的泳池溺水检测方法。
技术介绍
随着国民的运动健身意识的觉醒,游泳成为了人们最喜欢的运动之一。但与此同时泳池溺水事故呈现出高发态势,一旦发生溺水事件,救生员往往难以在第一时间察觉并作出反应。所以研究怎样才能及时的发现,救助溺水者,有着重大的现实价值。对于公共人工游泳馆(池)的安全问题,一部分场馆使用传统的人力监管模式。每个游泳池都靠2-4个救生员时刻紧盯着水面来预防和救援溺水人员。但这种监管模式,可靠性差、救生员处理突发事件的能力较弱、溺水者救助速度也很慢,很难有效保证场馆内的公共安全。再加上人生理条件的限制使得救生员很难保持长时间的注意力高度集中,长时间注视泳池水面还会让救生员出现眩晕状态。对于游泳旺季,游泳池经常人数众多,环境嘈杂,溺水者在水面上的求救动作很难及时引起救生员的注意,而一旦溺水者沉入水下就更加难以被察觉。另一部分场馆使用摄像头对游泳馆内部和水下进行监控,但多为人工监视,不仅耗费人力,而且监视效果会受到人的情绪以及疲劳程度等因素影响,容易出现漏检现象,对溺水者预防和救助效果不明显。
技术实现思路
本专利技术提供一种基于YOLOv4算法的泳池溺水检测方法,通过对YOLOv4检测模型加入泳池判定线模型进一步约束检测目标类别提高检测精度,降低溺水者检测误报率,其特征在于,包括以下步骤:S1:通过游泳池布置的水下摄像机采集游泳池中所有游泳人群的图像并对其进行标注,得到专有游泳者数据库。S2:游泳者数据库采用K-means聚类算法得到先验框的尺寸,按照不同尺度聚类出9种尺寸的先验框。S3:在YOLOv4网络模型的配置文件中设置网络模型参数,将YOLOv4网络结构放入配置好环境的计算机中,使用训练集对预训练模型进行迭代训练,直到损失函数收敛,保存训练好的网络模型。S4:将上述训练好的网络检测模型加入泳池判定线模型,使模型对识别到的目标类别进行再一次判定。S5:输出符合要求的YOLOv4-泳池判定线检测模型。S6:使用步骤S5中符合要求的YOLOv4-泳池判定线检测模型对序列图像进行目标检测,输出检测结果,并对溺水现象进行报警。进一步的,步骤S1中所述的游泳者数据库,为如下要求:水下摄像机采集游泳池中游泳人群的视频,将采集的视频转化为图片格式,利用Labelimg软件标注成VOC格式得到得到游泳者数据库,其中游泳者的自由泳、仰泳、蛙泳、蝶泳、跳水、踩水等行为标记为正常游泳(swimming),潜水、挣扎、溺水等行为标记为溺水(drowning)。进一步的,步骤S3中所述的配置文件,为如下要求:S3-1:当输入图像大小为416x416,参数random为0,batch_size参数为16,批次细分subdivision=16,迭代次数为6000,初始学习率为0.001,检测物体种类为2时,用户使用cpu训练模型,至少需要2GB内存;使用单GPU训练模型,至少需要4GB。S3-2:当输入图像大小为608x608,参数random为0,batch_size参数为16,批次细分subdivision=16,迭代次数为6000,初始学习率为0.001,检测物体种类为2时,用户使用cpu训练模型,至少需要3GB内存;使用单GPU训练模型,至少需要6GB。进一步的,步骤S4中所述的泳池判定线模型,具体包括如下:根据图片中泳池水下歇脚台的位置对图片进行划分,图片中歇脚台位置即为判定线,依据所划分的判定线将图片分为上下两部分,判定线的上方为正常游泳区,下方为溺水区。当检测目标中心位置位于正常游泳区时,如果目标标签为溺水(drowning),则将标签修正为正常游泳(swimming),如果目标标签为正常游泳(swimming),则无需修正;当检测目标中心位置位于溺水区时,如果目标标签为正常游泳(swimming),则将标签修正为溺水(drowning),如果目标标签为溺水(drowning),则无需修正。进一步的,步骤S5中所述的符合要求是指对YOLOv4-泳池判定线检测模型进行性能评估,mAP0.5达到92%及以上。进一步的,步骤S6中所述的进行报警的要求为:连续5秒内出现溺水报警信号。附图说明图1为YOLOv4-泳池判定线检测方法的流程图。图2为YOLOv4网络结构图。图3为泳池判定线坐标图。图4泳池水下目标检测图。具体实施方式下面结合附图1和具体实施例对本专利技术进行详细说明。本实施例以本专利技术技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本专利技术的保护范围不限于下述的实施例。一种基于YOLOv4算法的泳池溺水检测方法,如图1~图4所示,包括:S1-1:图像的获取:通过游泳池布置的水下摄像机,采集游泳池中所有游泳人群的数据,视频的帧速一般是1秒30帧图片左右,设置取帧频率为1秒取3帧,样本总数至少20个视频以上,即样本数目约为15000张左右。并将采集到的图像按照PascalVOC数据集的格式将图片命名,同时创建名为Annotations、ImageSets、JPEGImages的三个文件夹,在ImageSets下新建Main文件夹。将收集到的数据集图片拷贝到JPEGImages目录下。S1-2图像的标注:使用的标注工具labelimg对图片进行标注,生成xml标注文件。将约15000张视频帧图片进行随机编号,给图片编一个合理的序号,比如000001~000999;利用labelimg软件标注数据,每一个图片名对应的有一个相应名字的xml标注文件,比如图片000001.jpg,标注文件是000001.xml。标注的范围包括:图像所在位置、图像名称(如000001.jpg)、图像宽高、图像维度、标注的物体名称以及bbox的坐标值;游泳者行为包括自由泳、仰泳、蛙泳、蝶泳、跳水、踩水、潜水、挣扎、溺水,其中游泳者的自由泳、仰泳、蛙泳、蝶泳、跳水、踩水等行为标记为正常游泳(swimming),潜水、挣扎、溺水等行为标记为溺水(drowning)。其中对图像数据进行划分,分为训练数据集和验证数据集,其中训练数据集占80%,验证数据集占20%。S2:对图片数据集采用K-means聚类得到先验框的尺寸:为每种下采样尺度设定3种先验框,总共聚类出9种尺寸的先验框。数据集的9个先验框是:(68x118),(93x137),(114x84),(139x220),(158x135),(173x72),(213x300),(237x104),(291x159)。表1特征图多尺度分配S3:YOLOv4模型训练步骤:利用YOLOv4对训练数据集进行训练学习,操作如下:YOLOv4目标检测网络以CSPDarknet53为主干,包含5个CSP模块,各模块前的卷积核大小为3×3,步幅本文档来自技高网...

【技术保护点】
1.一种基于YOLOv4的泳池溺水检测方法,包括以下步骤:/nS1:通过游泳池布置的水下摄像机采集游泳池中所有游泳人群的图像并进行标注,得到游泳者数据库;/nS2:游泳者数据库采用K-means聚类算法得到先验框的尺寸,按照不同尺度聚类出9种尺寸的先验框;/nS3:在YOLOv4网络模型的配置文件中设置网络模型参数,将YOLOv4网络结构放入配置好环境的计算机中,使用训练集对预训练模型进行迭代训练,直到损失函数收敛,保存训练好的网络检测模型;/nS4:将上述训练好的网络检测模型加入泳池判定线模型,使模型对识别到的目标类别进行再一次判定;/nS5:输出符合要求的YOLOv4-泳池判定线检测模型;/nS6:使用步骤S5中符合要求的YOLOv4-泳池判定线检测模型对序列图像进行目标检测,输出检测结果,并对溺水现象进行报警。/n

【技术特征摘要】
1.一种基于YOLOv4的泳池溺水检测方法,包括以下步骤:
S1:通过游泳池布置的水下摄像机采集游泳池中所有游泳人群的图像并进行标注,得到游泳者数据库;
S2:游泳者数据库采用K-means聚类算法得到先验框的尺寸,按照不同尺度聚类出9种尺寸的先验框;
S3:在YOLOv4网络模型的配置文件中设置网络模型参数,将YOLOv4网络结构放入配置好环境的计算机中,使用训练集对预训练模型进行迭代训练,直到损失函数收敛,保存训练好的网络检测模型;
S4:将上述训练好的网络检测模型加入泳池判定线模型,使模型对识别到的目标类别进行再一次判定;
S5:输出符合要求的YOLOv4-泳池判定线检测模型;
S6:使用步骤S5中符合要求的YOLOv4-泳池判定线检测模型对序列图像进行目标检测,输出检测结果,并对溺水现象进行报警。


2.根据权利要求1所述的一种基于YOLOv4的泳池溺水检测方法,其特征在于,S1中所述的游泳者数据库中,水下摄像机采集游泳池中游泳人群的视频,将采集的视频转化为图片格式,利用Labelimg软件标注成VOC格式得到得到游泳者数据库,其中游泳者的自由泳、仰泳、蛙泳、蝶泳、跳水、踩水行为标记为正常游泳,潜水、挣扎、溺水行为标记为溺水。


3.根据权利要求1所述的一种基于YOLOv4的泳池溺水检测方法,其特征在于,S3中所述的配置文件,为如下要求:
S3-1:当输入图像大小为416x416,参数random为0,batch_size参数为16...

【专利技术属性】
技术研发人员:雷飞朱恒宇欧家豪王蕊张轩
申请(专利权)人:北京工业大学
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1