Construisez un Scanner LiDAR 3D avec Raspberry Pi

Facebook Twitter Google Plus Instagram YouTube Twitch

Lorsqu’il s’agit d’imager un espace en trois dimensions avec prĂ©cision, peu de technologies peuvent rivaliser avec le LiDAR (Light Detection and Ranging). En Ă©mettant des impulsions laser rapides sur une large zone, les systĂšmes LiDAR gĂ©nĂšrent des cartes 3D extrĂȘmement prĂ©cises, ce qui les rend indispensables dans des domaines aussi variĂ©s que la robotique ou la navigation.

Cette mĂ©thode fait partie d’un domaine plus vaste appelĂ© photogrammĂ©trie, qui regroupe les techniques permettant de mesurer des distances et de reconstruire des formes dans l’espace Ă  partir d’images ou de points — qu’ils soient captĂ©s par un laser, une camĂ©ra ou une combinaison des deux.
On parle donc ici de photogrammĂ©trie active, dans laquelle le LiDAR joue le rĂŽle de capteur de profondeur, contrairement Ă  la photogrammĂ©trie classique qui repose uniquement sur l’analyse d’images.

Autrefois encombrants et hors de prix, les LiDAR sont aujourd’hui bien plus accessibles — tellement accessibles qu’il est dĂ©sormais possible de les associer Ă  un Raspberry Pi pour crĂ©er une solution de numĂ©risation Ă©conomique.

Explorons un projet passionnant qui utilise un Raspberry Pi pour piloter un module LiDAR, mettant la cartographie 3D à la portée des amateurs, des étudiants et des innovateurs.


Qu’est-ce que le LiDAR et pourquoi est-il si puissant ?

Le LiDAR fonctionne en projetant des impulsions laser qui rebondissent sur les objets environnants avant de revenir au capteur. En mesurant le temps que met la lumiĂšre Ă  effectuer ce trajet, le systĂšme calcule les distances avec une prĂ©cision impressionnante, crĂ©ant une reprĂ©sentation 3D dĂ©taillĂ©e de l’environnement.

Cette technologie est au cƓur d’applications comme :

  • Les voitures autonomes, pour cartographier routes et obstacles en temps rĂ©el.

  • La robotique, permettant aux machines de se dĂ©placer dans des espaces complexes.

  • La surveillance environnementale, pour analyser paysages ou structures.

GrĂące Ă  des modules LiDAR abordables comme les modĂšles LD06, LD19 et STL27L de LDRobot, cette technologie, autrefois rĂ©servĂ©e Ă  une Ă©lite, est maintenant Ă  la portĂ©e des projets personnels. Par exemple, le STL27L offre une portĂ©e allant jusqu’à 25 mĂštres, une frĂ©quence d’échantillonnage de 21600 Hz, et une rĂ©sistance Ă  la lumiĂšre ambiante jusqu’à 30 kLux, ce qui le rend idĂ©al pour des scans en extĂ©rieur. L’ajout d’un Raspberry Pi pousse cette accessibilitĂ© encore plus loin.


Le projet : un scanner 3D portable et économique

Ce projet innovant associe un Raspberry Pi à un module LiDAR LDRobot pour concevoir un scanner 3D à la fois portable et peu coûteux. Baptisé PiLiDAR, ce projet open-source (disponible sur GitHub : https://github.com/PiLiDAR/PiLiDAR) permet de créer un scanner panoramique 3D à 360° pour un coût modeste.

Bien qu’encore en cours de dĂ©veloppement, il offre dĂ©jĂ  des fonctionnalitĂ©s impressionnantes :

  • Visualisations 2D en temps rĂ©el des donnĂ©es LiDAR, avec exportation en formats numpy ou CSV.

  • Extraction des couleurs des sommets, pour enrichir les modĂšles 3D.

  • Cartes panoramiques Ă  360°, créées Ă  partir d’images de camĂ©ra fisheye en rĂ©solution 6K, assemblĂ©es avec l’outil Hugin.

  • Reconstruction 3D colorisĂ©e, combinant les donnĂ©es LiDAR et les panoramas, avec visualisation via Open3D ou Plotly, et exportation en formats PCD, PLY ou e57.


Focus technique sur PiLiDAR : un outil plus puissant qu’il n’y paraüt

Sous son apparente simplicité, PiLiDAR intÚgre une suite logicielle sur mesure, optimisée pour le Raspberry Pi, qui transforme ce projet en véritable plateforme de scan 3D :

  • Un pilote sĂ©rie dĂ©veloppĂ© en Python, gĂ©rant Ă  la fois la communication avec le LiDAR (LD06/LD19/STL27L) et le contrĂŽle moteur (PWM matĂ©riel, CRC intĂ©grĂ©).

  • Des visualisations 2D en direct, avec gĂ©nĂ©ration de fichiers CSV ou NumPy pour archivage ou analyse.

  • Une fonction panoramique 6K automatisĂ©e, utilisant une camĂ©ra fisheye (type OV5647 ou HQ Camera M12), avec assemblage via Hugin.

  • Un traitement 3D avancĂ©, grĂące aux scripts intĂ©grĂ©s (filter_3D.py), qui alignent, nettoient et convertissent les nuages de points vers les formats PLY, PCD ou e57.

  • Une visualisation dans Jupyter Notebook, permettant d’interagir avec les scans via Python, sans outils externes.

  • Une intĂ©gration avec uhubctl pour gĂ©rer l’alimentation USB du Raspberry Pi, utile pour rebooter certains modules sans redĂ©marrer l’ensemble.

Le dĂ©pĂŽt GitHub contient aussi des fichiers 3D (STL/OBJ) pour imprimer supports, boĂźtiers et adaptateurs d’objectif. Une documentation claire y accompagne chaque Ă©tape.


Reconstruction 3D colorisée

Pour assembler ces donnĂ©es en un modĂšle 3D cohĂ©rent, le systĂšme utilise des algorithmes tels que ICP (Iterative Closest Point) ou la global registration. Ces techniques permettent d’aligner automatiquement les diffĂ©rents nuages de points issus des multiples angles de scan. Inutile de plonger dans les maths : tout est gĂ©rĂ© par le logiciel, vous n’avez qu’à lancer le traitement et observer la magie opĂ©rer.


Pourquoi choisir le Raspberry Pi ?

Le Raspberry Pi est la plateforme idéale pour ce projet, et voici pourquoi :

  • Polyvalence : Avec un systĂšme Linux, il supporte de nombreux langages et outils de programmation.

  • Compact et Ă©conome : Sa petite taille et sa faible consommation sont parfaites pour des projets mobiles.

  • CommunautĂ© active : Une vaste communautĂ© mondiale propose tutoriels, codes et solutions aux problĂšmes.


Des applications infinies

Ce duo Raspberry Pi–LiDAR ouvre la porte Ă  une multitude d’usages, Ă  la fois crĂ©atifs et pratiques :

  • Robotique : Équipez un petit robot ou un vĂ©hicule RC pour explorer et cartographier des terrains inconnus.

  • ModĂ©lisation 3D : Capturez des espaces intĂ©rieurs (comme un salon) pour des projets de rĂ©alitĂ© virtuelle, des installations artistiques ou des jumeaux numĂ©riques.

  • Éducation : Enseignez le codage, l’électronique et la cartographie spatiale de maniĂšre concrĂšte.

  • Prototypage : DĂ©veloppez des systĂšmes de navigation ou d’inspection Ă  moindre coĂ»t.

  • Domotique : IntĂ©grez le systĂšme Ă  des plateformes comme Home Assistant pour des applications intelligentes, comme la surveillance d’espaces.


Comment se lancer ?

Envie de tester ce projet vous-mĂȘme ? Voici ce qu’il vous faut pour construire un systĂšme PiLiDAR :

  • Un Raspberry Pi (idĂ©alement un Raspberry Pi 4 ou 5, pour des performances optimales).

  • Un module LiDAR LDRobot (LD06, LD19 ou STL27L, ce dernier offrant une portĂ©e de 25 mĂštres et une frĂ©quence de 21600 Hz).

  • Une camĂ©ra fisheye, comme la Raspberry Pi HQ avec objectif M12, ou une alternative comme l’OV5647 5MP fisheye.

  • Un moteur pas Ă  pas NEMA17 compact pour faire pivoter le scanner et rĂ©aliser des scans complets.

  • Une source d’alimentation portable, comme une batterie 15000 mAh avec convertisseur DC-DC boost.

  • Une imprimante 3D, pour fabriquer boĂźtier, supports et adaptateurs (fichiers disponibles sur GitHub).

  • Le logiciel du projet, disponible sur GitHub : https://github.com/PiLiDAR/PiLiDAR, sous licence CC BY-NC-SA 4.0 (usage commercial soumis Ă  licence via Patreon : https://www.patreon.com/PiLiDAR).


Comparatif rapide des capteurs LiDAR

ModĂšle PortĂ©e max PrĂ©cision typique Taux d’échantillonnage Prix approximatif (€) Avantages clĂ©s
LD06 12 mĂštres ±2 cm Ă  2 m ~4500 pts/sec 55–65 € Compact, Ă©conomique, idĂ©al pour l’intĂ©rieur
LD19 12 mĂštres ±2 cm Ă  2 m ~10000 pts/sec 85–100 € Double densitĂ© de points, meilleur pour petits robots
STL27L 25 mĂštres ±1.5 cm Ă  2 m ~21600 pts/sec 140–170 € Grande portĂ©e, trĂšs rapide, bon en extĂ©rieur

 ⚠ Petits dĂ©fis, grandes solutions : ce qu’il faut anticiper

Construire un scanner LiDAR DIY, c’est gĂ©nial, mais il y a quelques dĂ©fis Ă  prĂ©voir. Rassurez-vous, rien d’insurmontable :

  • La calibration de la camĂ©ra fisheye peut ĂȘtre un peu tricky si vous souhaitez des panoramas nets. Heureusement, les instructions sur GitHub guident chaque Ă©tape.

  • La prĂ©cision des scans peut fluctuer selon l’environnement (objets proches, surfaces rĂ©flĂ©chissantes, etc.). Quelques ajustements suffisent, et les forums comme r/LiDAR sont de vraies mines d’or.

  • Le traitement 3D (meshing), qui transforme les points en surfaces, peut ramer sur le Raspberry Pi. Pour gagner du temps, transfĂ©rez les donnĂ©es sur un PC plus puissant avant cette Ă©tape.

  • Exemples provenant du github :

Exterior

Exterior Scan (colormapped Intensity)

Interior

Interior Scan (Vertex Colors)


PiLiDAR, c’est bien plus qu’un simple bricolage autour d’un capteur LiDAR : c’est une vraie passerelle entre le monde professionnel de la numĂ©risation 3D et celui des makers passionnĂ©s. GrĂące Ă  un Raspberry Pi et Ă  du matĂ©riel abordable, il devient possible d’explorer, de cartographier et de modĂ©liser son environnement, avec des rĂ©sultats visuellement bluffants.

Entre l’open source, la prĂ©cision du LiDAR, l’autonomie d’un systĂšme mobile et les nombreuses options de traitement proposĂ©es par le logiciel, ce projet illustre parfaitement l’esprit DIY Ă  l’ùre de l’intelligence embarquĂ©e.
Que vous soyez Ă©tudiant, maker, passionnĂ© de robotique ou bidouilleur curieux, ce scanner 3D est l’outil idĂ©al pour vous lancer dans le monde fascinant de la vision spatiale.

Prenez un Raspberry Pi, branchez un capteur, et donnez une nouvelle dimension Ă  vos projets !

Leave a Reply