SCI论文(www.lunwensci.com)
摘要:针对人们摔倒后可能出现意识模糊无法呼救易产生二次伤害的问题,研究开发了一款可通过实时检测摄像头画面内容人物是否摔倒,并在发现摔倒后及时反馈警报的系统。通过机器视觉技术结合深度学习方法,首先自建数据集并加以训练得到用于构建基于YOLOv5的人物摔倒状况的模型,然后在此基础上结合实时图像传输与下位机Arduino板进行控制响应,实现对人物摔倒状况的快速检测和摔倒后的警报响应,通过对比YOLOv5m和YOLOv5s的loss速度对比确定了训练模型。实验结果表明,所设计的摔倒检测报警系统模型训练精确率为99.52%,召回率为99.77%,可以分辨出侧摔,仰摔等摔倒情况,实际测试结果置信度在0.6~0.8,能够发现摔倒情况并发出警报,提高了救助摔倒者的可能性。
关键词:摔倒;报警;目标检测;深度学习;YOLOv5
FallDetectionandAlarmSystemBasedonYOLOTargetDetection
QinZijun,DengJun,ChenKunhao,WangYan
(SchoolofMechanicalEngineering,DongguanUniversityofTechnology,DongguanGuangdong523000,China)
Abstract:Inordertosolvetheproblemthatpeoplemaybecomeunconsciousandunabletocallforhelpafterfalling,whichmayeasilycausesecondaryinjuries,asystemisdevelopedthatcandetectwhetherthepersoninthecamerascreenhasfalleninrealtime,andprovidetimelyfeedbackalertswhenafallisdetected.Bycombiningmachinevisiontechnologywithdeeplearningmethods,adatasetisbuiltandtrainedtoobtainamodelforbuildingafallingsituationofafigurebasedonYOLOv5.Then,onthisbasis,thereal-timeimagetransmissionandtheArduinoboardofthelowermachinearecombinedtocontroltheresponse,soastoachieverapiddetectionofthefallconditionofthefigureandthealarmresponseafterthefalling.ThetrainingmodelisdeterminedbycomparingthelossspeedofYOLOv5mandYOLOv5s.Experimentalresultsshowthatthedesignedfalldetectionandalarmsystemhasamodeltrainingaccuracyof99.52%andarecallrateof99.77%.Itcandistinguishsidefalls,backwardfallsandotherfallsituations,andtheactualtestresultconfidencelevelis0.6~0.8.Thesystemcandetectafallandsoundanalarm,improvingthepossibilityofrescuingthepersonwhofell.
Keywords:fallingdown;alarm;objectdetection;deeplearning;YOLOv5
0引言
2020年我国65岁以上老龄人口达到1.91亿,占总人口比重为13.5%,全球每4个老年人中就有1个中国人。预计2057年中国65岁以上人口达峰值4.25亿人,占总人口比重32.9%~37.6%[1]。中国人口老龄化程度在全球已处于中上水平。而老年人由于衰老导致感觉迟钝、反应变慢以及视力减退,身体失去平衡时不能及时做出适宜的动作,容易跌倒。并且衰老导致骨骼肌肉系统退化,肌肉力量和关节灵活性下降,或由于腰背、脊柱的劳损退变使脊柱对下肢的调节能力下降,容易诱发跌倒。除老年人以外,醉酒或患有脑部疾病的人也可能发生意识模糊、四肢不听使唤等情况,即使是年轻人也易出现摔倒的问题。
为了减少摔倒后人们因伤痛无法呼救或无法自救造成二次损失的问题,人们对摔倒检测开展了深入研究。在计算机视觉领域,深度学习技术被广泛应用到目标检测和图像识别中,基于准确性与实时性两方面考虑,分为基于YOLO系列算法的人体行为识别和基于SSD算法的人体行为识别。邓志峰等[2]提出了一种基于卷积神经网络(CNN)和人体椭圆轮廓的运动特征的摔倒检测方法。王萍叶等[3]采用使用YOLO识别并定位以及记录人的运动轨迹实现检测。朱娜等[4]基于SSD算法,提出了一种轻量级的网络模型,能够加快检测速度。
为了减少摔倒后人们因伤痛无法呼救或无法自救造成二次损失的问题,设计了一款检测摔倒报警系统,运用目前主流的YOLO目标检测算法来实现该系统可以。
本文在上述研究的基础上,利用摄像头实时检测画面内老年人摔倒情况并做出反馈,采用现阶段应用最广泛的目标检测算法YOLOv5算法,通过实现自建数据集训练,实现对摔倒情况的检测与警报。
1总体方案
图1所示为该摔倒报警系统总体框架。本摔倒目标检测系统项目其整体由电脑端(上位机)和控制端(下位机)组成。电脑端主要负责启动并维持程序运行,进行实时的目标检测并输出所得信息。控制端由摄像头、ArduinoUNO控制板、蜂鸣器所组成,进行警报的响应。
电脑端开启后运行检测程序。首先,由控制端的摄像头实时传输图片流到电脑端,随后电脑端通过YOLO模型程序对每一张图片内的人物进行状态分析和检测。
在每一次信息分析完成后,电脑端将反馈图片内的人物状态,若判断为摔倒,则电脑端输出对应信号至ArduinoUNO板进行警报响应,实现实时摔倒报警的目的。
2目标状态检测
2.1YOLOv5算法
YOLOv5模型架构如图2所示,图中,输入层输入为任务图像,即通过马赛克数据增强后的组合图像。马赛克数据增强方法能够进一步提升模型的训练速度和网络的准确率。同时,YOLOv5采取使用自适应锚框计算和自适应图像缩放的方法,简化了选用YOLOv4时单独选用k-means算法进行初始锚框计算的步骤。YOLOv5的主干网络和颈部主要由CBL结构、CSP1结构、CSP2结构、SPPF结构、拼接操作(Concat)和上采样操作(UpSample)组成。CBL结构是卷积、归一化和Leaky激活函数的组合。CSP1和CSP2结构是CSPNet的增强版本,由卷积、数个最大池化和拼接操作组成。
图2展示了YOLOv5目标检测算法的整体框图。其中可以分为输入端、骨干网络、颈部(Neck)网络与(Head)输出端4个部分。输入端输入图像,采用上述提到的马赛克(Mosaic)数据增强以及自适应图像缩放的两种方法实现预处理,网络的输入图像像素为[640,640]。
骨干网络是性能优异的分类器网络,该模块用于提取一些通用的特征表示。YOLOv5中选用了Focus作为结构的第一层,以及后续采用CSPDarknet53结构为基准网络。
Neck网络通过将骨干网络所提取的特征进行融合,能够进一步提高特征的多样性和鲁棒性。
Head输出端实现目标检测结果的输出。即利用前面几个模块所传递的特征图进行多尺度的目标检测,并输出结果。
2.2制作摔倒检测数据集
由于YOLOv5自带的COCO数据集涵盖了80种物体分类、33万张图片、150万个目标对象,而本项目所需数据集只需人物的站立和摔倒两种图片,所以为了有效提高分辨效率,需要自制新的数据集。
2.2.1视频分割处理
利用读取视频帧frame并逐帧保存的代码功能,将获取的素材视频通过每2帧保存1张图片的方法进行图片分割处理,最终获得如图3所示效果。
2.2.2使用LabelImg进行图片标记
LabelImg是一个图像标注工具。FasterR-CNN、YOLO、SSD等目标检测网络所需的数据集都可以使用这个工具来标定图像中的目标。生成的XML文件遵循PASCALVOC格式。
将所生成的图片导入LabelImg工具中,依次对目标人物状态进行手动标注UP和DOWN,如图4~5所示。
最终会生成标示位置坐标的XML文件(图6)。后续可以利用所生成的XML文件进行电脑权重文件的深度学习。
2.3利用数据集和YOLO算法模型进行权重文件训练
2.3.1修改配置文件
前期准备工作完成后,在YOLOv5文件夹中的data目录下创建文件夹,将之前LabelImg标注好的xml文件和图片放到对应目录下,通过最后随机分配为训练集、验证集和测试集,分别有500、70、70张。
首先修改模型文件配置文件down.yaml文件的配置,将nc(即numberofclasses)改为2,代表本次训练数据集的对象为2。再将classnames修改为目标对象的名字,为了方便辨识,目标对象站立为up,摔倒为down。然后再修改train.py的主函数参数,epochs改为800、batch-size改为4、img-size改为[640,640],其中epochs和batch-size是基于GPU大小而定的数据,epochs被定义为向前和向后传播中所有批次的单次训练迭代。
如果epoch数量太少,会使定型数据的学习不够充分;如果epoch数量太多,则有可能发生过拟合。Batch-size决定了下降梯度幅度,与epoch大小挂钩。
2.3.2网络模型对比与选定
YOLOv5根据结合CSP1与CSP2网络的深度和宽度倍率,主要分为YOLOv5s、YOLOv5m、YOLOv5n、YOLOv5l、YOLOv5x五种。本文针对YOLOv5s与YOLOv5m两款模型的差别作了对比实验。首先对两个模型用同一份的站立与跌倒数据集进行训练,如图7为训练得出的loss图。将数据整理成表1。由表1和图7可以得到,在只训练30个epoch中,YOLOv5m收敛速度要慢于YOLOv5s,且YOLOv5m最终精度与YOLOv5s相差无几的同时,参数量约是YOLOv5m的16倍。
经过以上实验结果可得,对于此份数据集,YOLOv5s的效果更加显著,所以本系统选用YOLOv5s的模型用于训练。
2.3.3实验平台及参数设置
实验平台如表2所示,模型共训练800次,初始学习率0.01,动量0.937,输入图像尺寸为[640,640],批量大小设置为16,权重衰减系数0.0005。
2.3.4评估指标与结果分析
YOLOv5每次训练完成后,都会自动保存可视化的训练结果result.png(图8),result.txt以及训练权重weights(last.pt和best.pt)。评价模型的好坏,主要需要对精度进行评估,而评估一般采用平均精度均值mAP作为指标,mAP是用Precision和Recall作为两轴作图后围成的面积,Precision和Recall的计算公式如下:
2.4利用权重文件进行分析处理
利用训练好的权重文件进行推理测试,通过修改detect.py,将weights改为最新训练所得的best.pt文件,source改为'0'代表使用摄像头传输图像,img-size改为640,即与预设训练模型图像尺寸大小相同后,即可实现实时目标检测。结束后,run文件下会生成一个detect目录,推测结果会保存在exp目录。效果如图10所示。
3实验结果
通过所得到的权重文件,利用摄像头实时检测目标,再通过搭配arduino板与蜂鸣器,实现在检测画面内,当出现摔倒现象时,控制蜂鸣器发出警报的效果。
为了验证该系统的实际使用效果,选择在摄像头下进行实际人物实验,并增加了一些额外因素,例如人物侧摔、坐立等情况。其中实际人物实验分为3组,分别在室内环境下以侧摔、站立、起身的姿势用于检测。
展开了多次实验验证,结果如图11所示。可以看出,人物处于侧摔,坐立,正要起身状态,分别识别为down、up、up,最终得到的数据置信度均在0.6~0.8,即可信度在60%~80%。
最后在确认人物摔倒后,通过检索检测系统所识别的字符串进行反馈,使得下位机Arduino板能够触发蜂鸣器触发警报。
4结束语
本文针对人们摔倒后可能无法自救问题,研发了一款基于YOLOv5的摔倒警报系统,通过自建数据集,对比选定适合的网络模型,并通过GPU训练完成了可用于检测人类摔倒与站立状况的模型。评估数据表明模型训练精确率为99.52%,召回率为99.77%,实际测试结果置信度在0.6~0.8。系统能基本实现检测人物摔倒状况并做出警报响应。本次设计还存在警报过于简单,识别灵敏度不够高等不足。未来将对本设计加以改进,进一步优化改进网络结构,让测试效果更加高效,准确,并实现电脑端与物联网、手机端等实现通信,做到网络沟通,健全智能设置。
参考文献:
[1]宁吉喆.第七次全国人口普查主要数据情况[J].中国统计,2021(5):4-5.
[2]邓志锋,闵卫东,邹松.一种基于CNN和人体椭圆轮廓运动特征的摔倒检测方法[J].图学学报,2018,39(6):1042-1047.
[3]王萍叶.基于YOLO的视频摔倒检测算法[J].电脑编程技巧与维护,2019(11):137-139.
[4]朱娜.基于改进SSD算法的老年人摔倒检测[D].北京:北方工业大学,2022.
[5]蒋阳阳.基于YOLOv3的居家老人摔倒检测系统的设计与实现[D].南京:南京邮电大学,2021.
[6]吕俊杰.基于深度学习的居家老人跌倒检测研究[D].济南:山东建筑大学,2021.
[7]张云浦,李玉榕,陈建国.基于MEMS传感器的可穿戴式老年人跌倒监测系统的设计[J].生物医学工程研究,2014,33(3):170-175,183.
[8]李娇.基于深度学习的老年人跌倒检测算法与实现[D].天津:河北工业大学,2021.
[9]YANGXu,XIONGFangyuan,SHAOYuan,etal.WmFall:WiFi-basedmultistagefalldetectionwithchannelstateinformation[J].InternationalJournalofDistributedSensorNetworks,2018,14(10).
[10]李辉.基于家居场景的老人跌倒模型研究与设计[D].荆州:长江大学,2022.
[11]郭子彧.基于嵌入式系统的跌倒监测系统设计[D].武汉:江汉大学,2022.
[12]CHENGSichao,ZHANGHekai.YOLOv5-basedfalldetectionmethod[J].AcademicJournalofComputing&InformationScience,2022,5.0(4.0).
[13]ZHENGLiang,ZHAOJie,DONGFangjie,etal.FallDetectionAlgorithmBasedonInertialSensorandHierarchicalDecision[J].Sensors,2022,23(1).
[14]张晟祺,解乃军,纪有旺,等.基于STM32的老人跌倒检测智能家居系统设计[J].工业仪表与自动化装置,2023(1):35-39.
[15]张靖.改进YOLOv5的人体摔倒检测[J].现代信息科技,2023,7(4):121-124.
[16]李海鹏,余强.基于YOLOv5的目标识别追踪模型轻量化[J].汽车实用技术,2023,48(5):30-33.
[17]WANGShuting,GAOJianshu,LUFuqi,etal.Humanmotionrecognitionbyashoes-floortriboelectricnanogeneratoranditsapplicationinfalldetection[J].NanoEnergy,2023,108.
[18]LIBAKA,ALEXANDERF,PETERP,etal.Falldetectionfromamanualwheelchair:preliminaryfindingsbasedonaccelerometersusingmachinelearningtechniques[J].AssistiveTechnology:theOfficialJournalofRESNA,2023.
[19]GAOMengqi,LIJiangjiao,ZHOUDazheng,etal.FalldetectionbasedonOpenPoseandMobileNetV2network[J].IETImageProcessing,2022,17(3)
关注SCI论文创作发表,寻求SCI论文修改润色、SCI论文代发表等服务支撑,请锁定SCI论文网! 文章出自SCI论文网转载请注明出处:https://www.lunwensci.com/ligonglunwen/77346.html