GLIM
Framework de SLAM lidar 3D accéléré par GPU pour tout capteur de distance, développé à l'AIST
Licence
MIT
Aperçu
GLIM est un framework de localisation et de cartographie 3D basé sur nuages de points, développé par Kenji Koide (AIST, Japon). Il combine un front-end d'odométrie lidar-IMU étroitement couplée avec un back-end d'optimisation globale fondé sur la minimisation de l'erreur de recalage globale, exécute ses noyaux les plus lourds sur GPU, et prend délibérément en charge « n'importe quel capteur de distance » — lidars mécaniques rotatifs, unités solid-state à balayage non répétitif comme Livox, et même caméras RGB-D — au sein d'une architecture extensible et nativement ROS 2.
GLIM scinde le SLAM en un front-end d'estimation d'odométrie et un back-end de cartographie globale, tous deux formulés comme une optimisation de graphe de facteurs sur GTSAM. Le front-end couple étroitement lidar et IMU avec un lissage à retard fixe basé sur keyframes, restant robuste face aux mouvements agressifs ; le back-end effectue une optimisation globale de trajectoire avec des facteurs de coût de mise en correspondance GICP voxélisée accélérés par GPU, fermant les boucles via une approche de minimisation de l'erreur de recalage globale plutôt que par une détection de boucles explicite et fragile. Tout ce qui dépasse le cœur est un plugin : variantes d'odométrie (CPU, GPU, centrée IMU), modules de fermeture de boucle et modules d'extension du dépôt compagnon glim_ext. Le visualiseur interactif est construit sur la bibliothèque Iridescence de l'auteur, des wrappers ROS 2 et ROS 1 sont fournis, et le même pipeline gère les lidars rotatifs Velodyne/Ouster, les unités solid-state Livox et les caméras de profondeur — une amplitude que peu de systèmes SLAM ouverts tentent d'atteindre.
Pourquoi c'est important
GLIM est le successeur le plus complet et activement développé des stacks classiques de SLAM lidar open source : une optimisation globale de niveau recherche et une accélération GPU dans un paquet bien conçu, documenté et extensible par plugins, signé par l'auteur de hdl_graph_slam et small_gicp, dont les bibliothèques sous-tendent déjà une grande partie de l'écosystème ouvert de cartographie lidar.
Le problème résolu
Construire des cartes 3D précises avec des capteurs modernes — lidars solid-state, mouvements de plateforme agressifs, longues trajectoires — brise les hypothèses des systèmes de SLAM lidar plus anciens. La fusion IMU étroitement couplée de GLIM, son optimisation globale accélérée par GPU et sa conception agnostique au capteur gèrent ces cas dans un seul framework.
Points clés
- Odométrie lidar-IMU étroitement couplée, robuste aux mouvements agressifs et aux géométries pauvres
- Le back-end d'optimisation globale minimise l'erreur de recalage sur toute la carte (pas de détecteur de boucles fragile)
- Les facteurs GICP voxélisés accélérés par CUDA rendent l'optimisation globale dense faisable en temps réel
- Agnostique au capteur : lidars rotatifs, unités solid-state Livox et caméras RGB-D
- Architecture à plugins (glim_ext) et wrappers ROS 2/ROS 1 pour une extension et une intégration propres
Pour qui
- Ingénieurs en robotique construisant des pipelines de cartographie 3D
- Chercheurs en SLAM étendant des systèmes à graphes de facteurs
- Développeurs d'AMR et de robots d'extérieur
- Professionnels du relevé topographique et du jumeau numérique utilisant du lidar mobile
Limites
- Les meilleures performances exigent un GPU NVIDIA (les alternatives CPU sont plus lentes)
- IMU requise pour le pipeline standard étroitement couplé
- La mémoire de l'optimisation globale croît avec la taille de la carte sur les très grandes campagnes