Scene Modelling, Recognition and Tracking Università degli studi “La Sapienza” Tesina di Visione e Percezione anno accademico 2005/2006 Nobili Diana Santoro Simona Scene Modelling, Recognition and Tracking with Invariant Image Features
Componenti del sistema computer telecamera non calibrata insieme di immagini di riferimento: disordinate acquisite a mano con la telecamera punti di vista non conosciuti a priori almeno 2 immagini
on-line off-line Cosa fa il sistema Riconoscimento modello Inserimento oggetto virtuale Estrazione features on-line off-line Feature matching Posa della camera Validazione match
Natural features Scale Invariant Feature Transform (SIFT) Caratteristiche Invarianti a cambiamento di scala, rotazione e traslazione. Parzialmente invarianti a trasformazioni affini, cambiamenti di illuminazione, cambiamenti di punto di vista nella scena, aggiunta di rumore e occlusioni.
SIFT: algoritmo di David Lowe L’algoritmo calcola un set di keypoints insieme ai corrispondenti descrittori di features. Costruzione dello spazio scala definito come: dove 2. Differenza di gaussiane e individuazione di massimi e minimi della piramide. Localizzazione dei keypoints individuati. Attribuzione di una direzione a ciascun keypoint. Definizione dei descrittori di keypoints:
Feature matching Miglior match – minima distanza Euclidea tra vettori di descrittori Matches tra 2 viste calcolate con ricerca Best-Bin-First (BBF) su un albero k-d Miglioramento matches attraverso RANSAC su coppie di immagini selezionate costruendo uno spanning tree sul set delle immagini:
Pij= proiezione 2D di un punto 3D Struttura della scena Struttura 3D euclidea ottenuta da corrispondenze tra diverse viste utilizzando il direct bundle adjustment che minimizza l’errore di riproiezione: Pij= proiezione 2D di un punto 3D dove: X’j= coordinate 3D del punto del mondo Y’j=posizione della camera per l’immagine j Z’’j=parametri di calibrazione Ottimizzazione della formula per riduzione jitter: α2 iterativamente corretto per ogni frame nel modo: dove W è una matrice diagonale 6x6 di pesi sui parametri di posizionamento della telecamera e α è uno scalare che controlla la differenza tra misure correnti e stima desiderata.
Costruzione del modello: un esempio Il modello ricostruito cattura correttamente la planarità della superficie del libro e la rotondità della tazza.
Inserimento oggetto virtuale Determinazione della profondità relativa Correzione dimensione e posizionamento Inserimento iniziale in 2D Inserimento dell’oggetto
Un esempio www.cs.ubc.ca/~skrypnyk/arproject
SIFT Tutorial by Thomas El Maraghi Il tutorial fornisce diversi esempi di applicazione dell’algoritmo delle SIFT sviluppato da David G. Lowe ed è basato sugli articoli seguenti: [1] David G. Lowe, “Distinctive Image Features from Scale-Invariant Keypoints” [2] David G. Lowe, “Object Recognition from Local Scale-Invariant Features” [3] David G. Lowe, “Local feature view clustering for 3D object recognition”
Esempio 1: the Einstein image Vengono calcolati i keypoints per l’immagine di Einstein e per la sua versione ruotata applicando l’algoritmo delle SIFT. 1. Piramidi
2. Localizzazione keypoints. Massimi locali nella piramide laplaciana. 3. Localizzazione keypoints dopo eliminazione punti a basso contrasto. 4. Localizzazione keypoints dopo filtraggio per eliminazione edges. 5a. Keypoints finali con attribuzione direzione. 5b. Keypoints finali per l’immagine ruotata
Esempio 2: architectural images Passo1 : SIFT su insieme di immagini I; Passo2 : scelta immagine di riferimento r; per ogni coppia di immagini <r, p> con p in I <> da r : Passo3 : calcolate le corrispondenze con r; Legenda: O inliers O outliers + + features Passo4 : calcolata la matrice affine tra immagine r e originale per ottenere l’immagine allineata; Passo5 : differenza tra r e immagine allineata.
Esempio 3: object recognition Sfruttando le stesse tecniche dell’esempio precedente si individua un oggetto in un’ immagine anche se parzialmente nascosto.
Altre applicazioni delle SIFT Conclusioni PRO non necessita di: calibrazione camera, markers, conoscenza della geometria della scena, ecc. tracciamento robusto anche in presenza di occlusioni o cambiamenti di scena. CONTRO non su tutte le immagini(es. basso contrasto) buoni risultati; su Web disponibili alternative alle SIFT come Multi-Scale Oriented Patches che restitituiscono una migliore distribuzione spaziale delle features. Altre applicazioni delle SIFT generazione panorama a partire da un gruppo d’immagini (nell’esempio 57) sony aibo per la localizzazione