一种面向复杂场景基于浅层特征增强的小目标检测方法

未命名 08-29 阅读:121 评论:0


1.本发明涉及图像处理技术领域,具体涉及一种面向复杂场景基于浅层特征增强的小目标检测方法。


背景技术:

2.在图像处理中,很多时候需要识别由很少像元组成的目标,这些目标通常被定义为小目标。小目标检测在很多实际应用中是非常重要的:例如,从鸟瞰图中发现早期的小火源有助于防止严重的森林火灾,从无人机拍摄的图像中定位较小的关键标志在灾害应急救援中具有重要作用。因此,正确快速地检测小目标具有重要的实用价值,并引起了众多研究者的广泛关注。
3.目前,最新的小目标检测模型是基于深度学习的方法进行改进的。由于小目标检测与目标的浅层特征密切相关,所以许多小目标检测模型试图从图像中提取出定位信息更多的浅层特征。一种有效的方法是增加检测头的数量,因为它减少了网络下采样阶段的特征损失。另一种常见的方法是引入注意力机制,比如融合来自不同骨干网络输出层的信息时,在特征融合部分使用注意力模块来突出传统目标检测模型忽略的浅层特征。
4.在小目标检测中,浅层特征检测头往往比深层特征检测头更加的有效。因此,如果添加额外浅层特征检测头的同时丢弃掉深层特征检测头,那么模型的复杂度可以保持不变,并且可以提取出更多的浅层特征。在每个骨干网络输出层的后面添加注意力模块可以直接过滤不必要的原始信息,并突出与小目标密切相关的浅层特征。此外,由于主干网络传递的原始特征在特征融合部分进行连接,所以特征融合部分的参数数量远大于骨干网络中的参数数量,如果将注意力模块从特征融合部分移动到骨干网络中,则可以减少模型参数的数量。
5.本发明为进一步提高复杂场景下小目标的检测精度,提出了一种面向复杂场景基于浅层特征增强的小目标检测方法。


技术实现要素:

6.本发明的目的是面向复杂场景下难以识别出的小目标,解决现有检测方法识别小目标困难、模型复杂度高等问题。本发明在yolov5模型的基础上提出了一种面向复杂场景基于浅层特征增强的小目标检测方法:1)为了挑选具有代表性的原始特征并减少冗余的模型参数,在每个骨干网络输出层的后面直接添加注意力模块;2)为了提取更多的浅层特征,在特征融合部分使用浅层特征检测头代替深层特征检测头;3)为了减轻模型的计算负担,使用了跨级部分连接的思想;4)为了加快模型的收敛速度,将ciou损失函数替换为siou损失函数。
7.本发明采用的技术方案包括以下步骤:一种面向复杂场景基于浅层特征增强的小目标检测方法,所述方法包括以下步骤:
8.步骤a:获取复杂场景下的小目标图像,并划分为训练集与测试集,然后加载模型,
并对相关参数进行初始化;
9.步骤b:对训练集样本中的每一幅图像进行预处理,并将预处理后的图像加载到模型中;
10.步骤c:在模型骨干网络中进行图像特征的提取,并将提取后的特征送入到特征融合部分进行多尺度融合;
11.步骤d:根据融合后的特征,计算出模型的损失函数,然后最小化损失函数,通过梯度下降算法更新模型的参数;
12.步骤e:训练完保存最优的模型参数权重,用于后续模型的测试;
13.步骤f:对测试集的图像进行预测,根据步骤e所述训练好的模型参数权重,预测出目标的位置与类别,然后通过非极大值抑制得到最终的预测结果。
14.步骤b所述的对训练集样本中的每一幅图像进行预处理,具体为:
15.步骤b1、将四张图像通过随机缩放、随机裁剪、随机排布的方式拼接成一张图像,这不仅丰富了图像的背景,还大大增加了模型读入图像的数量;
16.步骤b2、当定义的锚框尺寸不适合训练集时,使用k均值算法对训练集的边界框标签进行聚类,使得生成的锚框尺寸更加适合训练集图像;
17.步骤b3、将读入的图像缩放成640
×
640像元固定大小,统一为固定大小的尺寸,模型能一次性处理更多的图像,检测的速度会得到提升。
18.步骤c所述在模型骨干网络中进行图像特征的提取,并将提取后的特征送入到特征融合部分进行多尺度融合具体为:
19.步骤c1、将步骤b所述预处理后的样本图像作为骨干网络的输入,在骨干网络每个输出层的后面添加注意力模块:该注意力模块由输入、通道注意力模块、空间注意力模块和输出组成,假设输入特征图为f∈rc×h×w,然后经过通道注意力模块后产生特征图mc∈rc×1×1,将结果mc与输入特征图f相乘形成输出特征图再将f

作为输入经过空间注意力模块后产生特征图ms∈r1×h×w,最终将结果ms与输入特征图f

相乘形成最后的输出特征图其中表示元素级相乘。通道注意力模块更加关注输入图像中的类别信息,空间注意力模块更加关注输入图像中的位置信息,两种模块相结合能够改变原始特征通道的权重信息,从而增强有效特征并抑制无效特征。此外,在骨干网络而不是特征融合部分加入注意力模块可以进一步减少模型的参数,因为特征融合部分包含的参数比骨干网络的更多;
20.步骤c2、将原始sppf模块分为两个部分来减轻计算负担:第一部分使用原始的sppf模块进行处理,在多个尺度上提取更多的隐藏特征,第二部分只使用一个卷积模块进行处理,最后将这两个部分的输出连接在一起,并传递到特征融合部分;
21.步骤c3、将骨干网络提取到的特征进行多尺度融合:在特征融合部分中,本发明去掉了panet中最大尺度的检测头,同时添加了一个小尺度的检测头,这有效地从图像中提取了更丰富的浅层信息,并减少了由附加检测头增加的额外参数。融合过程具体如下:首先,骨干网络第二层到第五层输出的精细特征被传递到span特征金字塔中。接下来,在这个特征金字塔中,使用转置卷积对大尺度特征图进行上采样,并与旁边的小尺度特征图进行连接。然后,使用gsconv对小尺度特征图进行下采样,并与其旁边的大尺度特征图进行连接。最后,将下采样过程中融合后的特征传递到检测头进行预测。
22.步骤d所述计算出模型的损失函数具体为:
23.步骤d1、损失函数由三部分组成。第一部分是回归损失,这里使用siou损失函数计算,而不是常用的ciou损失函数。siou损失考虑到了角度损失,并且可以对远离真实框的预测边界框添加更多的惩罚。siou损失函数如下:
[0024][0025]
其中,l
iou
是预测框与真实框的交并比,δ是角度和距离损失,ω是形状损失;
[0026]
步骤d2、损失函数的第二部分是分类损失l
cls
,它代表目标的分类误差,l
cls
的值越小表示预测标签越接近真实标签;
[0027]
步骤d3、损失函数的第三部分是置信度损失l
obj
,它被用来排除空的预测框。总损失函数是这三种损失的线性加权组合:
[0028]
l=w
siou
l
siou
+w
cls
l
cls
+w
obj
l
obj
[0029]
其中,w
siou
,w
cls
,w
obj
分别代表回归损失、分类损失和置信度损失的权重。
附图说明
[0030]
图1为本发明实施例的实现流程图。
[0031]
图2为本发明实施例的完整模型的示意图。
[0032]
图3为本发明实施例的注意力模块的示意图。
[0033]
图4为本发明实施例的跨级部分连接与sppf模块集成后的示意图。
[0034]
图5为本发明实施例的特征融合部分的示意图。
[0035]
图6为本发明的实施例与其他方法之间的可视化结果对比图。
具体实施方式
[0036]
为使本发明实施例的目的、技术方案和优势更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
[0037]
如图1、图2所示,为解决现有检测方法识别小目标困难、模型复杂度高等问题,本实施例在yolov5模型的基础上提出了一种面向复杂场景基于浅层特征增强的小目标检测方法:1)为了挑选具有代表性的原始特征并减少冗余的模型参数,在每个骨干网络输出层的后面直接添加注意力模块;2)为了提取更多的浅层特征,在特征融合部分使用浅层特征检测头代替深层特征检测头;3)为了减轻模型的计算负担,使用了跨级部分连接的思想;4)为了加快模型的收敛速度,将ciou损失函数替换为siou损失函数。
[0038]
所述方法具体包括以下步骤:
[0039]
步骤a:获取复杂场景下的小目标图像,并划分为训练集与测试集,然后加载模型,并对相关参数进行初始化;
[0040]
步骤b:对训练集样本中的每一幅图像进行预处理,并将预处理后的图像加载到模型中;
[0041]
步骤c:在模型骨干网络中进行图像特征的提取,并将提取后的特征送入到特征融合部分进行多尺度融合;
[0042]
步骤d:根据融合后的特征,计算出模型的损失函数,然后最小化损失函数,通过梯
度下降算法更新模型的参数;
[0043]
步骤e:训练完保存最优的模型参数权重,用于后续模型的测试;
[0044]
步骤f:对测试集的图像进行预测,根据步骤e所述训练好的模型参数权重,预测出目标的位置与类别,然后通过非极大值抑制得到最终的预测结果。
[0045]
步骤b所述的对训练集样本中的每一幅图像进行预处理,具体为:
[0046]
步骤b1、将四张图像通过随机缩放、随机裁剪、随机排布的方式拼接成一张图像,这不仅丰富了图像的背景,还大大增加了模型读入图像的数量;
[0047]
步骤b2、当定义的锚框尺寸不适合训练集时,使用k均值算法对训练集的边界框标签进行聚类,使得生成的锚框尺寸更加适合训练集图像;
[0048]
步骤b3、将读入的图像缩放成640
×
640像元固定大小,统一为固定大小的尺寸,模型能一次性处理更多的图像,检测的速度会得到提升。
[0049]
步骤c所述在模型骨干网络中进行图像特征的提取,并将提取后的特征送入到特征融合部分进行多尺度融合具体为:
[0050]
步骤c1、将步骤b所述预处理后的样本图像作为骨干网络的输入,在骨干网络每个输出层的后面添加注意力模块:如图3所示,该注意力模块由输入、通道注意力模块、空间注意力模块和输出组成,假设输入特征图为f∈rc×h×w,然后经过通道注意力模块后产生特征图mc∈rc×1×1,将结果mc与输入特征图f相乘形成输出特征图再将f

作为输入经过空间注意力模块后产生特征图ms∈r1×h×w,最终将结果ms与输入特征图f

相乘形成最后的输出特征图其中表示元素级相乘。通道注意力模块更加关注输入图像中的类别信息,空间注意力模块更加关注输入图像中的位置信息,两种模块相结合能够改变原始特征通道的权重信息,从而增强有效特征并抑制无效特征。此外,在骨干网络而不是特征融合部分加入注意力模块可以进一步减少模型的参数,因为特征融合部分包含的参数比骨干网络的更多;
[0051]
步骤c2、如图4所示,将原始sppf模块分为两个部分来减轻计算负担:第一部分使用原始的sppf模块进行处理,在多个尺度上提取更多的隐藏特征,第二部分只使用一个卷积模块进行处理,最后将这两个部分的输出连接在一起,并传递到特征融合部分;
[0052]
步骤c3、如图5所示,将骨干网络提取到的特征进行多尺度融合:在特征融合部分中,本发明去掉了panet中最大尺度的检测头,同时添加了一个小尺度的检测头,这有效地从图像中提取了更丰富的浅层信息,并减少了由附加检测头增加的额外参数。融合过程具体如下:首先,骨干网络第二层到第五层输出的精细特征被传递到span特征金字塔中。接下来,在这个特征金字塔中,使用转置卷积对大尺度特征图进行上采样,并与旁边的小尺度特征图进行连接。然后,使用gsconv对小尺度特征图进行下采样,并与其旁边的大尺度特征图进行连接。最后,将下采样过程中融合后的特征传递到检测头进行预测。
[0053]
步骤d所述计算出模型的损失函数具体为:
[0054]
步骤d1、损失函数由三部分组成。第一部分是回归损失,这里使用siou损失函数计算,而不是常用的ciou损失函数。siou损失考虑到了角度损失,并且可以对远离真实框的预测边界框添加更多的惩罚。siou损失函数如下:
[0055]
[0056]
其中,l
iou
是预测框与真实框的交并比,δ是角度和距离损失,ω是形状损失;
[0057]
步骤d2、损失函数的第二部分是分类损失l
cls
,它代表目标的分类误差,l
cls
的值越小表示预测标签越接近真实标签;
[0058]
步骤d3、损失函数的第三部分是置信度损失l
obj
,它被用来排除空的预测框。总损失函数是这三种损失的线性加权组合:
[0059]
l=w
siou
l
siou
+w
cls
l
cls
+w
obj
l
obj
[0060]
其中,w
siou
,w
cls
,w
obj
分别代表回归损失、分类损失和置信度损失的权重。
[0061]
如图6所示,本发明选择了一些具有代表性的图像来直观地展示本发明的优势,图中的第一列和第二列分别展示了yolov5和本发明的识别结果。以图中的第一行为例,yolov5只识别出道路远方的几辆车,而本发明的方法则成功标记了几乎所有的车辆。此外,在图中的第二行,本发明不仅成功识别了道路尽头被yolov5忽略的车辆,而且还纠正了一些被yolov5错误标记为“汽车”的物体。例如,图像右上角建筑物屋顶旁边的物体被yolov5错误地标记为“汽车”,这个错误的标识在本发明的识别结果中被删除。
[0062]
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。

技术特征:
1.一种面向复杂场景基于浅层特征增强的小目标检测方法,其特征在于,所述方法包括以下步骤:步骤a:获取复杂场景下的小目标图像,并划分为训练集与测试集,然后加载模型,并对相关参数进行初始化;步骤b:对训练集样本中的每一幅图像进行预处理,并将预处理后的图像加载到模型中;步骤c:在模型骨干网络中进行图像特征的提取,并将提取后的特征送入到特征融合部分进行多尺度融合;步骤d:根据融合后的特征,计算出模型的损失函数,然后最小化损失函数,通过梯度下降算法更新模型的参数;步骤e:训练完保存最优的模型参数权重,用于后续模型的测试;步骤f:对测试集的图像进行预测,根据步骤e所述训练好的模型参数权重,预测出目标的位置与类别,然后通过非极大值抑制得到最终的预测结果。2.根据权利要求1所述的方法,其特征在于,步骤b所述的对训练集样本中的每一幅图像进行预处理,具体为:步骤b1、将四张图像通过随机缩放、随机裁剪、随机排布的方式拼接成一张图像,这不仅丰富了图像的背景,还大大增加了模型读入图像的数量;步骤b2、当定义的锚框尺寸不适合训练集时,使用k均值算法对训练集的边界框标签进行聚类,使得生成的锚框尺寸更加适合训练集图像;步骤b3、将读入的图像缩放成640
×
640像元固定大小,统一为固定大小的尺寸,模型能一次性处理更多的图像,检测的速度会得到提升。3.根据权利要求1所述的方法,其特征在于,步骤c所述在模型骨干网络中进行图像特征的提取,并将提取后的特征送入到特征融合部分进行多尺度融合具体为:步骤c1、将权利要求1中步骤b所述预处理后的样本图像作为骨干网络的输入,在骨干网络每个输出层的后面添加注意力模块:该注意力模块由输入、通道注意力模块、空间注意力模块和输出组成,假设输入特征图为f∈r
c
×
h
×
w
,然后经过通道注意力模块后产生特征图m
c
∈r
c
×1×1,将结果m
c
与输入特征图f相乘形成输出特征图再将f

作为输入经过空间注意力模块后产生特征图m
s
∈r1×
h
×
w
,最终将结果m
s
与输入特征图f

相乘形成最后的输出特征图其中表示元素级相乘;通道注意力模块更加关注输入图像中的类别信息,空间注意力模块更加关注输入图像中的位置信息,两种模块相结合能够改变原始特征通道的权重信息,从而增强有效特征并抑制无效特征;此外,在骨干网络而不是特征融合部分加入注意力模块可以进一步减少模型的参数,因为特征融合部分包含的参数比骨干网络的更多;步骤c2、将原始sppf模块分为两个部分来减轻计算负担:第一部分使用原始的sppf模块进行处理,在多个尺度上提取更多的隐藏特征,第二部分只使用一个卷积模块进行处理,最后将这两个部分的输出连接在一起,并传递到特征融合部分;步骤c3、将骨干网络提取到的特征进行多尺度融合:在特征融合部分中,本发明去掉了panet中最大尺度的检测头,同时添加了一个小尺度的检测头,这有效地从图像中提取了更
丰富的浅层信息,并减少了由附加检测头增加的额外参数;融合过程具体如下:首先,骨干网络第二层到第五层输出的精细特征被传递到span特征金字塔中;接下来,在这个特征金字塔中,使用转置卷积对大尺度特征图进行上采样,并与旁边的小尺度特征图进行连接;然后,使用gsconv对小尺度特征图进行下采样,并与其旁边的大尺度特征图进行连接;最后,将下采样过程中融合后的特征传递到检测头进行预测。4.根据权利要求1所述的方法,其特征在于,步骤d所述计算出模型的损失函数具体为:步骤d1、损失函数由三部分组成;第一部分是回归损失,这里使用siou损失函数计算,而不是常用的ciou损失函数;siou损失考虑到了角度损失,并且可以对远离真实框的预测边界框添加更多的惩罚;siou损失函数如下:其中,l
iou
是预测框与真实框的交并比,δ是角度和距离损失,ω是形状损失;步骤d2、损失函数的第二部分是分类损失l
cls
,它代表目标的分类误差,l
cls
的值越小表示预测标签越接近真实标签;步骤d3、损失函数的第三部分是置信度损失l
obj
,它被用来排除空的预测框;总损失函数是这三种损失的线性加权组合:l=w
siou
l
siou
+w
cls
l
cls
+w
obj
l
obj
其中,w
siou
,w
cls
,w
obj
分别代表回归损失、分类损失和置信度损失的权重。

技术总结
本发明涉及图像处理技术领域,具体涉及一种面向复杂场景基于浅层特征增强的小目标检测方法,主要解决了现有检测方法识别小目标困难、模型复杂度高等问题。本发明首先将注意力模块直接添加到主干网络输出层的后面,用来过滤冗余信息并选择具有代表性的原始浅层特征。接下来,利用跨级部分连接的思想减轻了模型的计算负担。然后,在特征融合部分使用浅层特征检测头代替深层特征检测头,提取更多浅层特征的同时减少了模型的参数量。最后,在训练阶段使用SIoU损失函数加快模型的收敛速度。本发明的优点在于不增加原模型参数量的情况下就能提高其对小目标的检测精度。提高其对小目标的检测精度。提高其对小目标的检测精度。


技术研发人员:白鹤翔 杨民虎
受保护的技术使用者:山西大学
技术研发日:2023.04.24
技术公布日:2023/8/28
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐