Introduction à la technologie LiDAR
3 choses à savoir
La télédétection par laser ou LiDAR (acronyme de l'expression « light detection and ranging ») est une technologie de mesure de distance similaire aux radars et aux sonars. Les capteurs LiDAR émettent des impulsions laser qui se réfléchissent sur les objets, ce qui leur permet de percevoir la structure de leur environnement. Les capteurs enregistrent l'énergie lumineuse réfléchie pour déterminer les distances aux objets afin de créer une représentation 2D ou 3D de l'environnement. Les capteurs LiDAR sont en train de devenir l'un des types de capteurs les plus utilisés pour le développement de systèmes de perception dans diverses industries. Ils rendent possibles des workflows de perception 3D tels que la détection d'objets, la segmentation sémantique, et des workflows de navigation tels que la cartographie, la localisation et la cartographie simultanées (SLAM) et la planification de trajectoire.
Les systèmes autonomes utilisent plusieurs capteurs tels que la caméra, l'IMU et le radar pour la perception de leur environnement. Les capteurs LiDAR peuvent surmonter certains des inconvénients des autres capteurs en fournissant des informations 3D structurelles et extrêmement précises sur leur environnement. Cet avantage a contribué à l'introduction des capteurs LiDAR sur le marché grand public de la perception.
L'adoption des capteurs LiDAR sur le marché est motivée par trois facteurs clés :
- Des capteurs LiDAR low-cost
L'introduction de capteurs LiDAR low-cost, présentant des caractéristiques améliorées en matière de portée, de taille et de robustesse, a accru la disponibilité de cette technologie dans des applications industrielles relativement peu coûteuses.
- Des données 3D précises
Les capteurs LiDAR collectent des informations 3D haute densité sur l'environnement sous forme de nuages de points avec une précision supérieure à celle des autres capteurs de distance tels que les radars et les sonars. Cela améliore ainsi la précision de la reconstruction 3D.
- Des algorithmes de traitement LiDAR
Les récents développements en matière de workflows de traitement LiDAR, notamment la segmentation sémantique, la détection et le pistage d'objets, la fusion des données de caméra LiDAR, et la localisation et la cartographie simultanées (SLAM) LiDAR , ont permis aux industries d'ajouter des capteurs LiDAR à leurs workflows de développement. Vous pouvez utiliser des outils comme MATLAB pour développer et appliquer des algorithmes de traitement LiDAR.
Les capteurs LiDAR sont utilisés dans de nombreuses industries, de la conduite autonome aux géosciences. Nous pouvons classer ces applications en trois groupes, en fonction de la plateforme sur laquelle elles sont montées.
- Capteurs LiDAR aériens
- Capteurs LiDAR terrestres
- Capteurs LiDAR intérieurs
Capteurs LiDAR aériens
Les capteurs LiDAR aériens sont montés sur des drones ou des aéronefs. Les capteurs LiDAR aériens permettent de capturer des données sous forme de nuages de points 3D sur des zones très étendues. Ces données peuvent alors être utilisées pour la cartographie LiDAR, l'extraction de caractéristiques, la classification de terrains ou d'autres cas d'utilisation.
Exemples d'applications des capteurs LiDAR aériens :
- Agriculture : l'usage de la technologie LiDAR est très répandu dans l'agriculture pour cartographier la zone de végétation et identifier exactement le terrain de la ferme ainsi que la zone de captage d'eau.
- Urbanisme : les capteurs LiDAR sont utilisés pour créer des modèles numériques de terrain (Digital Surface Model, DSM) et même des modèles numériques de ville (Digital City Model, DCM) d'une zone donnée. Ces modèles peuvent aider à concevoir une ville ou construire de nouvelles infrastructures dans une ville existante.
- Cartographie géologique : les capteurs LiDAR peuvent être utilisés pour créer des cartes 3D de la surface de la Terre, utiles dans des applications comme l'exploitation minière, l'exploitation forestière de précision et l'exploration pétrolière et gazière.
- Navigation aérienne et planification de trajectoires : les capteurs LiDAR sont désormais utilisés dans des drones pour collecter des données 3D temps réel afin de naviguer de manière autonome dans un environnement.
Voir des exemples d'utilisation de MATLAB® pour le traitement des capteurs LiDAR aériens :
- Algorithme SLAM sur des données LiDAR aériennes
- Classification du terrain
- Navigation aérienne et planification de trajectoires
Capteurs LiDAR terrestres
Il existe deux types de capteurs LiDAR terrestres : fixes et mobiles.
- Les capteurs LiDAR terrestres fixes sont montés sur des plateformes fixes. Ils sont couramment utilisés pour les relevés cadastraux, les relevés routiers, la cartographie topologique, la création de cartes numériques d'élévation (Digital Elevation Map, DEM), l'agriculture et d'autres applications. Ils sont plus adaptés aux applications nécessitant une saisie précise et détaillée des données.
- Les capteurs LiDAR terrestres mobiles sont fixés sur une plateforme mobile comme une voiture ou un camion. L'application LiDAR mobile la plus répandue est la conduite autonome. Les capteurs LiDAR montés sur des véhicules capturent les données de l'environnement sous forme de nuages de points 3D, utilisés ensuite dans des workflows de perception et de navigation. Ces workflows seront décrits en détail dans la section suivante.
Voir des exemples d'utilisation de MATLAB pour le traitement des capteurs LiDAR terrestres :
- Pistage de véhicules avec la technologie LiDAR : des nuages de points à une liste de pistes
- Construire une carte avec l'odométrie et la cartographie LiDAR (Lidar Odometry And Mapping, LOAM) en utilisant des simulations Unreal Engine
Capteurs LiDAR intérieurs
Les capteurs LiDAR sont largement utilisés dans les applications de robotique d'intérieur et montés sur des robots mobiles. Outre les capteurs LiDAR 3D, les capteurs LiDAR 2D ou les capteurs laser sont également utilisés dans des applications de robotique d'intérieur, telles que le balayage et la cartographie LiDAR. Ils collectent des informations approfondies sur l'environnement, qui sont ensuite traitées en fonction des cas d'utilisation.
Exemples d'utilisations courantes des capteurs LiDAR intérieurs :
- Cartographie et SLAM LiDAR : vous pouvez utiliser des capteurs LiDAR 2D ou 3D pour créer respectivement des algorithmes de cartographie et SLAM 2D et 3D.
- Détection d'obstacles, avertissement et évitement de collision : les capteurs LiDAR 2D sont fréquemment utilisés pour détecter des obstacles. Ces données peuvent également être utilisées pour créer des avertissements de collision ou éviter des obstacles.
Voir des exemples d'utilisation de MATLAB pour le traitement des capteurs LiDAR terrestres :
MATLAB et Lidar Toolbox™ simplifient les tâches de traitement LiDAR. Grâce à des fonctions et des outils dédiés, MATLAB vous aide à relever les défis courants dans le traitement des données LiDAR, concernant notamment les types de données 3D, la parcimonie des données, les points non valides dans les données et les niveaux de bruit élevés.
Vous pouvez importer des données LiDAR enregistrées et temps réel dans MATLAB, implémenter des workflows de traitement LiDAR et créer le code C/C++ et CUDA® à déployer en production.
Quelques fonctionnalités importantes offertes par MATLAB pour le traitement des nuages de points LiDAR sont décrites dans les sections suivantes.
Le streaming, la lecture et l'écriture de données LiDAR
La première étape du traitement des données de capteur dans MATLAB consiste à les récupérer dans l'espace de travail MATLAB. Vous pouvez :
- Streamer des données temps réel à partir des capteurs Velodyne avec le Hardware Support Package Velodyne Lidar et à partir des capteurs Ouster avec le Hardware Support Package Ouster Lidar.
- Lire des nuages de points stockés dans différents formats de fichiers comme PCD, PLY, PCAP (Velodyne, Ouster et Hesai Pandar), Ibeo Data container, LAS et LAZ.
- Écrire des nuages de points dans différents formats de fichiers comme PCD, PLY, LAS et LAZ.
- Simuler des données LiDAR, ce qui vous permet de tester vos algorithmes et vos workflows avant de les déployer sur un système réel. MATLAB vous permet de synthétiser des données LiDAR 3D ou 2D dans des environnements de simulation en définissant les paramètres du capteur pour tester vos algorithmes de traitement. Lidar Toolbox, UAV Toolbox et Automated Driving Toolbox proposent des modèles de capteur LiDAR pour simuler des nuages de points LiDAR.
Traitement de données LiDAR
Vous pouvez prétraiter les données LiDAR pour améliorer la qualité des données et en extraire des informations de base. Lidar Toolbox™ offre des fonctionnalités pour le sous-échantillonnage, le filtrage médian, l'alignement, la transformation et l'extraction de caractéristiques à partir de nuages de points.
Calibrage de caméra LiDAR
MATLAB permet de calibrer des caméras LiDAR pour estimer les transformées LiDAR-caméra afin de fusionner des données LiDAR et des données de caméra. Vous pouvez également fusionner des informations de couleur dans des nuages de points LiDAR et estimer les boîtes englobantes 3D dans un signal LiDAR en utilisant des boîtes englobantes 2D créées à partir d'une caméra située au même endroit.
Deep Learning pour LiDAR
Avec MATLAB, vous pouvez appliquer des algorithmes de Deep Learning pour la détection d'objets et la segmentation sémantique sur des données LiDAR.
- Avec seulement quelques lignes de code dans MATLAB, vous pouvez importer des modèles de segmentation sémantique pré-entraînés, notamment PointSeg et SqueezeSegV2 sur des données LiDAR. Vous pouvez également entraîner, évaluer et déployer vos propres modèles de Deep Learning.
- MATLAB permet de concevoir, d'entraîner et d'évaluer des détecteurs robustes tels que les réseaux PointPillars et ComplexYolo-V4. Vous pouvez détecter et ajuster des boîtes englobantes autour d'objets dans des nuages de points LiDAR.
- L'application Lidar Labeler, dans Lidar Toolbox, simplifie les tâches de labellisation des nuages de points. Vous pouvez labelliser manuellement les nuages de points pour la détection d'objets et la segmentation sémantique, appliquer des algorithmes prédéfinis ou personnalisés pour automatiser la labellisation des nuages de points LiDAR, et évaluer les performances des algorithmes d'automatisation.
Pistage d'objets dans des nuages de points
MATLAB peut unifier plusieurs domaines qui alimentent un workflow de pistage d'objets de bout en bout. Cela vous permet de lire des données LiDAR, de les prétraiter, d'appliquer des algorithmes de Deep Learning pour détecter des objets, de pister ces objets avec un tracker prédéfini et de les déployer sur un hardware cible.
Recalage des nuages de points et SLAM
MATLAB propose des fonctions permettant de recaler des nuages de points LiDAR et de créer des cartes 3D à partir de données LiDAR terrestres et aériennes avec des algorithmes SLAM. Cette offre est utile pour :
Pour plus d'informations sur le traitement LiDAR, découvrez Lidar Toolbox et Computer Vision Toolbox™.