[论文阅读]4DRadarSLAM: A 4D Imaging Radar SLAM System for Large-scale Environments

 

目录

 

1.摘要和引言:

2. 系统框架:

2.1 前端:

2.2 回环检测:

2.3 后端:

3.实验和分析:

4.结论


1.摘要和引言:

这篇论文介绍了一种名为“4DRadarSLAM”的新型4D成像雷达SLAM系统,旨在提高大规模环境下的定位与地图构建性能。与传统的基于激光雷达的SLAM系统相比,该系统在恶劣天气条件下表现更佳。它包括前端、回环检测和后端三个主要部分:前端通过扫描匹配计算里程计数据,回环检测模块识别回环,后端则构建并优化姿态图。该系统的显著特点是考虑了每个点的概率分布,从而改善性能。论文中还展示了在不同平台和数据集上的实验结果,证明了该系统的准确性、鲁棒性和实时性。此外,为了进一步促进相关研究,研究者将系统代码开源。https://github.com/zhuge2333/4DRadarSLAM

引言部分介绍了同步定位与地图构建(SLAM)的重要性,并指出在恶劣天气条件下,基于激光雷达的SLAM系统可能会受到限制。因此,近年来越来越多的关注转向了稳健的毫米波雷达测距(mmWave Radar)。然而,大多数研究集中在2D或3D雷达上,而关于4D雷达(x, y, z, 多普勒)的研究相对较少。4D雷达是一种相对较新的技术,其收集的点云比3D激光雷达更嘈杂和稀疏,这使得从4D雷达的点云中提取有效的几何特征更具挑战性。因此,直接将3D激光雷达SLAM方法应用于4D雷达SLAM并不可行。论文提出了一个针对4D成像雷达的完整SLAM系统,包括前端、回环检测和后端。

2. 系统框架:

4DRadarSLAM系统分三个主要模块:前端、回环检测和后端。在前端模块中,使用4D雷达点云作为输入,估计里程计数据并生成关键帧。回环检测模块评估每个新的关键帧,以确定是否能形成回环。在后端,构建并使用g2o优化姿态图,从而生成优化后的姿态作为输出。整个系统旨在通过这些模块协同工作,提高SLAM系统在大规模环境中的性能和准确性。 

2.1 前端:

预处理阶段:需要过滤掉动态物体。可以利用雷达的多普勒速度信息来识别这些物体。在这项研究中,作者使用一种在文献[33]中提出的线性最小二乘法来估计雷达的自我速度。通过估计的多普勒速度和自我速度,他们能够确定物体的真实速度。这一过程有助于提高SLAM系统对环境的理解和处理能力,尤其是在动态和复杂的场景中。 

 Scan-to-Scan matching: 输入是上一关键帧(Fk)和新的一帧(Pt)。目标是找到从t到k的转换矩阵(Ttk)。由于4D雷达点云的噪声较大,直接提取几何特征(如边缘和平面)并不容易。我们发现,与 ICP 和 NDT 相比,GICP 算法可以输出更可接受的结果。初始转换矩阵设置为上一次的转换矩阵(Ttk-1)。提出了一种新的算法,称为自适应概率分布-GICP(APDGICP),它在 GICP 算法中考虑了每个点的空间概率分布。根据雷达手册,点的测距不确定性为 σr = 0.00215r,其中 r 和 σr 分别是测量的距离和不确定性。方位角和仰角精度分别为 0.5° 和 1.0°,这导致了球坐标系中方位角和仰角方向的不确定性,近似为 σa ≈ sin(0.5°)r 和 σe ≈ sin(1.0°)r。由此产生的概率分布如下图所示,类似于一个椭球体(橙色),一个轴指向原点,三个半轴长度分别为 σr(距离)、σa(方位角)和 σe(仰角)。

关键帧选择:第一帧被指定为固定关键帧,而后续关键帧的确定取决于是否满足以下两个条件之一:1. 当前帧和上一关键帧之间的平移量超过阈值 δt; 2. 当前帧和上一关键帧之间的旋转量超过阈值 δr。阈值参数根据经验设置如下:δt = 0.5m 或 2m,δr = 15°。第 k 个和第 k+1 个关键帧之间的扫描到扫描匹配结果作为 SE(3) 二元边添加到位姿图中。

2.2 回环检测:

此步骤的目的是确定每个关键帧是否构成了一个回环。首先,通过预过滤步骤基于四个规则识别潜在的环路,包括距离限制、空间接近性、高度差限制和姿态角限制。接着,利用强度扫描上下文模块来进一步筛选潜在的闭环候选。最后,为确保几何一致性,采用里程计检查步骤,以防止后端姿态图优化中的几何不一致问题。通过这些步骤,系统能有效识别并确认回环,从而增强SLAM系统的精度和可靠性。 

2.3 后端:

基于前端里程计、闭环检测和GPS信号(如果可用)构建姿态图。关键帧在姿态图中表示为节点,节点之间的边代表里程计约束。当确定闭环时,将其作为约束(二元边)添加。如果有GPS信号,也可以将其作为单元边加入姿态图中,其协方差直接从GPS数据获得。最后,使用g2o库优化姿态图,得出优化的姿态。

3.实验和分析:

这里包括了对系统的前端和后端性能的定量分析,以及使用五个不同数据集的实验结果。实验显示,在小规模数据集上,APDGICP(自适应概率分布GICP)在前端性能上优于GICP,而在大规模数据集上GICP表现更好。准确的环路闭合显著提高了精度,尤其是在后端优化时。此外,使用GPS数据的后端优化进一步提高了系统的性能。文章还包括了对这些方法在不同数据集上轨迹的可视化比较,以及各个算法步骤的效率分析。

4.结论

在这篇论文中,为4D成像雷达引入了一个完整的SLAM系统,该系统由三个模块组成:前端、回环检测和后端。在前端,估计了雷达自身速度以去除动态物体,并提出了APDGICP算法,该算法考虑了原始GICP中每个点的概率分布,用于扫描到扫描匹配。在回环检测中,引入了几种回环过滤方法,并使用强度扫描上下文来查找回环候选。实现了一个里程计检查模块,以确定最佳回环。在后端,基于前端里程计、检测到的回环和GPS数据构建位姿图。使用自己收集的数据集进行了大量实验,这些数据集涵盖了各种环境和速度,包括结构化和非结构化、小规模和大规模环境、低速和中速。我们提出的系统在笔记本电脑上实现了实时性能,相对误差(RE)为2.05%、0.0052deg/m,绝对轨迹误差(ATE)为2.35m。未来的工作包括:融合4D雷达和IMU以实现更鲁棒的SLAM。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

RT-DETR优化:UNetv2多层次特征融合模块结合DualConv、GSConv

🚀🚀🚀本文改进:多层次特征融合(SDI)结合DualConv、GSConv模块等实现二次创新 🚀🚀🚀SDI 亲测在多个数据集能够实现涨点,同样适用于小目标检测 🚀🚀🚀RT-DETR改进创新专栏:http://t.csdnimg.cn/vuQTz 学姐带你学习YOLOv8,从入门到创新,轻轻松松搞定…

Vue、uniApp、微信小程序、Html5等实现数缓存

此文章带你实现前端缓存,利用时间戳封装一个类似于Redis可以添加过期时间的缓存工具 不仅可以实现对缓存数据设置过期时间,还可以自定义是否需要对缓存数据进行加密处理 工具介绍说明 对缓存数据进行非对称加密处理 对必要数据进行缓存,并…

太平洋产险海南分公司:春季爱车保养,就看这几点!

一年之计在于春,春天不仅是万物复苏的好时节,也是一年中非常适合汽车养护的季节。 刚刚过去的春节,汽车的使用频率大大增加,很多车主都准备对爱车进行一次全面保养。加上立春过后,天气渐暖,许多车主也计划开…

答题小程序源码系统:自带流量主广告位+视频激励广告 带完整的代码安装包以及搭建教程

随着互联网的迅速发展,各种应用程序层出不穷,而答题类小程序由于其独特的互动性和吸引力,成为了当前最热门的应用之一。答题小程序源码系统是一款基于微信小程序开发的源代码系统,它具有丰富的功能和灵活的定制性,可以…

搭建算法日志自检小系统

&#x1f952; 前言 目前演示的是一个工具&#xff0c;但如此&#xff0c;未来完成有潜力可以演变为一整套系统。 &#x1f451;现场人员自检失败表计点位教程V2.0 NOTE: 如果没有“logfiles-meter-tool“目录的请联系我们进行提供&#xff01; &#x1f447; 进入<dist>…

使用AutoDL云计算平台训练并测试Pytorch版本NeRF代码

文章目录 前言一、数据集及代码获取二、租用并设置服务器三、Pycharm远程开发四、训练并测试代码 前言 因为第一次在云服务器上跑代码&#xff0c;所以在这里记录一下。 一、数据集及代码获取 nerf-pytorch项目是 NeRF 的忠实 PyTorch 实现&#xff0c;它在运行速度提高 1.3 倍…

docker 利用特权模式逃逸并拿下主机

docker 利用特权模式逃逸并拿下主机 在溯源反制过程中&#xff0c;会经常遇到一些有趣的玩法&#xff0c;这里给大家分享一种docker在特权模式下逃逸&#xff0c;并拿下主机权限的玩法。 前言 在一次溯源反制过程中&#xff0c;发现了一个主机&#xff0c;经过资产收集之后&…

SSL证书与HTTPS的关系

SSL证书是一种数字证书&#xff0c;由权威的证书颁发机构颁发。它包含了一个公钥和有关证书所有者的一些信息&#xff0c;如名称、组织、邮箱等。SSL证书的主要作用是实现数据加密和身份验证&#xff0c;确保数据在传输过程中的安全性和完整性。 HTTPS是一种基于HTTP协议的安全…

Web开发:SQLsugar的安装和使用

一、安装 第一步&#xff0c;在你的项目中找到解决方案&#xff0c;右键-管理解决方案的Nuget 第二步&#xff0c;下载对应的包&#xff0c;注意你的框架是哪个就下载哪个的包&#xff0c;一个项目安装一次包即可 点击应用和确定 安装好后会显示sqlsugar的包 二、使用&#xf…

UOS Python+Qt5实现声卡回路测试

1.回路治具设计&#xff1a; 2.Ui界面&#xff1a; 3.源代码&#xff1a; # -*- coding: utf-8 -*-# Form implementation generated from reading ui file SoundTestWinFrm.ui # # Created by: PyQt5 UI code generator 5.15.2 # # WARNING: Any manual changes made to this…

3d云渲染用什么显卡比较好?3d云渲染显卡推荐

3D云渲染能加快渲染速度&#xff0c;是众多公司的首选方案&#xff0c;作为公司负责人&#xff0c;选择哪个平台值得思考&#xff0c;今天我就说下我的选择吧。 首先我们要了解云渲染的渲染方式&#xff0c;云渲染的渲染方式分两种&#xff0c;一种是CPU渲染&#xff0c;一种是…

C++程序员必备的面试技巧

“程序员必备的面试技巧&#xff0c;就像是编写一段完美的代码一样重要。在面试战场上&#xff0c;我们需要像忍者一样灵活&#xff0c;像侦探一样聪明&#xff0c;还要像无敌铁金刚一样坚定。只有掌握了这些技巧&#xff0c;我们才能在面试的舞台上闪耀光芒&#xff0c;成为那…

Windows 远程控制之 PsExec

1、介绍&#xff1a; PsExec 是一种轻量级 telnet 替代品&#xff0c;可让你在其他系统上执行进程&#xff0c;并为控制台应用程序提供完整交互性&#xff0c;而无需手动安装客户端软件。 PsExec 最强大的用途包括在远程系统上启动交互式命令提示符&#xff0c;以及 IpConfig …

【LeetCode】2619. 数组原型对象的最后一个元素

数组原型对象的最后一个元素 题目题解 题目 请你编写一段代码实现一个数组方法&#xff0c;使任何数组都可以调用 array.last() 方法&#xff0c;这个方法将返回数组最后一个元素。如果数组中没有元素&#xff0c;则返回 -1。 你可以假设数组是 JSON.parse 的输出结果。 示例 …

Postgres 中文周报:Postgres Weekly 537 期

本周报由 Cloudberry Database 社区编译自英文版《Postgres Weekly》&#xff0c;译文较原文有所调整。 推荐博文 &#x1f3c6; PostgreSQL: The DBMS of the Year 2023 PostgreSQL 荣获 DB-Engines 网站 2023 年度 DBMS 冠军。DB-Engines 收集了 480 款数据库系统信息并跟踪…

JAVA循环结构

目录 if语句 1、if语句第一种格式 2、if的第二种格式 3、if的第三种格式 switch语句 1、switch格式 2、switch练习 3、switch规则 循环 1、格式 2、练习 if语句 1、if语句第一种格式 package 分支结构;import java.util.Scanner;public class ifjiegou {public sta…

C Primer Plus 第6版 编程练习 chapter 13

文章目录 1. 第1题1.1 题目描述1.2 编程源码1.3 结果显示 2. 第2题2.1 题目描述2.2 编程源码2.3 结果显示 3. 第3题3.1 题目描述3.2 编程源码3.3 结果显示 4. 第4题4.1 题目描述4.2 编程源码4.3 结果显示 5. 第5题5.1 题目描述5.2 编程源码5.3 结果显示 6. 第6题6.1 题目描述6.…

​水经微图Web1.5.0版即将上线

让每一个人都有自己的地图&#xff01; 最近我们上线了水经微图&#xff08;简称“微图”&#xff09;Web1.4.0版&#xff0c;现在1.5.0版也即将上线&#xff0c;接下来的1.6.0版研发计划也已经确定好。 这里就来分享一下已上线的版本&#xff0c;即将上线的版本&#xff0c;…

virtualbox Ubuntu 网络连接

一、网络连接需求1—— 上网&#xff1a; 虚拟机默认的NAT连接方式&#xff0c;几乎不需要怎么配置&#xff0c;即可实现上网。 enp0s17以太网必须要开启&#xff0c;才能上网&#xff1b; 但是主机ping不通虚拟机&#xff0c;貌似可以ping 127.0.0.1; 二、主机和虚拟机相互p…