IGE-LIO:充分利用强度信息克服激光退化场景下的定位精度

本文主要是介绍IGE-LIO:充分利用强度信息克服激光退化场景下的定位精度,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

更多优质内容,请关注公众号:智驾机器人技术前线

1.论文信息

  • 论文标题:IGE-LIO: Intensity Gradient Enhanced Tightly-Coupled LiDAR-Inertial Odometry

  • 作者:Ziyu Chen, Hui Zhu, Biao Yu, Chunmao Jiang, Chen Hua, Xuhui Fu and Xinkai Kuang

  • 作者单位:中国科学技术大学

  • 论文地址:https://ieeexplore.ieee.org/abstract/document/10643007

2.摘要

同时定位与建图(SLAM)在移动机器人的状态估计中扮演着重要角色。大多数流行的激光雷达SLAM方法仅从环境的几何结构中提取特征点,这可能导致在退化场景中的定位不准确。在本文中,我们提出了一种新颖的框架,即强度梯度增强的紧耦合激光雷达-惯性里程计(IGE-LIO)。该框架提出了一种基于激光雷达强度梯度的特征提取方法,用于精确的姿态估计,克服了激光雷达-SLAM在退化环境中面临的挑战。计算每个激光雷达点的强度梯度后,我们从纹理信息中动态提取强度边缘点(IEPs)。此外,我们还基于几何信息提取了几何平面点(GPPs)和几何边缘点(GEPs)。然后,对每种类型的特征点进行误差分析,并设计了加权函数以校正测量噪声并减轻特征提取中额外不确定性引入的偏差。随后,通过结合点到平面和点到边缘关联的残差构建了一个迭代扩展卡尔曼滤波器(IEKF)框架。最后,在室内、室外和激光雷达退化场景中进行了广泛的实验。结果表明,与现有的仅几何方法相比,我们提出的方法在鲁棒性和准确性上有了显著提高,特别是在激光雷达退化场景中。

3.主要贡献

  • 提出了一个鲁棒的LIO框架,通过迭代扩展卡尔曼滤波器紧耦合激光雷达的几何和纹理信息与IMU,用于姿态估计。该框架能够为旋转激光雷达和固态激光雷达实现最优结果;

  • 提出了一种新颖的特征提取方法,它不仅提取几何平面点和几何边缘点,还计算每个激光雷达点的强度梯度,无需校准强度值,并使用动态阈值动态选择强度边缘点;

  • 为了区分和权衡每个特征点在姿态优化中的质量,本文引入了一种新的加权函数,该函数联合融合了几何信息和强度信息,用于几何平面点、几何边缘点和强度边缘点。

4.核心思想与方法

根据几何和强度信息提取几何平面点、几何边缘点和强度边缘点。此外,使用设计好的加权函数对每种类型的特征点进行误差分析。然后,为不同类别的特征点分别计算残差,并对状态进行迭代更新,直到达到收敛。最后,将带有标签的特征点存储在全局地图中。结果表明,所提出的方法不仅在激光雷达退化场景中实现了准确、鲁棒和实时的定位和建图,而且超越了传统的激光雷达SLAM,达到了与包含视觉信息的SLAM方法相媲美的结果。

IGE-LIO架构

IGE-LIO架构

5.实验仿真验证

6.总结 && 展望

在本文中,提出了IGE-LIO,一种强度梯度增强的激光雷达-惯性融合框架,它比FAST-LIO2更加鲁棒和准确,在退化环境中与包含相机的FAST-LIVO相比达到了相当的精度水平。本文利用激光雷达的强度信息来提取额外的强度边缘点,并将激光雷达和惯性传感器的测量值融合在一个误差状态迭代卡尔曼滤波器中。大量的定量和定性实验表明,引入强度梯度和加权函数提高了LIO的准确性和鲁棒性。此外,本文展示了我们的系统在具有挑战性的场景中,包括室内、室外和激光雷达退化环境中,更加稳定和准确。未来的工作将引入后端优化和闭环检测以提高定位的全局一致性。

本文仅做学术分析,如有侵权,请联系删文!

更多优质内容,请关注公众号:智驾机器人技术前线

这篇关于IGE-LIO:充分利用强度信息克服激光退化场景下的定位精度的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1113649

相关文章

使用Python从PPT文档中提取图片和图片信息(如坐标、宽度和高度等)

《使用Python从PPT文档中提取图片和图片信息(如坐标、宽度和高度等)》PPT是一种高效的信息展示工具,广泛应用于教育、商务和设计等多个领域,PPT文档中常常包含丰富的图片内容,这些图片不仅提升了... 目录一、引言二、环境与工具三、python 提取PPT背景图片3.1 提取幻灯片背景图片3.2 提取

Linux下如何使用C++获取硬件信息

《Linux下如何使用C++获取硬件信息》这篇文章主要为大家详细介绍了如何使用C++实现获取CPU,主板,磁盘,BIOS信息等硬件信息,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录方法获取CPU信息:读取"/proc/cpuinfo"文件获取磁盘信息:读取"/proc/diskstats"文

Java字符串操作技巧之语法、示例与应用场景分析

《Java字符串操作技巧之语法、示例与应用场景分析》在Java算法题和日常开发中,字符串处理是必备的核心技能,本文全面梳理Java中字符串的常用操作语法,结合代码示例、应用场景和避坑指南,可快速掌握字... 目录引言1. 基础操作1.1 创建字符串1.2 获取长度1.3 访问字符2. 字符串处理2.1 子字

SpringBoot应用中出现的Full GC问题的场景与解决

《SpringBoot应用中出现的FullGC问题的场景与解决》这篇文章主要为大家详细介绍了SpringBoot应用中出现的FullGC问题的场景与解决方法,文中的示例代码讲解详细,感兴趣的小伙伴可... 目录Full GC的原理与触发条件原理触发条件对Spring Boot应用的影响示例代码优化建议结论F

SpringBoot条件注解核心作用与使用场景详解

《SpringBoot条件注解核心作用与使用场景详解》SpringBoot的条件注解为开发者提供了强大的动态配置能力,理解其原理和适用场景是构建灵活、可扩展应用的关键,本文将系统梳理所有常用的条件注... 目录引言一、条件注解的核心机制二、SpringBoot内置条件注解详解1、@ConditionalOn

Python 迭代器和生成器概念及场景分析

《Python迭代器和生成器概念及场景分析》yield是Python中实现惰性计算和协程的核心工具,结合send()、throw()、close()等方法,能够构建高效、灵活的数据流和控制流模型,这... 目录迭代器的介绍自定义迭代器省略的迭代器生产器的介绍yield的普通用法yield的高级用法yidle

C++ Sort函数使用场景分析

《C++Sort函数使用场景分析》sort函数是algorithm库下的一个函数,sort函数是不稳定的,即大小相同的元素在排序后相对顺序可能发生改变,如果某些场景需要保持相同元素间的相对顺序,可使... 目录C++ Sort函数详解一、sort函数调用的两种方式二、sort函数使用场景三、sort函数排序

kotlin中const 和val的区别及使用场景分析

《kotlin中const和val的区别及使用场景分析》在Kotlin中,const和val都是用来声明常量的,但它们的使用场景和功能有所不同,下面给大家介绍kotlin中const和val的区别,... 目录kotlin中const 和val的区别1. val:2. const:二 代码示例1 Java

Java中&和&&以及|和||的区别、应用场景和代码示例

《Java中&和&&以及|和||的区别、应用场景和代码示例》:本文主要介绍Java中的逻辑运算符&、&&、|和||的区别,包括它们在布尔和整数类型上的应用,文中通过代码介绍的非常详细,需要的朋友可... 目录前言1. & 和 &&代码示例2. | 和 ||代码示例3. 为什么要使用 & 和 | 而不是总是使

一文详解SQL Server如何跟踪自动统计信息更新

《一文详解SQLServer如何跟踪自动统计信息更新》SQLServer数据库中,我们都清楚统计信息对于优化器来说非常重要,所以本文就来和大家简单聊一聊SQLServer如何跟踪自动统计信息更新吧... SQL Server数据库中,我们都清楚统计信息对于优化器来说非常重要。一般情况下,我们会开启"自动更新