Università degli Studi di Cagliari Facoltà di Ingegneria Corso di Laurea in Ingegneria Elettronica FUSIONE DATI NEI SISTEMI PER L’IDENTIFICAZIONE PERSONALE MEDIANTE RICONOSCIMENTO DI IMPRONTE DIGITALI FUSIONE DATI NEI SISTEMI PER L’IDENTIFICAZIONE PERSONALE MEDIANTE RICONOSCIMENTO DI IMPRONTE DIGITALI Relatori: Prof. Ing. Fabio Roli Ing. Gian Luca Marcialis Tesi di Laurea di: Paolo Loddo Anno Accademico 2001-2002
SOMMARIO Identificazione personale mediante impronte digitali Il nostro sistema di verifica dell’identità Piano sperimentale e risultati ottenuti Conclusioni: bilancio e sviluppi futuri In questa esposizione tratteremo: Il tema dell’identificazione personale mediante impronte digitali Il nostro sistema di verifica dell’identità basato sulla fusione di due algoritmi di matching Il piano sperimentale e i risultati ottenuti Infine faremo un bilancio del nostro metodo e accenneremo alle sue potenzialità in vista di sviluppi futuri.
IDENTIFICAZIONE PERSONALE MEDIANTE RICONOSCIMENTO DI IMPRONTE DIGITALI SISTEMA DI VERIFICA BASATO SU IMPRONTE L’utente dichiara la sua identità e il sistema conferma o smentisce l’identità dichiarata, attraverso il riconoscimento dell’impronta digitale VANTAGGIO L’identificazione mediante impronte è più sicura dei sistemi tradizionali (password, carta magnetica) perché richiede la presenza fisica della persona che deve essere identificata In un sistema per la verifica dell’identità basato su impronte, il soggetto che desidera essere identificato, dichiara la sua identità, attraverso una User ID ad esempio, e il sistema conferma o smentisce tale identità attraverso il riconoscimento dell’impronta digitale. L’identificazione mediante impronte è più sicura dei sistemi tradizionali (basati su password, carta magnetica) perché richiede la presenza fisica della persona che deve essere identificata.
RAPPRESENTAZIONE DELLE IMPRONTE PER LA VERIFICA DELL’IDENTITÀ Basata su “MINUTIAE” Analisi della struttura locale delle “creste”: “terminazioni” “biforcazioni” Basata sulla “TESSITURA” Analisi del pattern delle “creste” I sistemi per la verifica dell’identità basati su impronte, utilizzano diverse rappresentazioni dell’impronta digitale. Una rappresentazioni microstrutturale, è quella basata sulle minutiae che analizza la struttura locale delle creste. Le creste sono le linee che si osservano sull’epidermide del polpastrello. Le minutiae sono i punti in cui le creste si biforcano (biforcazioni) o presentano un’interruzione (terminazioni). Una rappresentazione macrostrutturale è quella basata sulla tessitura. L’immagine dell’impronta viene rappresentata come una superficie con un determinato pattern.
SCHEMA DI UN SISTEMA DI VERIFICA DATABASE DEI TEMPLATE ELABORAZIONE IMMAGINE ESTRAZIONE FEATURE MATCHING User ID >SOGLIA Accettato Respinto SI NO VERIFICA (on-line) SCORE ELABORAZIONE IMMAGINE ESTRAZIONE FEATURE REGISTRAZIONE (off-line) DATABASE DEI TEMPLATE Vediamo ora una rappresentazione schematica di un sistema di verifica. Concettualmente possiamo distinguere due fasi: una fase di registrazione off-line e una di verifica on-line. Nella fase di registrazione (off-line), vengono registrati nel sistema gli utenti autorizzati all’accesso. In questa fase viene estratta dall’impronta un’opportuna rappresentazione e memorizzata nel database di sistema come modello o “template”. Nella fase di verifica (on-line) si controlla se l’utente che vuole accedere al sistema sia autorizzato o meno. Dal database dei template, in base all’identità dichiarata dall’utente viene selezionato il template da confrontare con la rappresentazione estratta in tempo reale dall’impronta. Il cuore del sistema è costituito dal modulo di matching che confronta le due rappresentazioni e produce un punteggio o “score”, proporzionale al grado di “similarità” tra le impronte. Tale punteggio viene confrontato con un valore di soglia in base al quale l’utente viene accettato o respinto.
PROBABILITÀ DI ERRORE PER UN SISTEMA DI VERIFICA ERRORI DI MATCHING Due tipi di errore al variare della soglia: si accettano utenti non autorizzati (“impostori”) si respingono utenti autorizzati (“genuini”) LIMITI DEI SINGOLI MATCHER Un sistema di verifica basato su un singolo matcher non garantisce ancora una probabilità di errore sufficientemente bassa, a causa della sovrapposizione delle distribuzioni In base al valore della soglia di accettazione, il sistema può commettere due tipi di errore: accettare utenti non autorizzati che chiamiamo “impostori” respingere utenti autorizzati che chiamiamo “genuini” Le due probabilità di errore sono integrate sulle densità di probabilità degli score condizionali alle classi “impostori” e “genuini”. Osserviamo a sinistra la distribuzione degli score per la classe “impostori” e a destra quella per la classe “genuini”. Fissata la soglia di accettazione: l’area in rosso rappresenta la frazione di impostori accettati dal sistema perché il loro punteggio risulta maggiore della soglia fissata l’area in blu rappresenta invece la frazione dei genuini rifiutati perché il loro punteggio risulta minore della soglia fissata Si noti come, per un determinato valore di soglia, l’ammontare dell’errore dipenda da quanto le due densità di probabilità si sovrappongono. Un sistema di verifica basato su un singolo algoritmo non garantisce ancora una probabilità di errore sufficientemente bassa, a causa della sovrapposizione delle densità di probabilità.
FUSIONE DI MATCHER PER LA VERIFICA OBIETTIVO Migliorare le prestazioni d’errore dei singoli matcher attraverso la loro combinazione REQUISITI DEI MATCHER Complementarità delle informazioni estratte Bassa correlazione tra gli score L’obiettivo della fusione è quello di migliorare l’accuratezza dei sistemi per la verifica combinando diversi algoritmi di matching. La fusione risulta particolarmente efficace se gli algoritmi: estraggono dalle impronte informazioni complementari; classificano in maniera errata impronte diverse (le loro uscite sono scorrelate). L’idea di base è quella di combinare gli score dei singoli algoritmi in un unico score attraverso un’opportuna trasformazione. IDEA DI BASE Combinare gli score dei matcher in un unico score, attraverso un’opportuna trasformazione
SCHEMA DEL NOSTRO SISTEMA DI VERIFICA TRASFORMAZIONE DEGLI SCORE ALGORITMO “MINUTIAE” MINUTIAE EXTRACTION “FILTER” FINGERCODE EXTRACTION TEMPLATE SM SF User ID Il nostro sistema di verifica prevede la fusione di due algoritmi di matching che utilizzano differenti rappresentazioni dell’impronta, presumibilmente complementari, l’algoritmo “Minutiae” e l’algoritmo “Filter”. Lo schema del nostro sistema è rappresentato in figura. Dall’impronta acquisita estraiamo le due diverse rappresentazioni e le confrontiamo con i relativi template. I due score risultanti, sM ed sF vengono poi combinati in un unico score sC, attraverso un’opportuna trasformazione.
I DUE MATCHER UTILIZZATI Algoritmo “MINUTIAE” Impronte rappresentate con minutiae. Score: “distanza” tra i due insiemi di minutiae. Algoritmo “FILTER” Impronte rappresentate con tessitura. Score: distanza euclidea tra i due “FingerCode”. Diamo qualche cenno sui due algoritmi di matching utilizzati. Algoritmo “MINUTIAE” Le due impronte da confrontare sono rappresentate come insiemi di minutiae. Lo score è calcolato valutando la “distanza” tra i due insiemi. Algoritmo “FILTER” Le immagini delle due impronte da confrontare vengono suddivise in settori, e filtrate con un banco di filtri direzionali. Dalle immagini risultanti viene estratto un vettore di feature, il cosiddetto FingerCode. Lo score è calcolato valutando la distanza euclidea tra i due FingerCode.
METODI TRADIZIONALI DI COMBINAZIONE METODI FISSI Minimo: Massimo: Media: Prodotto: Per la combinazione abbiamo utilizzato dapprima alcuni metodi tradizionali. Tra questi, i metodi fissi combinano gli score dei due algoritmi in un unico score attraverso un legame funzionale molto semplice. Sono: minimo, massimo, media e prodotto.
METODI TRADIZIONALI DI COMBINAZIONE METODI ADDESTRABILI Trasformazione logistica: I metodi addestrabili, invece, consistono in una trasformazione logistica i cui parametri sono calcolati in base a un determinato criterio di ottimizzazione. Questi metodi sono implementati attraverso un modello noto col nome di perceptron. Il perceptron riceve in ingresso gli score generati dai due algoritmi i quali vengono combinati linearmente e quindi trasformati mediante una funzione sigmoidale in score compresi tra 0 e 1. I parametri del perceptron vengono ottimizzati minimizzando una determinata funzione di costo.
IL PERCEPTRON METODI DI OTTIMIZZAZIONE TRADIZIONALI Massimizzazione della Verosimiglianza (ML) Minimizzazione dell’Errore Quadratico Medio (MSE) NUOVO METODO DI OTTIMIZZAZIONE DA NOI PROPOSTO Massimizzazione della separazione delle densità di probabilità degli score dei genuini e degli impostori I metodi tradizionali per l’ottimizzazione dei pesi del perceptron consistono nella: Massimizzazione della Verosimiglianza Minimizzazione dell’Errore Quadratico Medio Noi proponiamo un nuovo metodo basato sulla massimizzazione della separazione delle densità di probabilità degli score dei genuini e degli impostori
SEPARAZIONE TRA CLASSI OSSERVAZIONE Gli errori dei matcher dipendono da quanto le densità di probabilità degli score dei genuini e degli impostori si sovrappongono IDEA DI BASE Per cercare di ridurre gli errori di matching calcoliamo i pesi della trasformazione logistica massimizzando la separazione tra le classi Infatti, come abbiamo osservato in precedenza, gli errori dei matcher dipendono da quanto le densità di probabilità degli score dei genuini e degli impostori si sovrappongono. Se idealmente avessimo due densità completamente separate, sarebbe possibile fissare una soglia di decisione nel mezzo e annullare i due contributi di errore. Noi pertanto, proponiamo di calcolare i pesi della trasformazione logistica in maniera tale da separare il più possibile le due densità di probabilità. Per misurare la separazione tra le due densità, consideriamo una statistica, nota in letteratura come “Class Separation Statistic”. Notiamo che nel caso peggiore in cui le due densità di probabilità coincidano, l’integrale e quindi la CSS si annulla; viceversa, nel caso più vantaggioso in cui le due densità di probabilità siano disgiunte, la CSS assume il suo valore massimo 2. “Class Separation Statistic”:
SEPARAZIONE TRA CLASSI PROBLEMI DI STIMA Pochi esempi per la stima delle distribuzioni con istogrammi normalizzati Complessità computazionale ed errori di approssimazione per la stima con kernel gaussiano SOLUZIONE PARAMETRICA Stima parametrica della separazione tra classi Il calcolo della CSS, tuttavia, risulta accurato solo nel caso in cui si disponga di stime sufficientemente “lisce” delle distribuzioni di probabilità. La stima con istogrammi normalizzati risulta molto “seghettata” a causa della mancanza di un numero sufficiente di dati. La stima con Kernel gaussiano risulta più “liscia”, tuttavia è soggetta ad errori di approssimazione e presenta un’elevata complessità computazionale. Pertanto abbiamo preferito una stima parametrica della separazione tra le classi, basata su quella che in letteratura è nota come “Fisher Distance”. Nell’espressione a numeratore riconosciamo la differenza delle medie delle due densità al quadrato, al denominatore la somma delle varianze. Massimizzare la FD significa distanziare i valori medi delle due densità e ridurne la varianza. “Fisher Distance”:
PERCEPTRON: MASSIMIZZAZIONE DELLA FD Un nuovo algoritmo per l’aggiornamento dei pesi
IL DATA SET Data set FVC-DB1 (benchmark), formato da immagini di impronte acquisite con un sensore ottico Caratteristiche delle immagini Dimensione: 300x300 pixel Profondità: 256 livelli di grigio Risoluzione: 500 dpi Le sperimentazioni sono state effettuate sul data set FVC-DB1, utilizzato dalla comunità scientifica come benchmark. Il data set è formato da immagini di impronte acquisite con un sensore ottico. Le immagini sono a 256 livelli di grigio con una risoluzione di 500 dpi e dimensioni di 300x300 pixel. Nel data set sono presenti 8 scansioni della stessa impronta per ciascuna delle 100 differenti identità. 800 impronte: 100 identità, 8 acquisizioni della stessa impronta per ciascuna identità
PIANO SPERIMENTALE “Genuine Matching Scores”, insieme degli score generati da tutti i possibili confronti tra coppie di impronte appartenenti alla stessa identità “Impostor Matching Scores”, insieme degli score generati da tutti i possibili confronti tra coppie di impronte appartenenti a identità diverse L’insieme degli score generati da “Minutiae” e “Filter” è stato suddiviso in Training-set e Test-set Descriviamo brevemente il piano sperimentale Definiamo: Genuine Matching Score l’insieme degli score generati da tutti i possibili confronti tra coppie di impronte appartenenti alla stessa identità Impostor Matching Score l’insieme degli score generati da tutti i possibili confronti tra coppie di impronte appartenenti a identità diverse. L’insieme degli score generati dagli algoritmi “Minutiae” e “Filter” è stato suddiviso in Training-Set e Test-Set. Gli score del Training-Set sono stati utilizzati per il calcolo dei pesi dei metodi addestrabili. Gli score del Test-set sono stati utilizzati per la verifica delle prestazioni. Gli score del Training-set sono stati utilizzati per il calcolo dei pesi nei metodi addestrabili Gli score del Test-set sono stati utilizzati per la verifica delle prestazioni
VALUTAZIONE DELLE PRESTAZIONI F.M.R.(soglia) (False Matching Rate), frazione di impostori accettati, al variare della soglia F.N.M.R.(soglia) (False Non Matching Rate), frazione di genuini rifiutati, al variare della soglia R.O.C. (Receiving Operating Curve ) E.E.R. (Equal Error Rate) Le prestazioni dei metodi di fusione sono state valutate in termini di probabilità d’errore: Il False Match Rate rappresenta, come visto, la frazione di impostori accettati, al variare della soglia; Il False Non Match Rate rappresenta invece la frazione di genuini rifiutati. Queste probabilità d’errore, dipendono dalla scelta della soglia e vengono integrate sulle densità di probabilità degli score, stimate attraverso gli istogrammi normalizzati dei Genuine Matching Score e degli Impostor Matching Score. Per valutare in maniera comparata l’andamento dei due tipi di errore al variare della soglia, si utilizza una rappresentazione grafica molto efficace che riporta in scala logaritmica l’FNMR in funzione dell’FMR, detta curva R.O.C. In questo grafico è possibile individuare il punto in cui l’FNMR eguaglia l’FMR, detto Equal Error Rate. Un basso EER rappresenta la principale specifica per la maggior parte delle applicazioni. Altri due parametri molto utilizzati nella pratica per la misura delle prestazioni sono: lo ZeroFMR (che rappresenta frazione di genuini rifiutati quando nessun impostore è accettato) e lo ZeroFNMR (che rappresenta frazione di impostori accettati quando nessun genuino è rifiutato). ZeroFMR, frazione di genuini rifiutati quando nessun impostore è accettato ZeroFNMR, frazione di impostori accettati quando nessun genuino è rifiutato
RISULTATI A CONFRONTO I risultati a confronto mostrano i benefici della fusione sia in termini di EER che di ZeroFMR e ZeroFNMR. In particolare, si può notare come il metodo della media abbia lo ZeroFMR più basso, nonostante la sua accuratezza risulti peggiore dell’algoritmo “Minutiae”. Il metodo basato sulla Fisher Distance, invece, presenta il valore più basso di ZeroFNMR e un netto miglioramento dell’accuratezza all’EER. I metodi con la più bassa percentuale d’errore sono il metodo ML (basato sulla Massimizzazione della Verosimiglianza), e un metodo “ibrido” da noi introdotto che pesa le funzioni di costo dei metodi ML e FD. Nella rappresentazione grafica in termini di curve R.O.C abbiamo sovrapposto l’algoritmo con più basso EER tra “Filter” e “Minutiae” (Minutiae), il metodo con più basso EER tra i metodi fissi (Prodotto), il nostro metodo basato sulla FD e il metodo col più basso EER in assoluto (ML-FD). Si possono notare le prestazioni d’errore dei vari metodi all’EER, considerando l’intersezione della retta dell’EER con la curva ROC relativa. Sebbene il metodo ML-FD presenti le prestazioni migliori all’EER, negli altri punti della curva, si nota il prevalere ora dell’uno, ora dell’altro metodo.
CONCLUSIONI RISULTATI I metodi di fusione consentono di migliorare le prestazioni dei singoli algoritmi Abbiamo proposto un metodo innovativo introducendo una trasformazione logistica ottimizzata in base alla misura di separazione tra le classi Concludendo: Il nostro lavoro conferma che i metodi di fusione consentono di migliorare le prestazioni dei singoli algoritmi. In particolare il metodo del Prodotto, in virtù della complementarità degli algoritmi “Minutiae” e “Filter”, sembra aver dato i risultati migliori tra i metodi fissi. In generale i metodi addestrati sembrano garantire le prestazioni più accurate all’EER. Il nostro contributo innovativo rispetto allo stato dell’arte è rappresentato dall’introduzione della misura di separazione tra classi nel processo di ottimizzazione per il calcolo dei pesi della trasformazione logistica. Tale approccio ha dato dei buoni risultati e a nostro avviso è possibile estendere le potenzialità del metodo: ricercando nuove funzioni di costo più efficaci addestrando modelli più complessi ricercando nuovi campi di applicazione SVILUPPI FUTURI Ricerca di funzioni di costo ancora più efficaci Modelli più complessi per l’addestramento (MLP) Estendere i campi di applicazione del metodo