基于改进YOLOv5算法的升降机人员不安全行为识别方法
2022-05-18余益鸿周传德孟明辉朱志强付朝毅
余益鸿 周传德 孟明辉 朱志强 付朝毅 张 鑫
(重庆科技学院 机械与动力工程学院,重庆 401331)
施工升降机作为一种重要的垂直运输工具,凭借着易操作、速度快等优点广泛应用于建筑、煤矿井等领域;但在为施工人员提供便利的同时所产生的一系列安全问题也不容忽视,如乘梯人员不安全行为应予以重点监控。
近年来,国内外学者对基于视觉引导的施工升降机人员不安全行为的检测方法作了较多研究。区域环境下的人数统计方法主要包括:一是基于静态图片进行目标检测,如文献[1]中利用类圆检测的改进Hough变换方法检测人员数量,指出图像灰度值对检测精度影响较大;文献[2]中指出Haar特征分类器效果不强,人物遮挡对检测精度影响较大。二是基于视频序列进行图像跟踪,如文献[3]中利用安全帽颜色以及人物几何特征检测人员数量,指出光照对识别精度影响较大。本次研究针对超载与误闯等问题,采用改进的YOLOv5网络结构,探讨基于视觉的施工升降机不安全行为识别方法。首先,通过数据降维和空洞卷积增大感受野,提高目标检测的准确率;其次,通过加深CSP2网络层数,提升网络特征提取和特征融合能力;再次,选择适合本算法的卷积核数量并加入形变卷积,控制网络宽度,进行通道维度拼接,从而减少浮点运算量。该方法对小目标的检测精度较高,能够实现施工升降机人员数量检测。
1 不安全行为分类
本次研究针对的是人的不安全行为,主要包括以下3个方面。
(1)人员超载。施工人员为了提高工作效率,不愿意等到下一批进入升降机内,便挤进机笼,而其他已在机笼的施工人员安全意识薄弱,甚至还鼓励等待的施工人员进入。
(2)翻越护栏。施工人员在翻越护栏过程中坠落,卡在机子与护栏之间,容易受伤,甚至威胁生命。
(3)非内部人员闯入。这类事故主要是由于非内部人员闯入而导致人员生命与财产受到威胁。
2 人员数量检测算法
2.1 YOLOv5算法工作原理
YOLOv5算法是由Ultralytics LLC公司于2020年 5月提出[4]。YOLOv5算法工作流程如图1所示,包括图像分割、边界框预测、阈值设置和非极大值抑制等4个步骤。首先,将所得图像上采样至全卷积神经网络;然后,进行非极大值抑制和边界框预测后输出。YOLOv5网络结构包括输入端、基准(Backbone)网络、Neck网络和Head输出端(Prediction)等4层。首先,对输入图像进行图像缩放、归一化等预处理操作;然后,对图片进行裁剪、拼接、卷积后输出对应大小的特征映射。Neck网络中,输入图像首先经过CSP2模块和CBL模块,以提升网络特征融合能力,从而进行图片缩放。然后,通过双线性插值将放大图像输入到网络中,进行张量维度拼接整合。多次循环上述操作,同时,在每一次图像输入以及下采样与上采样之间都需要进行张量拼接,以达到加快计算速度的效果。最后,通过输出端的损失函数计算并绘制边界框,得出检测效果图。
图1 YOLOv5算法工作流程
2.2 YOLOv5算法的改进
近年来,卷积神经网络在目标检测和物体姿态估计等领域取得了显著成功[5],但卷积神经网络局限于大型、已知的转换,对小目标、多目标的识别率较低。本次研究在使用DIOU_NMS筛选预测框的基础上,结合感受野、网络深度和维度,进行更精准、实时的人员数量检测。
2.2.1 增大感受野
当图像输入不同的卷积层时,其所对应的图像结构不同。一是在卷积层较浅的情况下,特征图中每个像素点只对应原图像局部信息的一个特征提取,图像细节丰富,但图像上下文信息联系较少,导致图像感受野小;二是在卷积层过深的情况下,所能看到的图像范围比原图像大,但细节信息缺失,导致图像感受野小。特征图感受野的直观变化如图2所示。本次实验在图像分类中最后卷积层的感受野大于输出图像的前提下,通过提高网络深度来增大感受野。而网络深度过深会造成卷积层输出大量冗余信息,故引入池化层来减少参数量,但易出现图像信息缺失的问题。
图2 特征图感受野的直观变化
针对图像信息缺失等问题,引入空洞卷积来增大感受野、降低计算量。
空洞卷积核的计算公式为:
N=k+(k-1)(d-1)
(1)
式中:N——插入(d-1)个空格后的卷积核大小;
k——原卷积核大小;
d——膨胀系数。
空洞卷积后特征图大小的计算公式为:
(2)
式中:F——空洞卷积后特征图大小;
i——空洞卷积核大小;
p——填充的像素;
s——步长。
由此可知,在其他条件不变的情况下,随着步长的增大,空洞卷积后特征图减小。这说明空洞卷积虽然能够增大感受野,但不会增加训练参数量。
2.2.2 加深CSP2网络层数
CSP2结构是在CSPNet的基础上发展而来的。随着卷积神经网络结构变得更深更宽,目标检测的计算速度逐渐降低,但实际应用中对轻量级计算的要求较高。为此,将残差模块与CSPNet网络融合,使其能够部署在CPU和GPU上,且不影响性能。基于此,本次研究通过加深CSP2网络层数来提升网络学习能力,加快网络计算速度,降低内存成本。加深CSP2网络层数的检测效果如图3所示。
图3 加深CSP2网络层数的检测效果
2.2.3 形变卷积
在国内外相关研究的基础上[6-8],加入可形变卷积层,改变Anchor尺寸,将Anchor融合到特征图的网格中,根据预测的偏移量调整锚框位置,解决变换后特征不匹配等问题。改进算法的整体框架如图4所示。
图4 改进算法的整体框架
图片输入后,首先通过Backbone层和FPN层,然后在每种分辨率特征图后面加入一个可形变卷积,融合不同尺度特征,回归目标坐标,接着通过全连接层得到预测框大小,最后得出输出框图。
3 非内部人员识别算法
3.1 基于Retinex的光照预处理方法
传统的局部二值化模式(LBP)算法未考虑光照不均匀对提取图像特征点的影响[9],容易在人脸识别过程中造成误检。为了降低光照变化对识别效果的影响,采用Retinex理论对低照度图像进行增强。(1)针对RGB三分量对图像取对数,将照射光分量与反射光分量分离;(2)用高斯模板对原图像进行卷积处理,得到低通滤波后的图像;(3)用原图像减去低通滤波后的图像,得到高频增强的图像;(4)对高频增强的图像取反对数,得到增强后的图像;(5)对增强后的图像作对比度增强处理;(6)对增强后的图像进行R、G、B分量融合。基于Retinex的光照预处理前后对比如图5所示。
图5 基于Retinex的光照预处理前后对比
3.2 云端数据库
非内部人员识别算法大多基于传统数据库,可适应性与可移植性不强;而云端数据库具有成本低、运维便捷和数据存储安全等优势。首先,创建云端的SQL数据库,为人员信息存储提供自动化管理平台;然后,基于OpenCV采集内部人员人脸信息并绘制矩形框;最后,通过前端摄像头获取人脸图像,进行人脸图像采集、检测、预处理、特征提取、特征匹配和识别等。非内部人员识别流程如图6所示。
图6 非内部人员识别流程
4 软件设计
4.1 流程设计
软件设计流程如图7所示。通过软件获取人员数量值、人员识别返回的二进制值,以及称重传感器返回的电信号值,若二进制值中有0存在,则警报提示。
图7 软件设计流程
4.2 功能分析
软件应用界面如图8所示,软件具备人员统计并报警、非内部人员闯入监测并报警等功能。本次研究使用2个相机。相机1安装在与显示屏相邻的前部右侧(朝门视角),每隔1 s抓取1帧图片并进行预处理操作,特征提取、特征匹配和识别其是否为内部人员。若为非内部人员(如乘梯人员倒着走躲避识别、没有本电梯使用权限等),则界面显示红色进度条。相机2嵌入在升降机顶部中间,对准进出人员头部(头部视角),每隔1 s传回1帧图片进行人员数量统计。若人员数量超过8人,则界面显示红色进度条。
图8 软件应用界面
5 实验与分析
5.1 实验数据集
为了验证本算法的有效性,从网上收集了820张施工人员图片制作训练数据集和测试数据集。经过人工筛选后得到716张有效图片,再对数据集进行旋转和翻转扩充得到5 000张图片,其中 4 500张为训练集,500张为测试集。
5.2 实验结果分析
当检测区域只有半边人脸、人脸额头或者直接从头顶检测时,测试集中的数据正确率为100%。考虑光照对检测效果的影响,利用实验室现有的可调直流稳压电源,随机选取电压为13、15、17、19、21、23 V等6种不同光照强度的环形光源进行数据采集分析。不同检测区域和光照下的识别效果如图9 所示。
图9 不同检测区域和光照下的识别效果
在6种不同光照强度下,分别采用YOLOv3、YOLOv4、YOLOv5和改进YOLOv5算法进行识别精度测试(见表1)。由表1可知,识别精度先随着光照强度的增加而增加,当光照强度达到19 V时,识别效果最好;改进YOLOv5算法的识别效果比较稳定,光照变化对其识别精度的影响较小。
表1 不同算法在不同光照强度下的识别精度 %
不同算法在不同光照强度下的识别精度如图10所示。从图10可知,YOLOv5和改进YOLOv5 算法在人员数量识别上的鲁棒性较强;相较于YOLOv3、YOLOv4、YOLOv5算法,改进YOLOv5算法的准确率更高。
图10 不同算法在不同光照强度下的识别精度
不同场景下的人员检测算法统计如表2所示,由表2可知,基于视觉的施工升降机人员不安全行为识别方法的测试效果很好,准确率高,鲁棒性强。
表2 升降机人员不安全行为统计数据
6 结 语
本次研究提出了基于视觉的施工升降机人员不安全行为识别方法,并通过实验验证算法的有效性。改进YOLOv5算法在施工升降机中的平均检测精度为86%,分别比YOLOv3、YOLOv4和YOLOv5算法高35%、11%和6%,且超员检测正确率为100%、非内部人员检测正确率为95%。基于改进YOLOv5的升降机人员不安全行为识别方法能够满足不安全行为检测的需求,实现了超员与非内部人员安全行为双重检测,保障了乘梯人员的生命安全。