Sistema biometrico di autenticazione basato sull'hand tracking

of 32/32
Università degli Studi di Roma Tre Facoltà di Ingegneria Corso di Laurea Magistrale in Ingegneria delle Tecnologie della Comunicazione e dell’Informazione Sicurezza delle Telecomunicazioni Sistema di autenticazione basato sull’Hand Tracking Flavio Otello Pierangeli Matteo Ratini Anno Accademico 2008-2009
  • date post

    04-Jul-2015
  • Category

    Technology

  • view

    530
  • download

    0

Embed Size (px)

description

Biometrics authentication system based on hand-tracking

Transcript of Sistema biometrico di autenticazione basato sull'hand tracking

  • 1. Universit degli Studi di Roma TreFacolt di IngegneriaSistema di autenticazionebasato sullHand TrackingCorso di Laurea Magistrale inIngegneria delle Tecnologie della Comunicazione e dellInformazioneSicurezza delle Telecomunicazioni Flavio Otello PierangeliMatteo RatiniAnno Accademico 2008-2009

2. Outline Introduzione alla biometria Keystroke Componenti e caratteristiche Algoritmo Hand Tracking Fondamenti Algoritmo Optical Flow Conclusioni 3. Outline Introduzione alla biometria Keystroke Componenti e caratteristiche Algoritmo Hand Tracking Fondamenti Algoritmo Optical Flow Conclusioni 4. Introduzione alla biometria (1) Biometria: identificazione della personasulla base delle caratteristichefisiologiche e comportamentali. Tipi di autenticazione: Password: qualcosa che lutente conosce Oggetti fisici: qualcosa che lutente possiede Biometria: qualcosa che lutente 5. Introduzione alla biometria (2)Un sistema biometrico deve garantire: Universalit: le caratteristiche devono apparteneresolo a una persona Unicit: due persone diverse devono averecaratteristiche diverse Permanenza: le caratteristiche devono essereinvarianti in un certo periodo di tempo Collectability: le caratteristiche devono esseremisurabili quantitativamente Prestazioni: luso delle caratteristiche deve garantirebuone prestazioni Circonvenzione: le caratteristiche devono essererobuste agli attacchi 6. Introduzione alla biometria (3)Un sistema di autenticazione biometrico composto da due sottosistemi:1. Sistema di Enrollment: si occupa dellacquisizione e della memorizzazione dei template dellutente2. Sistema di Autenticazione, il quale comprende le fasi di: Verifica (ricerca uno a molti) Identificazione (ricerca uno a uno) 7. Outline Introduzione alla biometria Keystroke Componenti e caratteristiche Algoritmo Hand Tracking Fondamenti Algoritmo Optical Flow Conclusioni 8. Keystroke: componenti Il Keystroke-scan una tecnologiapuramente software che impiega latradizionale tastiera per pc per eseguiremisurazioni e autenticazione. I componenti sono cos individuabili: Data Sampler Estrattore di caratteristiche Costruttore del template Autenticatore 9. Keystroke: caratteristiche Per garantire lautenticazione, e formarequindi il pattern con le features, sononecessari almeno due tipi di elementi:1. Latenza: intervallo temporale tra il rilascio di untasto e la pressione del successivo2. Key-down time: durata della pressione del tasto Il keystroke pattern un vettore di unnumero variabile di elementi in cuicompaiono sempre il latency-time e ilkey-down time 10. Outline Introduzione alla biometria Keystroke Componenti e caratteristiche Algoritmo Hand Tracking Fondamenti Algoritmo Optical Flow Conclusioni 11. Keystroke: algoritmo (1) stato implementato un algoritmo che sioccupa di trovare i tasti premuti e i loroistanti di pressione Keydown e Latency time Caratteristiche video: 320 x 240 pixel 30 fps Formato .avi non compresso Uso di maschere di colore e di forma peridentificare i tasti 12. Keystroke: algoritmo (2) Setup sperimentale: Tastierino numerico: tasti con bordo bianco Webcam fissa Maschere di colore e di forma: Trovare bordi e identificare i singoli tasti 13. Keystroke: algoritmo (3) Griglia di riconoscimento basata sulcriterio scomparsa del bordo inferiore Iterazione su tutti i frame e salvataggiodei templates nella forma: (N1 N2 N3 N4 T1 T2 T3 T4 L1 L2 L3) 14. Outline Introduzione alla biometria Keystroke Componenti e caratteristiche Algoritmo Hand Tracking Fondamenti Algoritmo Optical Flow Conclusioni 15. Hand Tracking Fondamenti (1) Accresce la quantit di informazione associataallutente Migliora le prestazioni dei sistemi basati su keystroke Analisi delle caratteristiche della mano Forma Dimensioni del palmo Lunghezza delle dita Posizione delle dita Velocit di digitazione Basso costo computazionale Caratteristica fortemente variabile (crescita, incidenti..) Scarsa individualit 16. Hand Tracking Fondamenti (2) Il movimento della mano possiede circa 27 gradi dilibert: 21 per gli angoli di giunzione e 6 perlorientamento e la posizione Self Occlusion Discontinuit del movimento Inizializzazione automatica dellalgoritmo Soglie Luminosit variabile Skin detection 17. Outline Introduzione alla biometria Keystroke Componenti Algoritmo Hand Tracking Fondamenti Algoritmo Optical Flow Conclusioni 18. Hand Tracking - Algoritmo Tracciamento della posizione delle dita nellistante di digitazione Creazione della maschera Indicizzazione degli oggetti nel frame Riconoscimento delloggetto mano e suo isolamento sulla base del criterio Area Maggiore Scansione iterativa dellimmagine della mano partendo dal basso Per ogni dito trovato viene creata una nuova immagine della mano in cui il dito non pi presente e si riesegue la scansione 19. Hand Tracking Risultati (1)(1) Creazione della maschera(2) Indicizzazione degli oggetti (3) Isolamento della mano 20. Hand Tracking Risultati (2) (4) Iterazione dellalgoritmo di ricerca (5) Posizione delle dita 21. Outline Introduzione alla biometria Keystroke Componenti Algoritmo Hand Tracking Fondamenti Algoritmo Optical Flow Conclusioni 22. Hand Tracking Optical Flow (1) Rappresentazione delle velocit apparente degli elementidi unimmagine Campo bidimensionale di velocit generato da unasequenza temporale di immagini dovuto al moto deglioggetti presenti nella scena, dellosservatore e alle fontiluminose.I(x)=I(x,y) e J(x)=J(x,y) Si consideri ora il punto u=[ux uy]T del primo frame. Loscopo dellalgoritmo quello di trovare la posizionev = u+d = =[ux+dx uy+dy]T nel secondo quadro tale che I(u) eJ(v) sono simili. Il vettore d=[dx dy]T rappresenta la velocit del punto x,ovvero lOptical Flow di x. 23. Hand Tracking Optical Flow (2) Minimizzazione della funzione d vettore di velocit LOptical Flow stato calcolato con il metodo PyrLK basatosullalgoritmo iterativo di Lucas- Kanade Permette di aggiungere al template dellutente leinformazioni sulla velocit della mano 24. Hand Tracking Optical Flow (3)(1) Rappresentazione grafica delcampo scalare di velocit (2) Rappresentazione grafica del campo scalare di velocit della sola area in movimento 25. Outline Introduzione alla biometria Keystroke Componenti Algoritmo Hand Tracking Fondamenti Algoritmo Optical Flow Risultati e Conclusioni 26. Conclusioni PCA (1) Template con troppi dati : ridondanza I dati dello stesso utente hanno variabilit ridottaentro un certo limite Il metodo del Principal Component Analysis basato sullerrore quadratico medio ed esprime undato segnale come somma di componentiortonormali e scorrelate Generazione di un nuovo template con i soli valoriprincipali 27. Conclusioni PCA (2) Nella matrice degli autovalori le prime componentiprincipali avranno peso maggiore Si determina quali autovalori costituiscono il 95%dellinformazione Sommare il resto degli autovalori per avere unamisura della variabilit delle caratteristiche 28. Risultati12 3 456 7 8 9 1011121314 151617181920212223 242526272829 1 0,7 0,1 0,1 111 0,8 0 0 0 1 0,7 1 11 0,9 0,2 0 0,9 0,1 0,9 0,3 10 0,1 1 1 1 1 2 1 0,2 0,9 111 0 0 0 0 0,9 1 1 11 1 0,6 0,1 1 0,1 1 1 10 0,8 1 1 1 1 3 1 0,1 1 1 0,1 0,9 0 0 0 0 1 0,9 1 11 1 0,6 1 0,2 0,1 1 1 11 0,3 1 1 1 1 4 1 0,1 0,3 1 0,8 1 0 0 0 0 1 0,5 1 11 1 0,3 0,2 0,1 0,1 0,9 1 11 0,1 1 0,2 1 1 5 1 0 0,4 110,1 0 0 0 0 1 0 1 11 1 0,1 0,4 0 0,1 0,9 1 11 0,1 0,9 0,8 1 1 6 1 0,1 0,1 101 0 0 0 0 1 0,1 1 11 1 0,1 0,2 0,1 0,1 1 1 11 0,1 1 0,1 1 1 7 1 0,1 0,9 1 0,9 0,8 0,8 0 0 0 1 0,1 1 11 1 0,2 1 0 0,1 1 1 11 0,1 0,9 1 1 1 8 1 0,3 1 111 0,9 1 0,9 0,1 1 1 1 11 1 0,9 1 0,9 0,2 1 1 11 0,9 1 1 1 1 9 1 0,2 0,9 111 0,1 0 0 0 0,9 0,9 1 11 1 0,8 0 0,9 0,1 0,9 1 10 0,8 1 1 1 110 1 0,2 0,9 111 0,9 0,6 0 0 1 1 1 11 1 0,9 0,9 0,9 0,1 1 1 11 0,9 1 1 1 111 1 0,2 0,6 111 0 0 0 0 1 0,8 1 11 1 0,5 0 0,2 0,1 0,9 1 10 0,1 1 1 1 112 1 0,2 0,9 111 0 0 0 0 1 1 1 11 1 0,9 1 1 0,1 1 1 11 0,9 1 1 1 113 1 0,2 0,9 111 0,2 0 0 0 1 0,9 1 11 1 0,7 0 0,4 0,1 0,9 1 10 0,1 1 1 1 114 1 0,1 0,2 100,7 0 0 0 0 1 0,9 1 11 1 0,1 0,2 0,4 0,1 0,9 1 11 0,1 1 0,1 1 115 1 0,1 0,2 100,9 0 0 0 0 1 1 1 11 1 0,2 0,1 0,9 0,1 0,9 1 11 0,7 1 0,1 1 116 1 0,2 0,9 111 0,1 0 0 0 0,9 1 1 11 1 0,7 0 1 0,1 0,9 1 10 0,8 1 1 1 117 1 0,1 0,2 101 0 0 0 0 1 0,4 1 11 1 0,2 0,2 0,2 0,1 0,9 1 11 0,1 1 0,4 1 118 0,8 0,2 0,9 111 1 0,6 0 0 1 1 1 11 1 0,9 0,1 1 0,1 1 1 10 0,9 1 1 1 119 1 0,2 0,9 111 0 0 0 0 0,9 1 1 11 1 0,9 0,1 1 0,1 0,9 1 11 0,9 1 1 1 120 1 0,2 0,9 111 0,1 0 0 0 0,9 0,9 1 11 1 0,9 0 0,9 0,1 0,9 1 10 0,7 1 1 1 121 1 0,2 0,9 111 0,2 0,2 0 0 1 1 1 11 1 0,9 0,2 0,9 0,1 1 1 10 0,9 1 1 1 122 1 0,2 0,9 111 0,1 0 0 0 0,9 1 1 11 1 0,9 0,1 1 0,1 0,9 1 10,9 0,9 1 1 1 123 1 0,1 0,1 1 0,1 1 0 0 0 0 1 0,5 1 11 1 0,2 0 0,9 0,1 0,9 1 10,1 0,1 1 0,3 1 124 0,7 0,2 0,9 111 0,8 0,1 0 0 0,9 1 1 11 1 0,9 0 1 0,1 0,9 1 10 0,8 1 1 1 125 1 0,2 0,9 111 0,1 0,1 0 0 1 1 1 11 1 0,9 0,7 1 0,1 1 1 11 0,9 1 1 1 126 1 0,1 0,9 101 0 0 0 0 1 1 1 11 1 0,9 0,2 1 0,1 0,9 1 11 0,9 1 1 1 127 1 0 0 0,800 0 0 0 0 0,9 0 0,9 10,9 1 0 1 0 0,1 1 1 11 0 0,3 0,1 0,9 128 1 0,2 0,9 111 0,2 0 0 0 1 0,9 1 11 1 0,7 0 0,4 0,1 0,9 1 10 0,1 1 1 1 129 1 0 0,1 111 0 0 0 0 0,9 0,3 1 11 0,9 0,2 0 0,1 0,1 0,9 0,9 10 0,1 1 0,9 1 1 (1) Tabella di riconoscimento per data di nascita 29. Risultati 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 1 0,9 0 0 0 1 1 1 0,9 010,90,8111100,610010,9000,90,111 2 0,7 0,3 0 0 1 1 1 0,9 0,810,80,9111101100110,2010,211 3 1 0,1 0 0,1 0,8 1 1 0,8 0,110,90,1110100,21100,91110,10,211 4 0,9 0 0 0 0,3 1 0,6 0,7 010,90,2110,8100,211010,80,30,10,90,111 5 1 1 0 0,1 0,1 1 0 0,9 110,90,5110101110,110,61110,111 6 1 1 0 0,4 0,1 1 0 0,9 110,90,5110,1101110,210,41110,111 7 1 1 0 1 0 1 0,9 1 1110,911010111110,81110,211 8 1 0,1 0 0 0,1 1 0 1 010,90,8111100,911010,510,90,90,111 9 0,7 0,5 0 0 1 1 1 0,8 0,910,30,911110110,90110,90,210,21110 1 0,2 0 0 0,1 1 0 0,9 010,90,9111100,910010,60,9010,11111 0,9 0 0 0 0,4 1 0 0,8 010,90,2111100,211010,60,30,10,90,11112 1 0,9 0 0 0 0,9 0 1 110,90,911110111010,61110,11113 0,9 0 0 0 0,3 1 0 0,8 010,90,2111100,210010,60,100,90,11114 1 1 0 0,1 0 0,9 0 1 110,90,911110111010,11110,11115 1 0,9 0 0 0 0,3 0 0,9 110,90,911110111010,31110,11116 0,9 0,3 0 0 0,3 1 0 0,9 010,90,9111100,910,9010,60,90,20,90,11117 1 1 0 0,4 0,9 1 1 0,9 1110,2110,1101110,311110,40,71118 0,7 0,4 0 0 1 1 1 0,8 0,910,30,9111101100110,60,110,21119 1 1 0 0 0 0 0 1 110,90,9111101110101110,11120 0,8 0,2 0 0 1 1 1 0,9 110,90,9111101100,1110,1010,11121 0,9 0 0 0 0,3 1 0,1 0,8 010,90,2111100,411010,610,40,90,11122 0,9 0,3 0 0 0 1 0 0,8 010,90,911110111010,610,610,11123 1 1 0 1 0 1 0 1 1110,9110,610111110,81110,11124 0,7 0 0 0 1 1 1 0,9 110,90,9111101100110,5010,11125 0,7 0,1 0 0 1 1 1 0,9 0,910,40,9111101100,1110,2010,21126 0,9 0,8 0 0 0 0,9 0 0,8 110,90,911110111010,610,910,11127 1 1 0 0,1 0 1 0 1 110,90,8110,7101110,110,11110,11128 0,9 0 0 0 0,3 1 0 0,8 010,90,2111100,210010,60,100,90,11129 1 0 0 0 0 1 0 0,7 010,90,4111100,911010,310,90,90,111 (2) Tabella di riconoscimento per codice 30. Conclusioni Lalgoritmo implementato permette larilevazione delle caratteristiche tipiche deisistemi basati su keystroke Lalgoritmo di Hand Tracking aggiunge delleinformazioni fisiologiche migliorando leprestazioni del sistema Si giunti allindividuazione di una statistica peril FAR e per il FRR 31. Conclusioni I risultati possono essere migliorati usando unsetup sperimentale quanto pi costante neltempo : Luminanza Posizione della tastiera Posizione relativa tastiera-webcam Altri aspetti migliorabili risoluzione del video frequenza di aggiornamento Impiego di pi webcam 32. Grazie dellattenzione