CN116630668A - 一种快速轻量级的安全帽佩戴异常识别方法 - Google Patents
一种快速轻量级的安全帽佩戴异常识别方法 Download PDFInfo
- Publication number
- CN116630668A CN116630668A CN202310419032.4A CN202310419032A CN116630668A CN 116630668 A CN116630668 A CN 116630668A CN 202310419032 A CN202310419032 A CN 202310419032A CN 116630668 A CN116630668 A CN 116630668A
- Authority
- CN
- China
- Prior art keywords
- module
- improved
- data
- output
- safety helmet
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 29
- 230000005856 abnormality Effects 0.000 title claims abstract description 14
- 238000001514 detection method Methods 0.000 claims abstract description 41
- 238000012549 training Methods 0.000 claims abstract description 36
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 16
- 230000007246 mechanism Effects 0.000 claims abstract description 12
- 230000000694 effects Effects 0.000 claims abstract description 7
- 238000004458 analytical method Methods 0.000 claims abstract description 4
- 230000004927 fusion Effects 0.000 claims description 32
- 230000006870 function Effects 0.000 claims description 25
- 230000004913 activation Effects 0.000 claims description 23
- 238000012545 processing Methods 0.000 claims description 22
- 238000005070 sampling Methods 0.000 claims description 11
- 238000012360 testing method Methods 0.000 claims description 7
- 238000012795 verification Methods 0.000 claims description 6
- 230000002159 abnormal effect Effects 0.000 claims description 5
- 238000000605 extraction Methods 0.000 claims description 5
- 238000010606 normalization Methods 0.000 claims description 4
- 238000009826 distribution Methods 0.000 claims description 3
- 238000011478 gradient descent method Methods 0.000 claims description 3
- 238000011176 pooling Methods 0.000 claims description 3
- 230000009467 reduction Effects 0.000 claims description 3
- 238000005520 cutting process Methods 0.000 claims description 2
- 238000007781 pre-processing Methods 0.000 claims description 2
- 238000012544 monitoring process Methods 0.000 abstract description 3
- 238000004691 coupled cluster theory Methods 0.000 abstract 1
- 239000013585 weight reducing agent Substances 0.000 abstract 1
- 238000004590 computer program Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 4
- 238000010276 construction Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011897 real-time detection Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/762—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
- G06V10/763—Non-hierarchical techniques, e.g. based on statistics of modelling distributions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/22—Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/7715—Feature extraction, e.g. by transforming the feature space, e.g. multi-dimensional scaling [MDS]; Mappings, e.g. subspace methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
- G06V10/806—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Image Analysis (AREA)
Abstract
本发明属于计算机视觉中的目标检测技术领域,公开了一种快速轻量级的安全帽佩戴异常识别方法,将CA注意力机制引入YOLOv5模型,使其与ConvNeXt的内容相结合,对自动计算锚框的Kmeans算法进行改进,训练后得到了优化后的YOLOv5_CC模型,对边缘端设备上传的监控视频切片进行异常识别分析,检测出视频中的人是否佩戴安全帽。本发明所述的方法在保持轻量化的基础上提升了检测精度,加快了运行速度,实现了更好的训练效果。
Description
技术领域
本发明属于计算机视觉中的目标检测技术领域,具体是涉及一种快速轻量级的安全帽佩戴异常识别方法。
背景技术
在施工地、变电站房等施工存在安全隐患场所佩戴安全帽是保障工人安全的重要措施,安全帽佩戴检测工作与工作人员的安全息息相关,如何快速准确地检测出工人是否佩戴安全帽是当前的一个研究热点。
YOLO(You Only Look Once:Unified,Real-Time Object Detection),是JosephRedmon和Ali Farhadi等人于2015年提出的基于单个神经网络的目标检测***。YOLO v0的思路起源于将基本的CNN思路从分类扩展到检测中,即网络的输出应该是bounding box(矩形框)的坐标,来进行遍历性的分类任务。在YOLO v0只能做单目标检测、单分类检测以及小目标检测的基础上进行扩展,出现了YOLO v1。但是YOLO v1的预测的框并不是十分的准确并且会出现明显的漏检的现象,因此出现了YOLO v2。到此,YOLO的基本思路就确定了,对于YOLO v3的改进则是增加了多尺度检测,YOLO v4则是在其基础上增加了一些特点,增加了测试精度。YOLO v5是基于YOLO v3进行的改造,通过邻域的正样本anchor匹配策略增加了正样本;通过灵活的被指参数,得到了不同复杂度的模型;通过一些内置的超参优化策略,提升了整体性能;通过mosaic的增强,提升了小物件的检测性能。
现有技术中存在一些基于YOLO v5来进行安全帽佩戴异常的识别方法,但实际变电站房等场所的摄像头监测到的图像视频常因光线、角度等外界干扰导致监测准确率较低,而实际变电站房等场所的公开数据不足,容易产生过拟合,从而在实际变电站房等场所中达不到理想监测效果;且大多使用建筑工地的安全帽数据,而忽视了其他背景下安全帽识别的问题。如专利申请CN115512387A,公开了一种基于改进YOLOV5模型的工地安全帽佩戴检测方法,但仅考虑到了工地背景下的数据,着重考虑了检测的可靠性,忽视了模型的轻量级和速度,本发明在训练模型时使用了变电站房场所的摄像头监测到的图像视频,在改进模型时同时考虑了模型的可靠性和速度,使模型能运用在轻量级的边缘设备,同时保证检测的准确性。
发明内容
为解决上述技术问题,本发明提供了一种快速轻量级的安全帽佩戴异常识别方法,以经典的YOLOv5_m模型为基础构建了改进的训练模型,对于黑暗环境、模糊图像都能达到较好的识别效果,能在保持轻量化的基础上提升了检测精度,加快了运行速度。
本发明所述的一种快速轻量级的安全帽佩戴异常识别方法,包括以下步骤:
步骤1:获取安全帽佩戴图片数据集,将其分为训练集、验证集及测试集;并对训练集数据进行处理,生成相应的标签文件;
步骤2、构建改进的YOLOv5_CC目标检测模型,将训练集数据输入改进后的YOLOv5_CC目标检测模型进行训练,通过验证集对模型的能力进行初步评估并及时调整模型的超参数;
步骤3、利用测试集对步骤2得到的改进的YOLOv5_CC目标检测模型进行检测,得到模型的检测效果,确定模型的可行性;
步骤4、将训练完成的YOLOv5_CC目标检测模型与对应的应用场景结合,对边缘端设备上传的图片或视频信息进行异常识别分析,检测出视频中的人是否佩戴安全帽。
进一步的,步骤1中,确定目标识别正样本为helmet,负样本为person;获取在目标场所站房内的安全帽图片数据集,并使用数据标记工具labellmg对其处理,生成YOLO格式的数据集A;借助网络收集安全帽在其他环境中的大量公开数据集B;使用生成式对抗网络模型CycleGAN进行数据扩充,把数据集B训练为与数据集A风格类似的数据分布B’;最后将B’加入数据集A中从而生成最终数据集。
进一步的,所述改进的YOLOv5_CC目标检测模型包括:输入模块、改进的Backbone主干网络模块、改进的Neck模块和输出预测模块;
所述的输入模块利用优化的kmeans算法得到最佳预测锚框,之后经过归一化的图像数据输出至改进的Backbone主干网络模块;
所述改进的Backbone主干网络模块对输入模块处理后的图像数据进行特征提取,通过其加入的CA注意力机制使Backbone获取水平和垂直两个方向的特征图,再经过SPPF实现自适应尺寸的输出;
所述改进的Neck模块对改进的Backbone主干网络模块输出的多层特征进行上采样并融合后,将得到的数据输入至输出预测模块;
所述的输出预测模块运用SIoU总损失函数对Neck模块的输出结果完成异常识别。
进一步的,所述输入模块,输入大小为640×640的图像,并进行图像预处理,主要采用了Moasaic数据增强,由原来的两张图像提高到四张图像进行拼接,并对图像进行随机缩放,随机裁剪和随机排列,得到更加丰富的图像,之后训练集数据利用优化后的kmeans聚类算法,得到最适合数据集的锚框大小,然后将归一化处理过的图像数据输出到下一模块。
进一步的,所述优化的k-means算法聚类训练集中所有目标框的宽、高,结果得到9个宽、高组合,即得到9个anchor框,具体步骤为:
步骤a:从步骤1训练集中的全部数据样本中随机选择k个样本作为中心点;
步骤b:计算每个样本与k个中心点的距离,将样本分配给距其最近的中心点。
步骤c:每个样本都分配到距离它最近的一个中心点,分配到相同中心点的所有样本组成一个类别,完成聚类;
步骤d:经过聚类后,每个训练集中的输入样本在聚类的输出层中找到一个和它最匹配的激活节点,然后用随机梯度下降法更新激活节点的参数,得到若干个激活节点后,所有激活节点组成了优胜领域,圈定优胜领域内的所有节点,并对节点权值进行调整后再进行聚类,得到最适合数据集的锚框尺寸。
进一步的,所述改进的Backbone主干网络模块包括依次连接的一层CBS结构、交替四次的CBS结构和C3结构、CA注意力机制和SPPF结构;
CBS结构由卷积层、BN层和激活层组成,对输入模块处理好的图像数据进行特征提取、标准化处理和非线性处理;
C3模块对残差特征进行学习,该模块分为两支,其中一支使用了3个标准卷积层和Bottleneck模块堆叠,另一只仅经过一个基本卷积模块,最后将两支进行连接操作;
CA注意力机制在一个空间方向捕获远程依赖关系,在另一个空间保存精确的位置信息,一共获得水平方向和垂直方向两个方向的特征图,将其拼接并使用卷积、BatchNorm和激活函数实现降维,最后使用激活函数后与原始特征进行融合输出;
SPPF模块即空间金字塔池化模块,将输入串行通过多个5×5大小的MaxPool层,实现一个自适应的输出。
进一步的,所述改进的Neck模块由CBS模块和改进的CNeB模块组成,改进的Backbone主干网络模块输出结果输入至Neck模块,输出结果一方面与CBS进行特征融合,得到特征融合结果B1,输出结果另一方面经过CBS模块和上采样,与Backbone模块中经过第三次C3层的输出特征进行concat融合,得到中间特征融合结果A;随后中间特征融合结果A经过改进的CNeB和CBS模块后的输出结果,其一方面与CBS模块进行特征融合,得到特征融合结果B2,其另一方面再次进行上采样操作,使得特征图的长和宽增加一倍,上采样的结果与改进的Backbone主干网络模块中第二次经过C3层的输出特征进行concat融合,得到特征融合结果B3;B1、B2和B3经过改进的CNeB模块,分别和CBS结合一起送入输出预测层;
改进的CNeB结构首先采用分组卷积和大卷积核对上层输入进行处理,经过LayerNorm做归一化处理,通过一次GELU激活层,并在缩放后使用drop_path正则化操作;从整体上改善网络结构,简化模型从而提升速度,实现泛化能力和精度的提升。
进一步的,SIoU损失函数由4个Cost函数组成,包括Angle cost,Distance cost,Shape cost和IoU cost,总损失函数表达式为:
L=WboxLbox+WclsLcls,
其中Wbox和Wcls是框和分类损失权重,Lcls是Focal loss损失函数为回归损失函数,Δ是Distance cost,Ω是Shape cost。
本发明所述的有益效果为:
1)本发明所述方法通过改进YOLOv5经典模型中自动计算锚框的Kmeans算法,通过圈定优胜邻域内的所有节点,并对节点权值进行调整后再进行聚类,从而改善原模型算法易受噪声影响以及迭代结果通常不是全局最优而是局部最优解这两大缺陷,得到更加准确的预测锚框,又由于anchor的计算属于先验模块,所以额外增加的计算成本相较于百万级数据集训练成本完全可以忽略不计;
2)本发明所述方法在主干网络中引入CA注意力机制,不仅考虑了通道信息,还考虑了方向相关的位置信息,在实验中更加精确地来进行对象检测;
3)本发明所述方法将ConvNeXt中的CNeB模块引入模型,将CNeB模块加入模型的Neck中与CBS模块结合,从整体上改善网络结构,简化模型从而提升速度,实现泛化能力和精度的提升。
4)本发明所述方法在输出预测端用损失函数SIoU替换原YOLOv5模型的损失函数CIoU,传统的目标检测损失函数CIoU依赖于边界框回归指标的聚合,如预测框和真实框的距离、重叠区域和纵横比;SIoU考虑到所需回归之间的向量角度,重新定义了惩罚指标,不仅关注重叠区域,还关注其他的非重叠区域,能更好地反映预测框和真实框两者的重合度,极大地改进目标检测算法的训练和推理,而且在训练阶段实现了更快的收敛,能有效提高训练的速度和模型的准确率。
附图说明
图1为本发明所用的模型结构图;
图2为本发明所述方法的流程图;
图3为CNeB的结构示意图;
图4为嵌入模型的注意力机制CA示意图;
图5为模型中CBS的组成结构示意图;
图6为模型中C3的组成结构示意图。
具体实施方式
为了使本发明的内容更容易被清楚地理解,下面根据具体实施例并结合附图,对本发明作进一步详细的说明。
本发明所述的一种快速轻量级的安全帽佩戴异常识别方法,如图2所示,包括以下步骤:
步骤1:获取安全帽佩戴图片数据集,将其分为训练集、验证集及测试集;并对训练集数据进行处理,生成相应的标签文件;
步骤2、构建改进的YOLOv5_CC目标检测模型,将训练集数据输入改进后的YOLOv5_CC目标检测模型进行训练,通过验证集对模型的能力进行初步评估并及时调整模型的超参数;
步骤3、利用测试集对步骤2得到的改进的YOLOv5_CC目标检测模型进行检测,得到模型的检测效果,确定模型的可行性;
步骤4、将训练完成的YOLOv5_CC目标检测模型与对应的应用场景结合,对边缘端设备上传的图片或视频信息进行异常识别分析,检测出视频中的人是否佩戴安全帽。
步骤S1:获取安全帽数据集,并对其处理生成标签文件。针对数据集类别不平衡问题,设计混合场景数据增强方法,使类别均衡化,提高模型在复杂施工环境下的准确性:
在本实施例中,步骤1具体为:
确定目标识别正样本为helmet,负样本为person;获取在目标场所站房内的安全帽图片集,并使用数据标记工具labellmg对其处理生成YOLO格式的数据集A;借助网络收集安全帽在其他环境中的大量公开数据B;使用生成式对抗网络模型CycleGAN来进行数据扩充,把B训练为与A风格类似的数据分布B’;最后将B’加入A中从而生成最终数据集。
步骤2中,所述改进的YOLOv5_CC目标检测模型如图1所示,包括输入模块、改进的Backbone主干网络模块、改进的Neck模块和输出预测模块;
所述的输入模块输入大小为640×640的图像,主要采用了Moasaic数据增强,由原来的两张图像提高到四张图像进行拼接,并对图像进行随机缩放,随机裁剪和随机排列,增强了数据的多样性,之后通过优化的kmeans算法对训练集进行聚类得到最适合数据集的预测锚框大小,再经过一系列数据处理后将处理后的数据输入Backbone模块。
所述优化的k-means算法聚类训练集中所有目标框的宽、高,结果得到9个宽、高组合,即得到9个anchor框,具体步骤为:
步骤a:从步骤1训练集中的全部数据样本中随机选择k个样本作为中心点;
步骤b:计算每个样本与k个中心点的距离,将样本分配给距其最近的中心点。
步骤c:每个样本都分配到距离它最近的一个中心点,分配到相同中心点的所有样本组成一个类别,完成聚类;
步骤d:经过聚类后,每个训练集中的输入样本在聚类的输出层中找到一个和它最匹配的激活节点,然后用随机梯度下降法更新激活节点的参数,得到若干个激活节点后,所有激活节点组成了优胜领域,圈定优胜领域内的所有节点,并对节点权值进行调整后再进行聚类。
原k-means算法经过步骤b完成聚类,但实际训练效果与预期差距过大;本实施例采用的优化后的k-means算法,经过两层聚类,可以改善原模型Kmeans算法“易受噪声影响”以及“迭代结果通常不是全局最优而是局部最优解”这两大缺陷。
所述改进的Backbone主干网络模块包括依次连接的一层CBS结构、交替四次的CBS结构和C3结构、CA注意力机制和SPPF结构;
如图5所示,CBS结构由卷积层、BN层和激活层组成,对输入模块处理好的图像数据进行特征提取、标准化处理和非线性处理;C3模块对残差特征进行学习,如图6所示,该模块分为两支,其中一支使用了3个标准卷积层和Bottleneck模块堆叠,另一只仅经过一个基本卷积模块,最后将两支进行连接操作;
如图4所示,CA注意力机制能够在一个空间方向捕获远程依赖关系,在另一个空间保存精确的位置信息,一共获得水平方向和垂直方向两个方向的特征图,将其拼接并使用卷积、BatchNorm和激活函数实现降维,最后使用激活函数后与原始特征进行融合输出,能更加精确地来进行对象检测;SPPF模块即空间金字塔池化模块,将输入串行通过多个5×5大小的MaxPool层,实现一个自适应的输出。
所述改进的Neck模块由CBS模块和改进的CNeB模块组成,改进的Backbone主干网络模块输出结果输入至Neck模块,输出结果一方面与CBS进行特征融合,得到特征融合结果B1,输出结果另一方面经过CBS模块和上采样,与Backbone模块中经过第三次C3层的输出特征进行concat融合,得到中间特征融合结果A;随后中间特征融合结果A经过改进的CNeB和CBS模块后的输出结果,其一方面与CBS模块进行特征融合,得到特征融合结果B2,其另一方面再次进行上采样操作,使得特征图的长和宽增加一倍,上采样的结果与改进的Backbone主干网络模块中第二次经过C3层的输出特征进行concat融合,得到特征融合结果B3;B1、B2和B3经过改进的CNeB模块,分别和CBS结合一起送入输出预测层;改进的CNeB结构如图3所示,首先采用分组卷积和大卷积核对上层输入进行处理,经过LayerNorm做归一化处理,通过一次GELU激活层,并在缩放后使用drop_path正则化操作,从整体上改善网络结构,简化模型从而提升速度,实现泛化能力和精度的提升。
所述的输出预测模块主体部分就是三个Detect检测器,运用SIoU总损失函数,基于网格的anchor在不同尺度的特征图上进行目标检测的过程;
YOLOv5原模型和改进后不同模型的具体训练结果数据如下表所示,
从表中数据可以看出,改进后的模型在层数上相比与YOLOv5m模型少了六层,比原模型更加轻量级,但准确率有所提升。
快速轻量化的安全帽佩戴异常识别方法可以实现高精度的实时检测,实现一种快速轻量化的识别。本实施案例提供的以上设计算法的程序设计方案可以代码化的形式存储在计算机可读取存储介质中,并以计算机程序的方式进行实现,并通过计算机硬件输入计算所需的基本参数信息,并输出计算结果。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程图中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或者其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程中指定的功能的步骤。
本发明是参照根据本发明实施例的方法、设备、和计算机程序产品的流程图来描述的。应理解可由计算机程序指令实现流程图中的每一流程、以及流程图的流程结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理及或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他和编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程中指定的功能的装置。
本发明不局限于上述最佳实施方式,任何人在本专利的启示下都可以得出其它各种形式的一种基于安全帽识别的高精度异常检测方法凡依据本发明申请专利范围所做的均等变化与修饰,皆应属于本专利的涵盖范围。
Claims (8)
1.一种快速轻量级的安全帽佩戴异常识别方法,其特征在于,包括以下步骤:
步骤1:获取安全帽佩戴图片数据集,将其分为训练集、验证集及测试集;并对训练集数据进行处理,生成相应的标签文件;
步骤2、构建改进的YOLOv5_CC目标检测模型,将训练集数据输入改进后的YOLOv5_CC目标检测模型进行训练,通过验证集对模型的能力进行初步评估并及时调整模型的超参数;
步骤3、利用测试集对步骤2得到的改进的YOLOv5_CC目标检测模型进行检测,得到模型的检测效果,确定模型的可行性;
步骤4、将训练完成的YOLOv5_CC目标检测模型与对应的应用场景结合,对边缘端设备上传的图片或视频信息进行异常识别分析,检测出视频中的人是否佩戴安全帽。
2.根据权利要1所述的一种快速轻量级的安全帽佩戴异常识别方法,其特征在于,步骤1中,确定目标识别正样本为helmet,负样本为person;获取在目标场所站房内的安全帽图片数据集,并使用数据标记工具labellmg对其处理,生成YOLO格式的数据集A;借助网络收集安全帽在其他环境中的大量公开数据集B;使用生成式对抗网络模型CycleGAN进行数据扩充,把数据集B训练为与数据集A风格类似的数据分布B’;最后将B’加入数据集A中从而生成最终数据集。
3.根据权利要1所述的一种快速轻量级的安全帽佩戴异常识别方法,其特征在于,所述改进的YOLOv5_CC目标检测模型包括:输入模块、改进的Backbone主干网络模块、改进的Neck模块和输出预测模块;
所述的输入模块利用优化的kmeans算法得到最佳预测锚框,之后经过归一化的图像数据输出至改进的Backbone主干网络模块;
所述改进的Backbone主干网络模块对输入模块处理后的图像数据进行特征提取,通过其加入的CA注意力机制使Backbone获取水平和垂直两个方向的特征图,再经过SPPF实现自适应尺寸的输出;
所述改进的Neck模块对改进的Backbone主干网络模块输出的多层特征进行上采样并融合后,将得到的数据输入至输出预测模块;
所述的输出预测模块利用SIoU损失函数对Neck模块的输出结果完成异常识别。
4.根据权利要3所述的一种快速轻量级的安全帽佩戴异常识别方法,其特征在于,所述输入模块,输入大小为640×640的图像,并进行图像预处理,采用了Moasaic数据增强,由原来的两张图像提高到四张图像进行拼接,并对图像进行随机缩放,随机裁剪和随机排列,得到更加丰富的图像,之后训练集数据利用优化后的kmeans聚类算法,得到最适合数据集的锚框大小,然后将归一化处理过的图像数据输出到下一模块。
5.根据权利要3所述的一种快速轻量级的安全帽佩戴异常识别方法,其特征在于,所述优化的k-means算法聚类训练集中所有目标框的宽、高,结果得到9个宽、高组合,即得到9个anchor框,具体步骤为:
步骤a:从步骤1训练集中的全部数据样本中随机选择k个样本作为中心点;
步骤b:计算每个样本与k个中心点的距离,将样本分配给距其最近的中心点。
步骤c:每个样本都分配到距离它最近的一个中心点,分配到相同中心点的所有样本组成一个类别,完成聚类;
步骤d:经过聚类后,每个训练集中的输入样本在聚类的输出层中找到一个和它最匹配的激活节点,然后用随机梯度下降法更新激活节点的参数,得到若干个激活节点后,所有激活节点组成了优胜领域,圈定优胜领域内的所有节点,并对节点权值进行调整后再进行聚类,得到最适合数据集的锚框尺寸。
6.根据权利要3所述的一种快速轻量级的安全帽佩戴异常识别方法,其特征在于,所述改进的Backbone主干网络模块包括依次连接的一层CBS结构、交替四次的CBS结构和C3结构、CA注意力机制和SPPF结构;
CBS结构由卷积层、BN层和激活层组成,对输入模块处理好的图像数据进行特征提取、标准化处理和非线性处理;
C3模块对残差特征进行学习,该模块分为两支,其中一支使用了3个标准卷积层和Bottleneck模块堆叠,另一只仅经过一个基本卷积模块,最后将两支进行连接操作;
CA注意力机制在一个空间方向捕获远程依赖关系,在另一个空间保存精确的位置信息,一共获得水平方向和垂直方向两个方向的特征图,将其拼接并使用卷积、BatchNorm和激活函数实现降维,最后使用激活函数后与原始特征进行融合输出;
SPPF模块即空间金字塔池化模块,将输入串行通过多个5×5大小的MaxPool层,实现一个自适应的输出。
7.根据权利要3所述的一种快速轻量级的安全帽佩戴异常识别方法,其特征在于,所述改进的Neck模块由CBS模块和改进的CNeB模块组成,改进的Backbone主干网络模块输出结果输入至Neck模块,输出结果一方面与CBS进行特征融合,得到特征融合结果B1,输出结果另一方面经过CBS模块和上采样,与Backbone模块中经过第三次C3层的输出特征进行concat融合,得到中间特征融合结果A;随后中间特征融合结果A经过改进的CNeB和CBS模块后的输出结果,其一方面与CBS模块进行特征融合,得到特征融合结果B2,其另一方面再次进行上采样操作,使得特征图的长和宽增加一倍,上采样的结果与改进的Backbone主干网络模块中第二次经过C3层的输出特征进行concat融合,得到特征融合结果B3;B1、B2和B3经过改进的CNeB模块,分别和CBS结合一起送入输出预测层;
改进的CNeB结构首先采用分组卷积和大卷积核对上层输入进行处理,经过LayerNorm做归一化处理,通过一次GELU激活层,并在缩放后使用drop_path正则化操作。
8.根据权利要3所述的一种快速轻量级的安全帽佩戴异常识别方法,其特征在于,SIoU损失函数由4个Cost函数组成,包括Angle cost,Distance cost,Shape cost和IoU cost,总损失函数表达式为:
L=WboxLbox+WclsLcls,
其中Wbox和Wcls是框和分类损失权重,Lclk是Focal loss损失函数,为回归损失函数,Δ是Distance cost,Ω是Shape cost。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310419032.4A CN116630668A (zh) | 2023-04-19 | 2023-04-19 | 一种快速轻量级的安全帽佩戴异常识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310419032.4A CN116630668A (zh) | 2023-04-19 | 2023-04-19 | 一种快速轻量级的安全帽佩戴异常识别方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116630668A true CN116630668A (zh) | 2023-08-22 |
Family
ID=87620211
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310419032.4A Pending CN116630668A (zh) | 2023-04-19 | 2023-04-19 | 一种快速轻量级的安全帽佩戴异常识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116630668A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116958883A (zh) * | 2023-09-15 | 2023-10-27 | 四川泓宝润业工程技术有限公司 | 一种安全帽检测方法、***、存储介质及电子设备 |
CN117456325A (zh) * | 2023-10-27 | 2024-01-26 | 绵阳职业技术学院 | 一种水稻病虫害检测方法 |
-
2023
- 2023-04-19 CN CN202310419032.4A patent/CN116630668A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116958883A (zh) * | 2023-09-15 | 2023-10-27 | 四川泓宝润业工程技术有限公司 | 一种安全帽检测方法、***、存储介质及电子设备 |
CN116958883B (zh) * | 2023-09-15 | 2023-12-29 | 四川泓宝润业工程技术有限公司 | 一种安全帽检测方法、***、存储介质及电子设备 |
CN117456325A (zh) * | 2023-10-27 | 2024-01-26 | 绵阳职业技术学院 | 一种水稻病虫害检测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Huang et al. | Point cloud labeling using 3d convolutional neural network | |
CN110378222B (zh) | 一种输电线路防震锤目标检测与缺陷识别方法及装置 | |
CN116630668A (zh) | 一种快速轻量级的安全帽佩戴异常识别方法 | |
CN110135375A (zh) | 基于全局信息整合的多人姿态估计方法 | |
CN111461291A (zh) | 基于YOLOv3剪枝网络和深度学习去雾模型的长输管线巡检方法 | |
CN109858367B (zh) | 工人通过支撑不安全行为的视觉自动化检测方法及*** | |
CN111126325A (zh) | 一种基于视频的智能人员安防识别统计方法 | |
CN110136101A (zh) | 一种基于孪生距离比对的轮胎x光病疵检测方法 | |
CN113689382B (zh) | 基于医学影像和病理图像的肿瘤术后生存期预测方法及*** | |
CN111539355A (zh) | 一种基于深层神经网络的光伏板异物检测***及检测方法 | |
CN112287827A (zh) | 基于智慧灯杆的复杂环境行人口罩佩戴检测方法及*** | |
CN114463759A (zh) | 一种基于无锚框算法的轻量化文字检测方法及装置 | |
CN110766046A (zh) | 一种双通道卷积神经网络集成学习的空气质量测量方法 | |
CN107392254A (zh) | 一种通过联合嵌入从像素中构造图像的语义分割方法 | |
CN114170144A (zh) | 一种输电线路销钉缺陷检测方法、设备及介质 | |
US20230060211A1 (en) | System and Method for Tracking Moving Objects by Video Data | |
CN115601661A (zh) | 一种用于城市动态监测的建筑物变化检测方法 | |
CN113469950A (zh) | 一种基于深度学习的复合绝缘子异常发热缺陷的诊断方法 | |
CN117557534A (zh) | 基于模型自优化的x射线焊缝缺陷智能评测方法 | |
CN114662605A (zh) | 基于改进的YOLOv5模型的火焰检测方法 | |
CN117392568A (zh) | 一种复杂场景下无人机巡检变电设备的方法 | |
CN116363075A (zh) | 一种光伏组件热斑检测方法、***和电子设备 | |
CN115862128A (zh) | 一种基于人体骨架的顾客异常行为识别方法 | |
CN115565146A (zh) | 基于自编码器获取鸟瞰图特征的感知模型训练方法及*** | |
CN114140524A (zh) | 一种多尺度特征融合的闭环检测***及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |