一种自动驾驶用高精度地图数据网格化的管理方法及装置与流程

文档序号:16542745发布日期:2019-01-08 20:34阅读:186来源:国知局
一种自动驾驶用高精度地图数据网格化的管理方法及装置与流程

本发明涉及地图导航及数据处理技术领域,具体涉及一种将高精度地图中的道路数据、车道组数据以及定位元素的网格化管理方法及装置。



背景技术:

随着面向主动安全和无人驾驶的下一代高精度导航地图的逐步应用,地图数据从基础的导航、引导作用,逐步走向车身控制和主动安全的高级功能,数据网格管理功能被充分应用于车辆的高级自动驾驶,以此满足主动安全和无人驾驶的基本需求,缩小数据的筛选范围,快速获取车身周围对应的高精度地图数据。

在高精度地图制作过程中,会对从现实道路上采集的点(如激光点云数据)进行矢量化处理,最终构成驶离化的数字地图数据。在进行矢量化后的数据数量非常庞大,不利于快速获取车身周围的高精度地图数据,如何高效缩小数据的筛选范围是一个重要的问题。现阶段,只有传统的基础导航地图作网格化管理,还没有对自动驾驶用高精度地图作网格化管理。

相关名词解释:

1.网格单元空间步长

用于完整描述一个网格在平面中,网格经度方向上的步长值x以及纬度方向上的步长值y,x,y可以是球心坐标系下的经纬度的长度,也可以是投影坐标系下的直角坐标系的长度。如图2所示。

2.道路形状坐标点

用于完整描述一条道路所必需的点的集合,每个点必须具有x,y坐标。x,y坐标可以是球心坐标系下的经纬度坐标,也可以是投影坐标系下的直角坐标系的x,y坐标。如图3所示。

3.车道组

用于完整描述位于同一路段、具有相同行驶方向的车道的集合。如图4所示。

4.车道形状坐标点

用于完整描述一条车道所必需的点的集合,每个点必须具有x,y坐标。x,y坐标可以是球心坐标系下的经纬度坐标,也可以是投影坐标系下的直角坐标系的x,y坐标。如图5所示。

5.车道节点形状坐标点

用于完整描述两条或两条以上的高精度车道连接关系的一个点,这个点必须具有x,y坐标。x,y坐标可以是球心坐标系下的经纬度坐标,也可以是投影坐标系下的直角坐标系的x,y坐标。如图4所示。

6.车道组代表面坐标点

用于完整描述一个车道组所占据的范围所需的点的集合,每个点必须具有x,y坐标。x,y坐标可以是球心坐标系下的经纬度坐标,也可以是投影坐标系下的直角坐标系的x,y坐标。如图6所示。

7.定位元素

用于完整描述道路附近可用于车身定位的固定地物,例如:地面上的箭头、人行横道以及标记牌等。如图7所示。

8.定位元素形状坐标点

用于完整描述一个定位元素所占据的范围所需的点的集合,每个点必须具有x,y坐标。x,y坐标可以是球心坐标系下的经纬度坐标,也可以是投影坐标系下的直角坐标系的x,y坐标。如图7所示。

9.矢量化数据

将从原始采集的道路、车道形状坐标点,进行人工(或自动)识别,提取能保持道路、车道形状的坐标点,每个坐标点之间具有前后逻辑关系。道路数字化完成后便取得了道路、车道的矢量化数据。



技术实现要素:

本发明针对现有技术中存在的技术问题,提供一种自动驾驶用高精度地图数据网格化的管理方法及装置,在可接受的精度需求、空间需求、时间需求范围内,有效的利用网格单元管理高精度地图数据。

本发明解决上述技术问题的技术方案如下:

本发明一方面提供一种自动驾驶用高精度地图数据网格化的管理方法,其特征在于:包括以下步骤:

步骤1,根据设定的空间步长沿经度和纬度将高精度地图分为若干个网格单元;

步骤2,获取高精度地图中多条道路的矢量化数据,并获取每条道路对应的车道组矢量化数据集合以及对应的定位元素矢量化数据集合;

步骤3,根据设定的空间步长依次将所述多条道路切分成若干道路段,建立各条所述道路对应的道路段集合及各道路段对应的网格单元;

步骤4,依次将所述道路的多条车道组与所述道路段集合作车道组切分运算,得到若干子车道组,建立各条所述子车道组对应的道路段;

步骤5,依次将所述定位元素矢量化数据集合中多条定位元素与所述道路段集合进行过滤运算,获取每一条定位元素对应的道路段;

步骤6,根据道路段对应的网格单元的信息,建立子车道组及定位元素对应的网格单元。

进一步,所述空间步长包括用于描述经度方向前进距离和用于描述纬度方向前进距离。

进一步,所述高精度地图中多条道路的矢量化数据、车道组矢量化数据和定位元素矢量化数据依次分别包括用于描述所述道路形状的坐标点数据、用于描述所述车道组中每条车道形状的坐标点数据和用于描述所述定位元素形状的坐标点数据。

进一步,所述坐标点数据包括球心坐标或投影坐标。

进一步,所述步骤3中,根据设定的空间步长依次将所述多条道路切分成若干道路段,建立各条所述道路对应的道路段集合及各道路段对应的网格单元,包括以下步骤:

步骤301,按道路前进方向,取未进行空间步长切分运算的一条道路rq,根据所述用于描述道路形状的坐标点,获取该道路rq的坐标点集合:rq={p1,p2,...,pn}q,并根据所述坐标点集合,连接相邻的两坐标点形成线段,得到与该道路rq对应的线段集合:{l1,l2,...,ln-1},其中,

li={pi,pi+1}i∈[1,n-1];n为道路rq的坐标点数量;

步骤302,依次判断线段集合中的每一条线段,假设当前线段为li,是否与步骤1中的网格单元相交,若相交则记录线段与网格单元的相交坐标点集合:iq={p1',p2',...,pn'}q,确保相交坐标点集合是按道路前进方向有序;并将集合iq插入到道路rq的坐标点集合中:rq={p1,p2,...,pi,iq,pi+1,...,pn}q;

步骤303,根据步骤302所得到的道路rq的坐标点集合,以相交坐标点为切分点,获得与该道路rq对应的道路段集合,确保道路段集合是按道路前进方向有序,并记录每个道路段对应的网格单元:rq={{r1:m1},{r2:m2},...,{rn:mn}}q,r代表道路段,m代表道路段对应网格单元,其中,

ri={p1,p2,...,pn}ii∈[1,n];

步骤304,判断是否还存在未进行空间步长切分运算的道路,若存在则跳转至步骤301,否则结束空间步长切分运算,得到各条所述道路对应的道路段集合及各道路段对应的网格单元。

进一步,所述步骤4中,依次将所述道路的多条车道组与所述道路段集合作车道组切分运算,得到若干子车道组,建立各条所述子车道组对应的道路段,包括以下步骤:

步骤401,取未进行车道组切分运算的一条道路rq,获取该道路rq对应的车道组集合:{g1,g2,...,gn},确保车道组集合是按道路前进方向有序;并获取该道路rq对应的道路段集合:rq={{r1:m1},{r2:m2},...,{rn:mn}}q,其中,

ri={p1,p2,...,pn}ii∈[1,n];

步骤402,若该道路rq对应的道路段集合中元素数量大于1,说明该道路rq跨越多个网格单元,跳转至步骤403,否则跳转至步骤405;

步骤403,根据每段道路段对应的坐标点集合,取得除末段外其他道路段的尾端坐标点,得到与该道路rq对应的车道组切分点集合:{p1',p2',...,pn'},其中n等于道路段集合元素数量减1;

步骤404,步骤404,依次将车道组切分点集合{p1',p2',...,pn'}中每个元素,根据其位置信息,判断其位于车道组集合{g1,g2,...,gn}中对应的车道组,得到各车道组对应的切分点集合:{{g1:s1},{g2:s2},...,{gn:sn}},其中g代表一个车道组,s代表落在一个车道组内的切分点集合;根据切分点集合,将各条车道组切分成多条子车道组;

步骤405,建立各条所述子车道组对应的道路段;

步骤406,判断是否还存在未进行车道组切分运算的一条道路,若存在则跳转至步骤401,否则结束车道组切分运算,得到各条所述子车道组对应的道路段;

进一步,所述步骤5中,依次将所述道路多条定位元素与所述道路段集合进行过滤运算,获取每一条定位元素对应的道路段,包括以下步骤:

步骤501,取未进行过滤运算的一条道路rq,获取该道路rq对应的道路段集合:rq={{r1:m1},{r2:m2},...,{rn:mn}}q,其中,

ri={p1,p2,...,pn}ii∈[1,n];

并获取该道路rq对应的定位元素集合:{e1,e2,...,en},其中,

ei={p1,p2,...,pn}ii∈[1,n]

步骤502,依次计算定位元素集合{e1,e2,...,en}中每个定位元素的中心点坐标pc,根据pc到道路rq对应的道路段集合中每个道路段的距离进行过滤运算,获取每个定位元素对应的道路段;

步骤503,判断是否还存在未进行过滤运算的一条道路,若存在则跳转至步骤501,否则结束过滤运算,得到各条定位元素对应的道路段。

本发明另一方面提供一种自动驾驶用高精度地图数据网格化的管理装置,包括:

数据获取模块,用于获取高精度地图中多条道路的矢量化数据、车道组矢量化数据以及定位元素矢量化数据;

空间步长切分运算模块,用于依次将所述多条道路与所述网格单元作相交运算,建立各条所述道路对应的道路段集合及各道路段对应的网格单元;

车道组切分运算模块,用于对所述道路多条车道组与所述道路段集合作车道组切分运算,获取各条所述子车道组对应的道路段;

过滤运算模块,用于将所述道路多条定位元素与所述道路段集合进行过滤运算,获取各条定位元素对应的道路段。

进一步,所述高精度地图中多条道路的矢量化数据、车道组矢量化数据和定位元素矢量化数据包括用于描述所述道路形状的坐标点数据、用于描述所述车道组中每条车道形状的坐标点数据和用于描述所述定位元素形状的坐标点数据。

进一步,所述坐标点数据包括球心坐标或投影坐标。

本发明的有益效果是:在精度误差范围内,可以将复杂的数学计算维度降低到平面级,利用简单的线段与线段的关系、点与面的关系,将高精度地图数据利用网格单元管理起来。算法实施简单易行,容易理解。

附图说明

图1本发明的处理流程图

图2网格单元说明图

图3道路形状说明图

图4车道组概念说明图

图5矢量形状说明图

图6车道组代表面的说明图

图7定位元素说明图

图8车道组代表面形状及车道形状说明图

图9构造道路线段说明图

图10道路与网格单元相交说明图

图11道路段集合说明图

图12车道组集合说明图

图13车道组切分点说明图

图14车道组与切分点关系说明图

图15车道组切分结果说明图

图16路口内车道组概念说明图

图17车道组与道路段对应关系说明图

图18定位元素与道路段的关系说明图

图19本发明的管理装置说明图

具体实施方式

以下结合实例对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。

如图1所示,本发明实施例一方面提供一种自动驾驶用高精度地图数据网格化的管理方法,其具体实施方式,包括以下步骤:

1.沿经度和纬度根据设定的空间步长,将高精度地图分为若干个网格单元,并为每个网格单元赋予编号,如图2所示。

2.道路数据读入:读入道路数字化处理后的矢量化数据。读入数据后,需要确保矢量化数据是有序的。即坐标点之间的前后关系与现实世界一致。记道路矢量化坐标点的集合为{p1,p2,p3...pn},如图5所示;

车道组数据读入:读入车道组数字化处理后的矢量化数据。读入数据后,需要确保矢量化数据是有序的。即坐标点之间的前后关系与现实世界一致。记车道组代表面矢量化坐标点的集合为{p1,p2,p3,...,pn},并记车道组对应的每个车道矢量化坐标点的集合为{p1',p2',p3',...,pn'},如图8所示;

定位元素数据读入:读入定位元素数字化处理后的矢量化数据。读入数据后,需要确保矢量化数据是有序的。即坐标点之间的前后关系与现实世界一致。记定位元素矢量化坐标点的集合为{p1,p2,p3...pn},如图所示18所示;

3.道路进行空间步长切分运算。

3.1)获取道路rq的形状坐标点,假设道路矢量化坐标点的集合为{p1,p2,...,pn},然后以相邻两坐标点组成线段,得到线段l1{p1,p2}、线段l2{p2,p3}…线段ln-1{pn-1,pn},如图9所示;

3.2)依次判断线段集合中的每一条线段,是否与网格单元相交,若相交则记录线段与网格单元的相交坐标点,确保相交坐标点集合是按道路前进方向有序;并将相交坐标点集合插入到道路rq的坐标点集合中,假设经过插入操作后的道路矢量化坐标点的集合为{p1,p2,p3,p4,p5,p1',p6,p7,p2',p8,p9,p10},如图10所示;

3.3)根据3.2步骤所得,以相交坐标点为切分点,将坐标点集合分成多个坐标点集合,假设分为{{p1,p2,p3,p4,p5,p1'},{p1',p6,p7,p2'},{p2',p8,p9,p10}},得到道路段r1{p1,p2,p3,p4,p5,p1'}、道路段r2{p1',p6,p7,p2'}以及道路段r3{p2',p8,p9,p10},确保道路段集合{r1,r2,r3}是按道路前进方向有序的;并记录每个道路段对应的网格单元,假设道路段与网格单元的对应关系为{r1:m1},{r2:m2},{r3:m3};

3.4)重复上述步骤,得到各条所述道路对应的道路段集合及各道路段对应的网格单元。

4.车道组进行车道组切分运算。

4.1)获取道路rq对应的道路段集合,假设为{r1:m1},{r2:m2},{r3:m3},其中,ri={p1,p2,...,pn}ii∈[1,3],如图11所示;

获取道路rq对应的车道组集合,假设道路rq对应车道组集合为{g1,g2},其中,gi={l1,l2}ii∈[1,2],li={p1',p2',...,pn'}ii∈[1,n];并获得每个车道组对应的车道组代表面集合,假设对应结果集合为{g1:a1},{g2:a2},其中ai={p1”,p2”,...,pn”}ii∈[1,2],如图12所示;

4.2)如果道路段集合数量大于1,说明道路rq跨越多个网格单元,执行步骤4.3,进行车道组切分运算。否则建立车道组与道路段的对应关系,执行步骤4.7;

4.3)顺序取得除末段外其他道路段的尾端坐标点,组成车道组切分点集合,假设为{p1,p2},如图13所示;

4.4)依次将集合{p1,p2}中每个切分点,根据切分点坐标位置与车道组代表面的位置关系,得到每个切分点对应的车道组,可以存在多个切分点落在一个车道组内,假设结果集合为{g1:{p1}},{g2:{p2}},如图14所示;

4.5)求得p1到每条车道线上的垂足点pv,将垂足点pv当作车道线切分点将车道线切分成两条车道线,从而将车道组g1切分成两个子车道组,假设为{g1',g1”};如图15所示;利用同样的方法,将车道组g2切分成{g2',g2”};假设不能求得p1到每条车道线上的垂足点pv,说明该车道组为路口内车道组等其他特殊情况,不进行切分运算,如图16所示;

4.6)建立各条所述子车道组对应的道路段,假设道路rq对应的车道组与道路段的对应关系结果集合为{g1':r1},{g1”:r2},{g2':r2},{g2”:r3};如图17所示;

4.7)重复上述步骤,得到各条所述子车道组对应的道路段;

5.将定位元素进行过滤运算。

5.1)获取道路rq对应的道路段集合,假设为{r1:m1},{r2:m2},{r3:m3},其中,ri={p1,p2,...,pn}ii∈[1,3],如图11所示;

并获取该道路rq对应的定位元素集合,假设为{e1,e2},其中,ei={p1,p2,...,pn}ii∈[1,2],如图18所示;

5.2)依次计算定位元素集合{e1,e2}中每个定位元素的中心点坐标pc,根据pc到每个道路段的距离进行过滤运算,假设得到与pc最短距离的道路段为r1,则建立定位元素对应的道路段,可以存在多个定位元素对应一条道路段,假设结果集合为{e1:r1},{e2:r3},如图18所示;

5.3)重复上述步骤,得到各条定位元素对应的道路段;

6.根据道路段对应的网格单元信息,建立子车道组及定位元素对应的网格单元;

本发明实施例另一方面提供一种自动驾驶用高精度地图数据网格化的管理装置,如图19所示,包括:

数据获取模块,用于获取高精度地图中多条道路的矢量化数据、车道组矢量化数据以及定位元素矢量化数据;

空间步长切分运算模块,用于依次将所述多条道路与所述网格单元作相交运算,建立各条所述道路对应的道路段集合及各道路段对应的网格单元;

车道组切分运算模块,用于对所述道路多条车道组与所述道路段集合作车道组切分运算,获取各条所述子车道组对应的道路段;

过滤运算模块,用于将所述道路多条定位元素与所述道路段集合进行过滤运算,获取各条定位元素对应的道路段。

所述高精度地图中多条道路的矢量化数据、车道组矢量化数据和定位元素矢量化数据包括用于描述所述道路形状的坐标点数据、用于描述所述车道组中每条车道形状的坐标点数据和用于描述所述定位元素形状的坐标点数据。

所述坐标点数据包括球心坐标或投影坐标。

本发明在精度误差范围内,可以将复杂的数学计算维度降低到平面级,利用简单的线段与线段的关系、点与面的关系,将高精度地图数据利用网格单元管理起来。算法实施简单易行,容易理解。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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