CN115661299A - 车道线地图的构建方法、计算机设备及存储介质 - Google Patents
车道线地图的构建方法、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN115661299A CN115661299A CN202211679881.5A CN202211679881A CN115661299A CN 115661299 A CN115661299 A CN 115661299A CN 202211679881 A CN202211679881 A CN 202211679881A CN 115661299 A CN115661299 A CN 115661299A
- Authority
- CN
- China
- Prior art keywords
- lane line
- point
- observation
- state
- map
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Image Analysis (AREA)
Abstract
本发明涉及自动驾驶技术领域,具体提供一种车道线地图的构建方法、计算机设备及存储介质,旨在解决提高车道线地图准确性的问题。为此目的,本发明提供的方法包括获取车辆在地图采集范围内采集到的点云帧和图像帧;根据点云帧进行全局定位,以获取全局定位轨迹,并对图像帧进行车道线感知,以获取第一车道线观测实例;根据全局定位轨迹将第一车道线观测实例转换至全局坐标系,以获取在全局坐标系的第二车道线观测实例;根据每个图像帧的第二车道线观测实例,分别对初始车道线地图上的车道线状态实例进行迭代更新,以构建成最终车道线地图。通过上述方式,即使地图采集车的轨迹包含很多闭环轨迹,也可以得到准确的车道线地图。
Description
技术领域
本发明涉及自动驾驶技术领域,具体涉及一种车道线地图的构建方法、计算机设备及存储介质。
背景技术
停车场、居民小区和高速服务区等需要车辆低速行驶的场景中,车道线的线型通常会比较复杂,在建立车道线地图时地图采集车可能会多次途经同一个地点,即地图采集车的轨迹包含很多闭环轨迹。在此情况下,利用地图采集车采集到的数据,很容易在同一个地点建立得到多个重复的车道线轨迹,影响车道线地图的准确性。
相应地,本领域需要一种新的技术方案来解决上述问题。
发明内容
为了克服上述缺陷,提出了本发明,以提供解决或至少部分地解决如何提高车道线地图的准确性的技术问题的车道线地图的构建方法、计算机设备及存储介质。
在第一方面,提供一种车道线地图的构建方法,所述方法包括:
获取车辆在地图采集范围内采集到的点云帧和图像帧;
根据所述点云帧进行全局定位,以获取全局定位轨迹;
对所述图像帧进行车道线感知,以获取第一车道线观测实例;
根据所述全局定位轨迹将所述第一车道线观测实例转换至全局坐标系,以获取在全局坐标系的第二车道线观测实例;
根据每个图像帧的第二车道线观测实例,分别对初始车道线地图上的车道线状态实例进行迭代更新,以构建成最终车道线地图。
在上述车道线地图的构建方法的一个技术方案中,“根据每个图像帧的第二车道线观测实例,分别对初始车道线地图上的车道线状态实例进行迭代更新,以构建成最终车道线地图”的步骤具体包括:
针对每次迭代更新,对当前迭代更新中图像帧的第二车道线观测实例与初始车道线地图上的车道线状态实例进行匹配,以确定是否存在与所述第二车道线观测实例匹配的目标车道线状态实例;
若是,则根据所述第二车道线观测实例,对所述目标车道线状态实例进行更新与关联;
若否,则根据所述第二车道线观测实例,在初始车道线地图上增加新的车道线状态实例并对所述第二车道线观测实例与所述新的车道线状态实例进行关联。
在上述车道线地图的构建方法的一个技术方案中,所述方法还包括通过下列方式对目标车道线状态实例进行更新或增加新的车道线状态实例:
根据所述第二车道线观测实例中的车道线观测点,在目标车道线状态实例中增加与每个所述车道线观测点各自对应的车道线状态点;
或者,
根据所述第二车道线观测实例中的车道线观测点,在初始车道线地图上增加新的车道线状态实例,其中,所述新的车道线状态实例中的车道线状态点与所述车道线观测点一一对应。
在上述车道线地图的构建方法的一个技术方案中,在“对目标车道线状态实例进行更新或增加新的车道线状态实例”的步骤之后,还包括:
对目标车道线状态实例中增加的车道线状态点的位姿进行优化,
或者,
对所述新的车道线状态实例中车道线状态点的位姿进行优化。
在上述车道线地图的构建方法的一个技术方案中,在“根据每个图像帧的第二车道线观测实例,分别对初始车道线地图上的车道线状态实例进行迭代更新,以构建成最终车道线地图”的步骤之后,所述方法还包括通过下列方式对最终车道线地图进行回环优化:
对所述最终车道线地图上的车道线状态实例进行回环检测;
根据回环检测的结果,获取能够形成回环的回环车道线状态实例;
对所述回环车道线状态实例进行合并。
在上述车道线地图的构建方法的一个技术方案中,“对所述最终车道线地图上的车道线状态实例进行回环检测”的步骤具体包括:
分别获取每两个车道线状态实例之间的车道线间距;
选取车道线间距小于设定距离阈值的候选车道线状态实例;
将所述候选车道线状态实例作为所述回环车道线状态实例。
在上述车道线地图的构建方法的一个技术方案中,“将所述候选车道线状态实例作为所述回环车道线状态实例”的步骤具体包括:
获取与所述候选车道线状态实例关联的第二车道线观测实例;
根据所述候选车道线状态实例中车道线状态点的位姿与所述第二车道线观测实例中车道线观测点的位姿,分别计算每个车道线状态点与各自对应的车道线观测点之间的第一残差;
对所述候选车道线状态实例进行合并得到合并车道线状态实例;
根据所述合并车道线状态实例中车道线状态点的位姿与所述第二车道线观测实例中车道线观测点的位姿,分别计算每个车道线状态点与各自对应的车道线观测点之间的第二残差;
根据所述第一残差与所述第二残差,判断是否将所述候选车道线状态实例作为所述回环车道线状态实例。
在上述车道线地图的构建方法的一个技术方案中,“根据所述第一残差与所述第二残差,判断是否将所述候选车道线状态实例作为所述回环车道线状态实例”的步骤具体包括:
根据所述第一残差的平均值与所述第二残差的平均值,计算对所述候选车道线状态实例进行合并之后的残差增长率;
判断所述残差增长率是否小于预设的增长率阈值;
若是,则将候选车道线状态实例作为回环车道线状态实例;
若否,则不将候选车道线状态实例作为回环车道线状态实例。
在上述车道线地图的构建方法的一个技术方案中,在“根据每个图像帧的第二车道线观测实例,分别对初始车道线地图上的车道线状态实例进行迭代更新,以构建成最终车道线地图”的步骤之后,所述方法还包括通过下列方式对最终车道线地图进行降噪优化:
针对所述最终车道线地图上的每个车道线状态实例,获取与所述车道线状态实例关联的第二车道线观测实例以及相应的关联时刻;
根据所述第二车道线观测实例的关联时刻,判断所述车道线状态实例是否处于异常跟踪状态;
若是,则删除所述车道线状态实例;
若否,则保留所述车道线状态实例。
在上述车道线地图的构建方法的一个技术方案中,“根据所述第二车道线观测实例的关联时刻,判断所述车道线状态实例是否处于异常跟踪状态”的步骤具体包括:
根据所述第二车道线观测实例的关联时刻,获取所述车道线状态实例处于跟踪状态的跟踪时刻和处于跟丢状态的跟丢时刻;
根据所述跟踪时刻与所述跟踪时刻,判断是否在跟踪状态与跟丢状态之间频繁切换或者连续处于跟踪状态的次数是否小于预设的次数阈值;
若是,则处于异常跟踪状态;
否则,未处于异常跟踪状态。
在上述车道线地图的构建方法的一个技术方案中,“对最终车道线地图进行降噪优化”的步骤还包括:
针对所述最终车道线地图上的每个车道线状态实例,获取与所述车道线状态实例关联的第二车道线观测实例;
根据所述车道线状态实例中车道线状态点的位姿与所述第二车道线观测实例中车道线观测点的位姿,分别计算每个车道线状态点与各自对应的车道线观测点之间的第三残差;
根据所述第三残差,判断对应的车道线观测点是否为噪声数据;
若是,则删除所述车道线观测点;
若否,则保留所述车道线观测点。
在上述车道线地图的构建方法的一个技术方案中,“根据所述第三残差,判断对应的车道线观测点是否为噪声数据”的步骤具体包括:
判断所述第三残差是否大于预设的残差阈值;
若是,则所述第三残差对应的车道线观测点是噪声数据;
若否,则所述第三残差对应的车道线观测点不是噪声数据。
在上述车道线地图的构建方法的一个技术方案中,在“根据每个图像帧的第二车道线观测实例,分别对初始车道线地图上的车道线状态实例进行迭代更新,以构建成最终车道线地图”的步骤之后,所述方法还包括通过下列方式对最终车道线地图进行融合优化:
针对所述最终车道线地图上的每个车道线状态实例,获取与所述车道线状态实例关联的所有第二车道线观测实例;
将所述车道线状态实例中的每个车道线状态点分别投影至图像坐标系,得到每个车道线状态点各自对应的投影点;
根据所有第二车道线观测实例中的车道线观测点与所述投影点,建立视觉观测约束项;
采用图优化算法并根据所述视觉观测约束项,对所述车道线状态实例中每个车道线状态点的位姿进行优化;
其中,所述视觉观测约束项用于对车道线观测点的点线距离之和进行最小化约束,所述点线距离是车道线观测点到与其最近的两个投影点形成的线段的距离。
在上述车道线地图的构建方法的一个技术方案中,在“采用图优化算法并根据所述视觉观测约束项,对所述车道线状态实例中每个车道线状态点的位姿进行优化”的步骤之前,所述方法还包括通过下列方式建立地面约束项和/或纵向约束项:
获取根据所述点云帧建立的地面点云地图;
根据所述地面点云地图分别获取每个车道线状态点对应的地平面;
根据所述车道线状态点到其对应地平面的距离,建立对所述距离进行最小化约束的地面约束项;
和/或,
获取垂直于车辆前进方向且垂直于所述地面平的纵向平面;
根据所述车道线状态点到所述纵向平面的距离,建立对所述距离进行最小化约束的纵向约束项;
“采用图优化算法并根据所述视觉观测约束项,对所述车道线状态实例中每个车道线状态点的位姿进行优化”的步骤具体包括:
采用图优化方法算并根据所述视觉观测约束项、所述地面约束项和/或所述纵向约束项对每个车道线状态点的位姿进行优化。
在上述车道线地图的构建方法的一个技术方案中,在“根据每个图像帧的第二车道线观测实例,分别对初始车道线地图上的车道线状态实例进行迭代更新,以构建成最终车道线地图”的步骤之后,所述方法还包括通过下列方式生成虚拟车道线:
建立车道线几何约束项和/或车辆轨迹约束项;
根据所述最终车道线地图上的车道线状态实例生成虚拟车道线,并根据所述车道线几何约束项和/或所述车辆轨迹约束项对所述虚拟车道线中每个车道线虚拟点的位姿进行优化,以得到最终的虚拟车道线;
其中,所述车道线几何约束项用于对车道线虚拟点的几何信息进行约束,所述车辆轨迹约束项用于对虚拟车道线与车辆轨迹之间的距离进行最小化约束。
在上述车道线地图的构建方法的一个技术方案中,所述几何信息包括车道线虚拟点的位置和切线方向,“建立车道线几何约束项”的步骤包括:
获取设定的车道线起点和车道线终点;
获取所述虚拟车道线中车道线虚拟点的虚拟起点和虚拟终点;
根据所述车道线起点与所述虚拟起点,建立起点位置约束项和/或起点切线方向约束项;
根据所述车道线终点与所述虚拟终点,建立终点位置约束项和/或终点切线方向约束项;
其中,所述起点位置约束项用于对所述车道线起点与所述虚拟起点之间的位置偏差进行最小化约束,所述起点切线方向约束项用于对所述车道线起点与所述虚拟起点之间的切线方向偏差进行最小化约束;
所述终点位置约束项用于对所述车道线终点与所述虚拟终点之间的位置偏差进行最小化约束,所述终点切线方向约束项用于对所述车道线终点与所述虚拟终点之间的切线方向偏差进行最小化约束。
在上述车道线地图的构建方法的一个技术方案中,所述几何信息还包括车道线虚拟点的曲率,“建立车道线几何约束项”的步骤还包括:
分别计算所述虚拟车道线中每个车道线虚拟点的曲率;
根据相邻车道线虚拟点之间的曲率偏差,建立对所述曲率偏差进行最小化约束的平滑约束项。
在上述车道线地图的构建方法的一个技术方案中,“建立车辆轨迹约束项”的步骤具体包括:
获取所述虚拟车道线的中心线;
根据所述中心线与车辆轨迹之间的距离,建立对所述距离进行最小化约束的车辆轨迹约束项。
在上述车道线地图的构建方法的一个技术方案中,“根据所述全局定位轨迹将所述第一车道线观测实例转换至全局坐标系,以获取在全局坐标系的第二车道线观测实例”的步骤具体包括:
对所述第一车道线观测实例进行离散化,得到多个车道线观测点;
根据所述全局定位轨迹分别将每个车道线观测点转换至全局坐标系,以获取在全局坐标系的车道线观测点;
根据在全局坐标系的车道线观测点,获取所述第二车道线观测实例。
在上述车道线地图的构建方法的一个技术方案中,“根据所述全局定位轨迹分别将每个车道线观测点转换至全局坐标系,以获取在全局坐标系的车道线观测点”的步骤具体包括:
分别获取每个车道线观测点在相机坐标系的三维坐标;
根据所述全局定位轨迹分别获取在每个车道线观测点采集时刻的相机位姿,所述相机位姿是由相机坐标系向全局坐标系转换的位姿;
根据每个车道线观测点采集时刻的相机位姿与每个车道线观测点在相机坐标系的三维坐标,分别获取每个车道线观测点在全局坐标系的三维坐标,以得到在全局坐标系的车道线观测点。
在上述车道线地图的构建方法的一个技术方案中,“分别获取每个车道线观测点在相机坐标系的三维坐标”的步骤具体包括:
获取根据所述点云帧建立的地面点云地图;
根据所述地面点云地图,分别获取每个车道线观测点的深度值;
根据每个车道线观测点在图像坐标系的二维坐标与所述深度值,分别获取每个车道线观测点在相机坐标系的三维坐标。
在第二方面,提供一种计算机设备,该计算机设备包括处理器和存储装置,所述存储装置适于存储多条程序代码,所述程序代码适于由所述处理器加载并运行以执行上述车道线地图的构建方法的技术方案中任一项技术方案所述的车道线地图的构建方法。
在第三方面,提供一种计算机可读存储介质,该计算机可读存储介质其中存储有多条程序代码,所述程序代码适于由处理器加载并运行以执行上述车道线地图的构建方法的技术方案中任一项技术方案所述的车道线地图的构建方法。
本发明上述一个或多个技术方案,至少具有如下一种或多种有益效果:
在实施本发明提供的方法技术方案中,可以获取车辆在地图采集范围内采集到的点云帧和图像帧;然后,根据点云帧进行全局定位,以获取全局定位轨迹,并对图像帧进行车道线感知,以获取第一车道线观测实例;根据全局定位轨迹将第一车道线观测实例转换至全局坐标系,以获取在全局坐标系的第二车道线观测实例;最后,根据每个图像帧的第二车道线观测实例,分别对初始车道线地图上的车道线状态实例进行迭代更新,以构建成最终车道线地图。
利用点云帧获取全局定位轨迹并根据全局定位轨迹将车道线观测实例转换至全局坐标系,可以提高根据不同图像帧得到的车道线观测实例的全局一致性,这样在根据车道线观测实例对车道线状态实例进行迭代更新之后可以得到准确的车道线地图。通过这种方式,即使在停车场、居民小区和高速服务区等需要车辆低速行驶的场景中,地图采集车的轨迹包含很多闭环轨迹,也可以得到准确的车道线地图。
进一步,在实施本发明提供的方法技术方案中,在构建成最终车道线地图之后,还可以对最终车道线地图上的车道线状态实例进行回环检测,根据回环检测的结果获取能够形成回环的回环车道线状态实例,对回环车道线状态实例进行合并。通过这种方式,能够进一步提高车道线地图的准确性,减小由于地图采集车的轨迹包含较多闭环轨迹,对车道线地图的影响。
进一步,在实施本发明提供的方法技术方案中,在构建成最终车道线地图之后,还可以检测最终车道线地图上的噪声数据(车道线状态实例和/或车道线状态实例关联的车道线观测点),进而删除这些噪声数据,进一步提高车道线地图的准确性。
进一步,在实施本发明提供的方法技术方案中,在构建成最终车道线地图之后,还可以采用图优化算法对车道线状态实例中每个车道线状态点的位姿进行优化,以进一步提高车道线地图的准确性。
附图说明
参照附图,本发明的公开内容将变得更易理解。本领域技术人员容易理解的是:这些附图仅仅用于说明的目的,而并非意在对本发明的保护范围组成限制。其中:
图1是根据本发明的一个实施例的车道线地图的构建方法的主要步骤流程示意图;
图2是根据本发明的一个实施例的对车道线地图进行回环优化的方法的主要步骤流程示意图;
图3是根据本发明的一个实施例的对车道线状态实例进行合并的示意图;
图4是根据本发明的一个实施例的对车道线地图进行降噪优化的方法的主要步骤流程示意图;
图5是根据本发明的一个实施例的保留与删除车道线状态实例的示意图;
图6是根据本发明的另一个实施例的对车道线地图进行降噪优化的方法的主要步骤流程示意图;
图7是根据本发明的一个实施例的对车道线地图进行融合优化的方法的主要步骤流程示意图;
图8是根据本发明的一个实施例的视觉观测约束项的示意图;
图9是根据本发明的一个实施例的图优化的示意图;
图10是根据本发明的一个实施例的获取虚拟车道线的方法的主要步骤流程示意图;
图11是根据本发明的一个实施例的计算机设备的主要结构示意图。
具体实施方式
下面参照附图来描述本发明的一些实施方式。本领域技术人员应当理解的是,这些实施方式仅仅用于解释本发明的技术原理,并非旨在限制本发明的保护范围。
在本发明的描述中,“处理器”可以包括硬件、软件或者两者的组合。处理器可以是中央处理器、微处理器、图像处理器、数字信号处理器或者其他任何合适的处理器。处理器具有数据和/或信号处理功能。处理器可以以软件方式实现、硬件方式实现或者二者结合方式实现。计算机可读存储介质包括任何合适的可存储程序代码的介质,比如磁碟、硬盘、光碟、闪存、只读存储器、随机存取存储器等等。术语“A和/或B”表示所有可能的A与B的组合,比如只是A、只是B或者A和B。
下面对本发明提供的车道线地图的构建方法实施例进行说明。
参阅附图1,图1是根据本发明的一个实施例的车道线地图的构建方法的主要步骤流程示意图。如图1所示,本发明实施例中的车道线地图的构建方法主要包括下列步骤S101至步骤S105。
步骤S101:获取车辆在地图采集范围内采集到的点云帧和图像帧。具体地,可以在车辆行驶的过程中,利用车辆上的相机采集得到图像帧,同时利用车辆上的激光雷达采集得到点云帧。
步骤S102:根据点云帧进行全局定位,以获取全局定位轨迹。
在获取到点云帧之后,根据每个点云帧的位姿,选取关键帧,然后根据关键帧构建因子图。因子图上的因子节点分别与每个关键帧一一对应,因子图上还设定有约束项,通过约束项对相邻两个关键帧的位姿进行约束,或者对形成回环关系的两个关键帧的位姿进行约束等等。在构建好因子图之后,可以基于这个因子图对每个关键帧的位姿进行优化,即求解关键帧位姿并得到关键帧位姿,根据这些关键帧位姿形成离线的全局定位轨迹。
在本发明实施例中可以采用自动驾驶技术领域中常规的基于因子图进行数据优化的方法,基于上述因子图对每个关键帧的位姿进行优化,本发明实施例同样对此不进行具体限定。
步骤S103:对图像帧进行车道线感知,以获取第一车道线观测实例。在本发明实施例中可以采用自动驾驶技术领域中常规的对图像进行车道线感知的方法对上述图像帧进行感知,得到第一车道线观测实例。例如,在一些实施方式中,可以采用机器学习算法比如深度学习算法,预先训练好的一个感知模型,该模型具备从图像帧上感知车道线信息的能力。在需要获取车道线信息时,可以将图像帧输入至上述感知模型,通过感知模型对图像帧感知识别,就可以得到第一车道线观测实例。
步骤S104:根据全局定位轨迹将第一车道线观测实例转换至全局坐标系,以获取在全局坐标系的第二车道线观测实例。
由于第一车道线观测实例是对图像帧进行感知到的,因而第一车道线观测实例实际上是在图像坐标系下的观测实例,相比于全局坐标系而言,图像坐标系是一个局部坐标系。对不同图像帧进行感知得到的第一车道线观测实例缺乏全局一致性,对此,为了避免这个问题,可以利用全局定位轨迹将第一车道线观测实例转换至全局坐标系,提高各个第一车道线观测实例的全局一致性,然后再执行后续的步骤S105。
步骤S105:根据每个图像帧的第二车道线观测实例,分别对初始车道线地图上的车道线状态实例进行迭代更新,以构建成最终车道线地图。
具体地,可以按照图像帧的采集时序,依次地利用每个图像帧对初始车道线地图进行更新。对于首个图像帧而言,初始车道线地图可以是一个预设的地图,比如不包含车道线要素的空白地图;对于非首个图像帧而言,初始车道线地图是利用前一个图像帧更新之后得到的地图。
基于上述步骤S101至步骤S105所述的方法,可以提高根据不同图像帧得到的车道线观测实例的全局一致性,这样在根据车道线观测实例对车道线状态实例进行迭代更新之后可以得到准确的车道线地图。通过这种方式,在停车场、居民小区和高速服务区等需要车辆低速行驶的场景中,即使车辆轨迹包含很多闭环轨迹,也可以得到准确的车道线地图。
下面对上述步骤S104和步骤S105作进一步说明。
一、对步骤S104进行说明。
车道线的长度通常比较长,为了便于对第二车道线观测实例与初始车道线地图上的车道线状态实例进行更新,可以将第一车道观测实例划分成多个离散的车道线观测点,车道线状态实例同样也由多个离散的车道线状态点组成,这样在对车道线状态实例进行更新时可以利用车道线观测点对车道线状态点进行更新。为此,在上述步骤S104的一些实施方式中可以通过下列步骤S1041至步骤S1043,来获取第二车道线观测实例。
步骤S1041:对第一车道线观测实例进行离散化,得到多个车道线观测点。
步骤S1042:根据全局定位轨迹分别将每个车道线观测点转换至全局坐标系,以获取在全局坐标系的车道线观测点。
步骤S1043:根据在全局坐标系的车道线观测点,获取第二车道线观测实例。
基于上述步骤S1041至步骤S1043所述的方法,可以得到由多个离线的车道线观测点组成的第二车道线观测实例,提高对车道线状态实例进行更新的可操作性和便捷性。
下面对上述步骤S1042作进一步说明。
全局定位轨迹是利用点云帧得到的,全局定位轨迹中的位姿通常是由点云帧采集装置的装置坐标系(比如激光雷达坐标系)向全局坐标系转换的位姿,因此,需要先利用全局定位轨迹获取图像帧采集装置的装置坐标系,即相机位姿,然后再利用该相机位姿将第一车道线观测实例中的车道线观测点转换至全局坐标系。具体而言,在上述步骤S1042的一些实施方式中可以通过下列步骤11至步骤13,来获取全局坐标系的车道线观测点。
步骤11:分别获取每个车道线观测点在相机坐标系的三维坐标。为了提高获取该三维坐标的便捷性,也为了提高该三维坐标的准确性,可以复用点云帧来获取每个车道线观测点在相机坐标系的三维坐标。具体而言,在一些实施方式中可以通过下列步骤111至步骤113来获取。
步骤111:获取根据点云帧建立的地面点云地图。
在本实施方式中可以采用自动驾驶技术领域中常规的地面点云地图的建立方法,根据点云帧建立地面点云地图,本实施方式不作赘述。
步骤112:根据地面点云地图,分别获取每个车道线观测点的深度值。在本实施方式中可以采用自动驾驶技术领域中常规的图像点深度值的获取方法,根据地面点云地图上点云的三维坐标得到每个车道线观测点的深度值,本实施方式不作赘述。
步骤113:根据每个车道线观测点在图像坐标系的二维坐标与深度值,分别获取每个车道线观测点在相机坐标系的三维坐标,即由上述二维坐标与深度值组成一个三维坐标,该三维坐标就是车道线观测点在相机坐标系的三维坐标。
基于上述步骤111至步骤113,可以复用点云帧,快速且准确地得到每个车道线观测实例在相机坐标系的三维坐标。
以上是对步骤11的说明,下面继续对步骤12和步骤13说明。
步骤12:根据全局定位轨迹分别获取在每个车道线观测点采集时刻的相机位姿,相机位姿是由相机坐标系向全局坐标系转换的位姿。
根据前面描述可知,全局定位轨迹中的位姿通常是由点云帧采集装置的装置坐标系(比如激光雷达坐标系)向全局坐标系转换的位姿,对此,可以利用点云帧采集装置与相机之间的外参,对上述位姿进行坐标系转换,就可以得到在每个车道线观测点采集时刻的相机位姿。进一步,点云帧采集装置和相机的采集频率可能不一致,对此,可以先获取在每个点云帧采集时刻的相机位姿,然后利用车道线观测点采集时刻对这些相机位姿进行时间插值计算,得到在车道线观测点采集时刻的相机位姿。
步骤13:根据每个车道线观测点采集时刻的相机位姿与每个车道线观测点在相机坐标系的三维坐标,分别获取每个车道线观测点在全局坐标系的三维坐标,以得到在全局坐标系的车道线观测点。
由于相机位姿是由相机坐标系向全局坐标系转换的位姿,因此,在得到车道线观测点在相机坐标系的三维坐标之后,可以利用相机位姿对该三维坐标进行坐标系转换,将其转换至全局坐标系。
基于上述步骤11至步骤13,可以复用点云帧,快速且准确地得到每个车道线观测实例在全局坐标系的三维坐标。
二、对步骤S105进行说明。
在本发明实施例中根据每个图像帧对初始车道线地图进行更新的方法都是相同的,为了描述简洁,下面以根据一个图像帧进行单次迭代更新的方法为例进行说明。具体而言,在本发明实施例中可以通过下列步骤S1051至步骤S1053,对初始车道线地图进行更新。
步骤S1051:对当前迭代更新中图像帧的第二车道线观测实例与初始车道线地图上的车道线状态实例进行匹配,以确定是否存在与第二车道线观测实例匹配的目标车道线状态实例;若存在,则转至步骤S1052;若不存在,则转至步骤S1053。
在本发明实施例中可以采用常规的匹配方法对第二车道线观测实例和车道线状态实例进行特征匹配。例如,由于第二车道线观测实例由多个离散的车道线观测点组成,车道线状态实例由多个离散的车道线状态点组成。为了提高匹配的准确性,可以采用匈牙利算法(Hungarian algorithm)对上述车道线观测点和车道线状态点进行匹配,从而确定出第二车道线观测实例与车道线状态实例之间的匹配关系,本发明实施例对此不进行具体限定。
步骤S1052:根据第二车道线观测实例,对目标车道线状态实例进行更新与关联。由于第二车道线观测实例由多个离散的车道线观测点组成,因此,在一些实施方式中可以根据第二车道线观测实例中的车道线观测点,在目标车道线状态实例中增加与上述车道线观测点各自对应的车道线状态点。
步骤S1053:根据第二车道线观测实例,在初始车道线地图上增加新的车道线状态实例并对第二车道线观测实例与这个新的车道线状态实例进行关联。由于第二车道线观测实例由多个离散的车道线观测点组成,因此,在一些实施方式中可以根据第二车道线观测实例中的车道线观测点,在初始车道线地图上增加新的车道线状态实例,其中,这个新的车道线状态实例中的车道线状态点与上述车道线观测点一一对应。
在通过上述步骤S1052或步骤S1053对初始车道线地图进行更新之后,为了防止由于车道线观测点存在的误差,降低车道线状态点的准确性,可以对目标车道线状态实例中增加的车道线状态点的位姿进行优化或对新增的车道线状态实例中车道线状态点的位姿进行优化。
在本发明实施例中可以采用自动驾驶技术领域中常规的位姿优化方法对上述车道线状态点的位姿进行优化。例如,可以通过因子图优化或卡尔曼(Kalman Filtering)滤波等方式进行优化。
下面对因子图优化和卡尔曼滤波的方法进行简单说明。
1、因子图优化
在本发明实施例中可以根据车道线状态点建立因子图,因子图上的因子节点分别与每个车道线状态点一一对应,因子图上还设定有约束项,通过约束项对相邻两个车道线状态点的位姿进行约束,或者对形成回环关系的两个车道线状态点的位姿进行约束等等。本领域技术人员可以根据实际需求灵活设置约束项的具体内容,本发明实施例对此不进行具体限定。此外,在本发明实施例中可以采用自动驾驶技术领域中常规的基于因子图进行数据优化的方法,基于上述因子图对每个车道线状态点的位姿进行优化,本发明实施例同样对此不进行具体限定。
2、卡尔曼滤波
在本发明实施例中可以基于卡尔曼滤波理论建立车道线状态点位姿估计模型,基于车道线状态点位姿估计模型并根据车道线观测点,估计得到最优的位姿。本领域技术人员可以采用自动驾驶技术领域中常规的卡尔曼滤波方法,建立车道线状态点位姿估计模型并估计得到最优的车道线状态点位姿,本发明实施例对此不进行具体限定。
基于上述方法可以消除车道线观测点的误差,对车道线状态点位姿的影响,提高地图更新的准确性。
为了进一步提高车道线地图的准确性,在通过上述方法实施例建成最终车道线地图之后,还可以对这个最终车道线地图进行优化,其中,优化方式包括回环优化、降噪优化和融合优化中的一种或多种。在一些优选实施方式中可以对最终车道线地图依次进行回环优化、降噪优化和融合优化。下面分别对每种优化方式进行说明。
一、回环优化
当车辆轨迹包含较多闭环轨迹,会影响车道线地图的准确性,为了进一步消除闭环轨迹对车道线地图的影响,可以通过图2所示的下列步骤S201至步骤S203,对最终车道线地图进行回环优化。
步骤S201:对最终车道线地图上的车道线状态实例进行回环检测。具体地,可以根据车道线状态实例的位姿进行回环检测,将位姿相近的车道线状态实例作为能够形成回环的回环车道线状态实例。
步骤S202:根据回环检测的结果,获取能够形成回环的回环车道线状态实例。
步骤S203:对回环车道线状态实例进行合并。
参阅附图3,在对车道线状态实例进行回环检测之后,可以确定车道线状态实例Track-0和Track-1是回环车道线状态实例,因而可以将Track-0和Track-1合并成一个新的车道线状态实例Track-0。
基于上述步骤S201至步骤S203所述的方法,可以减小重复的车道线状态实例,进一步消除闭环轨迹对车道线地图的影响。
下面对上述步骤S201作进一步说明。
在上述步骤S201的一些实施方式中,可以通过下列步骤S2021至步骤S2023,对车道线状态实例进行回环检测。
步骤S2021:分别获取每两个车道线状态实例之间的车道线间距。在本发明实施例中可以采用常规的车道线间距的获取方法,来获取两个车道线状态实例之间的车道线间距。例如,可以先获取两个车道线状态实例之间的重叠区域,然后获取重叠区域的车道线间距,将这个车道线间距作为两个车道线状态实例之间的车道线间距。
步骤S2022:选取车道线间距小于设定距离阈值的候选车道线状态实例。在本发明实施例中本领域技术人员可以根据实际需求灵活地设置设定距离阈值的具体数值,本发明实施例对此不进行限定。
步骤S2023:将候选车道线状态实例作为回环车道线状态实例。在本发明实施例中可以将候选车道线状态实例直接作为回环车道线状态实例,此外也可以对候选车道线状态实例进行合并分析,根据合并分析的结果选择性地将候选车道线状态实例作为回环车道线状态实例,具体地,在一些实施方式中可以通过下列步骤21至步骤25对候选车道线状态实例进行合并分析,并根据合并分析的结果选择性地将候选车道线状态实例作为回环车道线状态实例。
步骤21:获取与候选车道线状态实例关联的第二车道线观测实例。根据前述方法实施例的描述可知,在根据第二车道线观测实例对初始车道线地图上的车道线状态实例进行更新时会对二者进行匹配,若匹配上则将二者进行关联。本发明实施例中与候选车道线状态实例关联的第二车道线观测实例就是通过上述方法关联得到车道线观测实例。
步骤22:根据候选车道线状态实例中车道线状态点的位姿与第二车道线观测实例中车道线观测点的位姿,分别计算每个车道线状态点与各自对应的车道线观测点之间的第一残差。
步骤23:对候选车道线状态实例进行合并得到合并车道线状态实例。
步骤24:根据合并车道线状态实例中车道线状态点的位姿与第二车道线观测实例中车道线观测点的位姿,分别计算每个车道线状态点与各自对应的车道线观测点之间的第二残差。
步骤25:根据第一残差与第二残差,判断是否将候选车道线状态实例作为回环车道线状态实例。
第一残差表示了合并之前车道线状态点与车道线观测点之间的残差,第二残差表示了合并之后车道线状态点与车道线观测点之间的残差。残差越大表明车道线状态点与车道线观测点之间的误差越大,若第二残差小于第一残差,表明合并之后会降低上述误差,因此,可以将候选车道线状态实例作为回环车道线状态实例;否则,不可以将候选车道线状态实例作为回环车道线状态实例。
进一步,为了提高根据第一残差与第二残差进行判断的准确性,可以通过下列步骤251至步骤254计算合并之后的残差增长率,根据残差增长率判断是否将候选车道线状态实例作为回环车道线状态实例。
步骤251:根据第一残差的平均值与第二残差的平均值,计算对候选车道线状态实例进行合并之后的残差增长率。
由于候选车道线状态实例包括多个车道线状态点,每个车道线状态点都有各自对应的第一残差,为了便于计算残差增长率,可以先计算所有车道线状态点的第一残差、第二残差的平均值,然后再根据该平均值计算残差增长率。在本发明实施例中可以采用数学技术领域中常规的数据增长率计算方法,根据第一残差、第二残差的平均值,计算残差增长率,本发明实施例对此不进行具体限定。
步骤252:判断残差增长率是否小于预设的增长率阈值;
若小于,则表明合并之后车道线状态点与车道线观测点之间的误差较小,适合进行合并,因此转至步骤253;
若大于或等于,则表明合并之后车道线状态点与车道线观测点之间的误差较大,不适合进行合并,因此转至步骤254;
步骤253:将候选车道线状态实例作为回环车道线状态实例;步骤254:不将候选车道线状态实例作为回环车道线状态实例。
以上是对步骤S201的说明。
基于上述步骤S2021至步骤S2023所述的方法,可以根据车道线状态实例之间的车道线间距,便捷且准确地得到回环车道线状态实例。
二、降噪优化
通过前述方法实施例构建而成的最终车道线地图上可能会存在一些噪声数据(比如车道线状态实例或与车道线状态实例关联的车道线观测点),为了进一步提高车道线地图的准确性,需要消除这些噪声数据。下面分别对噪声数据是车道线状态实例和车道线观测点时的噪声数据消除方法进行说明。
(一)噪声数据是车道线状态实例
具体而言,在本发明实施例中可以通过图4所示的下列步骤S301至步骤S304,对最终车道线地图进行降噪优化。
步骤S301:针对最终车道线地图上的每个车道线状态实例,获取与车道线状态实例关联的第二车道线观测实例以及相应的关联时刻。
根据前述方法实施例的描述可知,在根据第二车道线观测实例对初始车道线地图上的车道线状态实例进行更新时会对二者进行匹配,若匹配上则将二者进行关联。本发明实施例中与车道线状态实例关联的第二车道线观测实例就是通过上述方法关联得到车道线观测实例,关联时刻可以是对第二车道线观测实例与车道线状态实例进行关联的时刻,也可以是判断出二者成功匹配上的时刻。
步骤S302:根据第二车道线观测实例的关联时刻,判断车道线状态实例是否处于异常跟踪状态;
若是,则转至步骤S303;若否,则转至步骤S304。
若当前图像帧的第二车道线观测实例与车道线状态实例匹配上,则表明此刻车道线状态实例被跟踪上,即车道线状态实例处于跟踪状态;若当前图像帧的第二车道线观测实例与车道线状态实例未匹配上,则表明此刻车道线状态实例未被跟踪上,即车道线状态实例处于跟丢状态。也就是说,在关联时刻,车道线状态实例处于跟踪状态,而在非关联时刻,车道线状态实例处于跟丢状态。
需要说明的是,本发明实施例是按照图像帧的采集时序,依次地根据每个图像帧的第二车道线观测实例与车道线状态实例进行匹配,因此,每个图像帧都会有各自对应的匹配结果,若成功匹配上则执行完匹配操作的时刻可以是关联时刻,若未成功匹配上则执行完匹配操作的时刻可以是非关联时刻。如果每个图像帧的匹配结果都是成功匹配,那么关联时刻会呈现为多个连续的时刻,中间不存在非关联时刻。
根据关联时刻可以分析出车道线状态实例在不同时刻是处于跟踪状态还是跟丢状态,根据不同时刻的状态,可以判断出车道线状态实例是否处于异常跟踪状态。具体而言,在一些实施方式中,可以根据第二车道线观测实例的关联时刻,获取车道线状态实例处于跟踪状态的跟踪时刻和处于跟丢状态的跟丢时刻(即非关联时刻),然后根据跟踪时刻与跟踪时刻,判断是否在跟踪状态与跟丢状态之间频繁切换或者连续处于跟踪状态的次数是否小于预设的次数阈值;若在跟踪状态与跟丢状态之间频繁切换或者连续处于跟踪状态的次数小于预设的次数阈值,则表明车道线状态实例处于异常跟踪状态,该车道线状态实例是噪声数据,需要删除;否则,表明车道线状态实例未处于异常跟踪状态,该车道线状态实例不是噪声数据,可以继续保留。本领域技术人员可以根据实际需求灵活地设置预设的次数阈值的具体数值,本发明实施例对此不进行限定。
步骤S303:删除车道线状态实例。
步骤S304:保留车道线状态实例。
如图5所示,通过上述方法分析出车道线状态实例Track-0是噪声数据,需要删除,而车道线状态实例Track-1不是噪声数据,可以继续保留。
基于上述步骤S301至步骤S304所述的方法,可以删除车道线状态实例中的噪声数据,保留正常的车道线状态实例。
(二)噪声数据是车道线观测点
具体而言,在本发明实施例中可以通过图6所示的下列步骤S401至步骤S405,对最终车道线地图进行降噪优化。
步骤S401:针对最终车道线地图上的每个车道线状态实例,获取与车道线状态实例关联的第二车道线观测实例。
步骤S402:根据车道线状态实例中车道线状态点的位姿与第二车道线观测实例中车道线观测点的位姿,分别计算每个车道线状态点与各自对应的车道线观测点之间的第三残差。
步骤S403:根据第三残差,判断对应的车道线观测点是否为噪声数据;若第三残差较大,则表明车道线观测点是噪声数据,需要删除,因而转至步骤S404;若第三残差较小,则表明车道线观测点不是噪声数据不需要删除,因而转至步骤S405。
在一些优选实施方式中为了便于进行残差判断,可以判断第三残差是否大于预设的残差阈值;若大于,则判定第三残差对应的车道线观测点是噪声数据;若小于或等于,则判定第三残差对应的车道线观测点不是噪声数据。本领域技术人员可以根据实际需求灵活地设置预设的残差阈值的具体数值,本发明实施例对此不进行限定。
步骤S404:删除车道线观测点。
步骤S405:保留车道线观测点。
基于上述步骤S401至步骤S405所述的方法,可以删除车道线观测点中的噪声数据,保留正常的车道线观测点。
三、融合优化
为了进一步提高车道线地图的准确性,可以通过图7所示的下列步骤S501至步骤S504,对最终车道线地图进行融合优化。
步骤S501:针对最终车道线地图上的每个车道线状态实例,获取与车道线状态实例关联的所有第二车道线观测实例。
步骤S502:将车道线状态实例中的每个车道线状态点分别投影至图像坐标系,得到每个车道线状态点各自对应的投影点。
根据前述方法实施例的描述可知,根据全局定位轨迹可以得到在每个车道线观测点采集时刻的相机位姿(由相机坐标系向全局坐标系转换的位姿),由于车道线状态点与车道线观测点一一对应,因此,每个车道线观测点采集时刻的相机位姿也就是每个车道线观测点的相机位姿。此外,车道线状态点的坐标系也是全局坐标系,因此,可以利用相机位姿对车道线状态点进行坐标系转换,将其由全局坐标系转换至相机坐标系,进而再利用相机内参将车道线状态点由相机坐标系转换至图像坐标系,车道线状态点在图像坐标系的点就是投影点。
步骤S503:根据所有第二车道线观测实例中的车道线观测点与投影点,建立视觉观测约束项。
视觉观测约束项用于对车道线观测点的点线距离之和进行最小化约束,点线距离是车道线观测点到与其最近的两个投影点形成的线段的距离。如图8所示,黑色实心圆点是车道线状态点在相机坐标系的投影点,空心圆点是第二车道线观测实例中的车道线观测点,一个车道线观测点到与其最近的两个投影点形成的线段的点线距离是d。
步骤S505:采用图优化算法并根据视觉观测约束项,对车道线状态实例中每个车道线状态点的位姿进行优化。
具体地,在本发明实施例中可以根据车道线状态点、每个车道线观测点采集时刻的相机位姿和上述视觉观测约束项,建立一个图(Graph),然后采用图优化算法对这个图进行优化,以实现对车道线状态实例中每个车道线状态点的位姿进行优化。如图9所示,T1至T6分别表示不同车道线观测点采集时刻的相机位姿,这些相机位姿是常量,不需要进行优化;L1至L5表示车道线状态点,这些车道线状态点是被优化量;黑色方框表示数据观测约束项的残差,即点线距离d。
基于上述步骤S501至步骤S505所述的方法,利用车道线状态实例关联的所有车道线观测点对每个车道线状态点的位姿进行优化,提高每个车道线状态点的位姿准确性,进而提高车道线地图的准确性。
进一步,在一些实施方式中为了提高图优化算法的准确性,除了可以建立视觉观测约束项以外,还可以建立地面约束项和/或纵向约束项,进而采用图优化方法算并根据视觉观测约束项、地面约束项和/或纵向约束项对每个车道线状态点的位姿进行优化。例如,同时根据视觉观测约束项、地面约束项和纵向约束项进行位姿优化。下面分别对地面约束项和纵向约束项的建立方法进行说明。
(一)地面约束项的建立方法
具体地,可以通过下列步骤31至步骤33,来建立地面约束项。
步骤31:获取根据点云帧建立的地面点云地图。
步骤32:根据地面点云地图分别获取每个车道线状态点对应的地平面。在本发明实施例中可以采用自动驾驶技术领域中常规的地平面获取方法,根据地面点云地图获取车道线状态点对应的地平面。
步骤33:根据车道线状态点到其对应地平面的距离,建立对该距离进行最小化约束的地面约束项。
由于车道线通常是位于地面上的,车道线状态点与地平面之间的距离越小越好,因此,可以通过地面约束项对车道线状态点到其对应地平面的距离进行最小化约束,来提高车道线状态点的位姿准确性。
(二)纵向约束项的建立方法
具体地,可以通过下列步骤41至步骤44,建立纵向约束项;
步骤41:获取垂直于车辆前进方向且垂直于地面平的纵向平面。在本发明实施例中可以采用自动驾驶技术领域中常规的平面获取方法,来获取同时垂直于车辆前进方向与地平面的纵向平面,本发明实施例对此不进行具体限定。例如,可以将垂直于车辆前进方向的铅锤面作为上述纵向平面。
步骤42:根据车道线状态点到纵向平面的距离,建立对距离进行最小化约束的纵向约束项。
通过纵向约束项可以对车道线状态点在车辆前进方向(纵向)的位置进行固定。
以上是对回环优化、降噪优化和融合优化的说明。
参阅附图10,在得到最终车道线地图之后或采用上述优化方式中的一种或多种对最终车道线地图进行优化之后,还可以下列步骤S601至步骤S602,生成虚拟车道线。
步骤S601:建立车道线几何约束项和/或车辆轨迹约束项。
车道线几何约束项用于对车道线虚拟点的几何信息进行约束,几何信息可以包括车道线虚拟点的位置、切线方向和曲率等;车辆轨迹约束项用于对虚拟车道线与车辆轨迹之间的距离进行最小化约束。
步骤S602:根据最终车道线地图上的车道线状态实例生成虚拟车道线,并根据车道线几何约束项和/或车辆轨迹约束项对虚拟车道线中每个车道线虚拟点的位姿进行优化,以得到最终的虚拟车道线。
具体地,可以根据车道线状态实例中的车道线状态点,生成一个初始虚拟车道线,初始虚拟车道线由多个车道线虚拟点组成。一部分车道线虚拟点是与每个车道线状态点各自对应的虚拟点,还有一部分车道线虚拟点是位于车道线状态点缺失部分的虚拟点。在本发明实施例中可以采用自动驾驶技术领域中常规的位姿优化方法对上述车道线虚拟点的位姿进行优化。例如,可以通过因子图优化的方式进行优化。其中,因子图优化的方式与前述方法实施例中描述的因子图优化的方式类似,在此不再赘述。
基于上述步骤S601至步骤S602,可以在车道线存在缺失、磨损或遮挡等情况下,生成得到可信度较高且完整的虚拟车道线,从而有利于车辆根据这个虚拟车道线进行自动驾驶控制等操作。
下面对车道线几何约束项和车辆轨迹约束项的建立方法进行说明。
(一)车道线几何约束项的建立方法
车道线几何约束项包括但不限于位置约束项、切线方向约束项和平滑约束项等,下面分别对这几种约束项进行说明。
1、位置约束项和切线方向约束项
在本发实施例中可以通过下列步骤51至步骤54,分别建立位置约束项和切线方向约束项。
步骤51:获取设定的车道线起点和车道线终点。
车道线起点和车道线终点是预先设定好的车道线的起点和终点,基于该起点和终点来生成虚拟车道线。
步骤52:获取虚拟车道线中车道线虚拟点的虚拟起点和虚拟终点。虚拟起点和虚拟终点是在生成虚拟车道线时得到的虚拟车道线的起点和终点,二者并非是前述设定的车道线起点和车道线终点。
步骤53:根据车道线起点与虚拟起点,建立起点位置约束项和/或起点切线方向约束项。
起点位置约束项用于对车道线起点与虚拟起点之间的位置偏差进行最小化约束,起点切线方向约束项用于对车道线起点与虚拟起点之间的切线方向偏差进行最小化约束。
步骤54:根据车道线终点与虚拟终点,建立终点位置约束项和/或终点切线方向约束项。
终点位置约束项用于对车道线终点与虚拟终点之间的位置偏差进行最小化约束,终点切线方向约束项用于对车道线终点与虚拟终点之间的切线方向偏差进行最小化约束。
通过上述位置约束项可以对虚拟车道线中起点和终点的位置进行约束,使其更加接近于设定的车道线起点和车道线终点的位置;通过上述切线方向约束项可以对虚拟车道线中起点和终点的切线方向进行约束,使其更加接近于设定的车道线起点和车道线终点的切线方向。
2、平滑约束项
在本发实施例中可以通过下列步骤61至步骤62,建立平滑约束项。
步骤61:分别计算虚拟车道线中每个车道线虚拟点的曲率。
步骤62:根据相邻车道线虚拟点之间的曲率偏差,建立对曲率偏差进行最小化约束的平滑约束项。
本领域技术人员可以根据实际需求灵活地设定相邻车道线虚拟点的数量,比如相邻车道线虚拟点的数量可以是2个,也可以是3个。
车道线的轨迹通常是一个平滑的轨迹,相邻车道线虚拟点之间的曲率通常不会发生突变,因此,曲率偏差通常会比较小,通过上述平滑约束项可以保证生成的虚拟车道线的轨迹是一个平滑的轨迹。
(二)车辆轨迹约束项的建立方法
在本发实施例中可以通过下列步骤71至步骤72,建立车辆轨迹约束项。
步骤71:获取虚拟车道线的中心线。
虚拟车道线可以包括虚拟车道的两条边界线,虚拟车道线的中心线是位于这两条边界线中间的线,也就是这个虚拟车道的中心线。
在本发明实施例中可以采用自动驾驶技术领域中常规的车道中心线的获取方法,来获取上述虚拟车道线的中心线,本发明实施例对此不进行赘述。
步骤72:根据中心线与车辆轨迹之间的距离,建立对距离进行最小化约束的车辆轨迹约束项。
车辆轨迹可以根据前述方法实施例中的全局定位轨迹得到。在实际应用中车辆通常是在车道的中间位置行驶的,即与车道中心线的位置比较接近,因此,可以通过上述车辆轨迹约束项对虚拟车道线的轨迹约束。
以上是对虚拟车道线获取方法的说明。
需要指出的是,尽管上述实施例中将各个步骤按照特定的先后顺序进行了描述,但是本领域技术人员可以理解,为了实现本发明的效果,不同的步骤之间并非必须按照这样的顺序执行,其可以同时(并行)执行或以其他顺序执行,这些变化之后的方案与本发明中描述的技术方案属于等同技术方案,因此也将落入本发明的保护范围之内。
本领域技术人员能够理解的是,本发明实现上述一实施例的方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读存储介质可以包括:能够携带所述计算机程序代码的任何实体或装置、介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器、随机存取存储器、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读存储介质不包括电载波信号和电信信号。
进一步,本发明还提供了一种计算机设备。
参阅附图11,图11是根据本发明的一个计算机设备实施例的主要结构示意图。如图11所示,本发明实施例中的计算机设备主要包括存储装置和处理器,存储装置可以被配置成存储执行上述方法实施例的车道线地图的构建方法的程序,处理器可以被配置成用于执行存储装置中的程序,该程序包括但不限于执行上述方法实施例的车道线地图的构建方法的程序。为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。
在本发明实施例中计算机设备可以是包括各种电子设备形成的控制装置设备。在一些可能的实施方式中,计算机设备可以包括多个存储装置和多个处理器。而执行上述方法实施例的车道线地图的构建方法的程序可以被分割成多段子程序,每段子程序分别可以由处理器加载并运行以执行上述方法实施例的车道线地图的构建方法的不同步骤。具体地,每段子程序可以分别存储在不同的存储装置中,每个处理器可以被配置成用于执行一个或多个存储装置中的程序,以共同实现上述方法实施例的车道线地图的构建方法,即每个处理器分别执行上述方法实施例的车道线地图的构建方法的不同步骤,来共同实现上述方法实施例的车道线地图的构建方法。
上述多个处理器可以是部署于同一个设备上的处理器,例如上述计算机设备可以是由多个处理器组成的高性能设备,上述多个处理器可以是该高性能设备上配置的处理器。此外,上述多个处理器也可以是部署于不同设备上的处理器,例如上述计算机设备可以是服务器集群,上述多个处理器可以是服务器集群中不同服务器上的处理器。
进一步,本发明还提供了一种计算机可读存储介质。
在根据本发明的一个计算机可读存储介质的实施例中,计算机可读存储介质可以被配置成存储执行上述方法实施例的车道线地图的构建方法的程序,该程序可以由处理器加载并运行以实现上述车道线地图的构建方法。为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该计算机可读存储介质可以是包括各种电子设备形成的存储装置设备,可选的,本发明实施例中计算机可读存储介质是非暂时性的计算机可读存储介质。
至此,已经结合附图所示的一个实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征作出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。
Claims (23)
1.一种车道线地图的构建方法,其特征在于,所述方法包括:
获取车辆在地图采集范围内采集到的点云帧和图像帧;
根据所述点云帧进行全局定位,以获取全局定位轨迹;
对所述图像帧进行车道线感知,以获取第一车道线观测实例;
根据所述全局定位轨迹将所述第一车道线观测实例转换至全局坐标系,以获取在全局坐标系的第二车道线观测实例;
根据每个图像帧的第二车道线观测实例,分别对初始车道线地图上的车道线状态实例进行迭代更新,以构建成最终车道线地图。
2.根据权利要求1所述的方法,其特征在于,“根据每个图像帧的第二车道线观测实例,分别对初始车道线地图上的车道线状态实例进行迭代更新,以构建成最终车道线地图”的步骤具体包括:
针对每次迭代更新,对当前迭代更新中图像帧的第二车道线观测实例与初始车道线地图上的车道线状态实例进行匹配,以确定是否存在与所述第二车道线观测实例匹配的目标车道线状态实例;
若是,则根据所述第二车道线观测实例,对所述目标车道线状态实例进行更新与关联;
若否,则根据所述第二车道线观测实例,在初始车道线地图上增加新的车道线状态实例并对所述第二车道线观测实例与所述新的车道线状态实例进行关联。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括通过下列方式对目标车道线状态实例进行更新或增加新的车道线状态实例:
根据所述第二车道线观测实例中的车道线观测点,在目标车道线状态实例中增加与每个所述车道线观测点各自对应的车道线状态点;
或者,
根据所述第二车道线观测实例中的车道线观测点,在初始车道线地图上增加新的车道线状态实例,其中,所述新的车道线状态实例中的车道线状态点与所述车道线观测点一一对应。
4.根据权利要求3所述的方法,其特征在于,在“对目标车道线状态实例进行更新或增加新的车道线状态实例”的步骤之后,还包括:
对目标车道线状态实例中增加的车道线状态点的位姿进行优化,
或者,
对所述新的车道线状态实例中车道线状态点的位姿进行优化。
5.根据权利要求2至4中任一项所述的方法,其特征在于,在“根据每个图像帧的第二车道线观测实例,分别对初始车道线地图上的车道线状态实例进行迭代更新,以构建成最终车道线地图”的步骤之后,所述方法还包括通过下列方式对最终车道线地图进行回环优化:
对所述最终车道线地图上的车道线状态实例进行回环检测;
根据回环检测的结果,获取能够形成回环的回环车道线状态实例;
对所述回环车道线状态实例进行合并。
6.根据权利要求5所述的方法,其特征在于,“对所述最终车道线地图上的车道线状态实例进行回环检测”的步骤具体包括:
分别获取每两个车道线状态实例之间的车道线间距;
选取车道线间距小于设定距离阈值的候选车道线状态实例;
将所述候选车道线状态实例作为所述回环车道线状态实例。
7.根据权利要求6所述的方法,其特征在于,“将所述候选车道线状态实例作为所述回环车道线状态实例”的步骤具体包括:
获取与所述候选车道线状态实例关联的第二车道线观测实例;
根据所述候选车道线状态实例中车道线状态点的位姿与所述第二车道线观测实例中车道线观测点的位姿,分别计算每个车道线状态点与各自对应的车道线观测点之间的第一残差;
对所述候选车道线状态实例进行合并得到合并车道线状态实例;
根据所述合并车道线状态实例中车道线状态点的位姿与所述第二车道线观测实例中车道线观测点的位姿,分别计算每个车道线状态点与各自对应的车道线观测点之间的第二残差;
根据所述第一残差与所述第二残差,判断是否将所述候选车道线状态实例作为所述回环车道线状态实例。
8.根据权利要求7所述的方法,其特征在于,“根据所述第一残差与所述第二残差,判断是否将所述候选车道线状态实例作为所述回环车道线状态实例”的步骤具体包括:
根据所述第一残差的平均值与所述第二残差的平均值,计算对所述候选车道线状态实例进行合并之后的残差增长率;
判断所述残差增长率是否小于预设的增长率阈值;
若是,则将候选车道线状态实例作为回环车道线状态实例;
若否,则不将候选车道线状态实例作为回环车道线状态实例。
9.根据权利要求2至4中任一项所述的方法,其特征在于,在“根据每个图像帧的第二车道线观测实例,分别对初始车道线地图上的车道线状态实例进行迭代更新,以构建成最终车道线地图”的步骤之后,所述方法还包括通过下列方式对最终车道线地图进行降噪优化:
针对所述最终车道线地图上的每个车道线状态实例,获取与所述车道线状态实例关联的第二车道线观测实例以及相应的关联时刻;
根据所述第二车道线观测实例的关联时刻,判断所述车道线状态实例是否处于异常跟踪状态;
若是,则删除所述车道线状态实例;
若否,则保留所述车道线状态实例。
10.根据权利要求9所述的方法,其特征在于,“根据所述第二车道线观测实例的关联时刻,判断所述车道线状态实例是否处于异常跟踪状态”的步骤具体包括:
根据所述第二车道线观测实例的关联时刻,获取所述车道线状态实例处于跟踪状态的跟踪时刻和处于跟丢状态的跟丢时刻;
根据所述跟踪时刻与所述跟踪时刻,判断是否在跟踪状态与跟丢状态之间频繁切换或者连续处于跟踪状态的次数是否小于预设的次数阈值;
若是,则处于异常跟踪状态;
否则,未处于异常跟踪状态。
11.根据权利要求9所述的方法,其特征在于,“对最终车道线地图进行降噪优化”的步骤还包括:
针对所述最终车道线地图上的每个车道线状态实例,获取与所述车道线状态实例关联的第二车道线观测实例;
根据所述车道线状态实例中车道线状态点的位姿与所述第二车道线观测实例中车道线观测点的位姿,分别计算每个车道线状态点与各自对应的车道线观测点之间的第三残差;
根据所述第三残差,判断对应的车道线观测点是否为噪声数据;
若是,则删除所述车道线观测点;
若否,则保留所述车道线观测点。
12.根据权利要求11所述的方法,其特征在于,“根据所述第三残差,判断对应的车道线观测点是否为噪声数据”的步骤具体包括:
判断所述第三残差是否大于预设的残差阈值;
若是,则所述第三残差对应的车道线观测点是噪声数据;
若否,则所述第三残差对应的车道线观测点不是噪声数据。
13.根据权利要求2至4中任一项所述的方法,其特征在于,在“根据每个图像帧的第二车道线观测实例,分别对初始车道线地图上的车道线状态实例进行迭代更新,以构建成最终车道线地图”的步骤之后,所述方法还包括通过下列方式对最终车道线地图进行融合优化:
针对所述最终车道线地图上的每个车道线状态实例,获取与所述车道线状态实例关联的所有第二车道线观测实例;
将所述车道线状态实例中的每个车道线状态点分别投影至图像坐标系,得到每个车道线状态点各自对应的投影点;
根据所有第二车道线观测实例中的车道线观测点与所述投影点,建立视觉观测约束项;
采用图优化算法并根据所述视觉观测约束项,对所述车道线状态实例中每个车道线状态点的位姿进行优化;
其中,所述视觉观测约束项用于对车道线观测点的点线距离之和进行最小化约束,所述点线距离是车道线观测点到与其最近的两个投影点形成的线段的距离。
14.根据权利要求13所述的方法,其特征在于,在“采用图优化算法并根据所述视觉观测约束项,对所述车道线状态实例中每个车道线状态点的位姿进行优化”的步骤之前,所述方法还包括通过下列方式建立地面约束项和/或纵向约束项:
获取根据所述点云帧建立的地面点云地图;
根据所述地面点云地图分别获取每个车道线状态点对应的地平面;
根据所述车道线状态点到其对应地平面的距离,建立对所述距离进行最小化约束的地面约束项;
和/或,
获取垂直于车辆前进方向且垂直于所述地面平的纵向平面;
根据所述车道线状态点到所述纵向平面的距离,建立对所述距离进行最小化约束的纵向约束项;
“采用图优化算法并根据所述视觉观测约束项,对所述车道线状态实例中每个车道线状态点的位姿进行优化”的步骤具体包括:
采用图优化方法算并根据所述视觉观测约束项、所述地面约束项和/或所述纵向约束项对每个车道线状态点的位姿进行优化。
15.根据权利要求1至4中任一项所述的方法,其特征在于,在“根据每个图像帧的第二车道线观测实例,分别对初始车道线地图上的车道线状态实例进行迭代更新,以构建成最终车道线地图”的步骤之后,所述方法还包括通过下列方式生成虚拟车道线:
建立车道线几何约束项和/或车辆轨迹约束项;
根据所述最终车道线地图上的车道线状态实例生成虚拟车道线,并根据所述车道线几何约束项和/或所述车辆轨迹约束项对所述虚拟车道线中每个车道线虚拟点的位姿进行优化,以得到最终的虚拟车道线;
其中,所述车道线几何约束项用于对车道线虚拟点的几何信息进行约束,所述车辆轨迹约束项用于对虚拟车道线与车辆轨迹之间的距离进行最小化约束。
16.根据权利要求15所述的方法,其特征在于,所述几何信息包括车道线虚拟点的位置和切线方向,“建立车道线几何约束项”的步骤包括:
获取设定的车道线起点和车道线终点;
获取所述虚拟车道线中车道线虚拟点的虚拟起点和虚拟终点;
根据所述车道线起点与所述虚拟起点,建立起点位置约束项和/或起点切线方向约束项;
根据所述车道线终点与所述虚拟终点,建立终点位置约束项和/或终点切线方向约束项;
其中,所述起点位置约束项用于对所述车道线起点与所述虚拟起点之间的位置偏差进行最小化约束,所述起点切线方向约束项用于对所述车道线起点与所述虚拟起点之间的切线方向偏差进行最小化约束;
所述终点位置约束项用于对所述车道线终点与所述虚拟终点之间的位置偏差进行最小化约束,所述终点切线方向约束项用于对所述车道线终点与所述虚拟终点之间的切线方向偏差进行最小化约束。
17.根据权利要求15所述的方法,其特征在于,所述几何信息还包括车道线虚拟点的曲率,“建立车道线几何约束项”的步骤还包括:
分别计算所述虚拟车道线中每个车道线虚拟点的曲率;
根据相邻车道线虚拟点之间的曲率偏差,建立对所述曲率偏差进行最小化约束的平滑约束项。
18.根据权利要求15所述的方法,其特征在于,“建立车辆轨迹约束项”的步骤具体包括:
获取所述虚拟车道线的中心线;
根据所述中心线与车辆轨迹之间的距离,建立对所述距离进行最小化约束的车辆轨迹约束项。
19.根据权利要求1所述的方法,其特征在于,“根据所述全局定位轨迹将所述第一车道线观测实例转换至全局坐标系,以获取在全局坐标系的第二车道线观测实例”的步骤具体包括:
对所述第一车道线观测实例进行离散化,得到多个车道线观测点;
根据所述全局定位轨迹分别将每个车道线观测点转换至全局坐标系,以获取在全局坐标系的车道线观测点;
根据在全局坐标系的车道线观测点,获取所述第二车道线观测实例。
20.根据权利要求19所述的方法,其特征在于,“根据所述全局定位轨迹分别将每个车道线观测点转换至全局坐标系,以获取在全局坐标系的车道线观测点”的步骤具体包括:
分别获取每个车道线观测点在相机坐标系的三维坐标;
根据所述全局定位轨迹分别获取在每个车道线观测点采集时刻的相机位姿,所述相机位姿是由相机坐标系向全局坐标系转换的位姿;
根据每个车道线观测点采集时刻的相机位姿与每个车道线观测点在相机坐标系的三维坐标,分别获取每个车道线观测点在全局坐标系的三维坐标,以得到在全局坐标系的车道线观测点。
21.根据权利要求20所述的方法,其特征在于,“分别获取每个车道线观测点在相机坐标系的三维坐标”的步骤具体包括:
获取根据所述点云帧建立的地面点云地图;
根据所述地面点云地图,分别获取每个车道线观测点的深度值;
根据每个车道线观测点在图像坐标系的二维坐标与所述深度值,分别获取每个车道线观测点在相机坐标系的三维坐标。
22.一种计算机设备,包括处理器和存储装置,所述存储装置适于存储多条程序代码,其特征在于,所述程序代码适于由所述处理器加载并运行以执行权利要求1至21中任一项所述的车道线地图的构建方法。
23.一种计算机可读存储介质,其中存储有多条程序代码,其特征在于,所述程序代码适于由处理器加载并运行以执行权利要求1至21中任一项所述的车道线地图的构建方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211679881.5A CN115661299B (zh) | 2022-12-27 | 2022-12-27 | 车道线地图的构建方法、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211679881.5A CN115661299B (zh) | 2022-12-27 | 2022-12-27 | 车道线地图的构建方法、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115661299A true CN115661299A (zh) | 2023-01-31 |
CN115661299B CN115661299B (zh) | 2023-03-21 |
Family
ID=85023137
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211679881.5A Active CN115661299B (zh) | 2022-12-27 | 2022-12-27 | 车道线地图的构建方法、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115661299B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116129389A (zh) * | 2023-03-27 | 2023-05-16 | 浙江零跑科技股份有限公司 | 一种车道线获取方法、计算机设备、可读存储介质及机动车 |
CN116503482A (zh) * | 2023-06-26 | 2023-07-28 | 小米汽车科技有限公司 | 车辆位置的获取方法、装置及电子设备 |
CN116630436A (zh) * | 2023-05-17 | 2023-08-22 | 禾多科技(北京)有限公司 | 相机外参修正方法、装置、电子设备和计算机可读介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107451526A (zh) * | 2017-06-09 | 2017-12-08 | 蔚来汽车有限公司 | 地图的构建及其应用 |
CN109887033A (zh) * | 2019-03-01 | 2019-06-14 | 北京智行者科技有限公司 | 定位方法及装置 |
CN111539305A (zh) * | 2020-04-20 | 2020-08-14 | 肇庆小鹏汽车有限公司 | 一种地图构建方法及系统、车辆及存储介质 |
US20200393265A1 (en) * | 2019-06-11 | 2020-12-17 | DeepMap Inc. | Lane line determination for high definition maps |
CN114565674A (zh) * | 2022-03-03 | 2022-05-31 | 江苏集萃清联智控科技有限公司 | 自动驾驶车辆城市结构化场景纯视觉定位方法及装置 |
CN115240047A (zh) * | 2022-08-04 | 2022-10-25 | 中国矿业大学(北京) | 一种融合视觉回环检测的激光slam方法及系统 |
-
2022
- 2022-12-27 CN CN202211679881.5A patent/CN115661299B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107451526A (zh) * | 2017-06-09 | 2017-12-08 | 蔚来汽车有限公司 | 地图的构建及其应用 |
CN109887033A (zh) * | 2019-03-01 | 2019-06-14 | 北京智行者科技有限公司 | 定位方法及装置 |
US20200393265A1 (en) * | 2019-06-11 | 2020-12-17 | DeepMap Inc. | Lane line determination for high definition maps |
CN111539305A (zh) * | 2020-04-20 | 2020-08-14 | 肇庆小鹏汽车有限公司 | 一种地图构建方法及系统、车辆及存储介质 |
CN114565674A (zh) * | 2022-03-03 | 2022-05-31 | 江苏集萃清联智控科技有限公司 | 自动驾驶车辆城市结构化场景纯视觉定位方法及装置 |
CN115240047A (zh) * | 2022-08-04 | 2022-10-25 | 中国矿业大学(北京) | 一种融合视觉回环检测的激光slam方法及系统 |
Non-Patent Citations (1)
Title |
---|
张骋;苗新蕊;牟雪曼;: "高精地图车道的三维可视化" * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116129389A (zh) * | 2023-03-27 | 2023-05-16 | 浙江零跑科技股份有限公司 | 一种车道线获取方法、计算机设备、可读存储介质及机动车 |
CN116630436A (zh) * | 2023-05-17 | 2023-08-22 | 禾多科技(北京)有限公司 | 相机外参修正方法、装置、电子设备和计算机可读介质 |
CN116630436B (zh) * | 2023-05-17 | 2024-01-12 | 禾多科技(北京)有限公司 | 相机外参修正方法、装置、电子设备和计算机可读介质 |
CN116503482A (zh) * | 2023-06-26 | 2023-07-28 | 小米汽车科技有限公司 | 车辆位置的获取方法、装置及电子设备 |
CN116503482B (zh) * | 2023-06-26 | 2023-10-20 | 小米汽车科技有限公司 | 车辆位置的获取方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN115661299B (zh) | 2023-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115661299B (zh) | 车道线地图的构建方法、计算机设备及存储介质 | |
US11629964B2 (en) | Navigation map updating method and apparatus and robot using the same | |
JP6898442B2 (ja) | 障害物検出システム及び方法 | |
KR101725060B1 (ko) | 그래디언트 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법 | |
KR101784183B1 (ko) | ADoG 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법 | |
KR20190090393A (ko) | 차선 결정 방법, 디바이스 및 저장 매체 | |
CN109635816B (zh) | 车道线生成方法、装置、设备以及存储介质 | |
CN104517275A (zh) | 对象检测方法和系统 | |
KR20150144727A (ko) | 에지 기반 재조정을 이용하여 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법 | |
JP2015041382A (ja) | 対象追跡方法及び対象追跡装置 | |
CN110597265A (zh) | 一种扫地机器人回充方法和装置 | |
CN115638787B (zh) | 一种数字地图生成方法、计算机可读存储介质及电子设备 | |
CN115423846A (zh) | 多目标轨迹跟踪方法以及装置 | |
CN116088503B (zh) | 动态障碍物检测方法和机器人 | |
JPH0990026A (ja) | 物体検出装置およびその方法 | |
KR100994367B1 (ko) | 영상 추적 장치의 이동표적 움직임 추적 방법 | |
KR101030317B1 (ko) | 스테레오 비전을 이용하여 장애물을 추적하는 장치 및 방법 | |
US11948312B2 (en) | Object detection/tracking device, method, and program recording medium | |
CN115273027A (zh) | 环境感知方法、域控制器、存储介质及车辆 | |
CN115638788B (zh) | 语义矢量地图的构建方法、计算机设备及存储介质 | |
WO2023072269A1 (zh) | 对象跟踪 | |
CN115661394A (zh) | 车道线地图的构建方法、计算机设备及存储介质 | |
CN116052100A (zh) | 图像感知方法、计算机设备、计算机可读存储介质及车辆 | |
CN116129378A (zh) | 车道线检测方法、装置、设备、车辆和介质 | |
EP4242996A1 (en) | Status determination device, status determination system, and status determination method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |