NOTA! Questo sito utilizza i cookie e tecnologie simili.

Se non si modificano le impostazioni del browser, l'utente accetta. Per saperne di piu'

Approvo

MeshLab: build surface from point per creare superfici da nuvole di punti

 

In questo brevissimo tutorial voglio parlarvi di uno strumento di MeshLab, build surface from points, che consente di ricostruire una superficie 3D partendo da un insieme di vertici nello spazio tridimensionale.

 

Tale strumento può essere utilizzato, ad esempio, per ricavare delle superfici (realizzando spigoli e facce) dalle famose “nuvole di punti” in arrivo dagli scanner tridimensionali.

 

 

Facciamo una prova con il modello di Suzanne, la mascotte di Blender; in particolare, in Edit Mode selezioniamo tutti i vertici di Suzanne, premiamo X o CANC e scegliamo la voce Edge and Faces (cioè spigoli e facce) dal menù che apparirà a video: in questo modo, stiamo lasciando solo i vertici del modello, la nostra “nuvola di punti”, in un certo senso.

 

Tutorial MeshLab, build surface from points, ricorstruzione superfici da punti, blender delete edges and faces

 

 

Si tratta di una nuvola non particolarmente densa, visto che certe facce di Suzanne erano davvero grandi rispetto ad altri dettagli e questo, come vedremo, influirà sulla ricostruzione.

 

Esportiamo tale modello in un formato, ad esempio il classico Wavefront OBJ, dopodiché passiamo a MeshLab...

 

Tutorial MeshLab, build surface from points, ricorstruzione superfici da punti, blender 3d mesh export

 

 

... importando nel programma il modello che, come possiamo vedere passando alle visualizzazioni per vertici, spigoli e facce, è composto effettivamente dai soli vertici.

 

Clicchiamo su Filters, filtri, nella barra dei menù, e scegliamo la voce build surface from points, cioé letteralmente “costruisci una superficie a partire da punti”, punti che poi sono i nostri vertici.

 

Tutorial MeshLab, build surface from points, ricorstruzione superfici da punti, meshlab filters

 

 

L'algoritmo, come ci spiega la scheda che appare a video, utilizza una “sfera virtuale” che si “muove”, per così dire, sui vertici; tale sfera ha, ovviamente, un determinato raggio, che possiamo impostare, e se due vertici si trovano ad una distanza minore del raggio della sfera, tra di loro verranno create le relative connessioni, cioè i buchi verranno riempiti creando spigoli e facce; al contrario, qualora la distanza tra due o più vertici dovesse essere maggiore della grandezza della sfera, non verranno creati i collegamenti.

 

Tutorial MeshLab, build surface from points, ricorstruzione superfici da punti, meshlab tool panel

 

 

Il raggio della sfera può essere espresso o in un unità del sistema di riferimento della scena o in percentuale; con clustering radius, invece, possiamo impostare una soglia di fusione: i vertici troppo vicini possono essere infatti fusi in uno solo per evitare di creare facce troppo piccole; l'ultimo parametro è una soglia per l'angolo: se nel suo “rotolare” la sfera incontra all'improvviso una pendenza eccessiva (di default, maggiore di 90 gradi, come il passaggio dal pavimento a una parete) allora non crea le connessioni, perché considera gli oggetti come “sconnessi”, distinti.

 

Con i valori 0 per i campi di ball radius, la grandezza della sfera virtuale verrà definita automaticamente da MeshLab.

 

Cliccando su “applica” non vedremo alcun risultato, e questo perché siamo in modalità visualizzazione vertici; chiudiamo la scheda e passiamo alla modalità visualizzazione facce per vedere cos'è stato ricostruito da MeshLab con le voci di default.

 

Tutorial MeshLab, build surface from points, ricostruzione superfici da punti, Suzanne ricostruita

 

 

Come anticipato, l'aver utilizzato un modello che presentava, in origine, facce molto piccole – per la parte frontale – e facce molto grandi – per il cranio – ha portato ad una ricostruzione poco precisa, visto che la sfera (il cui raggio è stato determinato in maniera automatica da MeshLab, in questo caso) non era abbastanza grande da connettere i vertici lontani.

 

Con altri modelli (come ad esempio quelli in arrivo da uno scanner laser, dove i punti delle zone realmente connesse sono molto più densi) o con altre impostazioni, è possibile ottenere risultati più interessanti; a seconda dei casi, infine, potrebbe essere necessario procedere in più fasi, magari suddividendo il modello in più parti da ricostruire singolarmente.

 

Tutorial MeshLab, build surface from points, ricorstruzione superfici da punti, nuvola vertici teapot

 

 

Tutorial MeshLab, build surface from points, ricorstruzione superfici da punti, teiera 3ds ricostruita

Altri articoli...

 
Vai all'inizio della pagina