本发明涉及自动驾驶中的图像检测,特别是涉及一种车道线检测方法、系统、存储介质及车辆。
背景技术:
1、车道线检测是实现更高级别自动驾驶技术的重要组成部分。其一般分为传统的车道线检测方法和基于深度学习技术的车道线检测算法,传统的车道线检测方法采用诸如边缘检测加霍夫变换、透视变换、颜色阈值等方式,而基于深度学习技术的车道线检测算法则大多为基于锚点(anchor)的检测算法。
2、在基于锚点的车道线检测算法中,又可细分为在图像特征空间和特征空间下的车道线检测。由于车道线的结构比较特殊,所以车道线的锚点线设计主要采用垂直方向上的一组固定点,为了表达车道线在角度和位置上的变化,进而在锚点线设计时加入了位置与角度的变化,这样的设计非常简单,对于角度较大的车道线(如垂直方向,接近90度)检测效果比较好。
3、然而由于相机拍摄角度的影响,导致自然场景中的车道线变化情形非常多,在远离相机中心位置的车道线或者十字路口处的车道线往往角度都比较小,接近水平,现有技术中的这种锚点线设计对于角度较小的车道线(如水平方向,接近0度)并不友好,因而亟需一套更佳的锚点线设计方案,来解决角度较小的车道线检测问题。
技术实现思路
1、本发明所要解决的技术问题在于,提供一种全视角车道线检测方法、系统、存储介质及车辆。通过采用两套锚点线,可以提升车道线检测算法的准确性,提高应用场景的广泛性。
2、作为本发明的一方面,提供一种车道线检测方法,其包括如下步骤:
3、获取预先设置于图像特征空间或bev特征空间中的两套锚点线,所述两套锚点线包括一套水平锚点线和一套垂直锚点线;
4、将每条车道线的各真值车道线点进行曲线拟合,分配给所述两套锚点线中相应的水平锚点线或垂直锚点线;
5、将车辆获得的道路图像输入神经网络中提取图像特征,获得图像特征图或/及鸟瞰特征图;
6、采用水平车道线检测头网络和垂直车道线检测头网络,对所述图像特征图或/及鸟瞰特征图进行回归处理,获得真实车道线与所分配的水平锚点线或垂直线锚点线之间的偏移量;并根据所述偏移量确定最终的车道线检测结果。
7、其中,进一步包括预先于图像特征空间或bev特征空间中设置两套锚点线的步骤,包括:
8、在图像特征空间或者bev特征空间的第一角度范围内,每间隔一预定角度选择一条水平锚点基线,以各水平锚点基线沿y轴方向等距平移得到预定数目组水平锚点基线,形成一套水平锚点线;
9、在图像特征空间或者bev特征空间的第二角度范围内,每间隔一预定角度选择一条垂直锚点基线,以各垂直锚点基线沿x轴方向等距平移得到预定数目组垂直锚点基线,形成一套垂直锚点线;
10、其中,所述第一角度范围为[0,45),第二角度范围为(45,90]。
11、其中,将车道线的真值车道线点通过曲线拟合,分配给所述两套锚点线中相应的水平锚点线或垂直锚点线,进一步包括:
12、对所有真值车道线点进行曲线拟合,根据其首尾端点连线的斜率来判断所拟合曲线为水平方向或垂直方向;当所述斜率处于第一斜率范围时,判定为水平方向,当所述斜率处于第二斜率范围时,判断为垂直方向,其中,所述第一斜率范围为[0,1),所述第二斜率范围为[1,+∞);
13、当所拟合曲线为水平方向时,计算当前真值车道线中所有车道线点到每一水平锚点线在y轴上的偏移量之和,将当前真值车道线分配给偏移量之和最小的水平锚点线;
14、当所拟合曲线为垂直方向时,计算当前真值车道线中所有车道线点到每一垂直锚点线在x轴上的偏移量之和,将当前真值车道线分配给偏移量之和最小的垂直锚点线。
15、其中,进一步包括:
16、对于3d标注的真值车道线点,先通过相机内外参投影到2d平面坐标系,再通过逆透视变换将2d平面下的坐标转换为bev视角下的真值3d车道线点,然后进行曲线拟合并分配给相应的水平锚点线或垂直锚点线。
17、其中,所述神经网络采用由由卷积模块构成的卷积神经网络,或具有transformer结构的transformer神经网络;
18、所述水平车道线检测头网络和垂直车道线检测头网络均包括有一个回归器,或者均包括一回归器及一分类器;其中,所述回归器和分类器均包括:卷积模块或/及全连接模块。
19、作为本发明的另一方面,还提供一种车道线检测系统,其包括:
20、锚点线获取单元,用于获取预先设置于图像特征空间或bev特征空间中的两套锚点线,所述两锚点线包括一套水平锚点线和一套垂直锚点线;
21、拟合分配单元,用于将每条车道线的各真值车道线点进行曲线拟合,分配给所述两套锚点线中相应的水平锚点线或垂直锚点线;
22、特征图获取单元,用于将车辆获得的多视角道路图像输入神经网络中提取图像特征,获得图像特征图或/及鸟瞰特征图;
23、检测处理单元,用于采用水平车道线检测头网络和垂直车道线检测头网络,对所述图像特征图或/及鸟瞰特征图进行回归处理,获得真实车道线与所分配的水平锚点线或垂直线锚点线之间的偏移量,并根据所述偏移量确定最终的车道线检测结果。
24、其中,进一步包括:
25、锚点线设置单元,用于预先设置于图像特征空间或bev特征空间中的两套锚点线,包括:
26、水平锚点线设置单元,用于在图像特征空间或者bev特征空间的第一角度范围内,每间隔一预定角度选择一条水平锚点基线,以各水平锚点基线沿y轴方向等距平移得到预定数目组水平锚点基线,形成一套水平锚点线;
27、垂直锚点线设置单元,用于在图像特征空间或者bev特征空间的第二角度范围内,每间隔一预定角度选择一条垂直锚点基线,以各垂直锚点基线沿x轴方向等距平移得到预定数目组垂直锚点基线,形成一套垂直锚点线;
28、其中,所述第一角度范围为[0,45),第二角度范围为(45,90]。
29、其中,所述拟合分配单元进一步包括:
30、拟合单元,用于对所有真值车道线点进行曲线拟合,根据其首尾端点连线的斜率来判断所拟合曲线为水平方向或垂直方向;当所述斜率处于第一斜率范围时,判定为水平方向,当所述斜率处于第二斜率范围时,判断为垂直方向,其中,所述第一斜率范围为[0,1),所述第二斜率范围为[1,+∞);
31、第一分配单元,用于当所拟合曲线为水平方向时,计算当前真值车道线中所有车道线点到每一水平锚点线在y轴上的偏移量之和,将当前真值车道线分配给偏移量之和最小的水平锚点线;
32、第二分配单元,用于当所拟合曲线为垂直方向时,计算当前真值车道线中所有车道线点到每一垂直锚点线在x轴上的偏移量之和,将当前真值车道线分配给偏移量之和最小的垂直锚点线。
33、其中,所述神经网络采用由由卷积模块构成的卷积神经网络,或具有transformer结构的transformer神经网络;
34、所述水平车道线检测头网络和垂直车道线检测头网络均包括有一个回归器,或者均包括一回归器及一分类器;其中,所述回归器和分类器均包括:卷积模块或/及全连接模块。
35、相应地,作为本发明的再一方面,还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前述的方法的步骤。
36、相应地,作为本发明的再一方面,还提供一种车辆,具有车道线检测装置,在所述车道线检测装置中部署有如前述的车道线检测系统。
37、实施本发明实施例,具有如下有的益效果:
38、本发明提供一种车道线检测方法、系统、存储介质及车辆。通过采用两套锚点线,其中一套垂直锚点线用于检测角度较大的车道线,另一套水平锚点线用于检测角度较小的车道线。在锚点线分配阶段,将真值(ground truth)中的车道线根据角度(曲线拟合计算所得)分配至垂直锚点线或者水平锚点线。在网络结构上,设计一个共享骨干网络和两个车道线检测头网络,一个检测头网络用于检测垂直车道线,另一个检测头网络用于检测水平车道线。
39、实施本发明,可以提升单目车道线检测算法的准确性,由于采用了两种不同方向的锚点线设计,可以让每种锚点线更加侧重于当前方向的车道线,相比只采用一种锚点线检测全方向的车道线更加合理;其次,可以进行全视角的周视车道线检测,先进行统一的鸟瞰图(bev)特征表达,在此基础上再进行水平与垂直方向的车道线检测;另外,本发明的锚点线设计策略在图像特征空间和bev特征空间中均可应用,提高了应用的广泛性。
1.一种车道线检测方法,其特征在于,包括如下步骤:
2.如权利要求1所述的方法,其特征在于,进一步包括预先于图像特征空间或bev特征空间中设置两套锚点线的步骤,包括:
3.如权利要求2所述的方法,其特征在于,将车道线的真值车道线点通过曲线拟合,分配给所述两套锚点线中相应的水平锚点线或垂直锚点线,进一步包括:
4.如权利要求3所述的方法,其特征在于,进一步包括:
5.如权利要求1至4任一项所述的方法,其特征在于,其中:
6.一种车道线检测系统,其特征在于,包括:
7.如权利要求6所述的系统,其特征在于,进一步包括:
8.如权利要求7所述的系统,其特征在于,所述拟合分配单元进一步包括:
9.如权利要求6至8任一项所述的系统,其特征在于,其中:
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5中任一项所述的方法的步骤。
11.一种车辆,具有车道线检测装置,其特征在于,在所述车道线检测装置中部署有如权利要求6至9任一项所述的车道线检测系统。
