一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于YOLOv4改进算法的大视场目标检测方法

2022-09-04 09:30:26 来源:中国专利 TAG:

一种基于yolov4改进算法的大视场目标检测方法
技术领域
1.本发明涉及检测算法技术领域,特别是涉及一种基于yolov4改进算法的大视场目标检测方法。


背景技术:

2.随着遥感卫星、摄像设备的发展,大视场图像中所反应的信息也越来越丰富,目标检测有着重要的研究价值。大视场图像中目标的检测算法研究在信息安全、视频监管、无人驾驶、图像搜索等军事方面具有重要的作用。针对大视场图像存在分辨率高、目标较小、背景复杂等问题,传统的目标检测方法速度慢、鲁棒性较差,而随着深度学习中卷积神经网络通过采取方向迭代和加深网络的方式,在计算机视觉尤其是目标检测领域有着非常好的效果,大视场图像的目标检测效果也随之得到改善。
3.随着深度学习的兴起,基于卷积神经网络的目标检测算法弥补了传统算法在检测精度、速度方面的不足。然而,该类算法在大视场目标检测中存在以下问题:一是卷积神经网络本身计算复杂、生成模型较大,高分辨图像输入会带来数据量的陡增,占用设备大量的存储空间;二是大视场高分辨率图像多数目标较小、背景复杂,会导致网络提取特征不足,目标信息区分不明显,影响算法模型的检测精度;三是算法对计算机算力要求高,在无gpu的嵌入式设备上难以满足实时性的要求,限制了大视场目标检测算法的应用。


技术实现要素:

4.鉴于上述问题,本发明结合大视场图像目标的特点和对卷积神经网络的研究,提出一种检测速度快、准确率高的检测算法——基于yolov4改进算法的大视场目标检测方法,该方法能够实现高效准确地大视场目标检测。
5.为实现上述目的,本发明采取如下的技术方案:
6.一种基于yolov4改进算法的大视场目标检测方法,包括以下步骤:
7.步骤一:构建大视场图像数据集;
8.步骤二:对所述大视场图像数据集中的源图像s进行局部颜色直方图匹配预处理,并对预处理后的图像进行标注,将全部标注后的图像划分为训练集和测试集;
9.步骤三:构建改进的yolov4网络模型,所述改进的yolov4网络模型包括高精度特征提取子网络、加强型特征多尺度融合子网络和轻量型目标分类子网络,所述高精度特征提取子网络使用csp结构对输入图像进行目标特征提取,所述加强型特征多尺度融合子网络包括三个多尺度融合预测网络层,结合密集连接对提取的目标特征进行多尺度融合预测,得到三个尺度的融合特征,所述轻量型目标分类子网络基于三个尺度的融合特征进行目标分类检测;
10.步骤四:初始化所述改进的yolov4网络模型的训练参数后,设置迭代次数和学习率,向初始化后的网络输入所述训练集,用一致性监督损失的反向梯度传播方法更新网络参数,以损失值和ap值作为评价指标,训练后得到最优网络模型;
11.步骤五:将待识别的大视场图像输入到所述最优网络模型中,所述最优网络模型输出对应的大视场目标检测结果。
12.与现有技术相比,本发明具有以下有益效果:
13.本发明提出以目标检测领域精度和速度权衡较好的yolov4(you only look once v4)为基础的改进的大视场目标检测方法,该方法主要在检测精度和轻量化两个方面对网络进行改进。在提高检测精度方面,对图像进行预处理和改进多尺度融合预测网络,前者通过局部直方图均衡化将目标和背景区分,充分提取目标信息,后者通过改变卷积方式和通道变换加强了目标特征关联,解决原网络在大视场目标检测过程中精度不足的问题。在模型轻量化方面,在分类层增加轻量化网络模块,结合全局平均池化层和评估型目标函数加强目标特征学习并裁剪多余的卷积,减少现有网络模型的计算量和参数量,解决基于卷积神经网络的大视场目标检测算法中模型过大和速度慢的问题。本发明在提高检测精度和速度的同时,降低了对计算机硬件和算力的依赖,可以在无gpu的嵌入式设备上运行,节省了设备的存储空间,满足现实生活中目标检测速度的需求,可以用于将大视场目标的检测算法应用于移动端等场合,极大提高了军事设备的便携性和智能化。
附图说明
14.图1为本发明的一种基于yolov4改进算法的大视场目标检测方法的流程图;
15.图2为局部颜色直方图匹配的示意图;
16.图3为标注后大视场图像数据集的格式图;
17.图4为改进的yolov4网络模型的网络结构图;
18.图5为改进后分组卷积通道特征变换图;
19.图6为密集连接网络结构图;
20.图7为轻量化模块的网络结构图;
21.图8为yolov4网络和本发明的最优网络模型在测试集的部分测试结果图。
具体实施方式
22.下面将结合附图及较佳实施例对本发明的技术方案进行详细描述。
23.在其中一个实施例中,如图1所示,本发明提供一种基于yolov4改进算法的大视场目标检测方法,该方法包括以下步骤:
24.步骤一:构建大视场图像数据集,该大视场图像数据集由若干个包含目标的大视场图像组成。
25.步骤二:对大视场图像数据集中的源图像s进行局部颜色直方图匹配预处理,并对预处理后的图像进行标注,将全部标注后的图像划分为训练集和测试集,其中训练集用于对改进的yolov4网络模型进行训练。
26.针对大视场目标图像分辨率高、视野范围宽、目标像素小、不易训练的问题,在训练之前,对大视场图像数据集中的源图像s进行局部颜色直方图匹配预处理,预处理的过程包括以下步骤:
27.利用局部颜色直方图匹配的方法对大视场图像数据集中的源s进行图像质量增强,使图像质量加以强化,并将大视场图像切割成小图像作为网络的输入。
28.在局部颜色直方图匹配的基础上,将源图像s划分为m*n个面积相等的矩形块,如图2所示:
29.s=[s1,s2,...,s
m*n
]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
[0030]
分别与矩形块进行直方图对应,从而得到每个块的源图像s的概率分布函数:
[0031][0032]
其中(0,ri)为直方图区间范围,为概率密度,m*n为矩形块个数。然后,依次得到所有对应矩形块的逆映射:
[0033][0034]
将经过匹配后的每个矩形块ti(i=1,2,...,m*n)作为网络的输入,则可得到经过匹配后的图像t:
[0035]
t=[t1,t2,...,t
m*n
]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(4)
[0036]
然后将经过匹配后的图像t的图片尺寸调整为448
×
448,命名方式起始为0.001.jpg,放到文件夹jpegimages里。
[0037]
本发明利用一种局部颜色直方图匹配的分解方法增强图像输入,将网络提取图像特征点的方式改进为多通道分组卷积,配合通道特征变换多尺度预测以加强各通道之间的语义关联,获得了更多的深度语义信息,提高了检测的准确率,解决了传统特征提取方法在大视场图像目标检测准确率不足的问题。
[0038]
接下来,使用开源标注工具labelimg对预处理后的图像进行标注。使用开源标注工具labelimg将经过匹配后的图像t标注为.xml和.txt两种文本,其中.xml文本的命名对应图像的命名顺序,放在文件夹annotation中,.txt文本分为用于训练的文件train.txt和用于测试的文件test.txt,文件train.txt和文件test.txt里面包含图像的相对路径,二者放在文件夹imagesets的main文件夹中,标注后的文件中会保存图像中各个目标的类别、尺寸和位置等信息,label.txt存放目标标签,如图3所示。
[0039]
步骤三:构建改进的yolov4网络模型,所述改进的yolov4网络模型包括高精度特征提取子网络、加强型特征多尺度融合子网络和轻量型目标分类子网络,其中高精度特征提取子网络使用csp结构对输入图像进行目标特征提取,加强型特征多尺度融合子网络包括三个多尺度融合预测网络层,结合密集连接对提取的目标特征进行多尺度融合预测,得到三个尺度的融合特征,轻量型目标分类子网络基于三个尺度的融合特征进行目标分类检测。
[0040]
(1)高精度特征提取子网络
[0041]
yolov4网络输入图像使用csp(cross stage partial)结构进行目标特征提取,经过三个多尺度融合预测的网络层进行预测和分类。然而针对大视场目标特征提取纹理信息不够充分,特征融合阶段产生大量迭代参数,降低了目标检测的精度和速度的问题,本发明提供一种改进的yolov4网络模型,其包括特征提取、特征多尺度融合和目标分类三个子网络,如图4所示。改进整体网络的特征提取部分由8个深度卷积模块、5个组卷积模块、3个通道变换模块、9个正则化模块和3个密集连接模块组成。大视场图像中目标对比度较弱,特征细节不明显,在高精度特征提取子网络中,图像数据集通过图像增强和通道切割变换处理,
以三通道的图像形式作为输入,分别为x,y,z,现将每组通道分成3等份,构成数组{x1,x2,x3,y1,y2,y3,z1,z2,z3},通过特征图通道混洗将3
×
3组通道构成3
×
3的矩阵,如图5所示,通过通道矩阵转置操作,将卷积分组特征转换位置后再平坦化,分回给各个组卷积作为下一层的输入,在计算量不增加的情况下,使特征充分融合。在每个通道用一个3
×
3卷积用来对空间区域范围进行特征提取,1
×
1标准卷积是将逐深度卷积所提取特征进行深度融合,同时在特征获取阶段和多尺度上采样前使用密集连接的网络结构,采用跳跃连接的方式整合每一阶段的特征,在各个输入端加上前一层的输出特征,从而达到维度的扩充,提高检测精度,还可以减少用于多尺度融合产生的参数量。两者之间的关系如公式(5)所示:
[0042]
x
l
=h
l
([x0,x1,...,x
l-1
])
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(5)
[0043]
假设网络共有l层,其中,x0为网络的输入,x
l
为网络中第l层的输出,x
l-1
为第l-1层的输出,h
l
()为作用在第l层的非线性变换,如图所示。
[0044]
(2)加强型特征多尺度融合子网络
[0045]
加强型特征多尺度融合子网络用于对于高精度特征提取子网络输出的特征信息进行多尺度变换,进一步将特征融合。多尺度融合预测选择的3个尺度分别为i1、i2和i3,如图4所示,其中i1的尺度为14
×
14,i2的尺度为28
×
28,i3的尺度为56
×
56,目标数据集经过k-means聚类方法,得到锚框大小分别为(13,20)、(21,32)、(27,49)、(31,54)、(34,65)、(47,90)。网络由特征金字塔{p1、p2、p3、p4}的结构组成,通过上采样调整小尺度特征图分辨率,与上层大尺度预测层融合得到新特征图fk(k=1,2,3),融合图像中的每个像素点相加得到,从而得到最终的融合图像,分别为:f1=i1,f2=i1×
2 i2,f3=i1×
4 i2×
2 i3,分别在三组尺度预测层的支路设计密集连接的卷积形式,它们之间用由1
×
1大小的点卷积组成,作用是增加不同层之间目标信息的关联度,增加密集连接后再进行上采样,可以在融合不同层细节信息的同时,去除多余的参数。适当调整预测层前的卷积层,减少模型过拟合严重的问题。在训练过程中,网络用一致性监督损失函数损失来预测类别。一致性监督损失函数如公式(6)所示:
[0046]
l
yolo
=λ(l
cls,m
(pm,t
*
) β[t
*
>0]l
loc,m
(dm,b
*
)) (l
cls,p
(p,t
*
) β[t
*
>0]l
loc,p
(d,b
*
))
ꢀꢀꢀꢀ
(6)
[0047]
其中,l
cls,m
和l
loc,m
是特征金字塔{p1、p2、p3、p4}的辅助损耗函数,l
cls,p
和l
loc,p
是特征金字塔{p1、p2、p3、p4}的原始损耗函数,pm,dm和p,d分别是中间层和最终金字塔层的预测,t
*
和b
*
分别是基本类别标签和回归目标,λ是用于平衡辅助损耗和原始损耗的权重,β是用来平衡分类和定位损失的权重。[t
*
>0]的定义如公式(7)所示:
[0048][0049]
(3)轻量型目标分类子网络
[0050]
轻量型目标分类子网络包括三个用于接收加强型特征多尺度融合子网络输出的融合特征的分类器,每一个分类器包括轻量化模块,其中轻量化模块包括全局平均池化层(global average pool)、卷积层和bn层,如图7所示。
[0051]
轻量化模块中全局平均池化层的作用是将每一个特征通道上的信息平均成一个值,对应的计算如公式(8)所示:
[0052][0053]
其中,h、w、c分别代表输入卷积的高、宽和特征通道数,x
i,j
∈r1×1×c代表前一层的输出数据。全局平均池化层主要功能是获取模型通道上的信息,为得到特征通道间的相关性,需要基于全部数据集对模型进行训练。
[0054]
bn层的本质是归一化网络,将提取到的目标进行归一化处理,同时进行特征权重的重映射,以达到分类的目的。bn层的变换公式如下:
[0055][0056][0057]
其中,z
in
和分别表示bn层的输入、输出,μb和σb表示输入平均值和标准差,ε为偏移量,γ和β为仿射变换参数,利用此参数与输出通道的乘积为通道重要性的依据,对低分冗余的权重进行删减。评估权重通道信息重要性的目标函数的公式为:
[0058][0059]
其中,(f(x,m),y)为通道信息的有效项,x,y分别为网络的输入和目标,m为网络的训练权重,g(γ)是缩放因子上的惩罚项,l,λ是用来约束方程的超参数。通过评估目标函数在改进网络的精度损失函数之后进一步起到网络轻量化的作用。
[0060]
通过引入全局平均池化和评估模型目标函数进行网络通道参数裁剪,在保证识别率的同时,提高模型分类检测速度,解决了传统特征提取方法在大视场图像中目标检测实时性不足的问题。
[0061]
步骤四:初始化改进的yolov4网络模型的训练参数后,设置迭代次数和学习率,向初始化后的网络输入训练集,用一致性监督损失的反向梯度传播方法更新网络参数,以损失值和ap值作为评价指标,训练后得到最优网络模型。通过该步骤训练出的最优网络模型计算量和参数量较低,可以应用在算力和空间较小的嵌入式设备中。
[0062]
进一步地,以损失值和ap值作为评价指标进行训练时,在训练过程中每4000次迭代保存一次此时的网络模型,将损失值作为评价指标,迭代过程中迭代致损失函数的阈值为0.05以下停止训练,若遇到损失函数不收敛的情况,则调整一次网络参数直到损失函数收敛,并选择ap值(平均精准度)最高值时得到的训练好的模型作为最优网络模型。
[0063]
下面以训练软件环境为ubuntu18.04,硬件配置为nvidia gtx1060 8g显存为例,详细说明改进的yolov4网络模型的训练过程:初始化改进网络的训练参数,向初始化后的网络输入调整后的448
×
448的.jpg格式大视场目标图像,并进行前向传播。其中.cfg配置文件里的参数设置为:训练迭代次数为100000次,学习率设为0.001,用一致性监督损失的反向梯度传播方法,更新网络参数,设置3个尺度进行多尺度融合预测。在训练过程途中每4000次迭代保存一次此时的网络模型,将损失值作为评价指标,迭代过程中迭代致损失函数的阈值为0.05以下停止训练,若遇到损失函数不收敛的情况,调整一次网络参数直到损失函数收敛。将ap值作为选择最优网络模型的指标,在61000次迭代时得到的算法模型的ap
值最高,此时得到的训练好的模型被认为是该改进算法的最优网络模型。
[0064]
步骤五:将待识别的大视场图像输入到最优网络模型中,最优网络模型输出对应的大视场目标检测结果,大视场目标检测结果包括检测目标的位置、类别和置信度等信息。
[0065]
下面利用步骤二所得的测试集对训练后得到的最优网络模型进行目标检测实验和模型评估。
[0066]
测试环境为无gpu的树莓派3b ,利用选择的最优网络模型对大视场图像测试样本(测试集)进行测试验证,得到检测目标的位置和类别,部分测试结果图如图8所示,其中图(a)、图(c)、图(e)为使用传统yolov4网络进行测试后的测试结果图,图(b)、图(d)、图(f)为对应的使用本发明中的最优网络模型进行测试后的测试结果图,在图(a)~图(f)中,用实线框标注出检测目标,并且在每一个实线框的上方标注有检测目标的类别(图中检测目标的类别为plane)和置信度。实验两种算法在测试集上的整体检测指标如表1所示。
[0067]
表1改进前后算法对比分析
[0068][0069]
实验结果表明,本发明的最优网络模型在对小目标、高曝光和复杂背景的检测在精确度和召回率上都高于之前的yolov4网络,且训练模型时间短,检测速度更快。
[0070]
本发明所提出的基于yolov4改进算法的大视场目标检测方法主要包括三方面的改进:
[0071]
1)一种局部颜色直方图匹配的分解增强图像输入方法,针对大视场目标图像分辨率高、视野广、目标小不易训练的问题,在训练之前使用局部颜色直方图匹配的方法对图像进行进一步增强,并将大视场图像切割成小图像作为网络的输入,有利于目标与背景的区分和提取。
[0072]
2)一种高精度多尺度目标提取网络,针对大视场目标细节信息提取不足的问题,改进三组多尺度融合预测层结构,在每一个支路第一次上采样前的四个卷积块之间设计密集连接方式,可以增强融合不同尺度目标,丰富特征细节信息,融合中进行特征通道转置变换,加强特征关联,提高预测准确率。
[0073]
3)一种轻量级大视场目标分类网络,通过增加包含全局平均池化层的轻量化模块,调整通道结构减少权重模型的特征冗余,降低网络参数量。
[0074]
本发明所提出的基于yolov4改进算法的大视场目标检测方法具有以下有益效果:
[0075]
本发明提出以目标检测领域精度和速度权衡较好的yolov4(you only look once v4)为基础的改进的大视场目标检测方法,该方法主要在检测精度和轻量化两个方面对网络进行改进。在提高检测精度方面,对图像进行预处理和改进多尺度融合预测网络,前者通过局部直方图均衡化将目标和背景区分,充分提取目标信息,后者通过改变卷积方式和通道变换加强了目标特征关联,解决原网络在大视场目标检测过程中精度不足的问题。在模型轻量化方面,在分类层增加轻量化网络模块,结合全局平均池化层和评估型目标函数加强目标特征学习并裁剪多余的卷积,减少现有网络模型的计算量和参数量,解决基于卷积神经网络的大视场目标检测算法中模型过大和速度慢的问题。本发明在提高检测精度和速
度的同时,降低了对计算机硬件和算力的依赖,可以在无gpu的嵌入式设备上运行,节省了设备的存储空间,满足现实生活中目标检测速度的需求,可以用于将大视场目标的检测算法应用于移动端等场合,极大提高了军事设备的便携性和智能化。
[0076]
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0077]
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献