微信号:infoqchina

介绍:有内容的技术社区媒体

百度Apollo自动驾驶公开课首期落幕,最新干货内容与演讲PPT无码奉上

2017-11-06 08:05 InfoQ

9 月 20 日,有着“汽车界安卓”之称的百度 Apollo 自动驾驶平台进行了新一轮的升级开放。更新迭代后的 Apollo 1.5 自动驾驶平台,开放了五大核心能力,引起行业热烈反响。这些核心能力背后的设计思路和架构是什么样的?如何以最快的速度获取自身需要的技术?为了解答这些疑问,百度打造了《Hello Apollo- 自动驾驶公开课》系列技术课程,持续深入开发者中间,帮助开发者了解 Apollo 开放平台,并掌握和使用 Apollo 开放能力。

公开课首期定位于上海,来自百度的三位技术专家孔旗、毛继明以及郁浩,就 Apollo 1.5 开放的障碍物感知、决策规划、云端仿真、高精地图服务、End-to-End 自动驾驶方案五大开放功能做了深度解析和分享。本文整理了部分精彩干货内容,感兴趣的同学可以点击阅读原文下载完整版演讲 PDF。

1Apollo 自动驾驶及跟车方案的设计思路

百度资深架构师孔旗做了开场演讲,孔旗首先回顾了 Apollo 开放平台的发展历程,并通过障碍物感知、障碍物行为预测、路径的决策规划算法与框架等内容分享,详解了 Apollo 如何实现自动驾驶及跟车方案。

障碍物感知系统的实现过程

如果一辆车子要实现自动驾驶,那么障碍物感知绝对是最基础也是最核心的功能。Apollo 障碍物感知系统分为 3D 检测、ROI 滤波、识别、运算、感知五大板块。其感知过程如下:首先 LiDAR 探测到信号,传递给 ROI 的 Filter,滤波后的信号通过 Obstacle Segmentation 和 Detection 做识别,然后是 Tracking,Apollo 在运算这一块采用的是 NVIDIA GPU,运算能力强劲,可以实现 10Hz 的输出,最后是 Obstacles 感知。

当系统感知到障碍物后,需要对障碍物进行行为预测,如障碍物是否是动态的,其下一步动作是什么。Apollo 障碍物行为预测系统采用 MLP 多层感知机制,通过深度神经网络与规划算法,达到精准预测路径的目的。

决策规划设计方案与思路

在介绍了障碍物感知与行为预测分析之后,孔旗详细讲解了 Apollo 的决策规划设计方案与思路。如下图为 Apollo 自动驾驶平台的决策规划整体架构,其中,SL MAP 是路径的坐标系,Frame 代表数据帧,Decider 则是决策部分,如决定车辆是否换道,在确认换道的情况下,Path Decision 和 Speed Decision 通过计算给出换道方向和速度等信息,底部蓝色是对换道路径的整体规划,架构图右侧绿色框图是交规的处理部分,Objects 代表路权,判断人让车还是车让人就是在这一部分执行处理。

整个决策规划系统里面,最核心部分的是对路径和速度的采样以及优化。Apollo 1.5 跟车方案首先从人的开车规划过程开始分析,如走什么样的路线,用什么样的速度开车,通过 DP 路径算法、QP 路径算法、DP 速度算法、QP 速度算法分析,在做决策的同时进行路径和速度规划,其 EM 规划过程如下图,包括路径 DP 采样、速度 DP 采样、路径 QP 优化与速度 QP 优化四个部分,其中,前二者用来帮助车辆进行行为决策。

最后,孔旗表示,Apollo 自动驾驶的开放,是希望和整个行业共同努力,推进自动驾驶技术的发展与落地,如果开发者都能将自己的数据、算法开放共享,那将会做出更好的模型,自动驾驶汽车也会早日成型,帮助大家节省每日在路上耗费的大量时间。

2Apollo 高精地图服务介绍及云端仿真平台应用

“高精度图赋予了自动驾驶上帝的视角,它包含了普通地图没有、但可以帮助无人车更快更准确的感知外部世界隐藏的元素。”对于高精地图,百度资深架构师毛继明有着不一样的理解,作为百度无人驾驶云端工程架构技术的负责人,毛继明重点关注分布式无人车仿真云平台的构建,在分布式系统架构方面拥有丰富的经验。现场,毛继明着重分享了 Apollo 1.5 在云端的两大核心业务功能:高精地图和仿真平台。

Apollo 高精地图服务介绍

与普通地图不同,高精地图主要服务于自动驾驶车辆,通过一套独特的导航体系,帮助自动驾驶解决系统性能问题,扩展传感器检测边界。目前 Apollo 内部高精地图主要应用在高精定位、环境感知、决策规划、仿真运行四大场景,帮助解决林荫道路 GPS 信号弱、红绿灯是定位与感知以及十字路口复杂等导航难题。

  • 林荫道路 GPS 信号弱:一般树木环绕的环境下 GPS 定位效果都不佳,Apollo 采用的解决办法是在高精地图里面嵌入多个定位的锚点,通过锚点精准定位出一条导航线路,解决弱 GPS 环境下的导航问题;

  • 红绿灯是定位与感知:采用停止线关联对应的红绿灯方式,高精地图内部包含红绿灯的精确位置和高度信息,来降低感知难度,避免误识别;

  • 复杂路口:对于复杂的路口,高精地图在路口所有的左转 / 右转车道上绘出虚拟车道及其关联线,来降低决策规划的难度,并在所有左转 / 右转的路口标志 ROI 区域,减少计算量的同时保证也能安全。

据毛继明介绍,Apollo 高精地图是最懂自动驾驶的高精地图,也是业界精细化程度最高、生产率最高、覆盖面最广的高精地图。目前,Apollo 高精地图的自动化程度已经达到了 90%、准确识别率达到了 95% 以上,预计 2020 年可以覆盖全国所有的重点道路。

云端仿真平台及应用

仿真平台可以说是自动驾驶的加速器,在上路实践之前,自动驾驶的各项性能测试在云端的仿真必不可少。Apollo 1.5 开放的仿真平台内置高精地图,拥有海量真实中国交通场景与强大的云端计算能力,并且通过交规类、模块类、体感类等 200+ 维度评估,能够精准而又全方位的评测自动驾驶各项能力,是为自动驾驶量身打造的专业度量体系。

Apollo 1.5 仿真平台开放了大量的仿真场景、算法上传与场景运行、智能判别系统以及算法的 3D 可视化功能,支持整体算法和单一模块的验证,在用法上也比较简单,如果要把具体的模块替换掉,只要 follow  Apollo 的接口,就可以运行起来。当然如果不符合 Apollo 的规则,可以以整包的方式提交。

据悉,Apollo 2.0 版本会在 12 月底或者 1 月初发布。届时仿真平台的度量纬度、计算能力都会有大幅度的提升。预计在 2018 年底,可以为使用者交付日行百万公里的计算能力,或者仿真能力。

3基于深度学习的 End-to-End 自动驾驶方案

基于深度学习(以 End-to-End 为主)的自动驾驶方兴未艾。百度拥有超大规模的训练数据,同时也在国内首次实车展示了这种自动驾驶。百度资深架构师郁浩就 Apollo 1.5 开放的最后一个核心功能:基于深度学习的 End-to-End 自动驾驶方案做了详细介绍。

Rule-Based 系统与 End-to-End 系统的对比

目前,对于自动驾驶系统的选择,业界有两种不同的看法和选择:传统的 Rule based 系统与 基于深度学习的 End-to-End 系统,这两种系统实现方式不同,在性能和应用上各有优缺点。

  • 传统的 Rule-Based 系统:与 End-to-End 相对应的是传统规则式的无人驾驶系统,它经历了二三十年的研究和试跑过程,运用业界和学术界主流的 Rule-Based 系统,从车辆、到传感器感知、World Model、然后进行决策、控制、最后到车辆,形成了比较完整的闭环系统。不过,其在实际的应用上还是有比较明显的瓶颈:系统复杂(人工设计)、高精地图成本高(需要广铺以及实时更新),计算性能(资源浪费)等都是硬伤。而 End-to-End 方式能够很好的解决这些问题。

  • End-to-End 系统:人类在驾驶的时候有两种行为:第一种是潜意识行为,人们不需要知道路面的每一个特点,不需要精确的位置和车距,多数时间是靠下意识完成;第二种是需要集中注意力和实时判断,比如变道时要考虑前后车辆的情况、盲区等,依靠充分的深入判断做出决策。而 End-to-End 系统对应的是第一种潜意识的行为,它更细化的是输入原始的传感器数据。

上图为 Rule-Based 与 End-to-End 优劣对比,通过对比,可以看到 End-to-End 方案虽然解决了 Rule-Based 在应用上的部分缺点,但其在基本功能实现上需要进一步的探索和实践。郁浩认为,这两种方案,均有各自的优劣势,在现阶段,无法完全依靠某一种深度学习方案实现自动驾驶功能,Rule-Based 和 End-to-End 在未来的趋势上必将是吸收对方的优点进行融合而绝非对立。

Apollo 实践:数据与模型

Apollo 1.5 平台的 End-to-End 系统目前已经有很多公开数据集,大概可以分成分两类:一类是真实的采集数据,一类是模拟器的数据。从采集成本来看,真实数据采集成本是适中,可用性高,不过目前百度采集到的数据较少,难以支撑上路实用;另一方面,模拟器的采集成本相较而言极低,当然可用性亦有限,在真实的场景无法完全可用,需要有新的技术突破。

百度在真实的数据采集方面投入甚高,每年都会使用大量数据车实地采集几百万公里的数据进行分析。郁浩表示,Apollo 1.5 开放了大量的 End-to-End 真实驾驶数据数据,包括 Image、RTK-GPS 以及 IMU 等,每一个开源的数据文件对应一次采集任务。感兴趣的读者可以打开 Apollo 首页的“数据开放平台”,点击 RoadHackers 获取最新数据。

拿到 Apollo 的开放数据之后,就是如何使用的问题。百度在去年的时候采用的是简单的横向模型 CNN 以及纵向控制模型 Convolutional-LSTM,今年,百度将这二者融合到一起,采用的横向 + 纵向的模式:LRCN。整个模型架构如下图,包括 Video、Seg Loss、Motion 等,该模型的关注主要集中在视觉特征的提取、时序规律的发现、行为的映射等方面。

在模型的开放内容上,Apollo1.5 现阶段的主要开放了 Vehicle 端,sensors、vehicle、data collection、online-system 等功能目前均已开放,但在云端的一些功能包括云端数据处理、model training 等暂时还未开源。郁浩最后也表示说,Apollo 1.5 阶段虽然没有完全开放出 End-to-End 完整的闭环,但 Apollo 平台最终会把适配好的模型全部部署到在线系统,并将在 Apollo  2.0 的阶段完整开放。

4写在最后

相比于开源之初,Apollo 1.5 提供了更加完善的障碍物感知、决策规划、云端仿真、高精地图以及 End-to-End 自动驾驶功能与方案,并且通过激光雷达云端标定,适配多种装配方案和车型,实现了感知和规划能力的模块化接入。相信在不久的未来,在百度和行业的共同努力与推进下,自动驾驶技术将会得到更加快速的发展并最终落地应用。

 
InfoQ 更多文章 前端框架新选择——基于MVVM的San Q新闻丨阿里云占中国市场近五成份额;谷歌欲借TensorFlow重返中国;Kafka迎来1.0.0版本,正式告别四位数版本号 Apache Kafka 1.0:为什么我们等了这么久? Service Mesh:下一代微服务? 二叉树视频丨龙泉寺、北漂、二次元,活在不同圈子里的相同程序员
猜您喜欢 有趣:现实生活中的 Linux 中国网络安全行业全景图(2016下半年) 陈斌 | 大型互联网平台背后的可扩展性 为小程序而生的小(jiao)手架 Redis 双主实现