在Apollo 1.5和2.0中,规划模块和控制模块依靠的是全球定位和高精地图。高精地图中有丰富的地图元素,可以帮助车辆规划,实现复杂路况下的自动驾驶,众所周知,高精地图在自动驾驶中的价值所在,它们不仅有着较高的精准度,而且适用于任何路况,更重要的是高精地图对于路测有着重要意义,但高精地图对于开发者及测试者来说并不是可以轻易获得的,制作高精地图需要大量的成本,周转时间长,在此背景下Apollo 2.5推出了基于动态的实时相对地图(Real-time Relative Map )的解决方案。
该地图基于车辆坐标系,其原点位于车辆本身。众所周知,车道线是地图中的重要元素,以确保自动驾驶车辆做出合理的决策并进行安全的轨迹规划。在相对地图中,车道线数据是通过基于摄像头的车道感知而生成的,并且包含基于云端的导航线(Navigation Line)。
下图阐释了导航线是如何生成的。
导航线在自动驾驶中扮演着多种角色。第一,导航线作为出发点与目的地点的连接线,提供车道级别导航;第二,导航线可以生成Reference line用于驾驶决策;第三,为高精地图提供载体;第四,导航线是相对地图的重要组成部分。
导航线有以下特点:
1. 导航线是按照驾驶员驾驶路径设计,所以安全性和舒适性是有保障的;
2. 更重要的是,基于驾驶数据,导航线可以自动生成,大大降低了开发成本;
3. 可以与视觉感知系统配合生成基本的地图信息,可以适用于比较简单的驾驶场景,比如高速公路、乡村道路等;
4. 导航线可以与高精地图结合,生成复杂的驾驶场景,例如城市道路。
下面我们举例说明,相对地图和导航线在自动驾驶场景中是如何工作的。
1.在如下图highlight区域部署自动驾驶场景;
2.在实现真正的自动驾驶之前,我们需要采集导航线,经过对驾驶员驾驶路径的采集,后期可以转换成为(如下图绿色线条);
3.需求:实现从A→B的自动行驶;
4.按照传统地图(百度地图or谷歌地图)导航,生成的轨迹1(蓝色线条);
5.在接到导航需求时,系统会选择一条最匹配的导航线(黄色标线)用来导航;
6.系统为决策模块提供多条导航线,可以实现变道功能。
通过使用这种方法,我们可以创建一个与高精地图的数据格式相匹配的相对地图(Relative Map),并基于事先录制好的人工驾驶轨迹和摄像头实时检测到的车道线。有的开发者会有疑问:相对地图与SLAM有什么区别呢?其实SLAM问题可以描述为: 汽车在未知环境中从一个未知位置开始移动,在移动过程中根据位置估计和地图进行自身定位,同时在自身定位的基础上建造增量式地图,实现汽车的自主定位和导航。Relative Map在基于指引线录制模式时,会依赖录制的指引线与实时摄像头信息生成Relative Map,同时,依靠GPS定位; 在基于纯摄像头模式时,并不进行自身定位和建造增量式地图,只依赖实时摄像头生成的车道线信息行驶。
在行驶过程中,相对地图数据的计算和更新频率10Hz,相对地图数据来源一是基于视觉感知的车道标识,二是基于云端的导航线,而且相对地图支持以下三种自动驾驶场景:
模式1,仅依靠视觉感知的车道标识
适用场景:
1、定位缺失;
2、只有来自感知系统的车道线识别;
3、车道保持与自适应巡航。
在基于指引线录制模式时,会依赖录制的指引线与实时摄像头信息生成的Relative Map行驶,此时需要GPS定位。当GPS失效时(比如通过某个隧道),系统将自动切换为基于纯摄像头模式,此时只依赖实时摄像头生成的车道线信息行驶。只要有车线可以辨别,车会沿着车道中心线一直开(Lane Keeping)。如果车道线不可辨别,需要人来接管。
相对地图模式2,依靠视觉感知与云端导航线
适用场景:
1、感知系统检测的车道标识
2、能从云端获取导航线
3、高速道路或者车道线不清晰的乡村道路
此条件下,导航线与感知系统结合生成地图数据,用于车辆决策。
相对地图模式3,依靠视觉感知、云端导航线以及高精地图
适用场景:
1、车道标识不是来自于感知系统检测,而是基于历史驾驶数据以及高精地图生成;
2、能从云端获取导航线
3、城市道路
此条件下,导航线结合高精地图,能实现城市道路的规划决策。
相较来讲,相对地图的精度较低,仅限于某些用途。但它却有着不容忽视的优势,成本更低,周转更快 ,并且制作起来更容易,还可以实现实时更新。