近期,AI 前线请来了百度自动驾驶事业部资深架构师杨凡,在 AI 前线社群做了一期分享《Apollo2.0 数据开放平台 :“云 + 端”研发迭代新模式》,此文章整理了全部分享内容。
各位开发者朋友,大家好,我是来自百度自动驾驶事业部的杨凡。很高兴有机会与大家分享百度和 Apollo 在自动驾驶汽车方面的一些进展。
我的分享分这几部分:
首先是介绍 Apollo 和车端开放能力
接着是介绍资源开放与研发迭代新模式
之后是介绍数据开放平台与训练平台实战
最后是介绍基于能力开放和资源开放的阶段性成果
Apollo 能力开放简介
我们先来看第一部分,Apollo 能力开放简单介绍。
AI 生态开放战略
先向大家介绍一下百度做自动驾驶的背景。就像百度总裁 COO 陆奇在 CES 大会上再次提到的,百度已经是一家 AI 公司。并跟大家分享百度是怎样以中国速度在加速 AI 创新的以及通过开放平台我们可以怎样来共同改变世界,并让世界变得更好。
我们可以看到科技大潮的演进,已经从命令行、客户端服务器、互联网、移动互联网一路走来,进入到了 AI 时代。
在百度 AI 开放生态战略中,体系分成云和端,支撑的云技术是智能云和百度大脑,而端的输出就是自动驾驶 Apollo 生态和唤醒外物的 DuerOS 生态。
同时更重要的,更振奋人心的是 AI 把移动互联网带入一个全新的时代,我们把它叫做新移动。
在这个新移动时代手机有很强的感知能力,有更多的 AI 基产能力,每个手机都能听、能看、能说、能学习、能懂用户。百度的核心产品,手机百度,爱奇艺等等,将充分利用这新的能力,全面推进新的技术和产品来引领新一代的移动时代的用户体验。特别是手机百度,手机百度将把搜索和个性化有机融合在一块,打造新一代的更懂用户的体验。Apollo 生态是百度 AI 重要的、最先落地的生态之一。
Apollo 宣言
自 4 月 19 号宣布开放后,收到很多伙伴的反馈,其核心总结为 Apollo 宣言。自动驾驶行业正在快速走向未来,而最大的痛点在于技术壁垒太高,每个企业需要技术与人力的多年积累,才可以进入实质的研发。百度起步较早,有将近 4 年的技术积累,投入较早,将把能力开放给每一个合作伙伴,从 0 到 1,很快进入到无人驾驶的研发,从而提高无人驾驶行业的创新速度,避免重复造轮子。大家都把精力放在更有效的创新上。共享资源,合作伙伴使用 Apollo 技术资源,拿来即用;同时,每个合作伙伴,都可以贡献资源,贡献得越多,得到的越多。Apollo 受益,合作伙伴更受益。加速创新:数据加创新,汇集数据资源,公里数,覆盖的场景数,以后将远远大于任何一个封闭的体系持续共赢:百度的商业模式,基于百度的核心能力。能力与合作伙伴互补,Apollo 将是汽车工业的里程碑,Apollo 将产生核心的影响力。
Apollo 开放路线图
Apollo 从 2017 年 4 月份宣布开放计划,到 7 月份发布 1.0,9 月份发布 1.5,2018 年 1 月的 CES 发布 2.0,迭代与发布速度非常快。
Apollo Roadmap 可以看到,Apollo 开放由两部分构成,开放能力和开放资源。
在 2017 年 7 月 1.0 中开放封闭场地循迹自动驾驶能力和资源,在 9 月 1.5 中开放固定车道自动驾驶能力和资源,在 2018 年 1 月 2.0 中开放简单城市路况自动驾驶能力和资源,之后会在 2018、2019、2020 年逐步开放特定区域高速和城市道路自动驾驶能力和资源,高速和城市道路和自动驾驶 Alpha 版,并最终到达高速和城市道路与全路网自动驾驶能力和资源。
Apollo 技术框架
开放的框架是学术界、科技界、产业界的共同需求。Apollo 技术框架由 4 层构成。分别是
Reference Vehicle Platform
Reference Hardware Platform
Open Software Platform
Cloud Service Platform
各层各模块的基本介绍:
具体来说首先我们需要一辆能够受我们信号控制的车,那么就我们管它叫信号车。然后主要是我们和很多车厂和 Tier1 的这个方案厂商一同来推进的一层;
然后是 Reference Hardware,我们要想让车能动起来,需要计算单元、GPS/IMU、Camera、激光雷达、毫米波雷达、人际交互设备、BlackBox 等等硬件的支持。
开放软件层。它分成三个子层,有实时的操作系统。有承载所有模块的框架层。高精地图与定位告诉车辆身在何处,感知模块告知车辆周围环境,决策规划模块决定全局与细节规划。控制模块负责将决策规划产出的轨迹生成为具体的控制命令;
百度自动驾驶有非常强的能力来源于云端的。高精地图存储于云端,用以模拟驾驶的仿真服务也在云端,它加速了自动驾驶的研发效率。我们积累了大量的数据和对数据的理解。我们在云端也开放了数据平台,把数据加工的主线,在我们云端来体现出来。在云端还有我们的安全服务,保证软件的自动更新。
Apollo 2.0 新开放的模块包括了 Security、Camera、Radar 和 Black Box,这意味着 Apollo 平台包括云端服务、服务平台、参考硬件平台以及参考车辆平台在内的四大模块已全部点亮。Apollo 2.0 首次开放安全和 OTA 升级服务,只允许正确和被保护的数据进入车内,并进一步强化了自定位、感知、规划决策和云端方阵等能力。其中 Black Box 模块包括了软件和硬件系统,能够实现安全存储和大容量数据集传输,可以帮助我们及时发现异常情况,提升整个平台的安全可靠性。
硬件方面,增加两个前向摄像头(长焦 + 短焦)主要用于识别红绿灯,正前方保险杠上方新安装了毫米波雷达。所以很明显,在 Apollo 2.0 开放了 Camera 和 Radar 的模块后,整个平台更强调了传感器融合的能力,已进一步增加其对昼夜简单城市道路工况的适应能力。
就像百度智能驾驶事业群组总经理李震宇提到的,低成本低功耗一定是自动驾驶平台所追求的目标,但其实在从实验室走入量产产品这个过程中,安全最重要,百度首要解决的一定是安全问题。
Apollo 资源开放与研发迭代新模式
智能汽车的“云 + 端”研发迭代新模式
智能自动驾驶汽车需要一颗聪明的车载大脑。我们在自己的研发中一路探索过来,智能汽车的“云 + 端”研发迭代新模式是我们对于加速自动驾驶汽车研发效率提出的解决办法。我们在车辆上积累海量的数据。
把这些积累的数据用云端的服务器集群高效地生成人工智能的模型,也就是车辆大脑。把汽车大脑更新到车辆上,为车辆赋予自动驾驶的能力。
我们在自己研发过程中发现,研发 L4 自动驾驶量产车需要用非常复杂的算法策略解决非常复杂的场景。
根据兰德公司报告,量产需积累 100 亿公里自动驾驶里程经验,100 辆车 7*24 小时跑上百年;如果是传统的直接在车端研发、车端调试的效率是不够的。
所以我们提出的解决办法是通过“云 + 端”的研发迭代新模式提高研发效率。我们非常高兴向 Apollo 生态分享这种模式。
下面就开始介绍自动驾驶大数据部分。
自动驾驶数据分类
自动驾驶数据可以分为四大类:
自动驾驶车辆产生的数据首先是 原始数据。主要是传感器数据、车辆自身数据、驾驶行为数据等。这些数据的特点是数据量极大、类型多样、以非结构化半结构化数据为主。无论对存储、传输、处理都构成比较大的挑战。
为了在深度学习中使用数据,我们还需要大量 标注数据。主要有红绿灯数据集,障碍物数据集(2D、3D),语义分割数据集,自由空间数据集,行为预测数据集等等。
为了刻画自动驾驶行为,我们还需要将数据抽象成 逻辑数据。主要是完美感知数据,环境抽象数据,车辆动力学模型等。
最后,我们会用为仿真构建 仿真数据,主要是参数模糊化数据,三维重建数据,互动行为数据等。
自动驾驶数据平台架构
数据平台是我们支撑智能汽车的“云 + 端”研发迭代新模式的核心平台。
由数据采集与传输,自动驾驶数据仓库,自动驾驶计算平台三个部分构成。
首先是数据采集与传输部分。使用 Data-Recorder 会按 Apollo 数据规范产生,完整的、精确记录的数据包,可以完成问题复现,也同时完成数据积累。通过传输接口,可以将数据高效地传输到运营点和云集群中。
接着是自动驾驶数据仓库部分,会将全部海量数据成体系地组织在一起,快速搜索,灵活使用,为数据流水线和各业务应用提供数据支撑。
自动驾驶计算平台部分,基于云资源异构计算硬件提供超强算力,通过细粒度容器调度提供多种计算模型,来支撑起各业务应用。如训练平台、仿真平台、车辆标定平台等等。
数据开放平台与训练平台实战
领取专属 10元无门槛券
私享最新 技术干货