news 2026/3/22 14:37:12

RA-L 2026 南开最新开源!R-VoxelMap:长距离定位不漂移,定位更精准、更稳健!

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
RA-L 2026 南开最新开源!R-VoxelMap:长距离定位不漂移,定位更精准、更稳健!

点击下方卡片,关注「3D视觉工坊」公众号
选择星标,干货第一时间送达

来源:3D视觉工坊

「3D视觉从入门到精通」知识星球(点开有惊喜) !星球内新增20多门3D视觉系统课程、入门环境配置教程、多场顶会直播、顶会论文最新解读、3D视觉算法源码、求职招聘等。想要入门3D视觉、做项目、搞科研,欢迎加入

一、这篇文章干了啥?

本文提出R-VoxelMap,一种新型体素映射方法,通过几何驱动的递归平面拟合策略构建精确体素地图,提升在线激光雷达里程计的定位精度。VoxelMap及其变体因使用体素内所有点拟合校验平面,存在异常值导致参数偏差、大型平面过度分割、不同物理平面错误合并等问题。R-VoxelMap采用基于异常值检测与复用流程的几何驱动递归构建策略,先通过RANSAC算法为每个体素拟合精确平面并分离异常值,再将异常值传递至八叉树深层递归处理,同时设计基于点分布的有效性校验算法防止平面错误合并。多开源激光雷达(-惯性)SLAM数据集实验表明,该方法定位精度更高,效率和内存占用与主流方法相当,代码将在GitHub公开。

标题R-VoxelMap: Accurate Voxel Mapping with Recursive Plane Fitting for Online LiDAR Odometry
论文https://arxiv.org/pdf/2601.12377
代码https://github.com/NKU-MobFly-Robotics/R-VoxelMap

二、引言

3D激光雷达技术的快速发展推动了激光雷达(-惯性)里程计的广泛应用。主流里程计方法依赖能精准表征环境、高效维护配准的地图结构,k-d树虽经典但KNN搜索耗时、树更新复杂,而基于体素的方法通过空间划分和哈希实现快速匹配,成为主流。

VoxelMap作为常用体素地图结构,利用概率平面特征提升精度和效率,但存在两大局限:一是对异常值敏感,少量异常值会扭曲平面参数,严格阈值又会导致平面过度分割;二是不同物理表面的点可能被错误合并,造成地图失真(见图1)。

图1 VoxelMap平面特征存在的问题及本方法的改进效果注:(a)为点云,(b)为本方法结果,(c)宽松阈值下VoxelMap的黄色标记平面因异常值偏移,(d)严格阈值下VoxelMap的白色框内平面过度分割、红色标记区域平面错误合并。

为此,本文提出R-VoxelMap,在由粗到细的平面特征提取中融入异常值检测与复用流程,抑制异常值影响,同时保留多尺度几何信息,提升里程计精度。核心贡献包括:新型递归构建的平面特征体素地图结构R-VoxelMap、基于点分布的平面有效性校验算法、多数据集验证的高精度性能。

图2 基于R-VoxelMap的激光雷达里程计系统概述:红色高亮为R-VoxelMap核心模块,蓝色为支持其基本功能的模块。

三、方法

3.1系统概述

R-VoxelMap由带概率平面的体素组成,嵌入IEKF框架实现位姿估计,无IMU时可作为独立激光雷达里程计使用恒速模型。其底层为位置键哈希表,每个键对应低分辨率体素的八叉树,体素可自适应细分子体素,八叉树所有节点均能存储点和概率平面(见图3)。

图3 R-VoxelMap与VoxelMap构建过程对比:上半部分为VoxelMap构建,下半部分为本方法,本方法通过异常值检测复用和平面有效性校验解决VoxelMap的问题。

3.2、R-VoxelMap构建

采用异常值检测与复用的递归地图构建方法:对低分辨率体素内点云,通过RANSAC算法分离内点和异常值,内点比例达标则估计平面参数,经特征值分解得到法向量,再通过有效性校验筛选几何一致的平面,异常值则细分后递归处理,直至所有点成为内点或达到八叉树最大深度。

3.3、平面有效性校验

为避免RANSAC算法错误合并不同平面的点,将RANSAC拟合平面作为参考,离散化为网格并投影内点,聚类后选择点数最多的聚类,达标则重新拟合平面,否则所有点归为异常值。

图4 基于点分布的平面有效性校验流程:(a)获取RANSAC拟合的候选平面,(b)投影内点并统计网格点数,(c)聚类占用网格,(d)选择最优聚类重新拟合平面。

3.4、地图更新与八叉树重建

采用增量更新策略,新点分配至现有八叉树后,增量计算平面参数,达标则更新,否则存入非平面点集。累积足够点后定期重建八叉树,借助链表存储高效访问点,同时通过LRU缓存控制内存占用。

3.5、用于状态估计的点-平面匹配

扫描-地图匹配中,将对应低分辨率体素内所有平面作为候选,构建点-平面距离测量方程,计算测量噪声方差和点属于平面的概率,选择概率最高的候选平面,融合先验信息通过MAP推理实现状态估计。

四、实验

4.1、实验设置

实验数据集包括KITTI、M2DGR、M3DGR、NTU VIRAL和自行采集的AVIA数据集(见表1),对比方法有Fast-LIO2、Faster-LIO等主流算法,所有方法采用相同预处理流程和参数设置,实验环境为Intel i9-13900HX CPU和32GB RAM。

表1 实验所用数据集主要信息(见表中数据集、IMU、激光雷达、平台、场景对应关系)

4.2、精度验证

  1. KITTI数据集:采用ATE的RMSE评估定位精度,R-VoxelMap完整版本平均ATE为2.570米,相对改进超20%,在11个序列中8个取得最佳性能(见表2)。

  2. LIO数据集:M2DGR、NTU VIRAL数据集上,R-VoxelMap在多数序列中表现最优;M3DGR和AVIA数据集的端到端漂移误差验证显示,其在走廊退化环境和非结构化户外场景中仍保持高定位精度(见表3、表4)。

表2 KITTI里程计训练序列精度对比(ATE,单位:米)

表3 M2DGR和NTU VIRAL数据集精度对比(ATE,单位:米)

表4 M3DGR和AVIA数据集端到端误差对比(单位:米)

图5 建图结果对比:(a)(b)为M3DGR数据集上本方法与VoxelMap的建图结果对比,(c)(d)为AVIA数据集上端到端误差对比。)

4.3、运行时间和内存占用

KITTI数据集上,R-VoxelMap在多数序列中计算时间和内存占用低于VoxelMap,虽RANSAC引入额外计算,但通过其他模块优化抵消开销,总计算成本与VoxelMap相当(见表5、表6)。

表5 KITTI数据集运行时间和内存占用对比

表6 KITTI序列00的模块级运行时间对比(单位:毫秒)

4.4、稳定性分析

不同随机种子实验表明,R-VoxelMap定位精度始终优于VoxelMap,运行时间保持稳定(见表7)。

表7 不同随机种子下KITTI数据集的精度和运行时间对比

五、结论

R-VoxelMap采用几何驱动的递归地图构建框架,结合异常值检测与复用流程和基于点分布的平面有效性校验,有效减轻异常值影响,防止不同物理平面错误合并。多数据集实验证明,其在不增加处理时间和内存开销的前提下,显著提升了定位精度。未来将进一步降低系统对参数的敏感性,提升在多样环境中的定位精度。

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

3D视觉方向论文辅导来啦!可辅导SCI期刊、CCF会议、本硕博毕设、核心期刊等

3D视觉硬件

3D视觉学习圈子

「3D视觉从入门到精通」知识星球(点开有惊喜)!星球内新增20多门3D视觉系统课程、入门环境配置教程、多场顶会直播、顶会论文最新解读、3D视觉算法源码、求职招聘等。想要入门3D视觉、做项目、搞科研,欢迎扫码加入

3D视觉全栈学习课程:www.3dcver.com

3D视觉交流群成立啦

添加微信:cv3d001,备注:姓名+方向+单位,邀请入群
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/16 3:54:58

Linus 用 AI 写 Python 代码,还开源了!

👇我的小册 54章教程:(小白零基础用Python量化股票分析小册) ,原价299,限时特价2杯咖啡,满100人涨10元。 转自:CSDN(ID:CSDNnews) 两个月前,在 Linux Foundation 的开源峰会上&#…

作者头像 李华
网站建设 2026/3/15 9:49:45

【小程序毕设源码分享】基于springboot+小程序的公开课管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/3/15 16:20:41

【小程序毕设全套源码+文档】基于微信小程序的影音点评系统设计与实现(丰富项目+远程调试+讲解+定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/3/17 10:05:05

Vue3 + Element Plus 项目中使用 html2canvas 截图实战详解

在现代 Web 应用开发中,常常需要将页面中的某一部分内容生成图片,用于保存、打印或上传。html2canvas 是一个非常流行的前端库,它能将 HTML 元素“绘制”成 Canvas,进而导出为图片。本文将结合实际 Vue3 Element Plus 项目代码&a…

作者头像 李华
网站建设 2026/3/15 15:45:49

wait和notify这个为什么要在synchronized代码块中?

一、核心结论先明确wait()和notify()的本质是操作对象的监视器(Monitor),而只有当前线程获取到该对象的 Monitor 锁(也就是进入synchronized代码块 / 方法),才能合法操作这个监视器。如果不在synchronized中…

作者头像 李华