APP下载

基于改进YOLOv8n 的井下人员安全帽佩戴检测

2024-10-31王琦夏鲁飞陈天明韩鸿胤王亮

工矿自动化 2024年9期

摘要:针对现有井下人员安全帽佩戴检测方法未考虑遮挡、目标较小、背景干扰等因素,存在检测精度差及模型不够轻量化等问题,提出一种改进YOLOv8n 模型,并将其应用于井下人员安全帽佩戴检测。在颈部网络中加入P2 小目标检测层,提高模型对小目标的检测能力,更好地捕捉安全帽目标细节;在主干网络中添加卷积块注意力模块(CBAM)提取图像关键特征,减少背景信息的干扰;将CIoU 损失函数替换为WIoU 损失函数,提升模型对检测目标的定位能力;采用轻量化共享卷积检测头(LSCD),通过共享参数的方式降低模型复杂度,并将卷积中的归一化层替换为群组归一化(GN),在尽可能保证精度的同时实现模型轻量化。实验结果表明:与YOLOv8n 模型相比,改进YOLOv8n 模型在交并比阈值为0.5 时的平均精度均值(mAP@50)提升了1.8%,参数量减少了23.8%,计算量下降了10.4%,模型大小减小了17.2%;改进YOLOv8n 模型检测精度高于SSD,YOLOv3−tiny,YOLOv5n,YOLOv7 和YOLOv8n,模型复杂度仅高于YOLOv5n,较好地平衡了模型检测精度与复杂度;在井下复杂场景下,改进YOLOv8n 模型能够实现对井下人员安全帽佩戴的准确检测,改善了漏检问题。

关键词:井下安全帽检测;小目标检测;YOLOv8n;CBAM;WIoU;轻量化

中图分类号:TD67 文献标志码:A

0 引言

井下工作环境面临坍塌、有毒气体、高温等潜在危险[1]。为保障工作人员的安全,个人防护装备的使用至关重要,其中确保人员正确佩戴安全帽并及时发现未佩戴者成为重要任务。

目标检测是井下人员安全帽佩戴检测的核心。近年来,深度学习算法在目标检测领域广泛应用。常用的目标检测方法主要分为单阶段检测模型(如SSD[2],YOLO[3])与双阶段检测模型(如R−CNN[4])。在工业领域中,双阶段检测模型由于其复杂性导致检测速度较慢,难以保证实时检测。单阶段检测模型中,SSD 检测速度较快,但精度较差,而YOLO 以其较高的实时性和准确性备受关注,能够在单一前向传递中直接预测图像中的目标位置和类别。赵红成等[5]在YOLOv3 的基础上通过使用GIoU 损失函数提高定位准确率,采用金字塔多池化结构提高多尺度检测能力,并引入注意力机制专注于安全帽特征学习,但当目标过小或被遮挡时仍有漏检情况,且增加了检测时间。Fu Chuan 等[6]在YOLOv3 的基础上,将深度残差网络和多尺度卷积特征相结合,并通过调整损失函数的权重来优化目标框的选择,提升了对中远距离安全帽的识别精度,但没有考虑遮挡情况。李熙尉等[7]将YOLOv5 的CIoU 损失函数替换为Alpha−CIoU 损失函数,并引入卷积块注意力模块(Convolutional Block Attention Module, CBAM) 提取图像关键特征,但未考虑安全帽目标较小与遮挡等情况。李凤英等[8]基于YOLOv7,采用数据增强的方式来克服复杂环境的影响,且设计了针对性的锚框尺寸进行检测,并引入DeepSort 算法实现了安全帽追踪识别,但未考虑遮挡与目标较小时对检测精度的影响。以上方法在一定程度上提高了检测精度,但并未完全考虑遮挡、目标较小、背景干扰等因素,且都未解决模型轻量化问题。为保证在井下复杂场景检测的实时性,本文在YOLOv8n 的基础上进行改进,提出了一种基于改进YOLOv8n 的井下人员安全帽佩戴检测方法。添加P2 小目标检测层,防止小目标信息丢失;引入CBAM,增强特征提取能力;将CIoU 损失函数替换为WIoU 损失函数,提升模型的泛化能力及定位性能;使用轻量化共享卷积检测头(Lightweight Shared Convolutional Detection Head,LSCD),降低模型参数量及计算量。

1 改进YOLOv8n 模型

改进YOLOv8n 模型结构如图1 所示(红框中为改进部分)。在颈部网络中添加P2 小目标检测层,提高对小目标的检测能力; 在主干网络中添加CBAM,降低对无效信息的关注;检测头使用LSCD,降低模型复杂度。

1.1 小目标检测层

YOLOv8n 通过N3, N4 和N5 检测头分别提取P3,P4 和P5 检测层的特征图,对应特征图大小分别为80 80、40 40 和20 20[9]。井下安全帽属于小目标,小目标通常在图像中占据较少的像素,特征少或不明显,容易被忽略或误判,仅靠原YOLOv8n 的检测层无法实现对小目标的精准检测。因此通过添加4 倍下采样的P2 小目标检测层及对应的检测头N2 来提升对小目标的检测能力,如图2 所示。P2 对应的检测特征图大小为160×160,用于检测4×4 以上大小的目标,可使网络更加关注小目标,提高检测精度。