Table of Contents
Fetching ...

GMMap: Memory-Efficient Continuous Occupancy Map Using Gaussian Mixture Model

Peter Zhi Xuan Li, Sertac Karaman, Vivienne Sze

TL;DR

GMMap addresses the need for memory-efficient, real-time 3D occupancy mapping on energy-constrained robots. It introduces a Gaussian-domain, single-pass pipeline that compresses depth images into local Gaussians and directly fuses them into a globally-consistent map, while extending Gaussian Mixture Regression to preserve unexplored regions. The approach achieves comparable accuracy to state-of-the-art methods but with substantially smaller map sizes, lower memory overhead, dramatically reduced DRAM access, and significant energy savings, enabling real-time mapping on low-power hardware. These contributions have practical impact for autonomous navigation and exploration in memory- and energy-constrained platforms, offering a scalable path toward robust, real-time 3D perception. The results demonstrate up to 60–81 images per second processing and large gains in memory efficiency across diverse indoor and outdoor environments.

Abstract

Energy consumption of memory accesses dominates the compute energy in energy-constrained robots which require a compact 3D map of the environment to achieve autonomy. Recent mapping frameworks only focused on reducing the map size while incurring significant memory usage during map construction due to multi-pass processing of each depth image. In this work, we present a memory-efficient continuous occupancy map, named GMMap, that accurately models the 3D environment using a Gaussian Mixture Model (GMM). Memory-efficient GMMap construction is enabled by the single-pass compression of depth images into local GMMs which are directly fused together into a globally-consistent map. By extending Gaussian Mixture Regression to model unexplored regions, occupancy probability is directly computed from Gaussians. Using a low-power ARM Cortex A57 CPU, GMMap can be constructed in real-time at up to 60 images per second. Compared with prior works, GMMap maintains high accuracy while reducing the map size by at least 56%, memory overhead by at least 88%, DRAM access by at least 78%, and energy consumption by at least 69%. Thus, GMMap enables real-time 3D mapping on energy-constrained robots.

GMMap: Memory-Efficient Continuous Occupancy Map Using Gaussian Mixture Model

TL;DR

GMMap addresses the need for memory-efficient, real-time 3D occupancy mapping on energy-constrained robots. It introduces a Gaussian-domain, single-pass pipeline that compresses depth images into local Gaussians and directly fuses them into a globally-consistent map, while extending Gaussian Mixture Regression to preserve unexplored regions. The approach achieves comparable accuracy to state-of-the-art methods but with substantially smaller map sizes, lower memory overhead, dramatically reduced DRAM access, and significant energy savings, enabling real-time mapping on low-power hardware. These contributions have practical impact for autonomous navigation and exploration in memory- and energy-constrained platforms, offering a scalable path toward robust, real-time 3D perception. The results demonstrate up to 60–81 images per second processing and large gains in memory efficiency across diverse indoor and outdoor environments.

Abstract

Energy consumption of memory accesses dominates the compute energy in energy-constrained robots which require a compact 3D map of the environment to achieve autonomy. Recent mapping frameworks only focused on reducing the map size while incurring significant memory usage during map construction due to multi-pass processing of each depth image. In this work, we present a memory-efficient continuous occupancy map, named GMMap, that accurately models the 3D environment using a Gaussian Mixture Model (GMM). Memory-efficient GMMap construction is enabled by the single-pass compression of depth images into local GMMs which are directly fused together into a globally-consistent map. By extending Gaussian Mixture Regression to model unexplored regions, occupancy probability is directly computed from Gaussians. Using a low-power ARM Cortex A57 CPU, GMMap can be constructed in real-time at up to 60 images per second. Compared with prior works, GMMap maintains high accuracy while reducing the map size by at least 56%, memory overhead by at least 88%, DRAM access by at least 78%, and energy consumption by at least 69%. Thus, GMMap enables real-time 3D mapping on energy-constrained robots.
Paper Structure (25 sections, 18 equations, 12 figures, 3 tables, 3 algorithms)

This paper contains 25 sections, 18 equations, 12 figures, 3 tables, 3 algorithms.

Figures (12)

  • Figure 1: Illustration of GMMap's \ref{['gmmap_intro_a']} memory-efficient construction procedure and \ref{['gmmap_intro_b']} representation for the MIT's Stata Center. Even though Gaussians are continuous and unbounded, GMMs representing occupied and free regions in the environment are represented by red and blue ellipsoids, respectively, created at a Mahalanobis distance of two for ease of visualization. The leaf nodes of the R-tree that store the GMMs are illustrated by dotted rectangles. For the Stata Center, the GMMap models a continuous distribution of occupancy while requiring only 296KB to store.
  • Figure 2: Per-image GMM construction: Constructing a local GMMap $\mathcal{G}_t$ that accurately represents both occupied and free regions from the current depth image $Z_t$ obtained at pose $T_t$. Rays associated with each pixel in the depth image are illustrated with dotted arrows. Occupied and free GMMs are illustrated with red and blue ellipsoids, respectively. Dotted rectangles in the map $\mathcal{G}_t$ represent the bounding boxes at the leaf nodes of the R-tree. The green rectangle represents the bounding box at the root node of the R-tree that encloses the entire map $\mathcal{G}_t$.
  • Figure 3: Single-pass processing of the depth image in SPGF* for constructing the set of Gaussians $\mathcal{Q}$ where each element $\mathpzc{q}_j \in \mathcal{Q}$ contains one occupied Gaussian $\mathpzc{a}_j$ and a free Gaussian basis $\mathpzc{f}_j$. In Scanline Segmentation, each row (indexed by $v$) of the depth image is partitioned into a set of line segments $\mathcal{S} = \{\mathpzc{s}_{v,i}\}$, which are fused across rows to form $\mathpzc{q}_j \in \mathcal{Q}$ in Segment Fusion.
  • Figure 4: Visualization of \ref{['fig:free_space_a']} the free Gaussian basis which can be used to recover \ref{['fig:free_space_b']} a corresponding set of free Gaussians in subregion $\mathcal{B}_i$ whose size increases with the distance from the sensor origin.
  • Figure 5: Our fusion criteria using the Unscented Hellinger distance kristan2010multivariate allows for the creation of a single Gaussian (green) from two Gaussians (blue) when they \ref{['fusion_scenario_a']} completely overlap to represent the same region or \ref{['fusion_scenario_b']} partially overlap to represent neighboring parts of the same region in the environment.
  • ...and 7 more figures