Page 1

Un caso di studio : modello Nefertiti MeshLab Software Open Source Enrico Giacalone Giulia Gambino Maria Elisa Torre Vito Bono


Introduzione

Cosa è MeshLab MeshLab è un sistema avanzato di elaborazione delle mesh. I numerosi filtri a disposizione permettono di raggiungere facilmente risultati ottimali nella pulizia, nella ricostruzione e nell’ elaborazione di rendering anche su mesh di grandi dimensioni. Cosa spiega questo tutorial L‘ esposizione di questo caso di studio si propone come una guida che tratta solo di alcuni filtri utili per la pulizia e la ricostruzione delle mesh, scelti per la loro immediata comprensione e perché si prestano bene alla soluzione di diverse problematiche. Il percorso di seguito esposto, per l’ elaborazione della mesh in esame, sarà comunque accompagnato da valutazioni descrittive e comparazioni tramite immagini dei risultati tra diversi filtri. Le estensioni

Fig. 1 Icona MeshLab

Fig. 2 Formati “Open”

È importante sapere quali estensioni è possibile aprire, importare o esportare per far comunicare MeshLab con altri software. Open and Save - MeshLab può aprire e salvare i progetti in tre formati diversi che riconosce direttamente come file di progetto (questo significa che quando si decide di aprire in MeshLab un file con una di queste estensioni, il software aprirà tutto il progetto, ovvero tutti i livelli aperti ed elaborati), i formati sono: .MPL, .ALN, .OUT, come in Fig.2. Import and export Importazione: .PLY, .STL, .OFF, .OBJ, .XYZ, .GTS, .CTM, .X3D, .X3DV, .VMI, .QOBJ, .V3D, .PTS, .APTS, .TRI, .ASC, .BRE, .PDB, COLLADA e VRML (Fig.3) ; Esportazione: .PLY, .STL, .OFF, .OBJ, .XYZ, GTS, .CTM, .X3D, DXF, .JSON, .U3D, .IDTF, COLLADA e VRML. I formati sottolineati Blu - supportano solo nuvole di punti Verde - supportano le mesh Blu - formati che supportano la texture

Fig. 3 Formati “Import”


Normali e ricostruzione Poisson

Fig. 4 Interfaccia del software all’ avvio

Iniziare un nuovo progetto Per iniziare un nuovo progetto, a partire da un file che non corrisponde a quelli descritti precedentemente in “Open and Save”, si dovrà scegliere di importarli - un esempio si ha quando si vuole modificare una nuvola di punti acquisita con altri software (in questo caso è consigliabile importare la nuvola in .PLY), o una nuvola di punti con mesh (in questo caso è consigliabile importare il file in formato .STL). Aprire dunque File / Import Mesh... / selezionare il file che si intende aprire e poi su “OK”. In questo caso si sta lavorando con il modello “Nefertiti” acquisito tramite scansione con laser scanner Picza, a tutto tondo con p.c 1 e p.a 0.6, esportato dal software Dr.Picza in formato .stl. Nella pagina seguente è possibile vedere il modello all’ apertura (Fig.6) e i particolari (Fig. 7 - 8 e 9). Fig. 5 “Import Mesh”


Fig. 6 Modello “Nefertiti� appena aperto

Fig. 7 Particolare nuca

Fig. 8 Particolare testa

Fig. 9 Particolare base


1 2 3

Fig. 10 Modificare le normali

Settaggio delle normali La prima cosa da fare quando si vuole elaborare una mesh è ricalcolare le normali, questo è un passaggio molto importante e saltarlo potrebbe compromettere la buona riuscita del lavoro. Per fare ciò è necessario selezionare Filters / Normals, Curvatures and Orientations / Compute normals for point sets. Comparirà quindi la finestra di dialogo in Fig.10 - “Number of neigbors” (1) è il numero di punti che vengono utilizzati per stimare un piano tangente in ogni punto della nuvola, è consigliabile quindi utilizzare un numero abbastanza basso (tra 10 e 30). - “Flip normals w.r.t viewpoint” (2), se selezionato, capovolgerà le normali. Questo comando influisce sulla ricostruzione della mesh in quanto comunica al software il “verso” da seguire durante la riparazione.

- “Viewpoint Pos.” e “Get” (3) permettono di impostare la direzione delle normali. Una volta compilata la finestra di dialogo cliccare su “Apply”, applicando così le modifiche desiderate. Nella pagina seguente, in Fig. 11, è possibile notare la differenza della regolarità delle normali prima e dopo il comando.

Per visualizzare la differenza Per controllare a livello grafico gli effetti del settaggio delle normali è necessario cliccare su Render / Show Vertex Normals.


Fig. 11 A sinistra - Normali prima della modifica a destra - Normali dopo la modifica

Salvare la modifica Per rendere permanente la modifica è necessario salvare la nuova mesh (si parla di nuova mesh proprio perchè, anche se non si vede, è totalmente diversa dalla precedente) esportandola: File / Export Mesh As.. Si aprirà una finestra (Fig.13) in cui sarà possibile selezionare la cartella di destinazione, scrivere il nome della nuova mesh (di default riporterà il nome del livello) e sceglierne l’ estensione (di default in .ply). Cliccando su “Save” (1) si aprirà un’ altra finestra di dialogo (Fig.14), in questa si dovranno attivare le seguenti voci: - “Normal” (2); - “Binary Encoding” (3); - “All” (4). In questo modo si suggerisce al programma di salvare le normali dei vertici (2) in codice binario (3), insieme a tutto il resto del livello (4). Cliccare infine su “OK”.

Fig. 12 Esportare la mesh modificata

Nota Non si usa “Save Poject” o “Export Mesh...” perchè il primo non salverebbe la modifica delle normali, il secondo non farebbe selezionare la cartella di destinazione.


1

Fig. 13 Export layer

2

3 4

Fig. 14 “Save option for [...] .stl”


Fig. 14 Pulsante dei livelli

Fig. 14 Elenco dei livelli

Chiudere e riaprire Per lavorare su questa nuova mesh senza incorrere in problemi di conflitti di calcolo interni al software, si dovrà chiudere la finestra di progetto e importare il file con estensione .ply appena salvato: File / Import Mesh ... / selezionare la mesh, cliccare su “OK”. I livelli A questo punto sarà veramente molto utile aprire la finestra dei livelli attraverso l’ apposita icona (Fig.15). Accanto al nome della mesh vi saranno due icone selezionabili: - icona “+” - se selezionata, aprirà un elenco dove si potrà vedere il nome del file sorgente, il numero delle facce e dei vertici. - icona “occhio” - selezionando questa icona è possibilite nascondere o visualizzare la mesh.

Da ricordare sempre Save Project - salva l’ intero progetto con tutti i livelli in esso ma non salva le modifiche di questi. Export Mesh.. - Quando si salva un livello si apre una finestra chiamata <Save “nome mesh” Layer>, è importante stare molto attenti al nome del livelo che si sta salvando, perchè il software tende a salvare ogni livello come file singolo (in .ply come default ma è possibile cambiare l’ estensione dal menu a tendina) Ogni volta che si apporta una modifica, il software farà apparire un piccolo asterisco accanto al nome del livello appena modificato. Una volta salvato il livello, l’asterisco scomparirà. È importantissimo salvare tutti i singoli file dello stesso progetto (e poi l‘ intero progetto) in un’ unica cartella.


Fig. 15 Poisson-disk Sampling

Pulire la mesh Uno strumento utile per la pulizia della mesh è il comando Poisson-disk Sampling (Filters / Sampling / Poisson-disk Sampling). Con esso è possibile rimuovere i vertici superflui dalla mesh in esame, tale semplificazione incide sulla qualità e la quantità di dettagli che il software calcolerà nella fase finale di elaborazione della mesh. Selezionando il comando si aprirà la finestra di dialogo in Fig.16. - “Number of samples” (1) serve a definire il numero assoluto di campioni. - “Explicit Radius” (2) definisce una spaziatura media tra i punti, quindi maggiore è il valore immesso nella stringa, maggiore sarà il numero di punti eliminati. E’ possibile scegliere se immettere il valore in unità o in percentuale, in ogni caso il software indipendentemente dal campo compilato, calcolerà automaticamente il valore corrispon-

dente non specificato. E’ importante attivare la voce “Base Mesh Subsampling” (3) in modo da creare un sottolivello nella mesh di origine, avendo così la possibilità di monitorare la quantità finale di vertici conservati. Cliccare su Apply. Nella finestra dei livelli comparirà un nuovo layer chiamato “Poison-disk Samples” (di default). Visionando i dettagli di entrambi i livelli, ovvero quello di origine e quello in cui è stato applicato il filtro, sarà possibile vedere la quantità di vertici conservati come in Fig.17. Se è stata rimossa una quantità di vertiti maggiore di un trentesimo della mesh originale, è consigliabile cancellare il layer del filtro e ripetere l’operazione immettendo un valore in “Explicit Radius” minore del precedente. Una volta raggiunto il risultato desiderato, è necessario esportare il livello creato (File / Export Mesh As...), se anche il primo livello è


1 2

3

Fig. 16 Finestra di dialogo del filtro Poisson-disk Sampling

Fig. 17 Differenza della quantità dei vertici

accompagnato da un asterisco, sarà necessario esportare anche questo (ricorda che si tratta del livello salvato precedentemente per il calcolo delle normali, quindi il software chiederà di sovrascrivere il file, cliccare su “Ok”). Bisogna salvare anche il progetto File / Save Project. Ricordarsi di chiudere il progetto e riaprirlo attraverso File / Open Project / selezionare il file appena salvato in estenzione .mpl. In Fig.18 è possibile vedere il cambiamento della mesh all’apertura del progetto.

Fig. 18 Cambiamento alla riapertura del progetto


1 2 3 4

Fig. 19 Applicare il Filtro di ricostruzione Poisson

Ricostruire la mesh Per ricostruire utilizzeremo il comando Filters / Remeshing, Semplification and Reconstruction / Surface Reconstruction : Poisson. Una volta selezionato il comando, apparirà la finestra come in Fig. 19 che darà la possibilità di immettere dei valori nelle seguenti voci: - “Octree Depth” (1) - un octree è una struttura di dati ad albero in cui ogni nodo ammette otto "figli". Ciò significa che maggiore è il valore espresso nella casella, maggiore sarà la "profondità" ovvero il numero dei sottolivelli consentiti ad ogni albero, di conseguenza saranno incrementati i dati calcolati (verranno presi in considerazione un numero maggiore di vertici). Tutto ciò si traduce in una maggiore precisione nel dettaglio della ricostruzione. Il range consigliato va da 9 a 11; - “Solver Divide” (2) - è un valore che interessa maggiormente il software, nel senso che non restituisce a livello grafico alcunchè, perchè

agisce a livello di calcolo. questa voce serve infatti a ridurre il sovraccarico della memoria di calcolo al prezzo di un piccolo aumento del tempo di ricostruzione e aiuta noi a non avere problemi di crash!!. è consigliabile utilizzare un valore di suddivisione pari a 9 nel caso la profondità (octree) sia 11; - “Samples per Node” (3) - specifica il numero minimo di campioni di punti che dovrebbero rientrare in un nodo di octree. Per i modelli con poco rumore è consigliabile utilizzare valori espressi in nell'intervallo 1.0 - 5.0 , per modelli con molto rumore il range si sposta verso valori come 15.0 - 20.0. Tuttavia è consigliabile mantenere il valore di default (1); - “Surface offsetting” (4) - specifica un valore di correzione per la isosuperficie, nel senso che più il valore sarà grande, più la mesh ricostruita sarà lontana dai vertici di riferimento. Il valore di default è 1 (nessun offset), è consigliabile mantenerlo.


Fig. 20 Superficie Poisson del modello â&#x20AC;&#x153;Nefertitiâ&#x20AC;?

Fig. 21 Particolare nuca

Fig. 22 Particolare testa

Fig. 23 Particolare base


Cosa sarebbe successo se.. Questo è il risultato della ricostruzione poisson nel caso in cui avessimo capovolto le normali della mesh iniziale.

Da notare, in Fig. 26 la chiusura delle superfici verso lâ&#x20AC;&#x2122; interno del modello causata proprio dallâ&#x20AC;&#x2122; inversione delle normali.

Fig. 24 Flip Vertex

Fig. 25 Sovrapposizione delle mesh

Fig. 26 Particolare della ricostruzione

Fig. 27 Particolare della ricostruzione


Zone critiche

Fig. 28 Selezione di una zona critica della mesh iniziale

Trattare le zone critiche

La nuca

Come si è visto, la ricostruzione della superficie attraverso il comando Surface Reconstruction : Poisson ha tolto il rumore della mesh iniziale e ricostruito le parti mancanti, tuttavia ha creato delle superfici atipiche, come quella della zona della nuca e l’ increspatura in corrispondenza del vecchio foro sul copricapo del modello. Si può intervenire in diversi modi su questi e il comando che utilizzeremo in questo tutorial sarà il Laplacian smooth, un comando che serve a “stirare” le superfici irregolari, increspate o piene di rumore. Applicheremo quindi lo stesso comando in due fasi differenti del percorso dell’ elaborazione: per migliorare la zona critica della nuca, lo applicheremo sulla mesh iniziale, ovvero quella dove si erano manipolate solo le normali e si era applicata la semplificazione dei vertici; per il copricapo, applicheremo invece il comando nella fase post-ricostruzione Poisson.

Per selezionare la zona da trattare bisognerà cliccare sul pulsante apposito (in questo caso quello che permette di selezionare le facce della mesh), poi, come in Fig. 29, è necessario selezionare il comando di nostro interesse da Filters / Smoothing, Fairing and Deformation / Laplacian Smooth. Da quì si aprirà la finestra di dialogo in Fig. 30. È interessante notare come in questo caso sia possibile avere una Preview sul risultato prima di applicarlo, è infatti consigliabile mantenere selezionata l’ opzione per un immediato riscontro sull’ esito. Selezionare È possibile aggiungere altre facce ( o vertici ) ad una precedente selezione tenendo premuto il pulsante CTRL contemporaneamente al tasto sinistro del mouse, al contrario, per rimuoverle, basterà tenere premuto il tasto SHIFT durante la selezione con il mouse.


Fig. 29 Comando Laplacian Smooth

Fig. 30 Finestra di dialogo del comando Laplacian Smooth


Fig. 31 Ripetizione del filtro in una zona più ristretta

Si tratta di un algoritmo in cui, per ogni vertice, viene calcolata la posizione media di questi rispetto agli altri. Nella finestra di dialogo troviamo dunque le seguenti voci: - “Smoothing steps” - è il numero di volte che l'intero algoritmo viene ripetuto, ciò significa che più è alto il valore immesso, maggiore sarà la levigatura della superficie; - “1D Boundary Smoothing” - se selezionato, mantiene inalterati i vertici appena al di là della selezione, ciò può comportare la formazione di fori nel caso in cui immettessimo valori troppo alti nella voce precedente, oppure potrebbe portare ad uno stacco netto della levigatura che è comunque sempre meglio evitare; - “Cotangent weighting” - se selezionato, il sistema manterrà l’ andamento delle superfici, se non selezionato, permetterà invece una maggiore libertà di levigatura. - “Affect only selected faces” - permette di eseguire il filtro solo nelle facce selezionate.

Fig. 32 Selezione di un’ area minore della precedente


Fig. 33 A sinistra - Mesh senza Laplacian Smooth a destra - Mesh dopo il Laplacian Smooth

È importante stare attenti a cosa si seleziona al fine di evitare stacchi troppo bruschi nella superficie della mesh o buchi, pertanto è consigliabile procedere applicando più volte il filtro adattandolo, di volta in volta, a ciò che possiamo o non possiamo fare per giungere ad un risultato soddisfacente. In questo modello si è infatti applicato più volte il Laplacian smooth inserendo valori diversi in aree man mano più ristrette, per una maggiore cura nel dettaglio. In Fig. 30 è possibile vedere che si è scelto di mantenere uno step abbastanza basso (in questo caso 5), selezionando al contempo le ultime due voci descritte in modo di mantenere sempre una regolarità nell’ andamento dei vertici in un’ area così grande come quella selezionata. In Fig. 31 invece il valore dello step si fa più alto (in questo caso 20) verificando solo la voce che permette di applicare il filtro solo nell’ area selezionata, in questo caso molto più ristretta,

come si può notare in Fig.32. Ovviamente la decisione di inserire valori più “azzardati” nel secondo caso non dipende dalla grandezza dell’ area, ma dal fatto che comunque avevamo già “preparato” i vertici ad uno stiramento con il precedente passaggio. A questo punto l’ area trattata risulterà sempre un po confusa e questo è più che normale, infatti è bene ricordarsi che si sta lavorando su una mesh grezza, con molto rumore e piena di buchi. Per avere un buon riscontro si deve ancora applicare il filtro di ricostruzione poisson (Filters / Remeshing, Semplification and Reconstruction / Surface Reconstruction : Poisson). Il risultato della nuova mesh è visibile in Fig. 33, comparata alla mesh in cui avevamo applicato la ricostruzione senza prima intervenire con la levigatura (Laplacian smooth). Si noti come, nonostante il filtro applicato, vi sia


Fig. 34 Risultato dell’ applicazione del filtro “Laplacian smooth” sulla superficie ricostruita

ancora qualche piccola imperfezione (Fig. 33), si tratta comunque di un problema facilmente risolvibile, sarà infatti necessario applicare nuovamente il medesimo filtro, questa volta sulla superficie poisson di ricostruzione per avere una buona resa finale, come in Fig.34. Salvare i singoli livelli contrassegnati con l’ asterisco tramite File / Export Mesh As... rinominandoli in altro modo rispetto ai precedenti per evitare che vengano sovrascritti. Salvare anche l’ intero progetto tramite File / Save Project ricordandosi ancora di inserire un nuovo nome.

Nota Ricorda di rinominare tutto ciò che potrebbe essere utile in futuro, così da non sovrascrivere i salvataggi precedenti.

Il copricapo L‘ utilizzo di ogni filtro ha delle conseguenze sulla resa finale della ricostruzione dell’ intera mesh, pertanto è sempre utile osservare bene il risultato ottenuto per evitare di salvare superfici anomale difficili da sistemare. In questo tutorial affronteremo infatti un caso in cui la ricostruzione della mesh abbia creato delle superfici anomale in zone non trattate; si noti infatti, in Fig. 35, come il comando di ricostruzione Poisson (in seguito al Laplacian Smooth applicato solo nella zona della nuca), abbia creato un’ improbabile rete di ricostruzione nella parte superiore del modello. Al contrario della problematica riscontrata nel paragrafo che trattava del calcolo delle normali, dove si è verificata una ricostruzione totalmente errata che costringeva l‘ utente ad annullare tutti i filtri per ricalcolare fin dal principio l’ intera elaborazione della mesh, in questo caso, invece, dato l‘ ottimo risultato della rico-


Fig. 35 A sinistra - Mesh senza Laplacian Smooth a destra - Mesh dopo il Laplacian Smooth

struzione della nuca a discapito della parte superiore del modello, basterà riprendere il progetto in cui la mesh non è stata trattata tramite filtro di levigazione. Come si può notare in Fig. 36 si ha un risultato soddisfacente applicando il Laplacian smooth sulla zona rugosa della mesh ricostruita in precedenza (ovvero quella dove non vi era stato applicato il Laplacian smooth nella zona della nuca).

Fig. 36 Risultato dell’ applicazione del filtro “Laplacian smooth” sulla superficie ricostruita


Unire due mesh diverse

Fig. 37 Aprire un progetto come livello

Prendere solo ciò che serve A questo punto si hanno due mesh diverse in progetti diversi, delle quali ci interessano solo alcune zone dell’ una e dell’ altra ma attraverso alcuni comandi è possibile trarre da esse un’ unica mesh avente le parti migliori di entrambe. Sarà necessario innanzitutto aprire i due progetti insieme, per farlo si dovrà aprire il primo progetto attraverso File / Open Project... , da questo si dovrà aprire il secondo progetto attraverso File / Append Project to current... Dalla finestra dei livelli sarà possibile verificare la presenza di tutti i livelli di entrambi i progetti (come in Fig. 37). Ora si dovranno eliminare le parti che non servono, in questo caso si è preso da una mesh solo la parte superiore e dall’ altra si è tagliata la parte corrispondente a quella lasciata nell’ altra mesh, come si nota nelle Fig. 38 e 39. Infine bisogna unire le mesh risultanti in un’ unico modello, per farlo è necessario mantene-

re visibili solo i livelli interessati, cliccare con il tasto destro su uno dei due livelli e selezionare la voce “Flatten Visible Layers”, apparirà dunque la finestra di dialogo in Fig.40 avente le seguenti voci: - “Merge Only Visible Layers” - se verificato unirà solo i livelli visibili; - “Delete Layers” - se selezionato cancellerà i livelli sorgente (è consigliabile non verificare la voce); - “Merge duplicate vertices” - se selezionato, permette di cancellare i vertici doppi, utile per non incorrere ad errori come ad esempio ritrovare errori di calcolo durante l’ eventuale prototipazione; - “Keep unreferenced vertices” - se selezionato, permette di non escludere dall’ unione i vertici privi di riferimento dai livelli di origine. Se si sta lavorando con sole nuvole di punti (e non con mesh) non si deve verificare la voce. Il risultato dell’ unione sarà un nuovo livello chiamato “Merged Mesh” (Fig.41).


Fig. 38 Mesh 1- Mantenere dalla mesh solo le parti interessate

Fig. 39 Mesh 2- Mantenere dalla mesh solo le parti interessate

Fig. 40 Finestra di dialogo per lâ&#x20AC;&#x2122; unione delle mesh

Fig. 41 Nuovo livello - Mesh unite


Allineamento

Fig. 42 Pulsante di allineamento

Fig. 43 Finestra di allineamento

Allineare Può capitare di avere nuvole di punti dello stesso oggetto non allineate tra loro. Per far si che fra queste vi sia una collimazione bisogna selezionare il comando dall’ apposita icona (la quale riporta la lettera A su fondo giallo) posta al di sotto della barra dei menu. Si aprirà un elenco, simile a quello dei livelli e la prima cosa da fare è scegliere quale nuvola di punti deve essere impostata come riferimento, questo viene fatto selezionando una nuvola di punti e cliccando su Glue Here Mesh, apparirà automaticamente un asterisco accanto al nome della mesh scelta per indicare che si tratta di quella di riferimento. Seleziondo l’ altra nuvola si dovrà cliccare su “Point Based Glueing”, si aprirà quindi la finestra in Fig. 44 dove si ha da un lato la nuvola di punti di riferimento, dall’ altro si ha la nuvola di punti in movimento. In questa fase si dovranno indicare manual-

mente i punti omologhi (min 4) a ciascuna nuvola in modo da allinearle approssimativamente. Dopo aver selezionato i punti di collimazione cliccare su “Ok”. Si noti che è apparso un asterisco accanto al nome della nuvola appena allineata, ciò significa che se avessimo più nuvole da allineare, man mano si vanno trovando i punti omologhi tra la nuvola referente e le altre, queste ultime diventano le referenti delle successive.

Nota La selezione segue sempre lo stesso ordine numerico (0..n-1) pertanto è necessario seguire il medesimo ordine di selezione dei punti su entrambe le mesh. Per selezionare i punti basta fare doppio click con il mouse sulla parte interessata, per deselezionare il doppio click dovrà essere accompagnato dal tasto CTRL.


Fig. 44 Finestra per la selezione dei punti di corrispondenza

Dopo questo allineamento approssimativo si potrà procedere verso l'ottimizzazione finale attraverso l’ esecuzione dell'ICP (Iterative Closest Point). Cliccando sul pulsante “Default ICP Parameters” si aprirà la finestra di dialogo in Fig. 45 avente le seguenti voci: - “Sample Number” - si intende il numero dei punti omologhi che il software cercherà di trovare per eseguire l’ ottimizzazione, ciò significa che più è alto il parametro, maggiori saranno i punti delle nuvole che combaciano; - “Minimal Starting Distance” - è la distanza minima tra i punti omologhi da calcolare, se il valore è troppo alto potrebbero essere inclusi punti collegati in maniera anomala, se è troppo piccolo la convergenza sarà molto lenta. Questo valore ammette una variabile dinamica che è possibile inserire più avanti, nella voce “MSD Reduce Factor”; - “Target Distance” - è la soglia limite dell’ allineamento medio tra i punti;

Fig. 45 Finestra dei parametri per l’ ottimizzazione dell’ allineamento


Fig. 47 Eliminazione aree superflue

Fig. 46 Risultato dell’ allineamento

- “Max Iteration Num” - è il numero massimo di iterazioni che il software calcolerà; - “Normal Equalized Sampling” - se selezionato, i punti omologhi verranno scelti con una distribuzione uniforme rispetto alle normali delle diverse superfici (è consigliabile mantenere verificata l’ opzione); - “MSD Reduce Factor” - Ad ogni iterazione ICP la distanza iniziale minima (Minimal Starting Distance) viene ridotta di n% volte la distanza campione. - “Sample Cut High” - ad ogni iterazione ICP tutti i campioni di punti che si trovano più lontano di n% vengono scartati; - "Rigid matching” - l' opzione di corrispondenza rigida mantenere inalterata la nuvola che si va ad incollare sulla referente. Se non si seleziona questa opzione, verrà applicato automaticamente dal software un fattore di scala a variabile dinamica (ovvero che ammette deformazioni).

Fig. 48 Mesh allineate e unite

Eliminare ciò che non serve A questo punto sarà possibile eliminare la parte della prima mesh che non serve (quella con minori dettagli, come in Fig. 47) e unire la parte (o le parti) di nostro interesse delle mesh allineate attraverso il comando “Flatten Visible Layers” visto in precedenza.

Tutorial mesh lab  
Tutorial mesh lab  
Advertisement