CN114821492A - 一种基于YOLOv4的道路车辆检测系统及方法 - Google Patents
一种基于YOLOv4的道路车辆检测系统及方法 Download PDFInfo
- Publication number
- CN114821492A CN114821492A CN202210370567.2A CN202210370567A CN114821492A CN 114821492 A CN114821492 A CN 114821492A CN 202210370567 A CN202210370567 A CN 202210370567A CN 114821492 A CN114821492 A CN 114821492A
- Authority
- CN
- China
- Prior art keywords
- road vehicle
- training
- network
- file
- loss
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/52—Surveillance or monitoring of activities, e.g. for recognising suspicious objects
- G06V20/54—Surveillance or monitoring of activities, e.g. for recognising suspicious objects of traffic, e.g. cars on the road, trains or boats
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本申请涉及一种基于YOLOv4的道路车辆检测系统及方法,所述道路车辆检测系统包括道路车辆数据采集模块、道路车辆检测模型和终端设备,所述道路车辆检测模型为改进的YOLOv4算法模型,所述改进的YOLOv4算法模型的主干网络以MobileVit网络作为主干特征提取网络,颈部Neck包括空间金字塔池化层SPP和预测层PANet;模型的定位损失函数为CDIOU损失函数。本发明采用GridMask图像增强方法进行图片预处理,并通过训练好的道路车辆检测模型进行道路车辆检测,改善了现有的YOLOv4模型精度低,检测速度慢,不够轻量型的问题,在提升检测效率的同时,保证了模型的检测精度。
Description
技术领域
本申请涉及车辆检测技术领域,具体涉及一种基于YOLOv4的道路车辆检测系统及方法。
背景技术
近年来,基于深度学习的目标检测技术在智能视频监控、无人驾驶和机器人导航等领域有着广泛的应用。随着中国汽车保有数量的飞速增长,违反交通法规事件的数量越来越多,这给交通管理人员带来了很大的压力,通过监控视频对道路上的车辆进行快速准确地检测是构建智能交通系统必不可少的部分。
基于深度学习的车辆检测主流算法大致可以分为一阶段方法和两阶段方法。一阶段方法直接对图像中的先验框进行类别预测和回归,这种方法检测速度较快,但检测精度相对较低,代表算法有YOLO系列。两阶段方法通过候选框生成器从图像先验框中提取候选框,然后将获得的候选框进行分类和回归预测结果。两阶段算法检测精度较高,但因候选框提取过程计算复杂导致实时性较弱,代表算法有R-CNN系列。现有的方法存在采用基于Faster RCNN的智能车道路前方车辆检测方法实现了较高的检测精度,但检测速度较低难以达到实时性要求。现有的方法存在采用改进SSD算法实现了对航拍城市道路车辆自动识别与定位,虽然基本能满足实时性要求,但模型的检测精度较低。YOLO系列算法因实时性较强,深受工程领域的喜爱,但是检测精度以及模型大小限制了YOLO系列算法的应用范围。
发明内容
本发明的目的在于,提供一种基于YOLOv4的道路车辆检测系统及方法,采用MobileVit网络替代CSPDarknet53网络作为改进的YOLOv4算法模型的主干网络,并引入CDIOU损失函数作为改进的YOLOv4算法模型的定位损失函数,提高改进的YOLOv4算法模型的实时性和检测精确度。
本发明采取的技术方案是:一种基于YOLOv4的道路车辆检测系统,包括道路车辆数据采集模块、道路车辆检测模型和终端设备;所述道路车辆数据采集模块为彩色摄像机,用于实时采集道路车辆图像数据,并将采集到的图像数据输入到道路车辆检测模型;所述道路车辆检测模型识别并输出图像中的车辆信息,所述道路车辆检测模型为改进的YOLOv4算法模型,所述改进的YOLOv4算法模型的主干网络以MobileVit网络作为基础网络,所述MobileVit网络的层数为十层,所述MobileVit网络包括相互堆叠MobileNetv2模块和MobileVit模块;所述MobileVit网络的第七层、第九层和第十层的输出与所述改进的YOLOv4算法模型的预测层PANet连接;所述改进的YOLOv4算法模型的损失函数Loss包括定位损失函数losscdiou、置信度损失函数lossconfidence和类别损失函数lossclass,其中定位损失函数losscdiou为CDIOU损失函数;所述终端设备包括处理器和存储器,存储器上存储了所述道路车辆检测模型进行道路车辆检测时所需的程序,处理器用于运行储存在存储器上的程序。
进一步地,所述损失函数Loss、定位损失函数losscdiou、置信度损失函数lossconfidence和类别损失函数lossclass的具体表达式如下:
Loss=losscdiou+lossconfidence+lossclass
其中,S2为图像中划分的网格数;B为每个网格中包含的先验框数;为第i个网格的第j个先验框是否有目标,有目标取1,没有目标取0;为第i个网格的第j个先验框是否没有目标,没有目标取1,有目标取0;λnoobj为不含目标的先验框置信度误差权重;Ci j为第i个网格的第j个预测框的置信度;为第i个网格的第j个真实框的置信度;Pi j为第i个网格的第j个预测框的置信度;为第i个网格的第j个真实框的置信度;classes表示所有目标类别的集合,c表示classes中的某一个目标类别;AE、BF、CG、DH分别代表着预测框ABCD和真实框EFGH四个对应顶点之间的距离,AG为包围预测框ABCD和真实框EFGH的最小矩形的对角线长度。
进一步地,所述MobileVit网络的激活函数为SILU激活函数和RELU激活函数。
本发明采取的另一技术方案是:一种基于YOLOv4的道路车辆检测方法,其特征在于,包括如下步骤:
步骤S1:构建如前一技术方案所述改进的YOLOv4算法模型;
步骤S2:将道路路面图片分为车辆信息训练图片、车辆信息验证图片和车辆信息测试图片,构建VOC格式的车辆信息数据集,得到训练集、验证集和测试集;
步骤S3:使用步骤S2中得到的训练集对所述改进的YOLOv4算法模型进行训练,训练过程包括两个阶段,第一训练阶段冻结所述改进的YOLOv4算法模型的主干网络,不进行参数更新,对其余网络层进行训练并更新参数,第二训练阶段训练所有的网络层并进行参数更新;第一训练阶段和第二训练阶段的训练方法相同,具体训练步骤如下:
步骤S301:对训练集中的图片使用GridMask图像增强方法进行预处理,对图像中的信息进行离散有序的删除,减少区域过度删除和过渡保留;
步骤S302:通过K-means算法对训练集中的真实框进行聚类计算,得到先验框的大小;再将经过预处理的训练集图片输入步骤S1构建的改进的YOLOv4算法模型,分别通过MobileVit网络充分提取图片的局部特征和全局特征、空间金字塔池化层SPP增加网络感受野获得更丰富的特征、预测层PANet融合浅层特征和深层特征、损失函数优化,最后由头部Head输出对图片中先验框的判断与调整数据,并对先验框进行调整,得到预测框;
步骤S303:采用DIOU NMS算法对预测框设定置信度阈值和分类阈值后,按照分数从高到低进行排序,选择分数最高的检测框,再去除分数低的检测框,完成改进的YOLOv4算法模型的训练;
步骤S4:采用训练好的改进的YOLOv4算法模型对实时采集的道路车辆图像数据进行检测,识别图像中车辆目标。
进一步地,所述步骤S3中第一训练阶段设置迭代次数为37400,修改学习率为0.001;第二训练阶段设置初始学习率为0.0001,迭代次数不确定,直到所述改进的YOLOv4算法模型收敛,即当改进的YOLOv4算法模型的输出日志中的Loss变量不再减小的时候,停止第二训练阶段。
进一步地,所述步骤S2中,车辆信息包括类别信息和位置信息,类别信息包括公交车bus、汽车car和卡车truck三大类,位置信息包括真实框的中心点坐标、真实框的宽度和高度。
进一步地,所述步骤S2的具体方法为:
步骤S201:创建文件voc_classes.txt,添加车辆数据集标签,使用labellmg图片标注工具完成图像的标注,生成PASCAL VOC格式的xml标注文件;
步骤S202:使用PASCAL VOC数据集的目录结构,建立车辆信息文件夹Vehicle,Vehicle文件夹包含三个子文件夹,分别是Annotations文件夹、ImageSets文件夹和JPEGImages文件夹;其中,Annotations文件夹里放入所有的xml标记文件;ImageSets文件中存放数据集划分的txt文件;JPEGImages文件夹放入所有的车辆信息训练图片,车辆信息验证图片和车辆信息测试图片;
步骤S203:依据PASCAL VOC的格式要求,对放入JPEGImages文件夹中的图片逐一命名,对每张图片对应的标注文件进行类别信息和位置信息的标注,并保存为与对应图片相同文件名的xml文件,再放入Annotations文件夹中;
步骤S204:生成训练集、验证集和测试集文件,在车辆信息文件夹Vehicle下建立labels子文件夹,labels子文件夹内包含每一张图片的yolo格式的标注文件,yolo格式的标注文件由xml标注文件转换而来;
步骤S205:在labels子文件夹中,建立2007_train.txt文件,2007_val.text文件和2007_test.txt文件,三个文件分别对应给出训练集、验证集和测试集文件的清单,清单中包含所有图片的文件路径和文件名;在ImageSets文件夹中建立文件夹Main,在文件夹Main中建立train.txt文件、val.text文件和test.txt文件,三个文件中包含每个图片的文件名,不包含文件路径和扩展名信息。
进一步地,所述步骤S4中,MobileNetv2模块将输入的特征图经过一个1×1的卷积操作完成对通道数的扩张后,经过一个3×3的深度可分离卷积操作减少计算量,再经过一个1×1的卷积操作对通道数进行缩减并与MobileNetv2模块输入端的跳跃链相加得到MobileNetv2模块输出的特征图。
进一步地,所述步骤S4中,MobileVit模块将输入的特征图经过一个n×n和一个1×1的卷积操作编码局部空间信息和扩展特征的通道数后,经过L个Transformer操作提取全局特征,再经过1×1的卷积对通道数的压缩,最后与MobileVit模块输入的特征进行特征融合,再经过一个n×n的卷积实现通道数下降得到最终的输出特征。
本发明的有益技术效果在于:
(1)采用MobileVit网络替代CSPDarknet53网络作为改进的YOLOv4算法模型的主干网络进行特征提取,使改进的YOLOv4算法模型更加轻量化,提高了模型的检测速度;卷积神经网络具有只需要较少的参数量就可以学习到局部特征提取的能力,VisionTransformer能够学习到全局特征提取的能力,但需要大量的参数进行学习,MobileVit网络结合卷积神经网络和Vision Transformer的优势对现有的YOLOv4算法模型进行改进,得到本发明使用的改进的YOLOv4算法模型,兼顾了模型检测的实时性和精确度;
(2)本发明将GridMask图像增强方法引入数据预处理阶段,对图像中的信息进行离散的有序的删除,从而减少区域过度删除和过度保留的情况,进而实现对车辆目标模拟部分遮挡;通过改进的YOLOv4算法模型对含有部分遮挡目标的图像数据进行训练,能够提高改进的YOLOv4算法模型对遮挡目标的检测能力;将模型的训练过程分为两个阶段,实现模型的迁移学习,缩短训练时间;
(3)采用CDIOU损失函数替换CIoU损失函数,CDIOU损失函数包括定位损失函数、置信度损失函数和类别损失函数;CDIOU损失函数能够在不增加计算量的情况下加快最小化预测框和真实框中心点距离的速度,并且提升改进的YOLOv4算法模型的检测精度。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本发明实施例改进的YOLOv4算法模型的网络结构示意图;
图2为本发明实施例CDIoU损失函数中先验框和真实框的位置关系示意图;
图3为本发明实施例的方法流程图;
图4为本发明实施例GridMask图像增强方法的原理图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明并不限于下面公开的具体实施例的限制。
除非另作定义,此处使用的技术术语或者科学术语应当为本申请所述领域内具有一般技能的人士所理解的通常意义。本专利申请说明书以及权利要求书中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。同样,“一个”或者“一”等类似词语也不表示数量限制,而是表示存在至少一个。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也相应地改变。
本发明实施例采用了一种基于YOLOv4的道路车辆检测系统,包括道路车辆数据采集模块、道路车辆检测模型和终端设备;所述道路车辆数据采集模块为彩色摄像机,用于实时采集道路车辆图像数据,并将采集到的图像数据输入到道路车辆检测模型;所述道路车辆检测模型识别并输出图像中的车辆信息。所述道路车辆检测模型为改进的YOLOv4算法模型,具体网络结构如图1所示,所述改进的YOLOv4算法模型包括主干网络、颈部Neck和头部Head,主干网络以MobileVit网络作为基础网络,所述MobileVit网络的层数为十层,所述MobileVit网络包括相互堆叠MobileNetv2模块和MobileVit模块;颈部Neck包括空间金字塔池化层SPP和预测层PANet,所述MobileVit网络的第七层、第九层和第十层的输出与所述改进的YOLOv4算法模型的预测层PANet连接;头部Head输出先验框调整的参数。所述改进的YOLOv4算法模型的损失函数Loss包括定位损失函数losscdiou、置信度损失函数lossconfidence和类别损失函数lossclass,其中定位损失函数losscdiou为CDIOU损失函数;所述终端设备包括处理器和存储器,存储器上存储了所述道路车辆检测模型进行道路车辆检测时所需的程序,处理器用于运行储存在存储器上的程序。
MobileVit网络为图像分类网络,在进行道路车辆检测时,需要提取语义信息和位置信息。MobileVit网络中下采样模块末端操作采用3×3的卷积核步长为2,对输入的图像进行下采样,减少特征参数,提取更多的语义信息。MobileVit网络在第十层提取的特征信息已经是下采样的32倍,继续提取特征将会丢失大量的位置信息,且后续网络涉及到分类任务。因此,本发明实施例将MobileVit网络第十层之后的网络结构舍弃,将剩下的部分作为改进的YOLOv4算法模型主干特征提取网络。为了实现多尺度预测,将MobileVit网络的第七层、第九层和第十层提取的特征输入PANet网络中进行特征融合来获取丰富的特征信息。采用MobileVit网络替代CSPDarknet53网络作为改进的YOLOv4算法模型的主干特征提取网络,进行特征提取,使改进的YOLOv4算法模型更加轻量化,提高了模型的检测速度;
采用MobileVit网络替代CSPDarknet53网络作为改进的YOLOv4算法模型的主干特征提取网络进行特征提取,使改进的YOLOv4算法模型更加轻量化,提高了模型的检测速度;卷积神经网络具有只需要较少的参数量就可以学习到局部特征提取的能力,VisionTransformer能够学习到全局特征提取的能力,但需要大量的参数进行学习,MobileVit网络结合卷积神经网络和Vision Transformer的优势对改进的YOLOv4算法模型进行改进,兼顾了模型检测的实时性和精确度。
表1为本发明实施例的MobileVit网络结构,所述MobileVit网络的激活函数为SILU激活函数和RELU激活函数。
表1本发明实施例的MobileVit网络结构
空间金字塔池化层SPP连接在MobileVit网络的末端,通过四个不同尺度的池化层,来扩大感受野,分离出最显著的上下文特征。为了提升改进的YOLOv4算法模型对小目标的检测性能,预测层网络使用基于PANet的特征融合网络。在特征提取过程中,浅层网络和深层网络提取的特征信息是不同的。浅层特征学习更多的目标的位置信息,而深层特征学习更多的是目标的语义信息。预测层PANet融合了深层与浅层的特征信息,从而实现了特征增强,同时避免了单一特征信息的使用造成的大量信息损失。PANet网络设计了两条特征融合路径,一条自下而上,另外一条自上而下,使得PANet网络能将浅层特征和深层特征进行充分的融合,提升模型对小目标的检测性能,从而实现多尺度预测。头部Head输出的数据是对图像中预设先验框的判断与调整,涉及到判断先验框是否含有目标以及含有哪一类目标,以及对于含有目标先验框寸尺和位置的调整数据。
在本发明实施例中,所述损失函数Loss、定位损失函数losscdiou、置信度损失函数lossconfidence和类别损失函数lossclass的具体表达式如下:
Loss=losscdiou+lossconfidence+lossclass (1)
其中,S2为图像中划分的网格数;B为每个网格中包含的先验框数;为第i个网格的第j个先验框是否有目标,有目标取1,没有目标取0;为第i个网格的第j个先验框是否没有目标,没有目标取1,有目标取0;λnoobj为不含目标的先验框置信度误差权重,由于在实际训练时含目标的先验框极少,先验框中正样本和负样本极度不平衡,所以在本发明实施例中λnoobj设置为0.001;Ci j为第i个网格的第j个预测框的置信度;为第i个网格的第j个真实框的置信度;Pi j为第i个网格的第j个预测框的置信度;为第i个网格的第j个真实框的置信度;classes表示所有目标类别的集合,c表示classes中的某一个目标类别,在本发明实施例中,classes内包含公交车bus、汽车car和卡车truck三个类别,c则为公交车bus、汽车car和卡车truck中的其中一个类别;AE、BF、CG、DH分别代表着图2中预测框ABCD和真实框EFGH四个对应顶点之间的距离,AG为包围预测框ABCD和真实框EFGH的最小矩形的对角线长度。CDIOU损失函数能够在不增加计算量的情况下加快最小化预测框和真实框中心点距离的速度,并且提升YOLOv4算法模型的检测精度。
如图3所示,本发明实施例还采用了一种基于YOLOv4的道路车辆检测方法,使用上述基于YOLOv4的道路车辆检测系统进行道路车辆检测,包括如下步骤:
步骤S1:构建如上述技术方案所述的改进的YOLOv4算法模型。
步骤S2:将道路路面图片分为车辆信息训练图片、车辆信息验证图片和车辆信息测试图片,构建VOC格式的车辆信息数据集,得到训练集、验证集和测试集;车辆信息包括类别信息和位置信息,类别信息包括公交车bus、汽车car和卡车truck三大类,位置信息包括真实框的中心点坐标、真实框的宽度和高度。具体方法为:
步骤S201:创建文件voc_classes.txt,添加车辆数据集标签,使用labellmg图片标注工具完成图像的标注,生成PASCAL VOC格式的xml标注文件;
步骤S202:使用PASCAL VOC数据集的目录结构,建立车辆信息文件夹Vehicle,Vehicle文件夹包含三个子文件夹,分别是Annotations文件夹、ImageSets文件夹和JPEGImages文件夹;其中,Annotations文件夹里放入所有的xml标记文件;ImageSets文件中存放数据集划分的txt文件;JPEGImages文件夹放入所有的车辆信息训练图片,车辆信息验证图片和车辆信息测试图片;
步骤S203:依据PASCAL VOC的格式要求,对放入JPEGImages文件夹中的图片逐一命名,对每张图片对应的标注文件进行类别信息和位置信息的标注,并保存为与对应图片相同文件名的xml文件,再放入Annotations文件夹中;
步骤S204:生成训练集、验证集和测试集文件,在车辆信息文件夹Vehicle下建立labels子文件夹,labels子文件夹内包含每一张图片的yolo格式的标注文件,yolo格式的标注文件由xml标注文件转换而来;
步骤S205:在labels子文件夹中,建立2007_train.txt文件,2007_val.text文件和2007_test.txt文件,三个文件分别对应给出训练集、验证集和测试集文件的清单,清单中包含所有图片的文件路径和文件名;在ImageSets文件夹中建立文件夹Main,在文件夹Main中建立train.txt文件、val.text文件和test.txt文件,三个文件中包含每个图片的文件名,不包含文件路径和扩展名信息。训练集用于训练模型,验证集用于考核模型训练的效果,测试集则用于检测模型最终的性能。
步骤S3:使用步骤S2中得到的训练集对所述改进的YOLOv4算法模型进行训练,训练过程包括两个阶段,第一训练阶段冻结所述改进的YOLOv4算法模型的主干网络,不进行参数更新,对其余网络层进行训练并更新参数,第二训练阶段训练所有的网络层并进行参数更新;第一训练阶段和第二训练阶段的训练方法相同,具体训练步骤如下:
步骤S301:对训练集中的图片使用GridMask图像增强方法进行预处理,对图像中的信息进行离散有序的删除,减少区域过度删除和过渡保留。GridMask图像增强方法的流程如图4所示,输入的图像可以表示为X(X∈RH×W×C),H、W、C分别表示输入图像的高、宽和通道数。GridMask生成一个与输入图像尺寸一致的mask并表示为M,M中灰色部分对应的像素值为1,黑色部分的像素值为0。GridMask数据增强操作将输入图像与mask矩阵点乘,结果为灰色区域的信息被保留,黑色区域的信息被删除。
如图4(b)所示,虚线框是mask的一个单元,mask由4个参数定义,分别为r、d、x、y。假设图像尺寸为1×1,r表示的是一个单元中灰色短边的占比,d代表的是一个单元的边长,x和y分别表示图像的边界到第一个完整单元的距离。
通过GridMask图像增强方法对输入的图像中的信息进行离散的有序的删除,在信息过度删除与信息过度保留之间取得一个有效的平衡,进而实现对车辆目标模拟部分遮挡。将含有部分遮挡目标的图像数据输入改进的YOLOv4算法模型进行训练,提高改进的YOLOv4算法模型对遮挡目标的检测能力。
步骤S302:通过K-means算法对训练集中的真实框进行聚类计算,得到先验框的大小;再将经过预处理的训练集图片输入步骤S1构建的改进的YOLOv4算法模型,首先通过MobileVit网络充分提取图片的局部特征和全局特征,MobileVit网络中MobileNetv2模块和MobileVit模块提取特征的过程如下:
MobileNetv2模块将输入的特征图经过一个1×1的卷积操作完成对通道数的扩张后,经过一个3×3的深度可分离卷积操作减少计算量,再经过一个1×1的卷积操作对通道数进行缩减并与MobileNetv2模块输入端的跳跃链相加得到MobileNetv2模块输出的特征图。
MobileVit模块将输入的特征图经过一个n×n和一个1×1的卷积操作编码局部空间信息和扩展特征的通道数后,经过L个Transformer操作提取全局特征,其中L的取值参照表1;再经过1×1的卷积对通道数的压缩,最后与MobileVit模块输入的特征进行特征融合,再经过一个n×n的卷积实现通道数下降得到最终的输出特征。
通过MobileVit网络充分提取图片的局部特征和全局特征后,再经过空间金字塔池化层SPP增大网络感受野获得更丰富的特征、预测层PANet融合浅层特征和深层特征和损失函数优化,最后由头部Head输出对图片中先验框的判断与调整数据,并对先验框进行调整,得到预测框。
步骤S303:采用DIOU NMS算法对预测框设定置信度阈值和分类阈值后,按照分数从高到低进行排序,选择分数最高的检测框,再去除分数低的检测框,完成改进的YOLOv4算法模型的训练。通过对预测框设置置信度阈值和分类阈值后,可以删除大量不含目标或者含部分目标的预测框,采用DIOU NMS算法则可在在去除其他冗余框的同时,选择对于当前目标最合适的预测框,从而升检测框的准确度。
步骤S4:采用训练好的改进的YOLOv4算法模型对实时采集的道路车辆图像数据进行检测,识别图像中车辆目标。
在本发明实施例中第一训练阶段设置迭代次数为37400,修改学习率为0.001;第二训练阶段设置初始学习率为0.0001,迭代次数不确定,直到所述改进的YOLOv4算法模型收敛,即当改进的YOLOv4算法模型的输出日志中的Loss变量不再减小的时候,停止第二训练阶段。
本发明实施例通过使用改进的YOLOv4算法模型、采用CDIOU损失函数替换CIoU损失函数对YOLOv4算法模型进行优化并采用GridMask图像增强方法进行数据预处理,改善了现有的YOLOv4模型精度低,检测速度慢,不够轻量型的问题,在提升检测效率的同时,保证了模型的检测精度。相比现有的YOLOv4模型,本发明实施例的检测准确率更高、检测速度更快,具有良好的实效性和精确度。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种基于YOLOv4的道路车辆检测系统,其特征在于,包括道路车辆数据采集模块、道路车辆检测模型和终端设备;所述道路车辆数据采集模块为彩色摄像机,用于实时采集道路车辆图像数据,并将采集到的图像数据输入到道路车辆检测模型;所述道路车辆检测模型识别并输出图像中的车辆信息,所述道路车辆检测模型为改进的YOLOv4算法模型,所述改进的YOLOv4算法模型的主干网络以MobileVit网络作为基础网络,所述MobileVit网络的层数为十层,所述MobileVit网络包括相互堆叠MobileNetv2模块和MobileVit模块;所述MobileVit网络的第七层、第九层和第十层的输出与所述改进的YOLOv4算法模型的预测层PANet连接;所述改进的YOLOv4算法模型的损失函数Loss包括定位损失函数losscdiou、置信度损失函数lossconfidence和类别损失函数lossclass,其中定位损失函数losscdiou为CDIOU损失函数;所述终端设备包括处理器和存储器,存储器上存储了所述道路车辆检测模型进行道路车辆检测时所需的程序,处理器用于运行储存在存储器上的程序。
2.根据权利要求1所述的一种基于YOLOv4的道路车辆检测系统,其特征在于,所述损失函数Loss、定位损失函数losscdiou、置信度损失函数lossconfidence和类别损失函数lossclass的具体表达式如下:
Loss=losscdiou+lossconfidence+lossclass
其中,S2为图像中划分的网格数;B为每个网格中包含的先验框数;为第i个网格的第j个先验框是否有目标,有目标取1,没有目标取0;为第i个网格的第j个先验框是否没有目标,没有目标取1,有目标取0;λnoobj为不含目标的先验框置信度误差权重;为第i个网格的第j个预测框的置信度;为第i个网格的第j个真实框的置信度;Pi j为第i个网格的第j个预测框的置信度;为第i个网格的第j个真实框的置信度;classes表示所有目标类别的集合,c表示classes中的某一个目标类别;AE、BF、CG、DH分别代表着预测框ABCD和真实框EFGH四个对应顶点之间的距离,AG为包围预测框ABCD和真实框EFGH的最小矩形的对角线长度。
3.根据权利要求1所述的一种基于YOLOv4的道路车辆检测系统,其特征在于,所述MobileVit网络的激活函数为SILU激活函数和RELU激活函数。
4.一种基于YOLOv4的道路车辆检测方法,其特征在于,包括如下步骤:
步骤S1:构建如权利要求1~3任一权利要求所述改进的YOLOv4算法模型;
步骤S2:将道路路面图片分为车辆信息训练图片、车辆信息验证图片和车辆信息测试图片,构建VOC格式的车辆信息数据集,得到训练集、验证集和测试集;
步骤S3:使用步骤S2中得到的训练集对所述改进的YOLOv4算法模型进行训练,训练过程包括两个阶段,第一训练阶段冻结所述改进的YOLOv4算法模型的主干网络,不进行参数更新,对其余网络层进行训练并更新参数,第二训练阶段训练所有的网络层并进行参数更新;第一训练阶段和第二训练阶段的训练方法相同,具体训练步骤如下:
步骤S301:对训练集中的图片使用GridMask图像增强方法进行预处理,对图像中的信息进行离散有序的删除,减少区域过度删除和过渡保留;
步骤S302:通过K-means算法对训练集中的真实框进行聚类计算,得到先验框的大小;再将经过预处理的训练集图片输入步骤S1构建的改进的YOLOv4算法模型,分别通过MobileVit网络充分提取图片的局部特征和全局特征、空间金字塔池化层SPP增加网络感受野获得更丰富的特征、预测层PANet融合浅层特征和深层特征、损失函数优化,最后由头部Head输出对图片中先验框的判断与调整数据,并对先验框进行调整,得到预测框;
步骤S303:采用DIOU NMS算法对预测框设定置信度阈值和分类阈值后,按照分数从高到低进行排序,选择分数最高的检测框,再去除分数低的检测框,完成改进的YOLOv4算法模型的训练;
步骤S4:采用训练好的改进的YOLOv4算法模型对实时采集的道路车辆图像数据进行检测,识别图像中车辆目标。
5.根据权利要求4所述的一种基于YOLOv4的道路车辆检测方法,所述步骤S3中第一训练阶段设置迭代次数为37400,修改学习率为0.001;第二训练阶段设置初始学习率为0.0001,迭代次数不确定,直到所述改进的YOLOv4算法模型收敛,即当改进的YOLOv4算法模型的输出日志中的Loss变量不再减小的时候,停止第二训练阶段。
6.根据权利要求4所述的一种基于YOLOv4的道路车辆检测方法,其特征在于,所述步骤S2中,车辆信息包括类别信息和位置信息,类别信息包括公交车bus、汽车car和卡车truck三大类,位置信息包括真实框中心点坐标、真实框的宽度和高度。
7.根据权利要求4所述的一种基于YOLOv4的道路车辆检测方法,其特征在于,所述步骤S2的具体方法为:
步骤S201:创建文件voc_classes.txt,添加车辆数据集标签,使用labellmg图片标注工具完成图像的标注,生成PASCAL VOC格式的xml标注文件;
步骤S202:使用PASCAL VOC数据集的目录结构,建立车辆信息文件夹Vehicle,Vehicle文件夹包含三个子文件夹,分别是Annotations文件夹、ImageSets文件夹和JPEGImages文件夹;其中,Annotations文件夹里放入所有的xml标记文件;ImageSets文件中存放数据集划分的txt文件;JPEGImages文件夹放入所有的车辆信息训练图片,车辆信息验证图片和车辆信息测试图片;
步骤S203:依据PASCAL VOC的格式要求,对放入JPEGImages文件夹中的图片逐一命名,对每张图片对应的标注文件进行类别信息和位置信息的标注,并保存为与对应图片相同文件名的xml文件,再放入Annotations文件夹中;
步骤S204:生成训练集、验证集和测试集文件,在车辆信息文件夹Vehicle下建立labels子文件夹,labels子文件夹内包含每一张图片的yolo格式的标注文件,yolo格式的标注文件由xml标注文件转换而来;
步骤S205:在labels子文件夹中,建立2007_train.txt文件,2007_val.text文件和2007_test.txt文件,三个文件分别对应给出训练集、验证集和测试集文件的清单,清单中包含所有图片的文件路径和文件名;在ImageSets文件夹中建立文件夹Main,在文件夹Main中建立train.txt文件、val.text文件和test.txt文件,三个文件中包含每个图片的文件名,不包含文件路径和扩展名信息。
8.根据权利要求4所述的一种基于YOLOv4的道路车辆检测方法,其特征在于,所述步骤S4中,MobileNetv2模块将输入的特征图经过一个1×1的卷积操作完成对通道数的扩张后,经过一个3×3的深度可分离卷积操作减少计算量,再经过一个1×1的卷积操作对通道数进行缩减并与MobileNetv2模块输入端的跳跃链相加得到MobileNetv2模块输出的特征图。
9.根据权利要求4所述的一种基于YOLOv4的道路车辆检测方法,其特征在于,所述步骤S4中,MobileVit模块将输入的特征图经过一个n×n和一个1×1的卷积操作编码局部空间信息和扩展特征的通道数后,经过L个Transformer操作提取全局特征,再经过1×1的卷积对通道数的压缩,最后与MobileVit模块输入的特征进行特征融合,再经过一个n×n的卷积实现通道数下降得到最终的输出特征。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210370567.2A CN114821492A (zh) | 2022-04-10 | 2022-04-10 | 一种基于YOLOv4的道路车辆检测系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210370567.2A CN114821492A (zh) | 2022-04-10 | 2022-04-10 | 一种基于YOLOv4的道路车辆检测系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114821492A true CN114821492A (zh) | 2022-07-29 |
Family
ID=82535240
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210370567.2A Pending CN114821492A (zh) | 2022-04-10 | 2022-04-10 | 一种基于YOLOv4的道路车辆检测系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114821492A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110991337A (zh) * | 2019-12-02 | 2020-04-10 | 山东浪潮人工智能研究院有限公司 | 一种基于自适应双路检测网络的车辆检测方法 |
CN115578719A (zh) * | 2022-10-13 | 2023-01-06 | 中国矿业大学 | 一种基于ym_ssh的轻量级目标检测的疲劳状态检测方法 |
CN115631483A (zh) * | 2022-12-08 | 2023-01-20 | 奥特贝睿(天津)科技有限公司 | 一种基于深度学习的毫米波雷达和相机融合方法 |
CN117746066A (zh) * | 2024-02-20 | 2024-03-22 | 贵州博睿科讯科技发展有限公司 | 一种扩散模型引导的高速车辆检测集成学习方法和装置 |
-
2022
- 2022-04-10 CN CN202210370567.2A patent/CN114821492A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110991337A (zh) * | 2019-12-02 | 2020-04-10 | 山东浪潮人工智能研究院有限公司 | 一种基于自适应双路检测网络的车辆检测方法 |
CN115578719A (zh) * | 2022-10-13 | 2023-01-06 | 中国矿业大学 | 一种基于ym_ssh的轻量级目标检测的疲劳状态检测方法 |
CN115578719B (zh) * | 2022-10-13 | 2024-05-17 | 中国矿业大学 | 一种基于ym_ssh的轻量级目标检测的疲劳状态检测方法 |
CN115631483A (zh) * | 2022-12-08 | 2023-01-20 | 奥特贝睿(天津)科技有限公司 | 一种基于深度学习的毫米波雷达和相机融合方法 |
CN117746066A (zh) * | 2024-02-20 | 2024-03-22 | 贵州博睿科讯科技发展有限公司 | 一种扩散模型引导的高速车辆检测集成学习方法和装置 |
CN117746066B (zh) * | 2024-02-20 | 2024-05-07 | 贵州博睿科讯科技发展有限公司 | 一种扩散模型引导的高速车辆检测集成学习方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022083784A1 (zh) | 一种基于车联网的道路检测方法 | |
CN114821492A (zh) | 一种基于YOLOv4的道路车辆检测系统及方法 | |
CN111401148B (zh) | 一种基于改进的多级YOLOv3的道路多目标检测方法 | |
CN112464910A (zh) | 一种基于YOLO v4-tiny的交通标志识别方法 | |
CN110852347A (zh) | 采用改进YOLO v3的火灾检测方法 | |
CN114495029B (zh) | 一种基于改进YOLOv4的交通目标检测方法及系统 | |
CN110781882A (zh) | 一种基于yolo模型的车牌定位和识别方法 | |
CN113076804B (zh) | 基于YOLOv4改进算法的目标检测方法、装置及系统 | |
CN111914720B (zh) | 一种输电线路绝缘子爆裂识别方法及装置 | |
CN111428558A (zh) | 一种基于改进YOLOv3方法的车辆检测方法 | |
CN113177560A (zh) | 一种普适性轻量级深度学习车辆检测方法 | |
CN108921850B (zh) | 一种基于图像分割技术的图像局部特征的提取方法 | |
CN113762209A (zh) | 一种基于yolo的多尺度并行特征融合路标检测方法 | |
CN110717493B (zh) | 一种基于深度学习的含堆叠字符的车牌识别方法 | |
CN112528934A (zh) | 一种基于多尺度特征层的改进型YOLOv3的交通标志检测方法 | |
CN112766170B (zh) | 基于簇类无人机图像的自适应分割检测方法及装置 | |
CN112417973A (zh) | 一种基于车联网的无人驾驶系统 | |
CN113239753A (zh) | 基于YOLOv4改进的交通标志检测与识别方法 | |
CN113160062A (zh) | 一种红外图像目标检测方法、装置、设备及存储介质 | |
CN114862768A (zh) | 基于改进YOLOv5-LITE轻量级的配电组件缺陷识别方法 | |
CN115222950A (zh) | 一种面向嵌入式平台的轻量化目标检测方法 | |
CN116597326A (zh) | 一种基于改进YOLOv7算法的无人机航拍小目标检测方法 | |
CN114494284B (zh) | 一种基于显式监督区域关系的场景解析模型及方法 | |
CN114998866A (zh) | 一种基于改进YOLOv4的交通标志识别方法 | |
CN113947774A (zh) | 一种轻量级的车辆目标检测系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |