CN117372684A - 一种基于改进YOLOv5s网络模型的目标检测方法 - Google Patents
一种基于改进YOLOv5s网络模型的目标检测方法 Download PDFInfo
- Publication number
- CN117372684A CN117372684A CN202311505057.2A CN202311505057A CN117372684A CN 117372684 A CN117372684 A CN 117372684A CN 202311505057 A CN202311505057 A CN 202311505057A CN 117372684 A CN117372684 A CN 117372684A
- Authority
- CN
- China
- Prior art keywords
- yolov5s
- network
- network model
- feature
- cost
- 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
- 238000001514 detection method Methods 0.000 title claims abstract description 49
- 230000004927 fusion Effects 0.000 claims abstract description 33
- 238000012549 training Methods 0.000 claims abstract description 23
- 230000006870 function Effects 0.000 claims description 60
- 238000011176 pooling Methods 0.000 claims description 24
- 230000004913 activation Effects 0.000 claims description 13
- 238000000034 method Methods 0.000 claims description 12
- 238000012360 testing method Methods 0.000 claims description 11
- 230000002457 bidirectional effect Effects 0.000 claims description 7
- 230000000694 effects Effects 0.000 claims description 7
- 238000010606 normalization Methods 0.000 claims description 6
- 238000012795 verification Methods 0.000 claims description 6
- 238000011156 evaluation Methods 0.000 claims description 5
- 230000007246 mechanism Effects 0.000 claims description 5
- 238000005070 sampling Methods 0.000 claims description 4
- 238000013459 approach Methods 0.000 claims description 3
- 230000002068 genetic effect Effects 0.000 claims description 3
- 238000010200 validation analysis Methods 0.000 claims description 2
- 102000019355 Synuclein Human genes 0.000 claims 1
- 108050006783 Synuclein Proteins 0.000 claims 1
- 210000000988 bone and bone Anatomy 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 10
- 238000013528 artificial neural network Methods 0.000 description 6
- 238000013527 convolutional neural network Methods 0.000 description 6
- 230000006872 improvement Effects 0.000 description 4
- 210000002569 neuron Anatomy 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 235000008694 Humulus lupulus Nutrition 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011160 research Methods 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/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- 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/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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Multimedia (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于改进YOLOv5s网络模型的目标检测方法,包括步骤如下:构建数据集;对YOLOv5s网络模型进行改进,其中包括:在SPPF模块之前添加CBAM注意力模块;在骨干网络和颈部之间添加一个基于对合的通道特征融合CFFI;在YOLOv5s网络的Neck层中将PANet替换为加权双向特征金字塔BiFPN;修改回归损失函数,采用SIoU损失函数替换YOLOv5s原有的CIoU损失函数;将改进后的模型在训练集上训练出最佳网络模型;将改进后的网络模型与原始的YOLOv5s网络模型进行对比和评价。本发明通过改进后的YOLOv5s加强了目标检测的效率,提高了原有网络模型的检测精度。
Description
技术领域
本发明属于目标检测技术领域,尤其涉及一种基于改进YOLOv5s网络模型的目标检测方法。
背景技术
目标检测是计算机视觉方面的关键任务,其应用范围很广泛,包括自动驾驶、智能安防、智能制造等。目标检测的挑战在于既需要实时高效的处理速度,又需要准确地检测和定位各种尺寸和形状的目标物体。因此,目前很多研究致力于提高目标检测算法的精度和效率。目标检测是指在图像或视频中检测出存在的目标物体,并确定其位置和大小。目标检测任务可分为两个阶段:目标物体的候选区域生成和候选区域的分类和回归。其中,候选区域生成通常采用滑动窗口或区域建议网络,而候选区域的分类和回归则采用卷积神经网络或其他分类器。
目前主流深度学习目标检测算法大概可以分成两大类别:两阶段目标检测算法,这类检测算法将检测问题划分为两个阶段,第一阶段先产生候选区域,包含目标大概的位置信息,第二阶段对候选区域进行分类和位置精修,这类算法的典型代表有R-CNN、Fast R-CNN、Faster R-CNN、Mask R-CNN等。一阶段目标检测算法,这类检测算法不需要候选区域阶段,可以通过一个阶段直接产生物体的类别概率和位置坐标值,比较典型的算法有YOLO、SSD以及RetinaNet等。然而在实际的应用场景中,由于图像中各类目标物体的形状、数量各异,以及光照、遮挡等多种因素的干扰,使目标检测难度增加,目前主流深度学习目标检测算法并不再适用。
发明内容
发明目的:本发明的目的在于提供一种基于改进YOLOv5s网络模型的目标检测方法,该方法可以加强目标检测的效率,提高原有网络模型的检测精度。
技术方案:本发明的一种基于改进YOLOv5s网络模型的目标检测方法,包括如下步骤:
步骤1、构建数据集,将数据集中的图片和标签按照一定比例分为训练集、验证集和测试集;
步骤2、对原始的YOLOv5s网络模型进行改进;
步骤3、针对改进后的YOLOv5s网络模型,将训练集输入到改进后的YOLOv5s网络模型进行训练,并调参优化模型,在验证集上验证模型效果,输出训练完成后的目标检测模型;
步骤4、将训练完成后的目标检测模型与原始的YOLOv5s网络模型在测试集上进行对比测试,通过评价指标分别对目标检测模型与原始的YOLOv5s网络模型进行对比和评价;
步骤5、通过目标检测模型对目标区域进行检测。
进一步的,步骤1中,所述训练集、验证集和测试集按照8:1:1的比例进行划分。
进一步的,步骤2具体包括如下步骤:
步骤2.1、在YOLOv5s网络的Backbone层中SPPF模块之前添加CBAM(ConvolutionalBlockAttention Module)注意力模块,从空间与通道两个维度提升模型关注目标特征的能力,使模型在检测不同大小的物体时能关注重要的特征,提升特征提取能力。
步骤2.2、在原始YOLOv5s网络的骨干网络和颈部之间添加基于对合的通道特征融合CFFI;
步骤2.3、在原始YOLOv5s网络的Neck层中将PANet替换为加权双向特征金字塔BiFPN;
步骤2.4、修改回归损失函数,采用SIoU损失函数替换YOLOv5s原有的CIoU损失函数。
进一步的,步骤2.1具体为:给定中间特征图,沿着空间和通道两个维度依次推断出注意力权重,然后与原特征图相乘来对特征进行自适应调整,CBAM是轻量级的通用模块,且无缝集成到任何CNN架构中,CBAM注意力机制分为通道注意力和空间注意力两部分:
通道注意力模块:
其中,F表示中间特征图,σ表示Sigmoid激活函数,MLP表示多层感知器,AvgPool表示平均池化,MaxPool表示最大池化,W1和W0表示输入共享权重, 分别代表通道的平均池化特征和最大池化特征。
输入的是一个H×W×C的特征F,先分别进行一个空间的全局平均池化和最大池化得到两个1×1×C的通道描述。再将它们分别送入一个两层的神经网络,第一层神经元个数为C/r,激活函数为Relu,第二层神经元个数为C,这两层的神经网络是共享的。然后,再将得到的两个特征相加后经过一个Sigmoid激活函数得到权重系数Mc。最后,将权重系数和原来的特征F相乘即可得到缩放后的新特征。
空间注意力模块:
其中,F表示中间特征图,σ表示Sigmoid激活函数,f7*7表示滤波器尺寸为7×7的卷积运算,AvgPool表示平均池化,MaxPool表示最大池化, 分别代表空间的平均池化特征和最大池化特征。
与通道注意力相似,给定一个H×W×C的特征F’,先分别进行一个通道维度的平均池化和最大池化得到两个H×W×1的通道描述,并将这两个描述按照通道拼接在一起。然后,经过一个7×7的卷积层,激活函数为Sigmoid,得到权重系数Ms。最后,将权重系数和特征F’相乘即可得到缩放后的新特征。
进一步的,在骨干网络和颈部之间添加一个基于对合的通道特征融合CFFI(Channel Feature Fusion with Involution),增加通道信息,减少了FPN初始阶段的信息丢失,将更多的信息传递给深度网络,从而提升整体性能。
进一步的,CFFI基于对合的通道融合具体为,在骨干网络和颈部之间添加一个对合块,通道信息得到提升和共享,从而减少了FPN初始阶段的信息丢失。因此,这一改进有助于增强FPN的性能,特别有利于检测较小尺寸的物体,而且Involution能更好的适应各种不同空间位置的视觉模式。
在路径聚合网络(PANet)中,通道数的减少不可避免地会导致严重的信息丢失。为了减少这种信息损失,在骨干网络和特征金字塔之间加入CFFI,这使得语义信息得到充分利用。基于这一概念,为了充分利用骨干网络高层通道的丰富特征,提高PANet的性能,采用了对合运算。对合具有轻量、高效、灵活的特征,并在各种视觉任务中取得了良好的结果。与卷积运算不同,对合有通道不变性和空间特异性,使其能够克服远程交互建模的困难。对合核的公式为Hi,j∈RK×K×1,在对合中,输入特征图的大小直接决定了对合核的大小,因此核的大小和输入特征图在空间维度上自动对齐。这样做的优势是卷对合核可以自适应地将权重分配到不同的位置。
进一步的,步骤2.3具体为:在YOLOv5s网络的Neck层通过加权双向特征金字塔BiFPN的形式进行深浅层多尺度特征融合,通过BiFPN取代原结构中的Concat,首先从主干特征网络C3模块层通过BiFPN与FPN网络结构里的Upsample模块进行连接,实现特征融合,再跳跃与PAN网络结构中的网络层连接,进而实现深层网络与浅层网络的多尺度特征融合;
BiFPN融合了双向跨尺度连接和快速归一化融合,在BiFPN在第n层的两个融合特征中,P_n^td是自顶向下路径上第n层的中间特征,P_n^out是自底向上路径上第n层的输出特征;
通过深度可分离卷积进行特征融合,并在每个卷积后添加批量归一化和激活:
其中,Conv表示卷积操作,Resize表示上采样或下采样操作,表示输入图像分辨率为/>的特征级别,/>表示自上而下路径中第i层的输出特性,wi表示学习参数,∈表示偏移量。
进一步的,步骤2.4具体为:修改回归损失函数,采用SIoU损失函数替换YOLOv5s原有的CIoU损失函数。SIoU损失函数通过引入所需回归之间的向量角度,重新定义了距离损失,有效降低了回归的自由度,加快网络收敛,进一步提升了回归精度。
进一步的,所述步骤二中的SIOU损失函数具体为,使用SIoU来作为回归损失函数代替CIoU损失函数,SIoU损失函数可以改善目标检测的训练和推理,通过在损失函数成本中引入方向性,与YOLOv5s原网络模型中的损失函数CIoU相比,它在训练阶段实现了更快的收敛,并且在推理方面具有更好的性能。SIoU损失函数由4个cost函数组成,分别是Anglecost、Distance cost、Shape cost和IoU cost,SIoU通过引入了所需回归之间的向量角度,重新定义了距离损失,有效降低了回归的自由度,加快网络收敛,进一步提升了回归精度。
(1)Angle cost:添加这种角度感知LF组件背后的想法是最大限度地减少与距离相关的“奇妙”中的变量数量。基本上,模型将尝试首先将预测带到X轴或Y轴(以最接近者为准),然后沿着相关轴继续接近。如果α≤π/4,收敛过程将首先最小化α,否则最小化β,为了首先实现这一点,以下方式引入和定义了LF组件:
(2)Distance cost:考虑到上面定义的Angle cost,重新定义了Distance cost。可以看出,当α→0时,Distance cost的贡献大大降低。相反,α越接近π/4,Distance cost贡献越大。随着角度的增大,问题变得越来越难。因此,γ被赋予时间优先的距离值,随着角度的增加。Distance cost的定义为:
Δ=∑t=x,y(1-e-γρt)
(3)Shape cost:θ的值定义了每个数据集的Shape cost及其值是唯一的。θ的值是这个等式中非常重要的一项,它控制着对Shape cost的关注程度。如果θ的值设置为1,它将立即优化一个Shape,从而损害Shape的自由移动。为了计算θ的值,将遗传算法用于每个数据集,实验上θ的值接近4,为此参数定义的范围是2到6。Shape cost的定义为:
其中,ωt表示预测框和目标框的相似度,w、h分别为宽和高;
(4)IoU cost:IoU cost的定义为:
其中,B和BGT分别表示预测框和目标框;
最终的损失函数由两项组成:分类损失(classification loss)和边界框损失(box loss),其中Lcls是focal loss,Wbox、Wcls分别是边界框损失和分类损失权重。SIoU损失函数定义为:
L=WboxLbox+WclsLcls。
进一步的,步骤4中,所述评价指标包括精确率Precision、召回率Recall、F1值F1Score、平均精度AP和平均精度均值mAP,具体为:
其中TP真阳性表示真实正例,同时模型的预测结果也是正例;FP假阳性表示真实负例,同时模型的预测结果却为正例;FN假阴性表示真实正例,同时模型的预测结果却为负例,Precision是精确性的度量,表示所有检测出的目标中检测正确的概率;Recall是覆盖面的度量,表示所有的正样本中正确识别的概率;F1 Score是精确率和召回率的调和平均数,最小为0,表示最差;最大为1,表示最好;
其中P为Precision,R为Recall,N表示类别数,平均精度AP是以Precision和Recall为坐标轴作图后所围成的面积;均值平均精度mAP是所有目标类别的平均精度AP的平均值,用于描述模型对所有目标检测类别的检测性能,mAP的值越大,说明算法的检测效果越好,识别精度也越高。
有益效果:与现有技术相比,本发明具有如下显著优点:
(1)本发明在YOLOv5s网络的Backbone层中SPPF模块之前添加CBAM注意力模块,从空间与通道两个维度提升模型关注目标特征的能力,使模型在检测不同大小的物体时能关注重要的特征,提升特征提取能力。
(2)本发明在骨干网络和颈部之间添加一个基于对合的通道特征融合CFFI增加通道信息,减少了FPN初始阶段的信息丢失,将更多的信息传递给深度网络,从而提升整体性能。
(3)本发明在YOLOv5s网络的Neck层中将PANet替换为加权双向特征金字塔BiFPN,进行深层网络与浅层网络的多尺度特征融合,从而提高性能。
(4)本发明采用SIoU损失函数替换YOLOv5s原有的CIoU损失函数。SIoU损失函数通过引入所需回归之间的向量角度,重新定义了距离损失,有效降低了回归的自由度,加快网络收敛,进一步提升了回归精度。
附图说明
图1为本发明CBAM注意力机制的结构图;
图2为本发明基于对合的通道特征融合CFFI对合的原理图;
图3为本发明加权双向特征金字塔BiFPN结构图;
图4为本发明IoU损失函数原理图;
图5为本发明改进后的YOLOv5s模型的网络结构图;
图6为本发明检测效果对比图。
具体实施方式
下面结合附图对本发明的技术方案作进一步说明。
为使本发明的技术方案更加清楚,下面结合说明书附图对本发明做进一步阐述。本发明按以下步骤具体实现:
第一步,构建数据集,准备好YOLO网络需要的数据标注格式,进而将数据集图片和标签按照8:1:1的比例分为训练集、验证集和测试集。
第二步,对YOLOv5s网络模型进行改进,如图5改进后的YOLOv5s模型的网络结构图所示,具体改进方法如下:
在YOLOv5s网络的Backbone层中SPPF模块之前添加CBAM(Convolutional BlockAttention Module)注意力模块,从空间与通道两个维度提升模型关注目标特征的能力,使模型在检测不同大小的物体时能关注重要的特征,提升特征提取能力。
如图1CBAM注意力机制结构图所示,给定一个中间特征图,沿着空间和通道两个维度依次推断出注意力权重,然后与原特征图相乘来对特征进行自适应调整。CBAM是一个轻量级的通用模块,可以无缝地集成到任何CNN架构中,CBAM注意力机制分为通道注意力和空间注意力两部分:
通道注意力模块:
输入的是一个H×W×C的特征F,先分别进行一个空间的全局平均池化和最大池化得到两个1×1×C的通道描述。再将它们分别送入一个两层的神经网络,第一层神经元个数为C/r,激活函数为Relu,第二层神经元个数为C,这两层的神经网络是共享的。然后,再将得到的两个特征相加后经过一个Sigmoid激活函数得到权重系数Mc。最后,将权重系数和原来的特征F相乘即可得到缩放后的新特征。
空间注意力模块:
与通道注意力相似,给定一个H×W×C的特征F’,先分别进行一个通道维度的平均池化和最大池化得到两个H×W×1的通道描述,并将这两个描述按照通道拼接在一起。然后,经过一个7×7的卷积层,激活函数为Sigmoid,得到权重系数Ms。最后,将权重系数和特征F’相乘即可得到缩放后的新特征。
在骨干网络和颈部之间添加一个基于对合的通道特征融合CFFI(ChannelFeature FusionwithInvolution),增加通道信息,减少了FPN初始阶段的信息丢失,将更多的信息传递给深度网络,从而提升整体性能。
如图2基于对合的通道特征融合CFFI对合的原理图所示,在骨干网络和颈部之间添加一个对合块,通道信息得到提升和共享,从而减少了FPN初始阶段的信息丢失。因此,这一改进有助于增强FPN的性能,特别有利于检测较小尺寸的物体,而且Involution能更好的适应各种不同空间位置的视觉模式。
在路径聚合网络(PANet)中,通道数的减少不可避免地会导致严重的信息丢失。为了减少这种信息损失,在骨干网络和特征金字塔之间加入CFFI,这使得语义信息得到充分利用。基于这一概念,为了充分利用骨干网络高层通道的丰富特征,提高PANet的性能,采用了对合运算。对合具有轻量、高效、灵活的特征,并在各种视觉任务中取得了良好的结果。与卷积运算不同,对合有通道不变性和空间特异性,使其能够克服远程交互建模的困难。对合核的公式为Hi,j∈RK×K×1,在对合中,输入特征图的大小直接决定了对合核的大小,因此核的大小和输入特征图在空间维度上自动对齐。这样做的优势是卷对合核可以自适应地将权重分配到不同的位置。
观察到特征图的通道数可以最大化对合的性能,因此,引入CFFI直接重用了特征的丰富语义信息。首先,使用一个通道数为768的1×1卷积来减少特征的通道数,然后,使用核大小为1×1,通道数为768的对合来聚合空间信息,最后,进行了一个connect操作,将卷积和对合得到的特征图连接起来。通过CFFI的这些操作,特征图的通道数减少了,而且也减少了直接卷积造成的语义信息损失,因此,CFFI起到了连接骨干网络和颈部之间的桥梁作用,增强了特征金字塔的表征能力。
在YOLOv5s网络的Neck层中将PANet替换为加权双向特征金字塔BiFPN(Bidirectional Feature Pyramid Network),进行深层网络与浅层网络的多尺度特征融合,从而提高性能。
如图3加权双向特征金字塔BiFPN结构图所示,在YOLOv5s网络的Neck层通过加权双向特征金字塔BiFPN的形式进行深浅层多尺度特征融合,通过BiFPN取代原结构中的Concat,首先从主干特征网络C3模块层通过BiFPN与FPN网络结构里的Upsample模块进行连接,实现特征融合,再跳跃与PAN网络结构中的网络层连接,进而实现深层网络与浅层网络的多尺度特征融合。
BiFPN融合了双向跨尺度连接和快速归一化融合,以下以BiFPN在第六层的两个融合特征为例,其中是自顶向下路径上第六层的中间特征,/>是自底向上路径上第六层的输出特征。所有其他的特征都以类似的方式构建,值得注意的是,为了进一步提高效率,使用深度可分离卷积进行特征融合,并在每个卷积后添加批量归一化和激活。
首先,从PANet中删除只有一个输入边的所有节点,这是因为任何有一个输入的节点都不会利用特征融合,因此将对旨在融合不同特征的网络产生的影响较小。然后,如果位于相同的网络层,则从原始输入到输出节点添加一条额外的边,这有助于融合更多的高级特征,而不会给网络增加额外的成本。最后,与具有独立的自顶向下和自底向上路径的PANet不同,这两条路径都被作为双向的(自顶向下和自底向上),并融合到一个特征网络层中,而且该层被重复多次,以实现跨多个尺度的更高级的特征融合。
这些变化使BiFPN在低水平和高水平上都能够实现卓越的特征融合,同时保持甚至减少了计算开销。出于这个原因,将现有的YOLOv5s网络模型的Neck层中修改为利用一个适应的BiFPN颈部,取代原有的PANet颈部。
修改回归损失函数,采用SIoU损失函数替换YOLOv5s原有的CIoU损失函数。SIoU损失函数通过引入所需回归之间的向量角度,重新定义了距离损失,有效降低了回归的自由度,加快网络收敛,进一步提升了回归精度。
如图4IoU损失函数原理图所示,使用SIoU来作为回归损失函数代替CIoU损失函数,SIoU损失函数可以改善目标检测的训练和推理,通过在损失函数成本中引入方向性,与YOLOv5s原网络模型中的损失函数CIoU相比,它在训练阶段实现了更快的收敛,并且在推理方面具有更好的性能。SIoU损失函数由4个cost函数组成,分别是Angle cost、Distancecost、Shape cost和IoU cost,SIoU通过引入了所需回归之间的向量角度,重新定义了距离损失,有效降低了回归的自由度,加快网络收敛,进一步提升了回归精度。
Angle cost:添加这种角度感知LF组件背后的想法是最大限度地减少与距离相关的“奇妙”中的变量数量。基本上,模型将尝试首先将预测带到X轴或Y轴(以最接近者为准),然后沿着相关轴继续接近。如果α≤π/4,收敛过程将首先最小化α,否则最小化β,为了首先实现这一点,以下方式引入和定义了LF组件:
Distance cost:考虑到上面定义的Angle cost,重新定义了Distance cost。可以看出,当α→0时,Distance cost的贡献大大降低。相反,α越接近π/4,Distance cost贡献越大。随着角度的增大,问题变得越来越难。因此,γ被赋予时间优先的距离值,随着角度的增加。Distance cost的定义为:
Δ=∑t=x,y(1-e-γρt)
Shape cost:θ的值定义了每个数据集的Shape cost及其值是唯一的。θ的值是这个等式中非常重要的一项,它控制着对Shape cost的关注程度。如果θ的值设置为1,它将立即优化一个Shape,从而损害Shape的自由移动。为了计算θ的值,将遗传算法用于每个数据集,实验上θ的值接近4,为此参数定义的范围是2到6。Shape cost的定义为:
IoU cost:IoU cost的定义为:
最终的损失函数由两项组成:分类损失(classification loss)和边界框损失(box loss),其中Lcls是focal loss,Wbox、Wcls分别是边界框损失和分类损失权重。SIoU损失函数定义为:
L=WboxLbox+WclsLcls
第三步,在网络模型构建完成的基础之上,将训练epoch设置为100,batch size设置为16,image size设置为640×640,初始学习率设置为0.01,将训练集输入到改进后的YOLOv5s网络模型进行训练,并调参优化模型,在验证集上验证模型效果,输出训练完成后的目标检测模型。
第四步,将训练完成后的目标检测模型与原始的YOLOv5s网络模型在测试集上进行对比测试,用精确率(Precision)、召回率(Recall)、平均精度(AP)、平均精度均值(mAP)、F1值(F1 Score)作为评价指标分别对改进前和改进后的YOLOv5s网络模型进行对比和评价。
Precision是精确性的度量,表示所有检测出的目标中检测正确的概率;Recall是覆盖面的度量,表示所有的正样本中正确识别的概率;F1 Score是精确率和召回率的调和平均数,最小为0,表示最差;最大为1,表示最好。
平均精度AP是以Precision和Recall为坐标轴作图后所围成的面积。均值平均精度mAP是所有目标类别的平均精度AP的平均值,用于描述模型对所有目标检测类别的检测性能,mAP的值越大,说明算法的检测效果越好,识别精度也越高。
在本实施例中,对本实施例中将YOLOv5s原网络模型和改进后的YOLOv5s算法性能进行对比,部分检测结果如图6所示,模型对比数据如下表:
表1YOLOv5s与改进后的YOLOv5s算法性能对比结果
以上对本发明实施方式提供的技术方案进行了详细的介绍,本文中应用了具体实施例对本发明所实施的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明实施的原理;同时,对于本领域的一般技术人员,本发明实施例,在具体实施方式以及应用范围上均有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种基于改进YOLOv5s网络模型的目标检测方法,其特征在于,包括如下步骤:
步骤1、构建数据集,将数据集中的图片和标签按照一定比例分为训练集、验证集和测试集;
步骤2、对原始的YOLOv5s网络模型进行改进;
步骤3、针对改进后的YOLOv5s网络模型,将训练集输入到改进后的YOLOv5s网络模型进行训练,并调参优化模型,在验证集上验证模型效果,输出训练完成后的目标检测模型;
步骤4、将训练完成后的目标检测模型与原始的YOLOv5s网络模型在测试集上进行对比测试,通过评价指标分别对目标检测模型与原始的YOLOv5s网络模型进行对比和评价;
步骤5、通过目标检测模型对目标区域进行检测。
2.根据权利要求1所述的一种基于改进YOLOv5s网络模型的目标检测方法,其特征在于,步骤1中,所述训练集、验证集和测试集按照8:1:1的比例进行划分。
3.根据权利要求1所述的一种基于改进YOLOv5s网络模型的目标检测方法,其特征在于,步骤2具体包括如下步骤:
步骤2.1、在原始YOLOv5s网络的Backbone层中SPPF模块之前添加CBAM注意力模块;
步骤2.2、在原始YOLOv5s网络的骨干网络和颈部之间添加基于对合的通道特征融合CFFI;
步骤2.3、在原始YOLOv5s网络的Neck层中将PANet替换为加权双向特征金字塔BiFPN;
步骤2.4、修改回归损失函数,采用SIoU损失函数替换YOLOv5s原有的CIoU损失函数。
4.根据权利要求3所述的一种基于改进YOLOv5s网络模型的目标检测方法,其特征在于,步骤2.1具体为:给定中间特征图,沿着空间和通道两个维度依次推断出注意力权重,然后与原特征图相乘来对特征进行自适应调整,CBAM是轻量级的通用模块,且无缝集成到任何CNN架构中,CBAM注意力机制分为通道注意力和空间注意力两部分:
通道注意力模块:
其中,F表示中间特征图,σ表示Sigmoid激活函数,MLP表示多层感知器,AvgPool表示平均池化,MaxPool表示最大池化,W1和W0表示输入共享权重,分别代表通道的平均池化特征和最大池化特征;
空间注意力模块:
其中,F表示中间特征图,σ表示Sigmoid激活函数,f7*7表示滤波器尺寸为7×7的卷积运算,AvgPool表示平均池化,MaxPool表示最大池化,分别代表空间的平均池化特征和最大池化特征。
5.根据权利要求3所述的一种基于改进YOLOv5s网络模型的目标检测方法,其特征在于,步骤2.2具体为:在骨干网络和颈部之间添加一个对合块;在骨干网络和特征金字塔之间加入CFFI,对合核的公式为:
Hi,j∈RK×K×1
其中,K表示对合核的大小,Hi,j是根据函数在像素(i,j)处生成的,核的大小和输入特征图在空间维度上自动对齐。
6.根据权利要求3所述的一种基于改进YOLOv5s网络模型的目标检测方法,其特征在于,步骤2.3具体为:在YOLOv5s网络的Neck层通过加权双向特征金字塔BiFPN的形式进行深浅层多尺度特征融合,通过BiFPN取代原结构中的Concat,首先从主干特征网络C3模块层通过BiFPN与FPN网络结构里的Upsample模块进行连接,实现特征融合,再跳跃与PAN网络结构中的网络层连接,进而实现深层网络与浅层网络的多尺度特征融合;
BiFPN融合了双向跨尺度连接和快速归一化融合,在BiFPN在第n层的两个融合特征中,是自顶向下路径上第n层的中间特征,/>是自底向上路径上第n层的输出特征;
通过深度可分离卷积进行特征融合,并在每个卷积后添加批量归一化和激活:
其中,Conv表示卷积操作,Resize表示上采样或下采样操作,表示输入图像分辨率为的特征级别,/>表示自上而下路径中第i层的输出特性,wi表示学习参数,∈表示偏移量。
7.根据权利要求3所述的一种基于改进YOLOv5s网络模型的目标检测方法,其特征在于,步骤2.4具体为:使用SIoU来作为回归损失函数代替CIoU损失函数,SIoU损失函数可改善目标检测的训练和推理,通过在损失函数成本中引入方向性,与YOLOv5s原网络模型中的损失函数CIoU相比,在训练阶段实现更快的收敛和更强的推理能力,SIoU损失函数由4个cost函数组成,分别是Angle cost、Distance cost、Shape cost和IoU cost,SIoU通过引入了所需回归之间的向量角度,重新定义了距离损失,加快网络收敛,提升回归精度。
8.根据权利要求7所述的一种基于改进YOLOv5s网络模型的目标检测方法,其特征在于,所述SIoU损失函数的4个cost函数分别为:
Angle cost:添加角度感知LF组件最大限度地减少与距离相关的“奇妙”中的变量数量,模型将将预测带到X轴或Y轴,然后沿着相关轴继续接近,如果α≤π/4,收敛过程将首先最小化α,否则最小化β,以下方式引入和定义了LF组件:
Distance cost:当α→0时,Distance cost的贡献大大降低,相反,α越接近π/4,Distance cost贡献越大,随着角度的增大,问题变得越来越难,γ被赋予时间优先的距离值,随着角度的增加,Distance cost的定义为:
Δ=Σt=x,y(1-e-γρt)
Shape cost:θ的值定义每个数据集的Shape cost及其值是唯一的,θ的值控制着对Shape cost的关注程度,如果θ的值设置为1,它将立即优化一个Shape,从而损害Shape的自由移动,为计算θ的值,将遗传算法用于每个数据集,参数θ定义的范围是2到6,Shape cost的定义为:
其中,ωt表示预测框和目标框的相似度,w、h分别为宽和高;
IoU cost:IoU cost的定义为:
其中,B和BGT分别表示预测框和目标框;
最终的损失函数由两项组成:分类损失classification loss和边界框损失box loss,其中Lcls是focal loss,Wbox、Wcls分别是边界框损失和分类损失权重,SIoU损失函数定义为:
L=WboxLbox+WclsLcls。
9.根据权利要求1所述的一种基于改进YOLOv5s网络模型的目标检测方法,其特征在于,步骤4中,所述评价指标包括精确率Precision、召回率Recall、F1值F1 Score、平均精度AP和平均精度均值mAP。
10.根据权利要求9所述的一种基于改进YOLOv5s网络模型的目标检测方法,其特征在于,所述精确率Precision、召回率Recall、F1值F1 Score、平均精度AP和平均精度均值mAP具体为:
其中TP真阳性表示真实正例,同时模型的预测结果也是正例;FP假阳性表示真实负例,同时模型的预测结果却为正例;FN假阴性表示真实正例,同时模型的预测结果却为负例,Precision是精确性的度量,表示所有检测出的目标中检测正确的概率;Recall是覆盖面的度量,表示所有的正样本中正确识别的概率;F1 Score是精确率和召回率的调和平均数,最小为0,表示最差;最大为1,表示最好;
AP=∫0 1P(R)dR
其中P为Precision,R为Recall,N表示类别数,平均精度AP是以Precision和Recall为坐标轴作图后所围成的面积;均值平均精度mAP是所有目标类别的平均精度AP的平均值,用于描述模型对所有目标检测类别的检测性能,mAP的值越大,说明算法的检测效果越好,识别精度也越高。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311505057.2A CN117372684A (zh) | 2023-11-13 | 2023-11-13 | 一种基于改进YOLOv5s网络模型的目标检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311505057.2A CN117372684A (zh) | 2023-11-13 | 2023-11-13 | 一种基于改进YOLOv5s网络模型的目标检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117372684A true CN117372684A (zh) | 2024-01-09 |
Family
ID=89392888
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311505057.2A Pending CN117372684A (zh) | 2023-11-13 | 2023-11-13 | 一种基于改进YOLOv5s网络模型的目标检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117372684A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117557787A (zh) * | 2024-01-11 | 2024-02-13 | 安徽农业大学 | 一种基于改进yolov8的轻量化多环境番茄检测方法 |
CN117911840A (zh) * | 2024-03-20 | 2024-04-19 | 河南科技学院 | 一种用于滤网表面缺陷检测的深度学习方法 |
CN117953350A (zh) * | 2024-03-26 | 2024-04-30 | 杭州豪悦护理用品股份有限公司 | 基于改进的YOLOv7网络模型的纸尿裤图像检测方法 |
-
2023
- 2023-11-13 CN CN202311505057.2A patent/CN117372684A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117557787A (zh) * | 2024-01-11 | 2024-02-13 | 安徽农业大学 | 一种基于改进yolov8的轻量化多环境番茄检测方法 |
CN117557787B (zh) * | 2024-01-11 | 2024-04-05 | 安徽农业大学 | 一种基于改进yolov8的轻量化多环境番茄检测方法 |
CN117911840A (zh) * | 2024-03-20 | 2024-04-19 | 河南科技学院 | 一种用于滤网表面缺陷检测的深度学习方法 |
CN117953350A (zh) * | 2024-03-26 | 2024-04-30 | 杭州豪悦护理用品股份有限公司 | 基于改进的YOLOv7网络模型的纸尿裤图像检测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10657364B2 (en) | System and method for deep network fusion for fast and robust object detection | |
US10691952B2 (en) | Adapting to appearance variations when tracking a target object in video sequence | |
CN117372684A (zh) | 一种基于改进YOLOv5s网络模型的目标检测方法 | |
US10275719B2 (en) | Hyper-parameter selection for deep convolutional networks | |
US9965719B2 (en) | Subcategory-aware convolutional neural networks for object detection | |
CN108027899B (zh) | 用于提高经训练的机器学习模型的性能的方法 | |
CN110084299B (zh) | 基于多头融合注意力的目标检测方法和装置 | |
KR20180036709A (ko) | 미디어 분류 | |
Shvai et al. | Accurate classification for automatic vehicle-type recognition based on ensemble classifiers | |
CN109840883B (zh) | 一种训练物体识别神经网络的方法、装置及计算设备 | |
CN110533046B (zh) | 一种图像实例分割方法、装置、计算机可读存储介质及电子设备 | |
CN110781785A (zh) | 基于Faster RCNN算法改进的交通场景下行人检测方法 | |
CN115861772A (zh) | 基于RetinaNet的多尺度单阶段目标检测方法 | |
CN111598065A (zh) | 深度图像获取方法及活体识别方法、设备、电路和介质 | |
CN111428567B (zh) | 一种基于仿射多任务回归的行人跟踪系统及方法 | |
CN111383245B (zh) | 视频检测方法、视频检测装置和电子设备 | |
CN116824333A (zh) | 一种基于深度学习模型的鼻咽癌检测系统 | |
Zhang et al. | An efficient deep neural network with color-weighted loss for fire detection | |
Sun et al. | Flame Image Detection Algorithm Based onComputer Vision. | |
Yamamoto et al. | Nighttime Traffic Sign and Pedestrian Detection Using RefineDet with Time‐Series Information | |
CN113658222A (zh) | 一种车辆检测跟踪方法及装置 | |
Meena et al. | Hybrid Neural Network Architecture for Multi-Label Object Recognition using Feature Fusion | |
CN113642498A (zh) | 一种基于多层次时空特征融合的视频目标检测系统及方法 | |
Ghahremani et al. | Re-identification of vessels with convolutional neural networks | |
Priya et al. | Vehicle Detection in Autonomous Vehicles Using Computer Vision Check for updates |
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 |