文摘
安全头盔保护工人的正面发挥至关重要的作用。为了提高检测的准确性模型在复杂的环境中,如复杂的背景和不同的光线和距离,我们提出一个安全吗根据改进的YOLOv7检测算法。骨干网,16通道特性是用来取代三路RGB特性。结构化修剪头部执行网络,损失函数是SIoU所取代。实验“helmet-head”、“helmet-data”和“头盔”数据集显示的地图和F1 YOLOv7_ours改进本文比RCNN更快,YOLOv5, YOLOv7系列模型。在不同应用场景的图像数据,光强度,和颜色深度,YOLOv7_ours具有较好的稳定性和较高的精度,可以检测为112.4 fps (1000/8.9)。基于改进的YOLOv7_ours,我们综合面部识别技术和语音(TTS)意识到头盔检测、身份识别和自动语音提示功能,开发出一种安全吗检测原型系统。我们验证了头盔检测算法的可行性和系统在半成品制造车间。
1。介绍
在生产车间的工作环境,安全头盔在保护中扮演着关键角色的操作员(1,2),它可以有效地保护运营商的头。工人没有佩戴安全头盔的行为在工作领域带来了一个巨大的安全风险。然而,手动安全检查管理模式等问题的人工管理成本高、效率低。这已经成为一个趋势传统设备升级到智能系统与人工智能等技术的帮助下,和互联网(3]。近年来,深度学习(4在目标检测中取得了良好的效果5- - - - - -8),它是广泛应用于工业9)、运输(10,11),和其他领域。基于机器视觉的目标检测方法具有强大的实时性能,广泛的覆盖范围,和低成本2),佩戴头盔的自动检测在视频监控系统已成为当前的研究热点12]。
李等人提出了一个头盔检测算法基于快RCNN [13),它可以识别戴头盔的状态。基于YOLOv4、张等人设计了一个硬戴帽子的检测算法SCM-YOLO [14对于复杂场景,有效地缓解特征提取不足的问题在复杂的场景。解决问题的低密度检测小目标的准确性和目标,歌等人提出了一个智能头盔识别系统的基础上,结合DeepSort和YOLOv5探测器(1),提高了模型的检测速度和精度。邓等人设计了一个基于YOLOv3轻量级头盔检测算法(15),有效地降低了模型的计算成本。陈等人提出了一个安全吗检测方法,提高了YOLOv4算法(16),它使用一个轻量级的网络PP-LCNet为骨干网络,以减少模型参数。为了克服缓慢安全帽的问题检测高分辨率图像在建筑业(17),多通道注意模块用于改善功能的广度捕获和之前的图像分辨率检测模块。歌,王提出了一个新颖的anchor-free机理对象检测模型(RBFPDet) [18),它使用强大的语义特征点实现安全头盔的检测任务。
尽管计算机的安全帽建立检测算法已经应用于建筑、工业厂房、等等,还有一些特定的挑战,生产车间。对于复杂背景和环境与不同的照明和距离,检测算法需要具有较强的目标识别能力和智能处理。本文提出了一种改进的YOLOv7算法。基于该算法,我们集成人脸识别技术(19和语音合成20.,21)实现头盔检测、身份识别、自动语音提示等,开发出一种安全吗检测原型系统。我们做出以下贡献:(1)本文提出了一种改进的YOLOv7安全帽检测模型。“helmet-head”、“helmet-data”和“头盔”的数据集,与快RCNN相比,YOLOv5,和YOLOv7系列模型、地图和F1 YOLOv7_ours比这些模型。具有良好的稳定性和精度高在不同的应用场景中,光强度和颜色深度数据和可以执行检测为112.4 fps(2)本文基于YOLOv7_ours,集成了人脸识别技术和TTS技术实现违规者的识别和自动语音提示(3)网络安全吗检测原型系统开发的生产车间。之间的数据交互和共享检测模型和管理系统通过数据库,实现和改进模型的可行性和检测系统验证的半成品加工区的场景
本文的组织结构如下:部分2描述了框架结构的安全头盔检测系统在生产车间。部分3提出了一种改进的YOLOv7网络模型和验证模型的性能在一个公共数据集。部分4介绍了原型系统和验证实验安全吗检测在基于网络的制造车间。部分5总结了本文的工作,提出了后续优化的内容和研究方向。
2。系统框架和过程
2.1。系统架构
本文研究了基于机器视觉的目标检测和识别方法,提出了一种改进的基于YOLOv7算法,并构建一个原型系统的安全帽检测生产车间。系统包括设备层、处理层和应用层,如图1。
在图1,设备层主要由多个高清网络摄像头和喇叭坐落在车间。摄像头传输视频数据捕获系统在监控区域,当检测到一个工人不戴安全帽,安全警告消息是通过扬声器输出。
处理层包括数据预处理、目标检测、人脸识别、TTS和其他模块。改进YOLOv7用作目标探测系统在数据处理层。人脸识别模块是用来识别工人不佩戴安全头盔,和TTS模块用于应用层的安全警告信息转化为声音信息。
应用层包括设备管理、管理,监控和警告,和日志管理。设备管理是用来注册名称、ID、每个摄像头的安装位置和覆盖范围。脸管理包括维护的基本信息,为后续目标识别信息不安全头盔。监测和预警,根据多路摄像机的视频输入,每个区域确定运营商佩戴安全头盔,根据检测结果做出相应的处理。日志管理提供了查询的工作状态和识别结果的相机。
2.2。检测过程
摄像头捕获视频信息的被推到安全帽检测系统,检测和识别目标的视频22,23),提取感兴趣的区域(ROI) (24头和脸的人脸识别,从而实现活动对象的身份识别的视频。当系统检测到人员没有安全帽进入操作区域,它所确定的对象名称结合形成一个文本警告消息,然后通过扬声器输出文本信息的帮助下TTS模块,从而实现自动检测的安全帽和智能预警功能。其流程如图2。
在图2,处理视频数据通过数据预处理,头部和头盔检测、人脸检测和识别先后,然后,目标探测和识别的结果输出到日志和数据库。当检测到一个工人不戴头盔在工作区域,将得到相应的语音提醒。中所示的特定算法的算法1。
|
||||||||||||||||||||||||||||||||||||||||
摘要YOLOv7_ours用于检测安全头盔的穿着状态的工人在生产车间。它是一个基于YOLOv7优化模型。模型的准备阶段,公共数据集的安全帽是Kaggle从官方网站获得。LabelIMG工具用于标签的所有数据,和人类的图像被划分为两种类型:头戴安全帽,不戴安全帽。我们用一些标签数据训练YOLOv7_ours,提高模型的精度和准确度通过优化网络结构或参数。
人脸识别是生物特征识别技术基于人类的面部特征信息(19]。人脸检测系统由四部分组成:图像采集,图像预处理,图像特征提取,匹配和识别。首先,OpenCv用于从图像中提取面临地区形成了人脸区域数据。其次,特征点用于正确姿势的正面侧面。然后,计算图像的面部特征,生成和128 -维人脸特征值(25,26]。最后,形成特征值匹配的人脸特征数据库中的数据系统,以获得相对应的标识信息的人的脸。人脸识别库在Python中用于图像预处理,特征编码和匹配系统中。
的监测和预警模块,YOLO是人类用于捕获对象意思视频或图片,和边界坐标记录每个单独的图像。然后,吗的状态进行检测和人脸识别在边境地区,和测试结果写进日志和数据库。当检测到当前个人不戴着安全帽,该地区信息当前相机和人脸识别结果中提取文本信息生成警告。最后,通过TTS警告文本转化为声音信息模块和输出通过扬声器。
3所示。改善YOLOv7网络
3.1。YOLOv7网络
YOLOv7网络从YOLO。意思是最新的产品它具有检测精度高,检测速度快,轻量级,超越所有已知对象探测器在速度和准确性8]。YOLOv7-tiny、YOLOv7 YOLOv7-w6设计,分别对GPU,正常的GPU,云GPU。基于上述三个基本模型,网络的深度和宽度调整为不同的应用场景形成YOLOv7-x, YOLOv7-e6 YOLOv7-d6 YOLOv7-e6e和其他模型。除了YOLOv7-tiny使用漏ReLU激活函数,所有其他模型采用乙状结肠线性单元(思路)激活函数。
YOLOv7网络结构包括输入、骨干网和头部,如表所示1。默认的输入终端的图像大小 。输入终端采用数据增强、自适应锚和自适应图像缩放模块,而马赛克和混合用于数据提高。骨干网是卷积神经网络由哥伦比亚广播公司(CBS)、锐气,议员模块。骨干网络的输入三个不同的细粒度的脖子网络的图像特征。头网络是一系列混合图像特征聚合层,主要由CBS, SPPCSPC, ELAN-W, MP, Upsample, REP_CBS模块。
3.2。改善YOLOv7网络
头盔安全检测在生产车间是非常重要的,和检测模型的精度和响应速度直接影响操作者的安全。模型基于GPU边缘很难满足精度和精度高的要求,而基于云模型GPU已经大量的计算,这需要更高的计算能力和对普通计算设备很难立即响应。基于上述考虑,我们修改了基于正常的GPU YOLOv7模型类型和获得一个安全吗状态检测模型适用于生产车间通过网络修剪,模块调整,参数配置,和其他方面。网络体系结构的改进YOLOv7模型如图3。
我们可以看到在图3,改善网络结构仍然是一个三层结构。第一个节点CBS_6骨干网络,如图4。输入图像的特征提取是由6 CBS操作。哥伦比亚广播公司(CBS)是一个重要的基本组成单元,YOLO在整个网络结构中,意思是由卷积层,思路BN层和活化层。CBS_X代表一个模块组成的X哥伦比亚广播公司(CBS)系列。在哥伦比亚广播公司(CBS),代表卷积核的大小,代表了步长代表的频道数量的输出特性, 和 。 代表输入的大小,代表输出的大小,在那里 。
输入图像的大小调整,模型层的数量,缩短通道是常见的方法模型。控制的最短和最长梯度路径有助于学习和深层网络的收敛。ELAN位于第二层骨干网络。ELAN使用多维浅特性和深功能重建同样大小的特性,和它的结构如图5。ELAN结构可以被看作是一堆多个剩余组件相同的水平。它首先将输入特征映射到两个部分,然后通过多层次的哥伦比亚广播公司(CBS)提取特征。然后,不同层次和维度的特点是相对地连接和合并的尺寸特性。最后的操作发生在哥伦比亚广播公司(CBS)模块。ELAN模块输出特性的两倍大小的输入特性。
第三层的骨干网是MP_Y模块,如图6。MP_Y模块主要由maxpool,哥伦比亚广播公司(CBS)和连接模块。代表之间的比例输出特性和输入功能。当是1,输出和输入的特征维度的议员模块是相同的。
在骨干层,每个MP_Y + ELAN组合输出的一组特征值的网络。第三组合的特征值输入SPPCSPC模块,第一个节点的网络,其结构如图7。SPPCSPC模块由一个CBS_3,三个maxpools,两个CBS_1, CBS_2之一。模块的内部结构可以被看作是一个模块组成的剩余组件和一个CBS组件。
与YOLOv7结构相比,调整以下三个方面:(1)网络的深度增加在骨干网络和CBS_2模块添加输入和CBS_4模块,如图8。CBS_2包含两个cbs的卷积核大小3和1的步伐。CBS_2三信道特性转换成特性和作为输入的原始CBS_4模块。三路取代了原始图像的RGB特性与16通道特性使骨干网络的主要学习更复杂和抽象的特征,这有助于提高模型的表达能力,表达能力和泛化能力(2)我们执行结构修剪的头网络和删除两个CBS_1模块,如图9。模块的输入ELAN-W(1)调整从原来的两个特性和 。模块的输入ELAN-W(2)调整从原来的两个特性和 。通过拓宽ELAN-W的输入特性的宽度(1)和ELAN-W(2)模块,ELAN-W模块可以学到更丰富和复杂的功能,这有助于提高模型的表达能力和加快收敛速度(3)我们用SIoU取代损失函数。在目标检测算法,交叉在联盟(借据)是对象检测精度的一个重要指标在目标检测算法27),主要用来测量目标盒和标签盒之间的重叠,如图所示
在方程(1),和分别代表预测盒和标签盒。意识的损失函数采用YOLOv7综合措施参数如重叠区域,中心距,长宽比,提高回归模型的准确性。地面实况的取向问题盒不匹配预测盒不被认为是意识的功能,这可能导致收敛慢。在改进后的模型,我们将损失函数替换为SIoU函数。在SIoU函数中,回归向量之间的夹角和预期回归向量被认为,这有助于提高模型的训练速度和推理的准确性(28]。SIoU函数所示
在方程(2),代表形状的成本,所示
代表距离成本函数,所示
代表成本角度,所示
3.3。YOLOv7_ours的性能
3.3.1。评价指标
为了验证改进的性能YOLOv7_ours模型,我们比较它与两级快RCNN和单程YOLOv7 YOLOv5系列。本文从两个方面综合评价推理速度和检测性能。推理的速度是衡量FPS,值越大,推理速度越快。在检测性能方面,我们主要使用mAP0.5和F1的评估。值越大,模型的检测性能越好。地图和F1所示的计算规则
在方程(6),代表对象类别的数量,代表借据的数量阈值,是借据阈值,是精密,召回率。
3.3.2。实验环境和数据集
在这项研究中,实验模型的训练和测试与以下规格:一个系统使用AMD CPU EPYC™7002系列;记忆是64克;NVIDIA GPU模型®GeForce®RTX 3090 24 g视频内存;和操作系统与Python 3.8和1.11 PyTorch Centos7.9。
在验证过程中,3公共数据集通过我们。“helmet-head”、“helmet-data”和“头盔”来自Kaggle官方网站,并且每个图像包含几个“头”和“头盔”标签。“helmet-head”积累了20528张照片,其中包括15887训练图像和4641年验证图像。它涵盖了晚上白天拍摄的图像,在不同的场景,如制造业车间工作,高空操作,和建筑工地。“helmet-data”中的数据主要来自建筑工地,其中包括10780名图像数据。有8895图片1885图像训练集和验证集。“头盔”的数据集是一个彩色图像从不同的角度收集在强光环境中,共有2250张图片,其中包括2000图片250图像训练集和验证集。
数据集包括两种类型的工人戴头盔的图片在不同的决议,不戴头盔,不同环境,不同颜色的头盔,和不同的建筑工地。数据集的一部分样品如图10。
(一)样本在昏暗的灯光下
(b)样品用不同的颜色
(c)护士帽样品
(d)样本的灰度图像
(e)和样品复杂的背景
(f)正常样本
数据集,每个图像包含几个“头”和“头盔”的标签和标签存储在YOLO格式。意思与其他算法进行比较,我们将标签转换为帕斯卡VOC格式。
3.3.3。烧蚀实验
验证每个改善模型性能的影响,我们进行了基于YOLOv7消融实验。表2提供了烧蚀实验的结果。
3.3.4。结果和分析
基于上述实验环境和数据集,本文列车和验证YOLOv7_ours RCNN更快,YOLOv5, YOLOv7系列。多个模型三个数据集上的测试结果如表所示3。
从表可以看出3精度,还记得,地图,F1的改进YOLOv7_ours本文“helmet-head”数据集是94.61%,94.76%,97.54%,和94.68%,分别。“helmet-head”数据集,与其他模型相比,改进的地图和F1 YOLOv7_ours图所示11。
从图可以看出11(1)与快RCNN相比,改进模型的映射和F1本文增加了3.5和2.84,分别。(2)与5 l相比,5米,5 s,和5 x YOLOv5系列,本文算法的映射值增加了1.03,1.30,1.75,和0.92百分点,分别和F1增加了0.40,0.83,1.48,和0.24百分点。(3)与边缘YOLOv7-tiny GPU相比,地图和F1 YOLOv7_ours增加了2.45和2.80,分别。(4)与云基于gpu的模型相比,本文改进模型的映射是3.82,1.46,2.46,和3.23百分点高于YOLOv7-d6, YOLOv7-e6, YOLOv7-e6e, YOLOv7-w6,分别和F1值也增加了4.52,1.53,2.73,和3.80百分点。(5)与YOLOv7和YOLOv7-x相比,地图YOLOv7_ours增加了0.39和0.28,分别和F1也增加了0.32和0.23,分别。
从表可以看出3在“helmet-data”数据集,精度,还记得,地图,和F1 YOLOv7_ours的92.73%,90.47%,94.76%,和91.59%,分别。与其他模型相比,改进的地图和F1 YOLOv7_ours图所示12。
从图可以看出12(1)与快RCNN相比,改进模型的映射和F1本文增加了4.57和4.48,分别。(2)与5 l相比,5米,5 s,和5 x YOLOv5系列,本文改进模型的映射增加了0.45,2.88,3.00,和2.47百分点。F1本文增加了1.73,1.97,2.37,和1.80百分点。(3)与YOLOv7-tiny相比,本文模型的映射和F1增加了1.82和1.92,分别。(4)与YOLOv7-d6相比,YOLOv7-e6, YOLOv7-e6e,和YOLOv7-w6模型,改进后的模型在本文中增加了2.55,3.03,1.99,和2.79百分点的地图,分别。F1指标增加了2.40,2.85,1.93,和2.90百分点。(5)与YOLOv7相比,本文算法的地图和F1增加了0.70和0.45,分别。与YOLOv7-x相比,本文算法的地图和F1增加了0.40和0.11,分别。
它也可以从表3在“头盔”的数据集,精度,还记得,地图,和本文改进的YOLOv7_ours F1 87.54%, 80.40%, 85.98%,和83.82%,分别。与其他模型相比,改进的地图和F1 YOLOv7_ours图所示13。
从图可以看出13(1)与快RCNN相比,改进模型的映射和F1本文增加了5.39和6.47,分别。(2)地图YOLOv7_ours的值是6.57至8.47高于YOLOv5系列模型,而F1还高4.54至6.71。(3)与YOLOv7-tiny相比,地图和F1 YOLOv7_ours增加了6.55和5.75,分别。(4)与YOLOv7-d6相比,YOLOv7-e6, YOLOv7-e6e,和YOLOv7-w6模型,改进后的模型在本文中增加了0.47,0.98,1.84,和2.81百分点的地图,分别。F1指标增加了1.35,1.33,1.66,和1.63百分点。(5)与YOLOv7相比,本文算法的地图和F1增加了0.79和1.31,分别。与YOLOv7-x相比,本文算法的地图和F1增加了2.83%和2.01,分别。
每个算法的推理速度图所示14。YOLOv7_ours的检测速度为112.4 fps。除了云YOLOv7-tiny边缘,模型的推理速度高于其他模型。(1)YOLOv7_ours为92.4 fps的推理速度快于RCNN更快。(2)与YOLOv5系列相比,模型的推理速度为45.2 FPS, 34.2帧/秒,6.0帧/秒和51.4帧/秒速度比YOLOv5l, YOLOv5m, YOLOv5s和YOLOv5x分别。(3)与YOLOv7系列相比,模型的推理速度为49.1 FPS, 40.4帧/秒,67.1帧/秒和17.1帧/秒速度比云基于gpu的YOLOv7-d6 YOLOv7-e6, YOLOv7-e6e和YOLOv7-w6分别。模型的推理的速度为2.5 FPS和10.3帧/秒的速度比YOLOv7和YOLOv7-x基于普通的gpu,分别。
测试结果如图的一部分15。红色检测框架是一个工人戴着安全帽,而绿色检测框架是没有安全帽的工人。第一列是RCNN更快的结果,第二个是YOLOv5的结果,第三是YOLOv7的结果,第四是YOLOv7_ours的结果。在图(15日)、更快RCNN发现共有5个工人戴着安全帽,但其中一个错误检测到光线安全帽。YOLOv5和YOLOv7检测3工人戴着安全帽,虽然YOLOv7_ours检测4。在图15 (b)YOLOv5错过2建筑工人戴着安全帽,YOLOv7错过1名建筑工人戴着头盔,和更快的RCNN YOLOv7_ours发现4工人戴着安全帽在同一时间。在图15 (c)、更快RCNN错过一个工人戴着头盔,YOLOv5和YOLOv7错过一个工人不戴头盔,和YOLOv7_ours正确检测到7的目标。
晚上(a)检测现场
(b)检测远离施工现场
(c)由钢筋检测阻挡
从表可以看出2和数字11- - - - - -13和15改善YOLOv7_ours模型的,地图和F1摘要优于其他算法三个数据集。从图可以看出14改进的检测速度YOLOv7_ours本文可以达到112.4帧/秒,及其检测速度高于其他模型,除了云边缘YOLOv7-tiny模型。尽管YOLOv7-tiny最快的检测速度,与YOLOv7_ours相比,YOLOv7-tiny地图已经下降了1.82 ~ 6.55,和F1也下降了1.92 ~ 5.75。总的来说,本文改进YOLOv7_ours模型的整体性能优于其它模型。它具有更好的稳定性和更高的精度在不同的应用场景中,光强度,和颜色深度数据和运行为112.4 fps(1000/8.9)检测,可以满足强大的实时性能和高精度的要求在生产车间。
4所示。系统实现
在Python环境中,我们综合改进YOLOv7_ours与人脸识别等模块和TTS形成吗检测。然后,安全吗检测原型系统是建立在网络环境中。检测和原型系统的开发环境如表所示4。因为检测的开发环境和运行环境模型和原型系统有很大的不同,他们通过数据库实现数据交互和共享。键-值和使用关系数据库。复述是一个高性能的键值的数据库,主要用于存储实时检测结果。Sql Server是一个关系数据库管理系统。它存储的配置信息和日志信息系统和信息管理系统提供数据来源。
原型检测管理系统包括设备管理,管理,监控和预警,以及日志管理模块。每个模块的具体功能如表所示5。
吗检测模型和安全吗检测原型系统进行了测试在一个半成品工厂。测试人员模拟操作在半成品加工区和没有安全帽。收到摄像头视频流量后,吗工人身份自动识别和检测结果生成并存储到数据库中。我们可以得到检测结果和相应的法医图像的基于网络的“安全吗检测原型系统。“系统验证场景如图16。接口和安全吗检测原型系统验证结果如图所示17。
在图17检测系统显示,不戴安全帽的所有记录以列表的形式。的记录,你可以得到监控区域,违反者的名称和文本数据系统的警告。在验证过程中,检测结论吗可以快速检测车间工人的安全吗。当不戴头盔,提醒消息可以在时间和检测结果和提醒信息写入数据库。安全吗检测原型系统可以提取检测数据并将其显示在页面以列表的形式。验证结果表明,该检测模型和管理系统可以应用于实际生产操作和有很大的理论研究和应用价值。
5。结论
安全头盔起着至关重要的作用在保护的操作符。它能有效地保护运营商的头,防止和减少头部损伤从外部危险的来源。不戴安全帽,工作区域构成了巨大的安全风险制造车间。与传统的手工检查相比,头盔基于机器视觉的检测方法具有实时性能强,覆盖范围宽,高度的智慧,和较低的管理成本。本文提出了一种改进的YOLOv7安全吗检测算法,它使用三路16通道的特性,而不是RGB特性在骨干网络。结构修剪头部执行网络,损失函数是SIoU所取代。实验“helmet-head”、“helmet-data”和“头盔”数据集显示的地图和F1 YOLOv7_ours提出优于模型如RCNN更快,YOLOv5, YOLOv7系列。YOLOv7_ours具有良好的稳定性和高精度在不同的应用场景中,光强度,和颜色深度数据,原因为112.4 fps(1000/8.9),这是更适合于实时性能和高精度制造车间现场。
基于YOLOv7_ours,集成人脸识别技术,TTS,和其他技术;意识到头盔检测、身份识别、自动语音提示,和其他功能;和发展一个安全吗检测原型系统在生产车间。我们验证了头盔检测算法的可行性和系统在半成品制造车间。在未来,我们将检测对象扩大到护目镜、手套、工具、等,以建立一个安全风险来源与强大的实时检测系统的性能和精度高。
数据可用性
数据集用于支持这项研究的结果已经存入Kaggle官方网站(https://www.kaggle.com/)。
的利益冲突
作者宣称他们没有竞争的经济利益或个人关系可能出现影响工作报告。
确认
这项工作得到了以下项目:国家自然科学基金(拨款52065010和52065010)和科技基础下贵州的拨款2814[2019],[2020]6007年,ZK [2021] 341。