基于YOLOv5的尺度自适应目标检测的方法及存储介质与流程

文档序号:31185108发布日期:2022-08-19 21:11阅读:318来源:国知局
基于YOLOv5的尺度自适应目标检测的方法及存储介质与流程
基于yolov5的尺度自适应目标检测的方法及存储介质
技术领域
1.本发明涉及计算机视觉领域,具体涉及一种基于yolov5的尺度自适应目标检测的方法及存储介质。


背景技术:

2.目标检测是计算机视觉领域中的一个基础且具有挑战性的问题,其目的是识别图像中的所有感兴趣的对象的类别并确定其位置和大小。目标检测技术的应用也十分广泛,在人脸检测、车辆检测、行人计数、自动驾驶、医疗辅助等领域都有他的身影。
3.基于深度学习的目标检测算法主要分为两类:两阶段检测算法和一阶段检测算法。两阶段检测算法首先进行候选区域生成,即一个有可能包含待检物体的预选框,再通过卷积神经网络进行样本分类。常见的两阶段目标检测算法有:r-cnn、spp-net、fast r-cnn、faster r-cnn等。一阶段检测算法不用提取候选区域,直接在网络中提取特征来预测物体分类和位置。常见的一阶段目标检测算法有:yolo、ssd和retinanet等。
4.现实场景中各类物体的外观、形状和姿态是不固定的,成像时光照、遮挡等因素也经常出现,目标检测面临的挑战也非常多。在图片中由于拍摄位置与角度的不同,加上成像设备会有镜头畸变,所以目标的尺度变化会很大。在卷积神经网络中,对于小物体而言,浅层特征包含它的一些细节信息,随着层数加深,感受野变大,所提取特征中的几何细节信息可能完全消失。对于大物体而言,它语义信息将出现在较深层特征中。
5.目前有很多针对多尺度目标检测的研究,比如采用多尺度训练的方法,将不同尺寸的图片送入训练网络,fpn也是多尺度的产物,它将顶层特征通过上采样和低层特征做融合之后再进行预测。yolov5也有对图片进行尺度变化的数据增强。yolov5在灵活性与速度上远强于其他检测算法,在模型的快速部署上具有极强优势,相比其他算法更符合工业界对目标检测算法实时性的要求,简单易实现,对于嵌入式很友好。但是单独使用yolov5无法完成多尺度目标高准确率的检测。


技术实现要素:

6.本发明提出的一种基于yolov5的尺度自适应目标检测的方法,可提高yolov5对多尺度目标的检测精度,提高网络的鲁棒性与泛化性能。
7.为实现上述目的,本发明采用了以下技术方案:
8.一种基于yolov5的尺度自适应目标检测的方法,包括以下步骤,
9.步骤1:采集图像,然后将样本集按一定比例随机分为训练集和验证集;
10.步骤2:将步骤1获得的样本进行mosaic数据增强,即随机使用4张图片,随机缩放,再随机分布进行拼接;
11.步骤3:将数据增强后的样本输入模型网络中,首先将样本送入fcous模块,对图片进行切片操作,将切片操作得到的新图片再经过卷积操作,最终得到了没有信息丢失情况下的二倍下采样特征图,然后将得到的特征图送入backbone中,提取样本的多层深度特征;
12.步骤4:将步骤3中得到的特征图送入分层特征自适应融合模块;先通过三个并行的网络组成的分层模块,三个网络的参数是共享的,只有空洞卷积的膨胀率不同,将提取到的多尺度特征送入自适应融合模块处理;在经过一个全局平均池化之后每个分支都连接一个全连接层,一起做softmax操作,与每个分支相乘后再做一个残差连接;
13.步骤5:将步骤4中得到的特征继续送入后续的网络中,实现网络前向传播以得到目标物体的边界框信息,yolov5检测层在3种不同尺度的特征图上对输入的图像进行检测,在每个尺度上,每个网络单元使用3种不同长宽比的锚点框预测边界框,输出的预测信息包括:边界框中心坐标、边界框宽度和高度、边界框中包含目标物体的置信度,以及边界框中目标物体属于某一类的概率;接着,设置置信度阈值,进行非极大值抑制,取高于置信度阈值的边界框的并集作为最终预测的结果;
14.步骤6:实时采集待测图像,输入至步骤5中所述的目标检测模型中,计算输出置信度大于阈值的分类结果作为待测图像的识别结果。
15.进一步的,步骤5还包括通过损失函数计算预测的边界框与标记的真实边界框之间的误差,将误差反向传播,更新网络参数,损失函数如下定义:
[0016][0017][0018][0019]
loss=l
reg
+lo
bj
+l
cls
[0020]
其中,a为模型的预测框,b为标注的真实框,c表示包含a与b的最小凸闭合框;
[0021]
置信度误差使用交叉熵来表示,s和b代表图片划分成s
×
s个网格,每个网格预测b个候选框;和代表第i个网格的第j个候选框是否负责该目标,表示参数置信度;当第i个网格的第j个候选框负责某一个真实目标时,才会去计算这个候选框所产生的分类损失,代表分类概率;边界框回归损失、置信度损失和分类损失三者之和为网络的总损失。
[0022]
进一步的,步骤1中采用标注工具对图像中的需要检测的目标进行标注,得到所有感兴趣目标所在的边界框,并生成相应的标签文件(class,x,y,w,h),其中(x,y)为目标所在边界框的中心坐标w,h分别为边界框的宽和高,class表示目标物体的种类。
[0023]
进一步的,步骤2中将步骤1获得的样本进行mosaic数据增强具体包括:
[0024]
将样本进行mosaic数据增强,即每次读取4张图片,分别对4张图片进行随机概率的翻转即对原始图片进行左右的翻转、缩放即对原始图片进行大小的缩放、色域变换即对原始图片的明亮度、饱和度、色调进行改变,操作完成之后然后再将四张原始图片完成摆放之后,利用矩阵的方式将四张图片固定的区域截取下来,然后将它们拼接起来,拼接成一张
新的分辨率为1600
×
1600图片。
[0025]
进一步的,步骤3中的对图片进行切片操作,具体操作是在一张图片中每隔一个像素拿到一个值,类似于邻近下采样,这样就拿到了四张图片,四张图片互补,将w、h信息就集中到了通道空间,输入通道扩充了4倍,即拼接起来的图片相对于原先的rgb三通道模式变成了12个通道。
[0026]
另一方面,本发明还公开一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如上述所述方法的步骤,自动地进行尺度自适应的目标检测。
[0027]
由上述技术方案可知,本发明提出了一种基于yolov5的尺度自适应目标检测的方法,通过设计了一个分层特征自适应融合模块来提取目标的多尺度特征,同时让每个样本自适应地选择合适的尺度,通过自适应融合机制来抑制低质量通道带来的噪声影响,以此实现目标检测的尺度自适应,进一步提高目标检测的鲁棒性。
附图说明
[0028]
图1是基于yolov5的尺度自适应目标检测的流程图;
[0029]
图2是尺度自适应的yolov5网络模型结构示意图;
[0030]
图3是分层特征自适应融合模块结构示意图;
[0031]
图4是本发明展示的实验结果图;
[0032]
图5是本发明展示的实验结果图。
具体实施方式
[0033]
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。
[0034]
本技术实例提出了新的基于yolov5的尺度自适应目标检测的方法,通过引入分层特征自适应模块来解决现有技术中多尺度目标检测问题。
[0035]
本实例申请提供了一种新的基于yolov5的尺度自适应目标检测的方法,如图1,具体包括以下步骤:
[0036]
步骤1:采集图像,然后将样本集按一定比例随机分为训练集和验证集。采用标注工具对图像中的需要检测的目标进行标注,得到所有感兴趣目标所在的边界框,并生成相应的标签文件其中为目标所在边界框的中心坐标,w,h分别为边界框的宽和高,class表示目标物体的种类;
[0037]
步骤2:将步骤1获得的样本进行mosaic数据增强,即随机使用4张图片,随机缩放,再随机分布进行拼接,大大丰富了检测数据集,特别是随机缩放增加了很多小目标,让网络的鲁棒性更好。同时,使用mosaic增强训练时,可以直接计算4张图片的数据,使得mini-batch大小并不需要很大,一个gpu就可以达到比较好的效果。
[0038]
步骤3:将数据增强后的样本输入模型网络中,首先将样本送入fcous模块,对图片进行切片操作,具体操作是在一张图片中每隔一个像素拿到一个值,类似于邻近下采样,这样就拿到了四张图片,四张图片互补,将w、h信息就集中到了通道空间,输入通道扩充了4
倍,即拼接起来的图片相对于原先的rgb三通道模式变成了12个通道,最后将得到的新图片再经过卷积操作,最终得到了没有信息丢失情况下的二倍下采样特征图。然后将得到的特征图送入backbone中,提取样本的多层深度特征。
[0039]
步骤4:将步骤3中得到的特征图送入本发明所设计的分层特征自适应融合模块。先通过三个并行的网络组成的分层模块,三个网络的参数是共享的,只有空洞卷积的膨胀率不同。将提取到的多尺度特征送入自适应融合模块处理。在经过一个全局平均池化之后每个分支都连接一个全连接层,一起做softmax操作,与每个分支相乘后再做一个残差连接。这样就可以让样本自适应的选择合适的尺度。
[0040]
步骤5:将步骤4中得到的特征继续送入后续的网络中,实现网络前向传播以得到目标物体的边界框信息,yolov5检测层在3种不同尺度的特征图上对输入的图像进行检测,在每个尺度上,每个网络单元使用3种不同长宽比的锚点框预测边界框,输出的预测信息包括:边界框中心坐标、边界框宽度和高度、边界框中包含目标物体的置信度,以及边界框中目标物体属于某一类的概率;接着,设置置信度阈值,进行非极大值抑制,取高于置信度阈值的边界框的并集作为最终预测的结果;最后,通过损失函数计算预测的边界框与标记的真实边界框之间的误差,将误差反向传播,更新网络参数,损失函数如下定义:
[0041][0042][0043][0044]
loss=l
reg
+l
obj
+l
cls
[0045]
其中,a为模型的预测框,b为标注的真实框,c表示包含a与b的最小凸闭合框,通过这样的方式计算边界框回归损失可以在很好的利用iou的优点的同时,解决了iou在为0时无法进行梯度回传的缺点。置信度误差使用交叉熵来表示,s和b代表图片划分成s
×
s个网格,每个网格预测b个候选框。和代表第i个网格的第j个候选框是否负责该目标,表示参数置信度。当第i个网格的第j个候选框负责某一个真实目标时,才会去计算这个候选框所产生的分类损失,代表分类概率。边界框回归损失、置信度损失和分类损失三者之和为网络的总损失。
[0046]
重复上述步骤不断训练使得损失函数的值达到最优,从而使本发明所提出的尺度自适应的yolov5网络收敛,以提高网络的鲁棒性与泛化性能。
[0047]
步骤6:实时采集待测图像,输入至步骤5中所述的目标检测模型中,计算输出置信度大于阈值的分类结果作为待测图像的识别结果。
[0048]
以下举例说明:
[0049]
图1表示本技术实施例中基于yolov5的尺度自适应目标检测方法实施的流程示意
图,如图所示,包括如下步骤:
[0050]
步骤一:对真实场景进行图像采集,在不同地域、不同时间、不同光照、不同角度下随机采集得到。将采集图像构成的样本集按一定比例(80%,20%)随机分为训练集和验证集,训练集用来建立所需的检测模型,验证集用来测试所训练出模型的性能。采用标注工具对图像中需要检测的目标进行标注,得到所有感兴趣目标所在的边界框,并生成相应的标签文件(class,x,y,w,h)其中(x,y)为目标所在边界框的中心坐标,w,h分别为边界框的宽和高,class表示目标物体的种类。class=0代表人,class=1代表头部,class=2代表穿着短袖。所有坐标系均以图像左上角为原点,以水平向右为x轴正方向,以竖直向下为y轴正方向建立。
[0051]
步骤二:将样本进行mosaic数据增强,即每次读取4张图片,分别对4张图片进行随机概率的翻转(对原始图片进行左右的翻转)、缩放(对原始图片进行大小的缩放)、色域变换(对原始图片的明亮度、饱和度、色调进行改变)等,操作完成之后然后再将原始图片按照第一张图片摆放在左上,第二张图片摆放在左下,第三张图片摆放在右下,第四张图片摆放在右上四个方向位置摆好。完成四张图片的摆放之后,利用矩阵的方式将四张图片固定的区域截取下来,然后将它们拼接起来,拼接成一张新的分辨率为1600
×
1600图片,新的图片上含有标注框等一系列的内容。
[0052]
步骤三:将数据增强后的样本输入模型网络中,首先将样本送入fcous模块,对图片进行切片操作,具体操作是在一张图片中每隔一个像素拿到一个值,类似于邻近下采样,这样就拿到了四张图片,四张图片互补,将w、h信息就集中到了通道空间,输入通道扩充了4倍,即拼接起来的图片相对于原先的rgb三通道模式变成了12个通道,最后将得到的新图片再经过卷积操作,最终得到了没有信息丢失情况下的二倍下采样特征图。然后将得到的特征图送入backbone中,提取样本的多层深度特征。
[0053]
步骤四:将backbone提取的特征图送入本发明所设计的分层特征自适应融合模块,如图3所示。先通过三个并行的网络组成的分层模块,三个网络的参数是共享的,都是通过卷积核1
×
1、3
×
3、1
×
1三个卷积提取特征,只有中间的空洞卷积的膨胀率不同,分别为1、2、3。将提取到的多尺度特征连接之后送入自适应融合模块处理。在经过一个全局平均池化之后每个分支都连接一个全连接层将通道数从768降维到256,一起做softmax操作,与每个分支相乘后再做一个残差连接,这样就可以让样本自适应的选择合适的尺度。
[0054]
步骤五:将步骤四中得到的特征继续送入后续的网络中,实现网络前向传播以得到目标物体的边界框信息,yolov5检测层在3种不同尺度的特征图上进行检测,3种尺度分别为为50
×
50、100
×
100、200
×
200。在每个尺度上,每个网络单元框预测3个边界框,输出的预测信息包括:边界框中心坐标、边界框宽度和高度、边界框中包含目标物体的置信度,以及边界框中目标物体属于某一类的概率;接着,设置置信度阈值0.45,进行非极大值抑制,取高于置信度阈值的边界框的并集作为最终预测的结果;最后,通过损失函数计算预测的边界框与标记的真实边界框之间的误差,将误差反向传播,更新网络参数,损失函数如下定义:
[0055]
[0056][0057][0058]
loss=l
reg
+lo
bj
+l
els
[0059]
其中,a为模型的预测框,b为标注的真实框,c表示包含a与b的最小凸闭合框,通过这样的方式计算边界框回归损失可以在很好的利用iou的优点的同时,解决了iou在为0时无法进行梯度回传的缺点。置信度误差使用交叉熵来表示,s和b代表图片划分成s
×
s个网格,每个网格预测b个候选框。和代表第i个网格的第j个候选框是否负责该目标,表示参数置信度。当第i个网格的第j个候选框负责某一个真实目标时,才会去计算这个候选框所产生的分类损失,代表分类概率。边界框回归损失、置信度损失和分类损失三者之和为网络的总损失。
[0060]
在训练的时候使用随机梯度法进行100次迭代,学习率设置为0.01,使得损失函数的值达到最优,从而使本发明所提出的尺度自适应的yolov5网络收敛,以提高网络的鲁棒性与泛化性能。保存最终的模型
[0061]
步骤六:实时采集待测图像,输入至步骤五中保存的目标检测模型中,iou阈值设置为0.6,计算输出置信度大于0.6的分类结果作为待测图像的识别结果输出。
[0062]
综上所述,本发明实施例提出了一种基于yolov5的尺度自适应目标检测的方法,通过设计了一个分层特征自适应融合模块来提取目标的多尺度特征,同时让每个样本自适应地选择合适的尺度,通过自适应融合机制来抑制低质量通道带来的噪声影响,以此实现目标检测的尺度自适应,进一步提高目标检测的鲁棒性。
[0063]
又一方面,本发明还公开一种计算机可读存储介质,存储有计算机程序和模型的参数,所述计算机程序被处理器执行时,使得所述处理器执行如上述最终模型的前向传播。
[0064]
再一方面,本发明还公开一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序和模型的参数,所述计算机程序被所述处理器执行时,使得所述处理器执行如上述最终模型的前向传播。
[0065]
在本技术提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中最终模型的前向传播。
[0066]
可理解的是,本发明实施例提供的系统与本发明实施例提供的方法相对应,相关内容的解释、举例和有益效果可以参考上述方法中的相应部分。
[0067]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性
和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
[0068]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0069]
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1