高精度地图主要服务于自动驾驶车辆,通过一套独特的导航体系,帮助自动驾驶解决系统性能问题,扩展传感器检测边界。目前Apollo内部高精度地图主要应用在高精定位、环境感知、决策规划、仿真运行四大场景,帮助解决林荫道路GPS信号弱、红绿灯是定位与感知以及十字路口复杂等导航难题。 ——Apollo开发者社区
1.高精度地图
高精度地图包含大量的驾驶辅助信息,最重要的信息是道路网的精确三维表征,例如,交叉路口和路标位置。高精度地图还包含很多语义信息,地图可能会报告交通灯上不同颜色的含义,也可能指示道路的速度限制,以及左转车道开始的位置。
高精度地图最重要的标志之一是精度,能够达到厘米级的精度,这对确保无人驾驶车辆的安全性至关重要。
高精度地图是Apollo无人驾驶车平台的核心。
2.高精度地图与定位
自定位:确定无人驾驶车在地图上的精准位置。定位完全依赖于高精度地图才能精准确定所处位置
首先,车辆可能会寻找地标,使用从各类传感器收集的数据,如摄像机图像数据、激光雷达收集的三维点云数据来查找地标。车辆将收集的数据与高精度地图上已知的地标进行比较,需要预处理、坐标转换和数据融合的复杂过程。预处理消除了不准确或质量差的数据,坐标变换将来自不同视角的数据转换为统一的坐标系,数据融合将来自各种车辆和传感器的数据合并。
3.高精度地图与感知
无人驾驶汽车的传感器受到距离、天气状态或夜晚、障碍物阻碍的限制,这时,高精度地图就会提供很大的帮助。
高精度地图可以将传感器未能探测到的交通灯的位置提供给软件栈的其余部分,帮助汽车做下一个决策。另外,高精度地图可以缩小传感器的检测范围,例如,高精度地图提示在特定位置寻找停车标志,传感器就可以集中在该位置检测停车标志,这被称为“感兴趣区域”或“ROI”。ROI可以提高检测精确度和速度、节约计算资源。
4.高精度地图与规划
规划模块也依赖于高精度地图。高精度地图帮助车辆寻找合适的行车空间、帮助规划器确定不同路线的选择、帮助预测软件预测道路上其他车辆在将来的位置。例如,高精度地图帮助车辆识别车道的确切中心线,使车辆尽可能地靠近中心行驶;在具有低速行驶、人行横道或减速带的区域,高精度地图使车辆能够提前查看并预先减速;如果需要变道,高精度地图可以缩小车辆的选择范围,以便选择最佳方案。
5.Apollo高精度地图
Apollo高精度地图专为无人驾驶车设计,Apollo地图包含道路定义、交叉路口、交通信号、车道规则以及用于汽车导航的其他元素。
高精度地图通常会记录交通信号灯的精确位置和高度,从而大大降低了感知难度。高精度地图不仅可以减少计算需求,还可以通过提供有关驾驶环境的详细信息来确保车辆的安全。
地图的更新是一项重大任务。调查车队需要不断地对高精度地图进行验证和更新,
高精度地图有很多格式,不同的格式可能导致系统不兼容,为了便于数据共享,Apollo高精度地图采用OpenDRIVE格式,这是一种行业制图标准。OpenDRIVE就像一个API,每个人都能轻松读取相同的地图数据。Apollo改进Open DRIVE产生了Apollo OpenDRIVE标准,这些改进使格式更适合无人驾驶车。
百度开发了一套完善的地图绘制系统,使得90%的地图绘制流程实现了自动化
6.Apollo高精度地图的构建
高精度地图的构建包括5个过程:数据采集、数据处理、对象检测、手动验证和地图发布。
数据采集 是一项庞大的密集型任务,近30辆Apollo调查车负责收集用于制作地图的源数据。调查车在地图构建甚至地图的维护和更新上都有重要作用。道路状态随时都可能变化,大量的调查车可确保地图随着道路的改变快速更新。调查车使用了多种传感器,如GPS、IMU、激光雷达、摄像机。Apollo定义了一个硬件框架,将这些传感器集成到单个自主系统中,通过支持多种类的传感器,Apollo收集各类数据并融合,最终生成高精度地图。
数据处理 是指Apollo对收集到的数据进行整理、分类和清洗以获得没有任何语义信息或注释的初始地图模板。
对象检测 Apollo团队使用使用人工智能来检测静态对象并对其分类,包括车道线、交通标志、电线杆。
手动验证 确保自动地图创建过程正确进行并及时发现问题。Apollo手动验证团队能够高效标记甚至编辑地图。
地图发布 在经过数据采集、数据处理、对象检测、手动验证之后,高精度地图才能发布。
除高精度地图外,Apollo还发布了采用自上而下视图的相应定位地图以及三维点云地图。
构建和更新地图的过程中,Apollo使用了众包向公众发布其数据采集工具,以便任何人都可以参与制作高精度地图的任务。Apollo高精度地图众包可通过智能手机、智能信息娱乐系统甚至是其他无人驾驶车来实现,众包加快了高精度地图的制作和维护过程。