Component-based SLAM in RTAB-map

SLAM is widely used in the development of new autonomous robots. It has many applications like: self-driving cars, autonomous cleaning robots, inspection, exploration, etc. Nowadays, there are several open-source SLAM frameworks that contribute to the research of new technologies. However, the reusability and adaptability of most of the frameworks is very limited. As a consequence, the implementation of new sensors and algorithms requires a significant effort, adding even months to every new development.

This project studies modular SLAM, which aims to improve the reusability of SLAM. Most of the related work focus on creating completely new frameworks, which reduces the chances of other researchers and developers to use their designs. For this reason, the main goal of this project is to design and implement a modular SLAM framework, compatible with the state of the art opensource solutions. For this task, RTAB-Map was selected, which is widely used by the community and previously studied in the RaM department.

In this project, the modularity issues in RTAB-Map are analyzed to find a possible solution. The main contribution of this project is the design and implementation of a modular SLAM framework, capable of working with RTAB-Map. The design consists of a back-end, which performs the tasks of creating, storing and optimizing the pose-graph. In order to create the pose-graph, the back-end is capable of communicating with an arbitrary number of front-ends. Every front-end is provided with a set of commands to create the entities of the graph. The framework is sensor agnostic and can easily work with any kind of sensor system that uses pose-to-pose or pose-to-landmark constraints.

During this project it was also implemented a client-server UDP communication protocol to allow inter-process communication, a ROS interface and three front-end modules for processing odometry and Apriltags landmark data. These modules, together with a visualization tool are used for testing the proposed design in different situations with different sensor data. The proposed framework proves to be able of using the information generated by RTAB-Map, and improve the trajectory estimation when adding more sensor systems.

The usage of the modular SLAM framework together with RTAB-Map allows a much faster implementation of new sensors and algorithms while being capable of using most of the functionality in sensor processing available in RTAB-Map.

To join the presentation via Microsoft Teams click here