NOTICE MESHLAB
1
eravril 2020
1 OUVRIR UN NUAGES DU POINT
1.1 OUVRIR UN NUAGES DU POINT DANS LE BLOC-NOTES ++
Comprendre ce qu’est un nuage de points. Tout d’abord, c’est une collection de points coor- données comme vous pouvez le voir sur la figure ci-dessous. Ici, nous voyons un nuage de points au format PLY ascii édité avec Notepad ++
Ici, nous voyons un nuage de points au format PLY avec un codage binaire édité avec Bloc-notes ++. L’encodage binaire permet de petites tailles de fichier mais leur contenu ne peut pas être édité manuellement. Dans les deux cas, l’en-tête du fichier est lisible. Nous voyons combien de sommets, l’ordre pour lequel les coordonnées sont présentées, et, dans dans ce cas, il n’y a pas de surfaces.
Le nuage de points qui correspond à cette image présente également des normales pour chaque point (on peut dire qu’il y a une surface implicite), couleur (en RGB espace) et un paramètre de qualité (dernière colonne). Encore une fois, il n’y a pas de vertex1 .
1.2 OUVRIR UN NUAGES DU POINT DANS MESHLAB
MeshLab peut être téléchargé gratuitement depuis http ://meshlab.sourceforge.net/. Les nuages de points peuvent être ouverts en double-cliquant dans un fichier PLY (si vous adopter ce format de fichier pour MeshLab). Ici, nous voyons le nuage de points correspondant à les premier et deuxième fichiers PLY indiqués ci-dessus. Puisqu’il n’y a pas de normales associé aux points, il n’y a pas d’effet lumineux.
1. Point d’intersection entre deux ou plusieurs segments dans une construction 3D
1.3 NAVIGATION DANS MESHLAB
1. Bouton gauche de la souris + glisser : faire pivoter le centre du trackball 2. Molette de la souris : avancez ou reculez
3. Bouton central de la souris + glisser : panoramique
4. Maj + molette de la souris : changer le champ de vision de la caméra 5. Double-cliquez sur un point spécifique : place ce point au centre du trackball 6. Contrôle + molette de la souris : se déplace près du plan de détourage 7. Contrôle + Maj + molette de la souris : déplace le plan de détourage loin 8. Alt + Enter : entrer en mode plein écran
9. Contrôle + Maj + bouton gauche de la souris + glisser : change la direction de la lumière (ce ne prend effet que s’il y a des normales)
1.4 LES OPTIONS DE VISUALISATION DE MESHLAB
Les options de visualisations se trouvent dans le menu OUTILS. D’autres options de visuali- sations et d’informations se trouvent dans le menu VIEW. Explorez également le menu RENDU pour changer l’éclairage, les ombres, le mode de rendu et couleur
Les calques peuvent être affichés sous le menu de VUE ou en cliquant dans le calque icône. Ceci est utile si vous ouvrez plusieurs nuages de points ou maillages. Chaque point le cloud est affecté à une couche spécifique. La boîte de dialogue des calques se présente comme suit. On peut désactiver un calque en cliquant sur l’icône en forme d’œil. Vous pouvez supprimer un calque en en cliquant sur l’icône -.
1.5 ENREGISTRER UN PROJET DANS MESHLAB
Un projet n’est rien de plus qu’une structure d’information. Il ne contient pas le point cloud lui-même. Il peut être enregistré au format MLP (meshlab par défaut fichier de projet) ou ALN (LexNavigator Database Update) dans le menu FICHIER. Ces deux types de fichiers peut être édité avec un éditeur de texte. Un fichier de projet ressemble à ce qui suit (modifié avec Notepad ++). Il stocke les chemins et poses des fichiers de nuages de points (donnés par un Matrice 4x4).
Par défaut, la matrice d’identité est affectée à tous les fichiers ouverts.
2 MODIFICATION DES NUAGES DE POINTS (Mesh- Lab)
2.1 SÉLECTION ET SUPPRESSION DE POINTS :
Les points peuvent être sélectionnés en cliquant sur l’icône suivante.
Les points sont sélectionnés avec une clôture. Les points sélectionnés deviennent rouges. Les points peuvent être ajouté à une sélection précédente en appuyant sur CTRL pendant la sélection.
Points peut être retiré d’une sélection précédente en appuyant sur MAJ tout en sélection. Pour supprimer les points sélectionnés, appuyez sur CTRL + SUPPR ou cliquez sur le icône respective (à droite).
Explorez le menu FILTRES / SÉLECTION pour voir d’autres méthodes de sélection. Après la suppression, si vous souhaitez conserver le résultat, vous devez enregistrer. Sinon, le la suppression n’est pas mise à jour. Si vous souhaitez récupérer un modèle précédent (non enregistré) vous pouvez cliquer sur l’icône RELOAD.
2.2 CALCUL DES NORMALES POUR LES ENSEMBLES DE POINTS :
Si une collection de points n’a pas de normales associées, la visualisation est options d’édition médiocres et supplémentaires, telles que l’alignement ou une reconstruction de maillage ne sont pas possibles. Allez dans FILTRES / NORMALES, COURBES ET ORIENTATIONS / NORMALES INFORMATIQUES POUR LES ENSEMBLES DE POINTS.
Le nombre de voisins est le nombre de points utilisés pour estimer un plan tangent, à chaque point de l’ensemble. .
La normale en un point particulier est évidemment perpendiculaire à la valeur définie plan tangent pour ce point. La normale est stockée comme les composants d’un vecteur unitaire avec la direction déterminée. La désambiguïsation peut être obtenu en définissant un point particulier vers lequel les normales devraient retourner à. Une fois l’opération terminée, n’oubliez pas de sauvegarder le nuage de points et de sélectionnez l’option NORMAL.
La figure ci-dessous montre le premier effet possible d’avoir des normales associés aux points.
Cela permet d’utiliser une légère inclinaison pour améliorer la visualisation dans MeshLab.
2.3 NUAGES DE POINT D’ÉCHANTILLONNAGE BAS :
L’échantillonnage à la baisse peut être utile si nous avons des densités ponctuelles trop élevées pour nos objectifs. C’est généralement le cas avec les nuages de points à balayage laser où une densité élevée se produit près de la station de balayage. L’échantillonnage à la baisse peut être effectué avec le POISSON DISK SAMPLING comme indiqué ci-dessus.
Avec ce filtre, l’utilisateur peut définir le nombre absolu d’échantillons, ou peut définir un espacement moyen entre les points (rayon explicite). L’option Le sous-échantillonnage du maillage de base doit être sélectionné. Et le nuage de points filtré doit être choisi. A la fin n’oubliez pas de sauvegarder le nouvel échantillon qui a été créé en tant que nouveau calque.
2.4 ÉCHELLE, MOUVEMENT ET ROTATION
Ces transformations se trouvent sous FILTRES / NORMALES, COURBES ET ORIENTA- TION / TRANSFORMATION ... À première vue, ce sont de simples transformations, mais faites attention à les explications.
2.5 MISE À L’ÉCHELLE
L’échelle peut être uniforme ou différente pour chaque axe. Le centre d’échelle peut également être défini par l’utilisateur comme l’origine, le barycentre (centre de masse du nuage de points) ou un point personnalisé librement défini. Nous pouvons choisir d’appliquer le transformation à toutes les couches. Une option importante est FREEZE MATRIX. Qu’est-ce que ça veut dire ? Si nous sélectionnons le gel de la matrice, le nuage de points est en fait mis à l’échelle. Ça signifie qu’après l’enregistrement, les coordonnées des points sont multipliées par le facteur d’échelle. Mais si nous ne
sélectionnons pas le gel de la matrice, l’échelle est uniquement stockée en tant que transformation matrice dans le fichier de projet, mais le fichier de nuage de points reste inchangé. Notez que bien que l’effet visuel soit le même, l’approche est assez différent.
2.6 EN MOUVEMENT
Le déplacement fonctionne plus ou moins comme option d’échelle.
2.7 ROTATION
Les considérations précédentes sont également valables pour la rotation. L’axe de rotation peut être défini par l’utilisateur comme indiqué ci-dessus.
Le centre de rotation peut également être défini par l’utilisateur. L’axe est défini comme direc- tion vectorielle (axe personnalisé) appliquée à un point personnalisé (personnalisé centre), avec un angle particulier.
Notez que si vous ne figez pas la matrice, la rotation est stockée en tant que matrice (en bas à droite) dans le fichier de projet et les coordonnées des points restent inchangé. Sinon, les coordonnées des points sont modifiées en fonction de la rotation appliquée.
2.8 COMBINER LES TRANSFORMATIONS
Dans l’image, nous voyons une matrice de transformation combinant une rotation et un Tra- duction. La dernière colonne de la matrice correspond à la traduction et la sous-matrice 3x3 formée par les trois premières lignes et colonnes correspond à la rotation.
3 ALIGNEMENT DES NUAGES DE POINTS
Par exemple, lorsque nous inspectons un lieu ou un bâtiment avec le balayage laser, nous obtenons plusieurs nuages de points du même objet pris de vue différente points et montrant différentes caractéristiques de cet objet. Si ces nuages de points sont nivelé (si le système de balayage comme capteur d’inclinaison), alors l’un d’eux peut être défini comme référence. Sinon, des données de contrôle supplémentaires sont nécessaires (par ex. Relevé topographique).
Comme il a été dit précédemment, lorsque nous enregistrons un projet MeshLab, une matrice de position est affecté à chaque fichier de nuage de points. Par défaut, une matrice d’identité est assignés à tous les nuages de points lors de leur ouverture.
L’utilisateur choisit le système de coordonnées d’un nuage de points particulier comme système de coordonnées de référence. Autrement dit, ce nuage de points est défini comme référence (position inchangée ; définie comme la matrice d’identité) et les autres déplacer (changements de position ; définis par une matrice de transformation).
Ouvrez les nuages de points que vous souhaitez orienter et enregistrez un projet. Rappelles toi que vous pouvez enregistrer un projet au format MLP ou ALN.
Dans ce cas, nous avons 3 nuages de points avec des normales, et nous avons enregistré le projet avec le nom ALIGN.ALN. Regardons le fichier de projet avec Notepad ++. Comme on peut le voir, tous les nuages de points ont une matrice d’identité assignée.
Pour démarrer le processus d’alignement, cliquez sur l’icône correspondante. Il lancera la boîte de dialogue d’alignement telle qu’elle apparaît.
La première chose à faire est de choisir le nuage de points à définir comme référence. Pour ce faire, sélectionnez un nuage de points et cliquez sur COLLE ICI MAILLE. Avec cela, un astérisque apparaît à côté du nom du nuage de points.
Choisissez ensuite un autre nuage de points et commencez par cliquer sur POINT BASED COL- LAGE. La fenêtre suivante apparaît. D’un côté, vous avez nuage de points de référence. De l’autre côté, vous avez le nuage de points en mouvement. A ce stade, l’idée est d’aligner grossièrement les deux nuages de points manuellement définir les points homologues (4 points sont recommandés).
Les points sont sélectionnés en double-cliquant avec le bouton gauche de la souris. Ils peuvent être tous sélectionnés dans un nuage de points, puis tous sélectionnés dans l’autre point cloud (dans le même ordre), ou nous pouvons sélectionner un point à chaque fois sur les deux nuages de points.
Pour supprimer un point, faites CTRL + double-cliquez avec la souris gauche bouton. Une fois les points sélectionnés, cliquez sur OK. Vous pouvez changer le point de vue tout en sélectionnant les points.
À ce moment, vous pouvez voir que les deux nuages de points sont à peu près alignés. Et un autre astérisque se trouve à côté du nuage de points aligné. Nous répétons le processus pour le nuage de points restant. Notez que les deux points alignés les nuages sont maintenant définis comme référence pour le dernier nuage de points.
Une fois l’alignement initial terminé, nous procéderons à l’optimisation finale en exécutant l’ICP (Iterative Closest Point). Faites attention au DÉFAUT PARAMÈTRES ICP. Ils sont définis en unités absolues. Il est donc important de avoir une idée des unités que vous utilisez. Point de balayage laser terrestre les nuages sont généralement en mètres.
Lesample number (numéro d’échantillon) signifie le nombre de points homologues que le le logiciel essaiera de trouver et d’utiliser pour l’optimisation.
La minimal starting distance signifie le rayon qui sera utilisé pour trouver les points ho- mologues dans un nuage de points commençant par un ensemble de points dans le autre nuage de points.
La target distance est une valeur d’erreur d’alignement moyenne que le logiciel va essayer d’obtenir du processus. Avec point de balayage laser terrestre nuages, cette valeur doit être faible (0,005 m au moins).
LeMax Iteration Numest le nombre maximal d’itérations que le le logiciel fonctionnera.
L’option de Rigid matching doit être sélectionnée si nous alignons le point des nuages qui ont la même échelle. Si nous ne sélectionnons pas cette option, une échelle facteur sera introduit dans la matrice de transformation finale.
Après avoir cliqué sur PROCESS, l’algorithme ICP est lancé et les résultats sont affiché dans une fenêtre de journal.
Enregistrons le projet et jetons un œil au fichier ALN. Comme nous pouvons le voir, tous les nuages de points ont désormais une matrice de position (souvent appelée comme POSE) qui est différent de la matrice d’identité. Cela signifie que tout point les nuages se déplacent pendant le processus d’orientation (à gauche). Si nous devons attribuer la matrice d’identité à un nuage de
points particulier et que nous voulons pour garder la cohérence interne du modèle, on peut lancer l’ALIGN outil, collez tous les nuages de points alignés et choisissez le nuage de points qui nous voulons définir comme maillage de base (matrices illustrées à droite ; notez le présence de la matrice d’identité).
4 CRÉATION ET ÉDITION DE MAILLES
4.1 FUSIONNER LES NUAGES DE POINTS
Une fois que vous avez un ensemble de nuages de points déjà orientés, vous pouvez avoir besoin ou vouloir pour fusionner ces couches en une seule. Cela peut être lancé en cliquant avec le bouton gauche de la souris dans la boîte de dialogue des calques et choisir FLATTEN VISIBLE COUCHES.
La boîte de dialogue suivante apparaît alors. Si vous travaillez avec un point ensembles (pas de maillages), veuillez GARDER LES POINTS NON RÉFÉRENCÉS.
4.2 CRÉATION DE MAILLES
Il existe plusieurs FILTRES pour la création de maillage dans MeshLab. Un très utilisé est RECONSTRUCTION DE SURFACE : POISSON. Notez que les points doivent ont des normales attribuées.
Veuillez faire attention aux paramètres par défaut. L’un des plus importants est OCTREE DEPTH (6 par défaut). Les exigences matérielles ne sont pas proportionnelles à l’incrément de cette valeur. Il faut se méfier ! cependant ce paramètre a un effet sur la qualité de la reconstruction.
Il s’agit d’une image d’une reconstruction de maillage utilisant le filtre référencé. Comme toi peut voir, de faux triangles sont créés. Ils doivent être supprimés. Nous allons revenir sur ce sujet plus tard.
4.3 TRANSFERT DE COULEUR EN MAILLES
Allez dans FILTRES / ÉCHANTILLONNAGE / TRANSFERT D’ATTRIBUT VERTEX.
Dans la boîte de dialogue VERTEX ATTRIBUTE TRANSFER, choisissez VERTEX COLOR.
Choisissez également la MAILLE SOURCE (à partir de laquelle la couleur sera transférée) et la MAILLE CIBLE (maille qui recevra la couleur).
4.4 ÉDITION DE MAILLES
Comme nous l’avons dit précédemment, il y a quelques faux triangles qui ont été créés et doivent être supprimés. Une façon efficace de sélectionner la majeure partie de ces les triangles correspondent à la longueur des bords (voir filtre SELECTION).
Une fois les triangles supprimés, vous disposez d’un maillage préliminaire qui peut être encore édité. Alors, veuillez explorer les autres outils sur MeshLab !