Recunoașterea persoanelor prin scanarea irisului Coordonator științific: Prof. dr. ing. Francisc Iacob Absolvent: Geambașu George Liviu BUCUREȘTI… [616208]
UNIVERSITATEA POLITEHNICA BUCUREȘTI
FACULTATEA DE AUTOMATICĂ ȘI CALCULATOARE
DEPARTAMENTUL CALCULATOARE
PROIECT DE DIPLOMĂ
Recunoașterea persoanelor prin scanarea irisului
Coordonator științific:
Prof. dr. ing. Francisc Iacob
Absolvent: [anonimizat]
2017
Introducere
2
Cuprins
1. Introducere
1.1. Tehnologia identificării biometrice……………………………………………… …………………… 4
1.2. Irisul uman…………………………………………………………………………………… ………………… 5
1.3. Recunoașterea irisului…………………………………………………………………… …………………. 6
1.4. Arhitectura…………………………………………………………………………………… …………………. 7
1.5. Etapele de implementare……………………………………………………………… …………………. 8
2. Segmentar ea
2.1. Date generale………………………………………………………………………………… ……………….. 9
2.2. Transformata Hough……………………………………………………………………… ……………….. 9
2.3. Operatorul Daugman integro -diferențial……………………………………… ……………… … 10
2.4. Detecția pleoapei și a genei…………………………………………………………… ………………. . 10
2.5. Implementare …………………………………………………………………………………………………. 11
2.6. Rezultate ………………………………………………………………………………………………………… 13
3. Normalizarea
3.1. Date generale …………………………………………………………………………………………………. 15
3.2. Modelul Daugman de normalizare al irisului ……………………………… …………………… 15
3.3. Cercuri virtuale ……………………………………………………………………………………………….. 16
3.4. Implementare …………………………………………………………………………………………………. 17
4. Codarea și compararea
4.1. Date generale …………………………………………………………………………………………………. 19
4.2. Diferite tipuri de codare ………………………………………………………………………………… 19
4.2.1. Codarea de tip “wavelet” ……………………………………………………………………… 19
4.2.2. Filtre Gabor ………………………………………………………………………………………….. 20
4.2.3. Filtre Log -Gabor ……………………………………………………………………………………. 20
4.2.4. Zero crossing al undei unidim ensionale ………………………………………………… 21
4.2.5. Unda Haar …………………………………………………………………………………………….. 21
4.3. Date generale ale algoritmilor de comparare …………………………………………………. 22
4.3.1. Distanța Hamming ………………………………………………………………………………… 22
4.3.2. Distanța Euclidiană ponderată ………………… …………………………………………… 23
4.4. Implementare ………………………………………………………………………………………………… 23
4.4.1. Codare …………………………………………………………………………………………………. 23
4.4.2. Comparare …………………………………………………………………………………………… 24
Introducere
3
5. Rezumat implementare și rezultate obținute
5.1. Etapele implementării ………………………………………………………………………………………. 27
5.2. Testarea și rezultatele obținute ………………………………………………………………………… 30
6. Concluzii
6.1. Dezvoltări viitoare ……………………………………………………………………………………………. 33
Introducere
4
1. Introducere
1.1. Tehnologia identific ării biometrice
Biometria reprezintă analiza și măsurarea statistică a caracteristicilor fizice și de
comportament ale oamenilor. Acest domeniu este folosit într -o mare măsură pentru
identificare sau control al accesului persoanelor. Dezvoltarea acestor siste me de identificare
este posibilă datorită caracteristicilor unice ale oamenilor, caracteristici de tip fiziologic sau
caracteristici de tip comportamental.
Un sistem de ident Ificare biometrică asigură recunoșterea unei persoane pe baza
unor caracteristic i unice ale acestora. Sistemele biometrice au fost dezvoltate bazându -se pe
amprente, voce, scrisul de mâna, retina și, așa cum este prezentat in această lucrare,
recunoașterea prin scanarea irisului.
Etapele implementăr ii unor sisteme biometrice sunt, preluarea unei secvente de
informații cum ar fi preluarea unei imagini digitale, într -un sistem pentru recu noașterea
facială, sau preluar ea unui sunet digital, pentru recunoașterea vocii. Secvența de info rmații
este mai apoi prelucrată, prin aplicarea unor f uncții și formule matematice , și transformată
într-un template biometr ic. Acest template biometric oferă o reprezentare eficientă și foarte
distinctă a informațiilor înregistrate, care mai apoi va fi comparat cu alte template -uri cu
scopul de a determina identitatea. Majoritatea sist emelor biometrice dispun de două
moduri de operare, unul de încă rcare , în care sunt încarcate șabloane în baza de date , și
unul de identificare , în care este creat un șablon pe baza unei înregistrări ș i comparat cu
celelalte șabloane din baza de date.
O biometrie cât mai bună este caracterizată printr -o trăsătura care : este cât mai
unică – astfel încâ t șansa ca doi oameni să aibă aceleași caracteristi să fie minimă, stabilă –
așa încât această trăsătur ă să nu se modifice în timp, și ușor de înregistrat – să fie cât mai
ușor de utilizat pentru persoană , și sa prevină interpretarea greșita a utilizatorului.
1.2 Irisul uman
Irisul este o zonă circulară a ochiului, care se află între cornee și cristalin. O imagine
a ochiului uman este prezentată în Figura 1.1. În centrul irisului se află o zonă circulară de
Introducere
5
culoare neagră, cunoscută ca pupilă . Irisul are rolul de a controla can titatea de lumina care
intră prin pupilă, iar acest lucru este posibil datorită sfincterul ui pupilei si mușchilor dilatori,
care vor ajusta mărimea pupilei. Diametrul mediu al unui iris este de 12 mm, iar
dimensiunea pupilei poate varia de la 10% la 80% din dimensiunea irisului.
Irisul este format din mai multe straturi, cel mai de jos fiind epiteliu l, care conține
celule dense de pigmentare. Stroma se află deasupra epiteliului, si conține vase de sânge,
celule de pigmentare și doi mușchi ai irisului. Densitatea pigmentării stromei determină
culoarea irisului. Suprafața vizibila a irisu lui conține două zone, care uneori diferă in culoare,
zona ciliară(periferică) și zona pupilară(centrală), aceste două zone fiind împarțite de
colareta iriană – apare pe iris cu o formă de linie frântă .
Figura 1.1 – O imagine frontală a ochiului uman
Formarea irisului începe în a treia lună a vieții embrionului. Unicitatea suprafeței
irisului este formată de-a lungul primului an de viață , iar pigmentarea stromei are loc in
primii ani. Formarea unicitații suprafeței irisului este aleatorie și nu ț ine cont de factori
genetici. Singura caracteristică dependentă de factori genetici este pigmentarea irisului, care
îi va determina culoarea. Datorită naturii sale, cei doi ochi ai unui individ conțin modele
complet diferite de iris, și chiar și irisurile gemenilor conțin modele foarte diferite .
Introducere
6
1.3 Recunoașterea irisului
Unicitatea modelului irisului rămâne stabilă de -a lungul vieții adultului, iar această
caracteristică devine foarte atractivă pentru utilizarea acestuia ca biometrie în identificarea
indivizilor. Tehnicile de procesare a imaginilor pot fi folosite pentru a extrage irisul dintr -o
imagine digitalizată a unui ochi, și mai apoi codificat într -un model biometric, care va fi
introdus într -o bază de date. Acest model biometric conține o reprezentare matematică a
informațiilor unice aflate în iris, care permite mai apoi comparerea modelelor între ele
pentru identificare. Când cineva dorește să fie identificat pri ntr-un sistem de recunoaștere
pe baza irisului, mai întâi se va face o poză a ochiului, după care se va crea un model
biometric pe baz a irisului extras din poză. Mai apoi , acest model este comparat cu cele din
baza de date până c ând se va găsi o potrivire, iar dacă nu, subiectul nu va pu tea fi
identificat.
Chiar dacă sisteme de identif icare biometrică au fost propuse și înainte, la începutul
anilor nouăzeci cercetatorul de la Universitatea din Cambridge John Daugman, a
implementat un sistem automat de recunoaștere pe baza irisului. Sist emul Daugman a fost
patentat, iar acum drepturile de utilizare alea acestui sistem sunt deținute de compania
Iridian Technologies. Chiar dacă sistemul Daugman este cel mai de success și cel mai bine
cunoscut, au fost dezvoltate si alte sisteme. Cele mai no tabile sisteme sunt cele dezvoltate
de Wildes, Boles and Boashash, Lim și Noh. Algoritmii lui Lim sunt folosiți în sistem de
recunoaștere a irisului dezvoltat de companiile Evermedia si Senex.
Sistemul Daugman a fost testat în numeroase studii, toate raportând o rată de eșec
nulă. Se spune ca sistemul Daugman este capabil să recunoască perfect un individ, dintr -o
bază de date având milioane de înregistrari. Și sistemul dezvoltat de Wildes a rapo rtat o
performanță perfecta pe un număr de 520 de imagini, iar sistemul dezvoltat de Lim a atins o
marjă de recunoaștere de 98.4% pe o bază de date care avea aproximativ 6,000 de imagini.
Comparativ cu celelate sisteme de identificare biometrică, cum ar f i recunoașterea
vocală, facial ă sau recunoașterea prin amprente, recunoașterea pe baza irisului poate fi
considerat ă ca fiind una dintre cele mai sigure tehnologii de identificare biometrică. Totuși,
trial-uri ale acestor sisteme nu exista, și nici codul s ursă nu este disponibil. De asemenea,
există puține seturi de date pentru testare și cercetare, iar rezultatele testelor publicate au
fost, de regulă, obținute folosind imagini ale irisurilor sub condiții favorabile.
Introducere
7
Aplicațiile acestu i sistem de recunoaș tere, bazat pe procesarea irisului, pot fi
multiple. Spre exemplu în Iordania, compania IrisGuard a lansat primul ATM bazat pe
recunoașterea irisului, la Cairo Amman Bank, unde clienții băncii pot retrage bani fără card,
doar prin punerea feței în fața une i camera pentru a putea face identificarea prin
intermediul irisului. Și în aeroportul Schipol din Amsterdam, Olanda, este folosit un
asemenea sistem de recunoaștere care permite trecerea rapidă a persoanelor fară
prezentarea pașapoartelor.
1.4 Arhitectura
Proiectul va fi implementat folosind mediul de dezvoltare MATLAB, iar accentual va
fi pus pe performanța recunoașterii și nu va conține un siste m hardware pentru capturarea
imagini lor. Pentru introducerea imaginilor există un set de da te aparținând laboratorului de
Cercetare B iometrică din cadrul IIT Delhi, avănd date preluate din anul 2007. Baza de date
IIT Delhi conține imagini ale irisului preluate, în mare parte, de la studenți din IIT Delhi, New
Delhi, India. Aceste date au fost preluate în laboratorul de Cercetare Biometrică între
ianuarie -iulie 2007, iar baza de date conține 224 de seturi împarțite pe foldere, fiecare set
din folder conținând poze diferite ale irisului aparținând unei persoane. Rezoluția imaginilor
este de 320×240 pixeli, și toate aceste imagini au fost obținute într -un spațiu interior.
Motivul pentru care am folosit MATLAB ca și tehnologie de dezvoltare este, în
primul rând, suportul pe care acesta îl oferă, pos edând numeroase funcții foarte bine
optimizate pentru procesarea imaginile, sistemul de identificare pe baza irisului fiind unul
dintre sistemele care folosește foarte mult prelucrarea de imagini . MATLAB este un mediu în
care se pot dezvolta ușor aplicații de acest tip pentru că se bazează, în mare parte, pe
utilizarea și prelucrarea matricelor, reprezentate în cazul de față de imagini ale ochiului, și
dispune de o serie de funcții în scopul dezvoltării aplicațiilor într -un mod cât mai ușor cu
putință.
Alt aspect important al mediului de dezoltare MATLAB îl reprezintă posibilitatea
creării unei interfețe grafice, nefiind nevoie de tool -uri specific de dezvoltare, asigurând
astfel o dezvoltare rapidă a aplicațiilor.
Introducere
8
1.5 Etapele de implementare
Sistemul este compus din mai multe sub -sisteme, fiec are corespunde câte unui
etape din recunoașterea irisului. Aceste etape sunt segmentarea – localizarea regiunii
irisului în imaginea ochiului, normalizarea – crearea unei reprezentări statice a regiunii
irisului(a ducerea imaginii regiunii irisului la o dimensiune fixă), și codarea – crearea unui
șablon conținând doar elementele discriminante din iris. Datele de intrare vor fi imagini cu
ochi, iar ca date de ieșire vor fi șabloane ale irisurilor, care vor asigura o reprezentare
matematică a regiunii irisului. O reprezentare grafică a pașilor de implementare este dată în
Figura 1.2.
Figura 1.2 – Pașii de implementare al sistemului de recunoaștere
Introducere
9
2. Segmentarea
2.1 Date generale
Prima etapă în sistemul bazat pe recunoașterea irisului este izolarea regiunii irisului
din imaginea digitală a unui ochi. Regiunea irisului poate fi delimitată prin încadrarea a două
cercuri, unul pentru marginea care delimitează irisul de scleră, iar celălalt care delimitează
regiunea dintre iris și pupilă. Pentru o mai bună acuratețe a algoritmului se va face și
detecția pleoapei și a genei care interferează cu regiunea irisului, pentru a nu fi luate în
considerare la prelucrare.
Pentru a avea un rezultat cât mai bun în această etapă, imaginile trebuie să fie de
calitate cât mai bună, și pe cât posibil, să conțină cât mai puține reflexii ale luminii. Această
etapă este critică pentru succesul sistemului, deoarece dacă datele nu vor fi extrase în mod
corect, acestea vor corupe șablonul care va fi generat, rezultat o rată de recunoaștere
scăzută.
2.2 Transformata Hough
Transformata Hough este un standard în algoritmii de procesare a imaginilor care
poate fi folosit pentru determinarea parametrilor unor figure geometrice simple, cum ar fi
linii si cercuri, prezente în imagine. Transformata circular ă Hough poate fi folosită pentru a
determina ra za și coordonatele centrului , pentru regiunea pupilei și cea a irisului. Pașii
acestei etape de determinare a zonei irisului și a pupilei sunt următorii: mai întâi se crează
un edge map (o imagine care conține marginile detectate în poză calculând valorile
intensităților în imaginea ochiului, mai apoi limitând rezultatul la unu anumit prag ). Dintr -un
edge map, se va face o schimbare în spațiul Hough pentru parametrii cercului, trecând prin
fiecare punct aparținând edge map -ului. Acești parametrii sunt coord onatele centrului xc și
yc, și a razei r, prin care se poate defini cercul folosind următoarea ecuație :
x2
c + y2
c – r2=0 (2.1)
Introducere
10
Extragerea unui edge map dintr -o imagine se poate face folosind algoritmul Canny
de detectare a marginilor( Canny edge detection). Canny edge detection este o tehnica
folosita pentru extragerea unor informa ții utile din imagini, cu scopul de a reduce v olumul
de date ce trebuie procesat. Pașii algoritmului Canny edge sunt următorii : se aplic ă un filtru
Gaussian de blurare, pentru netezirea imaginii și eliminarea zgomotului, se determină
gradienții intensității imaginii, se aplică suprimarea non-maximă pentru a determina o linie
fină a maginilor, urmând mai apoi aplicarea double threshold pent ru determinarea
marginilor potențiale și detectarea muchiilor prin suprimarea marginilor care sunt mai slabe
și nu sunt conectate la margini puternice(prin margine puternică se înțelege o margine care
are de o parte și de alta a acesteia, zone de imagini c are sunt mult diferite ca intensitate și
culoare) .
După determinarea edge map -ului, un punct maxim in spațiul Hough va corespunde
razei si coordonatele centrului cercului determinat cel mai bine de punctele de margine din
edge map. Cu ajutorul transformat ei Hough parabolice s -au putut crea algoritmi de
detectarea a pleopei și genei, ap roximând acestea folosind arce de parabol ă, care se pot
reprezenta matematic prin ecuația :
(-(x-hj)sinθj + (y-kj)cosθj)2 = αj((x-hj)cosθj + (y-kj)sinθj) (2.2)
unde αj controlează curbura parabolei, (hj,kj) este vârful parabolei, iar θj este unghiul de
rotație relativă față de axa x.
2.3 Operatorul Daugman Integro -Diferențial
Daugman a folosit un operator integro -diferenț ial pentru localizarea zonei circulare
a pupilei și a irisului și, de asemenea, pentru detectarea ploapei și a genei. Operatorul
integro -diferențial este definit astfel:
( )| ( )
∮
( )
| (2.3)
Introducere
11
în care I(x,y) reprezintă imaginea ochiului, r reprezintă raza cercului căutat , Gµ(r)
este funcția de blurare Gaussiană, iar s determină conturul cercului determinat de r, x 0, y0.
Operatorul căuta forma circulară acolo unde există o schimbare cât mai mare a valorilor
pixelilor, variind dimensiunea raze i r și poziția centrului determinat de coordonatele x și y
ale conturului circular. Operatorul este aplicat iterativ cu cantitatea de blurare redusă
progresiv pentru a genera o locație cât mai precisă . Pleoapa și geana sunt localizate într -un
mod asemănător, dar schimbând integrarea conturului de la o formă circulara la o formă de
arc de parabolă .
2.4 Detecția pleoapei și a genei
Kong și Zhang au propus o metoda pentru detectarea ploapei și a genei, în care
acestea sunt tratate ca fiind de două tipuri, ploape separate, acestea fiind izolate în imagine,
și pleoape multiple, aceste fiind împreunate și apoi suprapuse în imaginea ochiului.
Pleoapele separate sunt detectate folosind filtre 1D Gabor, deoarece convoluția pleoapelor
separate alături de blurarea Gaussiană rezultă într -o valoare de ieșire slabă. Prin urmare,
dacă punctul rezultat este mai mic decât pragul , atunci acel punct aparține conturului
pleoapei. Pleoapele multiple sunt detectate folosind variații ale intensității. Dacă valorile
variațiilor intensității într -o mică part e din imagine este mai mică decâ t valoarea pragului ,
atunci centrul părții de imagine este considerat a fi un punct de pe conturul pleoapei.
Modelul Kong și Zhang se folosește de criteriul conectivității, așa încât fie care punct de pe
pleoapă trebuie să fie conectat cu un alt punct aparținând pleoapei. Reflexia speculară este
detectată folosind metoda pragului, din moment ce valorile intensităților acestor regiuni vor
fi mai mari decăt oricare altă regiune din imagine.
2.5 Implementare
Pentru început, am aplicat un filtru de tip Canny Edge Detection, folosind funcția
edge cu parametrul Canny , apoi am folosit funcția imfindcircle cu limitele dimensiuni razei
între 30 și 70 de pixeli. Acest apel de funcție garantează d eterminarea coordonatelor
centrului pupilei și a dimensiunii razei acesteia. Limitele intervalului în care se încadrează
dimensiunea pupilei a u fost setat e manual, acestea depi nzând de baza de date fol osită.
Pentru detectarea margini i dintre iris și scleră , am considerat mai întâi că cele două cercuri
Introducere
12
care sunt considerate marginile irisului, ar avea coordonatele centrului comune. Astfel ce
mai rămâne de aflat este dimensiunea razei cerculu i care înconjoara irisul. Pentru aceasta,
am considerat că raza se a flă între valorile 80 și 14 0, apoi pentru fiecare valoare în parte din
interval am câte edge points se află pe cercul determinat de coordonatele centrului și
dimensiunea razei la momentul respectiv. Am considerat ca raza irisului este cea a cărui cerc
determinat are cele mai multe edge points conținute. Codul pentru determinarea razei
irisului este afișat în Figura 2.3.
Figura 2.3 – Codul scris pentru determinarea razei irisului
Mai apoi pleoapa și geana au fost izolate prin determinarea unei linii care să le
cuprindă aplicând transformarea Hough. Pentru punctele de pe cerc aparținând celui de -al
doilea cadran trigonometric, am iterat unghiul linie între valorile –π/4 și π /4 rad.
determinănd astfel ecuația liniei, după care am calculat câte edge points aparțin acestei linii.
Linia aleasă a fost aceea care avea cele mai multe edge points conținute. Pentru detectarea
marginei genei algoritmul a fost asemănător doar că punctele de pe cerc au aparținut celui
de-al treilea cadran. Apoi a fost trasată o linie orizontală intersectând linia marginii pleopei
determinată în punctul de pe marginea irisului care era cel m ai apropiat de centrul pupilei .
Această modalitatate a fost aplicată în mod asemănator și pentru a determină linia
orizontala care ar reprezenta marginea genei. Rezultatul aplicări acestei metode este
reprezentat în figura 2.4. Determinarea marginilor sub formă de linii este mai eficentă față
de determinarea unei parabole, deoarece sunt mai puțini parametri de determinat , făcând
procesul mai puțin computațional.
Introducere
13
Figura 2.4 – Pașii segmentării ochiului uman Stânga) – două cercuri reprezentând marginea
pupilei și a irisului, două lini i oblice pentru determinarea conturului pleoapei și genei și două linii
orizontale trasate din punctul cel mai de jos respectiv sus Dreapta) – pleopa și geana acoperire
cu negru(zonele vor fi ignorate în procesul de codare și comparare)
2.6 Rezultate
Segmentarea automata a avut rezultate bune. Un avantaj a fost și baza de date,
deoarece acele imagini au fost preluate un mod specific pentru cercetare în domeniu
recunoașterii pe baza irisului, iar marginile dintre pupila, iris și scleră au fost foarte bi ne
determinate. Problemele care au apărut la detectarea marginilor cercului au apărut atunci
când valorile intensităților dintre regiunea pupilei și regiunea irisului au fost apropiate, iar o
posibilă rezolvarea acestei probleme ar fi setarea parametrilor pentru fiecare bază de date
în parte. Parametrii care ar putea fi setați ar fi valorile limitelor pentru determinarea razelor,
împreuna cu valoarea intensității de prag la determinarea edge map -ului. În orice caz acești
parametri ar putea fi setați doar o singură dată, deoarece aparatul folosit pentru preluarea
imaginilor , distanța de la care imaginile v or fi preluate și condițiile de iluminare vor rămâne,
de regulă , aceleași.
Și detectarea pleoapei și a genei s -a dovedit a fi un succes, și a reușit să izo leze
regiunile care acoperă irisul. Unele dintre problemele apărute au fost atunci când se izola o
zona prea mare din regiunea irisului, făcând astfel algoritmul mai im precis, acea parte a
irisului care a fost ac operită putea ajuta la o comparare a irisuri lor mai bună . Totuși acest
caz este mai preferabil să se întâmple decăt cazul în care se include în procesare prea mult
din regiunea irisului, iar regiuni din zona pleoapei și a irisului vor rămâne nedetectate.
Introducere
14
Altă problemă aparută a fost aceea în care pleoapele au avut o intensitate a culorii
apropiată de cea a irisului, și nu au putut fi detectate cu succes. Totuși, aceste suprafețe
nedetectate au fost mici în comparație cu dimensiunea regiunii irisului, neafe ctând într -o
mare masură performanțele algoritmului de recunoaștere. Diferite tipuri de erori la detecție
pot fi observate în Figura 2.5.
Figura 2.5 – diferite tipuri de eroare la detectarea ploapei și a genei Stânga) – este izolată o zonă prea mică a pleopei
Dreapta) – zona de acoperire a genei acoperă o bună parte din iris
Introducere
15
3. Normalizarea
3.1 Date generale
O dată ce regiunea irisului a fost corect segmentată în imaginea ochiului, următorul
pas este acela de a transforma regiunea ir isului așa încât să aibă o dimensiune fixă, pentru a
permite compararea. Dimensiunea inconsistentă între imaginile aceluiași ochi este dată de
întin derea s -au destinderea irisului, cauzat ă de mărirea sau micșorarea pupilei datorate
diverse lor nivele de iluminare. Alte surse de incon sistență includ, dife ritele distanțe dintre
camera ce face captura ochilui și ochi, rotația camerei, înclinarea capului, rotația ochiului în
orbită. Procesul de normalizare va produce regiuni ale irisului, care vor avea aceași
dimensiune constantă, așa încât două fotogra fii diferite ale aceluiași ochi, preluate sub
diferite condiții , vor avea caracteristicile distincte ale irisului poziționate în același loc.
3.2 Modelul Daugma n de normalizare a irisului
Modelul propus de Daugman propunere repoziționarea fiecărui punct din regiunea
irisului cu omologul lui determinat prin coordonate polare ( r,θ) în care r se află în intervalul
[0,1], iar θ se află în intervalul *0,2π+. Repreze ntarea grafică a normalizării este oferită în
Figura 3.1.
Figura 3.1 – procesul de normalizare(în linii mari)
Introducere
16
Repoziționarea regiunii irisului din coordonade carteziene (x,y) într-o reprezentare
polară normalizată este modelată astfel:
I(x(r,θ ),y(r,θ)) -> I(r,θ)
în care
x(r,θ) = (1 – r) x p(θ) + r x i (θ)
y(r,θ) = (1 – r) y p (θ) + r y i (θ)
unde I(x,y) este conținutul imaginii, (x,y) reprezint coordonatele carteziene
originale, ( r,θ) coordonatele care corespund coordonatelor polare normalizate, iar xp,yp și
xi,yi reprezintă coordonatele pupilei și irisului de -a lungul direcției θ. Modelul Daugman de
normalizare ț ine cont și de dilatarea pupilei și dimensiunea inconsistentă, cu scopul de a
produce o normalizare a irisului constantă ca dimensiune.
3.3 Cercuri virtuale
În sistemul Boles , imaginea irisului este mai întâi redimensionată pentru a avea un
diametru constant așa încât atunci când se compară două imagini, una dintre ele est e
considerate a fi imagine de referința. Acest model propus diferă de cealaltă tehnică,
deoarece normalizarea nu este efectuată până cân d nu se încearcă potrivirea celor două
regiuni de iris, doar se efectuează o normalizare și se salvează rezultatul pentr u comparările
viitoare. Din moment ce două irisuri au aceeași dimensiune, caracteristicile irisului sunt
extrase din imagine păstrând valorile intensităților de -a lungul a unor cercuri virtuale
concentrice, cu originea în centrul pupilei. Mai apoi este ale asă o dimensiune a normalizării,
așa încât numărul de puncte extrase din fiecare iris să fie la fel. În principiul, această
abordare seamănă cu cea propusă de Daugman, totuși scalarea se face atunci când se face
compararea, decât scălând la o dimensiune constantă.
Introducere
17
3.4 Implementare
Pentru normalizare am folosit abordarea propusă de Daugman. Centrul pupilei a
fost considerat cen tru de referință, iar o serie cu un număr fix de linii străbat regiunea
irisului sub diferite unghiuri . Unghiurile se găsesc în intervalul *0;2*π+ dispuse în mod egal.
Un număr de puncte este selectat pentru fiecare linie, aceasta fiind definită ca rezoluție
radială. Numărul de linii care străbat irisul este definit ca fiind rezoluție unghiulară.
Implementa rea pe care am făcut -o pentru a crea o matrice din regiunea irisului este
următoarea:
Figura 3.2 – Codul sursă al proceului de normalizare
Modelul normalizat a fo st creat transformând dispunând din . De la forma inelară a
irisul, normalizarea va produce o matrice având pe orizontală dimensiunea rezoluției
unghiulare, iar pe vertical dimensiunea rezoluției radiale. Înca o matrice, având dimensiunile
egale cu cele ale matricei precedente, este creată pentru trasarea zonelor detectate ca fiind
acope rite de pleoapă și geană, determinate în etapa de segmentare.
Introducere
18
Figura 3.3 – Imaginea ochiului împreună cu normalizarea irisului
Introducere
19
4. Codarea și compararea
4.1 Date gener ale
Pentru a produce o recunoaștere cât mai precisă a indivizilor, din irisul rezultat
trebuie extras e informațiile discriminante. Doar caracteristicile signifiante ale irisului trebuie
transpuse în cod, așa încât să facă posibilă comparația între șabloanele irisurilor. Multe
sisteme de recunoștere pe baza i risului descompun irisul folosind un filtru trece bandă, cu
scopul creării unui model biometric pe baza acestuia.
Modelul biometric, generat în procesul de codare al irisului , va avea nevoie și de o
corespondență a potrivirii metrice, care asigură o măsu ră a similarităților între două modele
biometrice ale irisului. Această metrică trebuie să dea un interval de valori pentru
compararea modelelor generate ale aceluiași iris, cunoscute ca și comparații intra -clasă , și
un alt interval de valori necasar atunc i când se compară modele biometrice create din irisuri
diferite, cunoscute ca și comparații inter -clasă. Aceste două cazuri ar trebui să ofere valori
distincte și separate , astfel încât decisia ca două irisuri să aparțină aceleași persoane sau
unor persoane difertă să fie luată cu încredere.
4.2 Diferite tipuri de codare
4.2.1 Codarea de tip “wavelet ”
Undele(“wavelets”) po t fi folosite pentru descompuner ea datelor din regiunea
irisului în componete care apar la rezoluții diferite. Unde le au avantajul față de transformata
Fourier tradițională datorită localizării frecvenței datelor, permițând caracteristicilor
irisurilor care sunt determinate în aceeași poziție să se potrivească. Un număr de filtre de
undă, cunoscut și ca o bancă de unde , este aplicată pe regiunea irisului, cât e unul pentru
fiecare rezoluție. Rezultatul aplicării acestor filter de tip undă este o matrice binară
reprezentând codarea irisului, cu scopul de a produce o reprezentare disc riminantă și
compactă .
Introducere
20
4.2.2 Filtre Gabor
Filtrele Gabor sunt capabile să asigure a reprezentare optimă a unui semnal în
spațiu și frecvență . Un filtru Gabor este construit prin modularea unei unde sin/ cos folosind
funcția Gauss iană . Aceasta face posibilă localizarea optimă în spațiu și frecvență , deoarece o
undă sinus asigură o determinare a frecvenței , dar nu și o localizare în spațiu.
Descompunerea semnalului este realizată folosind patru perechi de filtre Gabor, cu partea
reală reprezentată de un semnal cosinus modulat d e un filtru Gaussian, și o parte imaginară
specificată reprezentată de un semnal sinus modulată de un fitru Gaussian. Filtrele real și
imaginar sunt cunoscute ca și componentă simetrică pară, respectiv compo nentă simetrică
impară. Frecvența centrală a filtrului este specificată de frecvența undei sin /cos, iar
dimensiunea benzii filtrului este determinată de lățimea filtrului Gaussian.
Daugman utilizează versiunea aplicabilă în spațiu bidimensional a filtrelor Gabor cu
scopul de a deduce un cod pe baza iris ului extras. Un filtru Ga bor care se poate folosi în
spațiul bidimensional este reprezentat astfel
G(x,y) = exp( -π[(x-x0)2/α2+(y-y0)2/β2])*exp( -2πi[u0(x-x0)+ν0(y-y0)]) (4.1)
unde ( x0,y0) reprezintă poziția în imagine , (α,β) reprezintă dimensiunea imaginii, respectiv
lungimea și lățimea, iar ( u0,v0) reprezintă modularea , care are o frecvență spațială
ω0 = √ .
4.2.3 Filtre Log -Gabor
O alternativ ă a funcției Gabor este funcția Log -Gabor. Imaginile pot fi mai bine
transpuse într-un cod de către filtre care au funcți a de transfer Gaussiană pe o scară
logaritmică, spre deosebire de funcțiile Gabor care au funcț ia Gaussiană de transfer pe o
scară liniară. Răspunsul în frecvență al filtrulu log -Gabor este dat de ecuația:
Introducere
21
G( f )=exp( ( ( ⁄))
( ( ⁄)) ) (4.2)
unde f0 reprezintă frecvența centrală, iar σ furnizează lățimea de bandă a filtrului.
4.2.4 Zero crossing al undei unidimensionale
Undele unidimensionale au fost folosite într -un sistem de recunoaștere pe baza
irisului de către Boles *+, pentru codarea regiunii irisului. Unda principal a fost definită ca a
două derivată a funcției de netezire θ(x).
Zero -crossing -urile scalelor acestor filtre sunt mai apoi folosite pentru codarea
irisului. Transformarea de t ip undă a semnalului f(x) la scara s și poziția x este data de:
Ws f(x) = s2
(f * θs)(x) (4.3)
where
θs = (1/s)θ(x/ s)
Wsf(x) este proporțional cu a doua derivată a lui f(x) și folosind funcția de netezire θs(x), iar
zero -crossing -urile transformării corespund punctelor de inflexiune ale funcției f*θ(x) .
4.2.5 Unda Haar
Transformata Gabor și unda Haar sunt considerate ca fiind unde principale. Dintr -o
filtrare multi -dimensională, este procesat un vector cu 87 de dimensiuni. Din moment ce
fiecare dimensiune are o valoare reală cuprinsă între -1 și 1, vectorul procesat va fi modificat
Introducere
22
așa încât fiecare valoare pozitivă va fi egală cu 1, și orice valoare negativă egala cu 0. Acest
lucru a re ca rezultat un model biometric compact alcatuit din numai 87 de biți.
O implementare a acestei metode într -un sistem de recunoaștere pe baza irisului a
fost folosită de Lim et al., acesta arătând că unda Haar este puțin mai bună decât
transformata Gabo r cu un procent de 0.9%.
4.3 Date generale ale algoritmilor de comparare
4.3.1 Distanța Hamming
Distanța Hamming determină câți biți sunt la fel între două șiruri de biți. Folosind
distanța Hamming pe șiruri de biți, se poate determina două șabloane ale irisurilor au fost
generate din același iris sau aparțin unor iriși diferiț i.
În compararea șirurilor de biți X și Y, distanța Hamming, HD, este definită ca suma
biților diferiți(suma șirului de biți rezultat din aplicarea operației de XOR între X și Y)
împărțită la N, suma totală de biți din șir.
HD =
∑ ( )
(4.4)
Deoarece o regiune a irisului conține caracteristici cu un grad mare de libertate,
fiecare regiune a irisului va produce un șir de biți care este independent de cel produs de alt
iris, pe de altă parte, două coduri ale unor irisuri aparținând aceluiași iris vor avea un grad
mare de corelare.
Dacă două șiruri de biți ar fi complet independente, cum ar fi codurile generate
aparținând unor irisuri diferite, distanța Hamming dintre două coduri va fi egală cu 0.5.
Acest lucru se întâmplă deoarece dacă două șiruri de biți ar fi complet aleatoare , există o
șansa de 0.5 ca doi biți să fie diferiți. Prin urmare, jumatate dintre biți vor fi la fel, iar
jumătate dintre ei vor fi diferiți. Dacă două coduri au fost generate din același iris, distanța
Hamming dintre ele va fi apropiată de 0, din moment ce ele au un grad mare de corelare, iar
biții ar trebui să fie aproximativ la fel între două coduri.
Introducere
23
Distanța Hamming este metoda de comparare folosită de Daugman, iar calculul
distanței Hamming este obținut folosind doar biți care au fost generați din regiunea irisului
actuală.
4.3.2 Distanța Euclidiană ponderată
Distanța Euclidiană ponderată poate fi folosită pentru compararea a două
template -uri, în special dacă template -ul este compus doar din valori întregi. Distanța
Euclidiană ponderată oferă o măsură a gradului de similaritate dintre două colecții de valori
a două template -uri diferite. Aceasta es te definită astfel:
d(p) = ∑( ( ))
( ( ))
(4.5)
unde fi este al i-lea bit din irisul pentru care se face identificarea, ( ) este al i-lea
bit din irisul p (irisul cu care se compară) , iar ( ) este deviația standard al celui de -al i-lea
bit din irisul p. Template -ul irisului se potrivește cu template -ul irisului p, atunci cand
valoarea funcției d(p) este minimă.
4.4 Implementarea
4.4.1 Codarea
Codarea irisului a fost implementată prin aplicarea undelor unidimensionale Log –
Gabor pe imaginea irisului normalizată. Fiecare linie din irisul normalizat este luată ca un
semnal unidimensional, fiecare linie fiind corespunzătoare unui inel circular din zona irisului.
Pașii pentru realizarea temp late-ului irisului sunt următorii: se generează funcția de la
punctul (4.2) , aceasta având rol de filtru ce va fi aplicat ulterior, după care se face o iterație
linie cu linie în imaginea normalizată a irisului. Mai apoi, pentru fiecare linie, se aplică
transformata Fourier ce va genera un semnal ca va fi filtrat folosind filtrul Log -Gabor
precedent. Rezultatul final este construit linie cu linie, pentru fiecare reprezentare calculată
a unei linii.
Introducere
24
Valorile intensităților zonelor care sunt eliminate din ir is(pleoapa și geana care va
acoperi regiunea irisului) vor fi setate la intensitatea medie a pixelilor care le înconjoară,
pentru a preveni influența acestora în rezultatul aplicării filtrului. Rezultatul filtrării este mai
apoi cuantificat în patru nivele folosind metoda Daugman, fiecare filtru producând doi biți
de date pentru fiecare fazor. Rezultatul cuantificării este de culoare gri, așa încât trecând de
la un cadran la altul, doar un bit să se schimbe. Acestă metodă de implementare va minimiza
numărul de biți care nu corespund. Dacă două template -uri intra -clasă sunt greșit aliniate,
metoda propusă va asigura o recunoaștere mai precisă.
Procesul de codare va produce un template, sub forma unei matrice de biți.
Numărul total de biți din te mplate va fi egal cu numărul de pixeli total din imaginea irisului
normalizat înmulțit cu doi(numărul de biți generați din fiecare pixel al template -ului).
4.4.2 Compararea
Pentru comparare, distanța Hamming a fost folosită ca metrică de recunoaștere,
deoarece este necesară compararea pe șiruri de biți. Algoritmul de calculare a distanței
Hamming încorporează masca irisului, cea care conține zonele acoperite de pleaopă și
geană, așa încât doar biții semnificativi să fie folosiți pentru calcularea distanței Hamming
între două template -uri ale irisurilor. În calcularea distanței Hamming, se vor lua în
considerare doar biții din template care au valoarea ‘1’ în masca de biți a celor două
template -uri ale irisurilor folosite în calcul. Această mască de biți comună celor d ouă irisuri
se calculează prin aplicarea operatorului AND între cele două măști. DIstanța Hamming va fi
calculată folosind doar biți generați doar din regiuni valide ale irisului, iar formula distanței
Hamming a acestui algoritm este:
DH = ∑ ( ) ( ) ( )
∑ ( )
(4.6)
unde Xj și Yj sunt template -urile pentru comparare, Xnj și Ynj sunt maștile care corespund
template -urilor, iar N este numărul de biți conținuți în template -uri.
Introducere
25
Cu toate c ă, în teorie, template -urile a două irisuri generate care aparțin aceluiași
individ vor avea distanța Hamming egală cu 0, în practică acest lucru se poate întâmpla
destul de rar. Normalizarea nu poate fi perfecta, și de asemenea va rămâne zgomo t care va
rămân e neidentificat, de accea câteva variații vor fi apărea la compararea a două template –
uri ale irisurilor intra -clasă.
Pentru a ține cont de inconsistența rotațiilor, când se calculează distanța Hamming
a două template -uri, un ul dintre template -uri este de plasat în stânga și dreapta și câte o
valoare a distanț ei Hamming va fi calculată pentru fiecare deplasare. Această deplasare a
biților în direcție orizontală corespunde rotație regiunii irisului original cu un unghi dat de
rezoluția unghiulară folosită. Spre exemplu, d acă rezoluția unghiulară ar fi 180, atunci
fiecare deplasare a biților va corespunde cu o rotație de două grade a regiunii irisului.
Această metodă este sugerată de Daugman, și corectează nealinierile din irisul normalizat ,
cauzate de rotații le diferite pe parcursul preluării imaginilor. Din calcularea valorii distanței
Hamming, doar cea mai mică este păstrată și prezentată ca valoare efectiv calculată, din
moment ce aceasta corespunde celei mai bune potriviri între template -urile celor două
irisuri.
Numărul de biți deplasați pe parcursul fiecărei deplasări este egal cu de două ori
numărul de filter folosite, din momente ce fiecare filtru va genera doi biți de informative din
fiecare pixel al regiunii normalizate. Numă rul actual de deplasări necesar standardizării
inconsistenței rotațiilor va fi determinat ca fiind diferența unghiulară maxima dintre două
imagini ale aceluiași ochi, iar o deplasare este definite ca o deplasare în stânga, urmat de o
deplasare la dreapta. Procesul de deplasare este prezentat în F igura 4.3.
Introducere
26
Figura 4.3 – ilustrarea procesului de deplasare a biților în cadrul template -urilor. O deplasare a biților este
reprezentată de o deplasare la stânga, urmată de o deplasare la dreapta, în cadrul templa te-ului de referință.
Introducere
27
5. Rezumat implementare și rezultate obținute
În acest capitol se vor prezenta atât performanțele programului, cât și problemele
apărute în diferite cazuri de implementare. Testele folosite au rolul de a determina cea mai
bună setare a algoritmului cu scopul de a reduce la minim posibilitatea ca algoritmul să
producă o eroare. Pe lângă aceasta, se vrea și confirmarea unicității irisului de la un individ
la altul, stabilind as tfel și numărul de grade de libertate ale reprezentării irisului.
Una dintre importantele aspecte ale acestei etape îl reprezintă setarea și
determinarea celor mai bune valori ale parametrilor ce trebuie stabiliți. Acești parametric
includ, r și θ adică dimensiunile imaginii reprezentării normalizate a irisului, acești vor
determina numărul de puncte preluate din imaginea irisului asigurând astfel o reprezentare
cât mai detaliată a irisului. Parametrii filtrului Log -Gabor ce vor fi setați sunt, lung imea de
undă λ și lățimea benzii filtrului trece -bandă reprezentă de valoarea σ. Se va determina, de
asemenea și numărul de deplasări ale biților necesarii, pentru a elimina posibilitatea rotației
irisului de la o imagine la alta. Acest ultim parametrul es te determinat mai mult de calitatea
imaginilor preluate, cât și de poziția aparatului și a individului în timpul preluării a două
imagini succesive.
5.1 Etapele implementării
În cadrul acestui punct se va prezenta o mica descriere a implementării pentru
fiecare etapă a algoritmului în parte, împreună cu statisticile diferitelor setări ale
parametrilor, determinării cauzelor posibile de eroare datorate limitărilor algoritmului, cât și
a posibilităților de îmbunatațire.
Într-un sistem complex de recunoaștere a persoanelor pe baza imaginii ochiului
primul pas ar fi preluarea imaginii cu ajutorul unui dispozitiv special, cu scopul de a capta o
imagine cât mai clara și la o rezoluție foarte bună, așa încât caracteristicile s pecifice ale
irisului să fie bine definite. Totuși în această aplicație am folosit o bază de date aparținând
facultății IIT Delhi, deoarece am considerat că o bază de date în acest scop oferă o
performanță mult mai bună decât preluarea imaginilor cu aparat ura de care dispun la
momentul acesta.
Următorea etapă o reprezintă segmentare, adică delimitarea re giuni irisului
încadrarea acestuia între două cercuri concentrice. Acest pas este esenț ial în recunoaștere
Introducere
28
deoarece o încadrarea defectuosă ar duce la prel uarea unor detalii suplimentare și
nefolositoare în imaginea irisului, rezultând astfel o performanță scazută. Implementarea
acestui pas a condus la o segmentare eficientă cu un success apropiat de 100%. Totuși au
fost cazuri în care datorită detaliilor bo gate din interiorul irisului și a parametrilor folosiți în
algoritmul de detectare a marginilor(algoritmul Canny Edge), marginea exterioară a irisului a
fost detectată în interiorul regiunii irisului, acest lucru ducând la imposibilitatea
recunoașterii ind ividului. O posibilă implementare viitoare a acestei etape ar fi aplicarea
algoritmului de detectare a marginilor succesiv cu diferiți parametrii, cu scopul de a evalua
diferitele încadrări ale irisului și luarea unei decizii cu privire la dimensiunea core ctă a razei
irisului. Parametri de setare necesari acestei etape sunt intervalul valorilor dimensiunii razei
cercului care încadrează pupila și intervalul dimensiunii cercului care va încadra irisul. Pentru
primul cerc am setat intervalul între valorile 30 și 70, iar pentru cel de -al doilea valorile
stabilite au fost în intervalul 80 și 140. Aceste valori se setează o singură dată, dar pot să
difere de la o bază de date la alta, sau în funcție de dispozitivul de preluare a imaginilor și
distanța acestuia fa ță de ochi, dacă se alege capturarea imaginilor și nu încarcarea lor dintr –
o bază de date. Cea de -a doua parte a acestei etape o reprezintă de determinarea
informațiilor inutile și care pot afecta în mare masură performanțele algoritmului, cu
precădere det erminarea suprafeței irisului acoperite de pleoapă și geană. O posibilă limitare
acestei etape, dar care nu a fost necesară pentru acest set de date, este aceea că nu se
determină posibilul zgomot nedorit, cum ar fi reflexia luminii pe suprafața cristalinu lui.
Pentru o implementare viitoare se poate avea în vedere și acest lucru, deoarece este posibil
ca în alte seturi de date, suprafețele conținute cu reflexie să fie mari și să afecteze mult
performanțele.
Cea de -a treia etapă în algoritm o reprezintă normalizarea irisului, mai pe scurt
preluarea regiunii irisului din imagine și transpunerea acestuia într -o imagine sub formă de
matrice, cu dimensiune fixă. Pentru această etapă nu s -au constatat probleme de
interpretare, normalizarea depinzând, în mare măsură, de succesul execuție și prelucrării
din etapa anterioară. Parametrii ce trebuie stabiliți în această etapă sunt r și respectiv θ,
reprezentând fiecare numarul de puncte preluate dintr -o linie ce străbate irisul, respectiv
numărul de linii concurente în centrul pupilei care formează unghiuri egale. Acești parametri
vor determina numărul de puncte preluate din regiunea irisului, și de aceea trebuie stabiliți
în conformitate cu baza de date folosită, pentru că dacă parametr i sunt prea mici și calitatea
imaginilor slabă, se pot găsi cazuri în care imaginile a două irisuri, chiar dacă aparțin
aceleiași persoane, să fie considerate diferite. Am folosit ca setare în acest algoritm
dimensiunea lui r de 60 și cea a lui θ de 180, rezultând într -un total de 10800 de puncte
Introducere
29
preluate din regiunea irisului, și un unghi între oricare două linii adiacente ce străbat irisul
egală cu dimensiunea de .
A patra etapă a algoritmului este cea de transpunere a imaginii normaliz ate
anterior într -o matrice binară pentru a se putea compara ulterior diferite codări ale irisului.
Pașii necesari acestei etape sunt următorii: se construiește mai întâi filtrul Log -Gabor, acesta
se va transpune în cod MATLAB din funcția prezentată la pun ctual (4.2), cu parametri
constanți setați în mod specific. Următorul pas constă în iterarea imaginii normalizate linie
cu linie, fiecare dintre acestea fiind considerate un semnal f(x), cu x reprezentând poziția
pixelului în cadrul liniei, iar f(x) descri e intensitatea pixelului x a acelei li nii. Mai apoi peste
acest semnal se aplică transformata Fourier pentru a trece funcția în domeniu frecvență, cu
scopul de a aplica mai apoi filtru Log -Gabor peste aceasta. Template -ul rezultat, având
dimensiunea pe lin ii egală cu cea a irisului normalizat iar dimensiunea pe coloane egală cu
cea a normalizării înmulțită cu doi, pentru fiecare pixel vor rezulta doi biți. Această secvență
se determină prin interpretarea valorii corespunzătoare fiecărui pixel din rezultatul aplicării
filtrului. Partea reală a valorii va reprezenta primul bit, care va fi 1 dacă partea reală este
mai mare ca zero, și 0 pentru cazul în care este mai mica. La fel întâmplă și pentru cea de -a
două valoare a bitului doar ca va fi interpretă partea imaginară a valorii din template -ului
rezultat din aplicarea filtrului. Pentru această etapă a algoritmului parametrii care trebuie
setați sunt lungime de undă λ, și lățimea de bandă a filtrului σ. Setarea acestori parametri
este definitorie pentru recunoașterea cu success a unui individ deoarece cu ajutorul
acestora se va genera template -ul irisului care mai apoi se va compara cu celelate template –
uri cu scopul determinării identității. În aplicați e am obținut un procentaj bun de
recunoștere prim setarea parametrului λ la valoarea 100 și cea a parametrului σ la valoarea
0.5.
Cea de -a cincea, și ultima etapă, din algoritm este cea a comparării și determinării
originii irisului prin calcularea distan ței Hamming dintre două template -uri. Pentru început,
se va stabili plaja de valori necesare deplasării biților, cu scopul eliminării inconsistenței
rotației irisului. Apoi unul dintre template -uri, împreună cu masca acestuia, va fi deplasat
după care se v a calcula distanța Hamming dintre template -uri astfel: se generează o mască
generală, rezultată din suprapunerea celor două măști, apoi se calculează numărul total de
biți din mască.Numărul efectiv de biți valizi din template va fi egal cu numărul total de biți
din care se scade numărul de biți din mască. Template -ul gen erat prin aplicarea XOR între
cele două template -uri, după care se va aplica masca generală peste template. Distanța
Hamming pentru acest punct va fi egală cu rezultatul împărțirii dintre nu mărul de biți de 1
din template -ul rezultat și numărul de biți valizi din template. Distanța Hamming generală va
Introducere
30
fi egală cu minimul distanțelor Hamming calculate pentru fiecare valoare a deplasării
template -urilor. Ca parametru de setare necesar la acest ultim pas al implementării ar fi
valoarea distanței Hamming pentru care două template -uri aparțin aceleiași persoane.
Pentru aplicația rezultată, din testele pe care le -am efectuat am considerat ca 0.25 este
valoarea de prag care determină proveniența iris ului. Această valoare este scăzută
comparativ cu valoarea acestuia în teorie, din pricina imaginilor din baza de date, deoarece
o bună parte din regiunea irisului conține aproximativ aceleași valori ale intensităților,
singurele zone care întradevăr conțin caracteristici diferite ale irisului sunt cele aflate între
marginea pupilei și colaretă.
5.2 Testarea și r ezultate le obținute
Primul test a fost determinarea determinarea pragului de valoare a distanței
Hamming pentru a determina dacă irisurile pentr u care s -au calculat această distanță
aparțin unei persoane sau nu. Acest prag a fost determinat prin compararea template -urilor
generate de la diferiți ochi din setul de date, după care s -a examinat distribuția distanței
Hamming produse.
Conform statisti cii, distanța Hamming pentru compararea irisurilor ar trebui să fie
la valoarea de 0.5. Acest lucru poate fi determinat prin faptul că, dacă două template -uri ar
fi complet independente, biți pot fi considerați ca fiind setați cu o valoare random, ceea ce
ar determina o șansă de 50% ca un bit să aibă valoare 0, respectiv 1. Prin urmare, jumătate
din biți vor coincide iar jumătate vor fi diferiți, rezultând o valoare a distanței Hamming la
valoarea 0.5.
Template -urile sunt mai apoi deplasate în stâga și d reapta, din cauza posibilității
rotației irisului între două imagini, iar cea mai mica distanță Hamming calculată este
considerată ca fiind distanța Hamming validă. Din cauza acestei adaptări, pragul distanței
Hamming care ar determina apart enența irisuril or va fi mai mic decât 0.5 deoarece se va
prelua cea mai mică valoare calculată în urma deplasărilor. O reprezentare a calcului
distanței di stanței Hamming pe un set de 99 de imagini este prezentat în Figura 5.1.
Setul de date folosit conțin 392 de perechi de imagini care ar trebui să genereze o
comparație pozitivă, adică cele două poze aparțin aceluiași ochi, și 4850 de perechi de
imagini care generează o diferență între imagini. După cum se poate vedea în figură, se află
Introducere
31
o zonă de indecizie, în care există un număr de perechi de poze care aparțin aceluiași ochi,
dar sunt considerate a fi diferite, și un număr de perechi de imagini care conțin ochi diferiți,
dar sunt apreciate ca fiind la fel. Totuși, această zonă conține un număr relativ mic de
înregistrări, comparative cu numarul total de perechi de imagini folosit, și este datorat, în
mare parte, calității precare al unor imagini.
Figura 5.1 – Reprezentarea grafică a distanței Hamming calculată pe un eșantion de 99 de imagini
Introducere
32
Un parametru ce ar putea modifica valoarea de prag a distanței Hamming îl
reprezintă numărul de deplasări al template -ului în cele două direcții. Fără folosirea
deplasării template -urilor valoarea necesară de prag ar fi mai mare , deoarece se apropie de
teoria în care două template -uri complet random ar genera o distanță Hamming medie de
0.5. Odată ce numărul de deplasări crește, acestă valoare de prag începe să scadă și va tinde
către o valoare constantă. O reprezentare a acestei modificări a ditanței Hamming de prag
este sugerată în Figura 5.2.
Figura 5.2 – Distanța Hamming de prag calculată pentru un număr de deplasări al template -ului
După cum se poate observa din grafic numărul de deplasări se poate seta la valoare
4, deoarece această valoare generează o valoare de prag apropiată de valoarea constantă a
pragului și poate determina o eficiență sporită a sistemului.
Introducere
33
6. Concluzii
În această lucrare am prezentat o implementare a unui sistem de recunoaștere a
persoanelor prin intermediul analizei irisului care are ca modalitate de introducere a datel or
prin încărcarea unei imagini a unui ochi. În timpul implementării și testării aplicație am
observat că etapa de segmentare a irisului și cea de detectare a pleoapei și a genei sunt cele
mai importante și succesul recunoașterii persoanei depinde în mare măsură de succesul
execuției celor două etape.
Contrar sugestiilor de implementare găsite în literatura de specialitate cu privire la
folosire și ap licarea unui grup de filtre Log -Gabo , în etapa de codare și determinare a
templ ate-ului irisului am folosit o singură aplicare a acestui filtru, iar rezultatele obținute au
fost bune, recunoașterea persoanei facându -se cu succes .
În dezvoltarea aplicaței am folosit cunoștințe învățate din facultate precum mediul
de lucru MATLAB, metode de procesare a imaginilor și cunoștințe legate de lucrul cu
semnale și filtre de semnal.
6.1 Dezvoltări viitoare
Deși sistemul oferă o rată de success ridicată și o acurat ețe bună, se pot face o serie
de îm bunatățiri și se pot rezolva diversele probleme apărute. În primul rând procesul de
detectare a regiunii irisului nu este perfect, deoarece există imagini pentru care
segmentarea nu dă un rezultat corespunzător, pe lângă acestea se poate adăuga și limitarea
faptului că cercul care încadrează irisul și cel care încadrează irisul ar fi concentrice. Se pot
aduce îmbunătățiri și la încadrarea și eliminarea ploeapei și a genei din regiunea irisulu, se
poate face încadrarea folo sind o parabola, nu o linie cum este prezentat în aplicația actuală.
Altă îmbunatățire adusă aplicației ar fi detectarea zgomotului în imagine, cum ar fi reflexia
luminii în ochi, deoarece este posibil ca folosind alte seturi de date, să fie necasară aceas tă
îmbunătățire.
O îmbunătățire ar putea fi facută și la timpul de rulare al programului . Etapele
computational intensive cum ar fi cea de segmentare, în care se efectuează detecția
marginilor și se aplică transformata Hough, cât și cea a calculării dista nței Hamming, se pot
implementa folosind limbaje ca C sau C++. Timpul de rulare scăzut nu a fost unu din
Introducere
34
obiectivele majore ale creării acestei aplicații, dar se poate avea în vedere în cazul unei
aplicații de recunoaștere în timp real.
Se mai pot aduce îmbunătățiri și la etapa de preluare a imagini unui ochi, folosind
un aparat fotografic ce va asigura acest lucru. Acest lucru ar duce și la posibilitatea
îmbunătățirii aplicației deoarece testele nu se vor mai limita la o bază de date, re spective la
unu număr limitat de intrări.
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Recunoașterea persoanelor prin scanarea irisului Coordonator științific: Prof. dr. ing. Francisc Iacob Absolvent: Geambașu George Liviu BUCUREȘTI… [616208] (ID: 616208)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
