Apollo星火计划学习笔记——第四讲Part 1 Apollo自动驾驶高精度地图

引言

内容概要,学习目标

  1. 了解高精度地图在自动驾驶的作用
  2. 熟悉高精度地图制作方法
  3. 掌握整个Apollo高精度地图框架
  4. 独立开发高精度地图模块

1. 高精度地图的作用

1.1 什么是高精度地图?

高精度地图(High Definition Map),顾名思义,就是精度更高的地图(相对于传统地图)

  • 绝对精度高,自动驾驶要求的精度在10cm以内
  • 数据元素更加丰富,包括车道线、红绿灯、交通标志等

1.2 高精度地图与传统地图的区别

传统地图 高精度地图
精度 10米左右 1米以内
车道 车道级别 车道级别
元素 限速、交通规则等 交通基础设施
功能 导航、搜索 定位、路径规划
实时性 准静态 动态

1.3 为什么需要高精度地图?

  • 定位:需要高精度地图表示当前位置信息,同时依赖高精度地图提供地位图层定位
  • ROI:指的是感兴趣区域。感知模块依赖高精度地图提供ROI
  • 规划:依赖高精度地图提供的道路信息,例如:车道线、曲率、坡度等信息,依赖高精度地图提供交通规则

1.4 高精度地图的作用

1.5 高精度地图的挑战

  1. 更新频率要求高:需要周或日级别的更新,导航地图一般是季度级别的更新
  2. 采集难度大:需要专业的地图采集车和地图采集资质
  3. 存储空间要求大:高精度地图要占很大内存
  4. 成本、格式和规范尚未统一

2. 高精度地图介绍

2.1 高精度地图的构成

按功能分为4个图层:

  • 静态图层:保存地图三维建模信息,道路测绘数据
  • 定位图层:通过原始点云地图,提取特征物(电线杆、建筑、交通标志),来匹配定位
  • 语义图层:提供道路结构化信息,定义车道线、交通标志、交通规则等
  • 动态图层:实时动态更新信息(当前路况、实时交通规则、前方车祸等)

2.2 高精度地图的构成

Apollo星火计划学习笔记——第四讲Part 1 Apollo自动驾驶高精度地图_第1张图片

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 高精度地图目录结构

Apollo星火计划学习笔记——第四讲Part 1 Apollo自动驾驶高精度地图_第2张图片

4. 实践案例

Apollo星火计划学习笔记——第四讲Part 1 Apollo自动驾驶高精度地图_第3张图片

参考文章及视频

星火第四讲 Part1——Apollo 高精度地图模块详解与实践

你可能感兴趣的:(Apollo培训课程学习笔记,学习,自动驾驶,人工智能)