Safety Helmet Detection Based on YOLOv5
标题(Title)
Safety Helmet Detection Based on YOLOv5
用YOLOv5检测安全帽,是一个具体场景的应用
2021 IEEE International Conference on Power Electronics, Computer Applications (ICPECA)
摘要(Abstract)
安全帽是工人最基本的保护装备,对工人生命安全有重大意义。然而,由于缺乏安全意识,安全帽往往未被佩戴。本文提出了一种基于YOLOv5的安全帽检测方法,并对6045张收集的数据集进行了标注。使用不同参数的YOLOv5模型进行训练和测试,实验结果显示YOLOv5s的平均检测速度达到110帧每秒,完全满足实时检测要求。使用可训练目标检测器的预训练权重,YOLOv5x的mAP达到94.7%,证明了基于YOLOv5的安全帽检测方法的有效性。
背景(Background)
安全帽作为工人最基本的个人防护装备,对保护工人生命具有重要意义。然而,由于缺乏安全意识,一些工人在工作时往往不佩戴安全帽,因此安全帽检测成为生产安全监控的重要手段,尤其在建筑工地、煤矿等场所应用广泛。
本文将利用YOLO实现对安全帽的自动检测。
主要内容(Main Content)
YOLOv5网络结构
YOLOv5网络分为三个部分:骨干网络(Backbone)、颈部(Neck)和输出层(Output)。具体结构如下:
- 骨干网络(Backbone):输入图片的分辨率为640×640×3,首先经过Focus结构,利用切片操作生成320×320×12的特征图,然后通过32个卷积核的卷积操作,最终得到320×320×32的特征图。CBL模块是一个基本的卷积模块,包括Conv2D、BatchNormalization和LeakyRELU。
- BottleneckCSP模块:主要进行特征提取,提取图像中的丰富信息。与其他大型卷积神经网络相比,BottleneckCSP结构可以减少优化过程中梯度信息的重复,通过调整模块的宽度和深度,可以得到不同参数的四种模型(YOLOv5s, YOLOv5m, YOLOv5l, YOLOv5x)。
- SPP模块:增加网络的感受野,获取不同尺度的特征。
- 底部特征金字塔(Bottom-up feature pyramid):基于FPN结构,结合自上而下和自下而上的特征聚合,改善了网络检测不同尺度目标的能力。
分类器修改
针对安全帽检测场景,YOLOv5的分类器进行了修改:
- COCO数据集包含80个类别,输出张量的维度为3 × (5 + 80) = 255,其中3代表每个网格预测的三个模板框,5代表每个预测框的坐标和置信度。
- 在安全帽检测中,有两种类型的对象:佩戴安全帽和未佩戴安全帽。因此,将输出维度修改为3 × (5 + 2) = 21,以适应安全帽检测场景,从而减少网络参数,降低计算开销,提高检测速度和准确性。
实验细节
实验在ubuntu18.04操作系统上进行,使用Pytorch框架,并在单个NVIDIA GTX1660 GPU上进行训练和测试。实验步骤包括:
- 数据增强:对训练集图片进行随机裁剪至640×640大小,并采用随机翻转、几何失真、光照失真、图像遮挡、随机擦除、cutout、mixup等数据增强方法。
- 测试阶段:图片缩放至640×640,以便于评估网络性能。
- 优化器:使用SGD优化器优化网络,主要的实验超参数包括:
- 学习率:0.01
- 学习率衰减:0.999
- 学习率衰减步长:1
- 权重衰减:5e-4
- 动量:0.937
- 批次大小:16
- 迭代次数:100
实验结果
实验使用YOLOv5的四种模型(s, m, l, x)进行训练和测试,主要结果如下
评价和感想(Evaluation and Reflections)
无,简单的看看在做项目的应用。
未来研究方向(Future Research Directions)
无
参考文献(References)
https://ieeexplore.ieee.org/abstract/document/9362711/
Zhou, F., Zhao, H., & Nie, Z. (2021, January). Safety helmet detection based on YOLOv5. In 2021 IEEE International conference on power electronics, computer applications (ICPECA) (pp. 6-11). IEEE.