一种基于YOLOv4算法的交通标志检测方法

文档序号:26705759发布日期:2021-09-18 04:02阅读:418来源:国知局
一种基于YOLOv4算法的交通标志检测方法
一种基于yolov4算法的交通标志检测方法
技术领域
1.本发明涉及图像检测技术领域,尤其涉及到一种基于yolov4算法的交通标志检测方法。


背景技术:

2.道路交通安全是全球人民普遍关注的问题,每年约有125万死于交通事故。但研究[1]表明,在交通事故发生前1.5秒对驾驶员做出指示,可以减少近90%的交通事故。因此,对道路交通标志的目标检测算法尤为重要,且检测算法对目标进行实时检测。传统的目标检测算法主要分为三步,分别是对候选区域分割、特征提取、图像候选区域的检测,现有技术中存在基于sift特征的交通标志检测算法,在输入图像中提取特征区域,采用sift描述符计算特征区域,或者通过hog的变形组件(deformable part model,dpm)的交通标志检测算法,通过svm分类器分类,能够有效检测不同形状的交通标志,但传统检测算法需要人工的预提取特征,耗费大量时间,容易出现漏检,且需要图像质量较高,很难达到理想的识别准确率,近年来,随着深度学习广泛应用于图像处理领域,虽然基于卷积神经网络的目标检测算法取得了很大的成就,但是基于卷积神经网络的目标检测算法在实时性上仍需要提高。
[0003]
为此,本发明公开了一种基于yolov4算法的交通标志检测方法,相比于现有技术,本发明可以在保证计算成本的前提下,提高检测速度,本发明提出一种通过深度可分离卷积对原始yolov4主干提取网络进行改进,得到新的主干提取网络,通过设计的实验结果表明,改进后的yolov4模型与原始yolov4模型在cstd交通标志数据集上的map仅相差0.88%,但检测速度提升近3倍,并一定程度上减少了模型的参数量。


技术实现要素:

[0004]
本发明的目的在于克服现有技术的不足,提供了一种基于yolov4算法的交通标志检测方法,相比于现有技术,本发明可以在保证计算成本的前提下,提高检测速度。
[0005]
本发明是通过以下技术方案实现的:一种基于yolov4算法的交通标志检测方法,所述方法包括步骤:
[0006]
通过原始yolov4算法对预处理后的交通标志图像进行模型训练;
[0007]
通过训练迭代,把模型训练参数达到最优且将损失函数达到最小的模型保存;
[0008]
通过训练好的模型对测试集中的图像进行测试,最终选择置信度最高的边框进行输出,完成交通标志的检测。
[0009]
优选地,通过深度可分离卷积对原始yolov4算法的主干提取网络cspdarknet进行处理,所述处理包括步骤:
[0010]
步骤100:将原始算法中的多通道特征图利用深度可分离卷积,具体的,先采用3
×
3的卷积核对每一个通道进行卷积,分解成单通道的特征图;
[0011]
步骤200:使用1
×
1的卷积核对分解成单通道的特征图再次卷积调整通道数,输出
第二特征图。
[0012]
优选地,所述交通图像具体为指示标志、禁止标志和警告标志。
[0013]
本发明公开了一种基于yolov4算法的交通标志检测方法,与现有技术相比:
[0014]
本发明公开了一种基于yolov4目标检测算法的实际生活交通标志检测的方法,其在原始yolov4算法的基础上,借助深度可分离卷积的思想对主干提取网络cspdarknet53网络结构进行改进,对输入的图像分别进行逐通道卷积和逐点卷积操作,得到新的主干特征提取网络,改进后的yolov4网络模型对三类交通标志检测的map值达到了92.63%,与原始yolov4网络相比,map仅降低了0.82%,通过对比,改进后的yolov4算法能够达到对远处小型交通标志的检测准确率,并且改进后的yolov4模型的检测速度提升近3倍,并且极大的减少了模型的参数量。
附图说明
[0015]
图1为深度可分离卷积结构图;
[0016]
图2为改进后的网络结构图;
[0017]
图3为交通标志检测过程图;
[0018]
图4为实施例中交通标志的外观示意图;
[0019]
图5a为mandatory ap值对比图;
[0020]
图5b为prohibitory ap值对比图;
[0021]
图5c为warning ap值对比图。
具体实施方式
[0022]
下面对本发明的实施例作详细说明,本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
[0023]
本发明公开了一种基于yolov4算法的交通标志检测方法,所述方法包括步骤:
[0024]
通过原始yolov4算法对预处理后的交通标志图像进行模型训练;
[0025]
通过训练迭代,把模型训练参数达到最优且将损失函数达到最小的模型保存;
[0026]
通过训练好的模型对测试集中的图像进行测试,最终选择置信度最高的边框进行输出,完成交通标志的检测。
[0027]
为方便理解,本发明对yolov4进行详细的介绍,yolov4算法是在单阶段目标检测yolov3算法的基础上,通过改进得到的加强版,虽然在目标检测算法发展进程中没有质的改变,但是在fps没有下降的前提下,精度提高非常明显,作为单阶段目标检测算法,使用不同尺度的三个特征层进行分类与回归预测,对于每个尺度用于检测的特征图,将其划分为s
×
s的网格,如果某一个目标的真实标注框的中心坐标在网格内部,则该网络负责该目标的检测。yolov4算法和yolov3算法相比,主要在四个方面对yolov3算法进行改进。
[0028]
第一:主干特征提取网络的改进,将yolov3算法中的darknet53修改成为cspdarknet53,cspnet结构将原来残差块的堆叠拆成左右两部分,主干部分继续进行原来残差块的堆叠,另一部分经过少量处理直接连接到最后。
[0029]
第二:特征加强网络的改进,在特征金字塔部分,使用了spp结构和panet结构,spp
结构能够极大增加感受野,分离出最显著的上下文特征,panet结构显著的特点是将特征反复提取,得到更丰富的特征信息。
[0030]
第三:训练技巧的改进,训练时使用masaic数据增强的方式增加网络的鲁棒性,并且将ciou作为损失函数,避免训练过程中出现发散等问题,使目标框回归更加稳定。
[0031]
第四:激活函数的改进,使用mish激活函数代替之间的leakrelu激活函数,提高模型的准确性和泛化性。
[0032]
本发明还通过深度可分离卷积对原始yolov4算法的主干提取网络cspdarknet进行处理,深度可分离卷积与标准卷积相比,将卷积操作分解成两部分,分别是逐通道卷积和逐点卷积,逐通道卷积depthwise中每一个特征通道都用特定的一个卷积核提取特征;逐点卷积pointwise使用n个1
×
1的卷积核对逐通道卷积中的特征图进行二次特征提取得到最终的特征图,深度可分离卷积结构如图1所示。
[0033]
具体而言,假设在常规卷积层中输入特征图的尺寸为d
x
×
d
x
×
m,卷积核的尺寸为d
y
×
d
y
×
n,输出特征图的大小为d
z
×
d
z
×
n,d
x
和d
z
分别代表输入特征图和输出特征图的宽和高,d
y
是指卷积核的空间维度,m和n分别代表输入特征图和输出特征图的通道数。计算公式如下:
[0034]
常规卷积参数量为:
[0035]
d
y
×
d
y
×
m
×
n
ꢀꢀ
(1)
[0036]
常规卷积计算量为:
[0037]
d
x
×
d
x
×
m
×
n
×
d
y
×
d
y
ꢀꢀ
(2)
[0038]
深度可分离卷积参数量为:
[0039]
d
y
×
d
y
×
m
×
n+d
y
×
d
y
×
n
ꢀꢀ
(3)
[0040]
深度可分离卷积计算量为:
[0041]
d
x
×
d
x
×
m
×
d
y
×
d
y
+d
x
×
d
x
×
m
×
n
ꢀꢀ
(4)
[0042]
深度可分离卷积与传统卷积的参数量比值为:
[0043][0044]
又由于yolov4网络结构比较复杂,模型参数量、计算量较大,为了使yolov4算法更适用于交通标志的检测,进一步提高检测的实时性,满足实际生活中对驾驶人员即时检测交通标志的要求,本文利用深度可分离卷积对原始yolov4网络的主干提取网络cspdarknet进行改进,将原始算法中的多通道特征图利用深度可分离卷积,首先采用3
×
3的卷积核对每一个通道进行卷积,分解成单通道的特征图,再使用1
×
1的卷积核对分解成单通道的特征图再次卷积调整通道数,输出特征图,大幅度的减少了模型的参数量、计算量。改进后的网络结构如下图2所示。
[0045]
为了更加的严谨,本发明还在实施例中公开了具体的实验对本实施例进行说明:
[0046]
实验框架结构:使用改进的yolov4检测算法检测交通标志时,首先对算法中的配置文件进行修改,将检测类别按实验要求修改为三类,然后将轻量化后的主干提取网络代替原始的cspdarknet

53并加入到网络中,根据实验设备的实际使用情况,合理修改网络参数,最后对训练集中的图片进行模型训练,改进后的交通标志检测过程如下图3所示,首先利用改进后的yolov4算法对预处理后的交通标志图像进行模型训练,通过训练迭代,把模
型训练参数达到最优且将损失函数达到最小的模型保存下来。再用训练好的模型对测试集中的图像进行测试,最终选择置信度最高的边框进行输出。本实验针对日常生活中常见的三大类交通标志进行识别,具体为指示标志、禁止标志、警告标志。
[0047]
实验数据集的准备,本实验选择的数据集是由中科院发布的中国交通标志ctsd数据集,主要检测三种交通标志,分别为指示标志(mandatory)、禁止标志(prohibitory)、警告标志(warning)。三类的交通标志实例如下图4所示,其中,ctsd数据集由1100张不同场景和天气的条件下采集的图像组成,由于数据集的训练样本过少,不能达到模型训练的要求,因此本实验在原有数据集的基础上,通过现实生活中采集以及通过网络资源获得约9000张含有交通标志的图像,经过区域裁剪、中值滤波去噪、彩色直方图均衡化等处理提高数据集的图像质量,其次按照pascal voc 2007数据集的制作格式对数据集中的交通标志进行标注,生成对应的xml文件,最后按照9:1的比例将数据集划分成为训练集和测试集。
[0048]
实验过程及结果分析如下。
[0049]
在windows10操作系统下对yolov4和改进后的yolov4网络分别进行训练得到最后的模型,实验所用计算机的硬件参数详见表1;
[0050][0051]
表1实验计算机配置参数
[0052]
模型训练的初始参数如下表2,在训练次数达到50时,将学习率降低至初始学习率的10%。
[0053][0054]
表2实验初始参数
[0055]
本实验对检测模型性能的评价指标包括ap(average precision)值和检测速率。ap值是由准确率precision和召回率recall组合得到的曲线下面的面积。准确率precision指的是预测为正类并且确实是正类的部分占预测成正类的总数量的比例。召回率recall指的是预测为正类并且确实是正类的部分占所有正类总数量的比例。准确率precision和召回率recall计算公式为:
[0056][0057][0058]
式中,tp(true positive)指的是正确检测出正样本的数量,fp(false positive)指的是检测成正样本的负样本数量,fn(false positive)指的是检测成负样本的正样本数
量。
[0059]
通过原始yolov4算法和改进后的yolov4算法对训练集中的图像训练,得到的检测模型对测试集中的图像进行测试,得到如下三类交通标志ap值对比图如下图5所示。
[0060]
得到的平均准确率、检测速率如下表3所示,map值由所有类别的平均精度和除以所有类别得到。
[0061][0062]
表3原始yolov4算法和改进的yolov4算法模型检测结果
[0063]
由图5和表3可得,原始yolov4模型的map为93.45%,改进后的yolov4模型的map值为92.63%,通过对比,改进前后的yolov4模型在准确率上仅相差0.82%,差距并不大,但改进后模型检测的fps由11提升至31,并且改进后的模型参数量从6.17
×
107减少到4.12
×
107,减少了原始参数量的2/3左右,大大降低了模型运算量。说明改进后的yolov4模型在保证了原始yolov4算法检测准确率的基础上,能够提高模型检测速度,减少运算成本。图5为改进后的交通标志检测模型检测效果。根据检测图我们可以看到,算法能够准确的检测出三类不同的交通标志,并且预测框能够正确的将交通标志框起来。在实际驾驶的时候能够有效的帮助驾驶员根据实时的道路情况检测交通标志。
[0064]
综上所述,相比于现有技术,本发明介绍了基于yolov4目标检测算法的实际生活交通标志检测的方法,并在原始yolov4算法的基础上,借助深度可分离卷积的思想对主干提取网络cspdarknet53网络结构进行改进,对输入的图像分别进行逐通道卷积和逐点卷积操作,得到新的主干特征提取网络,改进后的yolov4网络模型对三类交通标志检测的map值达到了92.63%,与原始yolov4网络相比,map仅降低了0.82%。通过对比,改进后的yolov4算法能够达到对远处小型交通标志的检测准确率。并且改进后的yolov4模型的检测速度提升近3倍,并且极大的减少了模型的参数量。
[0065]
以上,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
[0066]
需要要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1