Scanners 3D

De Wiki LOGre
Aller à : navigation, rechercher


Le but de cette page est de faire un état des lieux des scanners 3D facilement accessibles, et, si possible, libres.

Présentation

Il existe plusieurs techniques pour numériser un objet en 3D :

  • triangulation laser
  • structured light
  • vision stéréoscopique

La triangulation laser est basée sur la capture vidéo d'une projection d'un laser-ligne sur l'objet à numériser. Cette technique est simple à mettre en oeuvre, et permet d'obtenir une bonne précision ainsi qu'une bonne résolution. Il y a cependant des limitations sur le type d'objets pouvant être numérisés (à développer !).

La projection de lumière blanche structurée permet de capturer la couleur et la texture de l'objet (quid précision/résolution ?).

Projets libres

Ciclop and Horus

Semble être le projet le plus intéressant pour du DIY libre.

  • utilise 2 laser-ligne
  • pilotage via Arduino
  • logiciel écrit en Python
  • avantages :
    • simple
  • inconvénients :

Sardauscan

  • utilise 4 laser-lignes
  • pilotage via Arduino
  • avantages :
    • précis
  • inconvénients :
    • très délicat à régler

FabScan

  • utilise 1 laser-ligne

MakerScanner

  • utilise 1 laser-ligne

3D SkanDal

  • utilise 2 laser-ligne
  • logiciel écrit en Python

Photogrammétrie

Il est possible, à partir d'un ensemble de photographies d'un objet sous des points de vue différents, de construire la géométrie d'un objet 3D. Ceci se fait en plusieurs temps sur la base d'algos d'analyse et comparaison d'images. D'abord le repérage dans chaque image de points communs avec d'autres images. Faisant "matcher" ces points communs en faisant l'hypothèse que toutes les images sont prises par le même appareil (même optique) il est possible par triangulation de calculer les positions des divers points de vue sur l'objet. Une fois ces points de vues identifiés (avec plus ou moins de précision) un nouveau travail sur les images peut être effectué pour construire les points 3D sur la surface de l'objet. Enfin, une fois la géométrie obtenue, on peut choisir certaines (parties d') images et les "plaquer" en tant que texture sur l'objet.

Une solution logiciel pour cela : VisualSFM + MeshLab


Les documents suivants présentent une synthèse (Thanks to Patrick Maigrot) dans le cas VisualSFM :

Pour d'autres solutions : Comparison_of_photogrammetry_software

Attention : il est délicat avec cette technologie d'obtenir un modèle avec une bonne précision géométrique. Imaginez que vous photographiez une cathédrale en tournant autour avec un un hélicoptère, vous pouvez construire le modèle de cette cathédrale. Imaginez maintenant que vous photographiez de même une maquette très réaliste de cette même cathédrale, mais mesurant seulement 1m de hauteur (vous tournez autour à pied). Les 2 séries de photos peuvent être très similaires, et l'objet 3D virtuel reconstruit aussi. Mais quelles seront ses dimensions si vous l'envoyez à une imprimante 3D ? Le seul moyen de s'y retrouver est d'utiliser dans les calculs de triangulation la focale de l'appareil de prise de vue, qui peut être trouvées dans les infos associées à chaque image. Mais dans tous les cas, le résultat est encore imprécis.

C'est la raison pour laquelle les scanners 3D "professionnels" travaillant sur le principe de photogrammétrie sont tous constitués de 2 appareils prenant 2 prises de vue simultanées, et montés sur un support permettant de connaitre par calibration initiale la distance et l'angle de vue des 2 "yeux". Chaque "prise de vue" est alors effectuée en stéréoscopie et le résultat peut alors être très précis.

Liens