基于YOLOv4的易发生事故区域人员检测预警应用

2022-01-22 11:21刘洋李丹
电子测试 2021年24期
关键词:示警网络结构主干

刘洋,李丹

(四川大学锦城学院,四川成都,611731)

0 引言

随着近年来直播和短视频平台的兴起,衍生了大量以直播和短视频拍摄制作为职业的各类博主,为制作足够吸引观众眼球的作品,国内外出现大量了以“高空挑战”,“高空跑酷”为视频内容的制作者,其中不乏因此而高空坠亡的视频制作者,这类视频制作者大多倾向于选择楼层较高,危险系数高的建筑顶层等鲜有人至的高危区域进行视频拍摄,由于大多数区域依靠人力很难做到持续监管,导致安全管理人员很难及时发现和规避风险。

高速网络的迅速普及使得家用监控摄像已经在大量家庭部署,用户可以使用监控随时关注家人状态,其中对小孩安全的照看是监控设备的主要应用场景之一,然而家长即使是在线下也仍然存在对小孩安全照看的疏忽,许多惨剧因此发生。针对以上一系列问题,急需一种可以部署到家庭的轻量化,计算力要求小的安全监控系统在某些危险区域出现人员异常活动时对管理人员示警。

随着卷积神经网络近年来的不断发展,其在目标检测和识别方面已经取得了很大进步。当前目标检测的方法简单来说分为两步:1.检测目标位置,2.对目标进行分类。而主流目标检测算法大致分为两类:一阶段(one-stage)和二阶段(two-stage)目标检测算法,其中一阶段算法即指检测和分类同时进行的算法,其中较有代表性的算法有YOLO系列,SSD[1]等算法,这类算法相对于二阶段算法如R-CNN[2],fast-CNN系列[3,4]等算法的优势在于其执行效率更加高效,但是在精度方面一阶段算法总体不如二阶段算法。要想在各类监控设备上部署检测系统,需要考虑实时性需求和具体应用时的硬件限制。所以一阶段算法因为其高效性和对计算资源较低的需求成为了部署在这类设备上的不二选择。

1 YOLO系列概述

YOLO系列初代算法YOLOv1[5]是由Joseph Redmon在2016年CVPR上首次发表,自此YOLO系列因其高效的性能而被广泛应用到各类实时检测任务中。在初代YOLO中,作者将图像分割为7*7的共计49个小单元格,图片经过YOLOv1网络处理之后将会输出一个7*7*30的张量,其中7*7是指将图片分割成7*7的网格,30是指预测框的宽高,中心点坐标,置信度以及可预测的20个物体种类,通过这样的张量拼接方式使得YOLO可以同时完成对目标位置和种类的预测。此后的一系列YOLO算法基于这种思想不断在精度,速度和可识别物体种类方面进行了改进,YOLO9000[6]将可识别物体的种类从20种增加到了9000种,YOLOv3[7]在前面两代算法的基础之上进一步提升了速度和精度。2020年新作者AlexeyAB接手原作者的工作发布了YOLOv4[8],YOLOv4的网络结构主要包含四大部分,输入,主干网络,颈部结构,头部结构。YOLOv4相较于YOLOv3带来了精度和速度的全面提升,YOLOv4网络吸收整合了世界上最先进有效的数据处理方法,YOLOv4的作者在论文中将这些方法分为两类,一类是只需要增加一点训练时的开销,但是不会增加检测时候的时间开销就能带来一定精度上提升的方法,这类方法作者称为“Bag of freebies”,YOLOv4中这一类方法主要是一些预处理方法,如Mosaic数据增强,通过将多张图片随机缩放,裁剪,排布之后拼接到一起,既增强了模型鲁棒性也降低了对硬件配置的要求。另一类方法是增加检测开销但是能够显著带来精度提升的方法,在YOLOv4中这类方法被称为“Bag of specials”,具体应用到的方法包括使用SPP模块,PAN模块,以及在主干网络中使用Mish激活函数,CSP模块等处理方法。在YOLOv4发布后不久,YOLOv4-tiny上线,其网络结构更加简单,检测速度大大提升,同时由于其对计算能力要求不高,使得其能轻松部署到各类硬件条件不是很好的终端上完成实时的检测任务。

1.1 YOLOv4

YOLOv4(网络结构如图1)是一种基于YOLOv3并融合多种先进数据处理方法改进而来的精度高,效率快的目标检测算法。可以在各类终端完成部署并且达到实时检测的目的。

图1 YOLOv4网络结构

1.1.1 主干网络

CSPDarknet53作为主干网络的作用是提取目标特征,其中包含共计72层卷积,五个结构不同的残差块,相较于YOLOv3在主干网络中使用Leaky relu作为激活函数不同的是,在YOLOv4主干网络中使用了Mish激活函数。YOLOv4在主干网络中将YOLOv3中的残差单元与CSPNet[9]相结合构建了大的残差块,每个残差块之前的一层卷积会将图像的尺寸减小一半,通道数增加一倍。CSPNet网络的作者认为在实际应用中推理成本过高的原因是在网络优化过程中有大量的梯度信息重复,增加了很多的计算量,因此采用CSP模块先将基础层的特征映射划分为两部分,然后通过跨阶段层次结构将它们合并,在减少了计算量的同时可以保证准确率。这样既增强了网络对特征的提取能力,也避免了图像在多次卷积之后特征消失的情况。采用这样的主干网络带来这样两个优点:1.增强卷积神经网络的学习能力,2.降低对计算机硬件的要求。

1.1.2 SPP模块

SPP模块是受空间金字塔网络(SPPNet[10])启发,SPPNet使用多个最大池化窗口对输入的图片进行池化操作,不受输入图像尺寸限制,总是输出固定大小的特征图。使用SPP模块的作用主要是融合多重感受野的特征融合以及得到固定大小输出的特征图。

1.1.3 PAN模块

PAN模块在YOLOv4中通过在颈部模块先自顶向下进行上采样,使得特征图维度翻倍,再自底向上完成下采样,使得维度折半,通过这一模块完成图像的特征融合,最后输出三个head完成预测。

1.2 YOLOv4-tiny

YOLOv4是俄罗斯开发者Alexey等人在YOLOv4发布之后提出的一种目标检测算法,相比于YOLOv4,其更加轻量化,网络结构更加简单(图2),执行效率更高,但是精度会有一定下降,相较于YOLOv4,YOLOv4-tiny对硬件设备的要求更友好。其主干网络共38层,首先使用两个(3*3*2)卷积完成两次对输入图像的下采样,然后使用三个CSP模块,CSP模块的作用是,划分基础层的特征映射,然后通过跨层次结构合并,使用这一结构可以使得模型在轻量化的前提下保证准确率。在YOLOv4中,主干网络使用了Mish激活函数,这使得YOLOv4模型map得到了进一步提升,而在YOLOv4-tiny中,主干网络使用的是leaky-relu。同时在head部分,YOLOv4最终结果产生三个head,在YOLOv4-tiny中最后只产生两个head。

图2 YOLOv4-tiny网络结构

2 实验及结果

2.1 数据集

本文使用的原始数据集是VOC2011数据集,提取出其中共计7419张有人类出现的图片进行训练,再从其中选取148张图片作为测试集,选取剩余7271张图片作为训练集。

2.2 模型训练

在Colab平台上分别对YOLOv4和YOLOv4-tiny两种模型进行训练和测试,其中YOLOv4-tiny迭代次数为4000,YOLOv4迭代次数为2500,GPU为Tesla T4。详细参数设置如下所示,batch=64 ,classes=1,Learning_rate=0.001。从训练过程图像(图3,4)得知YOLOv4-tiny和YOLOv4都在训练迭代2000轮之后损失值趋于收敛状态。

图3 YOLOv4-tiny损失图像和mAP

图4 YOLOv4损失图像和mAP

2.3 实验结果及分析

以mAP作为模型评价指标,最终训练结果(表1)得到YOLOv4的 mAP为 91.9%,YOLOv4-tiny的 mAP为 80.33%,从实验结果可以发现,YOLOv4的检测时间是YOLOv4-tiny的两倍,但是带来的精度提升却只有10%左右。80%的mAP在大多数的应用场景下已经能够胜任。把训练好的模型拿到1050 Ti的机器上测试发现YOLOv4-tiny能够达到15帧左右的检测速度,画面流畅,而同环境下YOLOv4只能达到8帧左右的检测速度,画面有明显延迟。从在特定区域内的检测效果来看,两种模型除了在置信度方面YOLOv4显著高于YOLOv4-tiny,检测效果几乎一致(如图5)。

表1 训练结果

图5(左:YOLOv4,右:YOLOv4-tiny)

3 易发生事故人员检测预警系统

通过在可能发生事故的高危区域的监控设备上部署一个检测预警系统,整个系统由三个子系统构成(图6)。可以警示监管人员及时关注高危区域的人员活动。一旦系统检测到区域内有不正常人员活动,立即通过接口激活示警系统,通过视觉和声音信号向管理人员示警。

图6 检测预警系统

4 结语

本文所实现的是在高危区域部署监控设备,在有人员进入时对监管人员进行示警,从而帮助管理人员及时阻止相关区域的危险行为。其中YOLOv4-tiny的mAP达到了80.33%,完全能轻松部署到大部分监控系统并完成实时监测任务,然而这一结果还不够满足各类场景下的准确示警(如巡逻人员进入,建筑维护人员的正常工作),下一步在这一应用背景下的研究会优化如何降低对各类非关心目标的误报,可以从以下三个方向着手:(1)对检测到的人员身上衣物制服进行二次分类,对保安,巡护等工作人员进行过滤,避免系统在某些情况下频繁示警。(2)在前者基础之上加入对人体危险动作的识别,从而形成更加完善的报警系统和危险级别分级,在这一方面已经有人开始了相关研究并取得了不错的成就[11]。(3)对于在家庭中的应用,可以通过小范围内对特定目标的身材比例进行识别,从而完成一定程度上的误报过滤。

猜你喜欢
示警网络结构主干
抓主干,简化简单句
犬在搜索训练中 示警常见问题分析
浅谈气味搜索训练中口令“非”和无奖励的使用
浅析搜爆犬跟随示警的训练方法及要点
左主干闭塞的心电图表现
整合内容 构建高效课堂——开展非线性主干循环活动型单元教学模式
基于互信息的贝叶斯网络结构学习
知识网络结构维对于创新绩效的作用机制——远程创新搜寻的中介作用
沪港通下A+ H股票网络结构演化的实证分析
复杂网络结构比对算法研究进展