Table of Contents
Fetching ...

Efficiently Closing Loops in LiDAR-Based SLAM Using Point Cloud Density Maps

Saurabh Gupta, Tiziano Guadagnino, Benedikt Mersch, Niklas Trekel, Meher V. R. Malladi, Cyrill Stachniss

TL;DR

The paper tackles robust loop closure in outdoor LiDAR-based SLAM across diverse sensors and motion patterns. It introduces a density-preserving BEV representation of ground-aligned local maps, from which ORB features are extracted and stored in an HBST binary-descriptor database with self-similarity pruning to combat perceptual aliasing. Loop closures are validated via 2D BEV-RANSAC alignment and fused into a full 3D transform using ground-alignment transforms, enabling cross-platform, multi-session, and multi-LiDAR map alignment. Extensive experiments on public and self-recorded datasets demonstrate high precision, strong cross-sensor transfer, and real-time capability, with ablations showing the benefits of ground alignment and pruning. The work provides a practical, open-source solution for robust LiDAR-based place recognition and loop closure in SLAM.

Abstract

Consistent maps are key for most autonomous mobile robots. They often use SLAM approaches to build such maps. Loop closures via place recognition help maintain accurate pose estimates by mitigating global drift. This paper presents a robust loop closure detection pipeline for outdoor SLAM with LiDAR-equipped robots. The method handles various LiDAR sensors with different scanning patterns, field of views and resolutions. It generates local maps from LiDAR scans and aligns them using a ground alignment module to handle both planar and non-planar motion of the LiDAR, ensuring applicability across platforms. The method uses density-preserving bird's eye view projections of these local maps and extracts ORB feature descriptors from them for place recognition. It stores the feature descriptors in a binary search tree for efficient retrieval, and self-similarity pruning addresses perceptual aliasing in repetitive environments. Extensive experiments on public and self-recorded datasets demonstrate accurate loop closure detection, long-term localization, and cross-platform multi-map alignment, agnostic to the LiDAR scanning patterns, fields of view, and motion profiles.

Efficiently Closing Loops in LiDAR-Based SLAM Using Point Cloud Density Maps

TL;DR

The paper tackles robust loop closure in outdoor LiDAR-based SLAM across diverse sensors and motion patterns. It introduces a density-preserving BEV representation of ground-aligned local maps, from which ORB features are extracted and stored in an HBST binary-descriptor database with self-similarity pruning to combat perceptual aliasing. Loop closures are validated via 2D BEV-RANSAC alignment and fused into a full 3D transform using ground-alignment transforms, enabling cross-platform, multi-session, and multi-LiDAR map alignment. Extensive experiments on public and self-recorded datasets demonstrate high precision, strong cross-sensor transfer, and real-time capability, with ablations showing the benefits of ground alignment and pruning. The work provides a practical, open-source solution for robust LiDAR-based place recognition and loop closure in SLAM.

Abstract

Consistent maps are key for most autonomous mobile robots. They often use SLAM approaches to build such maps. Loop closures via place recognition help maintain accurate pose estimates by mitigating global drift. This paper presents a robust loop closure detection pipeline for outdoor SLAM with LiDAR-equipped robots. The method handles various LiDAR sensors with different scanning patterns, field of views and resolutions. It generates local maps from LiDAR scans and aligns them using a ground alignment module to handle both planar and non-planar motion of the LiDAR, ensuring applicability across platforms. The method uses density-preserving bird's eye view projections of these local maps and extracts ORB feature descriptors from them for place recognition. It stores the feature descriptors in a binary search tree for efficient retrieval, and self-similarity pruning addresses perceptual aliasing in repetitive environments. Extensive experiments on public and self-recorded datasets demonstrate accurate loop closure detection, long-term localization, and cross-platform multi-map alignment, agnostic to the LiDAR scanning patterns, fields of view, and motion profiles.
Paper Structure (36 sections, 8 equations, 14 figures, 8 tables)

This paper contains 36 sections, 8 equations, 14 figures, 8 tables.

Figures (14)

  • Figure 1: An example of loop closures detected between two sequences recorded with different LiDAR sensor platforms with a revisit interval of 2 weeks. In blue is the Backpack sequence, recorded in a campus environment with a Hesai Pandar-128 LiDAR mounted on a backpack. In red is the Car sequence, recorded in the city with an Ouster OS1-128 LiDAR. Both trajectories were individually optimized through a pose-graph with in-session loop closure constraints obtained from our pipeline. We used our loop closure pipeline to detect closures between these two sequences, which have little overlap, and align the two trajectories using the multi-session loop closure constraints. The overlapping areas are highlighted by small rectangles, and the corresponding loop closure from these areas is shown in the enlarged rectangles.
  • Figure 2: An overview of our pipeline for loop closure detection and alignment. Given an input stream of point clouds ${{\hbox{\sffamily\slshape{P}}}}_{i}^{}$, with corresponding odometry estimate ${}^{w}{{\hbox{\sffamily{T}}}}_{i}$, (1) we generate a query local map ${{\hbox{\sffamily\slshape{M}}}}_{q}^{\,g}$ based on travel displacement criteria. This local map is transformed by ${}^{g}{{\hbox{\sffamily{T}}}}_{q,i}$ such that the ground plane in the local map is aligned with the xy-plane of the reference frame. (2) Then, we project the ground-aligned local map ${{\hbox{\sffamily\slshape{M}}}}_{q}^{\,g}$ on the local xy-plane, from a bird's eye view, to obtain a 2D density image ${\hbox{\sffamily\slshape{I}}}_q$. (3) We extract ORB feature descriptors ${\hbox{\sffamily\slshape{D}}}_q$ from the density image and perform a self-similarity pruning to remove the repetitive features. (4) These feature descriptors are incrementally inserted into a binary search tree database. This database returns feature matches between a query local map ${{\hbox{\sffamily\slshape{M}}}}_{q}^{\,g}$ with feature descriptors ${\hbox{\sffamily\slshape{D}}}_q$ and reference local maps ${{\hbox{\sffamily\slshape{M}}}}_{r}^{\,g}$ with feature descriptors ${\hbox{\sffamily\slshape{D}}}_r$. These feature matches serve as the initial set of loop closure candidates. (5) We perform a geometric verification and alignment of these loop closure candidates using a RANSAC scheme, which gives us the number of inlier matches and the corresponding 2D transform ${\hbox{\sffamily{T}}}_{\text{BEV{}}}$. The candidates are classified as a loop closure if we obtain a minimum number of inliers. (6) Our pipeline also provides a relative 3D transform ${}^{q}{{\hbox{\sffamily{T}}}}_{r}$ for the initial alignment of the two local maps ${{\hbox{\sffamily\slshape{M}}}}_{q}^{\,g}$ and ${{\hbox{\sffamily\slshape{M}}}}_{r}^{\,g}$, which a subsequent pose-graph optimizer can use.
  • Figure 3: A block diagram showcasing the composition of a local map ${{\hbox{\sffamily\slshape{M}}}}_{m}^{\,i}$, generated using point clouds $\{{{\hbox{\sffamily\slshape{P}}}}_{i}^{},\,\ldots,\,{{\hbox{\sffamily\slshape{P}}}}_{i+k-1}^{}\}$ registered with corresponding odometry pose estimates $\{{}^{w}{{\hbox{\sffamily{T}}}}_{i},\,\ldots,\,{}^{w}{{\hbox{\sffamily{T}}}}_{i+k-1}\}$. The local map is referenced to the local coordinate frame of the first scan in this local map, as highlighted in blue.
  • Figure 4: A comparison of data from LiDAR sensors with different scanning patterns and field of views. The first row shows a single scan from an Ouster OS2-128 LiDAR with a $360{\hbox{$^\circ$}}\times45{\hbox{$^\circ$}}$ FoV and its corresponding local map. The second row shows a Livox Avia LiDAR with a $70{\hbox{$^\circ$}}\times77{\hbox{$^\circ$}}$ FoV and its corresponding local map. The similar structural features across local maps are highlighted with ellipses.
  • Figure 5: Effect of ground alignment on a local map generated from a handheld LiDAR sensor with non-planar motion. The colors of the points represent their z-coordinates in the local reference frame. Left: Our ground alignment approach samples ground points ${{\hbox{\sffamily\slshape{G}}}}_{m}^{\,i}$ (highlighted in red) from the local map ${{\hbox{\sffamily\slshape{M}}}}_{m}^{\,i}$ and computes an alignment ${}^{g}{{\hbox{\sffamily{T}}}}_{m,i}$ to the xy-plane. Right: The ground-aligned local map ${{\hbox{\sffamily\slshape{M}}}}_{m}^{\,g}$.
  • ...and 9 more figures