Come ottenere un modello 3D da fotografie con software open source – Parte 2 (dalla nuvola di punti alla stampa 3D)

Come ottenere un modello 3D da fotografie con software open source – Parte 2 (dalla nuvola di punti alla stampa 3D)

Abbiamo visto come è relativamente semplice e rapido rilevare in 3D un oggetto utilizzando esclusivamente un set di immagini digitali. Nella prima parte di questo tutorial spiegavo come realizzare le fotografie (Come ottenere un modello 3D da semplici fotografie – Parte 1), mentre nella seconda parte ho spiegato come elaborare le fotografie per arrivare ad una nuvola di punti 3D (Come ottenere un modello 3D da semplici fotografie – Parte 2), e quali software usare.

In questa terza e ultima parte del tutorial, vedremo elaborare la nuvola di punti 3D per arrivare ad un modello 3D a colori e stamparne in 3D una replica fedele.

La nuvola di punti 3D deve essere aperta e visualizzata con il software libero MeshLab. Poiché PPT ricostruisce in 3D tutto ciò che è visibile nelle fotografie, sarà innanzitutto necessario ripulire la nuvola di punti eliminando quelli che non servono. Si tratta di un’operazione piuttosto rapida, che può essere fatta utilizzando alcuni strumenti di MeshLab:

Schermata 2014-07-29 alle 12.33.36 lo strumento di selezione “Select vertexes

Schermata 2014-07-29 alle 12.33.52e quello di cancellazione “Delete selected vertices“.

rilievo-3d-da-fotografie-1
Una volta ripulita la nuvola di punti, partendo proprio dai punti possiamo costruire la mesh, ossia la superficie poligonale continua, in modo da ottenere un modello 3D vero e proprio. Basta lanciare un semplice tool: “Filters -> Remeshing, Simplification and Reconstruction -> Surface Reconstruction: Poisson” e impostare i valori “Octree Depth” e “Solver Divide” il più alto possibile in base alla potenza dell’hardware a disposizione (generalmente un valore compreso tra 11 e 14 è più che sufficiente per ottenere un buon risultato). E’ possibile che il PC vada in crash durante l’elaborazione: niente panico, basta abbassare il valore finché l’elaborazione non va a buon fine.

rilievo-3d-da-fotografie-2

A questo punto abbiamo un modello 3D poligonale di colore neutro e, con un semplice passaggio, sarà possibile trasferire il colore dei vertici della nuvola di punti alla nuova superficie, attraverso il tool: “Filters -> Sampling -> Vertex Attribute Transfer“. Nella finestra che si apre si deve selezionare come “Source Mesh” la nuvola di punti e come “Target Mesh” il modello poligonale. Il risultato finale sarà un modello 3D a colori reali.

rilievo-3d-da-fotografie-3

L’ultimo passaggio è la scalatura del modello, ovvero l’attribuzione della corretta dimensione metrica al modello, in modo da poter poi effettuare misure su di esso.

Possiamo scalare il modello 3D conoscendo una o più misure di riferimento e attraverso il calcolo del fattore di scala: data una misura nota sul modello (ad esempio, la larghezza, lo spessore o la distanza tra qualche particolare ben riconoscibile), il rapporto tra la misura reale e la misura nel modello non scalato restituisce il fattore di scala. Se si hanno a disposizione più misure di riferimento è possibile calcolare un fattore di scala medio, ottenendo in questo modo un risultato più preciso.

Lanciamo il tool: “Filters -> Normals, Curvatures and orientation -> Transform: scale” e nella finestra che compare inseriamo il fattore di scala nel campo “X Axis“, facendo attenzione che l’opzione “Uniform scaling” sia selezionata.

rilievo-3d-da-fotografie-4

 

rilievo-3d-da-fotografie-5

Il prossimo obiettivo è la stampa in 3D di una replica in scala dell’oggetto originale.

Come prima cosa dobbiamo esportare il modello nel formato STL, possiamo farlo direttamente da MeshLab attraverso “File -> Export Mesh As…“. Il file STL deve essere aperto in un software in grado di interfacciarsi con una stampante 3D e di eseguire lo slicing: i più diffusi sono CURA (tutorial) e Repetier Host + Slic3r (tutorial), entrambi open source.

Il software di slicing non fa altro che scomporre il modello 3D in una serie di coordinate x,y,z necessarie alla stampante per stampare l’oggetto, nonché di comunicare alla stampante una serie di informazioni sulla stampa stessa: temperatura di estruzione, altezza dei layers, velocità, ecc…

Qui un video riassuntivo dell’intero procedimento, buona visione!

By |2018-06-07T12:17:24+00:00agosto 22nd, 2014|Rilievo 3D, Stampa 3D, Tutorial|

About the Author:

Mi sono laureato in Archeologia nel 2003 e ho conseguito un Dottorato di Ricerca in Scienze della Terra nel 2010. Dopo aver lavorato quasi 10 anni su scavi archeologici in Italia e all’estero, dal 2012 mi occupo di tecnologie di Fabbricazione Digitale applicate al settore dei Beni Culturali. Sono founder di 3D ArcheoLab, Makars (www.mak-ars.it) e 3D Virtual Museum (www.3d-virtualmuseum.it).