一种基于多尺度信息融合的小目标检测方法
未命名
09-16
阅读:66
评论:0

1.本发明涉及道路场景目标检测技术领域,特别涉及一种基于多尺度信息融合的道路场景小目标检测方。
背景技术:
2.道路场景中的目标检测是实现高级驾驶辅助中环境感知这一环节的核心技术。通过车载摄像头采集行驶过程中道路上的信息,然后应用路场景目标检测方法快速准确地识别出道路上的目标,是高级辅助驾驶系统实现车道保持功能以及防撞预警功能的重要前提。
3.道路场景目标检测中尺度不一致会对检测性能产生负面影响。如果模型只能适应某一特定尺度的目标,那么在不同尺度下的目标将无法被正确识别。同时,由于车辆、行人和其他物体尺度大小的变化,道路场景中存在大量的尺度不一致的目标,因此尺度不一致是道路场景目标检测中的一个严峻问题。为了解决这个问题,2015年,he等人设计了一种新的模块,即空间金字塔池化(spatial pyramid pooling,spp),空间金字塔池化以不同尺度大小对输入数据进行分割,从得到的所有块中对每个块进行最大池化操作,最后将结果合并,得到全连接层的固定输入大小。从而解决了需要固定大小输入数据的问题。
4.而yolov5方法框架采用空间金字塔池化技术,旨在将多种尺寸的最大池化操作融合在一起,以此来增强局部特征与整体特征之间的关联,进一步拓展最终特征图的表示能力,并且可以获得更多有用的语义信息。同时还能增强方法在空间布局和物体变性方面的鲁棒性,进而提高方法的检测准确率。yolov5方法在neck网络之前,主干特征提取网络backbone靠后的地方添加了spp结构,
5.虽然yolov5方法采用spp模块利用不同尺寸的池化层进行特征提取,可以使不同尺度的特征进行融合,加强最终特征的表达能力。但是池化层这个操作本身存在不足的地方,它在增加感受野的同时将分辨率也变小了,这就导致了图像中的一些细节信息的缺失,无法将细节全部还原。以至于一些小目标的检测效果不好,例如在道路场景目标检测中小尺度目标检测效果差的问题尤为明显,例如:当车辆前方的物体距离车辆较远,会导致这个物体尺度较小,同时在图片中所占的像素数较少,所能提供给模型的特征信息也就很少,导致检测方法对这类小尺度目标的检测性能较差。
技术实现要素:
6.针对现有技术存在的上述问题,本发明的要解决的技术问题是:如何提升道路场景目标检测中小尺度目标检测的精确性。
7.为解决上述技术问题,本发明采用如下技术方案:基于多尺度信息融合的小目标检测方法,包括如下步骤:
8.s1:获取现有数据集,并对数据集进行预处理,经过预处理后的所有图片构成训练集;
9.s2:构建小目标检测模型,所述小目标检测模型采用yolov5的主干特征提取网络作为基础模型,将基于通道重组的轻量化逆瓶颈残差模块shuffle_res2net_s与yolov5主干特征提取网络中csp_bottleneck里的残差结构进行替换,定义为msl_backbone模型;
10.将改进的多尺度空洞空间金字塔池化模块imp_aspp与yolov5中的空间金字塔池化模块spp进行替换;
11.将改进后用于改善小目标检测性能的模块conv_ns用于替换yolov5网络中的下采样模块;
12.s3:对输入数据集数据引入数据重采样操作,并进行训练,待最优收敛后保存模型参数得最优小目标检测模型;
13.s4:调用最优小目标检测模型,输入测图片进行检测,输出即为识别的结果。
14.作为优选,s1中预处理是指:将现有数据中的misc和dontcare类别去掉,将van,truck和tram这三个样本数量很少的类别合并到car这个大类别中,将person_sitting类别合并到pedestrain类别中,对数据集中的所有图片进行标准化操作,最后得到car、cyclist、pedestrain这三个大类别的图片。
15.作为优选,所述s2中基于通道重组的轻量化逆瓶颈残差模块包括:
16.所述shuffle_res2net_s的输入特征图为x∈rc×h×w,x表示输入特征图,c为输入通道,h为特征图高度,w为特征图宽度;
17.经过卷积核大小为1
×
1的卷积进行通道上的升维改变,通道维度变成c
′
=c
×
w/64
×
s,得到特征图为x
′
∈rc′×h×w,其中,x
′
表示经过卷积操作后得出的特征图,c
′
表示改变后的通道维度;
18.对x
′
在通道层面c
′
上进行分割,分割成通道大小相等的n个特征子图,用xi表示,其中i∈(1,2,3...n),xi的空间大小与x
′
的大小一致,通道ci是x
′
的1/n;
19.将最后一个分支不经过3
×
3分组卷积核过滤,其余3个分支都经过3
×
3分组卷积的过滤,第一个分支以后的每个分支的输入都包含前一个分支的输出;
20.在包含分组卷积的分支中,在输入特征子图经过分组卷积之后,对提取出的特征子图在通道维度进行重组;
21.将4个分支的输出在通道层面上进行拼接,采用卷积核大小为1
×
1的卷积,进行特征融合并降维,并采用跳跃连接与输入进行元素级相加;
[0022][0023][0024]
其中gconv3(.)表示卷积核大小为3
×
3的分组卷积操作;shuffle表示通道重组操作;conv1×1表示卷积核大小为1
×
1的卷积操作;xi表示每个分支的输入;yi表示每个分支的输出;y表示模块最终的输出。
[0025]
作为优选,所述通道重组操作具体包括:
[0026]
将提取出的特征子图在通道ci上分成大小相等的g个组;
[0027]
将g个组进行重塑成g行h列的矩阵,其中h=ci/g;
[0028]
在将得到的矩阵先进行转置操作,再进行fallten操作平铺成一维。
[0029]
作为优选,所述s2中改进的多尺度空洞空间金字塔池化模块包括
[0030]
所述imp_aspp的输入特征图为x∈rc×h×w;
[0031]
将输入特征图分为5个分支,第一个分支采用卷积核大小为1
×
1进行卷积操作;
[0032]
对于第2-4个分支以不同采样率的深度可分离空洞卷积并行采样获取不同尺度的图像上下文信息,并在每个深度可分离空洞卷积后面采样通道洗牌(shuffle)操作。对于分支的输入方面,将前一个分支的输出,与本分支的输入进行拼接作为本分支的输入。同时对于分支的输出方面,将前一个分支的输出,与本分支的输出进行拼接作为本分支的输出;
[0033]
将第5个分支首先经过一个自适应均值池化,然后经过一个1
×
1的卷积层,最终将特征图从1
×
1的大小上采样回原来的尺寸;
[0034]
将5个分支的输出其中i=(1,2...5)在通道层面进行concat拼接,再利用conv(1
×
1)进行降维恢复到原来的通道数量,最终得到输出特征图y∈rc×h×w。
[0035]
作为优选,所述s2中改进后用于改善小目标检测性能的模块conv_ns包括:
[0036]
所述conv_ns的输入特征图为x∈rc×h×w;
[0037]
经过卷积核大小为3
×
3,stride=1的卷积进行特征的提取,不改变输入特征图的空间大小,先将通道维数缩小至原来的1/2,变为c/2,得到特征图x
′
=r
c/2
×h×w;
[0038]
对特征图x
′
=r
c/2
×h×w进行重塑操作。特征图变为x”=r
c/2
×
new_h
×
scale
×
new_w
×
scale
,new_h、new_w为之后新生成特征图的高和宽,scale为缩放尺度;
[0039]
对x”进行transpose转置操作成x
”′
=r
c/2
×
scale
×
scale
×
new_h
×
new_w
;
[0040]
转置操作成后再进行重塑操作成y∈r
2c
×
new_h
×
new_w
,在通道维度进行拼接,使得通道维数变为原来的2倍,同时特征图的空间大小缩小为原来的1/2。
[0041]
作为优选,所述s3中重采样操作的具体步骤为:
[0042]
为训练集中每个类别分配一个学习权重;
[0043]
计算出训练集中每张图片中各个类别的数量,之后根据各个类别的学习权重去计算出每张图片的采样权重;
[0044]
根据每张图片的采样权重,通过random.choices()函数生成图片索引,在每次数据加载时按照各个索引进行加载图片。
[0045]
相对于现有技术,本发明至少具有如下优点:
[0046]
本发明以yolov5主干特征提取网络backbone为基础框架(baseline)对其进行改进,提出了一种基于通道重组的轻量化逆瓶颈残差结构shuffle_res2net_s。将其与yolov5主干网络进行融合,提出基于多尺度的轻量化主干特征提取网络msl_backbone。并在此基础上引入aspp模块并对其进行改进,提出imp_aspp以替换yolov5中的spp模块。为了改善小目标检测性能,设计了一种用于改善小目标检测的模块(conv_ns)以替代yolov5中的下采样模块。通过对kitti数据集引入数据重采样操作解决道路场景中样本类别不均衡问题。最后通过实验验证结果得出ms-yolov5提升了对多尺度特征的提取能力同时有效的改善了小尺度目标的检测性能,测试精度较yolov5提高了4.19%,cyclist和pedestrain分别提升了7.96%、5.28%。
[0047]
使得道路场景目标检测方法能在保持整体目标检测精度提高的同时,对小尺度目标以及小样本数量目标有更高的检测精度。
附图说明
[0048]
图1为ms-yolov5网络框架图。
[0049]
图2为基于通道重组的轻量化逆瓶颈残差模块结构图。
[0050]
图3为普通卷积和分组卷积的区别图。
[0051]
图4为通道重组流程示意图。
[0052]
图5为csp_bottle2neck(有跳跃连接)结构图。
[0053]
图6为融合策略方式展示图。
[0054]
图7为改进的多尺度空洞空间金字塔池化(imp_aspp)结构图。
[0055]
图8为深度可分离空洞卷积的计算过程展示图。
[0056]
图9为改进用于小目标检测模块(conv_ns)结构图。
[0057]
图10为conv_ns融合策略展示图。
[0058]
图11为检测结果及热力图可视化展示图。
具体实施方式
[0059]
下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
[0060]
参见图1,一种基于多尺度信息融合的小目标检测方法,包括如下步骤:
[0061]
s1:获取现有数据集,并对数据集进行预处理,经过预处理后的所有图片构成训练集;
[0062]
构建小目标检测模型,所述小目标检测模型采用yolov5的主干特征提取网络作为基础模型,将基于通道重组的轻量化逆瓶颈残差模块shuffle_res2net_s与yolov5主干特征提取网络中csp_bottleneck里的残差结构进行替换,定义为msl_backbone模型;
[0063]
将改进的多尺度空洞空间金字塔池化模块imp_aspp与yolov5中的空间金字塔池化模块spp进行替换;
[0064]
将改进后用于改善小目标检测性能的模块conv_ns用于替换yolov5网络中的下采样模块;
[0065]
s3:对输入数据集数据引入数据重采样操作,并进行训练,待最优收敛后保存模型参数得最优小目标检测模型;
[0066]
s4:调用最优小目标检测模型,输入测图片进行检测,输出即为识别的结果。
[0067]
具体的,s1中预处理是指:将现有数据中的misc和dontcare类别去掉,将van,truck和tram这三个样本数量很少的类别合并到car这个大类别中,将person_sitting类别合并到pedestrain类别中,对数据集中的所有图片进行标准化操作,最后得到car、cyclist、pedestrain这三个大类别的图片。本发明使用目前应用较多的交通道路场景数据集kitti,kitti总共包括9个类别:car,van,truck,tram,cyclist,pedestrian,person_sitting,misc和dontcare。
[0068]
具体的,参考图2,所述s2中基于通道重组的轻量化逆瓶颈残差模块具体包括:
[0069]
所述shuffle_res2net_s的输入特征图为x∈rc×h×w,x表示输入特征图,c为输入通
道,h为特征图高度,w为特征图宽度;
[0070]
经过卷积核大小为1
×
1的卷积进行通道上的升维改变,通道维度变成c
′
=c
×
w/64
×
s,得到特征图为x
′
∈rc′×h×w,其中,x
′
表示经过卷积操作后得出的特征图,c
′
表示改变后的通道维度;
[0071]
对x
′
在通道层面c
′
上进行分割,分割成通道大小相等的n个特征子图,用xi表示,其中i∈(1,2,3...n),xi的空间大小与x
′
的大小一致,通道ci是x
′
的1/n;
[0072]
将最后一个分支不经过3
×
3分组卷积核过滤,其余3个分支都经过3
×
3分组卷积的过滤,第一个分支以后的每个分支的输入都包含前一个分支的输出;
[0073]
在包含分组卷积的分支中,在输入特征子图经过分组卷积之后,对提取出的特征子图在通道维度进行重组;
[0074]
将4个分支的输出在通道层面上进行拼接,采用卷积核大小为1
×
1的卷积,进行特征融合并降维,并采用跳跃连接与输入进行元素级相加;
[0075][0076][0077]
其中gconv3(.)表示卷积核大小为3
×
3的分组卷积操作;shuffle表示通道重组操作;conv1×1表示卷积核大小为1
×
1的卷积操作;xi表示每个分支的输入;yi表示每个分支的输出;y表示模块最终的输出。
[0078]
参考图3,普通卷积和分组卷积的区别图。当输入特征图为输出特征图为输入每组特征图的尺寸为c1/g
×h×
w,共有g组。单个卷积核每组的尺寸为c2/g
×h×
w一个卷积核被分成了g组。普通卷积的参数量为k
×k×
c1×
c2,分组卷积的参数量为k2×
c1/g
×
c2/g
×
g=k2×
c1c2/g。可以看出分组卷积的参数量是常规卷积的1/g,其中g是分组的个数。
[0079]
分组卷积也有缺陷的地方,就是组与组之间通道的独立性,缺少交互性,加了分组卷积后虽然参数量有所下降但是精度也下降了,所以为了解决这个问题,在包含分组卷积的分支中,在输入特征子图经过分组卷积之后,对提取出的特征子图在通道维度进行打乱重新分配,让每个组之间的信息彼此打乱实现信息的交流。
[0080]
参考图4,所述通道重组操作具体包括:
[0081]
将提取出的特征子图在通道ci上分成大小相等的g个组。
[0082]
将g个组进行重塑(reshape)成g行h列的矩阵,其中h=ci/g。
[0083]
在将得到的矩阵先进行转置(transpose)操作,再进行fallten操作平铺成一维。实现组间的信息流通。
[0084]
csp_bottle2neck与csp_bottleneck的区别在于虚线矩形框标注的部分,cbs卷积块包含卷积层、归一化层bn、silu激活函数。其中input输入图x∈rc×h×w分成两个分支,两个分支都先经过cbs卷积块,然后上面的分支经过n个基于通道重组的轻量化逆瓶颈残差模块进行多尺度特征的提取,最后将两个分支的输出在通道层面进行拼接concat,之后经过cbs
卷积块得到输出特征图y∈rc×h×w。与原csp_bottleneck相比,csp_bottle2neck更加轻量且具有多尺度特征提取的能力。
[0085]
参考图6,为融合策略方式展示图。csp_bottle2neck与yolov5的主干网络的融合策略:将主干网络中的前面所有的csp1_bottleneck(x)都替换为csp1_bottle2neck(x),最后一层csp2_bottleneck(x)保持不变。csp1和csp2的意思是带有csp1命名的模块包含跳跃连接,带有csp2命名的模块不包含跳跃连接。这里的x表示结构中堆叠瓶颈残差模块的个数。虚线矩形框代表替换的位置,将改进后的主干特征提取网络取名为:multiscale lightweight backbone,msl_backbone;每一层的名称,通道数,参数量如表1所示。为了达到控制变量的效果,融合策略只考虑添加的位置,其余保持不变(如堆叠模块个数)。基于通道重组的轻量化逆瓶颈残差模块的尺度s参数和宽度w参数分别为4和26。
[0086]
表1各主干网络参数量对比
[0087][0088]
参见图7,所述s2中改进的多尺度空洞空间金字塔池化模块包括
[0089]
所述imp_aspp的输入特征图为x∈rc×h×w;
[0090]
将输入特征图分为5个分支,第一个分支采用卷积核大小为1
×
1进行卷积操作;
[0091]
对于第2-4个分支以不同采样率的深度可分离空洞卷积并行采样获取不同尺度的图像上下文信息,并在每个深度可分离空洞卷积后面采样通道洗牌(shuffle)操作。对于分支的输入方面,将前一个分支的输出,与本分支的输入进行拼接作为本分支的输入。同时对于分支的输出方面,将前一个分支的输出,与本分支的输出进行拼接作为本分支的输出;
[0092]
将第5个分支首先经过一个自适应均值池化,然后经过一个1
×
1的卷积层,最终将特征图从1
×
1的大小上采样回原来的尺寸;
[0093]
将5个分支的输出x
′i=rc×h×w,其中i=(1,2...5)在通道层面进行concat拼接,再利用conv(1
×
1)进行降维恢复到原来的通道数量,最终得到输出特征图y∈rc×h×w。
[0094]
imp_aspp的表达式如下所示:
[0095][0096][0097]
式中的所有卷积操作都包含bn层和激活函数,如参考图7虚线矩形框所示。其中xi表示输入的第i个分支,conv1×1(.)表示卷积核大小为1
×
1的卷积,目的是使进入深度可分离空洞卷积的输入通道数减半,防止模型过宽。dwatconv(.)表示卷积核大小为3的深度可分离空洞卷积,shuffle表示通道洗牌操作,concat(.)表示在通道层面进行拼接,pool(.)表示对第5个分支采用自适应均值池化操作,up_sample(.)表示上采样操作。
[0098]
原aspp模块的参数量为2644480,改进后的多尺度空洞空间金字塔池化imp_aspp模块的参数量为1576448,减少了约40%的参数量。并在后续对比实验的验证下,在参数量减少的前提下,imp_aspp比原版aspp给方法带来了更高的检测精度。
[0099]
参考图8,深度可分离空洞卷积由逐通道空洞卷积(depthwise atrous convolution,daconv)和逐点卷积(pointwise convolution,pwconv)构成。和深度可分离卷积的区别就是第一部分的卷积用空洞卷积来代替。将普通空洞卷积一步操作分解为两步完成,参数量下降2/3,极大地节约了存储空间。
[0100]
参见图9,所述s2中改进后用于改善小目标检测性能的模块conv_ns包括:
[0101]
所述conv_ns的输入特征图为x∈rc×h×w;
[0102]
经过卷积核大小为3
×
3,stride=1的卷积进行特征的提取,不改变输入特征图的空间大小,先将通道维数缩小至原来的1/2,变为c/2,得到特征图x
′
=r
c/2
×h×w;
[0103]
对特征图x
′
=r
c/2
×h×w进行重塑操作。特征图变为x”=r
c/2
×
new_h
×
scale
×
new_w
×
scale
,new_h、new_w为之后新生成特征图的高和宽,scale为缩放尺度,这里scale=2,相当于将特征图的空间大小缩小为原来的1/2;
[0104]
对x”进行transpose转置操作成x”=r
c/2
×
scale
×
scale
×
new_h
×
new_w
;
[0105]
转置操作成后再进行重塑操作成y∈r
2c
×
new_h
×
new_w
,在通道维度进行拼接,使得通道维数变为原来的2倍,同时特征图的空间大小缩小为原来的1/2。
[0106]
conv_ns的表达式如下所示:
[0107]
y=reshape(transpose(reshape(conv
3x3
(x))))(5)
[0108]
conv_ns模块可以在不损失图像中信息的情况下,实现类似于stride=2的下采样卷积操作。通过后续实验证明,利用conv_ns模块替换yolov5方法框架中的下采样卷积模块,对基于道路场景下的小目标检测精度有明显改善。
[0109]
参考图10为conv_ns融合策略展示图。yolov5目标检测方法中有两个结构用到了下采样卷积,一个是特征提取主干网络,另一个是特征融合网络。两处结构中的下采样所起到的作用不相同。主干特征提取网络中的下采样是为了特征提取,减少计算量,防止过拟合,同时增加感受野的大小增加全局信息的表述能力;特征融合网络中的下采样是为了不同尺度的特征图能够进行融合。
[0110]
于是conv_ns模块与yolov5方法结合的策略有两种:第一种,将yolov5方法中特征提取主干网络(backbone)中的4个下采样卷积模块替换为conv_ns模块。第二种方法,在上一种的基础上,将yolov5方法中neck网络里的2个下采样卷积模块也都替换为conv_ns模块。融合策略方式如参考图10所示。
[0111]
实验验证:
[0112]
本发明实验采用kitti数据集中的2d目标检测子数据集,通过在此数据集上对所提出的改进模块进行对比消融实验,验证改进模块的有效性,并对检测结果进行权重热力图可视化。
[0113]
本发明方法简称ms-yolov5。
[0114]
1.实验数据集
[0115]
为了证明融合了各个改进模块的ms-yolov5目标检测方法在交通道路场景中较原版yolov5方法是否有提升,于是采用目前应用较多的交通道路场景数据集kitti数据集。
[0116]
kitti数据集中的场景是真实的交通场景(乡村、高速公路、市区),通过利用搭载多种传感器地采集车辆采集得到的。该数据集常用于2d目标检测,3d目标检测,3d跟踪等任务。采用kitti中2d目标检测的子数据集。这个子数据集包括7481张带有标注信息的训练图片和7518张无标注信息的测试图片。本发明使用7481张带有标注信息的图片进行实验。经过数据预处理后kitti中各类别样本数量如表2所示。
[0117]
表2 kitti中各类别样本数量
[0118]
类别carpedestraincyclisttotal数量327504709162739086
[0119]
2.评价标准
[0120]
由于本发明的实验数据集是基于voc数据集的格式制作的,为了评价所设计出来的目标检测方法模型的有效性,采用voc数据集的评价指标。
[0121]
iou(intersection over union):指的是检测框和真实框之间重合面积和取并集面积数值的比值。
[0122]
tp(true positive):当实际值是正样本,目标检测模型预测出来的也是正样本,记为tp。
[0123]
fp(false positive):目标检测模型预测出来的是正样本,但实际真实值是负样本,记为fp。也称误检,预测的bounding box与ground truth的iou小于阈值的检测框(定位错误)或者预测的类型与标签类型不匹配(分类错误)。
[0124]
fn(false negative):目标检测模型预测出来的是负样本,但实际真实值却是正样本,记为fn。也称漏检,指没有检测出的ground truth区域。
[0125]
tn(true negative):当实际值是负样本,目标检测模型预测出来的是负样本,在目标检测中,通常不关注tn。
[0126]
准确度(precision)也叫查准率,是指在识别出的物体中,tp所占的比率。可以用来表示目标检测模型预测某种类别目标的准确性大小。
[0127][0128]
查全率(recall)也叫召回率,指的是识别认为是正确的物体占实际是正确物体的
比率。
[0129][0130]
ap(average precision),指的是以recall为横轴,precision为纵轴的pr曲线所包围的面积,
[0131]
map(mean ap),指的是使用不同的阈值对目标检测后,将所有类别的ap进行求均值,得出的数值。一般目标检测大多采用map(@.5)和map(@.5:.95)作为评价指标。map(@.5)表示在iou阈值为0.5时的map大小,map(@.5:.95)表示iou阈值在离散区间[0.5:0.05:0.95]时的map大小。本发明采用map(@.5)作为评价目标检测模型性能好坏的指标。
[0132]
3.实验设置
[0133]
本发明实验采用kitti数据集中的2d目标检测子数据集,将数据集按trainval:test(8:2),train:val(9:1)比例划分训练集,验证集和测试集。其中train数据集中包含5385张图片,val数据集包含599张图片,test数据集中包含1497张图片。同时由于kitti数据集中的图片基本都是从视频中按帧截取得来的,一个视频中的场景大多数相似。为了防止模型过拟合现象的发生,在划分数据集的时候尽量避免类似的场景即出现训练集中又出现在测试集中。对于所有模型,实验设置都采用:图片输入大小为640
×
640,batch_size设置为10,训练周期(epoch)为100,损失函数loss为giou_loss,初始学习率learning rate=0.001,优化器采用adam,动量momentum=0.937,权重衰减项weight_decay=5e-4,采用余弦退火(cos)有序调整学习率,使用mosica数据增强进行数据集预处理,mosica数据增强只在前70%个epoch开启,例如100个epoch会开启70个epoch。后30个epoch采用普通的数据增强(随机翻转、色域变换等)。原因是由mosaic生成的训练图片,远远脱离自然图片的真实分布,应在快要训练结束的时候使图片恢复到自然分布状态。
[0134]
4.实验结果分析
[0135]
为了验证提改进的模块加入到yolov5方法中在道路场景下的表现,分别做了以下几组对比消融实验,如下表所示:
[0136]
表3对比消融实验注:method1:数据重采样;model1:msl_backbone;model2:aspp;model3:imp_
aspp;model4:conv_ns策略一;model5:conv_ns策略二。
[0137]
上表中所做对比消融实验的验证集损失曲线如图所示,随着训练epoch数的增加,损失曲线最终趋于收敛。
[0138]
表中第一行为yolov5作为本发明的baseline方法。首先数据集方面,cyclist、pedestrain的数量较car相比少了很多,然后这两个类别又是比较难识别的小尺度目标。就导致采用yolov5目标检测方法在kitti上训练出来的模型更偏向于学习和预测car类别的目标,而忽略另外两个类别,最终导致模型整体精度被拉低。
[0139]
表中第二行为采用数据重采样后进行的实验。在数据集预处理中加入数据重采样操作,使得送入到模型训练的图片各个类别数量达到均衡,模型对各个类别的目标都得到了充分的训练,使得模型能够学习到各个目标的信息。
[0140]
表中第三行在msl_backbone替换原backbone进行的实验。通过结果可以看出msl_backbone能更好的提取出图片中的多尺度信息。
[0141]
表中第四、五行为将aspp与的imp_aspp分别替换msl_backbone中的spp。通过结果可以发现,两种模块都有所提升,但imp_aspp提升的更多。原因是采用了imp_aspp结构使得主干网络能够提取到更多的多尺度信息,为后续neck网络特征融合提供融合了多尺度信息的特征。
[0142]
表中第六、七行为将conv_s按照参考图10中的融合策略所做的实验。通过结果可以发现,融合策略二检测精度更高。说明提出的conv_ns能够都满足yolov5中两处结构中的下采样的功能要求。测试集的精度较上组实验提升了0.58%。原因是采用了conv_ns模块代替stride=2的卷积结构,可以不损失图片中的细节信息,对小尺度目标检测起到改善。
[0143]
参考图11展示了分别采用ms-yolov5模型和原版yolov5(baseline)模型,对测试图片进行检测并对预测结果进行热力图可视化。奇数行为ms-yolov5的结果,偶数行为原版yolov5(baseline)的结果。第一列为热力图可视化的结果,第二列为检测结果。从热力图的对比可以发现:ms-yolov5比原版yolov5(baseline)更加能关注到被检测的物体本身,表现为在热力图中该物体上的颜色更加深,代表权重越大,同时更能关注到一些小尺度目标。从检测结果的对比可以发现:ms-yolov5对小样本数量的目标以及远距离的小尺度目标的检测效果要比原版yolov5(baseline)要好。
[0144]
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。
技术特征:
1.基于多尺度信息融合的小目标检测方法,其特征在于,包括如下步骤:s1:获取现有数据集,并对数据集进行预处理,经过预处理后的所有图片构成训练集;s2:构建小目标检测模型,所述小目标检测模型采用yolov5的主干特征提取网络作为基础模型,将基于通道重组的轻量化逆瓶颈残差模块shuffle_res2net_s与yolov5主干特征提取网络中csp_bottleneck里的残差结构进行替换,定义为msl_backbone模型;将改进的多尺度空洞空间金字塔池化模块imp_aspp与yolov5中的空间金字塔池化模块spp进行替换;将改进后用于改善小目标检测性能的模块conv_ns用于替换yolov5网络中的下采样模块;s3:对输入数据集数据引入数据重采样操作,并进行训练,待最优收敛后保存模型参数得最优小目标检测模型;s4:调用最优小目标检测模型,输入测图片进行检测,输出即为识别的结果。2.如权利要求1所述的基于多尺度信息融合的小目标检测方法,其特征在于:s1中预处理是指:将现有数据中的misc和dontcare类别去掉,将van,truck和tram这三个样本数量很少的类别合并到car这个大类别中,将person_sitting类别合并到pedestrain类别中,对数据集中的所有图片进行标准化操作,最后得到car、cyclist、pedestrain这三个大类别的图片。3.如权利要求1或2所述的基于多尺度信息融合的小目标检测方法,其特征在于:所述s2中基于通道重组的轻量化逆瓶颈残差模块包括:所述shuffle_res2net_s的输入特征图为x∈r
c
×
h
×
w
,x表示输入特征图,c为输入通道,h为特征图高度,w为特征图宽度;经过卷积核大小为1
×
1的卷积进行通道上的升维改变,通道维度变成c
′
=c
×
w/64
×
s,得到特征图为x
′
∈r
c
′×
h
×
w
,其中,x
′
表示经过卷积操作后得出的特征图,c
′
表示改变后的通道维度;对x
′
在通道层面c
′
上进行分割,分割成通道大小相等的n个特征子图,用x
i
表示,其中i∈(1,2,3...n),x
i
的空间大小与x
′
的大小一致,通道c
i
是x
′
的1/n;将最后一个分支不经过3
×
3分组卷积核过滤,其余3个分支都经过3
×
3分组卷积的过滤,第一个分支以后的每个分支的输入都包含前一个分支的输出;在包含分组卷积的分支中,在输入特征子图经过分组卷积之后,对提取出的特征子图在通道维度进行重组;将4个分支的输出在通道层面上进行拼接,采用卷积核大小为1
×
1的卷积,进行特征融合并降维,并采用跳跃连接与输入进行元素级相加;合并降维,并采用跳跃连接与输入进行元素级相加;其中gconv3(.)表示卷积核大小为3
×
3的分组卷积操作;shuffle表示通道重组操作;
conv1×1表示卷积核大小为1
×
1的卷积操作;x
i
表示每个分支的输入;y
i
表示每个分支的输出;y表示模块最终的输出。4.如权利要求3所述的基于多尺度信息融合的小目标检测方法,其特征在于:所述通道重组操作具体包括:将提取出的特征子图在通道c
i
分成大小相等的g个组;将g个组进行重塑成g行h列的矩阵,其中h=c
i
/g;在将得到的矩阵先进行转置操作,再进行fallten操作平铺成一维。5.如权利要求4所述的基于多尺度信息融合的小目标检测方法,其特征在于:所述s2中改进的多尺度空洞空间金字塔池化模块包括所述imp_aspp的输入特征图为x∈r
c
×
h
×
w
;将输入特征图分为5个分支,第一个分支采用卷积核大小为1
×
1进行卷积操作;对于第2-4个分支以不同采样率的深度可分离空洞卷积并行采样获取不同尺度的图像上下文信息,并在每个深度可分离空洞卷积后面采用道洗牌操作;对于分支的输入方面,将前一个分支的输出,与本分支的输入进行拼接作为本分支的输入;同时对于分支的输出方面,将前一个分支的输出,与本分支的输出进行拼接作为本分支的输出;将第5个分支首先经过一个自适应均值池化,然后经过一个1
×
1的卷积层,最终将特征图从1
×
1的大小上采样回原来的尺寸;将5个分支的输出其中i=(1,2...5)在通道层面进行concat拼接,再利用conv(1
×
1)进行降维恢复到原来的通道数量,最终得到输出特征图y∈r
c
×
h
×
w
。6.如权利要求5所述的基于多尺度信息融合的小目标检测方法,其特征在于:所述s2中改进后用于改善小目标检测性能的模块conv_ns包括:所述conv_ns的输入特征图为x∈r
c
×
h=w
;经过卷积核大小为3
×
3,stride=1的卷积进行特征的提取,不改变输入特征图的空间大小,先将通道维数缩小至原来的1/2,变为c/2,得到特征图x
′×
r
c/2
×
h
×
w
;对特征图x
′
=r
c/2
×
h
×
w
进行重塑操作;特征图变为x”=r
c/2
×
new_h
×
scale
×
new_w
×
scale
,new_h、new_w为之后新生成特征图的高和宽,scale为缩放尺度;对x”进行transpose转置操作成x
”′
=r
c/2
×
scale
×
scale
×
new_h
×
new_w
;转置操作成后再进行重塑操作成y∈r
2c
×
new_h
×
new_w
,在通道维度进行拼接,使得通道维数变为原来的2倍,同时特征图的空间大小缩小为原来的1/2。7.如权利要求6所述的所述的基于多尺度信息融合的小目标检测方法,其特征在于:所述s3中重采样操作的具体步骤为:为训练集中每个类别分配一个学习权重;计算出训练集中每张图片中各个类别的数量,之后根据各个类别的学习权重去计算出每张图片的采样权重;根据每张图片的采样权重,通过random.choices()函数生成图片索引,在每次数据加载时按照各个索引进行加载图片。
技术总结
本发明涉及基于多尺度信息融合的小目标检测方法,包括如下步骤:获取现有数据集,并对数据集进行预处理,经过预处理后的所有图片构成训练集;构建小目标检测模型,该小目标检测模型采用YOLOv5的主干特征提取网络作为基础模型,对其中的几个模块进行替换;对输入数据集数据引入数据重采样操作,并进行训练,待最优收敛后保存模型参数得最优小目标检测模型;调用最优小目标检测模型,输入测图片进行检测,输出即为识别的结果。通过实验验证结果得出该方法提升了对多尺度特征的提取能力,同时有效的改善了小尺度目标的检测性能,测试精度较现有方法均有所提升。较现有方法均有所提升。较现有方法均有所提升。
技术研发人员:沈志熙 李俊北 金其坚 张洪田 吴玥
受保护的技术使用者:重庆大学
技术研发日:2023.05.05
技术公布日:2023/9/14
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/