Table of Contents
Fetching ...

GLIM: 3D Range-Inertial Localization and Mapping with GPU-Accelerated Scan Matching Factors

Kenji Koide, Masashi Yokozuka, Shuji Oishi, Atsuhiko Banno

TL;DR

GLIM tackles robust 3D range-IMU SLAM under degenerate sensing by unifying GPU-accelerated odometry with fixed-lag smoothing, keyframe-based frame-to-model registration, and submap-wide global optimization. It introduces VGICP with surface-orientation validation and multi-resolution voxelmaps, IMU preintegration, and multi-camera constraints, all integrated in a tightly-coupled factor graph that runs in real time on a consumer GPU. A submap-endpoint concept and IMU factors between submap endpoints stabilize long-horizon optimization, while a GPU-enabled global matching cost minimization enables accurate loop closure and drift correction. Across synthetic and real datasets (Newer College, NTU VIRAL), GLIM achieves state-of-the-art or competitive accuracy, with robustness to complete range data degeneration and strong performance when fusing diverse sensors and constraints.

Abstract

This article presents GLIM, a 3D range-inertial localization and mapping framework with GPU-accelerated scan matching factors. The odometry estimation module of GLIM employs a combination of fixed-lag smoothing and keyframe-based point cloud matching that makes it possible to deal with a few seconds of completely degenerated range data while efficiently reducing trajectory estimation drift. It also incorporates multi-camera visual feature constraints in a tightly coupled way to further improve the stability and accuracy. The global trajectory optimization module directly minimizes the registration errors between submaps over the entire map. This approach enables us to accurately constrain the relative pose between submaps with a small overlap. Although both the odometry estimation and global trajectory optimization algorithms require much more computation than existing methods, we show that they can be run in real-time due to the careful design of the registration error evaluation algorithm and the entire system to fully leverage GPU parallel processing.

GLIM: 3D Range-Inertial Localization and Mapping with GPU-Accelerated Scan Matching Factors

TL;DR

GLIM tackles robust 3D range-IMU SLAM under degenerate sensing by unifying GPU-accelerated odometry with fixed-lag smoothing, keyframe-based frame-to-model registration, and submap-wide global optimization. It introduces VGICP with surface-orientation validation and multi-resolution voxelmaps, IMU preintegration, and multi-camera constraints, all integrated in a tightly-coupled factor graph that runs in real time on a consumer GPU. A submap-endpoint concept and IMU factors between submap endpoints stabilize long-horizon optimization, while a GPU-enabled global matching cost minimization enables accurate loop closure and drift correction. Across synthetic and real datasets (Newer College, NTU VIRAL), GLIM achieves state-of-the-art or competitive accuracy, with robustness to complete range data degeneration and strong performance when fusing diverse sensors and constraints.

Abstract

This article presents GLIM, a 3D range-inertial localization and mapping framework with GPU-accelerated scan matching factors. The odometry estimation module of GLIM employs a combination of fixed-lag smoothing and keyframe-based point cloud matching that makes it possible to deal with a few seconds of completely degenerated range data while efficiently reducing trajectory estimation drift. It also incorporates multi-camera visual feature constraints in a tightly coupled way to further improve the stability and accuracy. The global trajectory optimization module directly minimizes the registration errors between submaps over the entire map. This approach enables us to accurately constrain the relative pose between submaps with a small overlap. Although both the odometry estimation and global trajectory optimization algorithms require much more computation than existing methods, we show that they can be run in real-time due to the careful design of the registration error evaluation algorithm and the entire system to fully leverage GPU parallel processing.
Paper Structure (23 sections, 13 equations, 15 figures, 9 tables)

This paper contains 23 sections, 13 equations, 15 figures, 9 tables.

Figures (15)

  • Figure 1: The proposed framework comprises preprocessing module and three estimation modules (odometry estimation, local mapping, and global mapping) that are all based on tight coupling of range and IMU constraints. The input point clouds are fed to the preprocessing module for downsampling and nearest neighbor search. Then, the odometry estimation module performs point cloud deskewing to remove motion distortion, and the sensor motion is estimated through fixed-lag smoothing. The local mapping module performs deskewing again with the odometry estimation result and concatenates several frames into one submap after local map optimization. Finally, the global mapping module takes as input the submaps and optimizes their poses to improve global consistency. Each module runs in an individual thread and the entire system is executed as a single process.
  • Figure 2: Correspondence validation based on surface orientation. ${\bm p}_k \in \mathcal{P}_i$ is not visible from ${\bm T}_j$, which is on the opposite side of the surface, but is visible from ${\bm T}'_j$, which is on the same side of the surface.
  • Figure 3: Efficient factor linearization on GPU. The input and output data for linearization are serialized in a memory block and uploaded to and downloaded from the GPU with a single memory transfer. Linearization tasks are issued to the GPU task list and processed in parallel. This mechanism invokes only two CPU-GPU data transfer calls per factor graph linearization task regardless of the number of factors in the factor graph.
  • Figure 4: Odometry estimation factor graph. Only factors related to the latest frame (${\bm x}_8$) are visualized. The latest frame is connected with keyframes via matching cost factors to reduce the estimation drift. It is also connected with the last few frames to make the estimation robust to quick sensor motion. IMU factors are created between consecutive frames to keep the factor graph well constrained.
  • Figure 5: Example of created keyframes and matching cost factors. Coordinate frames and points shown in color represent active frames in the optimization window (5 s) and those shown in gray are fixed. The matching cost factors are created between the active frames and the keyframes that are selected to be spatially well distributed to efficiently reduce estimation drift.
  • ...and 10 more figures