1. Apollo简介
不同版本的Apollo:
1.0版本:有一个GPS和一个线控的车辆,可以有封闭场景的循迹能力
1.5版本:加入了激光雷达,软件和云服务上加入了高精地图、仿真和地图引擎
2.0版本:加入了更多感知,如毫米波雷达,黑匣子,加入了安全OTA能力,城市道路
2.5版本:加入了新的摄像头,可以做高速场景的自动驾驶
3.0版本:量产的解决方案,升级到车辆认证平台,公开了车辆线控的标准,升级硬件参考平台为硬件开发平台
2. 本机演示实战
高效容易扩展的架构:
主要模块之间的关系
演示环境
线控车辆指标
3. 车辆与循迹驾驶能力实战
开环测试,闭环验证
Control Algorithm
Localization
启动循迹自动驾驶
4. 障碍物感知和路径规划能力实战
2.0以上版本两个核心模块:
- 感知和规划
传感器融合:
标定:保证传感器的精度
planning structure(规划器结构)
DP 路径、速度算法
在根据教程搭建了具备感知和规划能力的平台之后,开发者更希望根据自己的场景进行深度定制。为加速研发过程,百度提出了“云+端”的研发迭代模式,所谓的“云”大家都能理解, “端”指的是车辆端。
在运行整个流程时,所积累的海量数据,时通过云端进行传递的。当然对于传递的数据,我又可以分为以下几个类型。
自动驾驶数据分类
1.原始数据,各种传感器、车辆、驾驶员行为等,数据种类繁多,维度不同,数据量大,而且大多是非结构化数据,对于传输、处理、存储提出了非常大的挑战。
2.标注数据,视觉的2D障碍物数据、红绿灯数据、3D点云数据等。
3.逻辑数据,包括完美感知,环境的抽象以及车辆动力学模型等。
仿真数据,包括参数模糊化数据;三维重建数据等。
Apollo开放了六类训练数据:
1.2D红绿灯,用来识别交叉路口红绿灯数据,可以用来训练、测试和验证。
2.2D障碍物,比如汽车、行人、自行车,还要其他未知类别的图像数据。
3.3D障碍物,其实是激光雷达点云。
4.端到端的数据,提供适合end-to-end模块的数据。
5.场景解析,像素级的语义标注,比如车辆、背景、交通标识牌、障碍物,可以用来做整体环境识别。
6.障碍物预测,用来训练预测算法数据集。