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主动抛出异常的各种用法和场景分析

《Python主动抛出异常的各种用法和场景分析》在Python中,我们不仅可以捕获和处理异常,还可以主动抛出异常,也就是以类的方式自定义错误的类型和提示信息,这在编程中非常有用,下面我将详细解释主动抛... 目录一、为什么要主动抛出异常?二、基本语法:raise关键字基本示例三、raise的多种用法1. 抛

Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析

《Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析》InstantiationAwareBeanPostProcessor是Spring... 目录一、什么是InstantiationAwareBeanPostProcessor?二、核心方法解

Java 枚举的基本使用方法及实际使用场景

《Java枚举的基本使用方法及实际使用场景》枚举是Java中一种特殊的类,用于定义一组固定的常量,枚举类型提供了更好的类型安全性和可读性,适用于需要定义一组有限且固定的值的场景,本文给大家介绍Jav... 目录一、什么是枚举?二、枚举的基本使用方法定义枚举三、实际使用场景代替常量状态机四、更多用法1.实现接

java -jar命令运行 jar包时运行外部依赖jar包的场景分析

《java-jar命令运行jar包时运行外部依赖jar包的场景分析》:本文主要介绍java-jar命令运行jar包时运行外部依赖jar包的场景分析,本文给大家介绍的非常详细,对大家的学习或工作... 目录Java -jar命令运行 jar包时如何运行外部依赖jar包场景:解决:方法一、启动参数添加: -Xb

C/C++ chrono简单使用场景示例详解

《C/C++chrono简单使用场景示例详解》:本文主要介绍C/C++chrono简单使用场景示例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友... 目录chrono使用场景举例1 输出格式化字符串chrono使用场景China编程举例1 输出格式化字符串示

Linux查看系统盘和SSD盘的容量、型号及挂载信息的方法

《Linux查看系统盘和SSD盘的容量、型号及挂载信息的方法》在Linux系统中,管理磁盘设备和分区是日常运维工作的重要部分,而lsblk命令是一个强大的工具,它用于列出系统中的块设备(blockde... 目录1. 查看所有磁盘的物理信息方法 1:使用 lsblk(推荐)方法 2:使用 fdisk -l(

Java集成Onlyoffice的示例代码及场景分析

《Java集成Onlyoffice的示例代码及场景分析》:本文主要介绍Java集成Onlyoffice的示例代码及场景分析,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 需求场景:实现文档的在线编辑,团队协作总结:两个接口 + 前端页面 + 配置项接口1:一个接口,将o

Python Flask 库及应用场景

《PythonFlask库及应用场景》Flask是Python生态中​轻量级且高度灵活的Web开发框架,基于WerkzeugWSGI工具库和Jinja2模板引擎构建,下面给大家介绍PythonFl... 目录一、Flask 库简介二、核心组件与架构三、常用函数与核心操作 ​1. 基础应用搭建​2. 路由与参

SpringBoot如何对密码等敏感信息进行脱敏处理

《SpringBoot如何对密码等敏感信息进行脱敏处理》这篇文章主要为大家详细介绍了SpringBoot对密码等敏感信息进行脱敏处理的几个常用方法,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录​1. 配置文件敏感信息脱敏​​2. 日志脱敏​​3. API响应脱敏​​4. 其他注意事项​​总结

IDEA实现回退提交的git代码(四种常见场景)

《IDEA实现回退提交的git代码(四种常见场景)》:本文主要介绍IDEA实现回退提交的git代码(四种常见场景),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.已提交commit,还未push到远端(Undo Commit)2.已提交commit并push到