Polydesk-logotype
Polydesk.ai — Header

SLAM : cartographie et localisation simultanées

Le SLAM (Simultaneous Localization and Mapping) est la technologie qui permet à un robot ou un véhicule autonome de construire une carte de son environnement tout en estimant simultanément sa propre position dans cette carte, sans connaissance préalable du lieu.

Imaginez que vous êtes parachuté dans un bâtiment inconnu, les yeux bandés, avec seulement un télémètre laser et un carnet de notes. Vous devez dessiner le plan du bâtiment ET savoir où vous êtes sur ce plan, en même temps. C’est exactement ce que fait le SLAM. Cette technologie est fondamentale pour la navigation autonome des robots mobiles, des drones, des véhicules autonomes et de nombreuses applications de réalité augmentée. C’est aussi l’un des composants clés du package Nav2 dans ROS 2.

SLAM en bref
Nom complet
Simultaneous Localization and Mapping
Catégorie
Navigation robotique / Perception computationnelle
Origine
Concept formalisé par Smith, Self et Cheeseman (1986-1990)
Types principaux
LiDAR SLAM, Visual SLAM (VSLAM), Semantic SLAM, Multi-sensor Fusion SLAM
Algorithmes classiques
ORB-SLAM2/3, Cartographer (Google), RTAB-Map, LSD-SLAM, LOAM
Packages ROS 2
slam_toolbox, cartographer_ros, rtabmap_ros
Applications
Robots mobiles, véhicules autonomes, drones, AR/VR, exploration spatiale

Pourquoi le SLAM est un problème difficile

Le SLAM est un problème « œuf-poule » : pour construire une carte précise, il faut savoir où l’on est. Mais pour savoir où l’on est, il faut déjà avoir une carte. Le robot doit résoudre ces deux problèmes simultanément, d’où le nom.

La difficulté est amplifiée par les erreurs cumulatives. Chaque mesure de capteur est légèrement imprécise. Ces petites erreurs s’accumulent au fil du temps (ce qu’on appelle le « drift »), faisant dériver l’estimation de position et déformant progressivement la carte. Les algorithmes SLAM doivent gérer cette accumulation d’erreurs, en particulier grâce à la détection de fermeture de boucle (loop closure) : quand le robot revient à un endroit déjà visité, il peut corriger l’ensemble de sa trajectoire et de sa carte.

Architecture d’un système SLAM

Un système SLAM se décompose en quatre modules principaux :

Module Rôle Techniques
Frontend (odométrie) Estimer le mouvement du robot entre deux instants consécutifs à partir des données capteurs Extraction de features, matching de points, odométrie visuelle, scan matching
Backend (optimisation) Optimiser la trajectoire et la carte pour minimiser les erreurs globales Optimisation par graphe (graph-based), filtre de Kalman étendu (EKF), facteurs
Détection de boucle (loop closure) Déterminer si le robot est revenu à un endroit déjà visité Bag of Words (DBoW2), descripteurs visuels, deep learning
Construction de carte (mapping) Construire et maintenir la représentation de l’environnement Grilles d’occupation, nuages de points 3D, cartes sémantiques

Les types de SLAM

LiDAR SLAM

Le SLAM basé sur LiDAR utilise des capteurs laser qui mesurent la distance aux objets environnants en émettant des faisceaux et en chronométrant leur retour. Les LiDAR produisent des nuages de points 3D d’une grande précision, ce qui en fait le choix dominant pour les véhicules autonomes et les robots d’exploration industrielle.

Les algorithmes LiDAR SLAM classiques incluent LOAM (Lidar Odometry and Mapping), LeGO-LOAM (optimisé pour les robots terrestres), et Cartographer de Google (utilisé dans les robots mobiles commerciaux). Le LiDAR offre une excellente précision mais reste coûteux (de quelques centaines à plusieurs milliers d’euros) et sensible aux conditions météorologiques (pluie, brouillard, neige).

Visual SLAM (VSLAM)

Le VSLAM utilise des caméras (monoculaire, stéréo ou RGB-D / profondeur) comme capteurs principaux. L’avantage : les caméras sont légères, peu coûteuses et fournissent une information visuelle riche (textures, couleurs). L’inconvénient : extraire des informations géométriques 3D fiables à partir d’images 2D est plus complexe qu’avec un LiDAR.

Les algorithmes VSLAM les plus utilisés :

Algorithme Approche Capteur Points forts
ORB-SLAM2/3 Feature-based (extraction de points caractéristiques ORB) Mono, stéréo, RGB-D, IMU Précis, robuste, détection de boucle efficace
LSD-SLAM Semi-dense direct (utilise les gradients d’intensité) Monoculaire Carte semi-dense sans extraction de features
RTAB-Map Appearance-based, gestion mémoire adaptive Stéréo, RGB-D, LiDAR Multi-capteur, gestion de grandes cartes, intégré à ROS
DSO (Direct Sparse Odometry) Direct sparse Monoculaire, stéréo Précision de l’odométrie, faible latence

Semantic SLAM

Le Semantic SLAM enrichit les cartes traditionnelles avec des informations sémantiques : chaque élément de la carte n’est plus seulement un point ou une surface, mais un objet identifié (mur, porte, chaise, piéton, voiture). Cette couche sémantique permet aux robots de « comprendre » leur environnement, pas seulement de le mesurer.

Les recherches récentes combinent des modèles de deep learning (segmentation sémantique, détection d’objets comme YOLO) avec les pipelines SLAM classiques. Les LLM (grands modèles de langage) sont même explorés pour enrichir les cartes avec des descriptions en langage naturel et permettre des instructions comme « va vers la porte à gauche de la bibliothèque ».

Multi-sensor Fusion SLAM

Les systèmes les plus robustes combinent plusieurs capteurs : LiDAR + caméra + IMU (centrale inertielle) + GPS (quand disponible). La fusion multi-capteurs améliore la fiabilité en compensant les faiblesses de chaque capteur. Le LiDAR excelle en géométrie mais manque de texture. La caméra fournit la texture mais peine dans l’obscurité. L’IMU fonctionne dans toutes les conditions mais dérive rapidement. Le GPS fournit une position globale mais manque de précision locale et ne fonctionne pas en intérieur.

L’innovation HS-SLAM (2025) illustre cette tendance : un framework hybride optimisé pour les applications à basse vitesse qui combine données visuelles et inertielles pour une précision en temps réel avec un drift réduit.

Le deep learning dans le SLAM

L’intégration du deep learning transforme chaque composant du SLAM :

Composant SLAM Apport du deep learning Techniques utilisées
Odométrie visuelle Estimation de pose plus robuste, fonctionnement en conditions difficiles CNN, réseaux de flux optique
Extraction de features Points caractéristiques plus discriminants et répétables SuperPoint, R2D2, DISK
Estimation de profondeur Profondeur à partir d’images monoculaires (mono-depth) CNN de profondeur, Vision Transformers
Détection de boucle Reconnaissance de lieux plus robuste aux changements de conditions NetVLAD, descripteurs appris
Segmentation sémantique Identification et filtrage des objets dynamiques (piétons, voitures) YOLO, Mask R-CNN, segmentation panoptique
Reconstruction 3D Cartes 3D denses et réalistes Neural Radiance Fields (NeRF), Gaussian Splatting

Un défi majeur du SLAM en environnement dynamique : les objets en mouvement (piétons, véhicules) faussent les estimations. Les approches récentes (Dynamic SLAM, 2025) utilisent des modèles comme YOLOv10 pour détecter et filtrer les points caractéristiques appartenant à des objets dynamiques, améliorant significativement la précision dans les environnements très changeants.

Applications du SLAM

Robots mobiles et logistique

Les robots AMR (Autonomous Mobile Robots) dans les entrepôts utilisent le SLAM pour naviguer sans balises ni infrastructures fixes. Le package slam_toolbox dans ROS 2 est le standard open source pour cette application. Amazon, Locus Robotics et MiR déploient des flottes de robots basés sur le SLAM à grande échelle.

Véhicules autonomes

Le SLAM est un composant essentiel de la pile logicielle des véhicules autonomes. Il permet de construire des cartes haute définition en temps réel et de se localiser avec une précision centimétrique. Les systèmes commerciaux (Waymo, Tesla) combinent SLAM, GPS haute précision et cartes pré-construites pour une localisation robuste.

Drones

Les drones utilisent le VSLAM pour naviguer en intérieur ou dans des environnements où le GPS est indisponible (sous canopée, dans des tunnels, à l’intérieur de bâtiments). Le SLAM est aussi crucial pour l’inspection autonome d’infrastructures (ponts, lignes électriques, éoliennes).

Réalité augmentée et virtuelle

Les casques AR (Apple Vision Pro, Meta Quest) et les applications AR mobiles (ARKit, ARCore) utilisent le VSLAM pour comprendre l’espace 3D et ancrer des objets virtuels dans le monde réel. La carte 3D construite par le SLAM fournit les informations géométriques nécessaires pour que les objets virtuels « tiennent » dans l’espace.

Exploration et recherche

Le SLAM est utilisé dans l’exploration spatiale (rovers martiens), l’exploration sous-marine (AUV), le sauvetage en milieu hostile (robots de recherche après un tremblement de terre) et la cartographie de mines ou de grottes. Dans ces contextes, le GPS est indisponible et l’environnement est totalement inconnu.

Types de cartes SLAM

Le SLAM ne produit pas un seul type de carte. Le choix de la représentation dépend de l’application et des contraintes du robot :

Type de carte Description Usage typique Complexité
Grille d’occupation 2D Le sol est divisé en cellules marquées libre/occupé/inconnu Robots aspirateurs, AMR de logistique Faible
Nuage de points 3D Ensemble de points 3D mesurant la surface de l’environnement Véhicules autonomes, inspection industrielle Moyenne à élevée
Carte de features Ensemble de points caractéristiques (landmarks) avec descripteurs VSLAM (ORB-SLAM), localisation légère Faible à moyenne
Carte sémantique Objets identifiés et étiquetés (porte, table, mur, piéton) Robots de service, interaction homme-robot Élevée
Carte dense 3D (mesh/NeRF) Reconstruction 3D complète et photoréaliste de la scène AR/VR, jumeaux numériques, cinéma Très élevée
Carte topologique Graphe de lieux connectés (nœuds = pièces, arêtes = passages) Navigation de haut niveau, planification de trajectoire Faible

Les Neural Radiance Fields (NeRF) et le 3D Gaussian Splatting sont les approches les plus récentes pour la reconstruction 3D dans le SLAM. Ils utilisent des réseaux de neurones pour représenter une scène comme un champ continu, permettant des rendus photoréalistes depuis n’importe quel angle. Ces techniques, encore coûteuses en calcul, convergent avec le SLAM pour produire des cartes 3D d’une qualité inégalée, avec des applications en AR/VR et en jumeaux numériques industriels.

Bref historique du SLAM

Le SLAM a une histoire de plus de 35 ans qui reflète l’évolution de la robotique :

Le concept a été formalisé dans les années 1986-1990 par Smith, Self et Cheeseman, avec une approche probabiliste basée sur le filtre de Kalman étendu (EKF-SLAM). Dans les années 2000, les approches par graphe (GraphSLAM) et les filtres à particules (FastSLAM) ont permis de gérer des environnements plus grands. La décennie 2010 a vu l’essor du Visual SLAM avec ORB-SLAM (2015), RTAB-Map, et les premières intégrations de deep learning. Depuis 2020, la tendance est à la fusion multi-capteurs, au Semantic SLAM, et aux représentations neuronales (NeRF). Le SLAM est passé du laboratoire à la production industrielle : les robots aspirateurs, les AMR d’entrepôts et les voitures autonomes l’utilisent quotidiennement.

Défis actuels et tendances

Les principaux défis du SLAM en 2026 sont multiples. La robustesse dans les environnements hautement dynamiques (foules, trafic dense) reste problématique : un piéton qui traverse le champ de vision du robot crée des points caractéristiques « parasites » qui faussent l’estimation de pose. Les approches Dynamic SLAM (2025), basées sur des détecteurs comme YOLOv10, filtrent ces points dynamiques en temps réel, mais au prix d’une charge computationnelle supplémentaire.

Le passage à l’échelle pour les grandes cartes (villes entières, infrastructures industrielles étendues) pose des problèmes de mémoire et de calcul. L’efficacité computationnelle pour les systèmes embarqués à faible puissance (drones, petits robots) contraint le choix des algorithmes. Et la sécurité constitue une préoccupation croissante : les systèmes SLAM sont vulnérables au spoofing de capteurs (faux signaux LiDAR, leurres visuels) et aux attaques adversariales qui peuvent induire le robot en erreur sur sa position.

Les tendances à suivre incluent l’intégration croissante du deep learning dans tous les modules du SLAM, le SLAM collaboratif (plusieurs robots construisent une carte commune et partagent leurs observations), les représentations neuronales de scènes (NeRF, Gaussian Splatting) pour des reconstructions 3D photoréalistes, et l’utilisation de LLM pour enrichir les cartes avec des descriptions sémantiques en langage naturel.

Conseil Polydesk Si vous débutez avec le SLAM, commencez par slam_toolbox sur ROS 2 avec un LiDAR 2D bon marché (RPLiDAR A1, ~100 €). Pour le VSLAM, RTAB-Map est le choix le plus polyvalent (compatible ROS 2, multi-capteurs). Testez d’abord en simulation avec Gazebo avant d’investir dans du matériel. Et gardez en tête que le SLAM est un problème résolu en conditions contrôlées mais reste un défi ouvert en conditions réelles dynamiques et à grande échelle.

Questions fréquentes sur le SLAM

Qu’est-ce que le SLAM en robotique ?

Le SLAM (Simultaneous Localization and Mapping) est la capacité d’un robot à construire une carte de son environnement tout en déterminant sa propre position dans cette carte, le tout en temps réel et sans connaissance préalable du lieu. C’est la technologie qui permet à un robot aspirateur de cartographier votre maison, à un drone de naviguer dans un entrepôt, ou à une voiture autonome de se repérer dans une ville. Le SLAM est considéré comme l’un des problèmes fondamentaux de la robotique mobile.

Quelle est la différence entre LiDAR SLAM et Visual SLAM ?

Le LiDAR SLAM utilise des capteurs laser qui mesurent directement les distances en 3D, offrant une haute précision géométrique mais à un coût élevé. Le Visual SLAM (VSLAM) utilise des caméras, qui sont légères et peu coûteuses mais nécessitent des algorithmes plus complexes pour extraire l’information 3D des images 2D. Le LiDAR fonctionne dans l’obscurité mais est perturbé par la pluie ou le brouillard. La caméra fournit des informations visuelles riches (couleurs, textures) mais peine dans les conditions de faible luminosité. En pratique, les meilleurs systèmes combinent les deux (fusion multi-capteurs).

Le SLAM fonctionne-t-il sans GPS ?

Oui, c’est même son usage principal. Le SLAM est conçu pour les environnements où le GPS est indisponible ou imprécis : intérieur de bâtiments, tunnels, mines, sous-marins, forêts denses. Le robot utilise uniquement ses capteurs embarqués (LiDAR, caméras, IMU) pour se localiser et cartographier. Quand le GPS est disponible, il peut être fusionné avec le SLAM pour fournir une référence globale, mais le SLAM fonctionne de manière autonome.

Quels outils utiliser pour implémenter le SLAM ?

Le standard open source est ROS 2 avec les packages slam_toolbox (SLAM 2D, recommandé pour débuter), cartographer_ros (Google, 2D/3D), ou rtabmap_ros (multi-capteurs, 3D). Pour les véhicules autonomes, des frameworks comme Autoware intègrent des solutions SLAM complètes. Nvidia Isaac ROS fournit des packages SLAM accélérés par GPU. Pour le prototypage et les tests, Gazebo (simulateur ROS) permet de développer et valider des algorithmes SLAM sans matériel physique.

Le SLAM est-il un problème résolu ?

En conditions contrôlées (intérieur statique, bonne luminosité, capteurs calibrés), le SLAM est largement résolu et fiable. Mais dans les conditions réelles dynamiques (environnements changeants, foules, conditions météo variables, grande échelle), c’est encore un domaine de recherche actif. Les défis ouverts incluent la robustesse aux changements d’apparence (jour/nuit, saisons), le passage à l’échelle (cartographier une ville entière en temps réel), la gestion des environnements très dynamiques, et l’efficacité sur des systèmes embarqués à faible consommation.

Polydesk.ai — Footer