基于改进YOLOV5模型的工地安全帽佩戴检测方法

文档序号:32654831发布日期:2022-12-23 21:10阅读:316来源:国知局
基于改进YOLOV5模型的工地安全帽佩戴检测方法
基于改进yolov5模型的工地安全帽佩戴检测方法
技术领域
1.本发明属于建筑行业智能化处理技术领域,尤其涉及基于改进yolov5模型的工地安全帽佩戴检测方法。


背景技术:

2.建筑业是高风险、监管薄弱、信息化程度较低的传统行业,在复杂的施工环境下,工人的不安全行为很容易导致安全事故,威胁施工人员生命安全。据统计,在工地安全事故中,头部周边损伤占大部分,减少该类事故受伤的有效措施在于正确使用安全防护设备。由于安全帽具有多种防护能力,如电绝缘性、耐穿刺、抗冲击性等优点,可以有效减少头部和颈部损伤。因此,运用智能技术实现安全帽佩戴的自动化检测,是保障施工人员生命财产的必要手段。
3.近年来,随着计算机视觉技术的不断发展,目标检测领域在工业生产中具有广泛应用。早期的安全帽佩戴检测方法主要有hough、hog等,通过对行人进行检测后,利用颜色、形状等特征对安全帽进行再识别。随着卷积神经网络的发展,目标检测算法也转向了基于深度神经网络的检测算法。目前基于深度神经网络的目标检测算法可以分为单阶段目标检测模型和双阶段目标检测模型两类。单阶段目标检测模型主要以ssd和yolo为主;而双阶段目标检测模型主要有rcnn、fastrcnn等。
4.现有原始的yolov5目标检测模型相比于之前旧版本权衡了速度与检测精度,有着计算开销小、精度高的优异性能,并且yolov5s模型尺寸更小,利于快速部署。但现有原始的yolov5目标检测模型设计时只是考虑了通用性,却难以满足小目标、密集场景等视觉任务。尤其在进行安全帽检测时,拍摄场景的远近和复杂的施工环境会产生大量的小目标,造成较多的漏检、误检行为。


技术实现要素:

5.本发明的目的在于克服现有原始的yolov5目标检测模型针对小目标检测场景的不足,提供一种基于改进yolov5模型的工地安全帽佩戴检测方法,降低小目标检测时的漏检、误检情况,提高施工场景下小目标检测能力。
6.本发明的目的是通过以下技术方案来实现的:基于改进yolov5模型的工地安全帽佩戴检测方法,其特殊之处在于,包括:步骤1、收集并划分数据集:收集开源数据集shwd、shd及其他网络图片,制作所需数据集,将数据集划分为训练集、验证集和测试集。
7.步骤2、对原始的yolov5目标检测模型进行改进:通过在原始的yolov5目标检测模型基础上优化网路结构,得到改进后的yolov5模型;所述改进后的yolov5模型采用k-means++聚类算法实时计算锚框,加速模型收敛;采用swin tranformer block作为backbone高层语义提取网络,增强模型上下文特征提取能力;
添加小目标检测层,降低网络最小感受野;特征融合部分融入sppf特征融合金字塔,通过多层次的空间箱从不同的角度进行特征提取再聚合,提升算法对物体变形的鲁棒性;采用bottleneck transformer优化特种融合部分的卷积层,增强网络特征融合能力;采用shuffle attention作为注意力机制更新特征矩阵,增强小目标特征表达能力。
8.步骤3、利用改进后的yolov5模型进行训练:将所述步骤1数据集中的训练集送入改进后的yolov5模型进行训练,并保存训练过程中改进后的yolov5模型在验证集上检测准确率最高的权重参数,并将权重文件命名为best.pt。
9.步骤4、利用改进后的yolov5模型进行检测:加载步骤3所述权重文件best.pt至改进后的yolov5模型中,并将测试集图像输入改进后的yolov5模型,得到该模型在测试集上的检测结果,检测到的结果分为两部分,包含施工场景下佩戴的安全帽与未佩戴安全帽的头部。
10.进一步的,对于步骤1中的数据集为图片及文本文件格式的锚框坐标,数据集类别分为安全帽和头部两类。
11.进一步的,步骤2中,所述的添加小目标检测层,指的是原始的yolov5目标检测模型仅有三个尺度的预测输出,通过添加感受野更小的检测尺度使改进后的yolov5模型在四种尺度上预测检测目标的边界框,从而提升小目标检测效果。例如对于输入尺寸为640
×
640像素大小的输入图像,原始的yolov5目标检测模型的特征提取部分只从中提取出80
×
80、40
×
40、20
×
20三种大小的特征图;而改进后的yolov5模型的特征提取部分能够从中提取出160
×
160、80
×
80、40
×
40、20
×
20四种大小的特征图,在特征融合部分以更小的感受野对不同尺寸的特征图进行融合;在yolov5的检测头中,每个尺度都输出一个三维预测张量;预测张量中的编码信息包含:预测框的位置信息、待检测目标的置信度、预测框中包含的目标类别;预测框中包含的目标类别分为佩戴的安全帽及未佩戴安全帽的头部;在yolov5的检测部分中,对于尺度大小为n
×
n的特征图,yolov5模型产生的预测张量大小为n
×n×
[4*(1+4+2)],其中第一个4代表改进后的yolov5模型有四个预测头,对应四个尺度的张量,1代表置信度的预测,第二个4代表预测框位置信息,2代表目标类别为两个类。
[0012]
进一步的,步骤2所述的swin transformer block是基于滑动窗口机制新视觉网络,其通过移位窗口将自注意力的计算限制在非重叠的局部窗口内,同时考虑跨窗口连接,通过相邻窗口合并扩大窗口感受野,提高效率。利用移位窗口划分方法,swin变换块被计算为:
ꢀꢀꢀꢀ
(1)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
ꢀꢀꢀꢀꢀꢀ
(3)
ꢀꢀꢀꢀꢀꢀꢀ
(4)其中代表块的w-msa模块的输入特征,和、和分别表示块的
(s)w-msa模块和mlp模块的输出特征;w-msa和sw-msa分别表示使用规则和移位窗口划分配置的基于窗口的多头部自注意;ln表示layernorm层。该计算过程如附图4所示。
[0013]
进一步的,步骤2所述的sppf用于解决输入图片大小不一造成的缺陷,其使用多层次的空间箱,把一个feature map从不同的角度进行特征提取再聚合,提升算法对物体变形的鲁棒性。
[0014]
进一步的,步骤2所述的bottleneck transformer属于hybrid network,其将cnn与transformer结合起来处理对输入图像尺寸要求较高的视觉任务。
[0015]
进一步的,步骤2所述的shuffle attention是多分支结构的置换注意力机制,其利用组卷积高效结合通道注意力与空间注意力。
[0016]
进一步的,步骤3中,将训练集的输入图像尺寸限制为m
×
m,使用批量大小为8的小批量随机梯度下降法对损失函数进行优化,通过遗传算法进行超参数训练,训练120代后初始学习率设置为0.01013,动量设置为0.98;在训练过程中使用余弦退火的方法来调整学习率,从而加速模型收敛至全局最优;训练过程中,验证集用于对模型的训练情况进行反馈,当模型在验证集上检测的准确率最高时,保存模型的权重参数至权重文件best.pt;测试集用于对训练好的模型进行最终评估。
[0017]
进一步的,步骤4中,使用非极大值抑制方法对测试集中的检测结果进行筛选,其中对于检测到的安全帽,使用绿色的框将其框出;对于检测到的头部,使用红色框进行框出。
[0018]
与现有技术相比,本发明的有益之处在于:本发明基于单阶段原始的yolov5目标检测模型,通过优化网络结构降低最小感受野,利用池化金字塔及注意力机制等手段规范输入尺寸,模糊背景差异,增强小目标学习能力。本发明所提出的方法在基准网络基础上只增加了少量参数及计算开销,并显著提升了小目标检测效果,克服原始yolov5目标检测模型小目标场景检测性能较低的缺点,提高了施工场景下安全帽佩戴检测的可靠性,降低漏检、误检的情况发生。
附图说明
[0019]
图1为本发明的流程图。
[0020]
图2为本发明的改进后的yolov5模型的网络结构图。
[0021]
图3为图2中相关的ctr3结构图。
[0022]
图4为本发明中应用的swin块结构图。
[0023]
图5为本发明中应用的sppf结构图。
[0024]
图6为本发明中应用的bottleneck transformer结构图。
[0025]
图7为图6中相关的mhsa结构图。
[0026]
图8为本发明中应用的shuffle attention结构图。
[0027]
图9为本发明的改进后的yolov5模型的map检测结果。
[0028]
图10应用本发明的改进后的yolov5模型对实用场景数据进行检测的检测效果图。
具体实施方式
[0029]
下面结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例
是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0030]
此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
[0031]
本发明的目的在于克服现有技术的不足,提供了基于改进yolov5模型的工地安全帽佩戴检测方法,解决施工场景下安全帽画面尺寸小、存在高光暗影而造成的误检、漏检的问题。具体地,如图1至图8所示,基于改进yolov5模型的工地安全帽佩戴检测方法,包括:步骤1,收集开源数据集shwd、shd及其他网络实景图片,制作所需数据集,本发明设置了安全帽和头部两类。该数据集包含了19672张图片,其中7727个人类佩戴安全帽的目标和64690个正常头部目标。
[0032]
创建数据集中的每个类相应的标签文件,根据上述数据集中的标注文件,将其转换为yolov5训练所需格式的txt文件,数据集划分为训练集、验证集和测试集,其中训练集用于对模型进行训练,验证集则用于对模型的训练情况进行反馈,并以模型在验证集上的表现情况将最优结果的权重参数进行保存,用于在测试和推理检测时进行加载,而测试集则主要用于对训练好的模型进行最终评估。在下述训练测试改进后的yolov5模型时,将训练集和验证集中的图像大小设置为640
×
640。
[0033]
步骤2,通过在原始的yolov5目标检测模型基础上优化网路结构,对原始yolov5目标检测模型进行改进,得到改进后的yolov5模型;包括:引入swin transformer block改进backbone高层语义提取网络,增强上下文特征提取能力;引入bottleneck transformer对yolov5的特征融合部分进行优化,增强网络多尺度预测的特征融合能力;引入shuffle attention注意力机制,增强网络对小目标的关注程度;引入k-means++对锚框聚类进行约束,加速模型收敛;引入sppf池化金字塔,通过对feature map从不同的角度进行特征提取再聚合,提升算法对物体变形的鲁棒性。
[0034]
对于n
×
n大小的输入图像,已有原始的yolov5目标检测模型通过提取部分只是从中提取出三种尺寸大小的特征图在特征融合部分对不同尺寸的特征图进行融合。其中,尺寸较大的特征图感受野更小,有利于捕获更多图像细节及目标定位,同时也有利于模型检测小目标;较小尺寸的特征图感受野更大,可以提取更多的语意特征,有利于对目标进行分类。但是实际情况中,在施工场景下对安全帽进行检测时,由于施工环境复杂且拍摄距离较远,因此会存在更多的小目标。为进一步提高小目标检测能力,本实施方案对原始yolov5目标检测模型的多尺度预测进行改进,通过添加小目标检测尺度使改进后的yolov5模型能够在四种尺度上预测检测目标的边界框。本实施方案中,在训练测试改进后的yolov5模型时,将训练集和验证集中的图像大小设置为640
×
640,则可以采用160
×
160,80
×
80,40
×
40,20
×
20这四种尺度的特征图,在特征融合部分以更小的感受野对不同尺寸的特征图进行融合,从而提升小目标检测效果。在改进后的yolov5模型的检测头中,每个尺度都输出一个三维预测张量;预测张量中的编码信息包含:预测框的位置信息、待检测目标的置信度、预测框中包含的目标类别,本实施方案设置的预测框中包含的目标类别为“安全帽”和未带安全帽的“头部”两类。在改进后的yolov5模型的检测部分中,对于尺度大小为n
×
n的特征图,改进后的yolov5模型所产生的预测张量的大小为n
×n×
[4*(1+4+2)],其中第一个4代表改进后的yolov5模型有四个预测头,对应四个尺度的张量,1代表置信度的预测,第二个4代表预
测框位置信息,2代表目标类别为两个类。因此本实施方案改进后的yolov5模型输出的四种尺度的预测张量分大小别为160
×
160
×
28,80
×
80
×
28,40
×
40
×
28和20
×
20
×
28。
[0035]
步骤3,将安全帽检测数据集中的训练集图像输入至上述步骤2改进后的yolov5模型进行训练,并保存训练过程中改进后的yolov5模型在验证集上检测准确率最高时的权重参数,保存该权重参数的权重文件命名为best.pt。步骤如下:步骤3.1,具体训练时,将训练集中图像的大小设置为640
×
640,使用批量大小为8的小批量随机梯度下降法对损失函数进行优化,通过遗传算法进行超参数训练,训练120代后初始学习率设置为0.01013,动量设置为0.98。在训练过程中使用余弦退火的方法来调整学习率,从而加速模型收敛至全局最优。
[0036]
步骤3.2,训练过程是在一台配有titan rtx 24g的显卡上进行训练的,训练过程一共进行200轮,模型加载改进后的yolov5模型在coco数据集上训练完成的权重文件yolov5s.pt作为预训练权重,并且在训练过程中将模型在验证集上表现最好的权重参数保存在权重文件best.pt中,模型训练最后的权重参数保存在权重文件last.pt中。
[0037]
步骤3.3,训练实验中使用了precision,recall和map来衡量模型的性能。具体的precision和recall的计算都依赖于iou,首先设置一个阈值,如果预测框和真实框之间的iou大于阈值,则该预测被称为“真正例”(tp),否则该预测被称为“假正例”(fp)。此外,模型所漏检的目标被称为“假负例”(fn)。因此,precision衡量的是所有预测正确的百分比,而recall是所有真实框中目标被预测为正的百分比。具体地,precision和recall的计算公式如下:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(5)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(6) 。
[0038]
步骤3.4,根据精度和召回率,可以计算出每个类的平均精度ap,而对所有类别的ap求均值便得到了map。而map@.5意味着在阈值为0.5时模型的map的大小。map@.5:.95:代表阈值的取值在0.5到0.95且步长为0.05时的平均map的大小。本实施方案所提供的改进后的yolov5模型的测试如表1及图9所示。
[0039]
表1: 改进后的yolov5模型训练结果步骤4,训练完毕后,利用上述步骤3改进后的yolov5检测模型进行检测:加载上述步骤3所述权重文件best.pt至改进后的yolov5模型中,并将测试集图像输入改进后的yolov5模型,在测试时将测试集中图像的输入尺寸设置为640
×
640,批量大
小设置为8,得到该模型在测试集上的检测结果,如图10所示,检测到的结果分为两部分,包含施工场景下佩戴的安全帽与未佩戴安全帽的头部,其中对于检测到的安全帽,使用绿色的框将其框出;对于检测到的头部,使用红色框进行框出。
[0040]
综上所述,根据图9、10的检测结果以及上述表1的训练测试结果可以看出,本发明的改进是非常有效的,本发明所提供的方案可以有效提升工地施工场景下安全帽检测的检测精度,对于场景中众多较小的难以检测和分辨的目标,改进后的yolov5模型可以有效地检测识别出更多正样本。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1