Open Source Robotics

Uma coleção selecionada de projetos, ferramentas e software de robótica de código aberto de alta qualidade.

MOLA

Framework modular em C++/ROS 2 para odometria LiDAR, SLAM e localização

Licença

  • core: GPL 3.0
  • some packages: BSD 3-Clause

Licenciamento misto: os módulos principais são GPL-3.0 e alguns pacotes são BSD-3-Clause. Os termos de licença de cada pacote constam nos respectivos arquivos package.xml.

Visão geral

MOLA (Modular Optimization framework for Localization and mApping) é um framework moderno em C++ e ROS 2 para construir pipelines configuráveis de odometria LiDAR, odometria LiDAR-inercial (LIO) e SLAM. Sua arquitetura modular permite que pesquisadores e engenheiros troquem componentes — de filtros de nuvem de pontos a detectores de fechamento de loop — sem reescrever todo o pipeline. MOLA suporta múltiplos modos de operação, incluindo mapeamento, apenas localização e SLAM completo, com capacidades nativas de georreferenciamento para implantação no mundo real.

MOLA é um sistema modular para Localização e Mapeamento construído em torno de pipelines configuráveis definidos em YAML. Em vez de fornecer uma solução SLAM monolítica única, MOLA permite compor pipelines a partir de módulos intercambiáveis: motores de odometria LiDAR, estimadores de estado, filtros de nuvem de pontos, detectores de fechamento de loop e representações de mapa. O framework inclui mola_lidar_odometry para processamento de LiDAR 3D, mp2p_icp para registro e filtragem de nuvens de pontos, e mola_state_estimation para fusão de sensores. Ele se integra nativamente com ROS 2 (Humble, Jazzy, Rolling) e também pode ser executado de forma independente. Casos de uso demonstrados incluem SLAM automotivo (KITTI), inventário florestal, mapeamento interno com mochila, mapeamento aéreo com drones e documentação de estufas.

Por que importa

A maioria dos sistemas SLAM é fortemente acoplada — alterar um componente significa reestruturar todo o sistema. MOLA quebra esse padrão com um design verdadeiramente modular, onde cada componente (odometria, ICP, fechamento de loop, formato de mapa) pode ser configurado ou substituído independentemente via arquivos YAML. Isso o torna prático tanto para pesquisa (testar rapidamente novos algoritmos em um pipeline real) quanto para produção (trocar componentes para corresponder a configurações específicas de sensores). Publicado no The International Journal of Robotics Research (2025), ele representa uma abordagem madura e academicamente validada para o problema de SLAM.

Problema que resolve

Frameworks SLAM existentes são tipicamente monolíticos — pesquisadores que desejam testar um novo algoritmo de fechamento de loop ou filtro de nuvem de pontos precisam fazer fork de toda a base de código e modificar componentes internos fortemente acoplados. MOLA fornece interfaces limpas entre os estágios do pipeline para que componentes individuais possam ser desenvolvidos, testados e substituídos independentemente.

Pontos principais

  • Pipelines modulares configurados por YAML — troque odometria LiDAR, ICP, fechamento de loop e componentes de mapa sem alterar código
  • Suporte nativo a ROS 2 (Humble, Jazzy, Rolling) além de operação independente
  • Suporta odometria LiDAR, odometria LiDAR-inercial, SLAM completo e modos apenas de localização
  • Georreferenciamento integrado para sistemas de coordenadas do mundo real
  • Publicado no IJRR 2025 com benchmarks abrangentes em comparação com o estado da arte

Para quem é

  • Pesquisadores de robótica trabalhando com SLAM e localização
  • Engenheiros de robótica de campo implantando navegação baseada em LiDAR
  • Desenvolvedores de veículos autônomos que precisam de pipelines de odometria configuráveis
  • Profissionais de levantamento e mapeamento usando plataformas LiDAR móveis

Limitações

  • Focado em LiDAR — sem suporte nativo a SLAM visual (pipelines apenas com câmera)
  • Base de código em C++ requer familiaridade com sistemas de build CMake/colcon
  • A documentação pressupõe conhecimento de ROS 2
  • Licenciamento misto GPL-3.0/BSD-3-Clause pode complicar o uso comercial dos módulos GPL

Este site requer JavaScript. Por favor, habilite o JavaScript para explorar nossos projetos de robótica.