经典文献阅读之--LOG-LIO(高效局部几何信息估计的激光雷达惯性里程计)

本文主要是介绍经典文献阅读之--LOG-LIO(高效局部几何信息估计的激光雷达惯性里程计),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

0. 简介

局部几何信息即法线和点分布在基于激光雷达的同时定位与地图构建(SLAM)中是至关重要,因为它为数据关联提供了约束,进一步确定了优化方向,最终影响姿态的准确性。然而即使在使用KD树或体素图的辅助下,估计法线和点分布也是耗时的任务。为了实现快速法线估计,《LOG-LIO: A LiDAR-Inertial Odometry with Efficient Local Geometric Information Estimation》研究了激光雷达扫描帧的结构信息,提出了一种新颖的快速近似最小二乘(FALS)方法,通过预先计算的方位角信息,当新的扫描帧到达时,估计法线仅需要点的距离信息,为了高效估计点的分布,我们将ikd树扩展到体素管理地图,并在保持法线一致性的同时增量更新其点云分布。对于满足基于法线的可见性和一致性检查的扫描点,我们设计了一种稳健且准确的分层数据关联方案,其中点到曲面的关联优先于点到平面的关联,在分布趋于收敛后,再进一步固定体素以平衡时间消耗和表示的正确性。文中的公式较多,所以我们主要先了解具体表示以及主要内容。该工作实现已在https://github.com/tiev-tongji/LOG-LIO 开源,还将Ring FALS作为独立的法线工具开源在GitHub - tiev-tongji/RingFalsNormal: A novel fast approximate least squares normal estimator using the structural information of certain LiDAR, is fast and accurate compared to PCL, and meets the real-time requirements of the LIO system.。

1. 主要贡献

地图体素内逐步更新点云分布以保持空间信息的正确性,同时与法线保持一致性。为了平衡时间消耗和表示的正确性,我们在扩展的ikd树上管理地图,并在分布收敛后进一步固定分布。本工作的主要贡献如下:

  1. Ring FALS一种利用特定激光雷达的结构信息的新型快速近似最小二乘法法线估计器,与PCL相比快速而准确,满足LIO系统的实时要求。
  2. 考虑地图体素内点分布的鲁棒且准确的分层数据关联方案,其中点到曲面的关联优先于点到平面的关联,大尺度优先于小尺度。

2. 准备性工作

2.1 符号表示

2.2 LiDAR观测模型

图1. LiDAR观测模型和多尺度surfel关联的示意图。(a) 紫红色线条表示红色点的射线。八个点是Ring FALS用来估计红色点法线的邻域点。(b) 五个蓝色椭圆代表最近体素对应的绿色查询点在扩展ikd-tree中的小尺度surfel。橙色椭圆代表由小尺度surfel合并而成的大尺度surfel。绿色查询点首先与大尺度surfel关联。如果大尺度surfel不能满足第2.4节和第4.2节的条件,则与其所在体素的小尺度surfel关联

在实践中,LiDAR通过结合目标表面的方位和距离测量来获取一个点的三维坐标[18],[19],如图1(a)所示。LiDAR观测模型如下:

2.3 最小二乘法法线估计

正态分布的闭式解是协方差矩阵(方程(4)中的)最小特征值所对应的特征向量。

点击经典文献阅读之--LOG-LIO(高效局部几何信息估计的激光雷达惯性里程计) - 古月居可查看全文

这篇关于经典文献阅读之--LOG-LIO(高效局部几何信息估计的激光雷达惯性里程计)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


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

相关文章

C#使用SQLite进行大数据量高效处理的代码示例

《C#使用SQLite进行大数据量高效处理的代码示例》在软件开发中,高效处理大数据量是一个常见且具有挑战性的任务,SQLite因其零配置、嵌入式、跨平台的特性,成为许多开发者的首选数据库,本文将深入探... 目录前言准备工作数据实体核心技术批量插入:从乌龟到猎豹的蜕变分页查询:加载百万数据异步处理:拒绝界面

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis

golang 日志log与logrus示例详解

《golang日志log与logrus示例详解》log是Go语言标准库中一个简单的日志库,本文给大家介绍golang日志log与logrus示例详解,感兴趣的朋友一起看看吧... 目录一、Go 标准库 log 详解1. 功能特点2. 常用函数3. 示例代码4. 优势和局限二、第三方库 logrus 详解1.

SpringBoot使用OkHttp完成高效网络请求详解

《SpringBoot使用OkHttp完成高效网络请求详解》OkHttp是一个高效的HTTP客户端,支持同步和异步请求,且具备自动处理cookie、缓存和连接池等高级功能,下面我们来看看SpringB... 目录一、OkHttp 简介二、在 Spring Boot 中集成 OkHttp三、封装 OkHttp

使用Python高效获取网络数据的操作指南

《使用Python高效获取网络数据的操作指南》网络爬虫是一种自动化程序,用于访问和提取网站上的数据,Python是进行网络爬虫开发的理想语言,拥有丰富的库和工具,使得编写和维护爬虫变得简单高效,本文将... 目录网络爬虫的基本概念常用库介绍安装库Requests和BeautifulSoup爬虫开发发送请求解

C++实现回文串判断的两种高效方法

《C++实现回文串判断的两种高效方法》文章介绍了两种判断回文串的方法:解法一通过创建新字符串来处理,解法二在原字符串上直接筛选判断,两种方法都使用了双指针法,文中通过代码示例讲解的非常详细,需要的朋友... 目录一、问题描述示例二、解法一:将字母数字连接到新的 string思路代码实现代码解释复杂度分析三、

轻松上手MYSQL之JSON函数实现高效数据查询与操作

《轻松上手MYSQL之JSON函数实现高效数据查询与操作》:本文主要介绍轻松上手MYSQL之JSON函数实现高效数据查询与操作的相关资料,MySQL提供了多个JSON函数,用于处理和查询JSON数... 目录一、jsON_EXTRACT 提取指定数据二、JSON_UNQUOTE 取消双引号三、JSON_KE

Tomcat高效部署与性能优化方式

《Tomcat高效部署与性能优化方式》本文介绍了如何高效部署Tomcat并进行性能优化,以确保Web应用的稳定运行和高效响应,高效部署包括环境准备、安装Tomcat、配置Tomcat、部署应用和启动T... 目录Tomcat高效部署与性能优化一、引言二、Tomcat高效部署三、Tomcat性能优化总结Tom

Python利用自带模块实现屏幕像素高效操作

《Python利用自带模块实现屏幕像素高效操作》这篇文章主要为大家详细介绍了Python如何利用自带模块实现屏幕像素高效操作,文中的示例代码讲解详,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1、获取屏幕放缩比例2、获取屏幕指定坐标处像素颜色3、一个简单的使用案例4、总结1、获取屏幕放缩比例from

使用Python实现高效的端口扫描器

《使用Python实现高效的端口扫描器》在网络安全领域,端口扫描是一项基本而重要的技能,通过端口扫描,可以发现目标主机上开放的服务和端口,这对于安全评估、渗透测试等有着不可忽视的作用,本文将介绍如何使... 目录1. 端口扫描的基本原理2. 使用python实现端口扫描2.1 安装必要的库2.2 编写端口扫