经典文献阅读之--用于自动驾驶的高清地图生成技术

news2025/1/12 16:05:38

0. 简介

这篇文章我们介绍一下论文“High-Definition Map Generation Technologies For Autonomous Driving: A Review“,2022年6月11日,来自加拿大Ontario Tech University。相较于网上的其他文章,本文更在意向读者更轻松全面的了解文章中介绍的方法,让读者从总体上了解高精地图生成。

高清地图近年来备受关注,由于其定位精度高和信息量大,立即成为自动驾驶的关键部件之一。本文回顾最近利用二维和三维地图生成的高清地图制作技术。从**百度阿波罗(Baidu Apollo)、英伟达(NVIDIA)和汤姆(TomTom)**等大型组织到个人研究人员,研究者们已经为不同场景和目的创建了各种高精地图用于自动驾驶。有必要回顾高精地图生成的最新方法,本文回顾了最近利用二维和三维地图生成高精地图生成技术,介绍了高精地图的概念及其在自动驾驶中的作用,并对高精地图生成技术进行了详细概述,还将讨论当前高精地图生成技术的局限性,以推动未来的研究。
在这里插入图片描述

1. 方法总述

高精地图包含自动驾驶所需的道路/环境的所有关键静态特性(例如:道路、建筑物、交通灯和道路标记),包括由于遮挡而无法由传感器检测到的对象,近年来,用于自动驾驶的高精地图以其高精度和丰富的几何和语义信息而著称,它与车辆定位功能紧密相连,并不断与不同的传感器交互,包括激光雷达、雷达和摄像头,以构建自动驾驶系统的感知模块,这种交互最终支持自动驾驶车辆的任务和运动规划。
在这里插入图片描述
在自动驾驶市场中,没有唯一标准高精地图结构,然而,市场上有一些常用的高精地图结构,如导航数据标准(NDS)、动态地图平台(DMP,Dynamic Map Platform)、HERE 高精实时地图、Lanelet(Bertha Drive)和TomTom,大多数结构共享类似的三层数据结构。
在这里插入图片描述
文中将采用这里的术语来指代这三个地图层:

  1. 第一层“HD Road”定义道路特征,例如拓扑、行驶方向、高程、坡度/坡道、规则、路缘/边界和交叉口,它用于导航。

  2. 第二层"HD Lane"定义了车道级别的特征,例如道路类型、线、道路宽度、停车区域和速度限制,该层作为感知模块,用于自动驾驶,根据实时交通或环境做出决策。

  3. 第三层"HD Localization",在高精地图中定位车辆自身运动,该层包含路边设施,例如建筑物、交通信号、标志和路面标记,这些功能有助于自动驾驶车辆快速定位。
    在这里插入图片描述

2. 数据采集

2.1 众包数据

数据采集是生成高精地图的第一步。数据采集使用移动地图系统(MMS)完成,MMS是一种装有地图传感器的移动车辆,包括GNSS(全球导航卫星系统)、IMU、LiDAR、摄像头和雷达,用于收集地理空间数据,商业化的高精地图提供商采用众包技术收集数据,以构建和维护高精地图。通过众包收集数据可以在很短的时间内获取大量最新的道路和交通数据,众包数据还包含不同的环境,包括城市、城镇和农村地区,然而,由于多个移动地图系统的高成本和数据收集的时间成本,该方法不是单个研究人员的最佳解决方案。此外,还有大量开源数据,如卫星图像、KITTI数据集、Level5 Lyft数据集和nuScenes数据集,供研究人员测试和生成高精地图,这些数据集包含2D和3D真实世界的交通数据,包括图像、3D点云和IMU/GPS数据,这些数据已经进行了组织和标记,下表总结了数据收集方法及其比较。
在这里插入图片描述

2.2 初始点云地图

一旦收集到足够的传感器数据,通常会对其进行融合和排序以生成初始地图,主要用于精确的定位,初始地图主要使用3D激光传感器生成,也可以与其他传感器融合,如IMU、GPS、里程计和视觉里程计,以便在高精地图中进行更精确的状态估计,惯导和GPS传感器提供方向和位置信息,更新厘米精度范围内的地图位置。这些点云地图具有很高的精度,可以帮助车辆在三维空间进行精确的厘米级运动运动和定位。之后,从地图做点云校准后,将从PCL map创建矢量地图。点云校准称为多步过程(如图所示),将多个重叠的点云对齐。矢量地图包含车道、人行道、十字路口、道路、十字路口、交通标志和红绿灯相关的信息。这一关键特征后来被用于检测交通标志和信号灯、路线规划、全局规划和局部路径规划,毫无疑问,点云地图生成是高精地图的一个重要组成部分,它可以定义为HD地图的基本地图层( base geometry map layer)。
在这里插入图片描述
地图生成技术可分为在线地图和离线地图,使用卫星信息或激光雷达和相机存储的数据将离线生成地图,另一方面,使用在线地图中的轻量级模块在设备上生成地图。目前,所有有前途的测绘技术都将激光雷达作为主要传感器,用于测绘和完成高清晰度的地图。
目前,点云建图技术可分成:基于分割的点云配准、 仅基于激光雷达的点云建图、 与里程计融合的点云配准、GPS融合点云配准、 INS融合点云配准和 视觉传感器融合的点云配准的方法等。
在这里插入图片描述

2.3 特征提取

为了让车辆自身进行定位任务,需要进行特征提取,例如道路/车道提取、道路标记提取和杆状对象提取,传统上特征提取由人工完成,成本高、耗时长、精度低。近年来,机器学习辅助高精地图生成技术得到了发展和广泛应用,以提高特征提取精度和减少人工工作量,机器学习辅助高精地图生成利用 human-in-the-loop(HITL)技术,该技术涉及人机交互,人工进行数据标记,标记的数据使用监督学习进行训练,高精度/置信度分数的结果将保存到HD地图,低精度/置信度分数的结果将由人类检查并发送回算法进行重新训练,机器学习已被广泛应用于提取道路/车道网络、道路标线和交通信号灯。

3. 高精地图特征提取方法

3.1 道路网提取

3.1.1 基于二维航空图像(鸟瞰图)的道路提取

路线图/网络对于自动驾驶系统至关重要,以定位车辆自身位置并规划路线,从航空图像(鸟瞰图)中提取路线图也很有吸引力,因为航空照片通常覆盖城市范围的地图,并通过卫星不断更新。二维航空图像(鸟瞰图)的自动路网提取可分为三种不同的方法:基于分割的方法、迭代图生长方法和图生成方法。
a) 基于分割的方法
基于分割的方法从航空图像(鸟瞰图)中预测分割概率图,精细化分割预测并通过后处理提取图形
在这里插入图片描述
b) 迭代图增长方法
迭代图增长方法通过先选择道路网络的几个顶点,从二维航空图像(鸟瞰图)生成道路网络,然后,逐顶点生成道路,直到创建整个道路网络。
在这里插入图片描述
c) 图生长方法
图生长方法直接从航空图像(鸟瞰图)中预测路网图,该方法将输入的航空图像(鸟瞰图)编码为向量场,通过神经网络进行预测,然后通过解码算法将预测解码为图形。
在这里插入图片描述

3.1.2 基于三维点云的道路提取

在生成高精地图的过程中,基于三维点云的道路或车道线提取得到了广泛的应用,激光雷达点云具有高精度,通常在毫米级精度,并包含扫描对象的几何信息。通过使用3D正态分布变换(NDT/ICP)配准和合并预处理的回路点云。并对合并的原始点云进行后处理,包括空间子采样、噪声去除、重复点去除和平滑,以生成最终提取的道路。
在这里插入图片描述

3.1.3 基于传感器融合方法的道路提取

二维航空图像(鸟瞰图)和三维点云上的道路提取都有局限性,例如航空图像(鸟瞰图)中提取的道路网络通常不准确和不完整,三维点云上的特征提取还面临遮挡和点密度变化问题,这会导致不准确和不完整的道路提取。在提取道路或道路边界时,使用单一数据源的局限性显而易见。
在这里插入图片描述
同时文中总结了上述三种方法的比较

…详情请参照古月居

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/195.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Web前端大作业】基于HTML+CSS+JavaScript制作西北大学新闻网站(7页)

🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (10…

悬浮坐标解决方案:如何在图片获取xy鼠标位置和增加标注信息

悬浮坐标的定义,基于固定分辨率的图片,通过获取该图片x和y坐标确定位置后并添加标注,实现位置展示、对应图片内物品展示的一种标注开发方式。 技术要点 自动获取图片x和y坐标;将多个坐标xy在图片上通过CSS定位的方式予以展示&am…

pytorch学习(三)——模型层

文章目录1. 自定义模型层2. 使用预训练模型3. 模型构建风格3.1 使用 add_module 方法3.2 添加进 Sequential3.3 Sequential作为模型容器3.4 ModuleList作为模型容器3.5 ModuleDict作为模型容器当我们构建了数据管道能够将数据一个batch一个batch的取出来后,下一步就…

微信小程序函数处理之保姆级讲解

目录 生命周期函数 生命周期函数的调用过程 页面事件函数 页面路由管理 自定义函数 setData设值函数 生命周期函数 在使用Page()构造器注册页面时,需要使用生命周期函数,包括onLoad()页面加载时生命周…

硬件工程师成长之路(10.1)——芯片选型

系列文章目录 1.元件基础 2.电路设计 3.PCB设计 4.元件焊接 5.板子调试 6.程序设计 7.算法学习 8.编写exe 9.检测标准 10.项目举例 11.职业规划 文章目录前言一、电机驱动类1 、直流电机驱动芯片2、步进电机③、资料前言 送给大学毕业后找不到奋斗方向的你(每周…

【车间调度】基于全球邻域和爬坡来优化模糊柔性作业车间调度问题(Matlab代码实现)

💥💥💥💞💞💞欢迎来到本博客❤️❤️❤️💥💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑…

VS Studio 搭建跨平台开发环境

VS Studio 搭建跨平台开发环境 增加VS的工作负载 打开Visual Studio Installer 安装器,点击修改 在这个界面找到Linux开发环境,勾上然后在点击右下角的修改等待安装。我的是因为已经有了所以下面那里显示的是关闭,没有的是显示的修改 等待安…

LabVIEW强制重新安装无法运行或损坏的NI软件

LabVIEW强制重新安装无法运行或损坏的NI软件 可以参考附件的录像说明。LabVIEW强制重新安装无法运行或损坏的NI软件 - 北京瀚文网星科技有限公司 (bjcyck.com) 某些NI软件,工具包或驱动程序已损坏,损坏或无法按预期运行,想尝试重新安装以进…

【ArchSummit】众安金融微服务架构演进实战

前言 📫 作者简介:小明java问道之路,专注于研究 Java/ Liunx内核/ C及汇编/计算机底层原理/源码,就职于大型金融公司后端高级工程师,擅长交易领域的高安全/可用/并发/性能的架构设计与演进、系统优化与稳定性建设。 &a…

网络原理——传输层_UDP

JavaEE传送门JavaEE JavaEE——No.2 套接字编程(TCP) JavaEE——网络原理_应用层 目录传输层UDP传输层 端到端之间的传输, 重点关注的是起点和终点 核心的协议有两个: UDP: 无连接, 不可靠传输,面向数据报, 全双工 TCP: 有链接, 可靠传输, 面向字节流, 全双工 UDP UDP协议…

nginx+tomcat(二)

四层代理: 四层代理: 一般使用七层代理也就是http应用层代理,可以反向代理和负载均衡。但是项目要使用长连接,此时内网服务器肯定不能暴漏,还是需要接入层网关进行转发,一般有使用lvs,lvs专门用作四层代理和负载均衡基…

【C++】模板初阶

文章目录一、泛型编程二、函数模板1、概念与格式2、底层原理3、实例化4、参数的匹配规则三、类模板1、概念与格式2、实例化一、泛型编程 我们通过实现一个通用的交换函数来引入泛型编程: void Swap(int& left, int& right) {int temp left;left right;r…

Linux 命令(147) —— truncate 命令

文章目录1.命令简介2.命令格式3.选项说明4.常用示例参考文献1.命令简介 truncate 将文件的大小缩小或扩展到指定的大小。 如果指定的文件不存在将被创建。 如果文件大于指定的大小,则会丢失额外的数据。如果较短,它将被扩展,扩展的稀疏部分…

【牛客刷题--SQL篇】多表查询组合查询SQL25 查找山东大学或者性别为男生的信息

💖个人主页:与自己作战 💯作者简介:CSDN博客专家、CSDN大数据领域优质创作者、CSDN内容合伙人、阿里云专家博主 💞牛客刷题系列篇:【SQL篇】】【Python篇】【Java篇】 📌推荐刷题网站注册地址&a…

Python数据分析与挖掘————图像的处理

系列文章目录 文章目录系列文章目录前言图片的马赛克一.安装matplotlib,numpy等模块二.马赛克图片一.导入图片二.定位区域三.图片的合成图片拼接图像的灰度化一.max()方法二.min()方法三.平均值法mean()函数四.加权平均值法图片的分割总结源代…

基于tauri+vue3.x多开窗口|Tauri创建多窗体实践

最近一种在捣鼓 Tauri 集成 Vue3 技术开发桌面端应用实践,tauri 实现创建多窗口,窗口之间通讯功能。 开始正文之前,先来了解下 tauri 结合 vue3.js 快速创建项目。 tauri 在 github 上star高达53K,而且呈快速增长趋势。相比elect…

DDoS报告团伙规模

攻击资源活跃度分析 在攻击源活时间的监测中发现,和 2019 年趋势一致,存活时间大于 10 天的攻击资源占比 11%。像这种能够长期被控制的肉鸡大部分都是物联网 设备,物联网设备大都存在设备系统老,人员维 护少,更新慢等…

vue当中的事件处理

1.绑定监听v-on 最简单的一个绑定监听的事件 <body><div id"root"><h1>my name is {{name}}</h1><button v-on:click"showInfo">click me</button></div><script type"text/javascript">Vue.…

HotSpot 虚拟机对象探秘-对象的创建、内存布局、访问定位

目录对象的创建检查类的符号引用&#xff0c;是否执行过类的加载过程分配内存指针碰撞&#xff1a;空闲列表&#xff1a;线程安全的问题&#xff0c;对分配内存空间的动作进行同步处理——TLAB初始化虚拟机对对象进行必要的设置&#xff0c;执行构造方法对象的内存布局对象头包…

Spring、MySQL、日期、BigDecimal、集合、反射、序列化中的坑与使用指南

文章目录MySQL中的坑MySQL断开连接Mysql表字段设置为not null如何解决网络瓶颈核心流程的性能查看Spring中的坑与使用注意springboot的配置文件先后顺序定时任务不进行lombok的不适用场景Spring的Bean默认名称生成规则new出来的对象不被Spring所管理SpringBean相关的注解Spring…