Software low-cost per il rilievo 3D

    Software per il rilievo 3D e scansione 3D low-cost

    Maggiore sarà la diffusione delle stampanti 3D, maggiore sarà in futuro la necessità di creare contenuti tridimensionali digitali che possano essere stampati. Nei portali di condivisione dei file 3D, come YouMagine o Thingiverse, possiamo trovare numerosi file da scaricare già pronti per la stampa; in alternativa, possiamo ricorrere alla modellazione tridimensionale manuale per creare un oggetto personalizzato. Se però dobbiamo riprodurre in modo preciso un oggetto esistente, come nel caso delle riproduzioni di oggetti d’arte o nel reverse engineering, l’unica possibilità che abbiamo è quella di ricorrere al rilievo tridimensionale. Eseguire un rilievo 3D di un oggetto significa ricrearne una perfetta copia digitale, cioè creare un modello 3D metricamente corretto.

    Rilievo 3D: le tecnologie

    A seconda di ciò che dobbiamo rilevare, abbiamo oggi a disposizione tecnologie e strumenti molto diversi, ciascuno con i propri pregi e i propri difetti. Conoscere le caratteristiche delle soluzioni a disposizione è importante, perché ci permette in ogni situazione di scegliere quelle più adatte. Le principali tecniche di rilievo 3D si possono classificare in:

    • tecniche basate su sensori attivi (range-based);
    • tecniche basate su sensori passivi (image-based).

    Le tecniche range-based impiegano strumenti che emettono un segnale che viene registrato dallo strumento stesso al fine di derivarne una misura di distanza: ad esempio i laser scanner, le stazioni totali, i GPS, i radar, ecc. In particolare, gli scanner laser e a luce strutturata hanno riscontrato un grande successo e hanno notevolmente aumentato la facilità con la quale possono essere acquisiti i dati relativi a semplici oggetti o ad ampie strutture; l’utilizzo sistematico di questi strumenti nel rilievo 3D è però ancora ostacolato dall’elevato costo dell’hardware.

    Le tecniche image-based sfruttano invece la luce presente nell’ambiente per acquisire immagini da cui derivare informazioni tridimensionali della scena osservata. Tra queste tecniche, la fotogrammetria è quella più conosciuta ed utilizzata per rilievi cartografici, architettonici, industriali e archeologici, ma richiede ancora apparati fotografici, strumentazioni e pacchetti software costosi, oltre a un approccio teorico e pratico particolarmente complesso. Una tecnica simile, che per certi versi può essere considerata un’evoluzione della fotogrammetria stessa, è la Structure-from-Motion, una tecnica che ha come scopo primario l’automazione dell’intero processo di elaborazione delle immagini. Al momento i principali vantaggi di questa soluzione risiede nel minor costo e nella elevata trasportabilità della strumentazione necessaria.

    Ci soffermeremo ora sulle principali soluzioni low-cost rappresentate da software di Structure-from-Motion, che permettono di ottenere rilievi 3D di qualità elevata utilizzando semplicemente immagini digitali, normali fotocamere e computer di medio livello; mentre tralasceremo – per il momento – il settore degli scanner, dove le soluzioni low-cost non garantiscono ancora la stessa qualità.

    Structure-from-Motion (SfM): come funziona?

    La SfM è una tecnica che permette di ricostruire in modo automatico una scena tridimensionale partendo da un set di immagini digitali bidimensionali; differisce sostanzialmente dalla fotogrammetria convenzionale in quanto non prevede alcun intervento umano nel processo.

    rilievo 3d

    Per poter ricostruire la tridimensionalità di una scena è necessario ricostruire la posizione di scatto delle singole immagini, in modo tale da poter in seguito dedurre per triangolazione la posizione degli oggetti presenti in esse. Mentre la fotogrammetria tradizionale utilizza i dati GPS delle immagini o di punti di controllo di coordinate note, la tecnica SfM si basa sull’individuazione automatica di punti chiave (features) ben riconoscibili in tre o più immagini, che serviranno per creare corrispondenze tra le immagini e collegarle tra loro (image matching).

    Partendo dai punti chiave, attraverso un procedimento di triangolazione fotogrammetrica a stelle proiettive (meglio noto come bundle adjustement), in maniera automatica viene calibrata la fotocamera (orientamento interno: calcolo della lunghezza focale e del punto principale) e viene ricostruita la posizione di scatto delle singole immagini (orientamento esterno: coordinate dei centri di presa e rotazioni del fotogramma), e per ogni punto chiave vengono ricavate le coordinate reali x,y,z che vengono materializzate tridimensionalmente in una sparse points cloud, cioè in una nuvola di punti a bassa densità (sparse reconstruction). Nel passaggio successivo la nuvola di punti a bassa densità viene infittita aumentando enormemente il numero di punti (dense reconstruction): i dati relativi alla posizione x,y,z dei punti chiave vengono utilizzati come punti di partenza per estendere l’analisi delle immagini alle zone prossimali ai punti chiave e riconoscere ed estrarre la posizione x,y,z degli elementi circostanti. Il risultato finale sarà una dense points cloud, cioè una nuvola di punti densa.

    Per arrivare al modello 3D finale, poligonale e a colori, in seguito la nuvola di punti deve essere elaborata con programmi di mesh processing e texturing, come spiegato in questo tutorial: LINK.

    Structure-from-Motion: soluzioni open source e low cost

    Abbiamo a disposizione numerose soluzioni gratuite e low-cost di SfM e in particolare ci soffermeremo sulle cinque più diffuse (che sono infatti quelle utilizzate nei nostri corsi): Python Photogrammetry Toolbox, VisualSFM, 123D Catch, ARC3D e PhotoScan (Standard Edition). Abbiamo messo alla prova i software elaborando lo stesso set di immagini digitali e confrontando i risultati ottenuti: si tratta di 17 fotografie delle dimensioni di 3.600×2.700 pixel (ca. 10 MP) di un rilievo marmoreo che fa parte dello Zooforo del Battistero di Parma scolpito da Benedetto Antelami.

    Python Photogrammetry Toolbox – PPT

    PPT è una suite realizzata da Pierre Muloun (Mikros Image) e Alessandro Bezzi (Arc-Team) che lavora al meglio sui sistemi GNU/Linux, ma è disponibile anche per Windows, dove però è in grado di elaborare immagini non oltre i 2.500 pixel di larghezza (ca. 5 MP). Il tempo totale di processamento delle immagini dipende dalla potenza dell’hardware a disposizione e dal numero di immagini, ma in generale è piuttosto elevato soprattutto se le immagini da elaborare sono alcune decine. Molti esempi nel campo dei Beni Culturali sono disponibili qui: LINK. L’installazione è piuttosto semplice, basta seguire attentamente le indicazioni presenti in questa pagina: http://184.106.205.13/arcteam/ppt.php

    Software per il rilievo 3D e scansione 3D low-costNel nostro caso di studio in ambiente GNU/Linux (ArcheOS v. 5) è stato ottenuto un ottimo risultato: una nuvola composta da un elevato numero di punti, ben 1.099.551; mentre in ambiente Windows le immagini sono state scalate a 2.500 pixel di larghezza e si è ottenuta una nuvola di soli 487.901 punti.

    Velocità di elaborazione: lento
    Accuratezza: alta
    Difficoltà d’uso: facile
    Costo: Gratuito; software libero con licenza GNU GPL
    Punteggio: ★★★★☆

    VisualSFM

    VisualSfM è un’applicazione sviluppata da Changchang Wu, in collaborazione con l’Università di Washingthon e Google. L’applicazione non è open source, come spesso erroneamente si crede, ma è freeware e può essere scaricata e utilizzata gratuitamente solo per uso personale e non commerciale. Installare VisualSFM è piuttosto semplice: dall’homepage è possibile scaricare i file d’installazione per Linux, MacOS e Windows, facendo attenzione a seguire alcune indicazioni presenti in questa pagina: http://ccwu.me/vsfm/install.html.

    Software per il rilievo 3D e scansione 3D low-costNel nostro caso di studio l’elaborazione è stata più veloce rispetto a PPT, ma con un risultato meno accurato: sebbene la nuvola sia in realtà più omogenea e ampia, il numero totale di punti estratti è sensibilmente inferiore, 699.175.

    Tempo di elaborazione: medio
    Accuratezza: media
    Difficoltà d’uso: facile
    Costo: Gratuito per uso personale e non commerciale
    Punteggio: ★★★☆☆

    ARC3D

    ARC3D WebService è un’applicazione web sviluppata dal laboratorio VISICS dell’Università Cattolica di Lovanio. Il sistema funziona come servizio on-line: attraverso un applicazione multipiattaforma scaricabile gratuitamente (http://www.arc3d.be/), le immagini vengono inviate ad un server che le elabora; una volta terminata l’elaborazione, all’utente viene inviata una mail con un link per scaricare i risultati del rilievo 3D. Essendo un servizio online, è importante prestare attenzione a cosa accade alle nostre immagini che inviamo al server, le condizioni d’uso infatti specificano che: “The uploader gives ARC the right to use the results generated by the webservice for its research activities. In particular, the uploader gives ARC the right to use the data for the creation of a 3D repository for the testing and benchmarking of tools”.

    Software per il rilievo 3D e scansione 3D low-costNel nostro caso di studio è stata restituita una nuvola di punti non colorata composta da 206.507 punti, quindi un risultato di gran lunga inferiore rispetto alle due soluzioni precedenti; l’unico vantaggio, è che in questo caso viene restituita anche la mesh (409.793 poligoni) e la relativa texture (8.092 pixel), entrambe di risoluzione molto elevata.

    Tempo di elaborazione: veloce
    Accuratezza: bassa
    Difficoltà d’uso: molto facile
    Costo: Gratuito per uso personale e non commerciale
    Punteggio: ★★★☆☆

    Autodesk 123D Catch

    Anche in questo caso si tratta di un servizio online, ma rispetto ad ARC3D è disponibile sia come applicazione desktop (Windows, Android e iOS), sia come applicazione web per tutti i sistemi operativi (http://www.123dapp.com/catch). Il principio di funzionamento è simile al precedente: si inviano le foto attraverso l’applicazione (con un limite però di 70 immagini del peso massimo di 5 MB ciascuna); l’elaborazione avviene sui server e al termine l’applicazione restituisce un modello 3D già provvisto di mesh e texture. Da un punto di vista della licenza, in questo caso non è ben chiaro che cosa accada alle nostre immagini una volta caricate, in quanto è difficile districarsi nel mare delle licenze Autodesk… resta quindi il dubbio che anche in questo caso si cedano i diritti di utilizzo.

    Software per il rilievo 3D e scansione 3D low-costNel nostro esempio abbiamo usato l’applicazione web e abbiamo ottenuto un modello composto da soli 113.787 punti (con una nuvola poco densa, non omogenea e non colorata), una mesh di 227.161 poligoni con una texture a 4096 pixel. Un risultato quindi appena sufficiente, con un modello utilizzabile solo per una stampa 3D in scala e una visualizzazione online.

    Tempo di elaborazione: molto veloce
    Accuratezza: molto bassa
    Difficoltà d’uso: molto facile
    Costo: Gratuito
    Punteggio: ★★☆☆

    PhotoScan (Standard Edition)

    PhotoScan è un software multipiattaforma per l’elaborazione di nuvole di punti, mesh e texture. La versione standard è indicata per la ricostruzione 3D di oggetti, in quanto consente di esportare solamente il modello 3D e le nuvole di punti. La versione professional, di costo molto più elevato, è indicato per i rilievi topografici e architettonici, in quanto consente l’inserimento di mire di coordinate note e l’esportazione di prodotti particolari, quali DEM e ortofoto. Il software è a pagamento, ma può essere richiesta una versione demo di 30 giorni; è inoltre disponibile una licenza educational a prezzo molto scontato, che tuttavia vieta l’utilizzo del software a scopo commerciale (http://www.agisoft.com/).

    Software per il rilievo 3D e scansione 3D low-costNel nostro caso di studio il software ha prodotto una nuvola di 1.437.525 punti ( senza lavorare al massimo delle possibilità), un risultato del 30% superiore a quanto ottenuto con PPT. Infine, è possibile elaborare velocemente una mesh da 500.000 poligoni con una texture a 8192 pixel.

    Tempo di elaborazione: veloce
    Accuratezza: molto alta
    Difficoltà d’uso: facile
    Costo: 148 euro (demo gratuita di un mese)
    Punteggio: ★★★★☆ 

    Considerazioni conclusive

    Come accade in ogni lavoro, lo strumento deve essere scelto in base all’obiettivo da conseguire. In questo caso, non è sempre scontato dover utilizzare la soluzione in grado di restituire il maggior numero di punti.

    PhotoScan rappresenta la soluzione più efficiente, ma presuppone un investimento economico iniziale ed è indicato soprattutto per chi deve eseguire rilievi a scopo professionale e ha bisogno della massima accuratezza possibile. L’unica vera alternativa, in tal senso, è data da PPT usato su GNU/Linux, oppure, da VisualSFM per Windows e MacOS.

    Se invece abbiamo bisogno di realizzare un rilievo 3D per ottenere un modello da stampare in piccole dimensioni, quindi con una perdita dei dettagli più minuti, oppure da mettere online, quindi con la necessità di un modello leggero che sia facilmente visualizzabile con connessioni internet normali, possiamo tranquillamente rivolgerci ad ARC3D o a 123D Catch, certi di ottenere in breve tempo e con impegno quasi nullo un buon risultato alla giusta risoluzione per la stampa o per il web. In questi due casi dobbiamo però ricordarci che cediamo ai gestori delle applicazioni la possibilità di utilizzare le nostre immagini e i nostri modelli; elemento da non trascurare se si lavora su immagini coperte da copyright altrui, come, ad esempio, nel caso di opere d’arte.

    Vuoi saperne di più? Leggi la nostra guida dedicata agli scanner 3D per la stampa 3D.