Table of Contents
Fetching ...

FastLoop: Parallel Loop Closing with GPU-Acceleration in Visual SLAM

Soudabeh Mohammadhashemi, Shishir Gopinath, Kimia Khabiri, Parsa Hosseininejad, Karthik Dantu, Steven Y. Ko

Abstract

Visual SLAM systems combine visual tracking with global loop closure to maintain a consistent map and accurate localization. Loop closure is a computationally expensive process as we need to search across the whole map for matches. This paper presents FastLoop, a GPU-accelerated loop closing module to alleviate this computational complexity. We identify key performance bottlenecks in the loop closing pipeline of visual SLAM and address them through parallel optimizations on the GPU. Specifically, we use task-level and data-level parallelism and integrate a GPU-accelerated pose graph optimization. Our implementation is built on top of ORB-SLAM3 and leverages CUDA for GPU programming. Experimental results show that FastLoop achieves an average speedup of 1.4x and 1.3x on the EuRoC dataset and 3.0x and 2.4x on the TUM-VI dataset for the loop closing module on desktop and embedded platforms, respectively, while maintaining the accuracy of the original system.

FastLoop: Parallel Loop Closing with GPU-Acceleration in Visual SLAM

Abstract

Visual SLAM systems combine visual tracking with global loop closure to maintain a consistent map and accurate localization. Loop closure is a computationally expensive process as we need to search across the whole map for matches. This paper presents FastLoop, a GPU-accelerated loop closing module to alleviate this computational complexity. We identify key performance bottlenecks in the loop closing pipeline of visual SLAM and address them through parallel optimizations on the GPU. Specifically, we use task-level and data-level parallelism and integrate a GPU-accelerated pose graph optimization. Our implementation is built on top of ORB-SLAM3 and leverages CUDA for GPU programming. Experimental results show that FastLoop achieves an average speedup of 1.4x and 1.3x on the EuRoC dataset and 3.0x and 2.4x on the TUM-VI dataset for the loop closing module on desktop and embedded platforms, respectively, while maintaining the accuracy of the original system.
Paper Structure (26 sections, 6 figures, 1 table)

This paper contains 26 sections, 6 figures, 1 table.

Figures (6)

  • Figure 1: Loop Closing workflow in ORB-SLAM3.
  • Figure 2: Overview of the loop closing pipeline in FastLoop. The upper section illustrates modules executed on the CPU, whereas the lower section shows those running on the GPU. The arrows depict how data moves between components. Keyframes are maintained in GPU memory. White blocks denote components that were originally executed on the CPU but are parallelized in FastLoop.
  • Figure 3: Average time spent in different sections of Loop Correction in ORB-SLAM3.
  • Figure 4: Speedup of graph optimization versus the number of poses and edges.
  • Figure 5: Trajectory comparison between FastLoop and ORB-SLAM3 in Magistrale1.
  • ...and 1 more figures