Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

Ricerca personalizzata
8
voti

Fotogrammetria automatica - Tecniche di ricostruzione dell'immagine

Il precedente articolo sulla presa fotografica in movimento coi droni presuppone un seguito abbastanza interessante, che coinvolge la computer graphics, per elaborare le immagini dei punti tridimensionali, che derivano da tecniche di confronto fra le foto ottenute sul sensore in due o più scatti successivi della fotocamera. Come visto, da questo confronto può' essere raccolta una nuvola di punti in 3D, che processata ulteriormente da adeguati software, riesce a dare come soluzione finale l'immagine 3D del soggetto sotto studio.

Indice

Introduzione

Per definizione, la fotogrammetria digitale automatica è una metodologia che permette di elaborare un modello tridimensionale, partendo da immagini bidimensionali, servendosi di procedimenti automatizzati (vedasi Fig, 1). Si tratta di una tecnologia oggi molto diffusa per realizzare modelli tridimensionali in svariati ambiti: topografia, architettura, archeologia, geologia, medicina, grafica. La sua grande diffusione è dovuta alla disponibilità di software specifici a basso costo, alla loro semplicità d’uso e alla necessità di una strumentazione di base composta da una macchina fotografica digitale e un PC di medie prestazioni.

Di solito si tende a separare il campo della fotogrammetria (le tecniche di ripresa e costruzione della nuvola dei punti 3D) dalle tecniche di modellazione o di elaborazione automatica dell'immagine.
In inglese è diffuso il termine Image-base modeling and rendering affiancato dall'altro termine Automatic protogrammetry e a volte si parla anche di Structure from motion, ma questa si riferisce solo alla prima parte del processo di elaborazione delle immagini.
Assioma fondamentale risulta che realizzare un modello tridimensionale di un oggetto, significa creare una corrispondente copia digitale, metricamente corretta e a colori.
Il fatto che il modello sia metricamente corretto significa che deve essere riprodotto nella giusta scala e possibilità di fare misurazioni precise su di esso.
Un'altra caratteristica, che non è però fondamentale, è il colore, che deve essere realistico, ma come detto, esso dipende dallo scopo con cui viene fatta la modellizzazione.
Se il modello è rappresentato su web, su smartphone e su tablet, il colore è importante, mentre su una stampa 3D, che non permette di riprodurre l'esatta cromaticità, diventa uno scopo secondario (SLA, DLP o FFF).

Fig. 1. Da una foto 2D al modello 3D

Fig. 1. Da una foto 2D al modello 3D

L'elaborazione

Il dato di partenza è sempre un insieme di fotografie, come spiegato nell'articolo dedicato alla fotogrammetria SAPR, le quali vengono elaborate, mediante software specializzati.
L'elaborazione avviene attraverso quattro fasi distinte e successive:

1.Structure-from-motion (SFM) e Multiview Stereo Reconstruction(MVS)

dove in base alla geometria di presa delle foto viene costruita la nuvola di punti densa, detta dense point cloud, ossia un dato grezzo, su cui si basano le elaborazioni successive.
La nuvola densa viene ottenuta da una precedente nuvola primaria meno densa, tramite processi d'interpolazione numerica.

2. Mesh reconstruction

a partire dalla quale, la nuvola densa di punti si trasforma in una superficie continua, costituita da poligoni, i cui vertici sono i punti della nuvola.

3. Il colore

che viene applicato alla Mesh, secondo due processi alternativi

  • color-per-vertex, dove il colore della dense point cloud viene traferito ai poligoni della mesh.
  • texture mapping, in cui le immagini utilizzare nel rilievo sono utilizzate per colorare i poligoni stessi

4. Messa in scala del modello, utilizzando almeno una distanza di riferimento


Fase 1. Structure-from-motion e Multiview stereo reconstruction

Per ottenere la tridimensionalità di una scena è necessario ricostruire la posizione di scatto delle singole fotografie, ovvero la geometria di presa, in maniera tale da dedurre per triangolazione la posizione degli oggetti contenuti in esse.
A differenza della fotogrammetria tradizionale, che utilizza il GPS, quella automatica si fonda sull'individuazione automatica di punti chiave ben riconoscibili in tre o più immagini, per creare le corrispondenze tra di esse e collegarle fra loro (image matching).
Partendo da questi punti, mediante una triangolazione a stelle proiettive (bundle adjustment), in maniera automatica viene calibrata la fotocamera (orientamento interno: lunghezza focale e individuazione del punto principale, che è la proiezione dell'asse della fotocamera sul piano del sensore).
Come si vede in Fig. 2, poi, viene ricostruita la posizione di scatto delle singole fotografie (orientamento esterno: coordinate dei centri di presa, corrispondenti all'obbiettivo della fotocamera e rotazione del fotogramma) e per ogni punto chiave vengono estratte le coordinate reali x,y,z che vengono materializzate in una sparse points cloud (Fig.3), ovvero, come detto in una nuvola a bassa densità (sparse reconstruction).


Fig,2, Punti di scatto delle foto (quadratini azzurri, rispetto al modello 3D)

Fig,2, Punti di scatto delle foto (quadratini azzurri, rispetto al modello 3D)

Fig.3. Scarse points cloud

Fig.3. Scarse points cloud

Nel passaggio successivo questa nuvola viene infittita in modo da ottenere una dense points cloud (Fig.4), riconoscendo tramite i punti chiave le coordinate dei punti circostanti a quelli della sparse point cloud.

Fig. 3. Dense points cloud

Fig. 3. Dense points cloud

Il dato grezzo è sempre una nuvola di punti 3D, che dovrà essere sottoposto al trattamento di mesh, al fine di realizzare una superficie poligonale continua.
Se prendiamo un editor di testo (Fig, 5), vediamo che nelle prime colonne sono descritte le coordinate x,y,z dei dense points cloud dell'oggetto da trattare, mentre le rimanenti danno l'informazione del colore.

Fig. 5. Editor di testo con le informazioni sui punti dell

Fig. 5. Editor di testo con le informazioni sui punti dell'oggetto da modellare

Fase 2. Mesh reconstruction

In questa fase si passa da una rappresentazione a punti ad un modello a superficie continua del modello, generando tanti poligoni triangolari, che collegano i vari punti della nuvola, che fanno da vertici (Fig. 6).

Fig. 6. Triangoli ottenuti con i punti della nuvola che rappresenta l

Fig. 6. Triangoli ottenuti con i punti della nuvola che rappresenta l'oggetto da processare in 3D

Fase 3. Attribuzione del colore

Il colore di ogni triangolo può' essere mediato dai colori di ognuno dei suoi tre vertici (metodo color-per-vertex). La resa complessiva dipenderà soprattutto dalla risoluzione del modello (i triangoli sono più piccoli) , perché, se più alta, maggiore sarà la qualità visiva del colore della superficie totale. Al contrario verrà un'immagine più sfocata (vedi Fig. 7).

Fig. 7. Dettaglio della messa con il color-pre-vertex

Fig. 7. Dettaglio della messa con il color-pre-vertex

C'e', come già detto, un altro metodo per attribuire i colori alle piccole superfici triangolari, il texture. Si utilizzano le immagini del modello, che orientate (vedi fase 1), sono proiettate sul modello e applicate ai poligoni della mesh: praticamente e' come se una sorta di puzzle quadrato di tutte le immagini vada a ricoprire, a guisa di lenzuolo la mesh.
Questo metodo da' una qualità visivo-cromatica, come quella delle foto e possiede completa indipendenza dalla risoluzione del modello (vedi Fig. 8).

Fig. 8. Dettaglio della mesh con la texture

Fig. 8. Dettaglio della mesh con la texture

Fase 4. Scalatura del modello

Ancora il modello, però, non è nella giusta scala, perché il software non ha modo di calcolare le dimensioni degli elementi presenti; quindi il modello 3D deve essere portato alle dimensioni reali, se vogliamo fare delle misure precise su di esso.
Se si conosce una distanza di riferimento all'interno della scena 3D ricostruita, si indica al software la misura reale di un elemento, che compare nel modello ed esso è in grado di riportare nella giusta scala tutti gli elementi. Ciò si può fare in vari modi:

  • misurando la distanza tra due elementi del modello 3D (la distanza tra due spigoli, per esempio)
  • inserendo nella scena da fotografare (quindi prima di fare le foto) un elemento di dimensioni mote, come un metro o un righello
  • applicando a fianco dell'oggetto 3D dei target, dei quali si misurerà la loro distanza reciproca.

La Fig. 9 mostra la messa in scala, usando quattro misure di riferimento.

Fig, 9, Scalatura immagine 3D  mediante quattro misure note.

Fig, 9, Scalatura immagine 3D mediante quattro misure note.

Riferimenti web, bibliografici ed articoli.

0

Commenti e note

Inserisci un commento

Inserisci un commento

Per inserire commenti è necessario iscriversi ad ElectroYou. Se sei già iscritto, effettua il login.