MOLA
Framework modular en C++/ROS 2 para odometría LiDAR, SLAM y localización
Licencia
- core: GPL 3.0
- some packages: BSD 3-Clause
Licencias mixtas: los módulos principales son GPL-3.0 y algunos paquetes son BSD-3-Clause. Los términos de licencia de cada paquete figuran en sus respectivos archivos package.xml.
Resumen
MOLA (Modular Optimization framework for Localization and mApping) es un framework moderno en C++ y ROS 2 para construir pipelines configurables de odometría LiDAR, odometría LiDAR-inercial (LIO) y SLAM. Su arquitectura modular permite a investigadores e ingenieros intercambiar componentes — desde filtros de nubes de puntos hasta detectores de cierre de bucle — sin reescribir el pipeline completo. MOLA soporta múltiples modos de operación incluyendo mapeo, solo localización y SLAM completo, con capacidades nativas de georreferenciación para despliegue en el mundo real.
MOLA es un sistema modular para localización y mapeo construido alrededor de pipelines configurables definidos en YAML. En lugar de proporcionar una única solución monolítica de SLAM, MOLA permite componer pipelines a partir de módulos intercambiables: motores de odometría LiDAR, estimadores de estado, filtros de nubes de puntos, detectores de cierre de bucle y representaciones de mapas. El framework incluye mola_lidar_odometry para el procesamiento de LiDAR 3D, mp2p_icp para el registro y filtrado de nubes de puntos, y mola_state_estimation para la fusión de sensores. Se integra nativamente con ROS 2 (Humble, Jazzy, Rolling) y también puede ejecutarse de forma independiente. Los casos de uso demostrados incluyen SLAM automotriz (KITTI), inventario forestal, mapeo interior con mochila, mapeo aéreo con drones y documentación de invernaderos.
Por qué importa
La mayoría de los sistemas SLAM están fuertemente acoplados — cambiar un componente significa rediseñar todo el sistema. MOLA rompe este patrón con un diseño verdaderamente modular donde cada componente (odometría, ICP, cierre de bucle, formato de mapa) puede configurarse o reemplazarse de forma independiente mediante archivos YAML. Esto lo hace práctico tanto para investigación (probar rápidamente nuevos algoritmos en un pipeline real) como para producción (intercambiar componentes para adaptarse a configuraciones específicas de sensores). Publicado en The International Journal of Robotics Research (2025), representa un enfoque maduro y validado académicamente para el problema de SLAM.
Qué problema resuelve
Los frameworks de SLAM existentes son típicamente monolíticos — los investigadores que quieren probar un nuevo algoritmo de cierre de bucle o filtro de nubes de puntos deben bifurcar toda la base de código y modificar componentes internos fuertemente acoplados. MOLA proporciona interfaces limpias entre las etapas del pipeline para que los componentes individuales puedan desarrollarse, probarse e intercambiarse de forma independiente.
Puntos clave
- Pipelines modulares configurados por YAML — intercambia componentes de odometría LiDAR, ICP, cierre de bucle y mapas sin cambios en el código
- Soporte nativo de ROS 2 (Humble, Jazzy, Rolling) más operación independiente
- Soporta odometría LiDAR, odometría LiDAR-inercial, SLAM completo y modos de solo localización
- Georreferenciación integrada para marcos de coordenadas del mundo real
- Publicado en IJRR 2025 con benchmarks exhaustivos frente al estado del arte
Para quién es
- Investigadores en robótica que trabajan en SLAM y localización
- Ingenieros de robótica de campo que despliegan navegación basada en LiDAR
- Desarrolladores de vehículos autónomos que necesitan pipelines de odometría configurables
- Profesionales de topografía y cartografía que utilizan plataformas LiDAR móviles
Limitaciones
- Enfocado en LiDAR — sin soporte nativo de SLAM visual (pipelines solo con cámara)
- La base de código en C++ requiere familiaridad con los sistemas de compilación CMake/colcon
- La documentación asume conocimientos de ROS 2
- La licencia mixta GPL-3.0/BSD-3-Clause puede complicar el uso comercial de los módulos GPL