一种基于拓扑关系学习的高效车道线检测方法与流程

文档序号:35056468发布日期:2023-08-06 14:23阅读:119来源:国知局
一种基于拓扑关系学习的高效车道线检测方法与流程

本发明属于智能驾驶,具体涉及一种基于拓扑关系学习的高效车道线检测方法。


背景技术:

1、车道线检测技术是自动驾驶领域极其重要的元素,对车辆规控,决策,及定位都提供了不可或缺的信息,现有的车道线检测分为基于传统特征提取算法和基于深度学习的特征提取方法。传统的特征提取方法常见的是通过边缘检测、滤波等方法检测车道线区域,然后通过hough线,或平行透视灭点检测,或直接通过特征拟合车道线,或ransac等算法来获取车道线特征表达,hough线将车道线假设成一条直线,因此只适合拟合直线;对于弯道的情况,传统的方法虽通过拟合直接表达实现,但需要人工手动调整滤波器算子,且实际驾驶过程中车道线往往复杂多变,受光照,天气,遮挡,磨损,运动模糊等情况影响,算法要根据场景手动调节参数,工作量巨大,传统的特征提取方法往往不具有稳健的检测性能。随着深度学习的发展,基于深度学习的方法越来越被证明是较鲁棒的检测车道线的方法:通过安装在车上的摄像头获取像素帧,人工标注像素帧上的车道线,设计神经网络模型,将标注好的图片送入模型学习,训练好的模型就可以自动识别车道线。现有的车道线网络模型方法多种多样,有基于语义分割的方法[1],基于行分类的方法[2],直接回归多项式系数的方法[3],anchor_base[4]的方法等,其中基于语义分割的方法通过检测图片上的每一个像素得到整张图上属于车道线的像素,这种方法的优点是当模型泛化性能好的时候得到的车道线区域更精准,缺点是需要后处理才能得到车道线的实例信息,但是将不同的点分配到相应的车道实例中对后处理来说是比较困难的,当场景复杂时后处理往往不能精准的得到每条实例的车道线,且算例大且检测精度和实时性都比较低;于是学者们通过网络来预测实例分割掩码,然而这种方法必须预先定义和固定车道线个数,而实际驾驶场景车道线复杂多变,因此这种方法并不健壮[4,5,6]。基于行分类的方法是将图片网格划分,对于每一行,模型预测最有可能的单元格包含车道标记的一部分。由于每行只选择一个单元格,这个过程在图像中的每个可能的车道上重复。与分割方法类似,它也需要一个后处理步骤来构建车道集。直接回归多项式系数的方法是模型直接学习车道线的多项表达式系数,优点是实时性较好,但检测精度不高。基于anchor_base的方法通过初始化固定数量的锚,对车道线全局信息建模,然而anchor_base的方法对具有拓扑连接关系的车道线如实线变虚线,y型线等断开学习,破坏了连接性,不利于车道线跟踪。


技术实现思路

1、本发明所要解决的技术问题是克服现有技术的不足,提供一种基于拓扑关系学习的高效车道线检测方法,通过启发式的方法搜索出最优的下采样倍数,对原图下采样一定的倍数,并加入点的横向距离的回归,在保证检测精度的同时减少算例,同时在功能上加入点的类别信息及颜色信息。

2、本发明提供一种基于拓扑关系学习的高效车道线检测方法,包括如下步骤,

3、步骤s1.将原图下采样若干倍数,即以anchor的形式遍历原图,计算当前anchor所对应的上一行左l距离内、上一行右l个距离内连接的anchor中存在相同的id的车道线的概率和下一行左l距离内、下一行右l个距离内连接的anchor存在相同id的车道线的概率,同时在每一个anchor内计算每一个点到anchor横向中心的横向偏移距离;

4、步骤s2.预测输出的形式与encode的形式一致,采用anchor的形式哈希表,当前anchor内点为车道线点的概率,上一行2l距离所有anchor内的点为上一个连接点的概率,下一行2l距离所有anchor内的点为下一个连接点的概率,anchor中点到anchor中心offset值,anchor点的颜色,anchor点的类别,其中anchor点的颜色记录着anchor内每一个点的颜色信息;

5、步骤s3.构建模型,每个roi图像输入车道线检测模块,获取车道线检测结果,检测结果经过缩放模块恢复到原始图像坐标系,再通过重投影模块获取参考图像上的结果。

6、作为本发明的进一步技术方案,步骤s1中,对每一个像素点的类别预测,颜色预测;于是每一个anchor中包含的信息有:

7、p_up:当前anchor相连的上一行左l个距离内,右l个距离内的anchor存在相同线的概率;

8、p_cur:当前anchor存在某条车道线的概率;

9、p_down:当前anchor相连的下一行左l个距离内,右l个距离内的anchor存在相同线的概率;

10、offset:当前anchor内的点到anchor横向中心的横向距离;

11、color:当前anchor的颜色;

12、type:当前anchor内点的类别属性;

13、对于在拓扑关系上有连接关系但类别不同的线,在编码时会将这类线连接起来输入模型,同时在type分支上学习线上每个点的类别,具体为:

14、当ab段为虚线,bc段为实线,cd段为虚线,三条在拓扑上有连接关系,编码时将ab,bc,cd连接成一条线;

15、当ab段为宽虚线,bc段为实线,两条在拓扑上有连接关系,编码时将ab,bc连接成一条线。

16、进一步的,步骤s2中,anchor内点的类别分为一般点和特殊点,且允许同一个anchor内点的类别属性不同,一般点包括实线或虚线,特殊点包括虚线的关键点、y型线的交叉点、v型线的交叉点,其中,虚线的关键点分为虚线有效点,虚线无效点,虚线段起始点,虚线段终点;

17、anchor内offset记录着anchor内每一个点到anchor中心的offset,根据offset将每一个点解码回原图;假设当前点坐标为(x,y),所在的anchor的横向中心坐标为(anchor_center_x,y),预测出当前点到anchor横向中心的offset,即为x=offset+anchor_center_x。

18、进一步的,步骤s3中,缩放模块根据roi的坐标信息进行缩放,缩放公式为

19、ydst=ysrc*scaleh+yroi

20、xdst=xsrc*scalew+xroi

21、

22、

23、其中,xdst,ydst为原图坐标系下点的坐标;

24、重投影模块根据各相机的参数进行计算,将每个相机的结果投影到车体坐标系,然后再反投影到参考图像中;

25、若一个点p,在车体坐标系中的坐标为pveh,在相机坐标系中的坐标为pcam,在图像坐标系中的坐标为pimg,则转换公式为

26、pcam=tcam2veh*pa

27、pimg=k*pcam

28、

29、其中,tcam2veh为相机坐标系到车体坐标系的齐次矩阵;k为相机的内参;

30、则从第i个roi中的点投影到参考图像上的过程为

31、

32、其中,kref为参考相机的内参,tref2veh为参考相机坐标系到车体坐标系的齐次矩阵,tveh2i为车体坐标系到第i个相机的齐次矩阵,ki为第i个相机的内参;

33、匹配模块将若干个roi上的结果在参考图像上进行匈牙利匹配,损失函数包括欧式距离损失和线段相似性损失;

34、欧式距离损失计算两条线在y方向上重合部分的距离,相同y坐标下的x方向的距离的和,公式为

35、

36、其中,为第i条线上第k个点的x坐标,为第j条线上第k个点的x坐标。n为点的个数;

37、线段相似性损失计算在y方向重合部分的lbd描述子的距离,lbd描述子首先确定线段条带的个数和方向,再统计每一行的梯度直方图,计算均值和标准方差最终串联构成描述向量;公式为其中,为第i条线上第k个线段的特征向量,为第j条线上第k个线段的特征向量,m为线段的个数;

38、合并模块把匹配成功的若干条车道线线根据对应位置点的置信度进行加权,获取最终的车道线结果。

39、本发明的优点在于,

40、1.对原图下采样一定的倍数,为了弥补精度的损失,又在其基础上加入对横向距离的学习,在解码的时候又根据横向距离的回归将点解码回原图,这样得到的模型能在保持检测精度的同时提高检测的实时性。

41、2.对虚线端点的改进,我们把虚线细分为虚线有效点,虚线无效点,虚线段起始端点,虚线段终点,如上表1所示,虚线段的端点明确规定了是起始点还是终点,且当某个端点漏检时可通过虚线有效点和虚线无效点后处理得到端点信息,以此得到更鲁棒的端点信息。

42、3.对y型线,v型线等分叉线的交点给出新的类别,直接学习交叉点坐标,这样得到的车道线不仅拓扑结构完整,且端点信息全面,更加有利于规控和定位。

43、4.为了解决车道线在远处检测困难的问题,本文在车道线远处设计一个感兴趣区域roi,同时在近处也设计出一个感兴趣区域roi,在训练时融合两者的信息,提高远处的检测精度。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1