经典文献阅读之--LESS-Map(长期定位轻量级和逐渐演进的语义地图方案)

本文主要是介绍经典文献阅读之--LESS-Map(长期定位轻量级和逐渐演进的语义地图方案),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

0. 简介

精确且长期稳定的定位对于停车场内的行车任务,如自动驾驶或自动代客泊车等,至关重要。现有方法依赖于固定且内存效率低下的地图,缺乏强大的数据关联方法,不适用于精确的定位或长期地图维护。《LESS-Map: Lightweight and Evolving Semantic Map in Parking Lots for Long-term Self-Localization》一文提出了一种基于地面语义特征、利用低成本摄像头的新型地图制作、定位和地图更新系统,提出了一种精确且轻量级的参数化方法,用于建立改进的数据关联,实现厘米级别的精确定位。此外还提出了一种新颖的地图更新方法,通过对参数化的语义特征实现高质量的数据关联,允许在重新定位过程中进行连续地图更新和细化,同时保持厘米级别的准确性。


1. 主要贡献

现有方法缺乏对地面语义信息的强大参数化,导致在制图和定位过程中缺乏强大的数据关联,这个不足会对定位的准确性产生不利影响,同时对地图的长期更新能力有所限制。因此,在这项工作中,我们提出了一种用于地面语义特征的准确且轻量级的参数化方法,以帮助提高制图和定位的准确性和效率。此外提出了一种新颖的地图更新方法,允许在重新定位过程中进行连续地图更新和细化,同时保持厘米级别的准确性。本工作的贡献总结如下:

  1. 提出了一种用于地面语义特征的新型参数化方法,以实现更高效的位姿估计和更强大的数据关联。

  2. 提出了一种轻量级的地图维护方法,可以通过后续车辆的定位结果进行更新,实现厘米级别的定位精度。

  3. 提供了一个完整而实用的地图制作、定位和地图更新流程,通过实际实验在室外和室内场景中表现出可靠性。

2. 系统概述

我们利用四个环视鱼眼摄像头、惯性测量单元(IMU)和轮子编码器来捕捉周围环境并估计车辆的轨迹。所提出的算法包括两个主要组成部分:建图和定位,如图2所示。

在这里插入图片描述

图2. 提出算法的概述。我们利用四个周围摄像头提取准确的参数化地面特征。系统主要分为两个部分。第一个(左侧)部分是建图部分,当首次访问环境时,它创建一个全局地图。第二个(右侧)部分是定位和地图更新部分,它进行定位并使用新捕获的环境数据更新先前的地图。

建图:当车辆首次进入环境时,一个基本任务是构建一个全局地图,作为后续定位和地图更新的基础。我们从环视摄像头中提取地面语义特征,并将其投影到三维空间中。通过估计这些观测的不确定性来增强地图融合。然后,我们使用第III-C节中详细介绍的方法对这些特征进行参数化。结果,全局地图通过姿态估计和闭环的精化而生成。

定位和地图更新:在构建全局地图之后,当车辆返回环境时,可以利用新捕获的环境数据进行定位和地图更新。考虑到环境的动态性和可能进入未映射区域的可能性,我们构建了一个因子图来融合里程计和定位结果,得到一个经过微调的全局轨迹和一个新生成的地图。然后,新生成的地图与现有地图无缝合并,确保地图更新过程的稳健性和一致性。

3. 义分割和云投影

我们采用一个强大的分割网络[23],从原始的鱼眼图像中有效地检测地面、车道线和道路标记。在语义分割之后,我们将鱼眼图像转换为车辆坐标系内的语义点云。这个转换过程包括对鱼眼图像进行去畸变处理和执行逆透视映射(IPM)[24]。
鱼眼相机使用实用的鱼眼相机模型[25]进行建模,该模型将相机的投影模型表示如下:

在这里插入图片描述


在图像中, u u u v v v是像素坐标, u c u_c uc v c v_c vc是以相机光轴为原点的像素坐标, u 0 u_0 u0 v 0 v_0 v0是像素坐标系中光轴中心的坐标, λ λ λ是一个比例因子, d ( ρ ) d(ρ) d(ρ)表示畸变多项式 d ( ρ ) = a 0 + a 2 ρ 2 + a 3 ρ 3 + a 4 ρ 4 d(ρ) = a_0 + a_2ρ^2 + a_3ρ^3 + a_4ρ^4 d(ρ)=a0+a2ρ2+a3ρ3+a4ρ4 S S S是拉伸矩阵。因此,与鱼眼图像中像素坐标 u u u v v v对应的无畸变坐标 u ′ u^′ u v ′ v^′ v可以表示为:

…详情请参照古月居

这篇关于经典文献阅读之--LESS-Map(长期定位轻量级和逐渐演进的语义地图方案)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


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

相关文章

Java进行文件格式校验的方案详解

《Java进行文件格式校验的方案详解》这篇文章主要为大家详细介绍了Java中进行文件格式校验的相关方案,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、背景异常现象原因排查用户的无心之过二、解决方案Magandroidic Number判断主流检测库对比Tika的使用区分zip

SpringBoot如何通过Map实现策略模式

《SpringBoot如何通过Map实现策略模式》策略模式是一种行为设计模式,它允许在运行时选择算法的行为,在Spring框架中,我们可以利用@Resource注解和Map集合来优雅地实现策略模式,这... 目录前言底层机制解析Spring的集合类型自动装配@Resource注解的行为实现原理使用直接使用M

IDEA中Git版本回退的两种实现方案

《IDEA中Git版本回退的两种实现方案》作为开发者,代码版本回退是日常高频操作,IntelliJIDEA集成了强大的Git工具链,但面对reset和revert两种核心回退方案,许多开发者仍存在选择... 目录一、版本回退前置知识二、Reset方案:整体改写历史1、IDEA图形化操作(推荐)1.1、查看提

C++ 各种map特点对比分析

《C++各种map特点对比分析》文章比较了C++中不同类型的map(如std::map,std::unordered_map,std::multimap,std::unordered_multima... 目录特点比较C++ 示例代码 ​​​​​​代码解释特点比较1. std::map底层实现:基于红黑

Python实现html转png的完美方案介绍

《Python实现html转png的完美方案介绍》这篇文章主要为大家详细介绍了如何使用Python实现html转png功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 1.增强稳定性与错误处理建议使用三层异常捕获结构:try: with sync_playwright(

Java使用多线程处理未知任务数的方案介绍

《Java使用多线程处理未知任务数的方案介绍》这篇文章主要为大家详细介绍了Java如何使用多线程实现处理未知任务数,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 知道任务个数,你可以定义好线程数规则,生成线程数去跑代码说明:1.虚拟线程池:使用 Executors.newVir

MySQL中闪回功能的方案讨论及实现

《MySQL中闪回功能的方案讨论及实现》Oracle有一个闪回(flashback)功能,能够用户恢复误操作的数据,这篇文章主要来和大家讨论一下MySQL中支持闪回功能的方案,有需要的可以了解下... 目录1、 闪回的目标2、 无米无炊一3、 无米无炊二4、 演示5、小结oracle有一个闪回(flashb

Android App安装列表获取方法(实践方案)

《AndroidApp安装列表获取方法(实践方案)》文章介绍了Android11及以上版本获取应用列表的方案调整,包括权限配置、白名单配置和action配置三种方式,并提供了相应的Java和Kotl... 目录前言实现方案         方案概述一、 androidManifest 三种配置方式

使用Folium在Python中进行地图可视化的操作指南

《使用Folium在Python中进行地图可视化的操作指南》在数据分析和可视化领域,地图可视化是一项非常重要的技能,它能够帮助我们更直观地理解和展示地理空间数据,Folium是一个基于Python的地... 目录引言一、Folium简介与安装1. Folium简介2. 安装Folium二、基础使用1. 创建

JavaScript中的Map用法完全指南

《JavaScript中的Map用法完全指南》:本文主要介绍JavaScript中Map用法的相关资料,通过实例讲解了Map的创建、常用方法和迭代方式,还探讨了Map与对象的区别,并通过一个例子展... 目录引言1. 创建 Map2. Map 和对象的对比3. Map 的常用方法3.1 set(key, v