地图组件设计#
1. 概述#
Autoware 依靠驾驶环境的高清点云地图和矢量地图来执行各种任务,例如定位、路线规划、交通信号灯检测以及预测行人和其他车辆的轨迹.
本文介绍了 Autoware 的地图组件设计,包括需求、架构设计、功能、数据格式以及将地图信息分发到自动驾驶堆栈其余部分的接口.
2. 要求#
Map 应该为堆栈的其余部分提供两种类型的信息:
- 作为矢量地图的有关道路的语义信息
- 以点云地图形式提供有关环境的几何信息(可选)
矢量地图包含有关道路网络、车道几何图形和交通信号灯的高精度信息.它对于路线规划、红绿灯检测以及预测其他车辆和行人的轨迹是必需的.
3D 点云地图主要用于基于 LiDAR 的定位,是 Autoware 中感知的一部分.为了确定车辆的当前位置和方向,从一个或多个 LiDAR 单元捕获的实时扫描与预先生成的 3D 点云地图进行匹配.因此,准确的点云地图对于获得良好的定位结果至关重要.但是,如果车辆具有足够准确的替代定位方法,例如使用基于摄像头的定位,则可能不需要点云地图即可使用 Autoware.
除了上述两种类型的地图外,Autoware 还需要一个补充文件,用于指定地图在大地坐标系中的坐标系.
3. 架构#
此图描述了 Autoware 中 Map 组件的高级体系结构.
{宽度=
800 }
Map 组件由以下子组件组成:
- 点云地图加载:加载和发布点云地图
- 矢量地图加载:加载和发布矢量地图
- 投影加载:加载并发布投影信息,以便在本地坐标(x、y、z)和大地坐标(纬度、经度、海拔)之间进行转换
4. 组件接口#
map 组件的输入#
- 从文件系统
- 点云地图及其元数据文件
- 矢量图
- 投影信息
map 组件的输出#
- 致感
- 投影信息:用于将 GNSS 数据从大地坐标系转换为本地坐标系
- 定位(Localization)
- 点云地图:用于基于 LiDAR 的定位
- 矢量地图:用于基于道路标记等的定位方法
- 感知
- 点云地图:通过比较 LiDAR 和点云地图进行障碍物分割
- 矢量地图:用于车辆轨迹预测
- 前往规划
- 向量图:用于行为规划
- 到 API 层
- 投影信息:用于将定位结果从本地坐标系转换为大地坐标系
5. 地图规格#
点云图#
点云地图必须以文件形式提供,并满足以下要求:
- 点云地图必须投影在
map_projection_loader中定义的相同坐标上,以便与 lanelet2 地图和其他在本地坐标和大地坐标之间转换的软件包保持一致.有关更多信息,请参阅map_projection_loader的自述文件. - 它必须是 PCD(点云数据)文件格式,但可以是单个 PCD 文件或分成多个 PCD 文件.
- 地图中的每个点都必须包含 X、Y 和 Z 坐标.
- 可以选择包括每个点的强度或 RGB 值.
- 它必须覆盖车辆的整个作区域.还建议根据连接到车辆的传感器的检测范围包括一个额外的缓冲区.
- 其分辨率应至少为 0.2 m,才能产生可靠的定位结果.
- 它可以位于本地坐标或全局坐标中,但必须位于全局坐标(地理配准)中,才能使用 GNSS 数据进行定位.
有关分割地图格式的更多详细信息,请参阅 Autoware Universe 中 map_loader 的自述.
注意
Autoware 目前支持三种全球坐标系,包括 军事格网参考系 (MGRS)、通用横轴墨卡托 (UTM) 和 [日本直 https://ja.wikipedia.org/wiki/%E5%B9%B3%E9%9D%A2%E7%9B%B4%E8%A7%92%E5%BA%A7%E6%A8%99%E7%B3%BB 坐标系]. 但是,MGRS 是地理配准地图的首选坐标系. 在具有 MGRS 坐标系的地图中,每个点的 X 和 Y 坐标表示该点在 100,000 米正方形内的位置,而 Z 坐标表示该点的高程.
矢量地图#
矢量云地图必须以文件形式提供,并满足以下要求:
- 它必须是 Lanelet2 格式,并带有 Autoware 需要的额外修改.
- 它必须包含车道、交通信号灯、停止线、人行横道、停车位和停车场的形状和位置信息.
- 除道路的起点或终点外,地图中的每个车道都必须正确连接到其前一条车道、后一条车道、左相邻车道和右相邻车道.
- 地图中的每个车道都必须包含交通规则信息,包括其速度限制、通行权、交通方向、关联的交通信号灯、停车线和交通标志.
- 它必须覆盖车辆的整个作区域.
有关创建矢量地图的详细规范,请参阅【矢量地图创建需求规范文件】(./map-requirements/vector-map-requirements-overview/index.md).
投影信息#
投影信息必须以文件的形式提供,并满足以下要求:
- 它必须采用 YAML 格式,在当前 Autoware Universe 实现中以
map_projection_loader形式提供. - 文件必须包含以下信息:
- 用于在本地坐标和全局坐标之间进行转换的投影方法的名称
- 投影方法的参数(取决于投影方法)
有关更多信息,请参阅 Autoware Universe 中 map_projection_loader 的自述文件.