高精度地图定位方法、系统、平台及计算机可读存储介质
技术领域
本申请实施例涉及高精度地图的技术领域,尤其涉及一种高精度地图定位方法、系统、平台及计算机可读存储介质。
背景技术
随着地图技术的发展,高精度地图开始在越来越多的领域被使用。传统地图通常通过全球定位系统(Global Positioning System,GPS)进行定位,而高精度地图由于其本身精度已经超过GPS的精度,因而难以通过传统的定位方式进行使用。通常,高精度地图定位会通过匹配的方式来进行,即通过可移动平台所搭载的传感器获取周围环境并得到周围环境的一些特征信息,然后将这些特征信息与高精度地图中的特征信息进行匹配,从而得到可移动平台在高精度地图中的定位。
但是,由于通过传感器提取周围环境的特征信息的精度有限,相应的算法可能不稳定,可能导致匹配结果并不准确。并且,由于这种特征匹配比较依赖周围环境的信息丰富程度,在一些缺乏明显特征的场景下可能出现无法定位的情况;以及对于一些环境中存在重复性特征的情况下,可能出现错误的匹配结果。因此,如何提高高精度地图定位结果的精确性和稳定性是目前亟待解决的问题。
发明内容
基于此,本申请提供了一种高精度地图定位方法、系统、平台及计算机可读存储介质,旨在提高高精度地图定位结果的精确性和稳定性。
第一方面,本申请提供了一种高精度地图定位方法,包括:
获取离线高精度地图,并建立在线点云地图;
确定候选定位结果集;
根据所述候选定位结果集中的每个候选定位结果,对所述在线点云地图进行栅格化处理,得到每个候选定位结果各自对应的栅格地图;
计算每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度;
根据每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度,从所述候选定位结果集中确定目标定位结果。
第二方面,本申请还提供了一种驾驶系统,所述驾驶系统包括激光雷达、存储器和处理器;所述存储器用于存储计算机程序;
所述处理器,用于执行所述计算机程序并在执行所述计算机程序时,实现如下步骤:
获取离线高精度地图,并通过所述激光雷达采集到的三维点云数据建立在线点云地图;
确定候选定位结果集;
根据所述候选定位结果集中的每个候选定位结果,对所述在线点云地图进行栅格化处理,得到每个候选定位结果各自对应的栅格地图;
计算每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度;
根据每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度,从所述候选定位结果集中确定目标定位结果。
第三方面,本申请还提供了一种可移动平台,所述可移动平台包括激光雷达、存储器和处理器;所述存储器用于存储计算机程序;
所述处理器,用于执行所述计算机程序并在执行所述计算机程序时,实现如下步骤:
获取离线高精度地图,并通过所述激光雷达采集到的三维点云数据建立在线点云地图;
确定候选定位结果集;
根据所述候选定位结果集中的每个候选定位结果,对所述在线点云地图进行栅格化处理,得到每个候选定位结果各自对应的栅格地图;
计算每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度;
根据每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度,从所述候选定位结果集中确定目标定位结果。
第四方面,本申请还提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时使所述处理器实现:
获取离线高精度地图,并建立在线点云地图;
确定候选定位结果集;
根据所述候选定位结果集中的每个候选定位结果,对所述在线点云地图进行栅格化处理,得到每个候选定位结果各自对应的栅格地图;
计算每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度;
根据每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度,从所述候选定位结果集中确定目标定位结果。
本申请实施例提供了一种高精度地图定位方法、系统、平台及计算机可读存储介质,通过候选定位结果集中的每个候选定位结果,对在线点云地图进行栅格化处理,得到每个候选定位结果各自对应的栅格地图,并计算每个候选定位结果各自对应的栅格地图与离线高精度地图之间的相似度,且基于每个候选定位结果各自对应的栅格地图与离线高精度地图之间的相似度,从候选定位结果集中确定目标定位结果,可以减少高精度地图错误匹配的出现次数,提高高精度地图定位结果的精确性和稳定性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的一种高精度地图定位方法的步骤示意流程图;
图2是图1中的高精度地图定位方法的子步骤示意流程图;
图3是本申请一实施例提供的另一种高精度地图定位方法的步骤示意流程图;
图4是本申请一实施例提供的又一种高精度地图定位方法的步骤示意流程图;
图5是本申请一实施例提供的一种驾驶系统的结构示意性框图;
图6是本申请一实施例提供的一种可移动平台的结构示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
请参阅图1,图1是本申请一实施例提供的一种高精度地图定位方法的步骤示意流程图。该高精度地图定位方法可以应用在可移动平台或驾驶系统中。其中可移动平台包括车辆和飞行器,飞行器包括无人飞行器和有人飞行器,车辆包括有人驾驶车辆和无人驾驶车辆等,无人飞行器包括旋翼型无人飞行器,例如四旋翼无人飞行器、六旋翼无人飞行器、八旋翼无人飞行器,也可以是固定翼无人飞行器,还可以是旋翼型与固定翼无人飞行器的组合,在此不作限定。
具体地,如图1所示,该高精度地图定位方法包括步骤S101至步骤S105。
S101、获取离线高精度地图,并建立在线点云地图。
其中,可移动平台通过高精度的激光雷达对行驶过的区域采集三维点云数据,并通过高精度惯导系统和点云配准算法,对采集到的三维点云数据进行处理,生成离线高精度地图。或者,通过高精度的激光雷达对行驶过的区域采集三维点云数据,通过惯性测量单元(Inertial Measurement Unit,IMU)采集可移动平台的姿态数据,以及通过全球定位系统(Global PositioningSystem,GPS)采集可移动平台的位置数据,然后基于姿态数据和位置数据,对采集到的三维点云数据进行校正处理,并基于校正后的三维点云数据生成离线高精度地图。
可移动平台在移动过程中,获取离线高精度地图,并通过激光雷达实时采集可移动平台周围物体的三维点云数据,且基于实时采集到的三维点云数据建立在线点云地图。其中,激光雷达可以基于激光发射点与发射出的激光在物体上的反射点的距离,以及激光发射点的激光的发射方向,确定物体的三维点云数据。可移动平台周边物体的三维点云数据包括物体与可移动平台的距离,物体与可移动平台的角度,以及物体的三维坐标等数据。
S102、确定候选定位结果集。
具体地,获取可移动平台的当前位置和当前姿态,并基于可移动平台的当前位置和当前姿态确定候选定位结果集。在一实施例中,如图2所示,步骤S102具体包括:子步骤S1021至S1024。
S1021、获取可移动平台的当前位置数据和当前姿态数据。
具体地,获取可移动平台的当前位置数据和当前姿态数据。其中,可移动平台的当前位置数据为可移动平台的定位系统在当前时刻输出的位置数据,可移动平台的当前姿态数据为可移动平台的惯性测量单元在当前时刻输出的姿态数据。该位置数据包括可移动平台的地理位置坐标,该姿态数据包括可移动平台的俯仰角、横滚角和偏航角。
S1022、根据所述当前位置数据确定候选位置集。
可移动平台确定当前位置数据的变化趋势,并根据当前位置数据的变化趋势,确定候选位置集。具体地,可以通过当前位置数据的梯度值和梯度方向来表征变化趋势,即以预设的单位梯度,基于该梯度值,沿着该梯度方向,得到预设个数的候选梯度值,并确定每个候选梯度值各自对应的位置信息,从而确定候选位置集。需要说明的是,预设的单位梯度和预设个数可基于实际情况进行设置,本申请对此不作具体限定。
在一实施例中,可移动平台根据当前位置数据,确定可移动平台在该离线高精度地图中的位置坐标,即从当前位置数据中获取可移动平台的地理位置坐标,并在该离线高精度地图中标记该地理位置坐标,然后获取该地理位置坐标周围物体在离线高精度地图中的位置坐标,并基于周围物体在离线高精度地图中的位置坐标,确定可移动平台在离线高精度地图中的位置坐标;根据该位置坐标和预设位置误差值,确定候选位置集。通过当前位置数据和预设位置误差值可以快速准确的确定候选位置集。
在一实施例中,候选位置集的确定方式具体为:计算该位置坐标中的横坐标和纵坐标分别与预设位置误差值的差值,并计算位置坐标中的横坐标和纵坐标分别与预设位置误差值的和;根据位置坐标中的横坐标与预设位置误差值的差值和位置坐标中的横坐标与预设位置误差值的和,确定候选横坐标集;根据位置坐标中的纵坐标与预设位置误差值的差值和位置坐标中的纵坐标与预设位置误差值的和,确定候选纵坐标集;每次从候选横坐标集中选择一个候选横坐标与候选纵坐标集中的每个候选纵坐标进行组合,直至候选横坐标集中的候选横坐标均被选择一次时,汇集组合得到的每个候选位置坐标作为候选位置集。
需要说明的是,上述预设位置误差值可基于实际情况进行设置,本申请对此不作具体限定。例如,设预设位置误差值为1,位置坐标为(10,9),则候选横坐标位于9至11,即候选横坐标集为[9,10,11],候选纵坐标位于8至10,即候选纵坐标集为[8,9,10],则候选位置集为{(9,8),(9,9),(9,10),(10,8),(10,9),(10,10),(11,8),(11,9),(11,10)}。
S1023、根据所述当前姿态数据和预设姿态误差值确定候选姿态集。
具体地,计算当前姿态数据中的姿态角与预设姿态误差值的差值,并计算当前姿态数据中的姿态角与预设姿态误差值的和,然后基于当前姿态数据中的姿态角与预设姿态误差值的差值以及当前姿态数据中的姿态角与预设姿态误差值的和,确定候选姿态集,即以姿态角与预设姿态误的差值为一个端点,以姿态角与预设姿态误差值的和为另一个端点,得到候选姿态角范围,并以预设的单位姿态角从该候选姿态角范围中获取多个候选姿态角,从而形成候选姿态集。需要说明的是,上述预设姿态误差值和单位姿态角可基于实际情况进行设置,本申请对此不作具体限定。例如,设预设姿态误差值为0.5,单位姿态角为0.1,当前姿态数据中的姿态角为A,则候选姿态角范围为A-0.5至A+0.5,则候选姿态集为[A-05,A-0.4,A-0.3,A-0.2,A-0.1,A,A+0.1,A+0.2,A+0.3,A+0.4和A+0.5]。通过当前姿态数据和预设姿态误差值可以快速准确的确定候选姿态集。
S1024、根据所述候选位置集和所述候选姿态集,确定候选定位结果集。
具体地,可移动平台每次从候选位置集选择一个候选位置与候选姿态集中的每个候选姿态进行组合,直至候选位置集中的候选位置均被选择一次时,汇集组合得到的每个候选定位结果作为候选定位结果集。例如,候选位置集为{(X-1,Y-1),(X,Y),(X+1,Y+1)},候选姿态集为[A-0.1,A,A+0.1],则候选定位结果集为:
{[(X-1,Y-1),A-0.1],[(X-1,Y-1),A],[(X-1,Y-1),A+0.1],[(X,Y),A-0.1],[(X,Y),A],[(X,Y),A+0.1],[(X+1,Y+1),A-0.1],[(X+1,Y+1),A],[((X+1,Y+1)),A+0.1]}。
S103、根据所述候选定位结果集中的每个候选定位结果,对所述在线点云地图进行栅格化处理,得到每个候选定位结果各自对应的栅格地图。
具体地,可移动平台在该在线点云地图中标记该候选定位结果集中的每个候选定位结果,并对标记的每个候选定位结果周围的地图区域进行栅格化处理,可以得到每个候选定位结果各自对应的栅格地图。其中,该栅格地图为基于反射值和高度值的地图,且该栅格地图的每个栅格标记有高度,栅格的高度为栅格内的点云的平均高度。
S104、计算每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度。
具体地,可移动平台对该离线高精度地图进行栅格化处理,得到每个栅格地图各自对应的离线栅格地图;根据每个栅格地图中各栅格的高度和每个离线栅格地图中各栅格的高度,计算每个栅格地图与所述离线高精度地图之间的相似度。其中,栅格地图中各栅格的高度和离线栅格地图中各栅格的高度均为栅格内的点云的平均高度。
在一实施例中,相似度的计算方式可以为:可移动平台根据每个栅格地图中各栅格的高度和每个离线栅格地图中各栅格的高度,计算每个栅格地图与离线高精度地图之间的皮尔逊相关系数;将每个栅格地图与离线高精度地图之间的皮尔逊相关系数作为每个栅格地图与离线高精度地图之间的相似度。其中,皮尔逊相关系数的取值为-1~+1,皮尔逊相关系数越接近于1,则说明栅格地图与离线高精度地图的相关性越高,则高精度地图的定位精度也越高,皮尔逊相关系数的计算公式为:
,其中,γ为皮尔逊相关系数,xi为栅格地图中第i个栅格的高度,yi为离线栅格地图中第i个栅格的高度,N为栅格数量。
在一实施例中,相似度的计算方式还可以为:可移动平台根据每个栅格地图中各栅格的高度和每个离线栅格地图中各栅格的高度,计算每个栅格地图与离线高精度地图之间的区域互信息系数;将每个栅格地图与离线高精度地图之间的区域互信息系数作为每个栅格地图与离线高精度地图之间的相似度。其中,区域互信息系数越小,则说明栅格地图与离线高精度地图的相关性越低,高精度地图的定位精度也越低,而区域互信息系数越大,则说明栅格地图与离线高精度地图的相关性越高,高精度地图的定位精度也越高,区域互信息系数的计算公式为:
其中,
MI为区域互信息系数,x
i为栅格地图中第i个栅格的高度,y
i为离线栅格地图中第i个
栅格的高度,PX,Y(xi,yj)为联合分布,PX(xi)和PY(yi)为边缘分布。
S105、根据每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度,从所述候选定位结果集中确定目标定位结果。
具体地,在计算得到每个候选定位结果各自对应的栅格地图与离线高精度地图之间的相似度之后,可移动平台将该候选定位结果集中最大的相似度对应的候选定位结果作为目标定位结果。
例如,候选定位结果集包括候选定位结果A、候选定位结果B和候选定位结果C,且按照相似度的大小顺序,得到的排列顺序为候选定位结果B、候选定位结果C、候选定位结果A,即最大的相似度对应的候选定位结果为候选定位结果B,则将候选定位结果B作为目标定位结果。
上述实施例提供的高精度地图定位方法,通过候选定位结果集中的每个候选定位结果,对在线点云地图进行栅格化处理,得到每个候选定位结果各自对应的栅格地图,并计算每个候选定位结果各自对应的栅格地图与离线高精度地图之间的相似度,且基于每个候选定位结果各自对应的栅格地图与离线高精度地图之间的相似度,从候选定位结果集中确定目标定位结果,可以减少高精度地图错误匹配的出现次数,提高高精度地图定位结果的精确性和稳定性。
请参阅图3,图3是本申请一实施例提供的另一种高精度地图定位方法的步骤示意流程图。
具体地,如图3所示,该高精度地图定位方法包括步骤S201至S206。
S201、获取离线高精度地图,并建立在线点云地图。
具体地,可移动平台在移动过程中,获取离线高精度地图,并通过激光雷达实时采集可移动平台周围物体的三维点云数据,且基于实时采集到的三维点云数据建立在线点云地图。
S202、获取可移动平台的历史定位结果,所述历史定位结果为所述可移动平台在上一时刻所确定的定位结果,且上一时刻与当前时刻间隔预设时间。
具体地,获取可移动平台的历史定位结果,该历史定位结果为可移动平台在上一时刻所确定的定位结果,且上一时刻与当前时刻间隔预设时间。需要说明的是,上述预设时间可基于实际情况进行设置,本申请对此不作具体限定。
S203、根据历史定位结果确定候选定位结果集。
具体地,从该历史定位结果中获取历史位置坐标和历史姿态角;对历史位置坐标进行求导处理,以确定历史位置坐标的梯度值和梯度方向,并根据该梯度值和梯度方向,确定候选位置集,即以预设的单位梯度,基于该梯度值,沿着该梯度方向,得到预设个数的候选梯度值,并确定每个候选梯度值各自对应的位置信息,从而确定候选位置集;
计算历史姿态角与预设姿态误差值的差值,并计算历史姿态角与预设姿态误差值的和;以历史姿态角与预设姿态误差值的差值为一个端点,以历史姿态角与预设姿态误差值的和为另一个端点,得到候选姿态角范围,并以预设的单位姿态角从该候选姿态角范围中获取多个候选姿态角,从而形成候选姿态集;
根据该候选位置集和候选姿态集,确定候选定位结果集,即每次从候选位置集选择一个候选位置与候选姿态集中的每个候选姿态进行组合,直至候选位置集中的候选位置均被选择一次时,汇集组合得到的每个候选定位结果作为候选定位结果集。
需要说明的是,上述预设的单位梯度、预设个数、预设姿态误差值和预设的单位姿态角可基于实际情况进行设置,本申请对此不作具体限定。
在一实施例中,候选定位结果集的确定方式可以为:从该历史定位结果中获取历史位置坐标和历史姿态角,并计算历史位置坐标和历史姿态角分别与预设定位误差值的差,且计算历史位置坐标和历史姿态角分别与预设定位误差值的和,然后基于历史位置坐标与预设定位误差值的差以及和,确定候选坐标集,并基于历史姿态角与预设定位误差值的差以及和,确定候选姿态集,最后基于候选坐标集和候选姿态集,确定候选定位结果集。需要说明的是,上述预设定位误差值可基于实际情况进行设置,本申请对此不作具体限定。
S204、根据所述候选定位结果集中的每个候选定位结果,对所述在线点云地图进行栅格化处理,得到每个候选定位结果各自对应的栅格地图。
具体地,可移动平台在该在线点云地图中标记该候选定位结果集中的每个候选定位结果,并对标记的每个候选定位结果周围的地图区域进行栅格化处理,可以得到每个候选定位结果各自对应的栅格地图。其中,该栅格地图为基于反射值和高度值的地图,且该栅格地图的每个栅格标记有高度,栅格的高度为栅格内的点云的平均高度。
S205、计算每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度。
具体地,可移动平台对该离线高精度地图进行栅格化处理,得到每个栅格地图各自对应的离线栅格地图;根据每个栅格地图中各栅格的高度和每个离线栅格地图中各栅格的高度,计算每个栅格地图与所述离线高精度地图之间的相似度。其中,栅格地图中各栅格的高度和离线栅格地图中各栅格的高度均为栅格内的点云的平均高度。
S206、根据每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度,从所述候选定位结果集中确定目标定位结果。
具体地,在计算得到每个候选定位结果各自对应的栅格地图与离线高精度地图之间的相似度之后,可移动平台将该候选定位结果集中最大的相似度对应的候选定位结果作为目标定位结果,或者获取相似度大于预设阈值对应的候选定位结果,并将获取到的任意一个候选定位结果作为目标定位结果。需要说明的是,上述预设阈值可基于实际情况进行设置,本申请对此不作具体限定。
上述实施例提供的高精度地图定位方法,通过历史定位结果和定位误差值,可以准确的确定候选定位结果集,并基于候选定位结果集,对在线点云地图进行栅格化处理,可以得到准确的栅格地图,然后再计算每个栅格地图与离线高精度地图之间的相似度,并基于每个相似度,可以从准确的候选定位结果集中确定目标定位结果,进一步地提高高精度地图定位结果的精确性和稳定性。
请参阅图4,图4是本申请一实施例提供的又一种高精度地图定位方法的步骤示意流程图。
具体地,如图4所示,该高精度地图定位方法包括步骤S301至步骤S306。
S301、获取离线高精度地图,并建立在线点云地图。
具体地,可移动平台在移动过程中,获取离线高精度地图,并通过激光雷达实时采集可移动平台周围物体的三维点云数据,且基于实时采集到的三维点云数据建立在线点云地图。
S302、确定候选定位结果集。
具体地,获取可移动平台的当前位置和当前姿态,并基于可移动平台的当前位置和当前姿态确定候选定位结果集。
S303、根据所述候选定位结果集中的每个候选定位结果,对所述在线点云地图进行栅格化处理,得到每个候选定位结果各自对应的栅格地图。
具体地,可移动平台在该在线点云地图中标记该候选定位结果集中的每个候选定位结果,并对标记的每个候选定位结果周围的地图区域进行栅格化处理,可以得到每个候选定位结果各自对应的栅格地图。其中,该栅格地图为基于反射值和高度值的地图,且该栅格地图的每个栅格标记有高度,栅格的高度为栅格内的点云的平均高度。
S304、计算每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度。
具体地,可移动平台对该离线高精度地图进行栅格化处理,得到每个栅格地图各自对应的离线栅格地图;根据每个栅格地图中各栅格的高度和每个离线栅格地图中各栅格的高度,计算每个栅格地图与所述离线高精度地图之间的相似度。其中,栅格地图中各栅格的高度和离线栅格地图中各栅格的高度均为栅格内的点云的平均高度。
S305、根据每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度,对所述候选定位结果集中的候选定位结果进行校验。
具体地,在计算得到每个候选定位结果各自对应的栅格地图与离线高精度地图之间的相似度之后,可移动平台将每个候选定位结果各自对应的栅格地图与离线高精度地图之间的相似度作为每个候选定位结果各自对应的相关性系数;将每个候选定位结果各自对应的相关性系数与预设阈值进行比较,如果候选定位结果对应的相关性系数大于预设阈值,则确定候选定位结果通过校验,如果候选定位结果对应的相关性系数小于或等于预设阈值,则确定候选定位结果未通过校验。需要说明的是,上述预设阈值可基于实际情况进行设置,本申请对此不作具体限定。
S306、获取通过校验的每个候选定位结果各自对应的相似度,并将最大的所述相似度对应的通过校验的候选定位结果作为目标定位结果。
具体地,在对候选定位结果集中的候选定位结果进行校验之后,获取通过校验的每个候选定位结果各自对应的相似度,并将最大的相似度对应的通过校验的候选定位结果作为目标定位结果。该相似度包括皮尔逊相关系数和区域互信息系数。其中,当候选定位结果集中的每个候选定位结果均未通过校验时,可移动平台重新定位。
上述实施例提供的高精度地图定位方法,通过候选定位结果集中的每个候选定位结果,对在线点云地图进行栅格化处理,得到每个候选定位结果各自对应的栅格地图,并计算每个候选定位结果各自对应的栅格地图与离线高精度地图之间的相似度,且基于每个候选定位结果各自对应的栅格地图与离线高精度地图之间的相似度,对每个候选定位结果进行校验,最后将通过校验,且相似度最大对应的候选定位结果集作为目标定位结果,进一步地提高高精度地图定位结果的精确性和稳定性。
请参阅图5,图5是本申请一实施例提供的驾驶系统的示意性框图。在一种实施方式中,该驾驶系统包括无人驾驶系统和有人驾驶系统。进一步地,该驾驶系统400包括处理器401、存储器402和激光雷达403,处理器401、存储器402和激光雷达403通过总线404连接,该总线404比如为I2C(Inter-integrated Circuit)总线。
具体地,处理器401可以是微控制单元(Micro-controller Unit,MCU)、中央处理单元(Central Processing Unit,CPU)或数字信号处理器(Digital Signal Processor,DSP)等。
具体地,存储器402可以是Flash芯片、只读存储器(ROM,Read-Only Memory)磁盘、光盘、U盘或移动硬盘等。
具体地,处理器401和存储器402为驾驶系统的计算平台,该激光雷达403可以为驾驶系统的外接设备,也可以为驾驶系统的内部组件,本申请对此不作具体限定。
其中,所述处理器401用于运行存储在存储器402中的计算机程序,并在执行所述计算机程序时实现如下步骤:
获取离线高精度地图,并通过所述激光雷达采集到的三维点云数据建立在线点云地图;
确定候选定位结果集;
根据所述候选定位结果集中的每个候选定位结果,对所述在线点云地图进行栅格化处理,得到每个候选定位结果各自对应的栅格地图;
计算每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度;
根据每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度,从所述候选定位结果集中确定目标定位结果。
可选地,所述处理器在实现确定候选定位结果集时,用于实现:
获取可移动平台的当前位置数据和当前姿态数据;
根据所述当前位置数据确定候选位置集;
根据所述当前姿态数据和预设姿态误差值确定候选姿态集;
根据所述候选位置集和所述候选姿态集,确定候选定位结果集。
可选地,所述当前位置数据为所述可移动平台的定位系统在当前时刻输出的位置数据,所述当前姿态数据为所述可移动平台的惯性测量单元在当前时刻输出的姿态数据。
可选地,所述处理器在实现根据所述当前位置数据确定候选位置集时,用于实现:
确定所述当前位置数据的变化趋势,并根据所述当前位置数据的变化趋势,确定候选位置集。
可选地,所述处理器在实现根据所述当前姿态数据和预设姿态误差值确定候选姿态集时,用于实现:
计算所述当前姿态数据中的姿态角与预设姿态误差值的差值,以及计算所述当前姿态数据中的姿态角与预设姿态误差值的和;
根据所述当前姿态数据中的姿态角与预设姿态误差值的差值以及所述当前姿态数据中的姿态角与预设姿态误差值的和,确定候选姿态集。
可选地,所述处理器在实现根据所述候选位置集和所述候选姿态集,确定候选定位结果集时,用于实现:
每次从所述候选位置集选择一个候选位置与所述候选姿态集中的每个候选姿态进行组合,直至所述候选位置集中的候选位置均被选择一次时,汇集组合得到的每个候选定位结果作为候选定位结果集。
可选地,所述处理器在实现确定候选定位结果集时,用于实现:
获取可移动平台的历史定位结果,所述历史定位结果为所述可移动平台在上一时刻所确定的定位结果,且上一时刻与当前时刻间隔预设时间;
根据所述历史定位结果确定候选定位结果集。
可选地,所述处理器在实现计算每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度时,用于实现:
对所述离线高精度地图进行栅格化处理,得到每个所述栅格地图各自对应的离线栅格地图,其中,互相对应的所述栅格地图和所述离线栅格地图的栅格数量相同;
根据每个所述栅格地图中各栅格的高度和每个所述离线栅格地图中各栅格的高度,计算每个所述栅格地图与所述离线高精度地图之间的相似度。
可选地,所述处理器在实现根据每个所述栅格地图中各栅格的高度和每个所述离线栅格地图中各栅格的高度,计算每个所述栅格地图与所述离线高精度地图之间的相似度时,用于实现:
根据每个所述栅格地图中各栅格的高度和每个所述离线栅格地图中各栅格的高度,计算每个所述栅格地图与所述离线高精度地图之间的皮尔逊相关系数;
将每个所述栅格地图与所述离线高精度地图之间的皮尔逊相关系数作为每个所述栅格地图与所述离线高精度地图之间的相似度。
可选地,所述处理器在实现根据每个所述栅格地图中各栅格的高度和每个所述离线栅格地图中各栅格的高度,计算每个所述栅格地图与所述离线高精度地图之间的相似度时,用于实现:
根据每个所述栅格地图中各栅格的高度和每个所述离线栅格地图中各栅格的高度,计算每个所述栅格地图与所述离线高精度地图之间的区域互信息系数;
将每个所述栅格地图与所述离线高精度地图之间的区域互信息系数作为每个所述栅格地图与所述离线高精度地图之间的相似度。
可选地,所述处理器在实现根据每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度,从所述候选定位结果集中确定目标定位结果时,用于实现:
将所述候选定位结果集中最大的所述相似度对应的候选定位结果作为目标定位结果。
可选地,所述处理器在实现根据每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度,从所述候选定位结果集中确定目标定位结果之后,用于实现:
根据每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度,对所述候选定位结果集中的候选定位结果进行校验;
获取通过校验的每个候选定位结果各自对应的相似度,并将最大的所述相似度对应的通过校验的候选定位结果作为目标定位结果。
可选地,所述处理器在实现根据每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度,对所述候选定位结果集中的候选定位结果进行校验时,用于实现:
将每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度作为每个候选定位结果各自对应的相关性系数;
将每个候选定位结果各自对应的相关性系数与预设阈值进行比较;
若所述候选定位结果对应的相关性系数大于预设阈值,则确定所述候选定位结果通过校验;
若所述候选定位结果对应的相关性系数小于或等于预设阈值,则确定所述候选定位结果未通过校验。
需要说明的是,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的驾驶系统的工作过程,可以参考前述高精度地图定位方法实施例中的对应过程,在此不再赘述。
请参阅图6,图6是本申请一实施例提供的可移动平台的示意性框图。该可移动平台500包括处理器501、存储器502和激光雷达503,处理器501、存储器502和激光雷达503通过总线504连接,该总线504比如为I2C(Inter-integrated Circuit)总线。其中,可移动平台包括车辆和飞行器,飞行器包括无人飞行器和有人飞行器,车辆包括有人驾驶车辆和无人驾驶车辆等,无人飞行器包括旋翼型无人飞行器,例如四旋翼无人飞行器、六旋翼无人飞行器、八旋翼无人飞行器,也可以是固定翼无人飞行器,还可以是旋翼型与固定翼无人飞行器的组合,在此不作限定。
具体地,处理器501可以是微控制单元(Micro-controller Unit,MCU)、中央处理单元(Central Processing Unit,CPU)或数字信号处理器(Digital Signal Processor,DSP)等。
具体地,存储器502可以是Flash芯片、只读存储器(ROM,Read-Only Memory)磁盘、光盘、U盘或移动硬盘等。
具体地,处理器501和存储器502为驾驶系统的计算平台,该激光雷达503可以为驾驶系统的外接设备,也可以为驾驶系统的内部组件,本申请对此不作具体限定。
其中,所述处理器501用于运行存储在存储器502中的计算机程序,并在执行所述计算机程序时实现如下步骤:
获取离线高精度地图,并通过所述激光雷达采集到的三维点云数据建立在线点云地图;
确定候选定位结果集;
根据所述候选定位结果集中的每个候选定位结果,对所述在线点云地图进行栅格化处理,得到每个候选定位结果各自对应的栅格地图;
计算每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度;
根据每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度,从所述候选定位结果集中确定目标定位结果。
可选地,所述处理器在实现确定候选定位结果集时,用于实现:
获取可移动平台的当前位置数据和当前姿态数据;
根据所述当前位置数据确定候选位置集;
根据所述当前姿态数据和预设姿态误差值确定候选姿态集;
根据所述候选位置集和所述候选姿态集,确定候选定位结果集。
可选地,所述当前位置数据为所述可移动平台的定位系统在当前时刻输出的位置数据,所述当前姿态数据为所述可移动平台的惯性测量单元在当前时刻输出的姿态数据。
可选地,所述处理器在实现根据所述当前位置数据确定候选位置集时,用于实现:
确定所述当前位置数据的变化趋势,并根据所述当前位置数据的变化趋势,确定候选位置集。
可选地,所述处理器在实现根据所述当前姿态数据和预设姿态误差值确定候选姿态集时,用于实现:
计算所述当前姿态数据中的姿态角与预设姿态误差值的差值,以及计算所述当前姿态数据中的姿态角与预设姿态误差值的和;
根据所述当前姿态数据中的姿态角与预设姿态误差值的差值以及所述当前姿态数据中的姿态角与预设姿态误差值的和,确定候选姿态集。
可选地,所述处理器在实现根据所述候选位置集和所述候选姿态集,确定候选定位结果集时,用于实现:
每次从所述候选位置集选择一个候选位置与所述候选姿态集中的每个候选姿态进行组合,直至所述候选位置集中的候选位置均被选择一次时,汇集组合得到的每个候选定位结果作为候选定位结果集。
可选地,所述处理器在实现确定候选定位结果集时,用于实现:
获取可移动平台的历史定位结果,所述历史定位结果为所述可移动平台在上一时刻所确定的定位结果,且上一时刻与当前时刻间隔预设时间;
根据所述历史定位结果确定候选定位结果集。
可选地,所述处理器在实现计算每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度时,用于实现:
对所述离线高精度地图进行栅格化处理,得到每个所述栅格地图各自对应的离线栅格地图,其中,互相对应的所述栅格地图和所述离线栅格地图的栅格数量相同;
根据每个所述栅格地图中各栅格的高度和每个所述离线栅格地图中各栅格的高度,计算每个所述栅格地图与所述离线高精度地图之间的相似度。
可选地,所述处理器在实现根据每个所述栅格地图中各栅格的高度和每个所述离线栅格地图中各栅格的高度,计算每个所述栅格地图与所述离线高精度地图之间的相似度时,用于实现:
根据每个所述栅格地图中各栅格的高度和每个所述离线栅格地图中各栅格的高度,计算每个所述栅格地图与所述离线高精度地图之间的皮尔逊相关系数;
将每个所述栅格地图与所述离线高精度地图之间的皮尔逊相关系数作为每个所述栅格地图与所述离线高精度地图之间的相似度。
可选地,所述处理器在实现根据每个所述栅格地图中各栅格的高度和每个所述离线栅格地图中各栅格的高度,计算每个所述栅格地图与所述离线高精度地图之间的相似度时,用于实现:
根据每个所述栅格地图中各栅格的高度和每个所述离线栅格地图中各栅格的高度,计算每个所述栅格地图与所述离线高精度地图之间的区域互信息系数;
将每个所述栅格地图与所述离线高精度地图之间的区域互信息系数作为每个所述栅格地图与所述离线高精度地图之间的相似度。
可选地,所述处理器在实现根据每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度,从所述候选定位结果集中确定目标定位结果时,用于实现:
将所述候选定位结果集中最大的所述相似度对应的候选定位结果作为目标定位结果。
可选地,所述处理器在实现根据每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度,从所述候选定位结果集中确定目标定位结果之后,用于实现:
根据每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度,对所述候选定位结果集中的候选定位结果进行校验;
获取通过校验的每个候选定位结果各自对应的相似度,并将最大的所述相似度对应的通过校验的候选定位结果作为目标定位结果。
可选地,所述处理器在实现根据每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度,对所述候选定位结果集中的候选定位结果进行校验时,用于实现:
将每个候选定位结果各自对应的栅格地图与所述离线高精度地图之间的相似度作为每个候选定位结果各自对应的相关性系数;
将每个候选定位结果各自对应的相关性系数与预设阈值进行比较;
若所述候选定位结果对应的相关性系数大于预设阈值,则确定所述候选定位结果通过校验;
若所述候选定位结果对应的相关性系数小于或等于预设阈值,则确定所述候选定位结果未通过校验。
需要说明的是,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的可移动平台的工作过程,可以参考前述高精度地图定位方法实施例中的对应过程,在此不再赘述。
本申请的实施例中还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序中包括程序指令,所述处理器执行所述程序指令,实现上述实施例提供的高精度地图定位方法的步骤。
其中,所述计算机可读存储介质可以是前述任一实施例所述的可移动平台或驾驶系统的内部存储单元,例如所述可移动平台或驾驶系统的硬盘或内存。所述计算机可读存储介质也可以是所述可移动平台或驾驶系统的外部存储设备,例如所述可移动平台或驾驶系统上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)等。
应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。