MOLA
Framework modulaire C++/ROS 2 pour l'odométrie LiDAR, le SLAM et la localisation
Licence
- core: GPL 3.0
- some packages: BSD 3-Clause
Licences mixtes : les modules principaux sont sous GPL-3.0, certains paquets sous BSD-3-Clause. Les conditions de licence de chaque paquet figurent dans son fichier package.xml.
Aperçu
MOLA (Modular Optimization framework for Localization and mApping) est un framework moderne en C++ et ROS 2 pour construire des pipelines configurables d'odométrie LiDAR, d'odométrie LiDAR-inertielle (LIO) et de SLAM. Son architecture modulaire permet aux chercheurs et ingénieurs d'interchanger les composants — des filtres de nuages de points aux détecteurs de fermeture de boucle — sans réécrire l'ensemble du pipeline. MOLA prend en charge plusieurs modes de fonctionnement, notamment la cartographie, la localisation seule et le SLAM complet, avec des capacités natives de géoréférencement pour le déploiement en conditions réelles.
MOLA est un système modulaire de localisation et de cartographie construit autour de pipelines configurables définis en YAML. Plutôt que de fournir une solution SLAM monolithique unique, MOLA vous permet de composer des pipelines à partir de modules interchangeables : moteurs d'odométrie LiDAR, estimateurs d'état, filtres de nuages de points, détecteurs de fermeture de boucle et représentations de cartes. Le framework inclut mola_lidar_odometry pour le traitement LiDAR 3D, mp2p_icp pour l'alignement et le filtrage de nuages de points, et mola_state_estimation pour la fusion de capteurs. Il s'intègre nativement avec ROS 2 (Humble, Jazzy, Rolling) et peut également fonctionner de manière autonome. Les cas d'utilisation démontrés incluent le SLAM automobile (KITTI), l'inventaire forestier, la cartographie intérieure par sac à dos, la cartographie aérienne par drone et la documentation de serres.
Pourquoi c'est important
La plupart des systèmes SLAM sont fortement couplés — modifier un composant signifie réarchitecturer l'ensemble. MOLA rompt avec ce modèle grâce à une conception véritablement modulaire où chaque composant (odométrie, ICP, fermeture de boucle, format de carte) peut être configuré ou remplacé indépendamment via des fichiers YAML. Cela le rend pratique tant pour la recherche (tester rapidement de nouveaux algorithmes dans un pipeline réel) que pour la production (adapter les composants à des configurations de capteurs spécifiques). Publié dans The International Journal of Robotics Research (2025), il représente une approche mature et validée académiquement du problème du SLAM.
Le problème résolu
Les frameworks SLAM existants sont généralement monolithiques — les chercheurs qui souhaitent tester un nouvel algorithme de fermeture de boucle ou un filtre de nuages de points doivent forker l'ensemble du code source et contourner des composants internes fortement couplés. MOLA fournit des interfaces propres entre les étapes du pipeline afin que les composants individuels puissent être développés, testés et interchangés indépendamment.
Points clés
- Pipelines modulaires configurés en YAML — interchangez les composants d'odométrie LiDAR, d'ICP, de fermeture de boucle et de carte sans modifier le code
- Support natif de ROS 2 (Humble, Jazzy, Rolling) ainsi qu'un fonctionnement autonome
- Prend en charge l'odométrie LiDAR, l'odométrie LiDAR-inertielle, le SLAM complet et les modes de localisation seule
- Géoréférencement intégré pour les systèmes de coordonnées du monde réel
- Publié dans IJRR 2025 avec des benchmarks complets face à l'état de l'art
Pour qui
- Chercheurs en robotique travaillant sur le SLAM et la localisation
- Ingénieurs en robotique de terrain déployant la navigation basée sur LiDAR
- Développeurs de véhicules autonomes ayant besoin de pipelines d'odométrie configurables
- Professionnels de la topographie et de la cartographie utilisant des plateformes LiDAR mobiles
Limites
- Axé sur le LiDAR — pas de support natif du SLAM visuel (pipelines caméra uniquement)
- Le code source en C++ nécessite une familiarité avec les systèmes de build CMake/colcon
- La documentation suppose une connaissance de ROS 2
- La double licence GPL-3.0/BSD-3-Clause peut compliquer l'utilisation commerciale des modules GPL