Estrazione e riconoscimento di volti da filmati

La tesi si occupa dell'estrazione e identificazioni di volti da flussi video.

Le problematiche che si devono risolvere sono due. La prima riguarda la localizzazione dei volti all'interno di un frame video (face detection). La seconda riguarda l'identificazione di un soggetto a partire da immagini di esempio (face recognition).

La metodologia utilizzata per risolvere il problema del face detection coinvolge due tecniche molto affermate in questo campo e sono:

  • skin-segmentation: tale procedura è utilizzata per estrarre da un frame tutte le sotto-aree che contengono dei pixel classificabili come colore della pelle. Il suo ruolo è dunque quello di limitare il numero di aree all'interno del frame dove ricercare la presenza del volto;
  • algoritmo Viola-Jones: tale tecnica fa uso di un algoritmo di classificazione di tipo AdaBoost ad una tecnica di estrazione delle features chiamato Haar. L'algoritmo pensato inizialmente come tecnica di ricerca dei volti è stato esteso anche per la localizzazione di componenti del volto come occhi e bocca. L'algoritmo viene utilizzato per ricercate nelle sotto-aree ottenuto dalla skin-segmentation la bocca e gli occhi di un volto.

La metodologia utilizzata restituisce un area del frame all'interno del quale è presente un volto ed inoltre la posizione di occhi e bocca. Queste informazioni verranno utilizzate per cercare di eseguire l'identificazione del soggetto.

La procedura di face recognition fa uso del classificatore Support Vector Machine (SVM) e della metodologia di estrazione delle features Scale Invariant Feature Trasform (SIFT). Tale tecnica di estrazione delle features trasforma un'immagine in un insieme di punti caratteristici che prendono il nome di keypoint. Essi sono invarianti a scala, rotazione e parzialmente ai cambiamenti di luminosità.

I keypoint estratti da un immagine campione, contenente il volto del soggetto da ricercare, vengono utilizzati come campioni di apprendimento per l'algoritmo di classificazione SVM. L'algoritmo di classificazione determina l'iperpiano di separazione tra i differenti soggetti. Svolta la fase di apprendimento l'algoritmo SVM dovrebbe essere in grado di classificare correttamente un volto conosciuto ma acquisito in contesto differente da quello di apprendimento. La localizzazione e l'identificazione del volto può essere svolta sia su un flusso proveniente da una webcam oppure su video già presenti su un sistema di archiviazione di massa.

Le possibili finalità del lavoro sono molteplici; possibili applicazioni potrebbero essere la sorveglianza degli accessi di ambienti oppure l'etichettatura di materiale video per ottimizzare archiviazione e ricerca.

Corso di Laurea: 
Laurea Magistrale in Ingegneria Informatica
Anno Accademico: 
2011
Tesista
Tesista: 
Gianluca Dolcini
Email: 
Relatore
Relatore: 
Prof. Aldo Franco Dragoni
Email: 
Correlatore
Correlatore: 
Andrea Claudi
Email: