2018年6月23日,由百度主办、佐思产研、佐智汽车承办的第4期《Hello Apollo,自动驾驶公开课》——“Apollo2.5限定场景低成本技术方案解析”在上海市徐汇区COCOSPACE成功举办,吸引了近300位来自车企、零部件企业、自动驾驶初创企业、高校等的开发者参加。本次公开课邀请了百度自动驾驶事业部的资深工程师们以及Apollo的生态合作伙伴,一起与开发者们交流。
在本次公开课中,杨凡老师演讲的主要内容包括:Apollo开放平台简介、Apollo能力开放简介、Apollo资源开放与研发迭代新模式、Apollo生态阶段性成果介绍。
杨凡,百度自动驾驶事业部资深架构师,
负责产品化解决方案
从2017年4月份宣布Apollo计划,到9月份实现了固定车道的自动驾驶,到2018年1月份完成了2.0的完整模块点亮,到2.5实现了限定场景的低成本解决方案。
Apollo会在2018年、2019年一步一步的规划达到L4、L5级别。Apollo社区在Github已经有9000位活跃的开发者,有2000以上的开发者已经fork了代码,正在完成自己的自动驾驶开发。所有的开发者贡献的代码行数已经超过了20万行,是世界上最活跃的自动驾驶社区。
Apollo2.5满足了开发者们的以下四个需求:
•开发者需要的更多场景;
•完成场景的基础上,需要更低的门槛;
•需要更强有力的工具;
•需要支持更多的车型。
Apollo2.5对更多场景通过视觉进行支持,Apollo2.5点亮了高速公路场景,实现了限定场景的低成本化;Apollo2.5通过使用相对地图,解除了高精度地图对开发者的壁垒;通过完整的车端和离线工具链支持,可以让开发者方便调试系统;最后将和开发者一起实现更多车型。
首先是基于视觉的支持,就是camera。Apollo2.0以前是基于lidar做的,lidar有自己的优势,有精确的3D能力,对定位有非常好的效果,但是它的缺点也是很明显的。Lidar即便用最好的64线,有效感知距离不会达到百米,一般是六七十米的状态。对于各种各样的干扰来说,它其实是不够稳定可靠的。更重要的是激光雷达的确有点贵,一般几十万,供货周期长,而且对于雨雪天气这种比较复杂的场景有一定的局限性。
Apollo2.5提供的是基于视觉的解决方案,Camera的好处之一是雨雪天气可用;另外一个好处,Camera已经在众多领域应用广泛,成本是相对低,技术方案也比较成熟。Camera分辨率相对高,视距可以达到一两百米,它的劣势在于是被动的感知能力,所以它依赖光照,最明显是夜间效果很不好。
Apollo 2.5的初衷,是选择一个最有效、解决多场景,成本又最低的解决方案。首先使用相对少的传感器组合,来完成低成本的自动驾驶,通过这个方案可以点亮高速场景,在高速场景下,不依赖于高精地图。
基于这个逻辑,明确Apollo 2.5要实现的目标,首先输入是Camera图像和毫米波雷达,图像这部分分解比较复杂一些。首先是预处理,预处理实际上很多操作是ISP之后做的,主要是负责曝光、增益、去马赛克等。另外对于高速这种场景,需要有足够高的频率来更新识别结果,需要实时的识别,一定要限制它的计算资源。
Apollo 2.5提供了低成本的自动驾驶能力,它只用了一个Radar和一个Camera,所以在Co-trained-network达到76fps,通过对最近障碍车的追踪,进行信息的补足,可以完成ACC,最后和Radar完成Sensor Fusion。
那如何把高精度地图的门槛降到大家很容易接受的程度呢?高精图制作成本太高,而且专业性非常强,还有很多法规上的制约,使得开发者很难快速的、大规模进行实验。在限定场景下,其实是可以通过相对地图来解决问题。
从架构层面,相对地图模块是连接高精地图(HD Map)、感知(Perception)模块和规划(Planning)模块的中间层。相对地图模块会实时生成基于车身坐标系的信息,并且输出供规划模块使用的参考线。
相对地图基于车辆坐标系,其原点位于车辆本身。车道线是地图中的重要元素,以确保自动驾驶车辆做出合理的决策并进行安全的轨迹规划。
目前,导航模式可完成加减速、跟车、遇障碍物减速停车或在车道宽度允许的情形下对障碍物绕行等功能,后续版本的导航模式将会进一步完善以支持多车道行驶、交通标志和红绿灯检测等。
在相对地图中,车道线数据是通过基于摄像头的车道感知而生成的,并且包含基于云端的导航线(Navigation Line)。下图阐释了导航线是如何生成的。
导航线在自动驾驶中扮演着多种角色。第一,导航线作为出发点与目的地的连接线,可以保证车辆不会偏离;第二,导航线可以生成Referenceline用于驾驶决策;第三,为高精地图提供载体;第四,导航线是相对地图的重要组成部分。
导航线有以下特点:
1. 导航线是按照驾驶员驾驶路径设计,所以安全性和舒适性是有保障的;
2. 更重要的是,基于驾驶数据,导航线可以自动生成,大大降低了开发成本;
3. 可以与视觉感知系统配合生成基本的地图信息,可以适用于比较简单的驾驶场景,比如高速公路、乡村道路等;
4. 导航线可以与高精地图兼容,生成复杂的驾驶场景,例如城市道路。
下面我们举例说明,相对地图和导航线在自动驾驶场景中是如何工作的。
1. 在如下图highlight区域部署自动驾驶场景;
2. 在实现真正的自动驾驶之前,我们需要采集导航线,经过驾驶员对驾驶路径的采集,后期可以转换成为导航线(如下图绿色线条);
3.需要实现从A→B的自动行驶;
4. 按照传统地图(百度地图or谷歌地图)导航,生成的轨迹1(蓝色线条);
5. 在接到导航需求时,系统会选择一条最匹配的导航线(黄色标线)用来导航;
6.系统为决策模块提供多条导航线,可以实现变道功能。
通过使用这种方法,我们可以创建一个与高精地图数据格式相匹配的相对地图,并基于事先录制好的人工驾驶轨迹和摄像头的感知进行车道检测。
在行驶过程中,相对地图数据的计算和更新频率为10Hz,相对地图数据来源一是基于视觉感知的车道标识,二是基于云端的导航线,而且相对地图支持以下三种自动驾驶场景:
模式1,仅依靠视觉感知的车道标识
适用场景:
1、定位缺失;
2、只有来自感知系统的车道线识别;
3、车道保持与自适应巡航。
在基于参考线录制模式时,会依赖录制的参考线与实时摄像头信息生成的Relative Map行驶,此时需要GPS定位。当GPS失效时(比如通过某个隧道),系统将自动切换为基于纯摄像头模式,此时只依赖实时摄像头生成的车道线信息行驶。只要有车线可以辨别,车会沿着车道中心线一直开(Lane Keeping)。如果车道线不可辨别,需要人来接管。
相对地图模式2,依靠视觉感知与云端导航线
适用场景:
1、感知系统检测的车道标识
2、能从云端获取导航线
3、高速道路或者车道线不清晰的乡村道路
此条件下,导航线与感知系统结合生成地图数据,用于车辆决策。
相对地图模式3,依靠视觉感知、云端导航线以及高精地图
适用场景:
1、车道标识不是来自于感知系统检测,而是基于历史驾驶数据以及高精地图生成;
2、能从云端获取导航线
3、城市道路
此条件下,导航线结合高精地图,能实现城市道路的规划决策。
相较来讲,相对地图的精度较低,仅限于某些用途。但它却有着不容忽视的优势,成本更低,周转更快,并且制作起来更容易,还可以实现实时更新。
DreamView是比较常用的工具,是一个综合调试工具,在车上它是一个中心,可以精确看到关于车辆的自动驾驶情况,它可以监控所有组件的工作状况,当在车下的时候,可以通过线下或者云端模拟器使用,是非常有效的工具,它可以帮开发者“看到”所有可视化的一切。
Apollo开发者社区为开发者们提供了一个可以自由交流的平台,加入Apollo开发者交流社群,快速获取Apollo咨询与行业人脉。