pySLAM: An Open-Source, Modular, and Extensible Framework for SLAM

Luigi Freda
2/17/2025
cs.ROcs.CV

No official code found. Best implementation: luigifreda/pyslam (3,372 stars, GPL-3.0, last commit 2026-03-30).

Abstract

pySLAM is an open-source Python framework for Visual SLAM that supports monocular, stereo, and RGB-D camera inputs. It offers a flexible and modular interface, integrating a broad range of both classical and learning-based local features. The framework includes multiple loop closure strategies, a volumetric reconstruction pipeline, and support for depth prediction models. It also offers a comprehensive set of tools for experimenting with and evaluating visual odometry and SLAM modules. Designed for both beginners and experienced researchers, pySLAM emphasizes rapid prototyping, extensibility, and reproducibility across diverse datasets. Its modular architecture facilitates the integration of custom components and encourages research that bridges traditional and deep learning-based approaches. Community contributions are welcome, fostering collaborative development and innovation in the field of Visual SLAM. This document presents the pySLAM framework, outlining its main components, features, and usage.

View on arXivView PDF

Code Implementations(1)

luigifreda/pyslamCommunity100%
GPL-3.0

pySLAM is a hybrid Python/C++ Visual SLAM pipeline supporting monocular, stereo, and RGB-D cameras. It provides a broad set of modern local and global feature extractors, multiple loop-closure strategies, a volumetric reconstruction module, integrated depth-prediction models, and semantic segmentation capabilities for enhanced scene understanding.

3,372533C, C++Apr 6, 20196 months agoGPL-3.0
3d-reconstructiondepth-estimationdepth-predictionend-to-end-reconstructionfeature-matching+15 more

Similar Papers

Cite this paper

@article{freda2025pyslam,
  title  = {pySLAM: An Open-Source, Modular, and Extensible Framework for SLAM},
  author = {Luigi Freda},
  year   = {2025},
  eprint = {2502.11955},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2502.11955v3}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2502.11955.svg)](https://codeofpaper.com/paper/2502.11955)

Discussion