一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种车道线检测方法、终端及存储介质与流程

2022-11-16 14:24:37 来源:中国专利 TAG:


1.本技术属于智能驾驶技术领域,尤其涉及一种车道线检测方法、终端及存储介质。


背景技术:

2.在智能驾驶技术领域,车道线检测作为环境感知系统的关键环节,需要为后续的路径规划与决策控制提供稳定可靠的支持。现有的车道线检测方法根据传感器分类,可分为基于相机图像数据的车道线检测方法和基于激光雷达点云数据的车道线检测方法。
3.基于相机图像数据的车道线检测方法,又可分为基于传统算法和深度学习算法的车道线检测方法,但是无论基于哪种算法,根据相机图像数据检测车道线都容易受到光照、天气等环境因素的影响,在光照条件差或者天气恶劣的情况下,车道线检测的准确性较低;
4.基于激光雷达点云数据的车道线检测方法,也可分为基于传统算法和深度学习算法的车道线检测方法。其中,基于传统算法的车道线检测方法的一般流程是先根据反射强度值等一些过滤条件从原始点云数据中筛选出车道线的点,然后对车道线的点进行聚类,再对聚类结果进行直线或曲线拟合,输出车道线;
5.该方法对反射强度阈值或其他指标的阈值的选取有较高的要求,在路况复杂的场景,可能会将路面上的标志、人行道等一些非车道线点误判为车道线的点,车道线检测的准确性较低;而基于深度学习算法的车道线检测方法较少,而且缺少大量的数据集进行训练,车道线检测的准确性也较低。


技术实现要素:

6.针对上述技术问题,本技术提供一种车道线检测方法、终端及存储介质,以提高车道线检测的准确性及效率。
7.本技术提供了一种车道线检测方法,包括:获取车道线点云数据,并根据所述车道线点云数据,对车道线点云进行过滤,确定目标点云;对所述目标点云进行栅格化处理,获取所述目标点云的栅格图及线段集;根据所述栅格图中的单元格的属性及所述线段集对所述目标点云进行聚类,获取同一车道线的点云数据;对所述同一车道线的点云数据进行拟合,输出车道线。
8.在一实施方式中,获取车道线点云数据,包括:获取车载激光雷达采集的原始点云数据;根据所述原始点云数据,通过深度学习网络对原始点云进行分类,得到所述车道线点云数据。
9.在一实施方式中,根据所述车道线点云数据,对车道线点云进行过滤,包括以下至少一项:若所述车道线点云中的任一点与车辆的距离不满足第一预设范围,则将对应的点从所述车道线点云中去除;若所述车道线点云中的任一点的反射强度值不满足第二预设范围,则将对应的点从所述车道线点云中去除;若所述车道线点云中的任一点到地面的距离不满足第三预设范围,则将对应的点从所述车道线点云中去除。
10.在一实施方式中,获取所述目标点云的线段集,包括:根据所述目标点云在所述栅
格图中的各单元格的分布情况,获取所述目标点云的二值化鸟瞰图;对所述目标点云的二值化鸟瞰图进行霍夫变换,获取所述目标点云的线段集。
11.在一实施方式中,所述单元格的属性包括:所述单元格内的点云数量;所述单元格的方向;所述单元格内的点云的聚类情况。
12.在一实施方式中,根据所述栅格图中的单元格的属性及所述线段集对所述目标点云进行聚类,包括:以所述线段集中的线段的起点作为滑窗的初始中心点,在所述栅格图上建立预设尺寸的滑窗;对所述滑窗中包括的单元格按照预设顺序逐个进行点云聚类分析:在所述滑窗中的当前单元格内的点云数量大于零,且当前单元格内的点云未聚类时,获取所述当前单元格的方向与所述滑窗的中心点所在的线段的方向之间的第一夹角;若所述第一夹角小于第一阈值,则将所述当前单元格内的点云与所述滑窗的中心点所在的线段上的点云聚为一类;若所述第一夹角大于或等于所述第一阈值,则继续对所述滑窗中的下个单元格进行所述点云聚类分析;在所述滑窗中的所有单元格的点云聚类分析完成后,控制所述滑窗以预设步长移动到下个位置,然后在所述下个位置继续执行所述对所述滑窗中的单元格按照预设顺序逐个进行点云聚类分析的步骤,直到所述滑窗移动到所述栅格图的外部。
13.在一实施方式中,控制所述滑窗以预设步长移动到下个位置,包括:获取所述滑窗的当前中心点的位置;在所述滑窗的当前中心点位于所述滑窗的当前中心点所在的当前线段与下个线段的交叉区域时,获取所述下个线段的方向与所述当前线段的方向之间的第二夹角;若所述第二夹角小于第二阈值,则根据所述滑窗的当前中心点的位置、所述预设步长及所述下个线段的函数方程,计算所述滑窗的下个中心点的位置;若所述第二夹角大于或等于所述第二阈值,则根据所述滑窗的当前中心点的位置、所述预设步长及所述当前线段的函数方程,计算所述滑窗的下个中心点的位置。
14.在一实施方式中,所述对所述同一车道线的点云数据进行拟合,输出车道线的步骤,包括:采用最小二乘法对所述同一车道线的点云数据进行三次多项式的拟合,确定所述车道线的函数方程;根据所述车道线的函数方程,输出所述车道线。
15.本技术还提供了一种终端,所述终端包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述车道线检测方法的步骤。
16.本技术还提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述车道线检测方法的步骤。
17.本技术提供的一种车道线检测方法、终端及存储介质,通过深度学习网络对车载激光雷达采集的原始点云数据进行分类,获取车道线点云,并对车道线点云进一步过滤,确定目标点云,提高车道线点云的检测准确性;另外,采用滑窗的方式,根据目标点云栅格图中的单元格属性及线段集,对目标点云进行聚类,提高车道线检测的准确性及效率。
附图说明
18.图1是本技术实施例一提供的车道线检测方法的流程示意图;
19.图2是本技术实施例一提供的栅格示意图;
20.图3是本技术实施例一提供的直线检测结果示意图;
21.图4是本技术实施例一提供的点云聚类结果示意图;
22.图5是本技术实施例一提供的滑窗移动示意图;
23.图6是本技术实施例一提供的车道线拟合示意图;
24.图7是本技术实施例一提供的点云聚类的具体流程示意图;
25.图8是本技术实施例二提供的终端的结构示意图。
具体实施方式
26.以下结合说明书附图及具体实施例对本技术技术方案做进一步的详细阐述。除非另有定义,本技术所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中在本技术的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本技术。本文所使用的“和/或”包括一个或多个相关的所列项目的任意的和所有的组合。
27.图1是本技术实施例一提供的车道线检测方法的流程示意图。如图1所示,本技术的车道线检测方法可以包括如下步骤:
28.步骤s101:获取车道线点云数据,并根据车道线点云数据,对车道线点云进行过滤,确定目标点云;
29.在一实施方式中,获取车道线点云数据,包括:
30.获取车载激光雷达采集的原始点云数据;
31.根据原始点云数据,通过深度学习网络对原始点云进行分类,得到车道线点云数据。
32.可选地,以车辆的后轴中心为坐标原点,建立激光雷达三维坐标系,其中,x轴方向为车辆行驶方向,y轴方向垂直于车辆行驶方向,与车辆行驶路面平行,z轴方向垂直于车辆行驶路面向上,x、y、z轴的坐标单位均为米;车道线点云数据包括车道线点云中的点在激光雷达坐标系下的坐标、点的反射强度值、点到地面的距离,其中,点到地面的距离根据点在激光雷达坐标系x、y和z轴上的坐标值,结合地面方程求解得到;深度学习网络为语义分割网络。
33.在一实施方式中,根据车道线点云数据,对车道线点云进行过滤,包括以下至少一项:
34.若车道线点云中的任一点与车辆的距离不满足第一预设范围,则将对应的点从车道线点云中去除;
35.若车道线点云中的任一点的反射强度值不满足第二预设范围,则将对应的点从车道线点云中去除;
36.若车道线点云中的任一点到地面的距离不满足第三预设范围,则将对应的点从车道线点云中去除。
37.可选地,车道线点云中任一点与车辆的距离为车道线点云中任一点到激光雷达坐标系原点的距离;第一预设范围包括x轴方向上的范围(x_min,x_max)如(0,40),y轴方向上的范围(y_min,y_max),如(0,20),单位为米,即保留车道线点云中x轴坐标满足(0,40),且y轴坐标满足(-20,20)的点;第二预设范围为[30,70],即保留车道线点云中反射强度满足[30,70]的点;第三预设范围为[0,a],如a=10,单位为厘米,即保留车道线点云中到地面的
距离在10cm之内的点。
[0038]
步骤s102:对目标点云进行栅格化处理,获取目标点云的栅格图及线段集;
[0039]
在一实施方式中,获取目标点云的线段集,包括:
[0040]
根据目标点云在栅格图中的各单元格的分布情况,获取目标点云的二值化鸟瞰图;
[0041]
对目标点云的二值化鸟瞰图进行霍夫变换,获取目标点云的线段集。
[0042]
可选地,栅格尺寸为m
×
n,如100
×
100,即将上述第一预设范围对应的点的坐标范围在x轴方向上平均划分成m份,在y轴方向上平均划分为n份,得到m
×
n个单元格。遍历点云中的每个点,根据点的x和y坐标计算其所属单元格的索引,然后将该点加入到对应的单元格中,目标点云的栅格示意图如图2所示,图中i、j为单元格的索引值。同时,通过判断每个单元格内是否存在点云,得到一幅单通道的二值化鸟瞰图(bird’s eye view,bev),然后通过霍夫变换对bev图像进行直线检测,得到一系列线段,作为目标点云的线段集,直线检测结果如图3所示。
[0043]
步骤s103:根据栅格图中的单元格的属性及线段集对目标点云进行聚类,获取同一车道线的点云数据;
[0044]
可选地,单元格的属性包括:单元格内的点云数据;单元格的方向;单元格内的点云的聚类情况;其中,单元格内的点云数据包括单元格内的点云数量、单元格内的点在激光雷达坐标系下的坐标。
[0045]
其中,单元格的方向为通过单元格的线段的方向,在同一单元格有多条线段通过时,以长度最长的线段的方向作为该单元格的方向。可选地,线段的方向为线段起点指向线段终点的方向,线段起点为线段上距离车辆最近的端点。
[0046]
在一实施方式中,根据栅格图中的单元格的属性及线段集对目标点云进行聚类,包括:
[0047]
以线段集中的线段的起点作为滑窗的初始中心点,在栅格图上建立预设尺寸的滑窗;
[0048]
对滑窗中包括的单元格按照预设顺序逐个进行点云聚类分析:
[0049]
在滑窗中的当前单元格内的点云数量大于零,且当前单元格内的点云未聚类时,获取当前单元格的方向与滑窗的中心点所在的线段的方向之间的第一夹角;
[0050]
若第一夹角小于第一阈值,则将当前单元格内的点云与滑窗的中心点所在的线段上的点云聚为一类;
[0051]
若第一夹角大于或等于第一阈值,则继续对滑窗中的下个单元格进行点云聚类分析;
[0052]
在滑窗中的所有单元格的点云聚类分析完成后,控制滑窗以预设步长移动到下个位置,然后在下个位置继续执行对滑窗中的单元格按照预设顺序逐个进行点云聚类分析的步骤,直到所述滑窗移动到所述栅格图的外部。
[0053]
可选地,第一阈值为30度;滑窗尺寸为h
×
w,即滑窗包含h
×
w个单元格。值得一提的是,可根据滑窗中心点与车辆的距离,调整滑窗尺寸;在滑窗中心点与车辆的距离小于或等于第一预设距离,或滑窗中心点与车辆的距离大于或等于第二预设距离时,采用第一预设尺寸的滑窗,如10
×
10;在滑窗中心点与车辆的距离在第一预设距离与第二预设距离之
间时,采用第二预设尺寸的滑窗,如6
×
6;其中,第一预设距离小于第二预设距离,第一预设尺寸大于第二预设尺寸。由于在距离车辆较近的范围内,如10米内,点云数量较多,分布较密集,距离车辆较远的范围内,如30米外,点云数量较少,分布较分散,故在距离车辆较近或较远的范围内采用大尺寸滑窗,以提高聚类效果。点云聚类结果示意图如图4所示。
[0054]
在一实施方式中,控制滑窗以预设步长移动到下个位置,包括:
[0055]
获取滑窗的当前中心点的位置;
[0056]
在滑窗的当前中心点位于滑窗的当前中心点所在的当前线段与下个线段的交叉区域时,获取下个线段的方向与当前线段的方向之间的第二夹角;
[0057]
若第二夹角小于第二阈值,则根据滑窗的当前中心点的位置、预设步长及下个线段的函数方程,计算滑窗的下个中心点的位置;
[0058]
若第二夹角大于或等于第二阈值,则根据滑窗的当前中心点的位置、预设步长及当前线段的函数方程,计算滑窗的下个中心点的位置;
[0059]
在滑窗的当前中心点不在当前线段与下个线段的交叉区域时,根据滑窗的当前中心点的位置、预设步长及当前线段的函数方程,计算所述滑窗的下个中心点的位置。
[0060]
可选地,交叉区域为滑窗的当前中心点与两条线段(当前线段与下个线段)的交点在当前线段方向上的距离小于或等于移动步长的区域;第二阈值为30度。
[0061]
如图5所示,以bev图像的左上角为坐标原点,建立图像坐标系,在图像坐标系下,当前线段的函数方程为x=b1,下个线段的函数方程为y=a2*x b2,滑窗的移动步长为r;
[0062]
若滑窗当前中心点a(x1,y1)在当前线段与下个线段的交叉区域,且第二夹角小于第二阈值,则根据以下方程组计算滑窗的下个中心点b的坐标(x2,y2):
[0063][0064]
若滑窗当前中心点a(x1,y1)在当前线段与下个线段的交叉区域,且第二夹角大于或等于第二阈值,则根据以下方程组计算滑窗的下个中心点c的坐标(x3,y3):
[0065][0066]
步骤s104:对同一车道线的点云数据进行拟合,输出车道线。
[0067]
可选地,同一车道线的点云数据包括同一车道线的点在雷达坐标系下的坐标。
[0068]
在一实施方式中,步骤s104包括:
[0069]
采用最小二乘法对同一车道线的点云数据进行三次多项式的拟合,确定车道线的函数方程;
[0070]
根据车道线的函数方程,输出车道线。
[0071]
可选地,三次多项式为f(x)=a0 a1x a2x2 a3x3,将同一车道线的点在激光雷达坐标系下的x、y轴坐标代入上式,通过最小化误差的平方和,确定三次多项式的系数a0、a1、a2、a3,得到最终的车道线函数方程,输出车道线。车道线拟合示意图如图6所示,图中-1、0、1、2为车道线编号。
[0072]
图7是本技术实施例一提供的点云聚类的具体流程示意图。如图7所示,本技术的
车道线检测方法的点云聚类过程可以包括如下步骤:
[0073]
步骤s201:获取滑窗的当前中心点的位置;
[0074]
步骤s202:判断滑窗的当前中心点是否位于栅格图的图像范围内;
[0075]
若滑窗的当前中心点不在栅格图的图像范围内,则结束本次流程;
[0076]
若滑窗的当前中心点在栅格图的图像范围内,则执行步骤s203:按照预设顺序选择滑窗中进行点云聚类分析的单元格;
[0077]
步骤s204:判断滑窗中的当前单元格内的点云数量是否大于零,且当前单元格内的点云未聚类;
[0078]
若当前单元格内的点云数量等于零,和/或当前单元格内的点云已聚类,则返回执行步骤s203,对滑窗中的下个单元格进行点云聚类分析;
[0079]
若当前单元格内的点云数量大于零,且当前单元格内的点云未聚类,则执行步骤s205:判断当前单元格的方向与滑窗的当前中心点所在的线段的方向之间的夹角是否小于第一阈值;
[0080]
若当前单元格的方向与滑窗的当前中心点所在的线段的方向之间的夹角小于第一阈值,则执行步骤s206:将当前单元格内的点云与滑窗的中心点所在的线段上的点云聚为一类;
[0081]
若当前单元格的方向与滑窗的当前中心点所在的线段的方向之间的夹角大于或等于第一阈值,则执行步骤步骤s207:判断滑窗中的所有单元格的点云聚类分析是否已完成;
[0082]
若滑窗中的所有单元格的点云聚类分析未完成,则返回执行步骤s203,对滑窗中的下个单元格进行点云聚类分析;
[0083]
若滑窗中的所有单元格的点云聚类分析已完成,则执行步骤s208:判断滑窗的当前中心点是否位于当前线段与下个线段的交叉区域;
[0084]
若滑窗的当前中心点不在当前线段与下个线段的交叉区域,则执行步骤s209:根据滑窗的当前中心点的位置、预设步长及当前线段的函数方程,计算所述滑窗的下个中心点的位置;
[0085]
若滑窗的当前中心点在当前线段与下个线段的交叉区域,则执行步骤s210:判断当前线段与下个线段方向之间的夹角是否小于第二阈值;
[0086]
若当前线段与下个线段方向之间的夹角小于第二阈值,则执行步骤s211:根据滑窗的当前中心点的位置、预设步长及下个线段的函数方程,计算滑窗的下个中心点的位置;
[0087]
若当前线段与下个线段方向之间的夹角大于或等于第二阈值,则执行步骤s209;
[0088]
步骤s212:控制滑窗以预设步长,从当前中心点移动到下个中心点;然后返回执行步骤s202。
[0089]
本技术实施例一提供的车道线检测方法,通过深度学习网络对车载激光雷达采集的原始点云数据进行分类,获取车道线点云,并对车道线点云进一步过滤,确定目标点云,提高了车道线点云的检测准确性;另外,采用滑窗的方式,根据目标点云栅格图中的单元格属性及线段集,遍历线段集中的每条线段及滑窗中的每个单元格,对目标点云进行聚类,能够把属于同一条车道线的虚线段或散点聚类为同一个点集,保证车道线的检测完整性,提高了车道线检测的准确性及效率。
[0090]
图8是本技术实施二提供的终端的结构示意图。本技术的终端包括:处理器110、存储器111以及存储在所述存储器111中并可在所述处理器110上运行的计算机程序112。所述处理器110执行所述计算机程序112时实现上述车道线检测方法实施例中的步骤。
[0091]
所述终端可包括,但不仅限于,处理器110、存储器111。本领域技术人员可以理解,图8仅仅是终端的示例,并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端还可以包括输入输出设备、网络接入设备、总线等。
[0092]
所称处理器110可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0093]
所述存储器111可以是所述终端的内部存储单元,例如终端的硬盘或内存。所述存储器111也可以是所述终端的外部存储设备,例如所述终端上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,所述存储器111还可以既包括所述终端的内部存储单元也包括外部存储设备。所述存储器111用于存储所述计算机程序以及所述终端所需的其他程序和数据。所述存储器111还可以用于暂时地存储已经输出或者将要输出的数据。
[0094]
本技术还提供一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述车道线检测方法的步骤。
[0095]
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0096]
在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,除了包含所列的那些要素,而且还可包含没有明确列出的其他要素。
[0097]
以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献