Quarto incontro LIMA 3D Università degli Studi di Milano Dipartimento di Scienze dell’Informazione Laboratory of Image Analysis and Vision 7 Luglio, 2005 Verona, 4° incontro LIMA 3D 1 Due Approcci per la ricostruzione 3D di volti • Modello semantico del volto • Mesh sparsa i cui vertici hanno una semantica nota • Permette di calcolare misure biometriche significative • maggiore semplicità • Stereo matching denso • Mesh densa del volto, ricostruito con maggiore dettaglio e precisione 7 Luglio, 2005 Verona, 4° incontro LIMA 3D 2 Modello semantico del volto •Modello 3D di un volto generico •Deformato per adattarlo al volto di uno specifico individuo Modello di CANDIDE: mesh avente 114 triangoli e 64 vertici 7 Luglio, 2005 Verona, 4° incontro LIMA 3D 3 Modello semantico del volto • Primo passo: • ricostruzione 3D di 15 punti caratteristici del volto, determinati su tre immagini stereo dello stesso individuo • i vertici del modello 3D corrispondenti ai punti caratteristici sono i punti di controllo usati per deformare la mesh 7 Luglio, 2005 Verona, 4° incontro LIMA 3D 4 Modello semantico del volto I due passi di deformazione del modello • Allineamento globale: • Trasformazione affine per ottenere un sistema di riferimento unico • Adattamento locale: • Spostamento dei punti di controllo • In modo che coincidano coi 15 punti caratteristici ricostruiti • Spostamento degli altri vertici del modello • in funzione dello spostamento dei punti di controllo • ogni punto di controllo ha una regione di influenza sulla mesh di Candide 7 Luglio, 2005 Verona, 4° incontro LIMA 3D 5 Modello semantico del volto • Il modello di Candide è formato da un basso numero di triangoli ed è quindi: • Facilmente implementabile • Velocemente deformabile MA • La semplicità del modello non permette di ottenere significative deformazioni • Le ricostruzioni di volti diversi appaiono simili Necessità di un modello più preciso 7 Luglio, 2005 Verona, 4° incontro LIMA 3D 6 Modello semantico del volto Il nuovo modello • Modello 3D creato per ogni individuo sulla base di: • 15 punti caratteristici localizzati nelle immagini stereo del volto • 72 vertici aggiuntivi: • 22 vertici inferiti sulla immagine frontale • 25 vertici inferiti per ognuna delle immagini laterali • Per ciascuno di questi vertici si cerca la corrispondenza • Modello finale con 156 triangoli • Problema: determinare corrispondenze precise dei 72 punti 7 Luglio, 2005 Verona, 4° incontro LIMA 3D 7 Modello semantico del volto 7 Luglio, 2005 Verona, 4° incontro LIMA 3D 8 Modello semantico del volto Ricerca delle corrispondenze • Si definiscono tre cammini che partono da un punto caratteristico (.) e terminano nel punto (X) di cui si cerca il corrispondente • Per ogni cammino viene cercato il cammino corrispondente nell’immagine di ricerca • Il mediano tra i tre corrispondenti trovati per il punto il corrispondente del punto 7 Luglio, 2005 X stesso. Verona, 4° incontro LIMA 3D Xè 9 Risultati Modello semantico del volto Corrispondenze trovate Modello ricostruito 7 Luglio, 2005 Verona, 4° incontro LIMA 3D 10 Modello semantico del volto Integrazione dei due modelli 7 Luglio, 2005 Verona, 4° incontro LIMA 3D 11 Stereo Matching Denso • Ricerca di corrispondenze dense su immagini stereo, mediante l’utilizzo di misure di similarità, al fine di definire una mesh densa • Vincoli • Esistenza ed Unicità delle corrispondenze • Continuità e “Smoothness” della superficie 3D • Vincolo di Ordinamento • Vincolo Epipolare 7 Luglio, 2005 Verona, 4° incontro LIMA 3D 12 • Metodi Locali vs. Globali • Metodi locali: corrispondenze non accurate in regioni a basso gradiente • Metodi globali: spesso con programmazione dinamica che non permette controllo dell’algoritmo • Risoluzione delle immagini • Bassa risoluzione: consente solo una ricostruzione grossolana • Alta risoluzione: caratterizzata da un basso rapporto segnale-rumore • Disparità delle immagini • Bassa disparità: il problema di ricostruzione è più sensibile agli errori • Alta disparità: distorsione prospettica maggiore 7 Luglio, 2005 Verona, 4° incontro LIMA 3D 13 Stereo matching denso Algoritmi sperimentati 1. A.Fusiello, V.Roberto, E.Trucco “Efficient Stereo with Multiple Windowing” CVPR 97 2. C.L. Zitnick, T. Kanade “A Cooperative Algorithm for Stereo Matching and Occlusion Detection” PAMI 2000 3. K. Jonsson “Shader-based stereo matching with local algorithms”Master thesis in Lund University 2003 4. C. Sun “Fast Stereo Matching using Rectangular Subregioning and 3D Maximum-Surface Techniques” Int. Journal of Comp. Vision 2002 5. S. Huq, B. Abidi, A. Goshtasby, M. Abidi “Stereo Matching with Energy Minimizing Snake Grid for 3D face modeling” SPIE 2004 7 Luglio, 2005 Verona, 4° incontro LIMA 3D 14 Stereo matching denso “Stereo Matching with Energy Minimizing Snake Grid for 3D face modeling” Huq, Abidi, Goshtasby, Abidi • “Snake grid” • Ricerca della corrispondenza dei vertici di una coppia di griglie • Deformazione locale e iterativa di una griglia in modo da minimizzare globalmente: E i, j E i, j int E i, j ext • Eint tende a mantenere la forma regolare • Eext corrisponde alla funzione di correlazione • Inizializzazione della griglia con scanner laser • Raffinamento “coarse to fine” 7 Luglio, 2005 Verona, 4° incontro LIMA 3D 15 Stereo matching denso Metodo da noi proposto • Tecnica basata sugli “snake grid”: •Multi-risoluzione •Coarse-to-fine •Multi-window 7 Luglio, 2005 Verona, 4° incontro LIMA 3D 16 Stereo matching denso L’algoritmo di stereo matching denso • Spostamento dei vertici di una griglia per minimizzare la funzione energia: E i, j E i, j int E i, j ext • Eint non tiene conto solo dello spostamento laterale ma anche di quello verticale • Eext viene calcolato con un metodo multi-window Eint -1 0 7 Luglio, 2005 1 Eext -1 Verona, 4° incontro LIMA 3D 0 1 17 Spostamento di un nodo della griglia • Spostamento “simultaneo” dei nodi della griglia • Simulazione di tale spostamento simultaneo tramite un’evoluzione iterativa • Minimizzazione dell’energia totale Etot della griglia E -1 0 dEtot dt 1 10% 7 Luglio, 2005 Verona, 4° incontro LIMA 3D 18 L’evoluzione degli snake grids 7 Luglio, 2005 Verona, 4° incontro LIMA 3D 19 L’evoluzione degli snake grids 7 Luglio, 2005 Verona, 4° incontro LIMA 3D 20 Sviluppi futuri • Miglioramenti di entrambi gli approcci • Definizione di una mesh sparsa più dettagliata • Ottimizzazione del metodo di stereo matching denso • Integrazione dei modelli • Unione dei due modelli al fine di avere un modello ben dettagliato con semantica 7 Luglio, 2005 Verona, 4° incontro LIMA 3D 21 Stereo matching denso “Efficient Stereo with Multiple Windowing” Fusiello, Roberto, Trucco • “Area-based algorithm”: • adotta la SSD come misura di similarità • “Multiple Windows”: • IDEA: mantenere quella a massima similarità • Utilizza 9 diverse finestre • “Left-Right Consistency constraint”: • Riconosce e gestisce le occlusioni • “Uncertainty Estimate”: • Stima l’affidabilità delle disparità calcolate • Problema: tecnica locale non ottimale per i volti che presentano regioni con scarsa tessitura 7 Luglio, 2005 Verona, 4° incontro LIMA 3D 22 Stereo matching denso “A Cooperative Algorithm for Stereo Matching and Occlusion Detection” Zitnick, Kanade • Vincoli di unicità e continuità • Si basa su: • Template adattativo • Volume 3D di correlazione • Aggiornamento iterativo delle corrispondenze • Occlusioni: • Rilevate tramite sogliatura dei valori di corrispondenza • Problema: tecnica locale non ottimale per i volti che presentano regioni con scarsa tessitura 7 Luglio, 2005 Verona, 4° incontro LIMA 3D 23 Stereo matching denso “Shader-based stereo matching with local Jonsson algorithms” • Input: immagini rettificate • Costruzione delle piramidi multi-risoluzione • Ricerca delle corrispondenze al livello più alto (Inizializzazione della disparity map) • Per ogni livello • Inizializza la disparity map interpolando quella del livello superiore • Raffinamento delle corrispondenze usando la SSD • Problemi: • È molto sensibile all’inizializzazione • Non sfrutta i vincoli di ordinamento e di smoothness 7 Luglio, 2005 Verona, 4° incontro LIMA 3D 24 Stereo matching denso “Fast Stereo Matching using Rectangular Subregioning and 3D Maximum-Surface Techniques” Sun • Vincoli: di continuità ed epipolare • Algoritmo: • Suddivisione delle immagini in sotto regioni per il calcolo veloce della similarità (RSR) • Costruzione di un volume 3D di correlazione • Utilizzo di una tecnica di programmazione dinamica per la ricerca nel volume 3D della superficie di somma massima (TSDP) • Problemi: • la convergenza non è uniforme • Non c’è controllo sull’algoritmo 7 Luglio, 2005 Verona, 4° incontro LIMA 3D 25 Trovare le corrispondenze Corrispondenze tra cammini • La ricerca del cammino corrispondente parte dal punto caratteristico • Per ogni punto del cammino • si estrae un template centrato nel punto stesso; • si cerca il corrispondente nell’intorno rettangolare centrato nel punto precedentemente trovato; la misura di similarità usata è la Zero Normalized Cross Correlation (ZNCC) 7 Luglio, 2005 Punti caratteristici corrispondenti Torna Verona, 4° incontro LIMA 3D 26