Memory-Efficient Boundary Map for Large-Scale Occupancy Grid Mapping
作者: Benxu Tang, Yunfan Ren, Yixi Cai, Fanze Kong, Wenyi Liu, Fangcheng Zhu, Longji Yin, Liuyu Shi, Fu Zhang
分类: cs.RO
发布日期: 2026-03-23
期刊: Benxu Tang, et al. The International Journal of Robotics Research, published online 2026
DOI: 10.1177/02783649261425266
🔗 代码/项目: GITHUB
💡 一句话要点
提出一种内存高效的边界地图方法,用于大规模占据栅格地图构建。
🎯 匹配领域: 支柱三:空间感知与语义 (Perception & Semantics)
关键词: 占据栅格地图 边界地图 机器人导航 环境建模 内存优化
📋 核心要点
- 传统占据栅格地图方法在高分辨率和大规模场景下需要维护所有体素,导致内存消耗巨大,限制了其应用。
- 论文提出一种仅维护地图边界的表示方法,通过显式表示边界体素来隐式表示自由和未知区域,从而显著降低内存占用。
- 论文设计了边界地图的数据结构和查询算法,并提出了全局-局部映射框架,实现了高效的地图构建和更新,代码已开源。
📝 摘要(中文)
在安全攸关的机器人应用中,确定环境中位置的占据状态是一项基本任务。传统的占据栅格地图构建方法将环境细分为体素网格,每个体素与三种占据状态之一相关联:自由、占据或未知。这些方法显式地维护映射体积内的所有体素,并通过直接查询位置所在的相应体素来确定该位置的占据状态。然而,在高分辨率和大规模场景中维护所有网格体素需要大量的内存资源。本文提出了一种仅维护映射体积边界的新表示方法。具体来说,我们显式地表示边界体素,例如占据体素和前沿体素,而自由和未知体素分别由边界内部或外部的体积自动表示。由于我们的表示仅在二维 (2D) 空间中维护一个闭合曲面,而不是在三维 (3D) 空间中维护整个体积,因此它显著降低了内存消耗。然后,基于这种 2D 表示,我们提出了一种确定 3D 环境中任意位置的占据状态的方法,称之为边界地图。此外,我们设计了一种新的数据结构来维护边界地图,支持高效的占据状态查询。还提供了占据状态查询算法的理论分析。此外,为了能够从实时传感器测量中高效地构建和更新边界地图,我们提出了一个全局-局部映射框架和相应的更新算法。最后,我们将在 GitHub 上开源边界地图的实现,以使社区受益。
🔬 方法详解
问题定义:传统占据栅格地图构建方法在处理大规模环境时,需要存储和维护大量的体素信息,导致内存消耗巨大,限制了其在高分辨率和实时性要求高的机器人应用中的应用。现有方法的痛点在于无法有效平衡地图精度和内存占用。
核心思路:论文的核心思路是只维护环境的边界信息,即占据体素和前沿体素,而将自由空间和未知空间通过边界进行隐式表达。这种方法将三维空间的体素维护问题转化为二维空间的边界维护问题,从而大幅降低了内存需求。这样设计的目的是为了在保证地图精度的前提下,显著减少内存占用,提高地图构建和查询的效率。
技术框架:该方法采用全局-局部映射框架。全局层面,维护一个全局的边界地图,用于存储整个环境的边界信息。局部层面,利用传感器数据实时更新局部区域的边界地图,并将更新后的局部地图融合到全局地图中。整体流程包括:传感器数据获取、局部边界地图构建、局部地图与全局地图融合、占据状态查询等主要阶段。
关键创新:该方法最重要的技术创新点在于使用边界地图来表示环境,而不是传统的体素网格。这种表示方法将三维空间的占据状态表示问题转化为二维空间的边界表示问题,从而显著降低了内存消耗。与现有方法的本质区别在于,现有方法显式地维护所有体素的占据状态,而该方法只显式地维护边界体素的占据状态,从而实现了内存效率的提升。
关键设计:边界地图的数据结构设计是关键。论文设计了一种新的数据结构,用于高效地存储和查询边界信息。具体细节未知。全局-局部地图融合算法的设计也至关重要,需要保证融合后的地图一致性和精度。此外,占据状态查询算法的效率直接影响了该方法的实用性,论文提供了该算法的理论分析,但具体实现细节未知。
🖼️ 关键图片
📊 实验亮点
论文提出了一种内存高效的边界地图表示方法,通过只维护环境边界信息,显著降低了内存消耗。具体实验数据未知,但论文声称该方法在保证地图精度的前提下,能够大幅减少内存占用,并提高地图构建和查询的效率。代码已开源,方便其他研究者进行复现和改进。
🎯 应用场景
该研究成果可应用于各种需要进行大规模环境地图构建的机器人应用中,例如自动驾驶、无人机导航、仓储物流机器人等。通过降低内存消耗,该方法可以支持在高分辨率下构建更大规模的地图,从而提高机器人的环境感知能力和导航精度。此外,该方法还可以应用于三维重建、虚拟现实等领域,为这些领域提供更高效的场景表示方法。
📄 摘要(原文)
Determining the occupancy status of locations in the environment is a fundamental task for safety-critical robotic applications. Traditional occupancy grid mapping methods subdivide the environment into a grid of voxels, each associated with one of three occupancy states: free, occupied, or unknown. These methods explicitly maintain all voxels within the mapped volume and determine the occupancy state of a location by directly querying the corresponding voxel that the location falls within. However, maintaining all grid voxels in high-resolution and large-scale scenarios requires substantial memory resources. In this paper, we introduce a novel representation that only maintains the boundary of the mapped volume. Specifically, we explicitly represent the boundary voxels, such as the occupied voxels and frontier voxels, while free and unknown voxels are automatically represented by volumes within or outside the boundary, respectively. As our representation maintains only a closed surface in two-dimensional (2D) space, instead of the entire volume in three-dimensional (3D) space, it significantly reduces memory consumption. Then, based on this 2D representation, we propose a method to determine the occupancy state of arbitrary locations in the 3D environment. We term this method as boundary map. Besides, we design a novel data structure for maintaining the boundary map, supporting efficient occupancy state queries. Theoretical analyses of the occupancy state query algorithm are also provided. Furthermore, to enable efficient construction and updates of the boundary map from the real-time sensor measurements, we propose a global-local mapping framework and corresponding update algorithms. Finally, we will make our implementation of the boundary map open-source on GitHub to benefit the community:https://github.com/hku-mars/BDM.