安全帽检测方法、模型训练方法、系统、装置及存储介质与流程

未命名 10-19 阅读:79 评论:0


1.本技术涉及人工智能技术领域,尤其涉及一种安全帽检测方法、模型训练方法、系统、装置及存储介质。


背景技术:

2.众所周知,施工现场安全帽的佩戴至关重要,但是在施工现场仍然有人存在侥幸心理,觉得佩戴安全帽过于麻烦而不佩戴安全帽。建筑工地从业人员众多,且危险性高,极易发生事故。目前,管理人员对是否佩戴安全帽主要是通过人工查看现场监控视频进行判断,但是该方法需要大量的人力物力,也容易因为个人疏忽造成漏检。
3.近年来,随着计算机视觉技术的发展,图像中场景物体的检测和视频已经成为研究的热点。目标检测模型能够识别一个图像中多种信息,并判断对象的类别和位置。目标检测的基础是卷积神经网络(convolutional neural networks,cnn),卷积神经网络已成功用于基于图像数据的目标检测、目标分割和目标识别任务。卷积层是cnn的基石,主要是负责提取输入图像有用的特征信息,利用这些特征信息可以进行后续目标物体检测工作。利用目标检测算法对现场监控画面中工人安全帽进行检测,由于监控画面分辨率比较低、工人走动、安全帽画面占比小等情况,导致监控中检测目标画面模糊,从而影响安全帽佩戴检测的准确性。


技术实现要素:

4.本技术实施例的主要目的在于提出一种安全帽检测方法、模型训练方法、系统、装置及存储介质,旨在提高安全帽佩戴检测的准确性。
5.为实现上述目的,本技术实施例的第一方面提出了一种安全帽检测模型训练方法,包括以下步骤:
6.获取训练数据,并初始化安全帽检测模型;
7.将所述训练数据输入所述安全帽检测模型的骨干网络层进行特征提取,得到第一图像特征;
8.将所述第一图像特征输入所述安全帽检测模型的连接网络层进行特征整合,得到第二图像特征,其中,所述连接网络层用于对第一图像特征并行进行平均池化、高维卷积和全局平均池化操作后进行特征融合得到第二图像特征;
9.将所述第二图像特征输入所述安全帽检测模型的头部网络层进行特征预测,得到预测检测框;
10.根据所述预测检测框与所述训练数据中的真实检测框确定预测损失;
11.根据所述预测损失更新所述安全帽检测模型的参数,得到训练好的安全帽检测模型。
12.在一些实施例中,所述获取训练数据,包括以下步骤:
13.获取多张监控画面图像;
14.根据所述监控画面图像中的安全帽标记真实检测框,得到可视化对象类格式标签;
15.将多张所述监控画面图像的可视化对象类格式标签转换为文本文件,并将多张所述监控画面图像转换为预设规格,得到训练数据。
16.在一些实施例中,所述初始化安全帽检测模型,包括以下步骤:
17.从训练数据中提取所有真实检测框的第一尺寸;
18.采用聚类算法,根据预设锚框数量对所有真实检测框的第一尺寸进行聚类操作,得到对应预设锚框数量的聚类簇,取每个聚类簇的聚类中心作为初始锚框的第二尺寸;
19.根据训练数据中每一张监控画面图像的真实检测框的位置构建多个辅助检测框,以将所述辅助检测框作为辅助标签对所述安全帽检测模型进行训练。
20.在一些实施例中,所述将所述第一图像特征输入所述安全帽检测模型的连接网络层进行特征整合,得到第二图像特征,包括以下步骤:
21.将所述第一图像特征输入所述连接网络层的第一分支单元进行平均池化和线性卷积操作,得到第一张量;
22.将所述第一图像特征输入所述连接网络层的第二分支单元进行高维卷积操作,得到第二张量;
23.将所述第一图像特征输入所述连接网络层的第三分支单元进行全局平均池化和线性卷积操作,得到第三张量;
24.对所述第一张量、第二张量和第三张量进行特征融合操作,得到第二图像特征。
25.在一些实施例中,所述对所述第一张量、第二张量和第三张量进行特征融合操作,得到第二图像特征,包括以下步骤:
26.将所述第一张量和所述第二张量相加,得到第四张量;
27.将所述第四张量和所述第三张量相乘,得到第二图像特征。
28.在一些实施例中,所述根据所述预测检测框与所述训练数据中的真实检测框确定预测损失,包括以下步骤:
29.根据所述预测检测框的预测分类结果和真实分类结果确定分类损失;
30.根据所述预测检测框的位置和所述真实检测框的位置确定定位损失;
31.根据所述预测检测框和真实检测框的形状相似度确定置信度损失;
32.根据所述分类损失、所述定位损失和所述置信度损失确定预测损失。
33.为实现上述目的,本技术实施例的第二方面提出了一种安全帽检测方法,包括以下步骤:
34.获取监控画面;
35.采用第一方面所述的训练完成的安全帽检测模型对所述监控画面进行逐帧分析,得到安全帽佩戴检测结果。
36.为实现上述目的,本技术实施例的第三面提出了一种安全帽检测模型训练系统,包括:
37.第一模块,用于获取训练数据,并初始化安全帽检测模型;
38.第二模块,用于将所述训练数据输入所述安全帽检测模型的骨干网络层进行特征提取,得到第一图像特征;
39.第三模块,用于将所述第一图像特征输入所述安全帽检测模型的连接网络层进行特征整合,得到第二图像特征,其中,所述连接网络层用于对第一图像特征并行进行平均池化、高维卷积和全局平均池化操作后进行特征融合得到第二图像特征;
40.第四模块,用于将所述第二图像特征输入所述安全帽检测模型的头部网络层进行特征预测,得到预测检测框;
41.第五模块,用于根据所述预测检测框与所述训练数据中的真实检测框确定预测损失;
42.第六模块,用于根据所述预测损失更新所述安全帽检测模型的参数,得到训练好的安全帽检测模型。
43.为实现上述目的,本技术实施例的第四方面提出了一种电子设备,所述电子设备包括存储器、处理器、存储在所述存储器上并可在所述处理器上运行的程序以及用于实现所述处理器和所述存储器之间的连接通信的数据总线,所述程序被所述处理器执行时实现上述第一方面或者第二方面所述的方法。
44.为实现上述目的,本技术实施例的第五方面提出了一种存储介质,所述存储介质为计算机可读存储介质,用于计算机可读存储,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述第一方面或者第二方面所述的方法。
45.本技术提出的安全帽检测方法、模型训练方法、系统、装置及存储介质,将训练数据输入安全帽检测模型的骨干网络层进行特征提取得到第一图像特征,将第一图像特征输入安全帽检测模型的连接网络层进行特征整合得到第二图像特征,在连接网络层中对第一图像特征并行进行平均池化、高维卷积和全局平均池化操作后进行特征融合输出第二图像特征,能够关注图像中重要的局部信息和全局上下文信息,减少安全帽特征信息的丢失,能够学习全面训练数据中安全帽检测相关特征,再将第二图像特征输入安全帽检测模型的头部网络层进行特征预测得到预测检测框,并基于预测检测框和真实检测框反向更新安全帽检测模型。本技术训练得到的安全帽检测模型鲁棒性高,对于模糊的监控画面也能准确检测安全帽佩戴情况。
附图说明
46.图1是本技术实施例提供的安全帽检测模型训练方法流程图;
47.图2是图1中的步骤s101的流程图;
48.图3是图1中的步骤s101获取训练数据的流程图;
49.图4是图1中的步骤s103初始化安全帽检测模型的流程图;
50.图5是图4中的步骤s404的流程图;
51.图6是图1中的步骤s105的流程图;
52.图7是本技术实施例提供的安全帽检测方法流程图;
53.图8是本技术实施例提供的安全帽检测模型训练系统示意图;
54.图9是本技术实施例提供的电子设备的硬件结构示意图;
55.图10是本技术实施例提供的连接网络层示意图;
56.图11是本技术实施例提供的基于损失函数检测框回归示意图;
57.图12是本技术实施例提供的安全帽检测过程示意图。
具体实施方式
58.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本技术,并不用于限定本技术。
59.需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
60.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本技术实施例的目的,不是旨在限制本技术。
61.首先,对本技术中涉及的若干名词进行解析:
62.人工智能(artificial intelligence,ai):是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学;人工智能是计算机科学的一个分支,人工智能企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。人工智能可以对人的意识、思维的信息过程的模拟。人工智能还是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
63.卷积神经网络,卷积神经网络(convolutional neural networks,cnn):是一类包含卷积计算且具有深度结构的前馈神经网络,可通过标注的训练数据进行监督学习,从而完成视觉图像识别及目标检测等任务。
64.yolo模型(you only look once:unified,real-time object detection基于单个神经网络的目标检测系统),是计算机视觉技术中可以用于图像识别的深度学习算法。yolo模型将目标检测问题转化成一个regression回归类的问题,即给定输入图像,直接在图像的多个位置上回归出目标的bounding box(边界框)以及其分类类别。yolo模型包括但不限于yolov3、yolov4、yolov5(均为yolo的不同版本)等,不同模型的权重、网络结构图、算法不同,所使用的区域采样方法也不同。
65.iou是一种测量在特定数据集中检测相应物体准确度的一个标准。iou是一个简单的测量标准,只要是在输出中得出一个目标检测范围(bounding boxex)的任务都可以用iou来进行测量。iou用于测量真实和预测之间的相关度,相关度越高,该值越高。iou是两个区域重叠的部分除以两个区域的集合部分得出的结果。
66.锚框(anchor box)算法,锚框(anchor boxes)或称为先验框(prior boxes)。锚框是一些预定义的矩形框,具有不同的尺寸和宽高比,通常在图像的不同位置和尺度上均匀分布。锚框算法的关键在于通过在不同尺度和位置上生成锚框,来捕获不同大小和形状的目标。通过对锚框进行预测和筛选,可以得到检测到的目标框及其对应的类别概率。yolov4模型中应用锚框(anchor box)算法能够实现对图像中多个目标的快速、准确的检测和定
位。
67.聚类算法,聚类是数据挖掘中一种非常重要的学习方式,是指将未标注的样本数据中相似的分为同一类。聚类属于无监督学习问题,其目标是将样本集划分为多个类,保证同一类的样本之间尽量相似,不同类的样本之间尽量不同,这些类也称为簇(cluster)。
68.kmeans算法,是一种聚类算法,以二分类为例,通过kmeans算法,可以先从所有待分类的样本点中随机选择2个样本点作为初始质心,再计算其它每个样本点与2个初始质心的距离,将距离某个初始质心更近的样本点就划分为到该初始质心所属的类中,以完成第一次聚类。在第一次聚类完成之后,得到两个类,分别计算每个类的中心坐标,再以每个类的中心坐标作为新的质心,执行前述以距离划分类的过程,进而得到第二次聚类结果。再执行与前述过程一样的迭代过程,直至聚类结果的两个类的质心不再发生变化,则聚类完成,此时得到的两个类即为最终的聚类结果。
69.本技术实施例提供了一种安全帽检测方法、模型训练方法、系统、装置及存储介质,旨在提高安全帽佩戴检测的准确性。
70.本技术实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
71.人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
72.本技术实施例提供的安全帽检测模型训练方法或者安全帽检测方法,涉及人工智能技术领域。本技术实施例提供的安全帽检测模型训练方法或者安全帽检测方法可应用于终端中,也可应用于服务器端中,还可以是运行于终端或服务器端中的软件。在一些实施例中,终端可以是智能手机、平板电脑、笔记本电脑、台式计算机等;服务器端可以配置成独立的物理服务器,也可以配置成多个物理服务器构成的服务器集群或者分布式系统,还可以配置成提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn以及大数据和人工智能平台等基础云计算服务的云服务器;软件可以是实现安全帽检测模型训练方法或者安全帽检测方法的应用等,但并不局限于以上形式。
73.本技术可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络pc、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本技术可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本技术,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
74.图1是本技术实施例提供的安全帽检测模型训练方法的一个可选的流程图,图1中
的方法可以包括但不限于包括步骤s101至步骤s106。
75.步骤s101,获取训练数据,并初始化安全帽检测模型;
76.步骤s102,将训练数据输入安全帽检测模型的骨干网络层进行特征提取,得到第一图像特征;
77.步骤s103,将第一图像特征输入安全帽检测模型的连接网络层进行特征整合,得到第二图像特征,其中,连接网络层用于对第一图像特征并行进行平均池化、高维卷积和全局平均池化操作后进行特征融合得到第二图像特征;
78.步骤s104,将第二图像特征输入安全帽检测模型的头部网络层进行特征预测,得到预测检测框;
79.步骤s105,根据预测检测框与训练数据中的真实检测框确定预测损失;
80.步骤s106,根据预测损失更新安全帽检测模型的参数,得到训练好的安全帽检测模型。
81.在一些实施例的步骤s101中,可以通过现场监控画面的大量图像组成安全帽图像数据集,也可以利用python技术爬取网络上安全帽图像数据集,还可以进一步下载kaggle竞赛开源安全帽数据集,组成更大的安全帽图像数据集。获取安全帽图像数据集后,可以利用人工标注的方式框选图像中的工人并为检测框标注是否佩戴安全帽得到图像标签,将图像标签保存格式为voc格式,形成样本数据。进一步地,样本数据可以分为训练集,验证集和测试集,训练集用于构建模型,学习图像特征;验证集用于调整模型的超参数和用于对模型的能力进行初步评估;测试集用于评估模最终模型的泛化能力,但不能作为调参、选择特征等算法相关的选择的依据。训练集,验证集和测试集的划分比例可以为7:1:2。初始化安全帽检测模型包括但不限于初始化锚框规格、模型参数等。
82.在一些实施例的步骤s102中,安全帽检测模型是一种基于卷积神经网络架构的目标检测模型,在本实施例中安全帽检测模型可以采用yolov4模型架构。安全帽检测模型分为三个部分骨干网络层(backbone)、连接网络层(neck)和头部网络层(head)。backbone是模型的主要组成部分,通常是一个卷积神经网络(cnn)或残差神经网络(resnet)等,负责提取输入图像的特征,以便后续的处理和分析,backbone具有许多层和许多参数,可以提取出图像的高级特征表示。neck是连接backbone和head的中间层,head的主要作用是对来自backbone的特征进行降维或调整,以便更好地适应任务要求,neck包括卷积、池化操作等。head是模型的最后一层,通常是一个分类器或回归器,通过输入经过head处理过的特征,产生最终的输出,head可以是边界框回归器和分类器等。
83.在一些实施例的步骤s103中,连接网络层采用并行注意力机制(parallel attention module,pam),即连接网络层对骨干网络层输出的第一图像特征进行基于并行平均池化、高维卷积和全局平均池化操作后进行特征融合得到第二图像特征。示例性地,本技术实施例在yolov4的主干网络cspdarknet53基础上引入pam,并行注意力机制能够利用特征,最大程度减少特征信息的丢失,提高预测小目标的精度以及网络的鲁棒性。其中,平均池化操作能够挖掘第一图像特征主要的特征信息,减少空间维度上的冗余信息,突出与检测目标关联性更强的特征;高维卷积操作每个位置上有更多的权重可调节,能够捕捉到更大的感受野,理解输入的上下文信息,提取丰富的特征表示。全局平均池化操作能够将特征提取和非线性映射相结合,提高模型的准确率,抑制网络中的过拟合现象;把多个特征映
射到一个低维空间中,提高模型的泛化能力。
84.在一些实施例的步骤s104中,将连接网络层输出的第二图像特征输入安全帽检测模型的头部网络层进行目标检测和分类预测,得到预测检测框。预测检测框的结果包括人体目标检测以及人体是否佩戴安全帽。
85.在一些实施例的步骤s105中,根据图像的预测检测框与训练数据中的真实检测框确定预测损失,预测损失可以通过损失函数(loss function)计算。在机器学习中,损失函数被用于模型的参数估计(parameteric estimation),基于损失函数得到的损失值可用来描述模型的预测值与实际值的差异程度。常见的损失函数有均方误差损失函数、支持向量机(support vector machine,svm)合页损失函数、交叉熵损失函数等。
86.在一些实施例的步骤s106中,数据在安全帽检测模型中的传播有两种方式,一种是沿着输入到输出的路径,被称为前向传播(forwardpropagation),另一种是从输出返回到输入,被称为反向传播(backpropagation)。在正向传播过程中,监控画面图像通过卷积神经网络逐层处理并传向输出层,通过损失函数描述预测输出与真实期望之间的误差,转入反向传播,逐层求出损失函数对各神经元的权重的偏导数,构成损失函数对权值向量的权重梯度数据,作为更新权重参数的依据,在不断更新权重参数的过程中完成安全帽检测模型的训练。示例性地,安全帽检测模型采用yolov4模型架构,安全帽检测模型以初始锚框为基础输出预测检测框,将预测检测框和真实框进行比对,计算两者差距,再利用梯度反向传递,通过多次迭代实现网络中参数的更新,通过测试数据集和验证数据对模型进行评估和验证,从而得到训练好的安全帽检测模型。在训练过程中,可以采用50次冻结训练和50次解冻训练,冻结训练的批大小为32,初始学习率为0.001。
87.请参阅图2,步骤s101中的获取训练数据这一步骤,可以包括但不限于包括步骤s201至步骤s203:
88.步骤s201,获取多张监控画面图像;
89.步骤s202,根据监控画面图像中的安全帽标记真实检测框,得到可视化对象类格式标签;
90.步骤s203,将多张监控画面图像的可视化对象类格式标签转换为文本文件,并将多张监控画面图像转换为预设规格,得到训练数据。
91.在本实施例中,获取大量监控画面图像后,人工根据监控画面图像中的安全帽特征标记真实检测框得到可视化对象类(visual object classes,voc)格式标签。voc是一种常用的目标检测和图像分割数据集的标注格式,voc格式最初由pascal voc(visual object classes)项目引入,用于举办目标检测和图像分割的竞赛。voc格式的数据集通常包含图像文件(.jpg、.png等)和标注文件(.xml),图像文件包含待标注的图像数据,标注文件包含与每个图像相关的目标的标注信息,每个标注文件对应一个图像,其中包括目标的类别、边界框的坐标、目标的分割掩码等信息。
92.进一步地,将多张监控画面图像的可视化对象类格式标签利用脚本工具转换为文本文件为yolo格式标签的txt文件,具体地,将voc格式标签中图像标注框的左上角、右下角坐标以及宽高数据信息,处理转化为标注框的中心坐标、宽度和高度数据。通过比例缩放的方式,将数据集的每张图像设置为相同的输入规格,例如640
×
640,从而得到训练数据。
93.在另外一些实施例中,在获得训练数据的真实检测框标签的基础上,可以在图像
的真实检测框附近进行随机偏移,生成多个与真实目标框形状、大小相似但位置略有不同的辅助框。辅助框可以覆盖更多的特征区域,使得模型能够更好地学习目标的特征表示,提高检测的准确性和召回率。此外,通过引入随机偏移的辅助框,可以增加模型对于不同尺度、形状和位置的目标的适应能力。在真实监控画面中,检测目标人体可能以不同的姿态和位置出现,通过引入多个偏移后的辅助框,可以提高模型的泛化能力,从而更好地应对各种情况下的目标检测任务。
94.具体地,在每一个真实框附近,随机偏移来构建16个辅助框,其中辅助框不受限制,可在图像任意位置生成,辅助框生成过程表示为:
[0095][0096]
其中,w表示图像宽度,h表示图像高度。
[0097]
请参阅图3,步骤s101中的初始化安全帽检测模型这一步骤,可以包括但不限于包括步骤s301至步骤s304:
[0098]
步骤s301,从训练数据中提取所有真实检测框的第一尺寸;
[0099]
步骤s302,采用聚类算法,根据预设锚框数量对所有真实检测框的第一尺寸进行聚类操作,得到对应预设锚框数量的聚类簇,取每个聚类簇的聚类中心作为初始锚框的第二尺寸;
[0100]
步骤s303,根据训练数据中每一张监控画面图像的真实检测框的位置构建多个辅助检测框,以将辅助检测框作为辅助标签对安全帽检测模型进行训练。
[0101]
在一些实施例中,yolov4模型中的锚框是指在目标检测任务中用于预先定义不同尺度和宽高比的候选框。锚框是通过在输入图像上进行网格划分和设置不同尺度和宽高比来生成的。每个特征图单元对应原始图像上的一个区域。为了检测不同尺寸的目标,我们需要为每个特征图单元设置不同的宽高比和尺度的锚框。通过将不同尺度的锚框应用于特征图的每个单元,可以捕捉到不同大小的目标。利用特征图中锚框可以预测每个锚框内是否存在目标物体,并进行目标的分类和定位。锚框的使用可以使得安全帽检测模型在不同尺度的目标检测任务中具有较好的适应性,从而提高算法的检测精度和鲁棒性。
[0102]
在本实施例中,可以使用聚类算法来初始化锚框,以便于根据训练数据的目标尺寸分布来确定合适的锚框尺寸。聚类算法可以采用k-medians、k-means、层次聚类(hierarchical clustering)等聚类算法,本技术实施例不作具体限制。训练数据中真实检测框尺寸(高度和宽度)聚类过程可以为:从训练数据中提取所有目标框的尺寸(宽度和高度),可以根据目标框的坐标计算出尺寸;应用聚类算法,如k-means聚类,对目标尺寸进行聚类操作,聚类的目标是将所有训练数据中真实检测框的第一尺寸分为对应预设锚框数量的聚类簇,每个聚类簇对应一个锚框;根据聚类结果,取每个簇的聚类中心作为锚框的第二尺寸,聚类中心的第二尺寸后续被用作模型中的初始锚框尺寸。
[0103]
请参阅图4,步骤s103可以包括但不限于包括步骤s401至步骤s404:
[0104]
步骤s401,将第一图像特征输入连接网络层的第一分支单元进行平均池化和线性卷积操作,得到第一张量;
[0105]
步骤s402,将第一图像特征输入连接网络层的第二分支单元进行高维卷积操作,
得到第二张量;
[0106]
步骤s403,将第一图像特征输入连接网络层的第三分支单元进行全局平均池化和线性卷积操作,得到第三张量;
[0107]
步骤s404,对第一张量、第二张量和第三张量进行特征融合操作,得到第二图像特征。
[0108]
在本实施例中,参照图10,骨干网络层提取到的第一图像特征x∈rc×h×w,c为图像通道数,h为图像高度,w为图像宽度。第一图像特征并行传输到pam的三个分支,即第一分支单元、第二分支单元和第三分支单元。
[0109]
在第一分支单元中,第一图像特征x依次经过平均池化和线性卷积(即1
×
1卷积)操作得到第一张量表示如下:
[0110][0111]
其中,f
avg
表示平均池化操作,conv
1*1
表示1
×
1卷积操作,用于提高特征图维度,输出第一张量可以表示第一分支单元的通道权重。
[0112]
在第二分支单元中,第一图像特征x经过卷积下采样特征整合分支,利用高维卷积(如3
×
3卷积)提取目标特征得到第二张量表示如下:
[0113][0114]
其中,conv
3*3
表示3
×
3卷积操作。
[0115]
在第三分支单元中,第一图像特征x经过全局平均池化操作后通过线性卷积(即1
×
1卷积)升维,然后通过sigmoid激活函数得到第三张量表示如下:
[0116][0117]
其中,表示全局平均池化,conv
1*1
表示1
×
1卷积操作,sigmoid为激活函数。
[0118]
请参阅图5,步骤s404可以包括但不限于包括步骤s501至步骤s502:
[0119]
步骤s501,将第一张量和第二张量相加,得到第四张量;
[0120]
步骤s502,将第四张量和第三张量相乘,得到第二图像特征。
[0121]
在本实施例中,首先,将第二分支单元输出的第二张量与第一分支单元输出的第一张量逐元素相加得到第四张量从而减少图像特征的损失,表示如下:
[0122][0123]
然后,将第三分支单元输出的第三张量与第四张量进行矩阵相乘得到第二图像特征x
out
,表示如下:
[0124][0125]
请参阅图6,步骤s105包括但不限于包括步骤s601至步骤s604:
[0126]
步骤s601,根据预测检测框的预测分类结果和真实分类结果确定分类损失;
[0127]
步骤s602,根据预测检测框的位置和真实检测框的位置确定定位损失;
[0128]
步骤s603,根据预测检测框和真实检测框的形状相似度确定置信度损失;
[0129]
步骤s604,根据分类损失、定位损失和置信度损失确定预测损失。
[0130]
在本实施例中,安全帽检测模型的损失函数有三部分组成:分类损失、定位损失和置信度损失。分类损失指模型对于工人是否佩戴安全帽的预测分类与真实分类的损失;置信度损失指模型输出预测检测框与真实检测框的形状相似度;定位损失指预测检测框和真实检测框的定位差距。在模型训练阶段,分类损失、定位损失和置信度损失会被组合使用,从而优化模型的性能。
[0131]
具体地,将骨干网络层提取特征经过网络连接层后输入至头部网络层进行特征预测得到预测检测框,通过损失函数进行计算,该损失函数主要用于计算预测检测框的定位和置信度损失,结合图11,通过该损失函数进行模型参数更新,使检测框回归变得更加稳定,损失函数l
clou
如下:
[0132][0133]
其中,iou表征真实检测框和预测检测框之间的相关度,b代表预测检测框中心,b
gt
表示真实检测框中心,ρ代表欧几里得距离,c表示预测检测框和真实检测框的外接矩形框的对角线长度,α表示正的折衷参数,一般设置为1,v表示长宽比的一致性。
[0134]
进一步地,α和v的具体表达式为:
[0135][0136][0137]
其中,w
gt
为真实检测框的宽度,h
gt
为真实检测框的高度,w为预测检测框的宽度,h为预测检测框的高度。
[0138]
本实施例中,利用交并比ciou损失函数加快模型推理速度,提高对特征的学习效果,减少模型训练时间。
[0139]
请参阅图7,本技术实施例还提出一种安全帽检测方法,包括但不限于以下步骤s710至步骤s720:
[0140]
步骤s710,获取监控画面;
[0141]
步骤s720,采用上述实施例中训练完成的安全帽检测模型对监控画面进行逐帧分析,得到安全帽佩戴检测结果。
[0142]
在本实施例中,请参阅图12,将人工标记后的安全帽数据集输入基于改进后的yolov4架构的安全帽检测模型进行训练以使安全帽检测模型达到预设检测精度或者达到训练次数,得到训练好的安全帽检测模型。将现场摄像头采集的监控画面视频流实时传输到服务器上训练好的安全帽检测模型进行逐帧检测分析得到安全帽佩戴检测结果,安全帽佩戴检测结果包括关于监控画面中的人体区域的检测框以及检测框的置信度得分,置信度得分用于表征预测人体佩戴安全帽的概率。如果置信度得分大于0.5,则认为检测目标已佩戴安全帽;如果置信度得分不大于0.5,则认为检测目标没有佩戴安全帽。本实施例中,安全帽检测模型的并行注意力机制能够减少图像特征损失,使得头部网络层能够综合更丰富的信息进行预测,安全帽检测模型鲁棒性强,在监控画面中目标对象模糊的情况也能准确检测对象是否佩戴安全帽。
[0143]
进一步地,服务器还可以根据检测结果与现场设备或者其他设备联动,例如,当检
测结果为工人佩戴安全帽,则驱动现场闸门打开,同时语音模块提示成功通过检测;当检测结果为工人未佩戴安全帽,则发出语音报警提示。
[0144]
请参阅图8,本技术实施例还提供一种安全帽检测模型训练系统,包括:
[0145]
第一模块,用于获取训练数据,并初始化安全帽检测模型;
[0146]
第二模块,用于将训练数据输入安全帽检测模型的骨干网络层进行特征提取,得到第一图像特征;
[0147]
第三模块,用于将第一图像特征输入安全帽检测模型的连接网络层进行特征整合,得到第二图像特征,其中,连接网络层用于对第一图像特征并行进行平均池化、高维卷积和全局平均池化操作后进行特征融合得到第二图像特征;
[0148]
第四模块,用于将第二图像特征输入安全帽检测模型的头部网络层进行特征预测,得到预测检测框;
[0149]
第五模块,用于根据预测检测框与训练数据中的真实检测框确定预测损失;
[0150]
第六模块,用于根据预测损失更新安全帽检测模型的参数,得到训练好的安全帽检测模型。
[0151]
可以理解的是,上述安全帽检测模型训练方法实施例中的内容均适用于本系统实施例中,本系统实施例所具体实现的功能与上述安全帽检测模型训练方法实施例相同,并且达到的有益效果与上述安全帽检测模型训练方法实施例所达到的有益效果也相同。
[0152]
本技术实施例还提供了一种电子设备,电子设备包括:存储器、处理器、存储在存储器上并可在处理器上运行的程序以及用于实现处理器和存储器之间的连接通信的数据总线,程序被处理器执行时实现上述安全帽检测模型训练方法或者安全帽检测方法。该电子设备可以为包括平板电脑、车载电脑等任意智能终端。
[0153]
请参阅图9,图9示意了另一实施例的电子设备的硬件结构,电子设备包括:
[0154]
处理器901,可以采用通用的cpu(centralprocessingunit,中央处理器)、微处理器、应用专用集成电路(applicationspecificintegratedcircuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本技术实施例所提供的技术方案;
[0155]
存储器902,可以采用只读存储器(readonlymemory,rom)、静态存储设备、动态存储设备或者随机存取存储器(randomaccessmemory,ram)等形式实现。存储器902可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器902中,并由处理器901来调用执行本技术实施例的安全帽检测模型训练方法或者安全帽检测方法。
[0156]
输入/输出接口903,用于实现信息输入及输出;
[0157]
通信接口904,用于实现本设备与其他设备的通信交互,可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信;
[0158]
总线905,在设备的各个组件(例如处理器901、存储器902、输入/输出接口903和通信接口904)之间传输信息;
[0159]
其中处理器901、存储器902、输入/输出接口903和通信接口904通过总线905实现彼此之间在设备内部的通信连接。
[0160]
本技术实施例还提供了一种存储介质,存储介质为计算机可读存储介质,用于计算机可读存储,存储介质存储有一个或者多个程序,一个或者多个程序可被一个或者多个
处理器执行,以实现上述安全帽检测模型训练方法或者安全帽检测方法。
[0161]
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0162]
本技术实施例描述的实施例是为了更加清楚的说明本技术实施例的技术方案,并不构成对于本技术实施例提供的技术方案的限定,本领域技术人员可知,随着技术的演变和新应用场景的出现,本技术实施例提供的技术方案对于类似的技术问题,同样适用。
[0163]
本领域技术人员可以理解的是,图1-6中示出的技术方案并不构成对本技术实施例的限定,可以包括比图示更多或更少的步骤,或者组合某些步骤,或者不同的步骤。
[0164]
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
[0165]
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、设备中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。
[0166]
本技术的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0167]
应当理解,在本技术中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:只存在a,只存在b以及同时存在a和b三种情况,其中a,b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
[0168]
在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0169]
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个
网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0170]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0171]
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括多指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例的方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,简称rom)、随机存取存储器(random access memory,简称ram)、磁碟或者光盘等各种可以存储程序的介质。
[0172]
以上参照附图说明了本技术实施例的优选实施例,并非因此局限本技术实施例的权利范围。本领域技术人员不脱离本技术实施例的范围和实质内所作的任何修改、等同替换和改进,均应在本技术实施例的权利范围之内。

技术特征:
1.一种安全帽检测模型训练方法,其特征在于,包括以下步骤:获取训练数据,并初始化安全帽检测模型;将所述训练数据输入所述安全帽检测模型的骨干网络层进行特征提取,得到第一图像特征;将所述第一图像特征输入所述安全帽检测模型的连接网络层进行特征整合,得到第二图像特征,其中,所述连接网络层用于对第一图像特征并行进行平均池化、高维卷积和全局平均池化操作后进行特征融合得到第二图像特征;将所述第二图像特征输入所述安全帽检测模型的头部网络层进行特征预测,得到预测检测框;根据所述预测检测框与所述训练数据中的真实检测框确定预测损失;根据所述预测损失更新所述安全帽检测模型的参数,得到训练好的安全帽检测模型。2.根据权利要求1所述的安全帽检测模型训练方法,其特征在于,所述获取训练数据,包括以下步骤:获取多张监控画面图像;根据所述监控画面图像中的安全帽标记真实检测框,得到可视化对象类格式标签;将多张所述监控画面图像的可视化对象类格式标签转换为文本文件,并将多张所述监控画面图像转换为预设规格,得到训练数据。3.根据权利要求2所述的安全帽检测模型训练方法,其特征在于,所述初始化安全帽检测模型,包括以下步骤:从训练数据中提取所有真实检测框的第一尺寸;采用聚类算法,根据预设锚框数量对所有真实检测框的第一尺寸进行聚类操作,得到对应预设锚框数量的聚类簇,取每个聚类簇的聚类中心作为初始锚框的第二尺寸;根据训练数据中每一张监控画面图像的真实检测框的位置构建多个辅助检测框,以将所述辅助检测框作为辅助标签对所述安全帽检测模型进行训练。4.根据权利要求3所述的安全帽检测模型训练方法,其特征在于,所述将所述第一图像特征输入所述安全帽检测模型的连接网络层进行特征整合,得到第二图像特征,包括以下步骤:将所述第一图像特征输入所述连接网络层的第一分支单元进行平均池化和线性卷积操作,得到第一张量;将所述第一图像特征输入所述连接网络层的第二分支单元进行高维卷积操作,得到第二张量;将所述第一图像特征输入所述连接网络层的第三分支单元进行全局平均池化和线性卷积操作,得到第三张量;对所述第一张量、第二张量和第三张量进行特征融合操作,得到第二图像特征。5.根据权利要求4所述的安全帽检测模型训练方法,其特征在于,所述对所述第一张量、第二张量和第三张量进行特征融合操作,得到第二图像特征,包括以下步骤:将所述第一张量和所述第二张量相加,得到第四张量;将所述第四张量和所述第三张量相乘,得到第二图像特征。6.根据权利要求1所述的安全帽检测模型训练方法,其特征在于,所述根据所述预测检
测框与所述训练数据中的真实检测框确定预测损失,包括以下步骤:根据所述预测检测框的预测分类结果和真实分类结果确定分类损失;根据所述预测检测框的位置和所述真实检测框的位置确定定位损失;根据所述预测检测框和真实检测框的形状相似度确定置信度损失;根据所述分类损失、所述定位损失和所述置信度损失确定预测损失。7.一种安全帽检测方法,其特征在于,包括以下步骤:获取监控画面;采用如权利要求1至6任一项所述的训练完成的安全帽检测模型对所述监控画面进行逐帧分析,得到安全帽佩戴检测结果。8.一种安全帽检测模型训练系统,其特征在于,包括:第一模块,用于获取训练数据,并初始化安全帽检测模型;第二模块,用于将所述训练数据输入所述安全帽检测模型的骨干网络层进行特征提取,得到第一图像特征;第三模块,用于将所述第一图像特征输入所述安全帽检测模型的连接网络层进行特征整合,得到第二图像特征,其中,所述连接网络层用于对第一图像特征并行进行平均池化、高维卷积和全局平均池化操作后进行特征融合得到第二图像特征;第四模块,用于将所述第二图像特征输入所述安全帽检测模型的头部网络层进行特征预测,得到预测检测框;第五模块,用于根据所述预测检测框与所述训练数据中的真实检测框确定预测损失;第六模块,用于根据所述预测损失更新所述安全帽检测模型的参数,得到训练好的安全帽检测模型。9.一种电子设备,其特征在于,所述电子设备包括存储器、处理器、存储在所述存储器上并可在所述处理器上运行的程序以及用于实现所述处理器和所述存储器之间的连接通信的数据总线,所述程序被所述处理器执行时实现如权利要求1至6任一项所述的安全帽检测模型训练方法或者如权利要求7所述的安全帽检测方法的步骤。10.一种存储介质,所述存储介质为计算机可读存储介质,用于计算机可读存储,其特征在于,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现权利要求1至6任一项所述的安全帽检测模型训练方法或者如权利要求7所述的安全帽检测方法的步骤。

技术总结
本申请实施例提供了一种安全帽检测方法、模型训练方法、系统、装置及存储介质,属于人工智能技术领域。本申请将训练数据输入模型的骨干网络层进行特征提取后连接网络层进行特征整合得到第二图像特征,在连接网络层中对输入特征并行进行平均池化、高维卷积和全局平均池化操作后进行特征融合得到输出特征,从而能够关注图像中重要的局部信息和全局上下文信息,减少安全帽特征信息的丢失,学习全面训练数据中安全帽检测相关特征,再将第二图像特征输入模型的头部网络层进行特征预测得到预测检测框,并基于预测检测框和真实检测框反向更新安全帽检测模型。本申请训练得到安全帽检测模型鲁棒性高,对于模糊的监控画面也能准确检测安全帽佩戴情况。全帽佩戴情况。全帽佩戴情况。


技术研发人员:高建
受保护的技术使用者:中国电信股份有限公司
技术研发日:2023.07.10
技术公布日:2023/10/15
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐