MOLA
MOLA is a Modular system for Localization and Mapping.
- Get started:
Follow the tutorials: Building your first map, Mapping and localization.
Read 3D LiDAR odometry documentation.
See Use cases for examples of use.
See Installing and how to cite it.
See videos on YouTube.
Installing
How to install all MOLA modules:
From ROS 2 repositories
Recommended: This is the easiest way to install MOLA.
In Debian/Ubuntu systems, activate your ROS environment (setup.bash
) if not done automatically
in your ~./bashrc
file, then just run:
# Install core MOLA modules and 3D LiDAR odometry:
sudo apt install \
ros-$ROS_DISTRO-mola \
ros-$ROS_DISTRO-mola-lidar-odometry
# (OPTIONAL) Install example small datasets to run demos/unit tests:
sudo apt install ros-$ROS_DISTRO-mola-test-datasets
Check if all new nodes and apps are visible:
# For example, let's launch the mm map viewer.
# If a GUI app is opened, it means installation was successful.
mm-viewer
# You can also test the mola LO cli interface:
mola-lidar-odometry-cli --help
These are the versions available from ROS build farms for each main MOLA component:
Repository |
|
|
|
---|---|---|---|
MOLA |
|||
mola_lidar_odometry |
|||
mp2p_icp |
EOL ROS distribution:
Build from sources
MOLA uses colcon
so you need to install it first.
Note that despite ROS 2 integration, a full ROS 2 installation is actually not required for MOLA, only colcon
and ament
.
Clone the git repositories, including the submodules:
mkdir -p ~/ros2_mola_ws/src/
cd ~/ros2_mola_ws/src/
# Main MOLA modules:
git clone https://github.com/MOLAorg/mola_common.git
git clone https://github.com/MOLAorg/mp2p_icp.git --recursive
git clone https://github.com/MOLAorg/mola.git --recursive
git clone https://github.com/MOLAorg/mola_test_datasets.git
# MOLA lidar odometry package:
git clone https://github.com/MOLAorg/mola_lidar_odometry.git --recursive
Make sure you have all dependencies installed (make sure of having rosdep already installed):
cd ~/ros2_mola_ws/
rosdep install --from-paths src --ignore-src -r -y
Now, compile as usual with colcon:
cd ~/ros2_mola_ws/
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=RelWithDebInfo
Next, activate the new environment and check if all new modules are visible:
cd ~/ros2_mola_ws/
. install/setup.bash
# For example, let's launch the mm map viewer:
mm-viewer
How to cite MOLA
The mola_lidar_odometry
system was presented in [BC24]:
J.L. Blanco, A flexible framework for accurate LiDAR odometry, map manipulation, and localization, in ArXiV, 2024.
The basics of the MOLA framework were introduced in [BC19a].
J.L. Blanco, A Modular Optimization Framework for Localization and Mapping, in Robotics: Science and Systems (RSS), 2019.
Use cases
Next follow some examples of applications of MOLA SLAM solutions with 3D LiDAR Odometry.
Automotive SLAM
An example of urban SLAM from the KITTI dataset:
See how to launch this demo yourself.
Forest inventory (3D mapping)
See paper Aguilar et al. [ABN+24].
Backpack 3D mapping indoors
Mapping from a drone
Using the HILTI 2021 dataset:
Greenhouse mapping
See paper Cañadas Aránega et al. [CanadasAranegaBCMRD24].