Open Source Robotics

Une collection organisée de projets, outils et logiciels robotiques open source de haute qualité.

LONER: LiDAR Only Neural Representations for Real-Time SLAM

Auteurs: Seth Isaacson, Pou-Chun Kung, Mani Ramanagopal, Ram Vasudevan, Katherine A. Skinner · RA-L 2023

Licences

  • Accès libre
  • Article: CC BY 4.0

Tout ce qui suit s'appuie sur l'article complet sous sa licence CC BY 4.0 ; sa figure est montrée en citant les auteurs.

En bref

SLAM en temps réel à partir du seul LiDAR avec une carte implicite neuronale : suivi par ICP, optimisation conjointe de la pose et de la carte sur des images clés, et une perte à marge dynamique fondée sur la divergence JS pour un apprentissage en ligne plus rapide et plus net.

Pourquoi c'est important

Il estime conjointement, en temps réel et à partir du seul LiDAR, la trajectoire du capteur et une carte dense, et la carte peut être rendue hors ligne en images de profondeur depuis de nouveaux points de vue ou en maillages. L'article compare la perte à marge dynamique à d'autres pertes utilisées dans les cadres implicites neuronaux supervisés par la profondeur et constate qu'elle converge plus vite et reconstruit la géométrie plus précisément.

Problème

Les cartes implicites neuronales fournissent un modèle de scène continu qui peut être interrogé partout sur l'occupation, mais les méthodes existantes de cartographie implicite LiDAR exigent des poses de vérité terrain ou fonctionnent plus lentement que le temps réel, et les systèmes SLAM neuronaux en temps réel utilisent des caméras RGB ou RGB-D et fonctionnent surtout en intérieur. Pendant l'entraînement en ligne, les différentes régions de la carte sont apprises à des degrés différents, si bien qu'une marge unique pour tous les rayons, comme dans la perte LOS, fait oublier au réseau la géométrie apprise et le fait converger lentement.

Solution proposée

LONER exécute en parallèle des fils de suivi et de cartographie : le suivi décime les balayages à 5 Hz et estime l'odométrie par ICP point-à-plan, sans IMU ; la cartographie ajoute une image clé toutes les 3 s et optimise conjointement un MLP doté d'une grille de caractéristiques hiérarchique et les poses de 8 images clés (la courante plus des images passées tirées au hasard). La perte combine une perte à marge dynamique de Jensen-Shannon, qui donne à chaque rayon une marge plus grande là où la carte est mal apprise et plus petite là où elle est bien apprise, avec une perte de profondeur sous-pondérée et une perte de ciel déterminée à partir des trous dans les retours LiDAR.

Idées clés

  • Fixer la marge de chaque rayon à partir de la divergence JS entre les distributions cible et prédite de terminaison du rayon permet aux nouvelles régions d'apprendre vite tout en gardant nette la géométrie déjà apprise.
  • La perte de profondeur seule donne une géométrie floue avec un temps d'entraînement limité mais aide à combler les trous, elle est donc conservée avec un faible poids (λ₁ = 5 × 10⁻⁶).
  • Utiliser l'ICP plutôt que l'inverse-NeRF pour le suivi économise du temps GPU pour la cartographie et garde le système en temps réel ; l'étape de cartographie affine ensuite les poses ICP.
  • Les rayons de ciel sont trouvés sans caméra, à partir des trous de l'image de profondeur LiDAR qui pointent au-dessus de l'horizon, en supposant que le capteur est à peu près horizontal à l'initialisation.
  • Sélectionner au hasard des images clés passées pour la fenêtre d'optimisation fonctionne généralement mieux que de n'utiliser que les images clés récentes ou un mélange moitié récentes, moitié aléatoires.

Principaux résultats

  • Erreur de pose absolue RMS de la trajectoire (m), LONER contre LeGO-LOAM : MCR 0,029 contre 0,052, Canteen 0,064 contre 0,129, Garden 0,056 contre 0,161, Quad 0,130 contre 0,126.
  • NICE-SLAM, exécuté dans une configuration hors ligne avec davantage d'échantillons et d'itérations, n'a suivi que la petite séquence MCR (0,248 m) et a échoué sur Canteen et Garden.
  • Qualité de carte sur la séquence intérieure MCR, LONER contre SHINE Mapping (qui utilise des poses de vérité terrain) : exactitude 0,186 contre 0,164 m, complétude 0,069 contre 0,075 m, précision 0,473 contre 0,624, rappel 0,932 contre 0,757 ; sur Quad, exactitude 0,380 contre 0,301 m, complétude 0,373 contre 0,148 m, précision 0,327 contre 0,453, rappel 0,809 contre 0,717.
  • Temps d'exécution sur un CPU AMD Ryzen 5950X et un GPU NVIDIA A6000 : 14 ms par étape de suivi ; 50 itérations de cartographie par image clé prennent 2,79 s (environ 56 ms chacune, environ 18 Hz), dans l'intervalle de 3 s entre images clés.
  • Ablation des pertes (Table V), séquence Quad : système complet L1 de profondeur 0,880 et erreur de pose 0,130 m, contre 2,265 et 0,779 avec la seule perte de profondeur, 1,747 et 0,570 avec perte de profondeur plus perte LOS à décroissance fixe, et 2,262 et 0,154 pour LOS à marge dynamique sans perte de profondeur.
  • Entraînée sur un seul balayage du simulateur CARLA, la perte JS a atteint une faible erreur de profondeur plus vite que les pertes LOS à décroissance de marge lente, moyenne et rapide et que la perte de profondeur seule.

Limites

  • Les objets dynamiques ne sont pas gérés ; les séquences de test ont été choisies pour contenir peu d'objets dynamiques, et les auteurs disent que des travaux supplémentaires sont nécessaires pour les environnements très dynamiques.
  • Aucune donnée inertielle n'est utilisée ; les auteurs notent qu'elle pourrait aider le suivi lors de rotations rapides et dans des scènes pauvres en caractéristiques où le LiDAR est moins informatif.
  • Un fonctionnement à l'échelle d'une ville pourrait nécessiter d'autres plongements des caractéristiques d'entrée et d'autres heuristiques de sélection des rayons (selon les auteurs).
  • La carte ne contient que de la géométrie ; ajouter le RGB sans perdre les performances temps réel relève de travaux futurs (selon les auteurs).
  • Sur la séquence extérieure Quad, SHINE Mapping (avec poses de vérité terrain) a produit une géométrie plus complète, capturant des piliers que LONER omet, et l'erreur de trajectoire de LeGO-LOAM était légèrement plus faible.

Impact sur le domaine

Lauréat du RA-L 2024 Best Paper Award et cité 56 fois. Les auteurs publient l'intégralité des données d'évaluation sur la page du projet, qui renvoie aussi au dépôt de code.

Résumé

Cet article propose LONER, le premier algorithme de SLAM LiDAR en temps réel utilisant une représentation de scène implicite neuronale. Les méthodes existantes de cartographie implicite pour le LiDAR montrent des résultats prometteurs en reconstruction à grande échelle, mais exigent des poses de vérité terrain ou fonctionnent plus lentement que le temps réel. À l'inverse, LONER utilise des données LiDAR pour entraîner un MLP à estimer une carte dense en temps réel, tout en estimant simultanément la trajectoire du capteur. Pour atteindre des performances temps réel, cet article propose une nouvelle fonction de perte issue de la théorie de l'information qui tient compte du fait que différentes régions de la carte peuvent être apprises à des degrés divers au cours de l'entraînement en ligne. La méthode proposée est évaluée qualitativement et quantitativement sur deux jeux de données open source. Cette évaluation montre que la fonction de perte proposée converge plus vite et conduit à une reconstruction géométrique plus précise que les autres fonctions de perte utilisées dans les cadres implicites neuronaux supervisés par la profondeur. Enfin, cet article montre que LONER estime des trajectoires de manière compétitive avec les méthodes SLAM LiDAR de l'état de l'art, tout en produisant des cartes denses compétitives avec les méthodes existantes de cartographie implicite en temps réel qui utilisent des poses de vérité terrain.

Liens

  • arXiv 2309.04937: https://arxiv.org/abs/2309.04937
  • DOI 10.1109/LRA.2023.3324521: https://doi.org/10.1109/LRA.2023.3324521
  • PDF: https://arxiv.org/pdf/2309.04937v1
  • Code: https://github.com/umautobots/LONER
  • Page du projet: https://umautobots.github.io/loner

Ce site nécessite JavaScript. Veuillez activer JavaScript pour explorer nos projets de robotique open source.