一种基于深度学习的车道线检测方法[发明专利]

(19)中华人民共和国国家知识产权局
(12)发明专利申请
(10)申请公布号 (43)申请公布日 (21)申请号 202010885430.1
(22)申请日 2020.08.28
(71)申请人 佛山市南海区广工大数控装备协同
创新研究院
地址 528200 广东省佛山市南海高新区佛
高科技智库中心A座4楼
申请人 佛山市广工大数控装备技术发展有
限公司
(72)发明人 杨海东 杨航 黄坤山 彭文瑜 
林玉山 
(74)专利代理机构 广州科沃园专利代理有限公
司 44416
代理人 马盼
(51)Int.Cl.
G06K  9/00(2006.01)
G06K  9/62(2006.01)G06N  3/04(2006.01)
(54)发明名称
一种基于深度学习的车道线检测方法
(57)摘要
本发明公开了一种基于深度学习的车道线
检测方法,包括如下步骤:S01:获取车道检测数
据集;所述车道检测数据集中包含多个含有车道
的图像;S02:搭建训练模型,设置损失函数和约
束参数;所述训练模型包括依次连接的卷积层、
池化层、残差块和全连接层;所述损失函数用于
限制车道线的平滑性和刚性;S03:采用车道检测
数据集对训练模型进行训练,迭代多次之后得到
收敛的检测模型;S04:将检测模型置于车载摄像
头中,得出车道检测结果。本发明提供的一种基
于深度学习的车道线检测方法,在保证准确率的
同时能够实现车道线的快速检测。权利要求书1页  说明书4页  附图2页CN 112016463 A 2020.12.01
C N  112016463
A
1.一种基于深度学习的车道线检测方法,其特征在于,包括如下步骤:
S01:获取车道检测数据集;所述车道检测数据集中包含多个含有车道的图像;
S02:搭建训练模型,设置损失函数和约束参数;所述训练模型包括依次连接的卷积层、池化层、残差块和全连接层;所述损失函数用于限制车道线的平滑性和刚性;
S03:采用车道检测数据集对训练模型进行训练,迭代多次之后得到收敛的检测模型;S04:将检测模型置于车载摄像头中,得出车道检测结果。
2.根据权利要求1所述的一种基于深度学习的车道线检测方法,其特征在于,所述步骤S01中车道检测数据集包括正常检测数据集和极端检测数据集,所述正常检测数据集中图像的车道线清晰,所述极端检测数据集中图像的车道线被遮挡。
3.根据权利要求2所述的一种基于深度学习的车道线检测方法,其特征在于,对所述正常检测数据集和极端检测数据集进行增强,获得增强检测数据集。
4.根据权利要求3所述的一种基于深度学习的车道线检测方法,其特征在于,所述增强包括对正常检测数据集和极端检测数据集中图像进行旋转、分割、在水平或/和垂直方向进行平移,获得增强图像,并对增强检测数据集中各个图像中车道线延伸至图像边界处,获得增强检测数据集,所述增强检测数据集、正常检测数据集和极端检测数据集构成车道检测数据集。
5.根据权利要求1所述的一种基于深度学习的车道线检测方法,其特征在于,所述训练模型包括依次连接的卷积层、最大池化层、4个残差块以及全连接层。
6.根据权利要求5所述的一种基于深度学习的车道线检测方法,其特征在于,所述损失函数L total =L cls +αL str ,其中,L cls 表示预测位置与实际位置的偏差;L str =L sim +λL shp ,L sim 表示平滑性损失函数,L shp 表示刚性损失函数,α和λ表示约束参数。
7.根据权利要求6所述的一种基于深度学习的车道线检测方法,其特征在于,所述步骤S02中针对车道检测数据集中每一个图像,定义一组行锚框,该图像分辨率为H ×W,将图像划分为h行,在每个行锚框中划分w个网格;该图像的最大车道线数量为C,全局信息为X,则
所述平滑性损失函数其中P i ,j =f i ,j (X),f i ,j 为判断第j行上所有网格是否在第i条车道线上的分类器。
8.根据权利要求7所述的一种基于深度学习的车道线检测方法,其特征在于,所述步骤
S02中其中,Loc表述二阶差分函数。
9.根据权利要求8所述的一种基于深度学习的车道线检测方法,其特征在于,所述步骤S03中将设置好的参数α和λ以及训练模型的学习率代入训练模型中,并将车道检测数据集逐个输入至训练模型中训练,训练模型收敛后得到检测模型。
权 利 要 求 书1/1页CN 112016463 A
一种基于深度学习的车道线检测方法
技术领域
[0001]本发明涉及深度学习技术领域,具体涉及一种基于深度学习的车道线检测方法。
背景技术
[0002]随着计算机硬件技术和计算机视觉技术的发展,基于计算机视觉的无人驾驶成为可能,而车道线检测作为无人驾驶系统的重要组成部分,需要在驾驶过程中实时保持运行。而且通常车辆中往往会装载多个摄像头,这就需要车道线检测的算法简单和高效。[0003]传统的方法是将车道线检测看做一个分割问题,对图像中所有的像素点进行分类,然后根据分类结果出车道线;分割分类的步骤和操作就导致模型十分复杂且速度慢。同时因为分割没有利用到全局信息,所以当车道线被遮挡或者光线条件差时检测效果不够理想。分割带来的另一个问题是感受野问题,因为分割一般是全卷积得到,所以每个像素的感受野有限,根据有限的特征并不能准确快速判断出车道线。在卷积神经网络中,感受野(Receptive Field)的定义是卷积神经网络每一层输出的特征图(feature map)上的像素点在输入图片上映射的区域大小,通俗点的解释就是特征图上的一个点对应输入图上的区域。
发明内容
[0004]针对现有技术的不足,本发明的目的旨在提供一种基于深度学习的车道线检测方法,在保证准确率的同时能够实现车道线的快速检测。
[0005]为实现上述目的,本发明采用如下技术方案:一种基于深度学习的车道线检测方法,包括如下步骤:
[0006]S01:获取车道检测数据集;所述车道检测数据集中包含多个含有车道的图像;[0007]S02:搭建
训练模型,设置损失函数和约束参数;所述训练模型包括依次连接的卷积层、池化层、残差块和全连接层;所述损失函数用于限制车道线的平滑性和刚性;[0008]S03:采用车道检测数据集对训练模型进行训练,迭代多次之后得到收敛的检测模型;
[0009]S04:将检测模型置于车载摄像头中,得出车道检测结果。
[0010]进一步的,所述步骤S01中车道检测数据集包括正常检测数据集和极端检测数据集,所述正常检测数据集中图像的车道线清晰,所述极端检测数据集中图像的车道线被遮挡。
[0011]进一步的,对所述正常检测数据集和极端检测数据集进行增强,获得增强检测数据集。
[0012]进一步的,所述增强包括对正常检测数据集和极端检测数据集中图像进行旋转、分割、在水平或/和垂直方向进行平移,获得增强图像,并对增强检测数据集中各个图像中车道线延伸至图像边界处,获得增强检测数据集,所述增强检测数据集、正常检测数据集和极端检测数据集构成车道检测数据集。
[0013]进一步的,所述训练模型包括依次连接的卷积层、最大池化层、4个残差块以及全连接层。
[0014]进一步的,所述损失函数L total=L cls+αL str,其中,L cls表示预测位置与实际位置的偏差;L str=L sim+λL shp,L sim表示平滑性损失函数,L shp表示刚性损失函数,α和λ表示约束参数。
[0015]进一步的,所述步骤S02中针对车道检测数据集中每一个图像,定义一组行锚框,该图像分辨率为H×W,将图像划分为h行,在每个行锚框中划分w个网格;该图像的最大车道
线数量为C,全局信息为X,则所述平滑性损失函数其中P i,j=f i,j
(X),f i,j为判断第j行上所有网格是否在第i条车道线上的分类器。
[0016]进一步的,所述步骤S02中其
中,Loc表述二阶差分函数。
[0017]进一步的,所述步骤S03中将设置好的参数α和λ以及训练模型的学习率代入训练模型中,并将车道检测数据集逐个输入至训练模型中训练,训练模型收敛后得到检测模型。[0018]本发明的有益效果在于:为了避免传统分割方法带来的模型庞大,计算慢且感受野有限的问题,本发明将检测看做是一个基于全局图像特征的行搜索问题,将图像分为若干个图像块,针对每行的图像块进行分类,将车道线检测
看作是一个分类问题,大大降低模型复杂度和计算时间。同时本发明采用车道线先验设计损失函数给训练模型网络增加几何约束,本发明感受野为全图大小,特征明显,在光线环境差,遮挡的情况下也能对车道线进行准确的定位。
附图说明
[0019]附图1为本发明方法的流程图;
[0020]附图2为本发明训练模型整体结构示意图。
具体实施方式
[0021]下面,结合附图以及具体实施方式,对本发明做进一步描述:
[0022]请参阅附图1,一种基于深度学习的车道线检测方法,包括如下步骤:
[0023]S01:获取车道检测数据集,其中车道检测数据集中包含多个车道检测数据,每个车道检测数据对应一张含有车道的图像,并且图像中车道线的位置和数量是已知确定的。[0024]车道检测数据集包括正常检测数据集和极端检测数据集,正常检测数据集中图像的车道线清晰,即常规在高速公路上拍摄的图像,光照条件良好且车道线较为清晰无遮挡,该数据集主要获取一般情况下的车道线特征。
[0025]极端检测数据集中图像的车道线被遮挡,即主要是在光线条件差,道路拥堵、蜿蜒,夜晚和极端天气如暴雨等不易辨别车道线的情况下采集的图像,该数据集是为了提高在肉眼无法辨别车道线时模型的适应能力。
[0026]为了提高系统泛化能力,防止过拟合,对正常检测数据集和极端检测数据集进行增强,获得增强检测数据集。增强包括对上述正常情况下和极端情况下拍摄的图像进行旋
转、分割、在水平或/和垂直方向进行平移,获得增强图像,经过这些操作后部分车道线会被遮挡或者缩短,为了保持车道线的结构连贯,将这些车道线进行延伸直到图像的边界处,获得增强检测数据集,增强检测数据集、正常检测数据集和极端检测数据集构成车道检测数据集。在实际训练模型过程中,可以将车道检测数据集分为两部分,一部分用来训练模型,称为训练数据集,另一部分用来验证训练之后的模型,称为测试数据集。
[0027]S02:搭建训练模型,设置损失函数和约束参数;本发明中训练模型包括依次连接的卷积层、池化层、残差块和全连接层;损失函数用于限制车道线的平滑性和刚性;具体的,残差块可以为4个。
[0028]训练模型即为深度学习网络,此时搭建的训练模型仅仅是一个网络框架,其具体的参数并没有最终确定,需要在后续步骤中不断进行训练和检测才能确定准确的模型参数,确定了模型参数之后的网络框架即为训练后得出的检测模型。
[0029]训练模型整体结构如图2所示,包括一个7×7的卷积层、最大池化层、4个残差块和一个全连接层。上述车道检测数据集包括多个包含车道的图像,对每一个图像预先定义一组(多个)行锚框,设图像分辨率为H×W,则将图像划分为h行,其中h远远小于H,在每个行锚框中划分w个网格,如此车道线就被定义为图像中一系列网格的集合,检测的任务由传统的对图像进行分割转变为对这些网格进行分类。设图像中最大车道线数量为C,全局信息为X,f i,j为判断第j行上所有网格是否在第i条车道线上的分类器,主干网络的输出结果为一个基于每个行锚框上的网格是否在对应车道线上的概率向量:P i,j=f i,j(X)。
[0030]车道检测数据集中各个图像对训练模型进行训练时,需要将上述预先定义的多个行锚框所在的部分图像当做一个训练因素输入至训练模型中,该部分图像中是否含有车道线是已知的,部分图像中要么含有车道线,例如用1表示,要么不含车道线,例如永0表示,即部分图像以及其是否含有车道线(0或1)构成一个训练对。
[0031]当其中一个部分图像进入网络时,先经过一个7×7的卷积层,输出64张分辨率为原图二分之一大小的特征图Ⅰ,特征图Ⅰ经过一个最大池化层,输出分辨率为特征图Ⅰ二分之一大小的特征图Ⅱ。特征图Ⅱ之后进入4个残差块中,其中每个残差块的输出特征图分辨率为输入的二分之一,维度加倍。最后一个残差块输出的特征图经过一个全连接层展成一个一维的向量进行输出,该一维向量即表示了该部分图像中是否含有车道线,该结果与训练对中0或1的结果是一致的。在训练模型被训练的过程中,可以理
解为:将部分图像(行锚框对应部分)作为训练模型的输入,将是否含有车道线的结果作为训练图像的输出,即已知训练模型的输入和输出,对训练模型进行参数确定的过程。
[0032]在训练过程中,损失函数有助于优化训练模型的参数。我们的目标是通过优化训练模型的参数(权重)来最大程度地减少训练模型的损失。通过训练模型将目标(实际)值与预测值进行匹配,再经过损失函数就可以计算出损失。然后,我们使用梯度下降法来优化网络权重,以使损失最小化。这就是我们训练神经网络的方式。
[0033]用一个交叉熵损失函数来表示预测位置与实际位置的偏差:
其中,T i,j表示车道线的真实位置分布,L CE表示偏差函数。除了分类损失外,由于有了水平行方向上直接的位置信息,可以直接使用这些信息来加入车道线的先验约束,为此我们定义了两个损失函数来限制车道线的平滑性和刚性。将相邻行上分类的L1范数定义为平滑性,

本文发布于:2024-09-20 18:31:15,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/447186.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:检测   车道   模型   训练   数据   图像   进行   损失
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议