热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

自动驾驶之高精地图

0.简介定位模块是自动驾驶最核心的模块之一,定位又包括全局定位和局部定位,对于自动驾驶,其精度需要达到厘米级别。传统的AGV使用一类SL
0. 简介

定位模块是自动驾驶最核心的模块之一,定位又包括全局定位和局部定位,对于自动驾驶,其精度需要达到厘米级别。传统的AGV使用一类SLAM(simultaneous localization and mapping)的方法进行同时建图和定位,但是该方法实现代价高,难度大,难以应用到自动驾驶领域。自动驾驶车辆行驶速度快,距离远,环境复杂,使得SLAM的精度下降,同时远距离的行驶将导致实时构建的地图偏移过大。因此,如果在已有高精度的全局地图地图的情况下进行无人车的定位,将极大的简化该问题。

高精地图制作已经成为各大图商以及自动驾驶公司的付费服务内容,技术上相对保守,开放程度较低。

下图为Apollo的地图制作流程,从图中我们可以看到地图采集的第一步是点云拼接->底图的制成

点云地图的制作主要是把采集好的数据进行加工,我们采用激光雷达数据来进行点云地图的制作。因为激光雷达的扫描范围有限,因此我们需要逐帧把激光雷达的数据拼接起来,来获取整个街道的模型,这个过程也被称为点云注册。

目前有2种方法实现地图制作。

  1. Autoware NDT mapping. 采用开源社区Autoware提供的NDT mapping可以实现点云的拼接,从而得到整个街道的三维模型。

  2. 各种离线SLAM建图方法。


  • LOAM
  • Cartographer
  • hdl_graph_slam
  • blam
  • A-LOAM
  • LeGO-LOAM
  • LIO-mapping
  • interactive_slam

高精地图是一种语义地图,概括地说,就是利用SLAM/SFM等算法融合多种传感器数据,构建高精度的三维点云地图,在点云地图上或者是图像上,对所用到的元素进行分类和提取、之后对不同元素分别进行矢量化并构建路网与车道关联关系,最后进行质量校验,形成一套地图引擎来存储并支撑其他模块的需求。

1. 现有算法

下述为现有主流SLAM框架的兼容性问题

从论文中找到的相关原始对比数据来看R3LIVE的效果在目前来说在角度和距离的evo效果最好。

Faster-LIO PHCFast LIO2LIO-SAMR2LIVER3LIVE RTLVI-SAM
RPE0.33%0.35%0.43%------------
pre time0.52ms2.73ms6.48ms------------
opt time5.45ms13.2035.71ms------------
deg------------0.16%0.14%1.01%
opt time(640)------------30.2ms29.4ms>36ms

此外可以去KITTI Odometry排行榜上查找排行前列的一些算法,并关注SLAM领域的一些最新的成果。注意我们需要构建的是三维点云地图,其以建图为主要目标,SLAM的实时性反而不是特别重要

…详情请参照古月居


推荐阅读
author-avatar
漫湾镇团委
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有