计算机系统应用  2023, Vol. 32 Issue (2): 139-149   PDF    
扩展YOLOv5安全帽多级目标分类检测
金源1, 张长鲁2     
1. 北京信息科技大学 计算机学院, 北京 100101;
2. 北京信息科技大学 经济管理学院, 北京 100192
摘要:YOLO是目前计算机视觉目标检测领域比较重要的算法模型之一. 基于现有YOLOv5s模型提出了一种扩展的YOLOv5多级分类目标检测算法模型. 首先, 对LabelImg标注工具进行功能扩展, 使其满足多级分类标签文件构建; 其次在YOLOv5s算法基础上修改检测头输出格式, 在骨干网络前端引入DenseBlock、Res2Net网络模型核心设计思想, 获取丰富的多维度特征信息, 增强特征信息的重用性, 实现了YOLO多级分类目标检测任务. 在开源安全帽数据集上同时以安全帽颜色作为二级分类进行训练验证, 平均精度, 精确率和召回率分别达到了95.81%、94.90%和92.54%, 实验结果验证了YOLOv5多级分类目标检测任务的可行性, 并为目标检测及多级分类目标检测任务提供一种新的思路和方法.
关键词: 目标检测    YOLOv5    多级分类    DenseBlock模块    损失函数    深度学习    
Extended YOLOv5 for Multi-level Target Classification Detection of Helmet
JIN Yuan1, ZHANG Chang-Lu2     
1. Computer School, Beijing Information Science and Technology University, Beijing 100101, China;
2. School of Economics and Management, Beijing Information Science and Technology University, Beijing 100192, China
Abstract: YOLO is one of the most important algorithm models in the target detection of computer vision. Given the existing YOLOv5s model, an extended YOLOv5 algorithm model for multi-level classification target detection is proposed. Firstly, the function of the annotation tool LabelImg is extended to construct multi-level classification label files. Secondly, the output format of the detection head is modified on this basis of the YOLOv5s algorithm, and the core design idea of the DenseBlock and Res2Net network model is introduced in the front end of the backbone network to extract rich mul-ti-dimensional feature information, enhance the reusability of feature information, and realize the task of YOLO-based multi-level classification target detection. The helmet color is taken as the secondary classification for training and verification on the open source helmet data set, and the average precision, precision, and recall reach 95.81%, 94.90%, and 92.54%, respectively. The experimental results verify the feasibility of the YOLOv5-based multi-level classification target detection task, and the proposed model provides a new idea and method for target detection and multi-level classification target detection tasks.
Key words: target detection     YOLOv5     multi-level classification     DenseBlock module     loss function     deep learning    

安全帽是一种简单且有效的安全防护设备, 可以有效减缓高空坠物的冲击, 减少头部伤害, 降低安全事故的伤亡率, 从而被广泛用于各类施工现场, 它不仅可以保障复杂施工环境下工人的安全, 同时安全帽具有显著颜色的特点, 能够有预警的作用. 近年来, 摄像头在各类施工环境中的广泛使用, 结合深度学习目标检测技术为复杂施工环境下安全管理提供了新的解决方案[1, 2]. 通过实时分析现场视频数据, 可有效提高各类施工现场的安全性, 同时减少人工成本. 而目前主流算法对安全帽的研究主要检测是否佩戴安全帽分类任务, 而同时以安全帽颜色作为二级分类的目标检测任务仍有比较大的研究空间. 安全帽佩戴检测同时安全帽颜色分类识别更有利于施工现场的科学, 精准, 高效的安全管理[3], 进一步提高我国在复杂施工环境下的科学管理.

目标检测是计算机视觉领域一个比较热门的研究方向, 特别是深度卷积神经网络的快速发展极大地提升了目标检测的精度[4]. 自2012年的AlexNet[5]被提出以来, 基于卷积神经网络的计算机视觉技术得到了充分且广泛的发展. 得益于卷积神经网络强大的语义特征表示能力, 深度卷积神经网络模型在图像分类、目标检测[6]、实例分割[7]等相关领域都取得了比较优秀的成绩, 在部分应用场景甚至超过了人类的水平. 基于深度神经网络的目标检测是计算机视觉技术研究的一个热门领域, 也是其他检测领域的一个基础性核心算法, 能够为图像和视频的语义理解提供有价值的信息, 其主要任务是对目标进行定位和分类, 并准确高效地找出图像中所有感兴趣的目标信息, 包括目标位置、目标分类. 目标检测是图像理解和其他视觉研究任务的基础, 为图像实例分割、图像理解、视频追踪, 视频场景分析等任务提供了强有力的特征分类基础信息. 由于深度学习的广泛应用, 以及人工神经网络模型的不断更新, 目标检测算法也得到了快速的发展, 检测准确度和效率也有很大的提升.

深度人工神经网络目标检测算法主要分为以R-CNN (region CNN)系列为代表的双阶段目标检测算法和以YOLO (you only look once)系列为代表的单阶段目标检测算法. 二者的主要区别在于: 单阶段目标检测算法基于回归方法直接在特征图上生成目标候选区域, 而双阶段检测算法需要通过单独的区域建设网络生成目标候选区域. 2014年提出的R-CNN[8]区域神经网络算法, 是运用深度学习人工神经网络进行目标检测的开山之作, 以R-CNN为基础, 学者们对相关算法开展了深入研究, 陆续涌现出了多个代表性双阶段目标检测算法. 但双阶段算法还存算法效率低等不足, 针对这些问题, 2016年出现了一种单阶段目标检测算法YOLO[9], 其以实时性为典型特征的目标检测开始进入相关学者和研究人员的视野. 以YOLO为基础, 后续陆续提出了YOLOv2, YOLOv3[10], YOLOv4[11], 以及最新的YOLOv5[12], YOLOX[13]等算法. 目前比较新的研究成果一般多以小目标检测[14, 15], 密集目标, 多尺度目标检测[16, 17]为研究方向. 但不论是双阶段算法模型还是单阶段算法模型, 在多级分类目标检测方面仍有较大的研究空间. 其中, 以安全帽检测及安全帽颜色分类的识别在实际工程应用中有非常重要的作用, 可有效对施工现场人员的检测及精准识别相关人员, 而YOLOv5是YOLO系列网络模型较新的算法, 其中骨干网络高度模块化, 方便基础网络模块的修改和替换, 便于本文研究的二级分类目标检测进行功能扩展.

基于此, 本文以YOLOv5s算法模型为基础, 在安全帽数据集上同时以安全帽颜色作为二级分类, 以多级分类目标检测为研究方向, 逐步进行相关改进研究. 首先对LabelImg标注工具进行功能完善, 在原有功能的基础上添加多级分类标签, 最后生成包含有多级分类标签的YOLO格式标签文件; 其次将DenseBlock[18, 19]或Res2Net[20, 21]网络模块引入到图像基础特征信息提取阶段的骨干网络前端, 尽可能保留图像基础语义信息和多维度图像特征信息, 以便更好地学习多级目标分类特征; 最后改进马赛克图像增强算法, 尽可能保留图像中的目标区域, 同时还增加了小目标标签数量. 这样不仅完善了网络模型在多级分类目标检测算法的功能, 而且增强了模型在小目标检测应用背景下的检测性能.

1 YOLOv5算法典型结构

YOLOv5算法整体主要有3部分组成: Backbone、Neck和Prediction, 以YOLOv5s模型为例整体算法结构如图1所示. Backbone主要有Conv, C3和SPPF基本网络模块组成, 其主要功能就是提取图像特征信息, C3模块使用残差网络结构, 可以学习到更多的特征信息, SPPF模块是空间金字塔池化, 也是Backbone网络的输出端, 主要功能是将提取到的任意大小的特征信息转换成固定大小的特征向量. Neck网络采用FPN+PAN的特征金字塔结构网络, 可以实现不同尺寸目标特征信息的传递, 可以有效解决多尺度问题. Prediction采用3种损失函数分别计算目标分类损失, 目标定位损失和置信度损失, 并通过NMS提高网络检测的准确度. 模型默认输入图像尺寸大小为640×640的3通道图像, 最终输出格式是3×(5+ncls), ncls表示目标检测分类数量.

图 1 YOLOv5s 网络结构图

YOLOv5算法模型在目标检测应用场景可以达到实时检测的要求, 但本文研究中侧重于多级分类检测, 特别是基于安全帽佩戴检测同时以安全帽颜色为二级识别的算法研究, YOLOv5在这方面的研究还存在不足.

2 YOLOv5模型及工具的改进

本研究的目的是安全帽二级分类检测任务, 在检测是否佩戴安全帽的同时以安全帽颜色作为二级分类, 其中涉及到数据集标签文件的改进, 网络模型输出结构的修改, 考虑到二级分类任务, 在骨干网络中引入并使用DenseNet和Res2Net网络设计思想, 以增强网络特征表示能力, 提取并融合不同尺度下的特征信息, 增强特征信息重用能力. 同时损失函数及数据增强技术的优化平衡了数据集类别不均衡问题.

2.1 LabelImg标注工具改进

LabelImg是一个功能强大的可视化图像标注工具. 无论是双阶段目标检测网络还是单阶段目标检测网络所需要的输入数据集, 一般都需要借助该工具对图像中的目标进行标注, 而且可以生成遵循PASCAL VOC格式的XML标签文件, 还可以生成YOLO系列网络模型需要的txt标签文件. 本研究以YOLOv5为基础算法进行研究, 对LabelImg工具进行改进以生成YOLO格式的txt标签文件, 主要改进功能是添加二级分类标签, 生成支持二级分类的标签数据, 生成(id, sid, x, y, w, h), 其中sid是新添加二级分类. 如图2(b)中添加了以安全帽颜色为二级分类标签.

图 2 LabelImg标注工具对比

图2(a)为原始标签文件, 标签文件内容中每一行表示一个目标, 每行有5个数值, 第1个数据表示目标类别, 后续4个浮点数表示归一化后的目标区域; 图2(b)是改进后的标签文件, 以二级标签color为例, 每行也表示一个目标, 每行有6个数值, 第1个表示主标签类别, 第2个表示二级分类标签, 最后4个是归一化后的目标区域.

2.2 Prediction网络输出改进

YOLOv5网络输出格式一般只和待检测目标分类数量有关, 原始输出格式如图3(a)所示. 如果需要对某一分类再进行二级分类时, 需要重新定义标签类别, 重新进行目标标注, 这样会消耗大量的工作量进行目标分类标注, 而本研究通过改进Prediction网络输出可以极大地提高数据重新标注工作效率, 简化数据标注工作. 图3(a)是原始YOLOv5网络输出格式: o=(5+ncls)×3. 其中ncls表示目标分类的数量; 图3(b)是改进后的YOLOv5网络输出格式: o=(5+ncls+nsls)×3, 其中nsls表示二级目标分类的数量.

2.3 损失函数优化

原始YOLOv5s的目标损失函数由边框回归损失(bounding box regression score), 置信度损失(objectness score)和目标分类概率损失(class probability score)这3个部分组成. 在边框损失函数中使用完全交并比损失函数(complete intersection over union loss, CIoU Loss)[22]实现目标分类预测. 本研究在此损失函数的基础上, 添加了二级分类概率损失函数(subclass probability score, SPS)一共4部分组成, 具体如式(1)所示:

$ {L_{{\rm{obj}}}} = a{L_{{\rm{loc}}}} + b{L_{{\rm{conf}}}} + c{L_{{\rm{cls}}}} + d{L_{{\rm{subcls}}}} $ (1)

其中, a, b, c, d分别表示位置损失、置信度损失、类别损失、二级类别损失参数, 二级类别损失参数d为新添加损失项.

另外, 在边框回归损失函数中采用有效交并比损失函数(efficient intersecion over union loss, EIoU loss)[14,23,24]. 相比于其他目标框回归损失函数, EIoU loss考虑了重叠面积、中心点距离、长宽边长真实差, 基于CIoU解决了纵横比的模糊定义, 并添加Focal loss解决BBox回归中的样本不平衡问题. 在边框回归损失函数中, EIoU loss的宽高损失使得模型训练收敛速度更快, 精确度更高, 明显优于原始YOLOv5s中使用的EIoU loss损失函数.

图 3 YOLOv5s 网络输出对比

图4所示, A表示真实框, B表示预测框, C框表示AB的最小外接矩形, C的对角线距离为c, 真实框A与预测框B的中心距离是r, CwCh分别表示最小外接矩形C的宽度和高度, 并可根据真实框A和预测框B的宽高计算出宽高差值wh, 则EIoU loss (LEIoU)损失函数的基本公式如下:

$ h = \left| {{h_1} - {h_2}} \right| $ (2)
$ w = \left| {{w_1} - {w_2}} \right| $ (3)
$ IoU = \frac{{A \cap B}}{{A \cup B}} $ (4)
$ \begin{split} {L_{{\rm{EIoU}}}}& = {L_{{\rm{IoU}}}} + {L_{{\rm{dis}}}} + {L_{{\rm{asp}}}} \\ & = 1 - IoU + \frac{{{r^2}}}{{{c^2}}} + \frac{{{w^2}}}{{C_w^2}} + \frac{{{h^2}}}{{C_h^2}} \end{split} $ (5)
2.4 骨干网络改进 2.4.1 C3DRX模块

原始YOLOv5s的骨干网络第1层为Conv基础结构, 主要是进行一次卷积操作, 在不改变输入尺寸的情况, 增加特征图通道数, 为后续特征提取提供丰富信息. C3模块是YOLOv5算法中广泛使用的基础网络模块, 核心操作是将基本残差模型内嵌到C3模块中进行特征信息提取. 本研究在C3基础网络模块的基础上, 结合DenseNet核心网络模块(DenseBlock)设计思想, 创新设计出新型特征提取模型C3DRXmn (m=1, 2; n=1, 2), 而DenseNet是一种具有紧密连接性质的卷积神经网络, 其中典型表达方式如式(6)和式(7)所示:

$ {X_i} = {H_i}({X_{i - 1}}) + {X_{i - 1}} $ (6)
$ {X_i} = {H_i}([{X_0}, {X_1}, \cdots, {X_{i - 1}}]) $ (7)

其中, Xi–1表示第i–1层的特征向量, Hi为对该特征向量进行非线性变换. 式(1)是残差网络基础算法公式, 表示i层的输出是i–1层的输出加上对i–1层输出的非线性变换, 只是对应特征向量值相加, 并不能改变输出特征向量的通道数. 式(2)是DenseNet网络中核心模块DenseBlock模块的基础公式, 表示先把0到i–1层的输出特征向量进行拼接, 再进行非线性变换, 而特征向量的通道数会进行累加, 并不是如式(1)的简单相加.

以DenseBlock模块为基础的DenseNet作为一种新型的多层数卷积神经网络相比ResNet有更少的参数量, 而且还可以增加特征的重用, 更易于网络训练, 并可以缓解模型梯度消失和模块退化的问题, 因此在多级目标分类任务中具有较好的检测效果. C3DRXmn基础网络模块结构图如图5所示.

图 4 EIoU 图示

2.4.2 C3R2CM模块

在原YOLOv5网络中, 基础核心模块C3使用了以ResNet为核心算法的残差网络模块, 可以使网络的学习能力大大提高. 2020年Gao等人[20]提出的Res2Net, 在残差网络的基础上构建分层的残差连接, 在更细粒度上表示多尺度特征信息, 并增加了网络层的感受野. 根据Res2Net网络设计思想, 本研究创建了新的C3R2CM网络结构. C3R2CM网络结构设计可以使得神经网络能融合不同尺度下的特征信息, 从而可以增加特征信息融合的能力及特征信息的重用能力. C3R2CM结构如图6所示.

图 5 C3DRXmn 基础网络结构图

采用C3DRXmn, C3R2CM模块替换YOLOv5s骨干网络中的第1层Conv结构后的结构图如图7所示.

图 6 C3R2CM 基础网络结构图

2.5 数据增强技术(Mosaic)优化

马赛克(Mosaic)数据增强技术基于现有数据集最大化地丰富了样本的多样性, 并可以有效降低网络模型对于多样性学习的难度, 是YOLOv5算法中比较重要的一种数据增强方式, 在模型训练阶段一般默认开启该功能. 该技术产生随机选择4张图像, 先通过随机裁减, 再按一定顺序拼接在一张图像上, 最后缩放到指定的输入尺寸, 并作为新的训练数据传入网络模型. 该技术丰富了目标的背景, 同时增加了训练样本的数量, 并实现了不同样本尺度目标的均衡.

马赛克数据增强技术的主要步骤为:

(1)设置网络模型尺寸大小为s, 先生成一张尺寸大小为2s×2s的灰色底图.

(2)从点A到点B的中心区域内随机选择一个拼接点.

(3)随机选取4张图像按图8中的不同色块进行拼接, 然后经过变换最终得到输入图像.

图 7 改进的Backbone网络

原始YOLOv5马赛克数据增强方式在拼接图像的1/4中心区域内随机选取拼接点, 该方式会导致部分图像目标被裁剪, 而且原始图像的大小尺寸也同, 这样拼接后的图像大概率有较多的灰色背景, 而如果输入模型的数据背景区域相对比较多, 会导致大量的无用特征信息进入训练模型, 从而影响模型的收敛速度. 因此, 本文研究从两个方面对马赛克数据增强方式进行改进: 首先, 拼接点的选取获取进一步缩小, 取1/N (N>2)的拼接图像中心区域选取拼接点, 或进一步缩小拼接点选取的中心区域, 同时减少图像拼接后放大图像的概率; 其次, 预先判断选取的4张拼接图像所包含的目标数量, 以图像平移方式, 尽可的裁剪到包含更多的目标图像区域.

图8所示, 上部分是原始马赛克技术处理主要流程, 下部分是改进后的马赛克数据增强方式. 并通过小规模数据集(coco128)验证改进后的效果, 通过图9, 图10对比可以发现改进后的马赛克数据增强方式, 灰色背景色明显减小, 这样减少了很多无用的边界区域, 而且包含了更多的目标框, 可以加速网络模型的收敛, 提高网络训练的效率, 另外数据增强方式还可以增加小尺度的样本数据集, 并可以提高网络模型检测小尺度目标的性能.

为了方便损失函数及Mosaic优化效果对比, 在模型训练中添加控制参数, 其中参数“--mosaic-scale”表示Mosaic技术图像拼接中心点选取区域范围, 默认是2, 参数“--iou”是模型损失函数, 默认使用“CIoU”, 如图11所示.

图 8 马赛克改进对比

图 9 原马赛克效果

图 10 改进后马赛克效果

图 11 训练参数控制

在数据集上进行单次验证, 结果如表1所示. 在相同的数据集上, 改进后的技术大幅度增加了目标的数量.

表 1 在数据集上进行单次验证的结果

3 实验分析 3.1 实验环境及模型评价指标

本实验具体实验环境如表2所示.

为了验证多级目标分类算法的性能, 本实验研究主要采用精准率(Precision, P)、召回率(Recall, R)和平均精准率均值(mean average precision, mAP)作为网络模型性能衡量的关键指标.

精确率用来体现模型目标检测器判定为正样本并且确实是正样本的部分占所有判写为正样本的比例, 精确率也中叫查准率, 是衡量一个目标检测器判定正样本的确实是正样本的概率. 具体公式如式(8)所示:

$ P = \frac{{TP}}{{TP + FP}} $ (8)
表 2 实验环境

召回率用来评估模型检测器判定为正样本并且是真正样本的部分占所有真正样本的比例, 如式(9):

$ R = \frac{{TP}}{{TP + FN}} $ (9)

平均精度AP (average precision)指的是以召回率R为横轴, 以精确度P为纵轴组成的曲线, 而曲线所围成的面积就是AP. 公式如式(10)所示:

$ AP = \sum\limits_{i = 1}^{n - 1} {({r_{i + 1}} - {r_i})} p({r_{i + 1}}) $ (10)

平均精度均值mAP指的是数据集中所有类别的平均精确度的均值. 如式(11)所示:

$ mAP = \frac{1}{m}\sum\nolimits_{i = 1}^m {A{P_i}} $ (11)

其中, m表示测试集中样本的个数.

3.2 数据预处理

本研究实验使用网络开源数据集(safety helmet wearing dataset, SHWD), 该数据集包含2个大类(person, helmet)和5个二级分类(none, red, yellow, white, blue). 通过网络爬虫等技术共收集到11217张图像, 将收集到的图像按8:2的比例划分成训练集和验证集.

首先对数据集标签格式进行转化, 原始数据集标签转化为YOLO格式后, 需要重新生成支持二级分类的标签数据, 生成(id, sid, x, y, w, h)并进行目标框的归一化处理, 最终生成训练数据集和验证数据集标签文件. 图12是改进后的数据集分布情况, 其中主分类包括person, helmet, 二级分类有none, red, yellow, white, blue. 图13是改进后的数据标签验证情况, 新标签格式是M/N, 其中M是主目标分类, N表示二级分类.

图 12 数据集标签

3.3 模型预训练及实验结果分析

本实验是基于YOLOv5s算法基础上扩展检测二级目分类检测算法, 模型训练参数设置默认与原YOLOv5s默认参数一致, 并此参数基础上添加二级分类损失增益参数0.2, 实验时默认模型输入图像尺寸大小为640×640, 初始化学习率参数为0.01, 并使用(stochastic gradient descent, SGD)优化器, 动量参数为0.937, 权重衰减系数为0.0005, epoch为3的warm-up方法预热学习率, 预热阶段结束后会采用余弦退火算法对训练学习率进行优化调整. 训练batch size为16, 在经过300次的训练后, 各类训练Loss和评价指标曲线如图14所示. 其中, train/sls_loss是新增加的二级分类损失变化曲线, 所图可知, 训练前50次训练迅速收敛, 在后续训练过程中逐渐趋于稳定, 直到训练结束, 而且没有出现训练过拟合和欠拟合现象, 也验证了改进的YOLOv5模型二级及多级目标分类的可行性.

另外, 骨干网络中通过引入DenseNet和Res2Net核心设计思想, 以安全帽为数据集的二级目标分类在经过300次的训练后, 精确率、召回率和平均精度与原YOLOv5s模型比较都有了显著提高. 详细信息如表3所示.

图 13 数据集验证

3.4 消融实验

为了更好地验证改进的YOLOv5s算法模型多级分类检测算法, 在相同的实验环境和相同的数据集上, 及在多级目标分类算法基础上尝试修改骨干网络、Mosaic数据增强技术及EIoU损失函数, 实验对比这几种改进算法的性能对比, 详细实验结果如表4所示.

表4中可以看出, 改进后的YOLOv5s的精确率和平均精度达到了94.90%和95.81%. 引入EIoU损失函数之后, 精确率P和平均精度mAP都有不同程度的提升; 其中C3DRX模块引入DenseNet核心思想, 一方面减少了参数量, 另一方面提高的精确率和平均精度; C3R2CM模块引入Res2Net核心思想, 虽说参数量增多了, 但精确率和平均精度都小幅度提升, 与改进后的YOLOv5s基准模型分别增长到96.96%和95.60%. 综合来看, C3DRX和C3R2CM骨干模块的改进以及EIoU损失函数的升级与改进后的基准模型相比平均精度和精确率完全符合目标检测的要求, 也进一步验证了改进后的模型在二级分类目标检测的可行性.

图 14 改进的YOLOv5s训练曲线 (横坐标表示迭代次数)

表 3 改进YOLOv5性能对比 (%)

另外, 从图15训练曲线可以看出, 在使用了改进后的Mosaic技术后, 训练网线有波动情况, 分析原因是改进后的Mosaic技术, 大幅度增加了目标的数量, 而且小目标的数量也随之增多, 在训练条件一样的情况下, 训练过程的会有波动情况; 其次, 骨干网络引入DenseBlock和Res2Net网络, 一方面减少参数量, 但随着网络维度的叠加, 网络计算量也随之增加了, 后期可以学习使用网络模型优化方法[24-26]进行网络结构优化, 提升网络模型训练效率.

图15中, YOLOv5s-drx表示使用了C3DRX11网络结构, YOLOv5s-drx2表示使用了C3DRX21网络结构, YOLOv5s-drx3表示使用了C3DRX12网络结构, YOLOv5s-drx4表示使用了C3DRX22网络结构, YOLOv5s-res2表示使用了C3R2CM网络结构, 另外训练过程还使用了EIoU或Mosaic, 从表4训练曲线可以看来, 扩展的YOLOv5多级目标分类算法在精确度和平均精度都达到95%左右的效果, 而且使用DRX或R2CM核心模块的骨干网络在精确度和平均精度方面都有部分提升.

表 4 YOLOv5 训练结果

4 结论与展望

本研究是基于YOLOv5s算法扩展了目标检测模型功能, 实现了二级分类目标检测, 改进后的模型在特定情况下可减少参数量, 提升训练效率. 首先扩展了LabelImg标注工具二级目标分类标注功能, 在YOLOv5s算法基础上扩二级分类检测功能, 从训练过程变化曲线及训练评价指标都符合目标检测的基本要求. 通过引入DenseBlock、Res2Net网络模型核心设计思想, 丰富了多尺度特征信息的融合及特征信息的重用, 使新模型的平均精度mAP@0.5都达到了96.94%, 与原始YOLOv5s相比有所提高. 虽然最终网络模型大小与YOLOv5s相差不大, 但网络训练需要的计算量比较大, 增大的GPU显存开销. 后续可以使用剪枝, 蒸馏等技术手段对网络进行轻量化处理; 另外, 本研究为目标分类算法及多级分类目标检测算法提供了新的研究思路.

图 15 YOLOv5 训练曲线 (横坐标表示迭代次数)

参考文献
[1]
张明媛, 曹志颖, 赵雪峰, 等. 基于深度学习的建筑工人安全帽佩戴识别研究. 安全与环境学报, 2019, 19(2): 535-541. DOI:10.13637/j.issn.1009-6094.2019.02.026
[2]
杨静, 张育飞, 毛晓琦. 施工作业面安全帽的深度学习检测方法. 计算机应用, 2020, 40(S2): 178-182. DOI:10.11772/j.issn.1001-9081.2020040543
[3]
王晨, 齐华, 史建利. 基于YOLOv4的安全帽佩戴检测及工种身份识别. 计算机系统应用, 2022, 31(7): 272-277. DOI:10.15888/j.cnki.csa.008561
[4]
陆峰, 刘华海, 黄长缨, 等. 基于深度学习的目标检测技术综述. 计算机系统应用, 2021, 30(3): 1-13. DOI:10.15888/j.cnki.csa.007839
[5]
Krizhevsky A, Sutskever I, Hinton GE. ImageNet classification with deep convolutional neural networks. Proceedings of the 25th International Conference on Neural Information Processing Systems. Lake Tahoe: Curran Associates Inc. , 2012. 1097–1105.
[6]
程旭, 宋晨, 史金钢, 等. 基于深度学习的通用目标检测研究综述. 电子学报, 2021, 49(7): 1428-1438. DOI:10.12263/DZXB.20200570
[7]
李晓筱, 胡晓光, 王梓强, 等. 基于深度学习的实例分割研究进展. 计算机工程与应用, 2021, 57(9): 60-67. DOI:10.3778/j.issn.1002-8331.2012-0412
[8]
Girshick R, Donahue J, Darrell T, et al. Rich feature hierarchies for accurate object detection and semantic segmentation. Proceedings of 2014 IEEE Conference on Computer Vision and Pattern Recognition. Columbus: IEEE, 2014. 580–587.
[9]
Redmon J, Divvala S, Girshick R, et al. You only look once: Unified, real-time object detection. Proceedings of 2016 IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas: IEEE, 2016. 779–788.
[10]
Redmon J, Farhadi A. YOLOv3: An incremental improvement. arXiv:1804.02767, 2018.
[11]
Bochkovskiy A, Wang CY, Liao HYM. YOLOv4: Optimal speed and accuracy of object detection. arXiv:2004.10934, 2020.
[12]
邱天衡, 王玲, 王鹏, 等. 基于改进YOLOv5的目标检测算法研究. 计算机工程与应用, 2022, 58(13): 63-73. DOI:10.3778/j.issn.1002-8331.2202-0093
[13]
Ge Z, Liu ST, Wang F, et al. YOLOX: Exceeding YOLO series in 2021. arXiv:2107.08430, 2021.
[14]
郭磊, 王邱龙, 薛伟, 等. 基于改进YOLOv5的小目标检测算法. 电子科技大学学报, 2022, 51(2): 251-258. DOI:10.12178/1001-0548.2021235
[15]
王静, 孙紫雲, 郭苹, 等. 改进YOLOv5的白细胞检测算法. 计算机工程与应用, 2022, 58(4): 134-142. DOI:10.3778/j.issn.1002-8331.2107-0332
[16]
黄继鹏, 史颖欢, 高阳. 面向小目标的多尺度Faster-RCNN检测算法. 计算机研究与发展, 2019, 56(2): 319-327. DOI:10.7544/issn1000-1239.2019.20170749
[17]
郁强, 王宽, 王海. 一种多尺度YOLOv3的道路场景目标检测算法. 江苏大学学报(自然科学版), 2021, 42(6): 628-633, 641.
[18]
Iandola F, Moskewicz M, Karayev S, et al. DenseNet: Implementing efficient ConvNet descriptor pyramids. arXiv:1404.1869, 2014.
[19]
赵睿, 刘辉, 刘沛霖, 等. 基于改进YOLOv5s的安全帽检测算法. 北京航空航天大学学报.
[20]
Gao SH, Cheng MM, Zhao K, et al. Res2Net: A new multi-scale backbone architecture. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2021, 43(2): 652-662. DOI:10.1109/TPAMI.2019.2938758
[21]
李国权, 姚凯, 庞宇. 基于CNN的血液细胞图像自动识别算法. 计算机科学, 2022, 49(4): 247-253. DOI:10.11896/jsjkx.210200093
[22]
童千倩, 李立明, 郑丹阳, 等. 基于YOLOv3改进算法的轨枕裂纹检测研究. 智能计算机与应用, 2021, 11(12): 104-108, 115. DOI:10.3969/j.issn.2095-2163.2021.12.021
[23]
Zhang YF, Ren WQ, Zhang Z, et al. Focal and efficient IoU loss for accurate bounding box regression. Neurocomputing, 2022, 506: 146-157. DOI:10.1016/j.neucom.2022.07.042
[24]
吕禾丰, 陆华才. 基于YOLOv5算法的交通标志识别技术研究. 电子测量与仪器学报, 2021, 35(10): 137-144. DOI:10.13382/j.jemi.B2104449
[25]
孟宪法, 刘方, 李广, 等. 卷积神经网络压缩中的知识蒸馏技术综述. 计算机科学与探索, 2021, 15(10): 1812-1829. DOI:10.3778/j.issn.1673-9418.2104022
[26]
王国栋, 叶剑, 谢萦, 等. 基于梯度的自适应阈值结构化剪枝算法. 计算机工程, 2022, 48(9): 113-120. DOI:10.19678/j.issn.1000-3428.0062417