高精度地图如何进行数据播发?如何与自动驾驶控制器进行信息交互?
文章来源:焉知汽车
发布时间:2021-01-05
本文着重从自动驾驶开发的角度说明高精地图如何进行数据播发,自动驾驶控制器如何对来自以太网的高精地图信号进行转化,以确保转化后的数据能够为其所用。
高精地图作为自动驾驶系统不可或缺的顶级传感器配置,在自车环境感知方面,可以提供大量有效的静态环境信息以及部分动态环境信息,可为自动驾驶控制器省去许多算力并进行实时计算。在定位方面,与GPS、北斗等全球卫星导航方式结合,帮车辆定位其精确位置。在驾驶规划方面,由于高精地图包含实时、高精度的交通信息,可精确帮助自动驾驶系统进行驾驶规划。对于高精地图的基础采集原理、建图原理及输出信号等已经有不少文献进行过相应的分析说明,
本
文着重从自动驾驶开发的角度说明高精地图如何进行数据播发,自动驾驶控制器如何对来自以太网的高精地图信号进行转化,以确保转化后的数据能够为其所用。此外,文章会详细讲解根据高精地图的输出数据,如何进行自动驾驶围栏设置。
当高精地图信息以一定的形式播发出来时,自动驾驶控制器如何对该高精地图信息进行利用是自动驾驶系统架构的数据感知处理单元需要首先处理的问题,即地图数据传递到ADAS系统应用需要一个分解、传输再重构的过程,如下图表示了相关的播发和重构原理图。
AHP(ADAS Horizon Provider)即电子地平线,作用是为ADAS 应用提供超视距的前方道路和数据信息。提取地图及位置信息生成ADAS Horizon数据,通过总线传输到ADAS控制器,ADAS控制器中有一个重构单元AHR(ADAS Horizon Reconstructor),AHR用于解析AHP 发出的消息并重建地图数据,供终端 ADAS 应用模块使用。即将收到的数据进行重构变成ADAS系统可以看懂的数据。目前ADASIS已发布V3版本支持包含车道在内的高精地图数据,支持车载以太总线传输。
高精地图实际是一种数字地图,用各种细节级别来表示对于世界的抽象。比如当对道路进行建模时,需要以不同的曲线表示无岔路的直道,而以连接点的方式来表示岔路节点,而以各种不同的连线及节点组合一起构成道路网络的拓扑结构,随后在利用世界坐标系进行坐标定位。
上图为一个简单的T型交点表示现实中车道简化模型。红色点表示数字地图中的节点,红色和黄色的线表示了各节点之间的连结性。为了更加真实的表示路网结构,将类似十字路口或其他更为复杂的情况简化为一个简单的抽象视图。随即通过一定的要素(如位置、连接关系等)把零散的地图要素表达成一幅完整的地图加以描述。
为了更好的对高精地图数据播发原理进行说明,需要对当前高精地图常用的播发要素进行说明如下:
项目 |
数据类型 |
数据元素 |
1 |
全局数据信息 |
包含国家、地区、时区、图商、地图版本、数据状态、驾驶方向(靠左/靠右)、单位制式(米/英里) |
2 |
局部数据信息
|
①路网拓扑:所在路径ID、子路径ID、岔路与主路夹角
②车道模型:车道编号、数量、宽度、类型、车道转换(分离/合并)
③车道连接:初始的路径ID和车道编号、新的路径ID和车道编号
④车道线:车道线编号、类型(护栏等连续线型物体也用此信号表达)
⑦地理围栏:地理围栏内、地理围栏外且提醒、地理围栏外功能退出
⑧道路等级、道路构成、隧道、交通标志、信号灯、地面标志、收费站
⑨动态信息:天气、施工、交通事件(活动、管制)、动态交通流(拥堵)
|
3 |
路径控制信息
|
除开基础路网拓扑信息外,包括新增路径信息(父路径ID、子路径ID、新增路径ID、分支点位置);删除的路段信息(路径ID、删除点位置) |
ADAS范围是对车辆前方环境的一种预测树视图,它被描述为不同路径的集合和周围的数字导航地图数据。预测树是由多条路径连接而成,每条路径都代表道路的一部分,并通过交叉点(交叉口)和其他路径连接起来。一旦车辆移动并更改其位置,预测视图也会更改:可能会删除一些经过的路径,或者增加一些新的路径。在自动驾驶系统控制过程中,应用高精地图比较广泛的场景包含如下一些:
其一,高精地图需要告知自动驾驶系统当前车辆处于何种位置,该位置下周边环境怎样?
其二,高精地图需要结合驾驶员设置的导航信息,告知自动驾驶系统从当前时刻开始,下一步车辆应该从道路的何种路径行驶通过。
为了对如上两步中的过程进行完善,我们需要对行驶过程中相关的元素分别进行概括分析如下:
a)节点PathNode及路径朝向HeadingAngle:
道路分支节点,可用于表达场景网络拓扑下的路径关系,他可以区分自动驾驶系统控制下的各条行驶路径间的关系,其相关的信息包括分支点相对于当前道路位置的偏移量NodeOffset、子路径编号SubpathID、分岔路与主路间的夹角α/β。该夹角从右向左分别从0°增加到360°,其中α=180°时,表示沿着当前方向没有分支点,当α=180°时,表示该子路径与自车行驶路径相反。
如下图罗列出当前车辆可以通过的可行使路线。实际上,在高精地图进行路径规划中会包括驾驶路线及所有可能的路线,每条路径分配有相应的编号即PathID,该编号根据是否存在分支节点会随时生成相应的主路径与子路径,其中主路径MainID是指车辆当前行驶位置到分支节点间的行驶路径,子路径SubID是指在节点后的分叉路径。行驶过程中是通过不断地寻找在各个节点处相同地路径编号PathId,作为规划下一时刻的行驶过程。如下图所示,以前述路径交叉节点为分界点,可以描绘出不同的行驶路径,并为各个路径进行编号。如下图表示了4条不同的路径。
偏移量具体是指自车当前位置距离前方关键点的距离,这里的距离是一个相对量,而计算该距离的过程是两个绝对值相减的过程,如下图表示了当前车辆位置(这里称作坐标原点)与关键点的偏移量表达,其中针对交叉节点分割的两条路径,分别计算不同的路径偏移,如果是非主路上的路径偏移则需要计算两个部分偏移进行叠加,一部分是岔路点到车辆当前位置的偏移距离offet1,一部分是岔路点到子路径关键点的路径偏移offset2;总体偏移量为以上两者的总和:
即offset_path2=offset1+offset2;
高精地图实际时针对当前位置实时动态的向前播发一定距离的地图数据,实际数据播发过程以车道模型为基本单元,在车道模型属性中的车道数量、车道线、车道类型变化的地方设置断点,一般设置断点间的距离为100-600米左右,由此需要保证车辆前方有至少2km左右的数据,如果有岔路出现,则对该岔路标识的子路径播发500-1km左右的距离。
如下图所示,表示了高精地图向前播发数据的位置及原理。
此外,为了节省内存空间,需要对无用数据占用的缓存空间进行定时清理,删除车辆后方(或称拖尾)的一些无用地图数据,删除过程一般采用限定拖尾范围距离的方式进行,即自车的行驶距离超过该拖尾范围距离时,执行删除指令。这里要注意的是,需要确保删除的拖尾不能是当前车辆正在通过的行驶路径。
在现实世界中,至少要有一条车道来描述一条路。车道通常是道路上的一个横向分隔区域,供车辆朝一个方向行驶。每个路段都可以通过车道数和行驶方向来描述。在水平面上传输的所有车道组可以包括所有可想象的车道类型。从一段路到另一段路,特别是在十字路口,车道相互连接。
每条车道都有属性和几何描述,车道模型概要文件包含描述特定路径上的车道的信息。对于每个车道,它包括关于车道号、方向、过渡和车道类型的信息,以及描述车道边界的两个线性对象标识符。一般的,车道模型包含不同的类型,如普通车道、应急车道、公交车道、超车道、加速车道、非机动车道等。
车道的方向和连接描述了道路的逻辑视图,再次呈现出地平线路径的一部分。识别车道的方法是在驾驶方向上从右到左从1开始计数,包括肩道(如果要表示肩道)。作为高精数据的车道模型是按照一定规则打断后播发的基础单元,包含了车道类型、编号、转化关系等信息。
e)车道连接属性Lane Connectivity
车道连接属性表示了一个车道模型到下一个车道模型之间的车道连接关系。他可以对不同车道之间建立有效的连接关系,也可以对同一车道内的有效车道与无效车道之间建立分隔关系。首先通过对车道路径按照一定的距离进行打点分割,将分割的两段车道线进行编号排序,排好序的车道属性作为车道行驶路径连接的规划点表达(车道编号:LaneNumber,车道所在路径编号:PathID)。
f)导航路径规划 Navigation Path Planning
导航路径规划实际是高精地图接收导航地图发送的驾驶员设置目的地信息进行路径规划的过程,它包含对当前车辆位置的探测,车辆下一时刻形式位置的预测,并对该预测出的路径打上标签发送标志信号给自动驾驶中央控制器以进行相应的车辆轨迹规划。
当前车辆定位完成后,分别生成了两段可行使路径,随后在设置了导航路径后,分别为该两段路径打上标签,当某段路径属性与当前位置路段属性一致时,则将两端同一属性的路径标实为下一时刻需要行驶的路径。如下图,表示了当前车辆位置处路段属性为Path_1_Label=1,下一时刻两条不同路径的属性标签分别为Path_2_Label=0,Path_3_Label=1,Path_4_Label=0,此时Path_1_Label=Path_3_Label,则表示车辆需要沿着Path_3进入岔路口。
这里需要注意的是,导航数据播发是通过从检测到前方特殊特殊路径开始生成。比如前方一定距离PreDis后有匝道,则从该时刻开始进行路径预测。
i.导航地图根据人的指令(如目标POI点)规划出全局行驶路线(道路级);
ii.然后将规划的“行驶路线”给到高精地图;
iii.高精地图基于“行驶路线”计算出“车道级路径规划”;
iv.再将“车道级路径规划”给到自动驾驶控制器辅助决策局部路径规划。
基本车道信息包括了车道编号(行车方向从右向左,编号递增)、车道置信度(包含高、中、低等多类别)、车道类型(车道线、中心线、篱笆、护栏、墙等)、车道颜色(白、黄、橙、蓝、绿、灰、左白右黄、左黄右白等)、车道线型(单实线、单虚线、短虚线、双实线、双虚线、左实右虚、右实左虚、导流线等)等要素。
车道几何信息包括了车道线编号、车道边界坐标、车道中心线坐标、车道曲率、车道纵坡度、车道横坡度、车道航向。
地理围栏是高精地图针对自动驾驶功能设置的电子围栏,用于限定自动驾驶车辆在该范围内的激活控制前提条件,当车辆处于地理围栏内时可以确认开启自动驾驶功能,当车辆处于地理围栏外时,自动驾驶功能退出或禁止开启或触发相应的报警功能。
一般情况下能够利用高精地图设置的地理围栏规则如下,地理围栏包括两个部分,其一是特殊场景标识的禁行区,地理围栏外的特殊场景设置包括道路等级、道路构成、收费站、检查站、收费站、检查站、施工/禁行/被借用、交通灯、曲率、横坡、纵坡等。如上图中表示出了比较典型的驶出地理围栏的标识。其二是禁行区外的距离延长区,该区域内是对地理围栏的确认判断区,可作为自动驾驶的报警区。
真正高精地图播发的数据一般是以以太网数据格式进行发送,而在自动驾驶控制器看来是无法直接利用起来的,除开信号格式不一致外,信号也需要经过包含一系列数据解析的方式进行数据重构。
本文重点讲解高精地图如何进行播发及自动驾驶控制器如何在数据处理单元进行重构的过程,对于真正自动驾驶控制是十分关键的过程控制。
获取更多评论