Exploitation des mesures par scan laser pour le paramétrage d’un algorithme de génération automatique de nuages de points
Abstract
École Nationale Supérieure des Arts et Métiers (ENSAM). Campus de Aix-en-Provence
Full text
UNIVERSIDAD DE VALLADOLID ESCUELA DE INGENIERIAS INDUSTRIALES Grado en Ingeniería en Tecnologías Industriales EXPLOITATION DES MESURES PAR SCAN LASER POUR LE PARAMETRAGE D’UN ALGORITHME DE GENERATION AUTOMATIQUE DE NUAGES DE POINTS Autor: Martín Gutiérrez, Jorge Dra. Dña Blanca Giménez Olivarría École Nationale Supérieure des Arts et Métiers (ENSAM) Valladolid, julio de 2019.
2
3 TFG REALIZADO EN PROGRAMA DE INTERCAMBIO TÍTULO: Exploitation des mesures par scan laser pour le paramétrage d’un algorithme de génération automatique de nuages de points ALUMNO: Jorge MARTÍN GUTIÉRREZ FECHA: 17 de enero de 2019 CENTRO: École Nationale Supérieure des Arts et Métiers (ENSAM). Campus de Aix-en-Provence TUTOR: Arnaud Polette
4
5 RESUMEN: Esta memoria recoge el proceso de explotación de medidas mediante escáner láser para la parametrización de un algoritmo de generación automática de nubes de puntos, como trabajo de fin de estudios del programa de doble grado en la École Nationale Supériure des Arts et Métiers (ENSAM Aix-en-Provence, Francia). En primer lugar, me documenté sobre las diferentes tecnologías de escáner 3D profundizando en las más utilizadas. A continuación, me informé con más detalle sobre nuestro escáner, el escáner de brazo ROMER, con el cuál yo he trabajado. Como mencioné anteriormente, la segunda etapa consiste en familiarizarme con el escáner, con la finalidad de saber qué influencia tienen sobre un escáner (sobre la nube de puntos resultante) una cierta configuración de los parámetros. Finalmente, el tercer apartado de esta memoria se centra en la explotación de estas nubes de puntos, para extraer de ellas conclusiones respecto al ruido de dichas mediciones. PALABRAS CLAVE: algoritmo, nube de puntos, escáner 3D, escáner de brazo, ruido. ABSTRACT: In this report you will find the work done for the exploitation of the laser scan measurements for the parameterization of an algorithm for automatic generation of point clouds, as end-of-studies Project PJE09 at the École Nationale Supérieure des Arts et Métiers (ENSAM Aix-en-Provence, France). In first place, an analysis of the 3D scan technologies has been carried out, with an especial attention on the most used. Next, a deeper research was done concerning the scan placed in the school, the ROMER arm-based scanner; the tests were done with it. As mentioned before, he second step is to become familiar with the scan and get to know it better, to know which setting parameters define a scan (rather the result: the cloud of points obtained) in one way or another. Finally, the third section of the work focuses on exploiting this cloud of points to obtain conclusions about noise. KEY WORDS: algorithm, point clouds, 3D scan, arm based scanner, noise.
6
7 PJE 09 : EXPLOITATION DES MESURES PAR SCAN LASER POUR LE PARAMETRAGE D’UN ALGORITHME DE GENERATION AUTOMATIQUE DE NUAGES DE POINTS Réalisé par : MARTÍN GUTIÉRREZ, Jorge Professeurs responsables : POLETTE, Arnaud PERNOT, Jean Philippe
8
9 Résumé Ce rapport relate les actions qui ont été menées pour l’exploitation des mesures par scan laser pour le paramétrage d’un algorithme de génération automatique de nuages de points, dans le cadre du projet PJE09 (Projet d’expertise) à l’École Nationale Supérieure des Arts et Métiers (ENSAM), dans le campus d’Aix en Provence (France). En premier lieu, je me suis renseigné sur les différents technologies de scan 3D et j’ai approfondie sur les plus utilisés. Ensuite, je me suis documenté sur notre scan, le bras à balayer ROMER, avec lequel j’ai travaillé. Comme mentionné précédemment, la deuxième étape consiste à se familiariser avec le scan et mieux le connaître, afin de savoir quels paramètres de réglage définissent qu’un scan (plutôt le résultat : le nuage de points obtenu) soit d’une telle manière ou d’une autre. Finalement, la troisième section du travail se centre sur le l’exploitation de ce nuage de points pour obtenir des conclusions à propos du bruit. Abstract In this report you will find the work done for the exploitation of the laser scan measurements for the parameterization of an algorithm for automatic generation of point clouds, as end-ofstudies Project PJE09 at the l’École Nationale Supérieure des Arts et Métiers (ENSAM), in the campus of Aix-en-Provence (France). In first place, an analysis of the 3D scan technologies has been carried out, with an especial attention on the most used. Next, a deeper research was done concerning the scan placed in the school, the ROMER arm-based scanner; the tests were done with it. As mentioned before, he second step is to become familiar with the scan and get to know it better, to know which setting parameters define a scan (rather the result: the cloud of points obtained) in one way or another. Finally, the third section of the work focuses on exploiting this cloud of points to obtain conclusions about noise. .
16 Tableau 1 : Récapitulatif des différentes technologies de scan. Scanner par temps de vol : basée sur le calcul de la durée mise par un laser pour toucher une surface et revenir. • Avantage : capacité à scanner en 3D des grands objets et environnements. • Inconvénient : leur lenteur. Scanner par triangulation : projection d’un rayon laser et analyse de sa déviation sur le volume à définir. • Avantages : sa résolution et sa précision. • Inconvénients : extrême sensibilité du laser aux propriétés physiques de la surface devant être scannée. Les surfaces très brillantes ou transparentes sont particulièrement problématiques. Scanner manuel (par contact) : à l’aide d’un palpeur, quadrillage de la pièce et reconstitution de la surface à partir des points mesurés. • Avantages : sa précision et sa capacité à scanner en 3D des surfaces réfléchissantes ou transparentes. • Inconvénients : lenteur et inadéquation avec des formes organiques ou très complexes. Scanner à lumière structurée : ils réalisent un calcul, type triangulation, à partir de la déformation de la lumière projetée. Cette lumière est captée par 2 caméras. En calculant le déplacement du motif sur la surface, le logiciel en déduit ses propriétés. • Avantages : sa vitesse, la résolution et la capacité à scanner des personnes. • Inconvénients : sa sensibilité aux conditions d’éclairage et à certaines surfaces (brillantes, noires). Granty crane Bras articulés Scanner par temps de vol Scanner par décalage de phase Scanner par triangulation Holographie conoscopique Scanner manuel Scanner a lumière structurée Scanner a lumiere modulee Photogrammetrie Scanners stéréoscopiques Scanners à silhouette Scanners demandant l'assistance de l'utilisateur Scanner sans contact Actif Passif TYPES DE SCAN Scanner avec contact
17 Photogrammétrie (scan 3D à partir des photos) : analyse complexe de photos prises dans différentes positions. Les informations extraites permettent de positionner en 3D le lieu où les photographies ont été prises et d’en déduire les volumes du sujet. • Avantages : sa précision et sa rapidité d’acquisition. La photogrammétrie fonctionne avec tous types d’objets, y compris des environnements photographiés du ciel. • Inconvénients : sa sensibilité à la qualité des photos et le temps de calcul nécessaire pour créer la surface 3D. Les plus utilisés Ensuite, un nouveau tableau agroupe les technologies de scan 3D les plus importantes, ainsi comme ses caractéristiques principales : Tableau 2 : Types de scans 3D. TYPES DE SCAN 3D CARACTERISTIQUES Able to scan tought surfaces, such as siny or dark finishes Less sensitive to changing light conditions and ambient light Souvent plus portable Simpler design - easier to use and lower cost Très rapides temps de scan (2 sec/scan) Larges aires de scan (≈1,2 m dans un seul scan) Haute resolution Très bonne précision - jusqu'à 10 microns Vérsatile – Plusieurs lentilles pour scanner petits aux larges objets dans un seul scan Portable Eye-safe pour les humans et les animaux Varieté de prix ('low cost' - ' chers') en fontion de la résolution et la précision Capable de scanner 1 million de points par seconde --> scans de millions de pooints Aires de scan jusqu'à 1000 m^2 Bonne précision et résolution bassé en la taille de l'objet Non-contact to safely scan all types of objects Portable Une des façons les plus précises pour mesurer un objet Mesure de pièces grandes et petites en utilisant la machine adéquat Les normes de l'industrie et les certifications pour les mesures et les logiciels existent De nombreux modèles et tailles de machines existent chez de nombreux fabricants Système portable Bonne précision sur les pièces de petite à moyenne taille Capacité à scanner une seule pièce Scans 3D et vérification dans le même système Liberté de mouvement Volume de scan 3D important Capable de scanner, même lorsque la pièce est en mouvement, sans perte de précision Très portable Optically tracked scanners & Probe systems Laser based scanners Projected or Structured Light scanners (Medium and) Long range scanners Coordinate Measuring Machine (CMM) Arm based scanners & Probe systems
18 La notre : scan à balayer ROMER Le scan que nous avons à l’école est un bras à balayer (an anglais ‘Arm based scanner’) de la marque ROMER. Pour me renseigner sur ses caractéristiques j’ai consulté directement son site web, à partir duquel les informations suivantes ont été retenus : • Le scanner laser RS4 intégré et entièrement certifié est conçu pour capturer des données de points 3D sur une gamme de types de surfaces. Il ne nécessite aucun étalonnage, temps de préchauffage ou câbles et contrôleurs supplémentaires. C'est totalement intégré. Avec une bande laser ultra-large allant jusqu'à 150 mm, le RS4 peut capturer 752 000 points par seconde, ce qui réduit le nombre de passes nécessaires pour numériser entièrement une pièce et minimiser le temps de mesure global. • Volume de mesure : disponible en six tailles fournissant des volumes de mesure avec des diamètres compris entre 2,0 m et 4,5 m. • Reconnaissance automatique des sondes : possibilité d’échanger les sondes à tout moment sans avoir à recalibrer. • Balance des bras : une conception optimisée rend le bras plus léger et plus facile à utiliser. En parallèle à l’utilisation du scan, je me suis appuyé sur le logiciel ‘GeoMagic Studio 2014’, qui est l’interface entre le scan et l’ordinateur. Cet outil nous permet de visualiser le scan que nous sommes en train de réaliser (où que nous avons réalisé), ainsi comme régler différents paramètres du scan qui vont influencer le nuage de points final. Cette question sera traitée en profondeur ultérieurement.
19 3. Scans réalisés Familiarisation avec le scan La prise de contact a démarré avec certains essais qui avaient pour but me familiariser avec le scan. Une fois que j’ai intériorisé son fonctionnement au niveau des mouvements (comment faire les passages, comment réagir lors que le bras était bloqué au niveau de l’axe, quoi faire quand le scan arrêtait l’enregistrement à cause d’un mauvais positionnement, …), j’ai continué avec la prise en main de GeoMagic Studio 2014, le logiciel qui traite l’information du scan. GeoMagic Studio 2014 offre une largue variété de possibilités pour régler le scan (affichés sur l’image 2). Comme, évidement, je n’avais pas le temps de toutes connaître, j’ai décidé de cibler celles qui nous semblait plus pertinentes pour le projet. Image 2 : Compilation des différents paramètres que peuvent être réglés (onglet ‘Dialog’). Dans le point suivant, ‘Tableau d’essais’, j’explique sur quels paramètres des montrés ci-dessus j’ai décidé de jouer.
20 Tableau d’essais Une fois je connaissais les paramètres sur lesquels je pouvais jouer, j’ai ciblé ceux que nous avons considéré plus pertinents, afin d’encadrer une tâche réalisable (en termes de temps) et qui nous permet extraire des conclusions. Tout en premier, je voudrais remarquer un souci qui est survenu lors de la réalisation des essais pour qu’il ne l’arrive pas de nouveau à quelqu’un d’autre. Dans l’onglet ‘Dialog’, sous la fenêtre ‘Object options’ → ‘Data format’, les fichiers enregistrés comme ‘Ordered and Raw Data’ (Données ordonnées et brutes) n’étaient pas bons ; les fichiers, qui faisaient environ 70 KB, étaient presque vides, et donc, ils étaient inutiles (face aux fichiers de 5000 à 30000 KB que j’ai récupéré après). Au moment où nous nous sommes rendu compte, j’ai recommencé en cochant ‘Ordered data only’ (données ordonnées seulement). Ensuite, pour revenir au tableau, je suis parti sur une différenciation entre facteurs externes, comme allumer ou pas la salle, la luminosité de la journée (jour ensoleillé ou couvert), la surface sur laquelle nous appuyons la pièce à scanner, la pièce sélectionné (et donc ses caractéristiques : couleur, type de surface, forme, …), la distance pièce-scan à laquelle nous faisons le parcours de la pièce, les nombres de fois que nous parcourons la pièce, la vitesse à laquelle on déplace le scan, … et facteurs internes, comme le Reduced Noise (paramètre pour la réduction de bruitescale de 1 à 5), le Exposure time ( ou temps d’exposition, mesuré en %, qui détermine la intensité de la ligne du laser). D’ailleurs, pour clarifier comment j’ai choisi la plage de valeurs entre lesquels varier les paramètres, comme l’Exposure time ou le Reduced noise, par exemple : 1. Pièce : j’ai commencé par un câble VGA par différentes raisons : le premier jour il était près de moi, elle est une pièce simple (composé seulement du câble est les deux têtes), il est aussi complexe selon la façon de le positionner (il y a des zones faciles à scanner et des autres qui sont cachées), le matériau dont il se compose (plastique) est noir et lise (et alors, normalement, facile à scanner). Après le câble VGA j’avais prévu de scanner des autres pièces plus industrielles, comme un piston, un avion imprimé en 3D, etc. Néanmoins, celle-là demande plus de temps (je n’avais pas le temps) et des scans plus complexes. 2. Surface de scan : nous considérons importante pour scanner que la surface d’appui soit complètement lise (dans notre cas le marbre de référence et une feuille blanche). Après, le marbre, comme il est composé de plusieurs minéraux, donne un reflet qui n’est pas uniforme, au contraire que la feuille blanche ; c’est pour cela qui j’ai décidé de tester les deux cas. 3. Distance de scan : j’ai distingué 3 cas différents qui sont perceptibles par la relation « point-ligne » : le point se situe sur la ligne (distance idéale de scan) à peu près à 10 centimètres. Quand nous situons le scan a moins de 10 cm de la pièce le point est au-dessus de la ligne ; le cas contraire dépasse les 10 cm.
21 4. Exposure time (temps d’exposition) : ce paramètre peut varier entre 0 et 100%, alors j’ai choisi une approche d’optimisation pour faire le minimum de scans possibles pour pouvoir extraire des conclusions (dans ce cas 3 possibilités) ; ainsi, j’ai choisi deux cas extrêmes (85% comme extrême haute et 15% comme extrême bas) et un cas moyen (50%). 5. Reduced noice (réduction de bruit) : avec les mêmes intentions que pour le temps d’exposition, j’ai choisi comme valeurs limites 5 et 1, et comme valeur intermédiaire 3 (plage de possibilités : de 1 à 5). De cette façon, le tableau d’essais ressemblerait à : Image 3 : Schéma en cascade du processus de scan (initial) Avec l’approche précèdent le nombre d’essais pour une seule pièce est de 110, ce qui est ‘incontournable’ si je voulais faire des autres avancements dans le projet. Donc, le tableau d’essais a avancé au fur et à mesure que des conclusions étaient déduites, comme j’explique dans le point suivante ‘Évolution du tableau’. Évolution du tableau Comme mentionné dans le point précèdent, certaines conclusions que j’ai extraites modifient le tableau que j’avais préparé au début ; celle-là concerne : • Tester que 2 surfaces de scan : le marbre et la feuille blanche de papier. On n’a pas le temps de plus tester. 6. Luminosité intérieure 5. Reduced noise 4. Exposure time 3. Distance de scan 2. Surface de scan 1. Pièce Pièce Feuille blance Autre? Marbre ·| = -10cm environ 10 cm |· = +10cm 85% 50% 15% 5 3 1 Éteint Allumé
22 • Ne pas faire tous les scans sous les conditions ‘-10 cm’ et ‘+10 cm’, car les nuages de points obtenus enregistrent une très petite quantité de points. • Travailler avec la lumière de la salle toujours allumé, vu qu’il n’a pas aucune influence sur les résultats de scan. Alors, notre tableau prend la forme suivante : Image 4 : Schéma en cascade du processus de scan (final) Le nombre de scans à réaliser est, d’environ, 36. Et je dis bien 36, car il ne faut pas oublier les scans à ‘-10 cm’ et ‘+10 cm’, qui n’apparaissent pas dans l’image (car je ne réalise pas tous), mais qui sont faites, quand même. Pour donner plus de précisions sur la forme du vrai tableau, réalisé sur Excel, j’ajoute une capture d’écran : 6. Luminosité intérieure 5. Reduced noise 4. Exposure time 3. Distance de scan 2. Surface de scan 1. Pièce Pièce Feuille blance Marbre environ 10 cm 85% 50% 15% 5 3 1 Allumé
23 Tableau 3 : Tableau d’essais. À gauche se trouve la numération des essais que, comme nous pouvons observer comprenne jusqu’à 4 subdivisions. Pour remplir ce tableau il faut commencer par choisir une pièce (donc essai 1, 2, 3, …). Ensuite entrer la surface d’appui (qui dérive en 1.1, 1.2, 1.3, …), dans notre cas marbre o papier. Après, il faut déterminer la ‘distance de scan’ qui a été expliqué précédemment (traduit par 1.1.1, 1.1.2, 1.1.3, …) que pour nous prend la forme de ‘-10 cm’, ‘≈10 cm’ ou ‘+10 cm’. À continuation on note la luminosité extérieure dans un échelle de 0 à 10 (0 : obscurité complète ; 3 : jour nuageux, couvert ; 5 : nuages et soleil ; 7 : jour ensoleillé ; 10 : 100% de lumière). En plus, il faut régler le temps d’exposition (alors, essai 1.1.1.1, 1.1.1.2, 1.1.1.3, …). Et finalement, on va entrer la réduction de bruit (donc essai 1.1.1.1.1, 1.1.1.1.1.2, 1.1.1.1.1.3, …), en choisissant une valeur entre 1, 3 et 5. Après faire un scan avec un certain réglage, que j’ai nommé entrées, il faut récupérer l’information fourni par le logiciel (sorties) : le nombre de passages réalisés pour un scan ‘acceptable’, le temps mis pour réaliser le scan et le nombre de cellules récupérés. Généralement, et à titre personnel, j’ajoutais des remarques supplémentaires de chaque scan.
24 4. Exploitation des résultats [8, 9, 10, 11] Choix du logiciel Une fois le tableau d’essais a été complété nous sommes prêts à exploiter les fichiers ‘.stl’ récupérés grâce à GeoMagic Studio 2014. Si on se demande quel logiciel utiliser, plus d’une réponse est valable, comme MeshLab ou Matlab. Cependant, nous avons choisi Mathematica, car il est un logiciel qui compte avec beaucoup de documentation en ligne, c’est qui est très important vu que je suis complètement débutant avec ce logiciel et donc il va me permettre de travailler en autonomie. Code d’exploitation La découverte de Mathematica, comme précédemment pour le scan, a pris son temps. En plus, plusieurs tests avec différents fonctions, tels que ‘Flatten’, FindFormula’, NormalDistribution, ont été faits. Le but était de trouver celles qui vont m’aider à analyser les résultats et extraire des conclusions (même si les librairies de Mathematica offrent une infinité de possibilités). Finalement, avec l’aide de M. Polette, nous avons developpé certaines lignes de code expliqués ci-dessous : (*Importation des fichiers correspondant à un scan du marbre ‘pur’ et d’une feuille de papier ‘pure’ .stl en Mathematica*) Marbre= Import ["Z:\Adresse du fichier importer.stl"]; Papier = Import ["Z:\ Adresse du fichier importer.stl"]; (*MeshCoordinates: donne une liste des coordonnées (de tous les points qui composent) dans la région maillé*) ListCoordMarbre = MeshCoordinates[Marbre] ListCoordPapier = MeshCoordinates[Papier] (*On vérifie qu’on a les mêmes dimensions et donc qu’on peut les représenter ensemble sous la forme d’un histogramme*) Dimensions[ListCoordMarbre]; Dimensions[ListCoordPapier]; (*ListPointPlot3D[coordonées]: génère un nuage de points 3D avec les coordonnées*) ListPointPlot3D[ListCoordMarbre, BoxRatios->Automatic]
25 Image 5 : Nuage de points 3D du marbre.
32 • Aussi la fourchette de l’écart entre la distance maximum inferieure et l’homologue supérieure est plus grande pour le marbre (depuis -0.6 jusqu’à +0.3) que pour le papier (depuis -0.3 jusqu’à 0.5). Ces deux dernières conclusions semblent raisonnables vu que la surface d’une feuille du papier est plus régulière que le marbre (constitué de petits portions de différents minéraux que reflètent la lumière, et donc augmentent le bruit). Finalement, il ne faut pas oublier que ce travail réalisé s’encadre dans le contexte d’un projet plus complexe que la seule réalisation de scans et postérieur analyse des fichiers. L’objectif de ce projet est de mettre en place une méthode pour déterminer certaines paramètres (le bruit, la densité, ou la stratégie de scan) afin de produire des nuages correspondant à un modèle ou à un type de scanner particulier.
33 6. Bibliographie [1] https://www.sculpteo.com/fr/glossaire/scan-3d-et-acquisition-definition/ [2] https://fr.wikipedia.org/wiki/Scanner_tridimensionnel [3] Présentation de cours de JP Pernot : Reverse Engineering [4] https://www.aniwaa.fr/les-technologies-de-scan-3d-et-le-processus-de-scan-3d/ [5] https://cylaos.fr/exemples-simples-dutilisation-scanners-3d-proposes-cylaos-presentationsuccincte-differentes-technologies-de-scanner [6] https://www.ems-usa.com/tech-papers/3D%20Scanning%20Technologies%20.pdf [7] https://www.hexagonmi.com/products/portable-measuring-arms/romer-absolute-armwith-integrated-scanner [8] https://reference.wolfram.com/language/ref/FindFormula.html [9] https://reference.wolfram.com/language/ref/Histogram.html [10] https://mathematica.stackexchange.com/questions/2279/creating-overlappinghistogram-plots [11] https://mathematica.stackexchange.com/questions/65604/how-do-i-display-the-planeof-best-fit-in-3d
34 7. Annexes Annexe 1 : Images Image 1 : Schéma global du projet ................................................................................. 14 Tableau 1 : Récapitulatif des différentes technologies de scan. .................................... 16 Image 2 : Compilation des différents paramètres que peuvent être réglés (onglet ‘Dialog’). .......................................................................................................................... 19 Image 3 : Schéma en cascade du processus de scan (initial) ......................................... 21 Image 4 : Schéma en cascade du processus de scan (final) ........................................... 22 Image 5 : Nuage de points 3D du marbre ...................................................................... 25 Image 6 : Nuage de points 3D du papier ........................................................................ 26 Image 7 : Plan crée par ‘fit’ (marbre) ............................................................................. 27 Image 8 : Plan crée par ‘fit’ (marbre). ............................................................................ 27 Image 9 : Histogramme qui représente le bruit pour le marbre et le papier. Axe horizontal : distance. Axe vertical : nombre de points................................................... 28 Image 9 : Représentation du bruit avec un code couleurs en fonction de la distance (marbre). ......................................................................................................................... 29 Image 10 : Représentation du bruit avec un code couleurs en fonction de la distance (papier). .......................................................................................................................... 30 Annexe 2 : Tableaux Tableau 1 : Récapitulatif des différentes technologies de scan ..................................... 16 Tableau 2 : Types de scans 3D. ....................................................................................... 17 Tableau 3 : Tableau d’essais ........................................................................................... 23