La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Marco Cristani Teoria e Tecniche del Riconoscimento1 Metodo di Fisher, Principal Component Analysis Facoltà di Scienze MM. FF. NN. Università di Verona.

Presentazioni simili


Presentazione sul tema: "Marco Cristani Teoria e Tecniche del Riconoscimento1 Metodo di Fisher, Principal Component Analysis Facoltà di Scienze MM. FF. NN. Università di Verona."— Transcript della presentazione:

1 Marco Cristani Teoria e Tecniche del Riconoscimento1 Metodo di Fisher, Principal Component Analysis Facoltà di Scienze MM. FF. NN. Università di Verona A.A

2 Marco Cristani Teoria e Tecniche del Riconoscimento2 Il problema è quello di ridurre la dimensionalità dello spazio delle features in modo da rendere il problema di classificazione computazionalmente trattabile. È in sostanza la proiezione delle feature caratterizzanti un campione su una retta, cioè su una direzione (da un problema d-dimensionale ad un problema 1-dimensionale). La trasformata di Fisher

3 Marco Cristani Teoria e Tecniche del Riconoscimento3

4 Marco Cristani Teoria e Tecniche del Riconoscimento4 Si supponga di avere un insieme di N campioni d- dimensionali x 1,.., x N, di cui N 1 classificati come 1 ed N 2 classificati come 2. Si vuole cercare una trasformazione w, ossia una combinazione lineare delle componenti di x tale da generare i corrispondenti campioni (scalari) y 1,..., y N : w t x = y Geometricamente, se la norma di w è pari a 1 allora ogni y i è la proiezione del campione x i sulla retta di direzione w.

5 Marco Cristani Teoria e Tecniche del Riconoscimento5 Siccome si vuole separare le due classi anche nel nuovo spazio monodimensionale allora si considera come misura di separazione la differenza delle medie dei campioni. Quindi: dove

6 Marco Cristani Teoria e Tecniche del Riconoscimento6 Si vuole ottenere che la differenza tra le medie delle due classi (trasformate) sia grande rispetto alla deviazione standard di ogni classe. Allora, si definisce il discriminante lineare di Fisher come la funzione lineare w t x per la quale la funzione J è massima:

7 Marco Cristani Teoria e Tecniche del Riconoscimento7 dove sono le dispersioni (scatter) dei campioni classificati 1 ed 2, rispettivamente, definite come: Si vuole che le dispersioni siano abbastanza piccole, ossia, che i campioni di una classe siano abbastanza concentrati intorno al valore medio. Per ottenere J come una funzione esplicita di w si definiscono le matrici di dispersione (scatter matrices) S i ed S w :

8 Marco Cristani Teoria e Tecniche del Riconoscimento8 Analogamente: In tal modo: dove S B = (m 1 - m 2 ) (m 1 - m 2 ) t Quindi per ottenere J(w) massimo, si deve esplicitare J in funzione diretta di w e quindi derivarlo rispetto a w ed eguagliare a 0.

9 Marco Cristani Teoria e Tecniche del Riconoscimento9 Derivando ottengo che: che è la trasformata di Fisher.

10 10 PCA Il dato = un vettore N-dimensionale di valori di pixel Supponiamo N=2 dati = punti 2D Come posso descrivere in modo compatto questi M punti? SOL 1: Con un punto (vettore) solo, che minimizzi la distanza media quadratica con tutti i pti Soluzione: il vettore media Problema m poco espressivo!!!

11 11 PCA Supp. una retta di proiezione nello spazio Alcune vanno bene... altre no. intuitivamente SOL2: Con una retta di proiezione, che minimizzi la distanza media quadratica con tutti i pti In questo caso useremmo una dimensione per descrivere i dati (la posizione sulla retta)!

12 12 PCA Per convenienza, imponiamo passaggio dalla media, e specifichiamo quindi i punti della retta come Troviamo quindi i coefficienti che minimizzano la distanza quadratica

13 13 PCA Sostituendo in otteniamo, ossia Minimizzare significa massimizzare tenuto conto che, via moltiplicatori di Lagrange; ossia Minimizzo; Scatter matrix mat. di covarianza A conti fatti: 1.e deve essere autovettore; 2.Poiché deve essere massimo

14 14 Esempio La matrice di covarianza è Ottengo 2 autovettori (e autovalori): quale prendo?

15 15 Esempio - osservazioni La matrice di covarianza è simmetrica, reale gli autovettori {e} sono ortogonali, formanti una base per lo spazio N dimensionale gli autovalori più grandi si hanno nelle direzioni di massima dispersione dei dati

16 16 Esempio - osservazioni I coefficienti, per i =1,...,N, sono le componenti del punto per la base trovata Quindi un punto può essere scritto come

17 17 Da PCA ad eigenfaces Dato un gruppo di punti, ho trovato la base che descrive lo scattering dei punti Ogni punto puo essere mappato tramite i componenti della base (numero componenti = numero dimensioni N) Usare meno componenti (le componenti principali) permette di proiettare i punti in un sottospazio altamente informativo riduzione della dimensionalità dei punti Ora passiamo alle facce (...punti!) dataset di M facce, N dimensioni … N.B.: di solito, M<

18 18 Da PCA ad eigenfaces (2) Preprocessing - –Le immagini devono contenere esclusivamente facce (no outliers) –Le immagini devono essere ragionevolmente prive di rumore –Le facce devono avere la stessa dimensione riscalamento –Stesse condizioni di illuminazione, o compensazione –Non ci deve essere sfondo ritaglia le facce, catturale su sfondo neutro (alternativa: background subtraction) –In maniera automatica, utilizzo di un metodo di face detection …

19 19 Eigenfaces - proiezioni Dopo aver ricavato gli autovettori {e} (eigenfaces) dalla matrice di covarianza S, calcolo le componenti {a} (o proiezione) per la faccia x ed ho Le ricostruzioni, g, possono avvenire anche nei sottospazi descritti dalle eigenfaces con eigenvalues più grandi – riduzione dimensionalità … m n. coeff.

20 20 Eigenfaces Autovettori {e} (eigenfaces): in pratica?

21 21 Eigenfaces - problema Sia pertanto S = AA Con unimg 256 x 256 ho : problemi di overflow! Trick: calcolo gli autovettori di, ossia, tenuto conto che di solito si usano eigenfaces e che N x M N x N quindi

22 22 Eigenfaces - note Gli M autovalori di AA corrispondono agli M autovalori più grandi di S (così come i corrispondenti autovettori)

23 23 Eigenfaces - algoritmo 1.Sottraggo ad ogni immagine x (k),k=1...M, la media ottenendo i vettori da cui costruisco la matrice 2.Calcolo M autovettori di formando la matrice 3.Ricavo gli M autovettori più grandi di S = AA, ossia o in forma matriciale 4.Ricavo i corrispondenti componenti (o coeff. di proiezione) o in forma matriciale

24 24 Proprietà chiave della rappresentazione ad eigenfaces Date 2 immagini usate per costruire leigenspace è la proiezione nelleigenspace dellimg allora, ossia, la distanza nelleigenspace è approssimativamente uguale alla distanza tra due immagini.

25 25 Riconoscimento con le eigenfaces 1.Analizza il database dimmagini etichettato ( ) a)Esegui PCA calcola le eigenfaces, formo U b)Calcola i K coefficienti per ogni immagine x (k) k=1,...,M c)Calcola le M proiezioni nello spazio delle eigenfaces ω (k) k=1,...,M d)Calcolo la soglia 2.Data una nuova img (da riconoscere) x, a)Ne sottraggo la media del dataset di training m, ottengo b)Proietto, ossia calcolo le K componenti c)Calcolo il set di distanze TRAINING ossia RICONOSCIMENTO

26 26 Riconoscimento con le eigenfaces 3.Ricostruisco la faccia usando eigenfaces e componenti 4.Calcolo la distanza tra la faccia di partenza incognita e la ricostruzione 5.Se non è una faccia è una nuova faccia è una faccia conosciuta, la k best -esima, dove RICONOSCIMENTO

27 27 Dettagli pratici KMi = Quanti eigenvector usare? Controlla il decadimento degli eigenvalues Dati buoni ossia trattabili hanno poche dimensioni ad alta varianza Nel caso in cui tutti gli N autovalori sono stati calcolati per un dataset N-dimensionale vale

28 28 Problemi eigenfaces Illuminazione: stessi soggetti con differente illuminazione risultano lontani nello spazio delle eigenfaces Pose differenti :le componenti di un volto frontale non servono per un riconoscimento con profili Allineamento differente Espressione facciale differente Outlier –Sample outliers = non facce –Intra-sample outliers = facce affette da rumore

29 29 Problemi eigenfaces (2) Funzionale solo per la rappresentazione di dati appartenenti ad ununica classe Non separano classi differenti


Scaricare ppt "Marco Cristani Teoria e Tecniche del Riconoscimento1 Metodo di Fisher, Principal Component Analysis Facoltà di Scienze MM. FF. NN. Università di Verona."

Presentazioni simili


Annunci Google