Table of Contents
Fetching ...

PlanarMesh: Building Compact 3D Meshes from LiDAR using Incremental Adaptive Resolution Reconstruction

Jiahao Wang, Nived Chebrolu, Yifu Tao, Lintong Zhang, Ayoung Kim, Maurice Fallon

TL;DR

PlanarMesh introduces an incremental, plane-centric mesh reconstruction framework for LiDAR data that adaptively balances detail and compactness. By combining planar models with variable-resolution meshing and leveraging free-space information, it achieves real-time performance (~2 Hz) and significantly reduced file footprints while maintaining state-of-the-art reconstruction accuracy. The approach uses dual BVH structures for efficient, curvature-informed updates and a suite of mesh-update operations (Update, Grow, New, Delete, Shrink, Merge) to incrementally refine planar surfaces. The proposed method demonstrates strong compression (over 5x smaller than other mesh-based methods and 10x over raw input) with robust geometric fidelity across indoor and outdoor scenes, highlighting its potential for scalable 3D mapping in robotics and mobile scanning.

Abstract

Building an online 3D LiDAR mapping system that produces a detailed surface reconstruction while remaining computationally efficient is a challenging task. In this paper, we present PlanarMesh, a novel incremental, mesh-based LiDAR reconstruction system that adaptively adjusts mesh resolution to achieve compact, detailed reconstructions in real-time. It introduces a new representation, planar-mesh, which combines plane modeling and meshing to capture both large surfaces and detailed geometry. The planar-mesh can be incrementally updated considering both local surface curvature and free-space information from sensor measurements. We employ a multi-threaded architecture with a Bounding Volume Hierarchy (BVH) for efficient data storage and fast search operations, enabling real-time performance. Experimental results show that our method achieves reconstruction accuracy on par with, or exceeding, state-of-the-art techniques-including truncated signed distance functions, occupancy mapping, and voxel-based meshing-while producing smaller output file sizes (10 times smaller than raw input and more than 5 times smaller than mesh-based methods) and maintaining real-time performance (around 2 Hz for a 64-beam sensor).

PlanarMesh: Building Compact 3D Meshes from LiDAR using Incremental Adaptive Resolution Reconstruction

TL;DR

PlanarMesh introduces an incremental, plane-centric mesh reconstruction framework for LiDAR data that adaptively balances detail and compactness. By combining planar models with variable-resolution meshing and leveraging free-space information, it achieves real-time performance (~2 Hz) and significantly reduced file footprints while maintaining state-of-the-art reconstruction accuracy. The approach uses dual BVH structures for efficient, curvature-informed updates and a suite of mesh-update operations (Update, Grow, New, Delete, Shrink, Merge) to incrementally refine planar surfaces. The proposed method demonstrates strong compression (over 5x smaller than other mesh-based methods and 10x over raw input) with robust geometric fidelity across indoor and outdoor scenes, highlighting its potential for scalable 3D mapping in robotics and mobile scanning.

Abstract

Building an online 3D LiDAR mapping system that produces a detailed surface reconstruction while remaining computationally efficient is a challenging task. In this paper, we present PlanarMesh, a novel incremental, mesh-based LiDAR reconstruction system that adaptively adjusts mesh resolution to achieve compact, detailed reconstructions in real-time. It introduces a new representation, planar-mesh, which combines plane modeling and meshing to capture both large surfaces and detailed geometry. The planar-mesh can be incrementally updated considering both local surface curvature and free-space information from sensor measurements. We employ a multi-threaded architecture with a Bounding Volume Hierarchy (BVH) for efficient data storage and fast search operations, enabling real-time performance. Experimental results show that our method achieves reconstruction accuracy on par with, or exceeding, state-of-the-art techniques-including truncated signed distance functions, occupancy mapping, and voxel-based meshing-while producing smaller output file sizes (10 times smaller than raw input and more than 5 times smaller than mesh-based methods) and maintaining real-time performance (around 2 Hz for a 64-beam sensor).
Paper Structure (22 sections, 3 equations, 7 figures, 2 tables, 1 algorithm)

This paper contains 22 sections, 3 equations, 7 figures, 2 tables, 1 algorithm.

Figures (7)

  • Figure 1: PlanarMesh can reconstruct buildings and indoor spaces as a set of detailed, yet minimal, planar surfaces in real-time (https://www.youtube.com/watch?v=GmMR96nYp90). It uses local curvature estimate to achieve adaptive resolution surface meshing. Left to right: [l] Plane reconstruction of a painting frame, [c] of a wider room, [r] and of inset window frame.
  • Figure 2: System architecture overview. The system processes input points in parallel to reconstruct a map, which is then simplified before output. Key components include Accelerated Search (Sec. \ref{['sec:accelerated_search']}), Relative Position Check (Sec. \ref{['sec:relative_position_check']}), Mesh Update (Sec. \ref{['sec:mesh_update']}), and Mesh Simplification (Sec. \ref{['sec:simplify_mesh']}).
  • Figure 3: The two BVHs used in our system. Given an input ($\hat{\mathbf{l}}$, $\mathbf{l}_{p}$), the two BVHs retrieve intersected faces $F^{*}$ and boundary vertices $V_{\partial}^{*}$ that contain $\mathbf{l}_{p}$ within their radius (a smaller sphere is used for display purposes).
  • Figure 4: Illustration of planar-mesh $M_{P}$. The relative position of $\mathbf{l}_{p}$ with respect to $M_{P}$ is determined by comparing its location against the uncertainty threshold $\sigma_d$, visualized as an ellipse.
  • Figure 5: Different mesh update operations: Update (Sec. \ref{['sec:mesh_update/update']}), Grow (Sec. \ref{['sec:mesh_update/grow']}), New (Sec. \ref{['sec:mesh_update/new']}), Delete (Sec. \ref{['sec:mesh_update/delete']}), Shrink (Sec. \ref{['sec:mesh_update/shrink']}), Merge (Sec. \ref{['sec:mesh_update/merge']}).
  • ...and 2 more figures