La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Teoria e Tecniche del Riconoscimento

Presentazioni simili


Presentazione sul tema: "Teoria e Tecniche del Riconoscimento"— Transcript della presentazione:

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

2 La trasformata di Fisher
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). Marco Cristani Teoria e Tecniche del Riconoscimento

3 Teoria e Tecniche del Riconoscimento
Marco Cristani Teoria e Tecniche del Riconoscimento

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

5 Teoria e Tecniche del Riconoscimento
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 Marco Cristani Teoria e Tecniche del Riconoscimento

6 Teoria e Tecniche del Riconoscimento
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 wtx per la quale la funzione J è massima: Marco Cristani Teoria e Tecniche del Riconoscimento

7 Teoria e Tecniche del Riconoscimento
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) Si ed Sw: Marco Cristani Teoria e Tecniche del Riconoscimento

8 Teoria e Tecniche del Riconoscimento
Analogamente: In tal modo: dove SB = (m1 - m2)  (m1 - m2)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. Marco Cristani Teoria e Tecniche del Riconoscimento

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

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 m poco espressivo!!! Problema Soluzione: il vettore media

11 PCA 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)! Alcune vanno bene altre no. intuitivamente Supp. una retta di proiezione nello spazio

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 PCA Sostituendo in otteniamo , ossia
Scatter matrix ≈ mat. di covarianza Minimizzare significa massimizzare tenuto conto che , via moltiplicatori di Lagrange; ossia A conti fatti: e deve essere autovettore; Poiché deve essere massimo Minimizzo;

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

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 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 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<<N

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 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. 10 20 30 50 70 82

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

21 Eigenfaces - problema Sia pertanto S = AA’
Con un’img 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 Eigenfaces - note Gli M autovalori di A’A corrispondono agli M autovalori più grandi di S (così come i corrispondenti autovettori)

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

24 Proprietà chiave della rappresentazione ad eigenfaces
Date 2 immagini usate per costruire l’eigenspace è la proiezione nell’eigenspace dell’img allora, ossia, la distanza nell’eigenspace è approssimativamente uguale alla distanza tra due immagini.

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

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

27 Dettagli pratici 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 K M i =

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 Problemi eigenfaces (2)
Funzionale solo per la rappresentazione di dati appartenenti ad un’unica classe Non separano classi differenti


Scaricare ppt "Teoria e Tecniche del Riconoscimento"

Presentazioni simili


Annunci Google