{"id":531,"date":"2018-10-09T12:56:04","date_gmt":"2018-10-09T10:56:04","guid":{"rendered":"http:\/\/a.francoise.free.fr\/?page_id=531"},"modified":"2022-10-06T17:22:18","modified_gmt":"2022-10-06T15:22:18","slug":"meshlab","status":"publish","type":"page","link":"https:\/\/www.aacmb.fr\/wordpress\/meshlab\/","title":{"rendered":"MeshLab"},"content":{"rendered":"<p style=\"text-align: right;\"><a class=\"maxbutton-1 maxbutton maxbutton-boutonretour\" title=\"Retour \u00e0 la page pr\u00e9c\u00e9dente\" href=\"\"><span class='mb-text'>Retour<\/span><\/a><\/p>\n<p>MeshLab va nous permettre de convertir des fichiers 3D de diff\u00e9rents formats au format .stl,<\/p>\n<p>Dans le cas d&rsquo;un fichier source en nuage de points, issu d&rsquo;une num\u00e9risation 3D laser, plusieurs \u00e9tapes seront n\u00e9cessaires avant de pouvoir disposer d&rsquo;un fichier utilisable \u00e0 convertir. On trouveras en particulier les op\u00e9rations de :<\/p>\n<ul>\n<li>nettoyage du nuage par suppression des points \u00e9trangers,<\/li>\n<li>normalisation des orientations de points (afin de cr\u00e9er des surfaces correctement orient\u00e9es),<\/li>\n<li>la cr\u00e9ation des surfaces, pour obtenir un objet ferm\u00e9,<\/li>\n<li>le nettoyage des surfaces doubles,<\/li>\n<li>la simplification du maillage car un maillage tr\u00e8s (trop) dense ne sera pas synonyme d&rsquo;excellent rendu \u00e0 l&rsquo;impression.<\/li>\n<\/ul>\n<h4>Exemple pratique : Utilisation d&rsquo;un mod\u00e8le num\u00e9ris\u00e9 pr\u00e9c\u00e9demment<\/h4>\n<h5>ouverture dU mod\u00e8le<\/h5>\n<p>Rien de bien particulier : File -&gt; Import Mesh.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-3514 aligncenter\" src=\"https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/mesh_01-e1665060752283.png\" alt=\"\" width=\"500\" height=\"424\" srcset=\"https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/mesh_01-e1665060752283.png 500w, https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/mesh_01-e1665060752283-350x297.png 350w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/p>\n<p>M\u00eame si l&rsquo;on distingue bien le pingouin original, on constate que la num\u00e9risation a g\u00e9n\u00e9r\u00e9 un certain nombre de points parasite (au dessus et en dessous par exemple). La premi\u00e8re \u00e9tape va consister \u00e0 nettoyer le mod\u00e8_le<\/p>\n<h4>Nettoyage du mod\u00e8le<\/h4>\n<p>MeshLab fourni des outils permettant de s\u00e9lectionner dans l&rsquo;espace des ensembles de points, de surfaces ou les deux.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-3515 aligncenter\" src=\"https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/mesh_02.png\" alt=\"\" width=\"297\" height=\"65\" \/><\/p>\n<p>Nous allons utiliser ces outils pour faire un peu de nettoyage.<\/p>\n<p>Avec pas mal de patience, on arrive \u00e0 un premier nettoyage.<br \/>\nATTENTION : MeshLab n&rsquo;offre pas la possibilit\u00e9 de retour arri\u00e8re (pas de Ctrl-Z). Donc pensez \u00e0 sauvegarder r\u00e9guli\u00e8rement vos actions. Une suppression trop radicale d&rsquo;un groupe de points, et il faudra recommencer depuis la derni\u00e8re sauvegarde.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-3516 aligncenter\" src=\"https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/mesh_03-e1665061701268.png\" alt=\"\" width=\"500\" height=\"438\" srcset=\"https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/mesh_03-e1665061701268.png 500w, https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/mesh_03-e1665061701268-350x307.png 350w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/p>\n<h4>Cr\u00e9ation des normales<\/h4>\n<p>Pour traiter un nuage de points, il faut d&rsquo;abord cr\u00e9er les normales de l&rsquo;objet :<\/p>\n<p><em><strong>Filter &gt; Normals, Curvatures and Orientation &gt; Compute normls for points sets<\/strong><\/em><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-3517 aligncenter\" src=\"https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/mesh_04-e1665063822963.png\" alt=\"\" width=\"500\" height=\"348\" srcset=\"https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/mesh_04-e1665063822963.png 500w, https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/mesh_04-e1665063822963-350x244.png 350w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/p>\n<p>Pour le param\u00e8tre\u00a0<em>Neighbour num<\/em>, on pourra faire les tests avec les valeurs 10, 50 et 100. Cette valeur repr\u00e9sente le nombre de points voisins utilis\u00e9s pour calculer la normale. Les autres param\u00e8tres peuvent \u00eatre laiss\u00e9s en l&rsquo;\u00e9tat.<\/p>\n<h4>Reconstruction de l&rsquo;objet \u00e0 partir du nuage de points<\/h4>\n<p>On va maintenant cr\u00e9er les surfaces reliant les points.<\/p>\n<p><strong><em>Filter &gt; Remeshing, Simplification and Reconstruction &gt; Surface Reconstruction : Screened Poisson<\/em><\/strong><\/p>\n<p>Vous pouvez laisser les param\u00e8tres par d\u00e9faut.<\/p>\n<p>A ce stade, on peux d\u00e9j\u00e0 tenter un export au format .stl, pour voir ce que donnerait une impression 3D.<\/p>\n<p>Ouverture dans Cura :<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-3519 aligncenter\" src=\"https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/scan_09-e1665066697327.png\" alt=\"\" width=\"500\" height=\"560\" srcset=\"https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/scan_09-e1665066697327.png 500w, https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/scan_09-e1665066697327-350x392.png 350w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/p>\n<p>Le r\u00e9sultat est plut\u00f4t ressemblant \u00e0 l&rsquo;orginal, mais Cura d\u00e9tecte plusieurs types d&rsquo;erreurs, et demande de corriger le mod\u00e8le avant impression :<\/p>\n<ul>\n<li>des surfaces non ferm\u00e9es,<\/li>\n<li>des \u00e9l\u00e9ments pr\u00e9sents n&rsquo;appartenant pas au mod\u00e8le.<\/li>\n<\/ul>\n<p>Le premier point est in\u00e9vitable sur un fichier provenant d&rsquo;un scan laser. Tout d&rsquo;abord parce que le mod\u00e8le est pos\u00e9 sur une surface, et que donc la face inf\u00e9rieure du mod\u00e8le ne sera pas num\u00e9ris\u00e9e. Ensuite parce qu&rsquo;il existera toujours des zones d&rsquo;ombre plus ou moins bien num\u00e9ris\u00e9es.<\/p>\n<p>Concernant le deuxi\u00e8me point, il sera g\u00e9n\u00e9ralement li\u00e9 \u00e0 un nettoyage initial des points parasites imparfait. Ici par exemple, les points du nuage pr\u00e9sents \u00e0 l&rsquo;int\u00e9rieur du mod\u00e8le ont donn\u00e9 lieu \u00e0 la g\u00e9n\u00e9ration d&rsquo;un volume \u00ab\u00a0flottant\u00a0\u00bb non rattach\u00e9 au mod\u00e8le. El\u00e9ment totalement impossible \u00e0 imprimer (et surtout inutile).<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-3521 aligncenter\" src=\"https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/scan_10-e1665067318168.png\" alt=\"\" width=\"500\" height=\"415\" srcset=\"https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/scan_10-e1665067318168.png 500w, https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/scan_10-e1665067318168-350x291.png 350w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/p>\n<h4>Mesh Mixer \u00e0 la rescousse<\/h4>\n<p>M\u00eame si nous sommes ici dans un petit tuto sur MeshLab, il serait dommage de ne pas aller au bout de la production d&rsquo;un fichier stl utilisable.<\/p>\n<p>On va donc ouvrir notre fichier stl avec MeshMixer et ex\u00e9cuter :<\/p>\n<p><strong><em> Analysis &gt; Inspector<\/em><\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-3523 aligncenter\" src=\"https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/scan_11-e1665068686355.png\" alt=\"\" width=\"500\" height=\"459\" srcset=\"https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/scan_11-e1665068686355.png 500w, https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/scan_11-e1665068686355-350x321.png 350w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/p>\n<p>Nous voyons toutes les erreurs identifi\u00e9es par le logiciel. Nous pouvons lancer le mode <strong><em>Auto Repair All<\/em><\/strong>.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-3524 aligncenter\" src=\"https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/scan_12-e1665068964682.png\" alt=\"\" width=\"500\" height=\"539\" srcset=\"https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/scan_12-e1665068964682.png 500w, https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/scan_12-e1665068964682-350x377.png 350w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/p>\n<p>R\u00e9sultat nettement mieux. Il subsiste une seule erreur.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-3526 aligncenter\" src=\"https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/scan_13.png\" alt=\"\" width=\"431\" height=\"456\" srcset=\"https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/scan_13.png 431w, https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/scan_13-350x370.png 350w, https:\/\/www.aacmb.fr\/wordpress\/wp-content\/uploads\/2022\/10\/scan_13-284x300.png 284w\" sizes=\"auto, (max-width: 431px) 100vw, 431px\" \/><\/p>\n<p>M\u00eame si certaines zones semblent difficiles \u00e0 imprimer, Cura n&rsquo;indique plus de pb d&rsquo;impression.<\/p>\n<p style=\"text-align: right;\"><a class=\"maxbutton-1 maxbutton maxbutton-boutonretour\" title=\"Retour \u00e0 la page pr\u00e9c\u00e9dente\" href=\"\"><span class='mb-text'>Retour<\/span><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>MeshLab va nous permettre de convertir des fichiers 3D de diff\u00e9rents formats au format .stl, Dans le cas d&rsquo;un fichier source en nuage de points, issu d&rsquo;une num\u00e9risation 3D laser, plusieurs \u00e9tapes seront n\u00e9cessaires avant de pouvoir disposer d&rsquo;un fichier utilisable \u00e0 convertir. On trouveras en particulier les op\u00e9rations de : nettoyage du nuage par &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/www.aacmb.fr\/wordpress\/meshlab\/\" class=\"more-link\">Continuer la lecture<span class=\"screen-reader-text\"> de &laquo;&nbsp;MeshLab&nbsp;&raquo;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"categories":[66],"tags":[],"class_list":["post-531","page","type-page","status-publish","hentry","category-outils"],"_links":{"self":[{"href":"https:\/\/www.aacmb.fr\/wordpress\/wp-json\/wp\/v2\/pages\/531","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.aacmb.fr\/wordpress\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.aacmb.fr\/wordpress\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.aacmb.fr\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.aacmb.fr\/wordpress\/wp-json\/wp\/v2\/comments?post=531"}],"version-history":[{"count":0,"href":"https:\/\/www.aacmb.fr\/wordpress\/wp-json\/wp\/v2\/pages\/531\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.aacmb.fr\/wordpress\/wp-json\/wp\/v2\/media?parent=531"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.aacmb.fr\/wordpress\/wp-json\/wp\/v2\/categories?post=531"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.aacmb.fr\/wordpress\/wp-json\/wp\/v2\/tags?post=531"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}