一种基于yolov5的遗留物小目标精准识别方法
文献发布时间:2024-04-18 19:52:40
技术领域
本发明属于深度学习中的目标检测领域,具体一种基于yolov5的遗留物小目标精准识别方法。
背景技术
yolov5是目标检测领域中使用最广泛的模型之一,通过对不同的数据集的训练,使模型产生了一个权重,这可以使模型检测出与数据集类似的物品。Yolov5是单阶段目标检测,检测速度较快,精度在同类模型中也比较高。
但是,当被检测的目标过小时,训练时所能提取到的特征较少,导致在检测时会漏检一些目标,准确率就不会特别高。在遗留物的检测和识别中,人们通常遗留的是小物品,这些物品可能由于过下导致传统模型不能检测出来,一般可以从两方面解决这个问题:1.在训练时尽量使用大目标训练。2.修改模型结构,使其在训练时提取更多的特征。本专利采取第二种方法,通过修改网络结构,添加注意力机制与更换损失函数,使模型能提取到更多的小目标特征。
发明内容
针对上述问题,本发明提出了一种基于yolov5的小目标精准识别方法,通过修改网络结构,添加注意力机制与更换损失函数,使模型能提取到更多的小目标特征。
本发明提供了一种基于yolov5的遗留物小目标精准识别方法,具体步骤如下:
步骤1:获取含有遗留物的小目标数据集,并划分为训练集和测试集。
步骤2:基于残差网络的思想,将yolov5模型中骨干网络的特征信息输入Neck网络的特征融合层,有助于增强梯度的反向传播的同时,避免梯度衰减,减少小目标特征信息的损失,提取更多的特征。
步骤3:将注意力模块添加到融合层中,放大图像中小目标的信息。对于小目标的检测,如果仅仅对原有图像进行提取,一定会提取出不少冗余特征。基于上述问题,本发明选择引入ECA(Encoder-Context-Attention)通道注意力机制这是一种用于机器翻译等自然语言处理任务的注意力模型。它在原始的注意力机制的基础上引入了编码器-上下文-注意力的概念,以改进模型的性能。本发明将ECA注意模块添加到特征融合层中,放在neck层与output层之间,以此建立一种新的检测模型。
步骤4:针对YOLOv5的回归损失问题,引入EIOU损失函数替换原来损失函数,构造损失函数,减少回归损失,通过测试集,对加入残差和注意力模块的yolov5模型进行训练。
步骤5:将测试集输入步骤4训练好的yolov5模型,得到遗留物小目标的识别结果。
本发明还提供了一种基于yolov5的遗留物小目标精准识别装置,包括:存储器;以及与所述存储器连接的处理器,所述处理器被配置成用于上述方法。
本发明又提供了一种计算机存储介质,其上存储有计算机程序,所述计算机程序被机器执行时实现上述的方法。
本发明有益效果:通过改进yolov5模型的框架,修改网络结构,融合注意力机制,更换损失函数,针对传统的yolov5模型解决不了图片或视频中目标过小而检测不到的问题,使模型对遗留物中小目标的检测更加精准,速度也更快,使模型适用于各种小模型的目标检测。
附图说明
图1yolov5网络模型;
图2ECA注意力机制结构图;
图3添加ECA的yolov5网络模型。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图对本发明进行进一步详细说明。
本申请实施例公开了一种基于yolov5的遗留物小目标精准识别方法,包括如下步骤:
步骤1:获取含有遗留物的小目标数据集,并划分为训练集和测试集。
步骤2:基于残差网络,将yolov5模型中骨干网络的特征信息输入Neck网络的特征融合层。
图1为yolov5的网络结构,其中第一个框为模型的backbone层,第二个框为neck层,第三个框为output层,灰色箭头之间的指向代表着每一层的输出是下一层的输入。事实上,随着网络层数的增加,网络发生退化现象,随着网络层数的增多,训练集loss逐渐下降,然后趋于饱和,当再次增加网络深度的话,训练集loss反而会增大。当网络退化时,浅层网络能够达到比深层网络更好的训练效果,这时如果把低层的特征传到高层,那么效果应该至少不比浅层的网络效果差,所以可以在浅层到深层添加一个映射,这样做的目的是使目标的特征更好的提取。有些层的输入是多个层输出的融合,这就是残差网络的思想。所以在yolov5的网络模型中,需要将浅层的特征传到深层。如图1所示,虚线是本实施例改进部分,将骨干网络的特征信息带入neck网络进行特征融合,进而促进增强梯度的方向传播,避免梯度衰减,减小目标的特征信息的损失。
步骤3:注意力机制的核心逻辑就是关注全部到关注重点。目前总共有三大注意力机制,分别是空间注意力机制、通道注意力机制以及混合注意力机制。模型在检测小目标时,如果在训练时对图片上目标的特征进行全局提取,那么就会产生大量的冗余。所以应该有一个更加合理、有效的方案,使特征区域获得更多的关注。而选择通道注意力机制是一个很好的方案。为了自适应校准特征通道,通道注意力机制先关注不同特征通道的重要度,对不同任务加强有用特征通道,压制不需要的通道。所以该类注意力机制可以给目标区域分配较高的权重,用来减少无用的特征提取。
基于上述问题,本实施例选择ECA通道注意力机制。进一步,ECA注意力机制的网络结构图如图2所示。ECANet可以看作是SENet的升级。SENet首先对输入的特征图进行了通道压缩,而这样的压缩降维对于学习通道之间的依赖关系有不利影响。所以,ECANet避免降维,去除了SENet中的全连接层,同时用1维卷积高效实现了局部跨通道交互,提取通道间的依赖关系。具体步骤如下:
1.将输入的特征图进行全局平均池化操作。
2.进行卷积核大小为k的1维卷积操作,并经过Sigmoid激活函数得到各个通道的权重w,如公式(1)所示:
ω=σ(C1D
其中,C1D
3.将权重与原始输入特征图对应元素相乘,得到最终输出特征图。可以看出,ECA注意力机制思想和运算极为简便,对网络处理速度的影响最小。
所以引入ECA注意力机制,并将其添加到特征融合层中,建立起新的检测模型。ECA通过一维卷积实现端到端的交互,实现端到端的训练,完成通道交互。其中一维卷积中核大小k计算公式如公式(2)所示:
其中,C是特征图的通道数,γ与b为常数。改进过后的yolov5的网络结构如图3所示。
步骤4:yolov5的损失函数由定位损失、分类损失和置信度损失三部分组成,可用如下公式(3)表示:
其中,L
BCEWithLogitsLoss计算,如公式(4)所示:
其中n代表样本总量,x代表样本,y代表标签,a代表预测的输出,。
CIOU损失函数是在DIOU损失函数的基础上,通过加入衡量预测框与真实框的长宽比为v的函数,在一定程度上可以加速预测框的回归。但仍然存在一些列的问题:在进行预测框的回归时,一旦预测框与真实框框在长宽比上呈线性比例,在CIOU上增加的长宽比因子不再有效;由预测框w、h梯度公式可推出,当w、h中的某个数值增大,那么另外一个数值就会减小,无法同时增大或减小,维持不了同增同减。
为减少回归损失,在本申请的一实施例中使用EIOU代替了定位损失函数,EIOU损失函数可分为三部分:预测框和真实框的中心距离损失L
其中IOU(Intersection over Union)是一种测量在特定数据集中检测相应物体准确度的一个标准,w、h、b是权重,ρ是激活函数,
进一步,通过整合FocalLoss对EIOU损失函数进行加权处理,得到了最终的Focal-EIoU loss,它表示为公式(6):
L
其中γ1是一个用于控制曲线弧度的超参,公式(7)为改进后的最终损失函数。
步骤5:将测试集输入步骤4训练好的yolov5模型,得到遗留物小目标的识别结果。
本申请实施例还公开了一种基于yolov5的遗留物小目标精准识别装置,包括:存储器;以及与所述存储器连接的处理器,所述处理器被配置成用于执行上述方法。
本申请实施例还公开了一种计算机存储介质,其上存储有计算机程序,所述计算机程序被机器执行时实现上述方法。
在此,所述计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
验证例:
采用小目标数据集,使用改进过的yolov5模型和未改进的同时进行训练。其结果下表所示。
表中,Precision代表的是精确率,Recall代表的是召回率,AP代表的是精度均值,这些参数是衡量模型好坏的标准,值越大模型越好。由此可见,本实施例改进后的yolov5模型在一定程度上优于未改进的yolov5模型。
- 基于神经网络的视频描述生成方法、存储介质及终端设备
- 终端设备控制方法、终端设备及计算机可读存储介质
- 一种终端设备的充电方法、终端设备及计算机存储介质
- 终端设备的告警方法、终端设备和计算机可读存储介质
- 一种存储管理方法、计算机可读存储介质及终端设备
- 终端设备的网络切换方法、终端设备及存储介质
- 网络切换方法、装置、终端设备及计算机存储介质