Linee guida SfM

Da borgoaperto.
Fonte immagine:theia-sfm.org/sfm.html

La tecnologia Structure from Motion (SfM) è un metodo utilizzato per creare modelli 3D di oggetti o ambienti da una serie di immagini o video. Il suo obiettivo principale è determinare la posizione e l'orientamento delle telecamere che hanno catturato le immagini, e calcolare la posizione 3D dei punti di interesse all'interno della scena, sfruttando la geometria proiettiva e l'analisi dei movimenti apparenti degli oggetti. Il processo di SfM si articola in due fasi: structure estimation, in cui gli algoritmi identificano e collegano i punti chiave tra le diverse immagini, e motion estimation, dove viene calcolata la posizione e l'orientamento della fotocamera per ogni immagine. SfM ha una vasta gamma di applicazioni, tra cui la creazione di modelli 3D di edifici, monumenti e terreni utilizzando immagini ottenute da qualsiasi tipo di fotocamera, inclusi gli smartphone.

Hardware e software

Realizzare modelli Structure from Motion (SfM), avrai bisogno di una combinazione di hardware e software. In generale, le specifiche hardware e software dipenderanno dalla complessità del tuo progetto e dalle tue esigenze specifiche. Assicurati di controllare i requisiti di sistema specifici per il software di SfM che intendi utilizzare per ottenere i migliori risultati possibili.

Hardware:

  • Fotocamera: Puoi utilizzare fotocamera digitale o anche un dispositivo mobile con una buona qualità fotografica. Maggiore è la risoluzione e la qualità dell'immagine, migliori saranno i risultati ottenuti.
  • Focale fissa: Con una distanza focale fissa si semplifica il processo di calibrazione della fotocamera, in quanto non è necessario tener conto delle variazioni della lunghezza focale, migliorando le performance di elaborazione.
  • Hardware di elaborazione: Computer o smartphone/tablet. Per poter realizzare modelli SfM è necessario avere a disposizione un hardware abbastanza performante in grado di gestire il processo. Qualora non si avesse a disposizione un hardware adeguato è preferibile sfruttare le modalità di elaborazione in cloud permesse da alcuni software.

Software:

  • Software di SfM: Ci sono diversi software di SfM disponibili, sia open source che commerciali. Alcuni esempi di software di SfM popolari includono Agisoft Metashape, COLMAP e Pix4D. Questi software consentono di importare le immagini, eseguire l'elaborazione SfM e ottenere la ricostruzione tridimensionale.
  • Software di SfM per smartphone/tablet: Esistono app come Polycam e 3D Scanner App su dispositivi mobili, queste possono essere utili per catturare le immagini direttamente dal tuo cellulare e avviare l'elaborazione SfM incorporata nell'app stessa. Tuttavia, è importante notare che le app mobili possono avere limitazioni in termini di precisione e capacità rispetto ai software più completi disponibili sui computer, oltre ad avere difficoltà dal punto di vista dell'hardware.
Software Tipo Sistema operativo
Agisoft Metashape Commerciale Windows, macOS, Linux
COLMAP Open Source Windows, macOS, Linux
Pix4D Commerciale Windows, macOS, iOS, Android
Polycam Commerciale iOS
3D Scanner App™ (Laan Labs) Commerciale iOS

Acquisizione

Progetto di Rilevamento

  • Identificare l'oggetto o l'ambiente da rilevare e lo scopo: Prima di iniziare l'acquisizione, è essenziale definire chiaramente l'obiettivo del progetto. Questo può essere, ad esempio, creare un modello per visualizzazione, generare un'ortofoto per mappare le murature, o ancora disegnare un prospetto architettonico. La chiarezza dell'obiettivo aiuta a determinare il miglior punto di vista per l'acquisizione delle immagini.
  • Calcolo del Ground Sampling Distance (GSD): Il GSD è la distanza tra due pixel consecutivi nell'immagine, rappresentata sul terreno. Un GSD più basso significa una maggiore risoluzione spaziale e quindi dettagli più nitidi. Per calcolare il GSD ottimale, prendi in considerazione la dimensione e i dettagli dell'oggetto o dell'ambiente che stai mappando.
  • Studiare l'illuminazione: La luce può influenzare notevolmente la qualità delle immagini. È consigliabile acquisire le immagini durante il giorno o in un ambiente ben illuminato, cercando di concentrare le acquisizioni in un orario con illuminazione omogenea. È bene, a seconda dello scopo, tenere conto anche delle ombre ricevute dalle superfici e pianificare in base a queste l'orario in cui eseguire le acquisizioni.

Modalità di Acquisizione

  • Pianificare la sequenza di scatto: Per garantire la copertura completa dell'oggetto o dell'ambiente, pianificare un percorso di scatto. Idealmente, le immagini dovrebbero sovrapporsi del 60-80%.
  • Stabilità della fotocamera: Anche con uno smartphone o un tablet, l'uso di un treppiede o di un supporto stabile può migliorare la nitidezza delle immagini.

Parametri di Acquisizione Ottimali

  • Risoluzione dell'immagine: Gli smartphone moderni e i tablet offrono una risoluzione sufficientemente alta per la maggior parte dei progetti SfM. Tuttavia, è essenziale assicurarsi che le immagini siano nitide e ben focalizzate.
  • Modalità di scatto: Utilizzare la modalità manuale, se disponibile, per controllare meglio l'esposizione e il focus.

Uso di Ground Control Points (GCP) e Quality Control Points (QCP)

I Ground Control Points (GCP) e i Quality Control Points (QCP) possono essere integrati per migliorare l'accuratezza e per la validazione di un modello 3D ottenuto tramite Structure from Motion (SfM).

  • Ground Control Points (GCP): Sono punti con coordinate conosciute che vengono utilizzati per georeferenziare e scalare correttamente il modello 3D. Di solito, questi punti sono chiaramente visibili nelle immagini acquisite e le loro coordinate sono determinate utilizzando metodi precisi, come la misurazione GPS o le tecniche di rilievo terrestre. L'uso dei GCP è fondamentale quando si necessita di un modello in scala reale e georeferenziato.
  • Quality Control Points (QCP): Questi sono punti di controllo utilizzati per validare l'accuratezza del modello 3D. Le coordinate di questi punti non vengono utilizzate durante il processo di SfM, ma vengono confrontate con le coordinate del modello 3D per valutare l'accuratezza del modello. I QCP possono essere acquisiti con metodi simili ai GCP.
  • Acquisizione di GCP e QCP L'acquisizione di GCP e QCP può essere effettuata con varie tecniche, tra cui:
    1. Rilievo diretto
    2. Rilievo topografico
    3. GPS
    4. Rilievo con drone equipaggiato con RTK/PPK


GCP e QCP dovrebbero essere distribuiti in modo regolare su tutto l'ambito del progetto.

Elaborazione

  • Importazione delle immagini: Il primo passo è l'importazione delle immagini nel software di SfM. Questo può solitamente essere fatto tramite un'interfaccia grafica utente o una riga di comando, a seconda del software utilizzato.
  • Rilevamento dei punti chiave (Feature Detection): Questa fase identifica i punti di interesse, o "punti chiave", in ogni immagine. Questi sono spesso punti che il software ritiene unici e riconoscibili nelle immagini successive, come i bordi di un edificio o i vertici di un oggetto.
  • Abbinamento dei punti chiave (Feature Matching): Dopo la rilevazione dei punti chiave, il software cerca di abbinare questi punti tra diverse immagini. Questo passo consente al software di capire la relazione spaziale tra diverse immagini dello stesso oggetto o ambiente.
  • Estimazione del movimento (Motion Estimation): In questa fase, il software utilizza le corrispondenze di punti chiave per determinare la posizione e l'orientamento di ciascuna immagine (o telecamera) nel momento in cui è stata acquisita. Questo crea quello che è noto come "nube di punti sparsi".
  • Ricostruzione densa: Dopo aver creato una nube di punti sparsi, il software cerca di riempire gli spazi vuoti per creare una "nube di punti densa". Questo è spesso fatto utilizzando tecniche di stereoscopia per stimare la profondità di ogni pixel nelle immagini.
  • Generazione del modello 3D: Infine, il software utilizza la nube di punti densa per creare un modello 3D dell'oggetto o dell'ambiente. Questo può includere la creazione di una mesh 3D (una rappresentazione tridimensionale fatta di poligoni), e l'applicazione di una texture, che è spesso una versione "proiettata" delle immagini originali su questa mesh 3D.

Post-elaborazione

Una volta generato il modello 3D tramite SfM, è possibile che sia necessaria una fase di post-elaborazione per migliorare l'aspetto visivo del modello, rimuovere errori o inesattezze o prepararlo per usi specifici. Questi passaggi possono essere effettuati utilizzando software di modellazione 3D o software specifici per la post-elaborazione di modelli 3D.

  • Pulizia del Modello 3D: Questa è spesso la prima fase della post-elaborazione. Consiste nell'eliminare parti del modello che non sono riuscite bene o che non erano intese per essere incluse, come oggetti di sfondo o rumore. Questo può essere fatto utilizzando strumenti di selezione e cancellazione nel software di modellazione 3D.
  • Riparazione della Mesh: Gli errori nella mesh, come buchi, intersezioni o parti non connesse, possono essere risolti con strumenti di riparazione automatica presenti in molti software di modellazione 3D. Alcuni di questi errori potrebbero richiedere interventi manuali.
  • Riduzione della Poligonizzazione (Decimazione): I modelli 3D generati con SfM possono essere molto dettagliati e quindi avere un numero elevato di poligoni, rendendo il modello pesante da gestire. La decimazione riduce il numero di poligoni nel modello mantenendo al contempo la forma generale, il che può essere utile per visualizzazioni in tempo reale o per la stampa 3D.
  • Miglioramento della Texture: Se il modello 3D include una texture (una "pelle" applicata sulla superficie del modello basata sulle immagini originali), questa può essere migliorata utilizzando software di editing delle immagini. Ciò può includere l'aggiustamento dei livelli di colore, l'aumento della nitidezza o la rimozione di dettagli indesiderati.

Stima dell'incertezza del modello

La stima dell'incertezza del modello è un aspetto importante per valutare la qualità e l'affidabilità del modello 3D. Ciò può essere fatto attraverso una serie di metodi, tra cui:

  1. Confronto con QCP: Come menzionato, i QCP possono essere utilizzati per valutare l'accuratezza del modello. Il confronto delle coordinate dei QCP con le loro posizioni nel modello 3D può fornire una stima dell'errore.
  2. Confronto con altri dati: Se disponibili, altri dati, come mappe topografiche, dati LiDAR o modelli 3D generati con altri metodi, possono essere utilizzati per confrontare e valutare l'incertezza del modello. Un software utilizzabile per questa operazione è CloudCompare, mediante la funzione Cloud2Cloud.

Esportazione

L'esportazione del modello 3D è l'ultimo passaggio del processo di Structure from Motion (SfM).

  • Scelta del Formato di Esportazione: Il formato di esportazione dipenderà dall'uso che intendi fare del modello 3D. Alcuni formati comuni includono .STL e .OBJ per la stampa 3D, .PLY e .DXF per l'analisi o la visualizzazione in un software GIS, e .FBX o .DAE per l'uso in videogiochi o in animazioni.
Formato Descrizione
.STL Questo è il formato più utilizzato per la stampa 3D. Supporta solo le geometrie, non i colori o le texture, rendendolo adatto per modelli dove il dettaglio fisico è più importante del colore o dell'aspetto.
.OBJ Un formato comune che supporta sia le geometrie che le texture. È ampiamente supportato da molti software di modellazione 3D e stampanti 3D. Gli archivi .obj vengono spesso accompagnati da un file .mtl per le informazioni sui materiali e da un file di immagine per la texture.
.PLY Questo formato può supportare sia i colori dei punti che le texture, rendendolo adatto per l'analisi scientifica o per l'uso in software GIS. Non è altrettanto ampiamente supportato come .STL o .OBJ per la stampa 3D.
.DXF Un formato utilizzato principalmente in applicazioni CAD. Supporta le geometrie ma non le texture. È utile per l'esportazione di modelli 3D che saranno ulteriormente modificati in software CAD.
.FBX Un formato complesso che supporta la geometria, la texture, l'illuminazione e l'animazione. È comunemente utilizzato in applicazioni di modellazione 3D avanzate e in videogiochi.
.DAE (Collada) Un formato che supporta una vasta gamma di caratteristiche, tra cui geometria, texture, luci e animazioni. È utilizzato in molte applicazioni diverse, tra cui la modellazione 3D, i videogiochi e le applicazioni di realtà virtuale/aumentata.
  • Esportazione dal Software: Dalla maggior parte dei software di SfM, è possibile esportare direttamente il modello 3D nel formato desiderato. Di solito, questo richiede semplicemente di selezionare l'opzione "Esporta" o "Salva come" dal menu del software e quindi selezionare il formato desiderato.
  • Opzioni di Esportazione: Alcuni software offrono opzioni di esportazione specifiche che ti consentono di personalizzare l'output. Questo potrebbe includere l'opzione di esportare la texture o i colori dei punti, l'opzione di ridurre il numero di poligoni o l'opzione di esportare metadati specifici.
  • Verifica del Modello Esportato: Dopo l'esportazione, è importante verificare che il modello sia stato esportato correttamente. Puoi farlo aprendo il file esportato in un visualizzatore di modelli 3D o nel software che intendi utilizzare per la visualizzazione o l'analisi finale.
  • Backup del Modello: Infine, è sempre una buona idea fare un backup del tuo modello 3D esportato. Questo può essere fatto salvando una copia del file in un luogo sicuro, come un hard disk esterno o un servizio di cloud storage.

Bibliografia

  • Attenni M., Caniglia V., Inglese C., Ippolito A. 2020. Quality vs. Quantity: Advantages and Disadvantages of Image-Based Modeling. In J. B. Glover, J. Moss, D. Rissolo (a cura di). CAA2017 Digital Archaeologies, Material Worlds (Past and Present): proceedings of the 45th Annual Conference on Computer Applications and Quantitative Methods in Archaeology. Tübingen: Tübingen University Press, pp. 265-279. ISBN: (PDF) 9783947251155
  • Bartolomei C., Ippolito A., Attenni M. 2014. Low-cost Cataloguing Methodologies for Architecture: the System of Gates in Bologna. In M. Ioannides, N, Magnenat-Thalmann, E. Fink, R. Zarnic, A. Yen, E. Quak (a cura di). EuroMed 2014, Digital Heritage: Progress in Cultural Heritage, Documentation, Preservation and Protection. Hockley: Multi-Science Publishing Co. Ltd, pp. 249-257. ISBN: 9783319136950
  • Chiavoni E., Filippa M. (a cura di). 2011. Metodologie integrate per il rilievo, il disegno e la modellazione dell’architettura e delle città. Roma: Gangemi editore, 266p. ISBN: 9788849294002
  • De Luca L. 2011. La Fotomodellazione architettonica. Palermo: Dario Flaccovio Editore, 264 p. ISBN:  9788857900704
  • Docci M., Maestri D. 2009. Manuale di rilevamento architettonico ed urbano. Roma-Bari: Laterza, 380 p. ISBN: 9788842090687
  • Docci M., Ippolito A., Bianchini C. 2011. Contributi per una teoria del rilevamento architettonico. Disegnare idee immagini, n. 42, pp. 34-41. ISSN: 1123-9247
  • Ippolito A., Bartolomei C. 2015. Survey and gathering. Low-cost documentation / Rilievo e catalogazione. Archiviazione low cost. Reuso. 3. Congreso internacional sobre documentación, conservation y reutilizacion del patrimonio arquitectonico y paisajístico. Valencia 2015. Libro Comunicaciones. Valencia: Editorial Universitat Politècnica de València, pp. 2392-2399. ISBN: 9788490483862
  • Lerma J. L., Cabrelles M., Navarro S., Fabado S. 2013. From Digital Photography to Photogrammetry for Cultural Heritage Documentation and Dissemination. DisegnareCon, vol. 6, n. 12, pp. II 1-8. DOI: 10.6092/issn.1828-5961/3850.
  • Remondino F. 2011. Heritage Recording and 3D Modeling with Photogrammetry and 3D Scanning. Remote Sensing, n.3, pp. 1104-1138. DOI: 10.3390/rs3061104

Sitografia manualistica

https://docs.3dscannerapp.com/

https://poly.cam/

Consultazione sitografia: luglio 2023