Apollo星火计划学习笔记——第四讲Part 1 Apollo自动驾驶高精度地图
发布时间
阅读量:
阅读量
引言
内容概要,学习目标
- 了解高精度地图在自动驾驶的作用
- 熟悉高精度地图制作方法
- 掌握整个Apollo高精度地图框架
- 独立开发高精度地图模块
1. 高精度地图的作用
1.1 什么是高精度地图?
高精度地图(High Definition Map),顾名思义,就是精度更高的地图(相对于传统地图)
- 绝对精度高,自动驾驶要求的精度在10cm以内
- 数据元素更加丰富,包括车道线、红绿灯、交通标志等
1.2 高精度地图与传统地图的区别
| 传统地图 | 高精度地图 | |
|---|---|---|
| 精度 | 10米左右 | 1米以内 |
| 车道 | 车道级别 | 车道级别 |
| 元素 | 限速、交通规则等 | 交通基础设施 |
| 功能 | 导航、搜索 | 定位、路径规划 |
| 实时性 | 准静态 | 动态 |
1.3 为什么需要高精度地图?
- 定位:需要高精度地图表示当前位置信息,同时依赖高精度地图提供地位图层定位
- ROI:指的是感兴趣区域。感知模块依赖高精度地图提供ROI
- 规划:依赖高精度地图提供的道路信息,例如:车道线、曲率、坡度等信息,依赖高精度地图提供交通规则
1.4 高精度地图的作用
1.5 高精度地图的挑战
- 更新频率要求高 :需要周或日级别的更新,导航地图一般是季度级别的更新
- 采集难度大 :需要专业的地图采集车和地图采集资质
- 存储空间要求大 :高精度地图要占很大内存
- 成本、格式和规范尚未统一 :
2. 高精度地图介绍
2.1 高精度地图的构成
按功能分为4个图层:
- 静态图层:保存地图三维建模信息,道路测绘数据
- 定位图层:通过原始点云地图,提取特征物(电线杆、建筑、交通标志),来匹配定位
- 语义图层:提供道路结构化信息,定义车道线、交通标志、交通规则等
- 动态图层:实时动态更新信息(当前路况、实时交通规则、前方车祸等)
2.2 高精度地图的构成

2.3 如何制作高精度地图
**高精度地图的制作流程:**1. 地图采集 ->2. 底图制作 -> 3. 地图标注 -> 4. 地图保存 -> 5. 地图校验(可省)
2.3.1 地图采集
一般通过 地图采集车 采集
- **基于激光雷达:**能够准确获取位置信息,对光照变化影响小
- **基于视觉:**能够提供颜色、纹理等信息,对光照变化敏感,无法获取准确的深度信息
2.3.2 地图制作
目前主流的方法是通过SLAM算法对道路建模,得到一块区域地图数据,然后进行标注
视觉SLAM算法
- ORB-SLAM
- SVO
- DSO
激光雷达SLAM算法
- Cartographer
- LOAM系列算法
2.3.3 地图标注
常见的地图标注工具
- Roadrunner
- Vector Map Builder
- LGSVL Map Annotation
- Autocore MapToolBox
- Assure mapping tools
2.3.4 地图保存
主流的地图格式:
- Opendrive:德国汽车厂商组织的一个标准
- Lanelet2 :C++库
- VectorMap:矢量地图,自动驾驶系统普遍采用采样的方式来表征高精度地图
3. Apollo 高精度地图
3.1 Apollo 高精度地图目录结构

4. 实践案例

参考文章及视频
全部评论 (0)
还没有任何评论哟~
