FOTOGRAMMETRIA CON PHOTOSCAN PARTE 5 – PUNTI DI VINCOLO E OTTIMIZZAZIONE DEGLI ALLINEAMENTI

Immagine che mostra marker corrispondenti a punti di appoggio in Agisoft Photoscan

In questo articolo si parla di fotogrammetria con Photoscan, dei punti di vincolo e dell’ottimizzazione degli allineamenti delle immagini.

Prosegue con la puntata numero cinque la rubrica scritta dall’Ing. Paolo Rossi  sulla fotogrammetria moderna con il software Agisoft Photoscan.

Trovi i link a tutti gli articoli pubblicati sino ad ora in fondo alla pagina.

I PUNTI DI VINCOLO

I punti di vincolo, anche chiamati Ground Control Points (GCP), sono punti identificabili nelle immagini e dei quali sono note (perché misurate) le coordinate.
Questi punti hanno molte analogie con i PFA (Punti Fotogrammetrici di Appoggio) della fotogrammetria tradizionale.
La loro funzione è di restituire un modello scalato e georeferenziato.
Costituiscono anche un mezzo per vincolare il modello in fase di ricostruzione, riducendo le distorsioni indotte dalla concatenazione delle immagini.

IL RILIEVO

Il rilievo delle coordinate dei GCP è effettuato contestualmente al volo con il drone.
Prima del volo si posizionano i target nell’area di interesse.
Il centro dei target dovrà essere visibile ed identificabile nelle immagini acquisite (
dimensioni target legate alla quota di volo e fotocamera utilizzata).
La posizione del punto (posizione del centro del target) è spesso misurata con tecniche topografiche classiche come GNSS o stazione totale.

Alla domanda “ quanti target devo mettere..?” non esiste una risposta con validità generale e certa!

Qui entrano in gioco l’esperienza di chi fa il rilievo e una buona dose di buon senso.

I fattori che influenzano la scelta sono:

  • estensione dell’area
  • quota di volo
  • fotocamera
  • caratteristiche dell’area
  • complessità geometria della superficie (sia in termini planimetrici che altimetrici)
  • accuratezze che si vogliono ottenere

Una regola generale è che tali vincoli siano omogeneamente distribuiti in tutta l’area di interesse.
Vincoliamo le zone del bordo e posizioniamo alcuni punti al centro; se l’area presenta marcati dislivelli occorre posizionare punti alle diverse quote.

Qualche considerazione riguardo il numero dei vincoli

Se pensiamo ad un’operazione di georeferenziazione classica (roto-traslazione con variazione di scala), ci sono 7 parametri incogniti e servono le coordinate 3D di almeno 3 punti per avere una soluzione (meglio se 4 così si compensa).
Con le SfM valgono queste stesse osservazioni.
Se poi pensiamo ad un’area “tipo” quadrata, posizioneremo un target per ogni vertice più uno al centro, quindi 5 target totali.

Direi che 5-6 target è il minimo.
Aumentando si incrementano anche le accuratezze ottenibili..
Sopra una certa soglia i miglioramenti non sono più così marcati.

I MARKER IN PHOTOSCAN

In PhotoScan i punti di vincolo sono inseriti come marker.
Il processo di identificazione del target nelle immagini è chiamato collimazione.
Di solito la collimazione è fatta dopo l’allineamento, perché l’identificazione del target in immagini già posizionate è più veloce.

Immagine che mostra la finestra di inserimento dei marker in Agisoft Photoscan

  • Creare un nuovo marker, nel reference pane, alla finestra marker usare tasto destro del mouse.

  • Posizionare marker nella prima immagine, identificato il target, cliccare col tasto destro e posizionare il marker corrispondente.

  • Rifinire il posizionamento, in un qualsiasi momento il marker può essere selezionato e spostato nella posizione più opportuna. Il colore verde della bandiera indica “posizione manualmente rifinita dall’utente”.

  • Posizionare marker nella seconda immagine, in una qualsaisi altra immagine dove è presente il target noterete una linea tratteggiata bianco-rosso che indica la retta su cui si trova il target cercato. Questa retta nasce dalla geometria epipolare, tecnica che permette di ridurre ad una retta lo spazio per la ricerca di corrispondenze tra immagini allineate.

  • Posizionamento marker in ulteriori immagini, una volta collimato il target nella seconda immagine vedrete comparire bandiere grigie in tutte le immagini in cui il target è inquadrato. Bandiera grigia significa che il target è identificato automaticamente e che la collimazione non è usata per fini di processing. Io di solito vado a rifinire manualmente la posizione del target in tutte le immagini (mi aiuto con gli strumenti di filtraggio immagini). Rifinisco la posizione (bandiera grigia diventa verde) nel maggior numero possibile di immagini per vincolare al meglio il dataset, tralascio quelle in cui il centro del target non è ben visibile o si trova sul bordo immagine.

  • Export markers, terminata la fase di collimazione di tutti i markers è possibile salvarne la posizione in un file (.xml) ed esportarlo in modo da poterlo importare in altri progetti (vedi comando tools-export-export markers).

  • Inserimento coordinate, nel reference pane è possibile digitare le coordinate del punto e relativa accuratezza. In alternativa si possono importare i valori da un file txt opportunamente editato (import…).

SCALE BARS

In PhotoScan puoi lavorare anche con le Scale Bar.
Se non hai a disposizione le coordinate dei punti, ma solo delle distanze, puoi usare quest’ultime per vincolare il modello ed ottenere un prodotto scalato ma non georeferenziato. L’inserimento delle scale bar è simile a quello dei marker, infatti la scale bar non è altro che una distanza tra due marker (sul manuale trovi tutte le info a riguardo).

CODED TARGETS

Se lavori sempre con PhotoScan potresti essere interessato a provare i coded targets, sono target con una geometria particolare che il software è in grado di riconoscere automaticamente.
Questa scelta evita la collimazione manuale nelle immagini, quindi velocizza i tempi richiesti per il processing e migliora la precisione nell’identificazione del centro del target.

Io non li ho mai usati (lo farò presto!) ma ti condivido alcune riflessioni:

  • Benefici in termini di tempo e precisioni;

  • L’automatica identificazione ne permette l’utilizzo anche come punti di legame in fase di allineamento (I step);

  • Se il sistema di codifica non viene visualizzato correttamente e PhotoScan non riconosce il target la collimazione diventa molto difficoltosa (non ci sono numeri che possiamo riconoscere!). Questo potrebbe accadere se la risoluzione della camera è insufficiente, ci sono aberrazioni cromatiche o blurring.
    Anche il manuale, infatti, suggerisce l’utilizzo di coded targets in progetti di close range photogrammetry perché a maggiori distanze il target dovrebbe essere molto grande.

OTTIMIZZAZIONE

L’ottimizzazione degli allineamenti viene svolta sulla base dei dati “spuntati” all’interno del reference pane.
Si possono usare le info sulla posa dei fotogrammi e le coordinate dei marker.
Il manuale consiglia in questa fase di usare i soli marker, perché più accurati rispetto ai dati rilevati dai sistemi di posizionamento a bordo del drone.

L’ottimizzazione si lancia dal menu toolsoptimize cameras, ed impiega alcuni minuti.
I parametri da ottimizzare sono scelti automaticamente al software in base al tipo di fotocamera utilizzata ed ai risultati della fase di allineamento (ad esempio: se p1 e p2 sono simili a 0, non si ottimizzano p3 e p4).

Al termine della riottimizzaione non sono creati nuovi output, ma “aggiornamenti” dei risultati già ottenuti.
Nel reference pane sono indicati gli errori sui marker inseriti (differenza tra coordinate inserite e stimate), la nuvola sparsa è georeferenziata, la posa e i parametri di calibrazione delle fotocamere sono aggiornati.
Nella finestra tools- camera calibration si possono vedere i nuovi grafici delle distorsioni e residui e i nuovi valori dei parametri adjusted.

EDITING DELLA NUVOLA SPARSA

Un’altra operazione utile da effettuare in fase di ottimizzazione degli allineamenti è l’editing della nuvola sparsa.

I punti che costituiscono questa prima ricostruzione della geometria sono stati scelti automaticamente dal software (possiamo settare dei limiti massimi in fase di allineamento, ma niente di più..).
Può essere utile eliminare alcuni di questi punti per migliorare gli allineamenti di tutto il dataset.

Il comando gradual selction permette di fare quest editing (lo trovi all’interno del menu edit, o model se hai una versione recente).

Vediamo i parametri che possono essere interrogati:

  • errore di riproiezione, i punti con alti valori sono stati mal localizzati nella fase di matching e spesso indicano matches errati;

  • incertezza della ricostruzione, alti valori indicano punti ricostruiti da immagini molto vicine tra loro e con baseline corta;

  • image count, questo valore indica il numero di immagini in cui il punto è inquadrato (i punti inquadrati in due sole immagini potrebbero non essere stati ben ricostruiti);

  • accuratezza della riproiezione, seleziona punti non ben localizzati a causa della scala a cui sono stati identificati.

Quello che faccio io, dopo aver ottimizzato gli allineamenti con i vincoli, è usare questi strumenti di editing e riottimizzare.

Utilizzo l’image count per eliminare i punti inquadrati in solo due immagini (è più probabile che questi siano effetti da errore), effettuo la riottimizzazione, poi seleziono i punti con alti valori di errori di riproiezione (errore di riproiezione), li elimino e rieffettuo l’ottimizzazione.
Lavoro solo con questi due filtri perché ho notato che anche gli altri valori si “sistemano” di conseguenza.
Uso valori di errore di riproiezione intorno al pixel (o di poco inferiori).
Questa è solo una indicazione perché la scelta deve essere legata alle accuratezze ricercate e alle dimensioni del pixel a terra.

Leggendo il forum di PhotoScan ho trovato alcune indicazioni secondo cui non bisogna eliminare più del 10-15% dei punti della nuvola sparsa, altrimenti si rischia una eccessiva riduzione ed un peggioramento dei risultati.

Con la costruzione della nuvola sparsa termina quel “pacchetto” di software chiamato SfM, che, come indica l’acronimo, ricostruisce la geometria dell’oggetto dal “movimento”. Abbiamo ottenuto infatti la nuvola sparsa, che descrive l’oggetto, e la posa delle prese fotografiche.

Nella fase di creazione della nuvola densa si utilizzano questi allineamenti per definire la posizione 3D pixel by pixel con gli algoritmi di Dense Image Matching.

Alla prossima!

Grazie a Paolo per il suo contributo che spero possa esserti utile.
Per dubbi o domande lo spazio per i commenti qui sotto è a tua disposizione!

A presto!

Paolo Corradeghini

 

Qui ci sono gli articoli di questa serie pubblicati sino ad ora:

Parte 1 – Fotogrammetria con Photoscan
Parte 2 – Operazioni preliminari sulle immagini
Parte 3 – La calibrazione delle immagini
Parte 4 – Allineamento delle immagini
Parte 5 – Punti di vincolo e ottimizzazione degli allineamenti

 

 

fotografia dell'Ing. Paolo RossiPaolo Rossi, ingegnere e PhD in Ingegneria Industriale e del Territorio presso l’Ateneo di Modena e Reggio Emilia, attualmente lavora presso il Laboratorio di Geomatica del Dipartimento di Ingegneria “Enzo Ferrari”, dove si occupa di ricostruzione 3D da immagini.

Laboratorio di Geomatica
Dipartimento di ingegneria Enzo Ferrari, Università degli studi di Modena e Reggio Emilia
Via Pietro Vivarelli 10, Modena
Tel: 059 2056297
Cell: 3457054511
Email: paolo.rossi at unimore.it
Profilo Linkedin

Se pensi che possa essere utile ad altri, condividilo!Share on Facebook
Facebook
Share on LinkedIn
Linkedin
Tweet about this on Twitter
Twitter
Email this to someone
email
You may also like
Logo di Convergo Cisis
CONVERTIRE COORDINATE CON CONVERGO
Immagine di una schermata del software di elaborazione fotogrammetrica LiMapper
FOTOGRAMMETRIA CON IL SOFTWARE LiMAPPER

Lasciami un commento!

7 Comments
  • Michele
    Mag 30,2018 at 11:18

    grz paolo per la gentile risposta.
    in effetti, sì, si tratta di stima e cmq il risultato ricercato non è il DEM ma il mosaico delle foto. sempre restando che i gCP sn necessari. le difficoltà di accesso non sn dovute alla proprietà, in quano è la stessa che mi chiede il servizio ma al fatto che per rilevare i punti interni bisogna farsi delle belle passeggiate dentro al campo di grano (16 ettari solo in foto ma 38 nel totale), cosa poco agevole e che comporterebbe dei danni… cosa che il proprietario vorrebbe evitare. altra questione è anche che per rilvare questi punti, dovrei appoggiarmi a un topografo/geometra che ne rilevi le coordinate esatte, dato che al momento l’acquisto di uno strumento adatto è fuori dal mio budget di attività che ha appena battuto il calcio di inizio e ho già dato fondo a tutte le riserve… ho valutato il noleggio ma con costi di cauzione pari al 50% del costo dello strumento + quota di nolo… l’affiancamento a un secondo professionista è l’unica soluzione…
    grazie cmq per le tue considerazioni.
    michele

  • michele
    Mag 22,2018 at 11:28

    Paolo scusami non riesco a fare reply… o non so se andrà come risposta.
    cmq come dici tu il problema si è la mancanza di gcp ma se per alcuni (quelli perimetrali) non è un problema rilevarli quelli interni del campo non è semplice. mi permetto di inserire un link sul mio G-drive per farti vedere come affronterei il problema. GCP in verde sono quelli possibili mentre quelli in rosso molto difficili da rilevare.
    https://drive.google.com/open?id=15VRWRBC6QiX6ORM4Pn30Lc0qAwFiC1pc

    ho pensato anche di stimarli con il dem messo a disposizione della regione o anche come indicato da te in un articolo stimarli con TCX…
    grazie complimenti per i podcast

    • Paolo Corradeghini
      Mag 28,2018 at 10:11

      Ciao Michele, la tua risposta è arrivata perfettamente e ti ringrazio per la pazienza nell’aspettare la mia.
      Ho visto i documenti che hai girato.
      La posizione dei punti di appoggio è perfetta nella tua disposizione e, se te lo posso chiedere, come mai è difficile rilevare quelli interni?
      Ci sono problemi di accesso in proprietà privata?

      Per quanto riguarda la possibilità di stimare le coordinate dagli strumenti cartografici messi a disposizione della Regione è sicuramente possibile per un posizionamento di massima ma c’è il rischio concreto di inserire delle coordinate con precisioni sulla misura molto inferiori rispetto a quelle dei punti presi con strumenti topografici, vanificandone la misura e l’accuratezza generale del modello e del rilievo restituito.

      Grazie per i complimenti per il podcast!
      🙂
      Ciao!
      Paolo

  • Michele
    Mag 21,2018 at 10:31

    Salve Paolo,
    risparmio i bit per i complimenti dato che sn scontati.
    una domanda. con il mio drone ho volato su 16 ettari di campo coltivato a grano per stimare l’allettamento. il mio obiettivo non era una ricostruzione 3d ma la vista di insieme del campo. non avendo sistemi di precisione per determinare la posizione di gcp mi sn solo affidato al tag geografico delle immagini.
    il risultato finale, come immagine, e soddisfacente, ho però notato che la nuvola di punti ha assunto la forma di una calotta sferica con una curvatura molto dolce ma comunque non corrispondente alla morfologia del terreno (assolutamente piatto) in questo caso la presenza di GCP avrebbe eliminato questo risultato inatteso? e come fare a distribuire dei GCP su 16 ettari di campo. immagino che uno per i 4 vertici che marcano il terreno sono pochi e metterne qualcuno in mezo è impossibile…
    grazie per le tue considerazioni
    michele

    • Paolo Corradeghini
      Mag 21,2018 at 15:58

      Ciao Michele.
      Il risultato che hai ottenuto, o meglio gli errori sul risultato del tuo modello sono proprio dovuti alla mancanza di GCP che lavorano un po’ come se fossero delle punti che fermano il foglio sul tavolo.
      A volte capita di non avere deformazioni evidenti ma accorgersi che un terreno pianeggiante viene in realtà modellato in discesa!
      La disposizione sul terreno dei GCP (e anche dei CP ossia i punti di controllo) è tanto importante quanto la precisione del loro rilievo.
      Andrebbero distribuiti omogeneamente nella planimetria e nell’altimetria (se hai dislivelli) e purtroppo quattro sono davvero un numero basso per avere accuratezze elevate.
      Nel tuo caso, visto che non si tratta di un rilievo topografico potrei consigliarti di metterne una decina e oltre al perimetro dovresti cercare di metterne qualcuno anche nella zona centrale.
      In questo modo il risultato sarà sicuramente migliore!
      Ciao Michele e grazie del tuo commento!
      Paolo

  • francescantonio masi
    Apr 15,2018 at 10:23

    grazie per i tuoi professionali e preziosi suggerimenti, io ne faccio veramente tesoro, ed e’ apprezzabile quello che fai. da umile topografo di un paese della basilicata, io sono di avigliano in provincia di Potenza, mi sono avvicinato con tanta fatica al mondo dei droni gia da qualche anno , e non ti nego che ho avuto mille difficolta’ per capire i meccanismi , anche complessi relativi all’uso dei droni nel mondo della topografia. Molti u li usano e pubblicano veramente delle cose allucinanti, senza capire nulla di fotogrammetria e topografia. Caro ingegnere sono veramente contento e felice di trovare persone come lei che mettono a disposizione del pubblico notizie e suggerimenti acquisiti con tanti sacrifici , volonta’ e passione. . per ilo momento ti ringrazio e ti auguro una buona domenica.

    • Paolo Corradeghini
      Apr 17,2018 at 11:22

      Ciao Francesantonio,
      grazie per il tuo commento.
      Mi fa piacere condividere le mie esperienze di lavoro!
      Creo che in questo modo ne traggano beneficio tutti quanti, io per primo che ho la possibilità di conoscere e fare rete con tante persone, tecnici e professionisti.
      A presto e buona giornata!
      Paolo

Leave Your Comment

Your Comment*

Your Name*
Your Website

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.