Introduzione
8
Il presente lavoro di tesi si occupa di investigare circa l’applicabilità di una
tecnica utilizzata nella statistica multivariata, nota come Non-negative Matrix
Factorization (NMF), al contesto del riconoscimento automatico dei volti. In
particolar modo, le NMF consentono di estrarre le informazioni principali da un
insieme di dati e di eliminare eventuali ridondanze, producendo una
rappresentazione dei dati basata sulle parti e rivelando in questo modo quali sono
le componenti più interessanti e significative da analizzare.
Il lavoro svolto in questa tesi di laurea si articola in questo modo: all’interno del
primo capitolo viene effettuata una introduzione al riconoscimento automatico dei
volti, accennando alle diverse tecniche attualmente utilizzate ai fini
dell’identificazione di un viso. Il secondo capitolo presenta le NMF dal punto di
vista dell’algebra lineare, descrivendo le diverse famiglie di algoritmi ed
evidenziandone vantaggi e svantaggi di ognuna. All’interno del terzo capitolo
vengono applicati gli algoritmi NMF al riconoscimento automatico dei volti e
sono presentati i vari risultati ottenuti. Il quarto e ultimo capitolo descrive nel
dettaglio i due prototipi costruiti: il primo, è una applicazione Matlab® costruita
per testare i vari algoritmi NMF, il secondo è il prototipo per il sistema
NOMANFACE (NOn-negative MAtrix factorizatioN for FACE recognition)
messo a punto per mostrare una delle possibili applicazioni degli algoritmi NMF
all’ambito della sicurezza e del controllo degli accessi.
Capitolo 1: Il riconoscimento automatico dei volti
9
Capitolo 1
Il riconoscimento automatico dei volti
Una delle più affascinanti capacità che l’uomo possiede è quella di poter
riconoscere molto facilmente i suoi simili. Identificare a prima vista un volto noto
anche se è trascorso parecchio tempo dall’ultima volta che lo si è visto, come può
accadere con il viso di un amico di infanzia, sembra essere una delle capacità più
naturali che l’uomo possiede.
Molteplici i fattori che concorrono all’identificazione di un nostro simile, dal
portamento al timbro della voce, dai tratti somatici del volto alla conformazione
fisica, tuttavia il viso è la zona del corpo umano verso la quale dirigiamo quasi
istintivamente il nostro sguardo quando vogliamo riconoscere una persona.
Questa nostra capacità, che per alcuni versi può sembrare del tutto naturale e
involontaria, rende possibile la distinzione di un volto da un altro basandosi
soprattutto sulla ricerca di specifici particolari che rendono univoca
l’identificazione. Infatti, riconoscere significa individuare e identificare una
persona conosciuta, ma significa anche esaminarne e ispezionarne con attenzione i
particolari e, dunque, essere capaci di distinguerla.
Costruire una macchina in grado di emulare questo particolare comportamento è
stato per anni un obiettivo che ha affascinato la comunità scientifica. Ancora oggi
sono numerosi gli sforzi compiuti nel contesto del riconoscimento automatico dei
volti e orientati allo sviluppo di applicazioni in grado di individuare una persona
guardandola in viso, il che rappresenterebbe la maniera più vicina al nostro
processo di identificazione. I primi studi in questa area di ricerca risalgono agli
inizi degli anni '60 e sono stati compiuti da Woody Bledsoe, Helen Chan Wolf e
Capitolo 1: Il riconoscimento automatico dei volti
10
Charles Bisson. Questi svilupparono degli algoritmi tenendo conto di alcune
coordinate fondamentali quali il centro della pupilla e le commessure oculari,
generando una serie di distanze da confrontare.
All’interno del presente capitolo accenneremo brevemente a come avviene il
processo di riconoscimento nell’uomo. Successivamente esamineremo i vantaggi
offerti dalle tecnologie per il riconoscimento automatico e analizzeremo quelle più
attuali basate sulle metodologie biometriche. Il capitolo si concluderà con un
confronto tra le caratteristiche dei sistemi biometrici e quelle dei sistemi basati
sulle fattorizzazioni non negative (Non-Negative Matrix Factorization - NMF),
che rappresentano l’argomento fondamentale di questo lavoro di tesi.
1.1 Il processo di riconoscimento nell’uomo
Il processo di riconoscimento nell’uomo è qualcosa che ha affascinato e continua
ad affascinare gli psicologi interessati a capire il meccanismo percettivo e
cognitivo alla base del nostro processo di identificazione di un volto. In termini
strettamente tecnici-psicologici questo è uno degli aspetti della memoria e della
conoscenza consistente nell'avvertire consapevolmente che un oggetto o una
situazione, nel nostro caso una persona, sono già noti.
Il modo in cui gli esseri umani interagiscono con le altre persone è decisamente
basato sulla loro abilità di riconoscere. Nell’uomo questa caratteristica è una
qualità robusta; un essere umano è in grado di riconoscere un volto che si presenta
in situazioni differenti: si pensi al caso in cui identifichiamo uno stesso volto con
diverse espressioni o con particolari occlusi, come ad esempio occhi chiusi, ma
anche sciarpe, cappelli, occhiali o barba che ostruiscono parte del viso e che
rendono dunque l’identificazione un po’ più complessa. Il riconoscimento può
avvenire anche nel caso in cui si osservino rappresentazioni distorte ovvero volti
rappresentati in immagini qualitativamente scarse, oppure caricature che esaltano
determinati particolari. In tutti questi casi, sebbene ci possano essere delle
difficoltà nel processo di riconoscimento, l’abilità dell’uomo di identificare un
volto risulta quasi sempre essere efficace, consistente e relativamente semplice.
Capitolo 1: Il riconoscimento automatico dei volti
11
Medici e psicologi sostengono che, durante il riconoscimento di un volto,
nell’uomo entri in gioco una circoscritta regione cerebrale chiamata corteccia
temporale ventrale, che comprende il giro fusiforme. A supporto di questa tesi
contribuiscono non solo gli ultimi risultati ottenuti attraverso nuove tecniche di
esplorazione funzionale del cervello, ma anche studi condotti in pazienti con
lesioni cerebrali, cui consegue la cosiddetta prosopoagnosia, ovvero la difficoltà
di riconoscere volti noti, tra cui anche il proprio volto [1].
E’ pur vero però che il processo di identificazione di un volto da parte degli umani
utilizza una serie di stimoli che provengono da differenti sensi: in molte
situazioni, infatti, le circostanze giocano un ruolo fondamentale nel
riconoscimento. Non a caso, ci accade spesso di associare una persona ad
particolare contesto. Ecco dunque che l’abilità dell’uomo di riconoscere un
individuo è spesso rafforzata da una serie di stimoli che, combinati, facilitano il
processo di identificazione.
1.2 Perché il riconoscimento automatico
Il processo di identificazione automatica del volto di un individuo trova oggi
numerose applicazioni in contesti del tutto differenti tra loro, che spaziano dal
controllo degli accessi a quello delle presenze, dalla sorveglianza automatica alla
protezione delle risorse di valore, dalla sicurezza di reti di calcolatori alle
transazioni sicure in Internet.
La prima vera applicazione pratica di tali sistemi risale al 28 gennaio 2001,
quando fu dato un nome ai circa diecimila volti appartenenti agli spettatori
americani che occupavano lo stadio di Tampa, in Florida, per una partita di
superball. Durante quell’evento venne infatti sperimentato con successo un
sistema di riconoscimento biometrico che era in grado di dare un nome a volti
appartenenti a criminali e sospetti terroristi. Da allora, nonostante le controversie
suscitate per ragioni di privacy, il riconoscimento automatico dei volti ha trovato
applicazione in differenti ambiti: in America e in Inghilterra alcune società
controllano le immagini del proprio personale per verificare accessi di qualsiasi
Capitolo 1: Il riconoscimento automatico dei volti
12
tipo, dal semplice ingresso nella sede di lavoro al prelievo di attrezzatura dal
magazzino; in Inghilterra, sei forze di polizia utilizzano sistemi di riconoscimento
biometrico per identificare l’immagine di sospetti tramite fotocamere. A questi
esempi è possibile anche aggiungere il fatto che i sistemi di riconoscimento del
volto possono essere oggi facilmente ritrovati anche nel controllo per il semplice
accesso ad un PC.
A differenza dei più comuni sistemi di autenticazione che si basano sulla
conoscenza di un PIN (Personal Identification Number) o di una password oppure
sull’utilizzo di un dispositivo fisico personale come le smart card o i badge, il
concetto di verifica dell’identità attraverso una caratteristica fisica propria
dell’individuo sicuramente permette di aumentare il grado di sicurezza delle
informazioni. Tali caratteristiche sono infatti difficili da contraffare o rubare, e
soprattutto non possono neppure essere prestate o dimenticate.
Un’ulteriore utilità di un sistema di riconoscimento facciale è legata alla
possibilità di poter identificare individui che cercano di non farsi riconoscere. In
ambiti di videosorveglianza o di controllo di eventuali zone ad accesso limitato
risulta utile riuscire a riconoscere e identificare individui sospetti o che comunque
cercano di mascherare la propria identità. In questo caso, il riconoscimento
automatico del volto, che per sua natura non richiede particolare collaborazione da
parte dell’utente, risulta forse essere la metodologia più adatta per individuare un
individuo “sospetto”.
Ecco quindi che tutti i potenziali vantaggi che questo genere di tecnologie di
riconoscimento facciale possono offrire apportano sicuramente un valore aggiunto
in determinati contesti applicativi consentendo, per via della loro natura poco
invasiva, anche di semplificare particolari processi in una moltitudine di
applicazioni.