Sunteți pe pagina 1din 64

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing.

SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

Capitolul 1: Introducere

1.1. Concepte utilizate n biometrie

Recunoa terea biometric , sau mai simplu - biometria - se refer la utilizarea identificatoarelor i caracteristicilor comportamentale i anatomice distinctive (ex.: amprente, fa , iris, voce, geometria minii) pentru recunoa terea automat a unei persoane [1]. ntreb ri precum: Este aceast persoan autorizat s ntre n aceast incint att de facil? , Are aceast persoan drept de acces privilegiat la aceast informa ie? sau A solicitat aceast persoan , n prealabil, pa aportul? sunt ntreb ri de rutin ce sunt puse ntr-o varietate de organiza ii, fie ele din sectorul public sau privat. Sistemele tradi ionale de acces bazate pe legitima ii nu mai sunt suficiente pentru a verifica identitatea unei persoane. Datorit faptului c identificatoarele biometrice nu pot fi u or nlocuite, falsificate sau distribuite, sunt considerate mult mai sigure pentru recunoa terea unei persoane dect cele tradi ionale (de ex. cheile sau c r ile de iden titate) sau metodele informa ionale, precum parol sau codul PIN. Recunoa terea biometric asigur o securitate mai bun , eficien mai mare i, n multe instan e, cre terea confortului utilizatorului. Din aceste motive, sistemele de recunoa tere biometric sunt implementate n tot mai multe aplica ii guvernamentale (puncte vamale, buletine, pa apoarte electronice), dar i civile (logarea la un calculator, telefon mobil, internet acces, smartcard). Un num r de tehnologii biometrice au fost dezvoltate i cteva dintre ele au fost implementate cu succes. Printre acestea, amprentele, fa a, irisul, vocea i geometria minii sunt cele mai utilizate. Fiecare caracteristic biometric are punctele sale forte sau slabe, iar alegerea unei anumite particularit i depinde de cerin ele aplica iei. Diverse elemente biometrice de identificare pot fi de asemenea studiate comparativ cu urm torii factori [1]: y y y y y y y Universalitate adic fiecare persoan trebuie sa posede aceasta caracteristic ; Distinctivitate caracteristicile pentru dou persoane trebuie sa fie suficient de distincte, pentru a permite diferen ierea lor; Permanen caracteristica s fie invariant pe o perioad mai lung de timp; Colectabilitatea indic faptul c biometria poate fi m surabil cantitativ; Performan care se refer la precizia de recunoa tere tangibil , vitez , robuste e, precum i resursele necesare pentru a atinge un anumit nivel de performan ; Acceptabilitatea indic gradul n care respectiva caracteristic biometric se impune a fi acceptat de utilizatori; Rezisten a la fraudare indic robuste ea unui sistem la fraudare.
1

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

Datorit propriet ilor binecunoscute de individualitate i persistent a amprentelor, precum i costului i complexit ii produselor relativ sc zute, amprentele sunt cele mai utilizate i dezvoltate caracteristici biometrice [1]. Mai mult de un secol a trecut de cnd Alphonse Bertillon a conceput pentru prima dat i apoi a practicat cu asiduitate ideea utiliz rii m sur torilor corpului pentru pentru rezolvarea crimelor (Rhodes, 1956). Odat ce ideea lui a c tigat popularitate, aceast a fost eclipsat de o descoperire mai practic i mai semnificativ , aceea a distinctivit ii amprentelor umane. n 1893, Ministerul Afacerilor Interne din Marea Britanie a accep tat ca adev r general valabil faptul c dou persoane nu pot avea acelea i amprente. Avnd n vedere c exist 6,5 miliarde de oameni care tr iesc pe p mnt i fiecare persoan are 10 degete, rezult c exist 65 miliarde de degete unice. De fapt, amprentele i biometria sunt adesea considerate cuvinte sinonime. Imediat dup aceast descoperire, multe departamente importante de aplicare a legii au observat poten ialul pe care l au amprentele n vederea identific rii infractorilor care folosesc un alias, cum ar fi schimbarea numelor cu fiecare arest, pentru a se sustrage pedepselor mai grele aplicate recidivistilor. Departamentele de aplicare a legii au mbr i at ideea nregistr rii amprentelor criminialilor, la momentul arest rii lor, nregistr rile fiind disponibile ulterior, n vederea identific rii lor mai trziu. Amprentele i-au g sit aplicabilitatea n criminalistic . Analiznd urmele l sate de amprente la locul nf ptuirii crimelor i potrivindu -le cu amprentele colectate n timpul procesului de nregistrare, autorit ile puteau determin identitatea criminalilor care fuseser aresta i preventiv. Agen iile de aplicare a legii au sus inut studii riguroase ale amprentelor i au dezvoltat metode tiin ifice pentru potrivirea vizual a amprentel or digitale i au instituit programe puternice/proiecte de preg tire a exper ilor n domeniul amprentelor digitale. n zilele noastre, fiecare sec ie de criminalistic i agen ie de aplicare a legii la nivel mondial folosesc n mod curent sisteme de ident ificare automat pe baz de amprent (AFIS). n timp ce agen iile de aplicare a legii au fost primele care au adoptat tehnologia de recunoa tere a amprentei digitale, preocup rile legate de sectoarele publice i private sunt n cre tere. Datorit faptului c metodele clasice de legitimare nu mai sunt suficiente pentru verificarea persoanelor n vederea securit ii, multiplele cazuri de fraud (financiar i de identitate) au impus necesitatea recunoa terii persoanelor cu ajutorul tehnologiei bazat pe amprent , folosit folosit pe scar larg n aplica iile antifraud . Sistemul de recunoa tere pe baz de amprent poate fi v zut c un sistem de recunoa tere a tr s turilor (caracteristicilor). Construirea unor algoritmi capabili de a extrage proeminen ele din amprente i potrivirea lor ntr -un mod robust reprezint o provocare. Acest lucru e deosebi atunci cnd utilizatorii nu coopereaz , suprafa a degetului
2

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

este murdar sau cicatrizat , iar calitatea imaginii amprentei rezultate este slab . Exist o concep ie popular gre it , conform c reia recunoa terea automat a amprentei este o problem rezolvat complet, din moment ce sistemele de detec ie automat a amprentei au fost descoperite i utilizate de aproape 40 ani. ns , dimpotriv , recunoa terea pe baz amprentei digitale reprezint nc o provocare i o problem important de analiz i clasificare a imaginilor.

1.2. Recunoa terea biometric

Pe m sur ce societatea noastr a devenit tot mai conectat la lumea digital i mai mobil , reprezent ri surogate ale identit ii, cum ar fi parolele (predominante n controlul accesului electronic) i cardurile (utilizate predominant n sistemul bancar i aplica iile guvernamentale) nu pot fi de ncredere pentru stabilirea identit ii unei persoane. Cardurile pot fi pierdute sau furate, iar parolele sau codul PIN pot, n cele mai multe cazuri, s fie ghicite. Mai mult, parolele i cardurile pot fi date din mn n mn , astfle nct acestea nu mai pot asigur non-repudierea [1]. Recunoa terea biometric (sau simplu - biometria) se refer la utilizarea caracteristicilor anatomice (amprente, fa , iris) i comportamentale (vorbirea), numite identificatoare/tr s turi/caracteristici sau elemente biometrice pentru recunoa terea automat a persoanelor. Biometria devine o component esen ial a unor solu ii eficiente de identificare a persoanelor, deoarece datele biometrice nu pot fi mp rt ite/partajate sau r t cite i ele reprezint reprezint n mod intrinsec identitatea corporal a individului. Recunoa terea unei persoane dup trupul ei, iar apoi conectarea trupului la o identitate prestabilit (stabilit extern), formeaz un instrument foarte puternic de management al identit ii, cu consecin e poten ial imense. Prin urmare, biometria nu este doar o probl em fascinant de cercetare a recunoa terii formelor; dac e privit din unghiul potrivit, aceast e o tehnologie cu mare poten ial de a transform societatea noastr ntr -una mai sigur , de a reduce frauda i de a oferi confort utilizatorului (o interfa om-ma in u or de utilizat). Cuvntul biometrie este derivat din cuvntul grecesc bios (care nseamn via ) i metron (nsemnnd m sur ); datele biometrice sunt m sur tori ale corpului uman viu. Probabil c toate datele biometrice sunt o combin a ie a caracteristicilor anatomice i comportamentale i nu ar trebui clasificate exclusiv ntr-o categorie sau alta. Spre exemplu, amprentele sunt, n mod natural, anatomice, ns folosirea dispozitivului de intrare (de ex. n care un utilizator pune degetul pe cititrorul de amprent ) depinde de comportamentul persoanei respective. Astfel, intrarea n dispozitivul/motorul de recunoa tere reprezint o combina ie de caracteristici att anatomice, ct i
3

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

comportamentale. n mod similar, vorbirea/discursul se determin par ial din tractul vocal care produce vorbirea i par ial din felul n care o persoan vorbe te. Adesea, poate fi observat o similitudine n vorbire ntre p rin i, copii i fra i. Acela i argument se aplic i n cazul fe ei: fe ele gemenilor identici pot fi extrem de asem n toare la na tere, dar pe m sur ce ace tia cresc i se dezvolt , chipurile lor se schimb n func ie de comportamentul i personalitatea fiec ruia (de ex. diferen e n stilul de via , ce conduc la diferen e de greutate corporal , etc.). O mul ime de ntreb ri referitoare la identitatea unei persoane sunt puse n fiecare zi, ntr-o varietate de contexte. Este aceast persoan autorizat s ntre n aceast institu ie? Este acest individ ndrept it cu drept de acces privilegiat la informa ie? Este aceast persoan c utat pentru comiterea unei crime? E posibil c aceast persoan s fi primit deja anumite beneficii? Este acest serviciu administrat exclusiv de utilizatorii nscri i? R spunsuri adecvate la aceste ntreb ri sunt necesare n afaceri i n organiza iile guvernamentale. Deoarece datele biometrice nu pot fi u or pierdute, falsificate sau mp rt ite altor persoane, acestea sunt considerate mult mai sigure pentrru recunoa terea persoanelor dect metodele tradi ionale de identificare (precum buletinele de identitate) sau metodele informa ionale (cum ar fi parolele sau codul PIN). Obiectivele recunoa terii biometrice sunt confortul utilizatorului (de ex. retragerea banilor dintr-un bancomat automat f r introducerea cardului sau a cdoului PIN), o mai bun securitate (de ex. numai persoanele autorizate pot intr ntr -o incint ), o mai bun r spundere (cum ar fi dificultatea unei persoane de a nega faptul c a accesat nregistr ri confiden iale) i o eficien mai mare (de ex. n securizarea parolelor). Succesul enorm pe care l-a c tigat tehnologia de recunoa tere pe baz de amprente n institu iile de aplicare a legii a dus la sc derea costului dispozitivelor senzor de amprent , cre terea disponibilit ii de putere de cal cul ieftin , precum i cre terea fraudelor/furturilor de identitate, toate au condus la folosirea masiv a recunaosterii pe baz de amprent a persoanelor n domenii c cel civil, comercial, guvernamental i financiar. Pe lng amprentele digitale, au fost dezvoltate i implementate i alte sisteme, cum ar fi recunoa terea formei minii, a vocii, a irisului sau a fe ei [1]. y Irisul: textura vizual a irisului uman este determinat de procesele morfogenetice haotice din timpul dezvolt rii embrionare i este distinct pentru fiecare persoan i chiar pentru fiecare ochi. O imagine a irisului este de obicei capturat printr-un proces de formare a imaginii la distan . Aceast achizi ie presupune, adesea, cooperare din partea utilizatorului, att pentru nregistrarea imaginii n zona central a mediului imagistic, ct i pentru a se asigura c irisul se afl la o distan
4

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

predeterminat de planul focal al camerei. Tehnologia recunoa terii irisului s -a dovedit a fi extrem de precis i rapid pe imagini bine capturate, la rezolu ie mare. Fa a: fa a este una din cele mai acceptabile tr s turi biometrice, deoarece este una din cele mai comune metode de recunoa tere, pe care oamenii o utilizeaz n interac iunile lor vizuale de zi cu zi. Mascarea fe ei (deghizarea) este o problem de luat n seam n cazul aplica iilor de recunoa tere nesupravegheate. Este foarte dificil s se dezvolte tehnici de recunoa tere a fe ei care pot tolera efectele mb trnirii, expresiei faciale, varia iilor n mediul imagistic i a atitudinii luate n fa aparatului de fotografiat. Geometria minii i a degetului: unele tr s turi legate de mn omului (cum ar fi lungimea degetelor) sunt relativ invariante i particulare (de i nu foarte distincte) la un om. Sistemul de achizi ie a imaginii presupune cooperare din partea persoanei, pentru a captur partea frontal i lateral a imaginilor palmei, prin plasarea ferm a acesteia pe un panou, cu degetele ntinse. Cerin ele stoc rii abloanelor sunt foarte mici, ceea ce este o caracteristic pentru sisteme cu l ime de band i memorie limitate. Datorit acestor limit ri, sistemele bazate pe geometria minii sunt utilizate doar pentru verificare, nu i n aplica iile de identificare. Sistemele bazate pe geometria degetelor (care nu mai m soar geometria minii per ansamblu, ci a cel mult dou degete) sunt preferate n detrimentul celorlate, datorit dimensiunii lor compacte. Vocea: captura vocii este discret , iar vocea este singura tr s tur biometric fezabil n aplica ii ce presupun recunoa terea unei persoane prin telefon. Nu e de a teptat c vocea s fie suficient de distinctiv , pentru a permite identificarea unui individ dintr-o baz de date mare. Mai mult, semnalul unei voci disponibil pentru recunoa tere este adesea bruiat de microfon, canalul de comunica ie i caracteristicile convertorului analog-digital. Vocea este, de asemenea, afectat de factori precum s n tatea persoanei (cum ar fi o r ceal ), stres i starea emo ional . n plus, unii oameni sunt extrem de talenta i n a imita vocile altor oameni. Semn tura: modul n care o persoan i semneaz numele este cunoscut a fi o caracteristic individual . Semn turile au fost acceptate n administra iile guvernamentale, juridice i n tranzac iile comerciale pentru o perioad lung de timp. Semn tura este o tr s tur biometric acre intr n categoria celor comportamentale, care se schimb de-a lungul timpului i es te influen at de condi iile fizice i emo ionale ale semnatarilor. Semn turile anumitor persoane variaz mult: chiar copiile succesive ale semn turii lor sunt semnificativ diferite. n plus, falsificatorii profesioni ti pot reproduce semn turile altor per soane, pentru a p c li ochii neaviza i.

Elementele biometrice de identificare descrise mai sus sunt comparate n Tabelul 1.1. De notat c amprenta prezint un echilibru frumos ntre toate propriet ile dorite.
5

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

Orice fiin uman posed degete (cu excep ia persoanelor cu handicap la mini) i, prin urmare, amprente digitale. Amprentele au un caracter distinctiv pronun at i sunt permanente; chiar dac temporar se pot schimba u or, din cauza t ieturilor sau vn t ilor pe piele, amprenta reapare dup ce degetul se vindec . Cititoarele de amprente n timp real (senzorii) pot capta imaginile amprentelor u or i la calitate nalt i, spre deosebire de recunoa terea facial , n cazul acestora nu se pune problem separ rii amprentei de fundal. Totu i, ele nu sunt potrivite pentru aplica iilor sub acoperire, ascunse (ex.: supravegherea unei incinte), deoarece scannerele nu pot captur de la distan imaginea unei amprente, f r c persoan respectiv s - i dea seam . Sistemele de recunoa tere a amprentelor implementate ofer o performan bun , iar cititoarele de amprente au devenit destul de compacte i accesibile. Deoarece amprentele au o lung istorie n spate, fiind folosite n toat lumea n institu iile medico-legale pentru investiga iile de natur penal , au c p tat n timp stigmatul de criminalitate (delincvent ) cu care au fost asociate. Totu i, acest lucru se schimb rapid odat cu cererea tot mai mare pentru recunoa terea automat a persoanelor, pentru combaterea fraudelor, a furtului de identitate i ameni n rilor la adres securit ii. Cu o abordare stratificat , care implic dactiloscopia i alte tehnologii de securitate, sistemele pe baz de amprent digital sunt dificil de p c lit. Recunoa terea amprentei digitale este una dintre cele mai bine gndite tehnologii biometrice i este adecvat pentru un num r mare de aplica ii de recunoa tere a persoanei. Acest lucru se reflect i n beneficiile generate de diverse tehnologii biometrice (Figura 1.1) [1]. n Tabelul 1.1. sunt eviden iate caracteristicile celor mai utilizate elemente biometrice [1]. Tabel 1.1.

Acceptabilitate

Colectabilitate

Universalitate

Fa a Amprenta digital Geometria minii Irisul Vocea Semn tura

Mare Medie Medie Mare Mic Medie

Mic Mare Medie Mare Mic Mic

Medie Mare Medie Mare Mic Mic

Mare Mare Mare Medie Medie Medie

Mica Medie Medie Mare Mic Mic

Performan

Permanen

Element biometric

Distinctivitate

Mare Medie Medie Mic Mare Mare

Mare Medie Medie Mic Mare Mare

Rezisten ala fraudare

Fig ra 1 1 Pr entele de utilizare a diver el r tehnologii biometri e


4 3 5 43 2 2 1

de aplicabilitate a sistemelor pe baz de ampre t este foarte variat, dup Dome cum se vede i in Tab u 1 2 i Figu a 1 2 [1] Tabel 1 2 Poli ie Identificarea cadavrelor Criminalistic Copii disp ru i
E 6 D B C B A A@ 98 76

Controlul grani elor Controlul pa aportului Buletin(act de identitate Carnet de conducere Plata ajutorului social

' &

SC

Civil Securitatea social

Comercial Autentificare n re ea de calculatoare Securitatea electronic Comer ul online Acces la internet ATM, card de credit Controlul accesului fizic Telefon mobil Managementul fi elor medicale nv area la distan

)

b ov n

ndr m t ri p o un v d ng S V u d ng
 

SS
 % #     $  "           

CC S

B Z

2011

C N

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

ATM cre it
Q Q SR

lapt p & eskt p


X X

car

tra zac ii li e
P T PI

Figura 1.2. Domeniile de aplicabilitate a sistemelor pe baz de amprent

acces l web
U

verificare aer p rt

PI

re ea
W

a te tificare
W V

acces l electr i c

telef m bil

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

Capitolul 2: Fundamente teoretice

2.1. Sisteme biometrice pentru recunoa terea amprentei

O problem important n proiectarea unui sistem biometric practic este modalitatea unui individ de a fi recunoscut. n func ie de contextul aplica iei, sistemele biometrice pot folosi fie un sistem de verificare, fie unul de identificare [1]: y Un sistem de verificare autentific identitatea persoanei prin compararea caracteristicilor biometrice capturate cu cele existente, sub form unui ablon biometric stocat n sistem i realizeaz o compara ie de tip unu la unu pentru a confirma dac identitatea presupus a individului este adev rat . Un astfel de sistem fie refuz , fie accept identitatea individului; Un sistem pe baz de identificare recunoa te un individ prin c utarea sa n toate nregistr rile din baza de date, n speran a de g sire a unei potriviri. Realizeaz una sau mai multe comparari pentru a stabili dac individul este sau nu prezent n baza de date, iar dac este prezent, returneaz indentificatorul nregistr rii potrivite. ntrun sistem pe baz de identificare, identitatea subiectului ori determinarea prezen ei subiectului n baza de date se realizeaz f r ca subiectul s - i spun identitatea.

Termenul de autentificare este de asemenea folosit n sectorul biometric, uneori ca sinonim pentru verificare. n limbajul tehnologiei informa iei, autentificarea nseamn c un utilizator n tiin eaz sistemul de identitatea acestuia, f r s -i pese de modul n care se realizeaz (verificare, identificare). n Figura 2.1.[1] sunt descrise principiile de func ionare ale sistemelor de verificare i identificare. nrolarea utilizatorului, care este comun ambelor procese, este de asemenea ilustrat .

S STEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: p o univ d ing SILVIU IONI i d ing PETRE AN ELESCU ef lu
hg e e e e c c e c b f c e d c `

Figura 2 1 Procesele de nrolare, verificare i identificare


q q

Ab olven : DIACONU ALEXANDRA DIANA

10

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

Un sistem de verificare folose te procesele de nrolare i verificare, n timp ce un proces de identificare folose te procesele de nrolare i identificare. Cele 3 procese sunt [1]: y nrolarea: nrolarea utilizatorului este un proces care este responsabil pentru nregistrarea persoanelor fizice n baza de date a datelor biometrice. n timpul procesului de nrolare, caracteristica biometric aunei persoane este mai nti capturat de un cititor biometric, pentru a crea o mostr . Un control al calit ii este adesea efectuat, pentru a asigura faptul c e antionul achizi ionat este fiabil pentru a fi prelucrat n etape succesive. Un modul de extragere a tr s turilor este apoi utilizat pentru a produce un ablon de nrolare. Unele sisteme colecteaz e antioane multiple ale utilizatorului i fie selecteaz cea mai bun imagine (sau un set de caracteristici), fie mbin mai multe imagini, pentru a cre un ablon compus. Procesul de nrolare preia apoi mostr i o stocheaz ntr -o baz de date, imrpeuna cu informa ii demografice despre utilizator (precum identificator (ID), nume, gen, n l ime etc.). Verificarea: procesul de verificare este responsabil cu confirmarea identit ii atribuite persoanei. n timpul etapei de recunoa tere, un ID al persoanei (cum ar fi numele de utilizator sau codul PIN) este furnizat (ex.: printr -o tastatur ), pentru confirmarea identit ii; senzorul biometric captureaz caracteristicile persoanei i le converte te ntr-o mostr , care este ulterior procesat de modulul specializat n extragerea tr s turilor, pentru a crea un set de caracteristici. Mai departe, setul de caracteristici rezultat este transmis c tre modulul care realizeaz potrivirea, unde sunt comparate cu ablonul de nrolare al persoanei ( extras din baza de date, pe baza ID-ului ). Procesul de verificare decide dac cele dou amprente de potrivesc sau nu. Identificarea: n procesul de identificare, utilizatorul nu cere n mod explicit confirmarea identit ii; sistemul compar setul de caracteristici (extrase din mostr preluat de la senzorul biometric) cu mostrele tuturor persoanelor nregistrate n baz de date; la ie ire rezult o list candidat, care poate fi goal (dac nu s-a g sit nicio potrivire) sau poate con ine unul sau mai multe ID-uri ale mostrelor nrolate care s-au potrivit. Datorit faptului c identificarea n baze de date mari este costisitoare din punct de vedere computa ional, se apeleaz adesea la o etap de preselec ie, menit s filtreze num rul mostrelor nrolate, care urmeaz a fi confruntate cu seturile de caracteristici date c intr ri.

n func ie de domeniul aplica iei, un sistem biometric poat e opera fie ca un sistem online, fie ca unul offline. ntr -un sistem online, recunoa terea trebuie f cut rapid, i este impus un r spuns imediat (ex: autentificarea ntr -o re ea de calculatoare). Pe de alt parte ntr-un sistem offline, recunosterea nu trebuie f cut instant i este permis un r spuns ntrziat. Sistemele online sunt de multe ori complet automate, i presupun capturarea
11

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

tr s turilor biometrice de un scanner n timp real; de asemenea, procesul de nrolare nu este supervizat, nu exist control de calitate manual, iar verificarea i luarea deciziei sunt tot automate. Sistemele offline sunt adesea semiautomate, achizi ia biometric putndu-se face printr-un cititor offline (ex: scanarea unei amprente imprimat latent sau prin cerneal ); procesul de nrolare poate fi supervizat (ex: cnd un suspect este prins, poli istul este cel ce realizeaz procesul de achizi ie a amprentei); controlul calit ii se face manual, pentru a se asigur o achizi ie de calitate, iar softul care realizeaz potrivirea amprentelor poate returna o list de suspec i, care este ulterior examinat de un expert n criminalistic , pentru a ajunge la o decizie final . Procesul de verificare i identificare difer atunci cnd persoana i declar propria identitate. O declara ie biometric este definit ca o declara ie implicit sau explicit , n urm c reia se decide dac o persoan se reg se te sau nu ntr-o baz de date, pe baza datelor biometrice. Declara ia poate fi [1]: y y y y Pozitiv : persoana este nrolat . Negativ : persoana nu este nrolat . Specificat : persoana este sau nu nrolata n mod specificat. Nespecificat : persoana se regase te sau nu n setul sau subsetul de date biometrice nrolate.

Contextul aplica iei define te tipul de declara ie. n anumite situa ii, este n interesul persoanei s - i declare corect identitatea. Aceste aplica ii ncearc s previn ca mai mul i indivizi s foloseasc aceea i identitate. Spre exemplu, dac numai tefan este autorizat s ntre ntr-o anumit zon securizat , atunci este interesul oric rei persoane care vrea s fraudeze sistemul, s fure identitatea lui tefan, pentru a avea acces n acea zon . Dar sistemul trebuie s fie capabil s permit accesul numai lui tefan. Dac d gre n a potrivi mostra preluat i nrolat de la tefan cu datele achizi ionate, accesul este interzis, iar n caz contrar este permis. n cazul altor aplica ii, este n interesul persoanei s - i declare fals identitatea. Aceste aplica ii au scopul de a mpiedica o persoana s - i atribuie mai multe identit i. Spre exemplu, dac tefan a primit deja anumite beneficii sociale, este tentat s - i declare o identitate fals , sus innd ca se num r printre persoanele care nu au primit nc ajutorul social, profitnd astfel a dou a oar de acest beneficiu. Sistemul ar trebui s recunoasc identitatea fals prin compararea datei biometrice preluat de la tefan cu abloanele deja nregistrate n baza date ale tuturor oamenilor care au beneficiat de ajutor social.

12

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

Urm toarele trei tipuri de declara ii de identitate sunt folosite n func ie de contextul aplica iei: y declara ie pozitiv specificat : aplica ii precum controlul accesului logic (ex.: autentificarea ntr-o re ea de calculatoare) pot necesit o declara ie pozitiv specificat (printr-un nume de utilizator sau PIN). Un sistem biometric de verificare este suficient n acest caz pentru a confirma dac declara ia e adev rat sau nu, printr-o compara ie de tip unu la unu. declara ie pozitiv nespecificat : aplica ii precum controlul accesului fizic pot necesit o declara ie pozitiv nespecificat , verificnd dac o persoan are sau nu acces la o facilitate. Un avantaj al acestui scenariu este c individul nu este obligat s - i declare identitate n mod specificat (nu este necesar s - i spun numele de utilizator sau codul PIN) a lucru foarte convenient. Totu i, dezavantajul acestui scenariu este acela c necesit un sistem biometric de identificare (ceea ce presupune un timp mare de r spuns i o acurate e sc zut , datorit comparatiilor de tipul unul la mai mul i ). declara ie negativ nespecificat : aplica ii precum controlul vamal presupun de multe ori declara ii negative (false) nespecificate, de exemplu n cazul n care individul nu este inclus ntr -o list de verificare i prin urmare trebuie folosit un sistem de identificare. De notat faptul c metodele tradi ionale de recunoa tere, bazate legitimatii sunt total dep ite, deoarece dac pa apoartele sunt falsificate (sau dac oamenii ob in pa apoarte duplicat sub diferite nume), problema identit ii dulble sau nregistr rilor multiple nu poate fi rezolvat .

Procesele de nrolare, verificare i identificare implicate n recunoa terea utilizatorului utilizeaz urm toarele sisteme de module [1]: y Captura: o reprezentare digital a caracteristicilor biometrice trebuie s fie citit i capturat . Un senzor biometric, precum cititorul de amprente, este una din piesele centrale a unui modul de captur biometric . Reprezentarea digital capturat a caracteristicilor biometrice este adesea cunoscut ca mostr ; de exemplu, n cazul unui sistem de amprente, imaginea brut a amprentei digitale capturat de cititorul de amprent , reprezint o mostr . Modulul de captur a datelor poate, de asemenea, s con in i alte elemente (componente), cum ar fi tastatura sau ecranul, pentru a capta alte date (care nu sunt biometrice). Extragerea tr s turilor: pentru a facilita potrivirea sau compararea, reprezentarea digital brut (mostr ) este, de obicei, ulterior procesat de un extractor de caracteristici, pentru a genera o reprezentare compact , dar expresiv , numit set de caracteristici.
13

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

Crearea abloanelor (template-urilor): modulul de creare a abloanelor organizeaz unul sau mai multe seturi de caracteristici ntr-un ablon de nrolare, care va fi ulterior salvat ntr-o baz de date. ablonul de nrolare este, de asemenea, uneori men ionat ca referin . Preselec ia i potrivirea: etap de pre-selec ie (sau filtrare) este n primul rnd utilizat ntr-un sistem de identificare, n cazul n care num rul template -urilor nrolate este mare. Rolul s u este de a reduce dimensiunea efectiv a bazei de date template ( ablon), astfel nct amprenta dat ca intrare trebuie s fie potrivit (comparat ) cu un num r relativ mic de template-uri ( abloane). Etapa de potrivire (sau comparare) preia un set de caracteristici i un template de nrolare c intr ri i calculeaz similitudinile ntre ele, n termeni de scor de potrivire, de asemenea cunoscut ca scor de similitudine. Scorul de potrivire este comparat cu un prag de sistem, pentru a lua decizia final ; dac scorul de potrivire este mai mare dect acel prag, persoana este recunoscut sau nu - n caz contrar. Stocarea datelor: este dedicat stoc rii abloanelor i a altor informa ii demografice despre utilizator. n func ie de aplica ie, ablonul poate fi stocat n dispozitive de stocare interne sau externe, sau poate fi nregistrat pe un smart card emis utilizatorului. Grafic, acestea sunt reprezentate n Figura 2.2. [1] Date Imagine Prelucrare de imagine Extragere de caracteristici List de caracteristici

Captur imagine

Baza de date

Potrivire

Rezultat Figura 2.2. Module utilizate n sistemele de recunoa tere a amprentelor

14

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: p of. univ. d . ing. SILVIU IONI i d . ing. PETRE AN ELESCU ef lu
vu s s s r t s s

Ab olven : DIACONU ALEXANDRA DIANA


x w

2.2. Algoritmi folosi i n rec noa terea am rentelor

De-a lungul timpului s-a pus problema dezvolt rii unor algoritmi c t mai eficien i t pentru identificarea amprentelor. n ansamblu, e ist patru categorii mari de algorimi: y y y y Algoritmi baza Algoritmi baza Algoritmi baza Algoritmi baza i pe potrivirea global ; i pe analiza spectrului; i pe distan e i orient ri; i pe potrivirea am nun it .
y

Cele mai multe sisteme de identificare automat a amprentelor (AFIS Automatic Fingerprint Identification Systems utilizeaz algoritmi baza i pe pot i i am nun it a amprentei dactile, n care se analizeaz structura local a amprentelor, cu privire la punctele de am nunt, numite n literatura de specialitate i pun t minutia. i O amprent const n reproducerea aspectului e teror al epidermei degetului, fiind st intercalate. ntr-o imagine de amprent digital , crestele alc tuit din v i i (denumite i linii) sunt ntunecate, pe c nd v ile apar ca regiuni luminoase, a a cum se vede n Figu a 2.3. [1]. Crestele variaz n l ime ntre 100 m i 300 m, iar perioada unui ciclu creast /vale este de aproximativ 500 m. Cele mai multe leziuni la un deget, cum ar fi arsuri superficiale, abraziuni sau t ieturi, nu afecteaz structura de crestelor, astfel c modelul amprentei originale se reface ori de c te ori cre te o nou piele [1].

Figura 2 3 Creste i v i ntr-o imagine de amprent digital


15

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: p of. univ. d . ing. SILVIU IONI i d . ing. PETRE AN ELESCU ef lu

Ab olven : DIACONU ALEXANDRA DIANA


Unicitatea unei amprente const tocmai n dispunerea geometric (topologia) crestelor i a v ilor, care la rndul s u determin topologia punctelor minutia. Acestea se mpart n dou mari categorii: pun t t minal i pun t bifu a i (Figu a 2.4.).
g e f d e d e f e e d

Figura 2 4 Puncte minutia


h h

O amprent complet con ine aproximativ 100 puncte minutia,dintre care sistemele de identificare utilizeaz aproximativ 30-60 puncte. Pentru a putea extrage caracteristicile unei amprente (punctele minutia), este necesar o etap de p p o sare a imaginii amprentei. Acest procedeu, la rndul s u, presupune parcurgerea mai multor pa i, i anume: y y y y y y Conversia imaginii din color (RGB) n grayscale (256 niveluri de gri); Normalizarea Detec ia conturului liniilor papilare; mbun t irea imaginii prin aplicarea unui filtru bazat pe transformata Fourier ; Binarizarea (digitizarea imaginii); Sub ierea i mbun t irea liniilor papilare.
l jk i i j

Dup ce imaginea a fost preprocesat , urmeaz etapa de pro esare (extragerea tr s turilor), constituit , la rndul ei, din urm torii pa i: y y y y Identificarea punctelor minutia; Eliminarea punctelor minutia false (crlige, poduri, insuli e, sc ri e, creste ntrerupte, puncte izolate); Calculul orient rii punctelor minutia; Potrivirea amprentelor.

16

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

2.2.1. Conversia imaginii originale a amprentei n grayscale

Amprenta dactil este captat si stocat sub form de imagine de tip rastru (matrice de pixeli), n format .bmp, color, pe 24 de bi i. Fiecare pixel este definit prin 3 grupe de cte 8 bi i, cu valori ntre 0 si 255, definind cantitatea de ro u, verde si a lbastru (RGB). ntr-o imagine grayscale, valoarea fiec rui pixel reprezint un singur e antion ce transport doar informa ie despre luminan . Este compus exclusiv din nuan e de gri (256 de niveluri), variind de la negru de cea mai slab intensitate pn la alb de cea mai nalt intensitate. De asemenea, este stocat tot n format RGB, pe 24 bi i, cte 8 bi i pentru fiecare culoare din pixel, cu deosebirea c se utilizeaz 256 de nuan e de gri [2]. Pentru realizarea conversiei imaginii originale n imagine de tip grayscale, am extras n primul rnd culorile ro u, verde i albastru pe cte 8 bi i fiecare, din fiecare pixel. Utiliznd aceste valori, am aplicat urm toarea formul [3]: X = R * 30 / 100 + G * 59 / 100 + B * 11 / 100 Valoarea X ob inut n urma calculului efectuat reprezint noua valoare pentru fiecare din cele trei culori primare R, G i B. Acesta este principiul pe care se bazeaz conversia imaginii grayscale din imaginea original , prin atribuirea aceleia i valori celor trei culori primare din cadrul fiec rui pixel din imagine.

2.2.2. Normalizarea

Calitatea structurii crestelor ntr-o imagine de amprent dactil reprezint o carateristic foarte important , ntruct crestele sunt purt toare de informa ie a caracteristicilor tr s turilor, necesare extragerii punctelor minutia. Ideal, ntr -o imagine de amprent bine-definit , crestele i v ile ar trebui s alterneze si s urmeze cursul unei singure direc ii, locale. Aceast regularitate faciliteaz detec ia crestelor i, concomitent, permite extragerea cu precizie a punctelor minutia, dup sub ierea cr estelor (liniilor) [4]. n practic , ns , o imagine a unei amprente nu va fi niciodat bine-definit , din cauza elementelor de zgomot, care altereaz calitatea structurii liniilor. Acest lucru se poate ntampla din cauza varia iilor pielii, condi iilor de mediu cum ar fi murd ria, umiditatea, dar i din cauza unui contact neuniform cu dispozitivul de captur a amprentei (senzorul). Astfel,

17

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

tehnicile de mbun t ire a imaginii sunt adesea folosite pentru reducerea zgomotului i pentru a spori eviden ierea crestelor n raport cu v ile. Pentru a realiza acest lucru, am reprezentat imaginea grayscale a amprentei printro matrice p trat de dimensiunea imaginii. Fie Iimaginea i N dimensiunea acesteia, iarI (i , j)reprezint intensitatea pixelului de pe linia i si coloana j. Valoarea medieM( I ) i dispersia VAR( I )imaginii grayscale sunt definite astfel [4]:
   

Normalizarea este utilizat pentru a standardiza valorile intensit ilor n imagine, ajustnd valorile nivelurilor de gri, astfel ncat s se ncadreze ntr-un interval de valori dorit. Fie N( i, j )valoarea normalizat a nivelului de gri a pixelului cu coordonatele ( i, j ). Imaginea normalizat este definit ca [4]:



unde i reprezint valoarea medie, respectiv dispersia dorite. Normalizarea este o opera ie la nivel de pixel i nu schimb n niciun fel claritatea i structura crestelor (liniilor). Scopul principal al normaliz rii este de a reduce disperia valorilor de gri de-a lungul crestelor, fapt care faciliteaz etapele ulterioare de prelucrare.

,

2.2.3. Detec ia conturului liniilor


Detec ia conturului unei imagini este un proces foarte important n calcularea aproximativ a valorii magnitudinii gradientului n fiecare punct (i, j) a unei imagini grayscale dat ca intrare. Prin gradientul unui pixel n elegem valoarea intensit ii acelui pixel din imagine, respectiv nivelul acestuia de gri, iar magnitudinea reprezint valoarea absolut (modulul) gradientului. Acest proces este un pas foarte important spre n elegerea tr s turilor imaginii amprentei digitale, deoarece conturul liniilor papilare con in informa ii importante cu privire la amprent i ac ioneaz ca un filtru, eliminnd detaliile mai pu in semnificative i p strnd, n schimb, propriet ile structurale importante ale imaginii. Majoritatea imaginilor amprentelor con in o anumit cantitate de elemente redundante, care pot fi eliminate dup ce marginile crestelor au fost detectate i ulterior ref cute.
18

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

Problema ob inerii unei valori potrivite a magnitudinii gradientului const n metoda folosit . Astfel, operatorul Sobel efectueaz o m surare 2D , spa ial , a intensit ilor gradien ilor n imagini. Transferarea unei matrici 2D de pixeli n set de date necorelate statistic spore te eliminarea datelor redundante. Ca urmare, reducerea cantit ii de date este necesar pentru a reprezenta o imagine digital . Metoda Sobel de detec ie a conturului utilizeaz o pereche de m ti de convolu ie de dimensiuni 3x3, una pentru estimarea gradientului pe direc ia X, iar cealalt pentru estimarea gradientului pe direc ia Y a pixelului. Detectorul Sobel este deosebit de sensibil la zonele de zgomot din imagini, eviden iindu -le n mod eficient ca margini. Prin urmare, operatorul Sobel este recomandat n comunicarea masiv de date, inclus n transferul de date [5]. Majoritatea metodelor de detec ie a conturului merg pe ideea c marginea apare acolo unde exist o discontinuitate n func ia care calculeaz intensit atea imaginii, sau exist un contrast mare ntre intensitatea gradien ilor din imagine. Concret, metoda gradientului detecteaz conturul prin c utarea maximului i minimului n prima derivat a imaginii. Folosind aceast ipotez , dac se calculeaz derivata valorii intensit ii n fiecare punct din imagine, acolo unde derivata este maxim , a fost detectat marginea. Gradientul este un vector ale c rui componente m soar ct de rapid se schimb (variaz ) valorile pixelilor cu distan a pe direc iile X i Y. Astfel, componetele gradientului pot fi g site folosind urm toarea aproxima ie [5]:

unde dx i dy m soar distan a de-a lungul direc iilor X , respectiv Y. n cazul imaginilor discrete, dx i dyse pot considera ca fiind num rul de pixeli dintre cele dou puncte.dx=dy=1 (spa iu de dimensiunea unui pixel) reprezint punctul unde coordonatele pixelului sunt (i, j). Astfel,

n scopul detect rii unui gradient de discontinuitate, se calculeaz schimbarea gradientului la pixelul de coordonate (i, j).Acest lucru poate fi realizat, calculnd magnitudinea gradientului, cu urm toarea formul :

iar direc ia gradientului

este dat de formula:

19

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

Operatorul Sobel este un caz particular al metodei gradientului i reprezint un operator diferen ial, care calculeaz aproximarea gradientului func iei de intensitate a imaginii. n acest caz, operatorii diferen iali i se calculeaz prin opera ia de convolu ie a imaginii cu urm toarele m ti [5]:
  

Un avantaj al folosirii unei m ti de dimensiuni mai mari este acela c erorile cauzate de zgomot sunt reduse, prin calcularea mediei locale pentru pixelii din vecin tatea m tii. Un avantaj i maimare se ob ine, ns , utiliznd o masc de dimensiune impar , deoarece operatorii sunt centra i i astfel pot oferi o estimare care se bazeaz pe centrarea ntr-un pixel de coordonate (i, j). M tile pentru acest tip de operator Sobel sunt urm toarele [5]:
     

 

Operatorul Sobel calculeaz gradientul intesit ii imaginii n fiecare punct, determinnd direc ia celei mai mari cre teri (tranzi ii) posibile de la lumin la ntuneric, precum i rata de schimbare n aceast direc ie. Rezultatul arat ct de brusc sau lent se schimb imaginea n acel punct i, prin urmare, ct de probabil este ca acea parte a imaginii s reprezinte o margine, precum i dac acea margine este orientat sau nu. n practic ns , calculul magnitudinii (probabilitatea existen ei unei margini) este mult mai u or i sigur de interpretat dect calculul direc iei. Matematic, gradientul unei func ii de dou variabile (func ia de intensitate a imaginii), calculat n fiecare punct al imaginii, reprezint un vector bidimensional, avnt componentele date de derivatele calculate pe direc iile orizontal i vertical . n fiecare punct al imaginii, valorile vectorului gradient date de direc ia celei mai mari cre teri n intensitate, precum i lungimea acestuia, corespund ratei schimb rii n acea direc ie. Acest lucru implic faptul c rezultatul aplic rii operatorului Sobel n orice punct din imagine care se afl ntr-o regiune a imaginii de intensitate constant , este un vector de zerori, pe cnd la un punct aflat pe contur (margine), rezultatul este un vector cu valori ale c ror pixeli cresc n intensitate, de la negru spre alb. n principiu, operatorul Sobel poate fi implementat software definind matricea A de dimensiunea imaginii i dou matrici Gx i Gy corespunz toare unor imagini n care fiecare punct reprezint aproximarea pe orizontal i vertical a derivatei func iei de intensitate a imaginii surs . Matricile Gx i Gy se calculeaz prin convolu ie cu matricea A, astfel [6]:
     

       

       

20

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

unde * reprezint operatorul pentru convolu ie. n fiecare punct din imagine, aceste valori se combin magnitudinea gradientului, dat de formula: pentru a rezulta

iar direc ia gradientului este dat de formula:

unde, de exemplu, partea stng [6].

este 0 pentru o creast (linie) vertical , care este mai ntunecat pe

Trecnd de la principiul de implementare la practic , matricea A a imaginii se mparte n blocuri de dimensiune 3x3, iar operatorul Sobel se calculeaz pentru fiecare bloc n parte, adic pentru fiecare punct din imagine analizat, se consider cei 8 pixeli din jurul s u, cu care se fac opera ii aritmetice simple, care au ca rezultat un num r ntreg. Considernd P(x,y) pixelul central, analizat, Gx i Gy se calculeaz astfel [6]:


2.2.4. Filtru bazat pe transformata Fourier

Performan a algoritmului de extragere a caracteristicilor amprentei i de potrivire depinde foarte mult de calitatea imaginii amprentei ce se vrea a fi verificat , iar aceast calitate e dat de structura crestelor (liniilor) amprentei [7]. Tehnica cea mai utilizat pe scar larg pentru mbun t irea imaginii unei amprente se bazeaz pe utilizarea de filtre contextuale. n filtrarea standard a imaginilor se folose te un singur filtru care se aplic pe ntreaga imagine. n cazul filtr rii contextuale, parametrii filtrului se schimb n func ie de structura local a crestelor. Astfel, imaginea este

21

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

divizat n blocuri de 32x32 pixeli care nu se suprapun, iar pentru fiecare bloc n parte se aplic un filtru, pentru mbun t i imaginea local a amprentei. Pentru a realiza acest lucru, am folosit un filtru bazat pe Transformata Fourier Rapid (TFR). Astfel, imaginea n domeniul frecven a amprentei, rezultat n urma aplic rii TFR, este convolutat cu spectrul de putere ridicat la o putere k, determinat experimental. Expresia de calcul a imaginii mbun t ite este urm toarea [7] [10]:
 

unde: reprezint imaginea mbun t it ; reprezint imaginea (n domeniul frecven ) n urma aplic rii TFR;

 

reprezint spectrul de putere;

este num rul de puncte n care se aplic TFR.


 


este imaginea rezultat

n urma

aplic rii TFR inverse rezult deci imaginea mbun t it . Spectrul de putere con ine informa ie despre orientarea dominant a crestelor, precum i despre frecven . Convolutnd de mai multe ori TFR aplicat pe fiecare bloc cu spectrul de putere, se ob ine efectul de mbun t ire a imaginii. Puterea k a spectrului de putere este o constant determinat experimental, cu valoarea k=0.45. O valoare mai mare a lui k mbun t este aspectul crestelor, umplnd golurile mici aflate in ele. O valoare prea mare poate avea ca rezultat fals al turarea (alipirea) crestelor, astfel c o termina ie s-ar putea transforma ntr-o bifurca ie. Dup cum spuneam mai sus, transformata Fourier a unei imagini este o reprezentare n domeniul frecven . O prelucrare de imagine bazat pe transformata Fourier are loc n trei pa i: y y y Se calculeaz transformata Fourier a imaginii; Se proceseaz reprezentarea n domeniul Fourier (n cazul nostru se aplic filtrul descris mai sus); Se calculeaz transformata Fourier invers , ob inndu-se imaginea prelucrat . Transformata Fourier a unei imagini este definit astfel [8]:
22

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: p of. univ. d . ing. SILVIU IONI i d . ing. PETRE AN ELESCU ef lu
qp n n n m o n n

Ab olven : DIACONU ALEXANDRA DIANA


s r

iar inversa transformatei Fourier este:

Domeniul Fourier este complex i poate fi reprezentat ca:

iar n prelucrarea imaginilor se folosesc amplitudinea i faza:

Fie I(x un semnal 1D. Transformata Fourier a func iei I(x este:
t t

unde

, iar u reprezint frecven a.

Semnalul F(u) poate fi transformat din domeniul frecven ei n domeniul spa ial prin transformata Fourier invers [8]:

|F(u)|reprezint spectrul amplitudinii semnalului. I(x) se descompune ntr-un set de componente de und sinusoidal , f(x). Fiecare punct n |F(u)|specific amplitudinea i frecven a unei singure componente sinusoidale de und (Figu a. 2.5.) [8]:
u

Figura 2 5 Unda sinusoidal f(x) i reprezentarea ei n domeniul frecven


w v v v

|F(u)|
23

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

O func ie bidimensional (2D), I(x,y) (o func ie imagine) se descompune ntr-un set de frecven e spa iale F(u,v). Un punct F(u,v) este o masur a frecven ei spa iale (u,v) n imagine. O frecven a spa ial F(u,v) este o suprafa cu ondula ii sinusoidale a c ror rat de ondula ie este dat de distan a punctului (u,v) fa de origine: . Deci, toate frecven ele spa iale cu aceea i rat de ondula ie se reprezint prin puncte aflate pe circumferin a unui cerc: r= . de axa OX) este dat de Un singur

Orientarea suprafe ei (unghiul fa

punct, F(u,v), ne spune ct de mult dintr-o anumit frecven

este con inut ntr-o imagine.

Fie I(x), , o secven discret reprezentnd un semnal 1D e antionat. Transformata Fourier a semnalului astfel reprezentat se nume te transformata Fourier discret (TFD) [9]:

O imagine I(x,y) este un semnal discret bidimensional, cu . Transformata Fourier discret (TFD) a imaginii este dat de formula:

iar transformata Fourier discret invers (ITFD) este:

Pentru o secven poate scrie i astfel:

discret reprezentnd un semnal 1D e antionat, TFD se mai

unde

, iar

reprezint secven a de N valori.

24

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

Pentru reducerea volumului de calcule s-a mers pe ideea folosirii transformatei Fourier Rapide (TFR) , prin care secven a de N valori este mp r it n subsecven e tot mai mici, n care opera iile de calcul sunt de acela i tip, datorit simetriei i periodicit ii exponen ialelor secven elor date. . Se opereaz cu , ceea ce permite divizarea continu cu 2 a

Am ales pentru calculul TFR algoritmul cu decimare n timp [9]. Acesta presupune divizarea n subsecven e mai scurte a secven ei care con ine N=2 e antioane, astfel nct secven a X[k] s rezulte din combinarea transformatelor corespunz toare. Acest lucru este posibil datorit urm toarelor propriet i ale secven ei { }, care se verific imediat, innd seama c :

Ultimele dou egalit i ilustreaz simetria, respectiv periodicitatea secven elor

n cazul algoritmului TFR cu decimare n timp, secven a de intrare , n=[0,N-1] se mparte n dou secven e: par i impar , separnd e antioanele cu indice par de cele cu indice imapar.:


Separnd secven a par de cea impar n expresia pentru

se ob ine:

Avem c : rezult :
 

Se observ c acestea reprezint TFD a secven ei pare, respectiv impar . Avem:

25

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: p of. univ. d . ing. SILVIU IONI i d . ing. PETRE AN ELESCU ef lu
{z x x x y x x

Ab olven : DIACONU ALEXANDRA DIANA


} |

Secven ele

au perioada N/2, prin urmare:

Descompunerea unei TFD de lungime N, n 2 TFD de lungime N/2, N=8 utiliznd , algoritmul de decimare n timp, se face ca n Figu a 2.6. [9].
~

Figura 2 6 Descompunerea unei TFD utiliz nd algoritmul de decimare ntimp


 

-1

Figura 2 7 Reprezentarea grafic a unei etape de divizare (structur fluture)


 

26

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

se nume te factor de rota ie. Diviziunea cu 2 a secven elor din Factorul domeniul timp este continuat . Secven ele i se ob in din subsecven e de lungime N/4. Decimarea n timp se repet de m ori, n ultima etap de divizare cu 2 ob inndu-se TFD cu N=2, care necesit o adunare i o sc dere, deoarece aici factorul de rota ie este .
X(0)

x(0)

TFR de
x(4) x(2)

lungime N/4

X(1) X(2)

TFR de
x(6)

-1 -1

lungime N/4

X(3)

x(1)

TFR de
x(5) x(3)

-1 -1 -1

X(4) X(5) X(6) X(7)

lungime N/4

TFR de
x(7)

-1 -1

lungime N/4

-1 Figura 2.8. Graful pentru TFR cu decimare n timp pentru N=8

-1

Figura 2.9. Graful pentru TFR cu decimare n timp pentru N=2

27

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

O caracteristic important a TFR cu decimare n timp este faptul c ordinea datelor de intrare , nu este cea natural, n timp ce datele de ie ire apar n ordine natural . Ordinea intr rilor nu este ntmpl toare, ci urmeaz legea de inversiune binar , n care ordonarea se face cu inversarea bi ilor . n aceast ordonare, pozi ia n ocupat de e antionul de intrare cu indicele n, are n cod binar num rul n reprezentat n ordinea inversat a bi ilor. n Tabelul 2.1. [9] se ilustreaz inversarea bi ilor pentru cazul N=8.

Tabelul 2.1. Ordinea e antioanelor la intrare pentru TFR cu decimare n timp, N=8 Indexul e antionului de intrare Zecimal Binar 0 000 1 001 2 010 3 011 4 100 5 101 6 110 7 111 Indexul e antionului cu inversarea bi ilor Binar Zecimal 000 0 100 1 010 2 110 3 001 4 101 5 011 6 111 7

Mai sus am explicat algoritmul de calcul TFR n N=8 puncte. Avnd n vedere faptul c voi aplica TFR pe fiecare bloc de dimensiune 32x32 pixeli al imaginii, rezult c vom avea N=32 de puncte, ceea ce nseamn c m va fi egal cu 5 ( ). Valorile pixelilor din matricea imaginii vor fi procesate i, n urma aplic rii TFR, ele vor fi salvate ntr-o nou matrice, n fiecare loca ie va fi un vector cu dou valori: partea real i partea imaginar a valorii fiec rui pixel procesat prin TFR. Tot pe noua matrice vor fi procesate valorile n vederea ob inerii imaginii filtrate (prin convolutarea imaginii n domeniul frecven cu spectrul de putere).

28

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: p of. univ. d . ing. SILVIU IONI i d . ing. PETRE AN ELESCU ef lu

Ab olven : DIACONU ALEXANDRA DIANA


2 2 5 Binarizarea (digitizarea imaginii)


Pentru conversia imaginii din grayscale n alb-negru (binarizarea sau digitizarea ei), am folosit al oritmul lui Otsu, bazat pe histograma imaginii. u Histo rama unei imagini reprezint frecven a relativ de apari ie a nivel rilor de gri din imagine. Pentru o imagine I, de dimensiune NxN pixeli, histograma se define te astfel [11]:

 unde func ia este definit n modul urm tor:   iar L reprezint num rul de niveluri de gri (256). Din punct de vedere statistic, putem considera valoarea fiec rui pixel al imaginii ca o realizare particular a unei variabile aleatoare asociat nivel rilor de gri, caz n care u histograma reprezint func ia de densitate de probabilitate a acestei variabile aleatoare. Fiind o func ie de densitate de probabilitate, histograma oric rei imagini verific urm toarea condi ie de normare: 

Practic, calculul histogramei presupune parcurgerea pixel cu pixel a im aginii i contorizarea num rului deniveluri de gri ntlnite. De exemplu, pentru o imagine de 6x6, cu 6 niveluri de gri, histograma ar ar ta n felul urm tor (Figu a 2.10., Figu a 2.11.) [12]:

Figura 2 10 O imagine cu 6 niveluri de gri i histograma asociat


29

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: p of. univ. d . ing. SILVIU IONI i d . ing. PETRE AN ELESCU ef lu

Ab olven : DIACONU ALEXANDRA DIANA


8 pixeli

7 pixeli

2 pixeli

6 pixeli

9 pixeli

4 pixeli

Figura 2 11 Fundalul (st nga), respectiv prim-planul (dreapta) imaginii

Pe baza histogramei, algoritmul lui Otsu de binarizare a imaginii presupune stabilirea unui prag optim T (nivel de gri), menit s separe pixelii negri de cei albi. Acest lucru se face prin parcugerea mai multor pa i [12]: Calculul sumei ponderilor nivelurilor de gri ce apar in fundalului imaginii:  

Calculul sumei ponderilor nivelurilor de gri din prim-planul imaginii:  

Calculul num rului de pixeli din fundal (ponderea fundalului):  Calculul num rului de pixeli din prim-plan: Calculul valorii medii a fundalului: 

Calculul valorii medii a prim-planului:

Calculul discriminantului:
30

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: p of. univ. d . ing. SILVIU IONI i d . ing. PETRE AN ELESCU ef lu

Ab olven : DIACONU ALEXANDRA DIANA


Pentru stabilirea pragului T se ia n considerare valoarea discriminantului, care trebuie s fie maxim . Pentru o calitate bun a imaginii, procesul de binarizare nu se aplic pe toat imaginea, ci chiar pe fiecare bloc de 32x32 pixeli n parte, imediat dup ce a fost filtrat pe baza transformatei Fourier rapide. Vor fi astfel valori diferite ale pragului T pentru fiecare bloc n parte. Pentru exemplul de mai sus, n care am considerat o imagine de 6x6 pixeli cu 6 niveluri de gri, pragul optim este =3, iar imaginea binarizat dup aplicarea pragului arat astfel (Figu a 2.12.) [12]:

Figura 2 12 Rezultatul metodei Otsu de binarizare a imaginii


2 2 6 Sub ierea i mbun t irea liniilor


Pornind de la imaginea binar rezultat n urma proces rii imaginii papilare, detec ia capetelor de creast i a bifurca iilor (punctelor minutia) presupune urm toarele etape: Sub ierea liniilor; Detec ia i clasificarea detaliilor (caracteristicilor); Reducerea num rului de detalii false detectate (eliminarea punctelor minutia false).

Sub ierea liniilor joac un rol important n etapa de procesare a imaginii. Aceast metod const n eliminarea detaliilor redundante ale liniilor papilare i reducere lor la a dimensiunea unui singur pixel. Procedeul este o opera ie morfologic la nivel de pixel i se mai numeste i s heleti are. O caracteristic important a acestuialgoritm const n faptul c structura ob inut nu depinde de neregularit ile mici ale conturului [13]. Ideal, procedura de sub iere trebuie sa urmeze urm toarele principii de baz :

31

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

y y y y y

Conectivitatea curbei (liniei) trebuie s fie conservat (s nu se schimbe); Forma liniilor trebuie s r mn aceea i, inclusiv intersec ile liniilor i orientarea lor ; Dup sub iere, scheletul liniei trebuie s se afle aproximativ n centrul acesteia; L imea scheletului trebuie sa fie ct mai mic posibil , ideal ar fi de un pixel grosime; Procesul de sub iere trebuie s fie ct mai rapid posibil, prin urmare trebuie s presupun un num r ct mai mic de itera ii.

Sub ierea se ob ine comparnd direct pixelii afla i ntr-o vecin tate cu magnitudinile lor. Un filtru ideal de sub iere terge un pixel dac se consider c acel pixel nu face parte din schelet. Opera iile asupra unui pixel se fac n func ie de vecin tatea acestuia. Mai exact, se lucreaz pe blocuri (nuclee) de dimensiune 3x3 pixeli, ca n Figura 2.13 . P1 P2 P3 P8 P P4 P7 P6 P5 Figura 2.13. Pixelul P ce urmeaz a fi analizat i pixelii din vecin tatea lui

n figura de mai sus, pixelul P este cel ce urmeaz a fi analizat. To i algoritmii de sub iere a liniilor merg pe ideea c valoarea unui pixel ( n=[1, 8] ) se calculeaz astfel:
     

Decizia de a terge un pixel se face analiznd trei condi ii care se pun asupra pixelilor din vecin tatea lui. Aceste condi ii de care se ine seama sunt [13]: y y y A(P) tranzi iile de la alb la negru; B(P) num rul pixelilor negri; C(P) conectivitatea.

A(P) calculeaz num rul tranzi iilor 01 din vecin tatea unui pixel P, n sensul acelor de ceasornic. Formula de calcul este urm toarea:
                       

B(P) calculeaz num rul de pixeli negri din vecin tatea lui P. Formula de calcul este urm toarea:
     

32

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

C(P) calculeaz conectivitatea, adic num rul de pixeli albi pozi iona i exact deasupra, dedesuptul, la stnga i la dreapta pixelului P analizat (astfel nct s formeze o cruce). Nu se iau n considerare pixelii de pe diagonale. Pentru fiecare pixel alb ( ) se verific dac cel pu in unul din urm torii 2 pixeli (n sensul acelor de ceasornic) este negru. Formula de calcul este urm toarea:
                

De exemplu, n Figura 2.13., pentru pixelul , urm torii 2 pixeli sunt i , iar pentru pixelul , urm torii 2 pixeli sunt i . Aplicnd cele de mai sus, dac este alb, atunci oricare din urm torii 2 pixeli (sau ambii) sunt negri i, n acest caz, valoarea lui C(P) este 1. Valoarea final a lui C(P) depinde de calculul pentru ultimii 3 pixeli r ma i: , i . Astfel, valoarea lui C(P) este ntotdeauna ntre 0 i 4 inclusiv. C(P) este exact 1 i numai dac pixelul P face parte din liniile de contur.

dac

n mod similar, valoarea lui A(P) variaz ntre 0 (cnd to i pixelii sunt ori albi, ori negri) i 4 (atunci cnd pixelii albi alterneaz cu cei negri) inclusiv. Valoarea lui B(P) este 1 dac P este pixel terminal sau se afl pe margine. Totu i, atunci cnd B(P)> 1 este dificil de precizat dac pixelul P este sau nu punct final (adic dac face parte din schelet). Un algoritm eficient de sub iere a liniilor , care se bazeaz pe condi iile A(P), B(P) i C(P) este cel propus de L Wang. Acest algoritm se bazeaz pe 2 subitera ii i nu testeaz dac un pixel este final, ci doar decide dac trebuie ters sau nu (dac e pixel de contur). Condi iile n func ie de care se ia decizia de a-l terge sau nu sunt urm toarele [13] [14]: a. C(P) = 1; b. P nu satisface condi iile de punct final, i anume: - B(P) = 1, sau B(P) = 2 i A(P) = 1; c. Pentru subitera iile impare: , sau i Pentru subitera iile pare: , sau i

Algoritmul se termin cnd nu se mai face nicio tergere pentru 2 subitera ii succesive (att pare, ct i impare).
33

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

La implementare, dac toate condi iile de mai sus sunt ndeplinite, se copiaz ntr-o matrice temporar to i pixelii care ndelinesc acele condi ii ( i urmeaz a fi ter i) i li se atribuie valoarea 1. Se caut apoi pixelii de pe pozi iile corespunz toare n matricea imaginii digitizate i se terg, atribuindu-li-se valoarea 0. mbun t irea liniilor se face n func ie de valorile pixelilor i din vecin tatea lui P. Astfel, se nsumeaz cei 4 pixeli i dac rezultatul este mai mare dect 2 (cu alte cuvinte, dac mai mult de 2 dintre ei sunt negri), atunci pixelul P va fi ters, fiind considerat ca f cnd parte din contur.

2.2.7. Identificarea punctelor minutia

Pentru identificarea punctelor minutia, se ia n considerare tot un bloc de dimensiune 3x3 pixeli. Dac pixelul central P este 1, atunci n func ie de rezultatul formulei lui Rutovitz, se ia decizia dac acel pixel este pixel terminal sau pixel bifurca ie. Formula de calcul este urm toarea [1] [15]:
 

unde sunt pixelii din vecin tatea lui P. Num rul rezultat mai poart denumirea i de num r de trecere (crossing number) . Avem 2 cazuri: Dac Dac atunci P este pixel terminal (sfr it de linie); atunci P este pixel bifurca ie.

2.2.8. Eliminarea punctelor minutia false

De i filtrul bazat pe transformata Fourier rapid a redus semnificativzgomotul din imagine, acesta nu a fost eliminat de tot, ntruct n urma aplic rii algoritmului de sub iere a liniilor au ap rut, n mod inevitabil, informa ii (pixeli) redundante. Astfel a rezultat un num r mare de puncte minutia false, care reduc semnificativ performan ele algoritmului de potrivire a amprentelor papilare.

34

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: p of. univ. d . ing. SILVIU IONI i d . ing. PETRE AN ELESCU ef lu

Ab olven : DIACONU ALEXANDRA DIANA


Algoritmul propus de Xiao i Raafat pentru eliminarea punctelor false opereaz pe imaginea binarizat i ale c rei linii papilare au fost sub iate i mbun t ite prin algoritmii descri i anterior. Algoritmul analizeaz pixelii din vecin tatea fiec rui punct minutia candidat, pentru a decide dac este un punct minutia fals sau nu i terge punctele considerate ca f cnd parte din structuri minutia false, cum ar fi crlige, goluri, insuli e, sc ri e sau poduri (Figu a 2.14. [16]). Fiecare astfel de structur genereaz dou sau mai multe puncte minutia false [16].

Figura 2 14 Tipuri de structuri minutia false. De la st nga la dreapta i de sus n jos, avem: crlig, pod, gaur , ntrerupere, ac, sc ri .

Structurile n form de crlig genereaz dou minutia false i pot ap rea n urma sub ierii unei linii care nu a fost netezit . Structurile n form de pod i sc ri apar de obicei ntre dou creste (linii) foarte apropiate. Crestele foarte late pot genera structuri n form de gaur , iar v ile foarte largi pot genera ace. Prezen a t ieturilor n amprent poate determina ntreruperi ale crestelor n harta imaginii cu liniile sub iate.

n plus, un num r mare de minutia false este ntotdeauna detectat lng marginile regiunilor de interes (efectul de grani ). Acest efect este tratat prin tergerea

35

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: p of. univ. d . ing. SILVIU IONI i d . ing. PETRE AN ELESCU ef lu

Ab olven : DIACONU ALEXANDRA DIANA


tuturor punctelor minutia care se afl mai jos de o anumit ablonului de amprent .

distan

fa

de grania

Pentru implementarea algoritmului, fiecare punct minutia candidat este detectat printr-o singur scanare a imaginii amprentei cu liniile sub iate, utilizndu-se blocuri de dimensiune 3x3 pixeli. Fiecare pixel integrat ntr-o linie (avnd valoarea 1) este clasificat pe baza num rului tranzi iilor de la 0 la 1 ntlnite pe traseul unei parcurgeri n sensul acelor de ceasornic, de-a lungul celor 8 pixeli afla i n vecin tate. Dac exist doar o singur astfel de tranzi ie, atunci pixelul este clasificat ca fiind posibil punct terminal. Dac num rul tranzi iilor este mai mare dect 3, atunci pixelul este posibil s fie punct bifurca ie. n toate celelalte cazuri, pixelul nu este inclus n niciun set de puncte minutia candidate. Num rul punctelor minutia candidate detectate dup principiul de mai sus este mai mare dect num rul punctelor mintia adev rate (valide) din amprent . Cele mai multe dintre punctele minutia candidate nu reprezint nimic n imaginea amprentei, fiind astfel asociate cu diferite structuri minutia false. Algoritmul de fa testeaz validitatea fiec rui punct minutia candidat, analizndo vecin tate de dimensiune x din imaginea amprentei cu liniile sub iate. Dimensiunea a vecin t ii analizate n jurul fiec rui punct minutia candidat este aleas ca fiind mai mare dect dublul distan ei medii dintre dou linii al turate n acest fel, algoritmul reu e te s . tearg punctele minutia al turate, care apar in aceleia i creste Dou exemple de astfel de . puncte minutia care sunt eliminate prin algoritm sunt ar tate nFigu a 2.15. [16].

Figura 2.15. Exemple de puncte false minutia eliminate: structur n form degaur (a) i structur n form de crlig (b)

36

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

Algoritm: 1. Se creeaz i ini ializeaz cu 0 o imagine L de dimensiune WxW. Fiecare pixel din L corespunde unui pixel din imaginea cu liniile (crestele) sub iate, aflat n interiorul unui bloc de dimensiune WxW, centrat n punctul minutia candidat. 2. Se marcheaz cu -1 pixelul central din L (Figura 2.16. a, Figura 2.17. a. [16]). Acest pixel corespunde punctului minutia candidat din imaginea amprentei cu liniile sub iate. 3. Dac punctul minutia candidat este sfr it de creast (punct terminal), atunci: a) se marcheaz cu 1 to i pixelii din L care corespund pixelilor conecta i cu punctul minutia candidat presupus ca fiind terminal din imaginea cu liniile sub iate ( Figura 2.16. b). b) se num r tranzi iile de la 0 la 1 ( ) ntlnite pe ntregul traseu parcurs n sensul acelor de ceasornic de-a lungul marginilor imaginii L (Figura 2.16. c). c) dac ,atunci punctul minutia candidat este considerat ca fiind punct terminal valid. 4. Dac punctul minutia candidat este bifurca ie, atunci: a) se parcurge un traseu complet n sensul acelor de ceasornic de -a lungul celor 8 pixeli nvecina i punctului bifurca ie candidat, i se marcheaz n imaginea L cu 1, 2, respectiv 3 cele trei componente conectate ntlnite de-a lungul acestui traseu (Figura 2.17. b). b) pentru fiecare k = 1, 2, 3 (Figura 2.17. c, d, e), se marcheaz cu k to i pixelii din L care ndeplinesc condi iile: i. au eticheta 0 (au fost marca i anterior cu aceast valoare); ii. sunt conecta i cu un pixel marcat anterior cu k; iii. corespund pixelilor cu valoarea 1 din imaginea cu liniile sub iate. c) se num r tranzi iile de la 0 la 1, de la 0 la 2 i de la 0 la 3 ntlnite de-a lungul parcurgerii unui traseu complet n sensul acelor de ceasornic, de-a lungul marginii imaginii L. Cele trei numere de mai sus sunt indicate de , , i , ca n Figura 2.17. f. d) dac   , atunci punctul minutia candidat este considerat a fi punct bifurca ie valid.

37

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: p of. univ. d . ing. SILVIU IONI i d . ing. PETRE AN ELESCU ef lu

Ab olven : DIACONU ALEXANDRA DIANA


Figura 2.16. Exemple de puncte minutia validate. Figura arat schimb rile produse n imaginea L, dup parcurgerea anumitor pa i din algoritm

Figura 2.17. Exemple de puncte minutia validate. Figura arat schimb rile produse n imaginea L, dup parcurgerea anumitor pa i din algoritm

38

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: p of. univ. d . ing. SILVIU IONI i d . ing. PETRE AN ELESCU ef lu

Ab olven : DIACONU ALEXANDRA DIANA


2.2.9. Orientarea punctelor minutia

Un pas important n identificarea amprentelor (premerg tor etapei de potrivire a dou amprente) este stabilirea orient rii pixelilor i a imaginii. Fiecare punct minutia este caracterizat prin coordonatele sale n cadrul imaginii i prin orientarea sa (unghiul pe care l face cu axa oX). (Figu a 2.18.) [17]

Punct terminal

Punct bifurca ie

Figura 2.18. Caracteristicile punctelor minutia

Orientarea imaginii O se define te ca fiind o imagine de dinensiune NxN, unde O(i, j) reprezint orientarea local a crestelor (liniilor). Orientarea local a liniilor se calculeaz , de obicei, pentru un bloc de pixeli o anumit dimensiune, dect pentru fiecare pixel n parte. Imaginea este astfel divizat n blocuri de dimensiune 16x16 pixeli, iar o singir orientare local este definit pentru fiecare bloc de pixeli n parte. De notat faptul c ntr-o imagine de amprent nu exist nicio diferen ntre o orientare local de i una de , din moment ce crestele orientate la sau la nu se diferen iaz n niciun fel una de alta. Calculul orient rii imaginii se face pe baza imaginii normalizate a amprentei i pe baza conturului imaginii, astfel c se iau n considerare gradien ii lui Sobel Gx i Gy. Pentru fiecare bloc WxW (unde W=16) de pixeli, centrat n pixelul de coordonate (i j), orientarea imaginii se culculeaz dup urm toarele formule[18]:

39

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: p of. univ. d . ing. SILVIU IONI i d . ing. PETRE AN ELESCU ef lu

Ab olven : DIACONU ALEXANDRA DIANA


unde reprezint estimarea celui mai mic p trat al orient rii locale a crestelor, n reprezint direc ia care este blocul centrat n pixelul de coordonate (i j). Matematic, ortogonal (perpendicular ) pe direc ia spectrului Fourier al blocului de dimensiuneWxW Mai departe, orientarea cmpului trebuie netezit n interiorul blocului de dimensiune WxW, iar acest lucru se realizeaz cu ajutorul unui filtru trece-jos. Mai inti ins , imaginea trebuie convertit ntr-un cmp vectorial continuu, care se define te prin urm toarele formule:

unde i sunt componentele cmpului vectorial. Pe baza cmpului vectorial rezultat se implementeaz filtrul trece-jos, dup cum urmeaz :

unde S este filtrul trece-jos bidimensional de dimensiune 5x5 pixeli, descris mai jos [19]:

40

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

n final, orientarea local define te prin formula [18]:

a crestelor (liniilor), dup

netezirea cmpului, se

n continuare, cea mai important etap ( i ultima) n identificarea amprentelor este potrivirea (matching) a 2 amprente: una dat ca intrare, ce se vrea a fi verificat , i alta aflat n baza de date, supranumit template (mostr / ablon).

2.2.10. Potrivirea amprentelor (Matching)

Potrivirea a dou amprente se face n func ie de trei parametri (caracteristici), i anume: Coordonatele X i Y ale punctelor minutia; Orientarea a punctului minutia, care este definit ca fiind orientarea local a crestelor (liniilor papilare); Tipul punctului minutia (valoarea 1 este atribuit unui punct terminal, iar valoarea 3 unui punct bifurca ie). n timpul procesului de potrivire, fiecare punct minutia din imaginea dat ca intrare este comparat cu fiecare punct minutia aflat n imaginile ablon din baza de date. Pentru fiecare din cele 2 imagini ale amprentelor, se creeaz dou liste: prima va con ine caracteristicile tuturor punctelor terminale; a doua va con ine caracteristicile tuturor punctelor bifurca ie. Se compar cele 2 liste de puncte minutia ale imaginii dat cu intrare, cu listele adiacente fiec rei imagini de amprent din baza de date. Dac se g sesc cel pu in 10 puncte corespondente, atunci cele dou amprente sunt identice.

41

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: p of. univ. d . ing. SILVIU IONI i d . ing. PETRE AN ELESCU ef lu

Ab olven : DIACONU ALEXANDRA DIANA


2.2.11. Platforma .NET Framework. Limbajul C#. Tehnologia XML

.N T este un cadru (Framework) de dezvoltare software, care permite realiz area, distribuirea i rularea aplica iilor des top Windows s i aplica iilor WEB. Tehnologia .NET pune laolalt mai multe tehnologii(ASP, XML, OOP, SOAP, WDSL, UDDI) i limbaje de programare (VB, C++, C#, J#), asigurnd totodat att portabilitatea coduluicompilat ntre diferite calculatoare cu sistem Windows, ct i reutilizarea codului n programe, indiferent de limbajul de programare utilizat [20]. Pentru dezvoltarea aplica iilor pe platforma .NET sunt necesare 3 componente esen iale: un set de limbaje (C#, Visual Basic .NET, J#, Managed C++, Perl, Lisp etc.); un set de medii de dezvoltare (Visual Studio .NET, Visio); o blibliotec de clase pentur crearea serviciilor Web, aplica iilor Web si aplica iilor des top-Windows. Componenta .NET Framework st la baza tehnologiei .NET, este ultima interfa aplica iile .NET i sistemul de operare i con ine:

ntre

limbajele C#, VB.NET, C++ i J#. Pentru a fi integrate n platforma .NET, toate aceste limbaje respect ni te specifica ii OOP, numite Common Type System (CTS). Ele au ca elemente de baz : clase, interfe e, deleg ri, tipuri valoare i referin , iar ca mecanisme: mo tenire, polimorfism i tratarea exceptiilor ; platforma comun de executare a programelor, numit Common Language Runtime (CLR), utilizat de toate cele 4 limbaje. CTS face parte din CLR. ansamblul de biblioteci necesare n realizarea aplica iilor desktop sau Web, numit Frameworks Class Library (FCL). (Figu a 2.19. [20])

Figura 2.19. Arhitectura .NET Framework

42

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

Componenta .NET Framework este format din compilatoare, biblioteci i alte exectabile n rularea aplica iilor .NET. Fi ierele corespunz toare se afl , n general, n directorul C:\WINDOWS\Microsoft. NET\Framework\... (corespunz tor versiunii instalate). Un program scris ntr-unul din limbajele .NET conform Common Language Specification (CLS) este compilat n Microsoft Intermediate Language (MSIL sau IL). Codul astfel obinut are extensia .exe, dar nu este direct executabil, ci respect formatulunic MSIL. CLR include o ma in virtual asem n toare cu o ma in Java, ce executinstruc iunile IL rezultate n urma compil rii. Ma ina folose te un compilator special JIT (Just In Time). Compilatorul JIT analizeaz codul IL corespunz tor apelului unei metode i produce codul ma in adecvat i eficient. El recunoa te secven ele de codpentru care s-a ob inut deja codul ma in adecvat permi nd reutilizarea acestuia f r recompilare, ceea ce face ca, pe parcursul rul rii, aplica iile .NET s fie din ce nce mai rapide. Faptul c programul IL produs de diferitele limbaje este foarte asem n tor, are carezultat interoperabilitatea ntre aceste limbaje. Astfel, clasele i obiectele createntr-un limbaj specific .NET pot fi utilizate cu succes n altul. n plus, CLR se ocup de gestionarea automat a memoriei (un mecanism implementatn platforma .NET fiind acela de eliberare automat a zonelor de memorieasociate unor date devenite inutile Garbage Collection). Ca un element de portabilitate, trebuie spus c .NET Framework este implementareaunui standard numit Common Language Infrastructure , ceea ce permite rulareaaplica iilor .NET, n afar de Windows, i pe unele tipuri de Unix, Linux, Solaris, MacOS X i alte sisteme de operare. Am ales .NET pentru c ofer instrumente pe care le pot folosi i n alte programe i ofer acces u or la baza de date. Spa iul de nume Systems.Windows.Forms con ine instrumente (controale) ce permit implementarea interfe ei grafice cu utilizatorul, cu ajutorul c rora am proiectat i dezvoltat rapid i interactiv elementele interfe ei grafice. De asemenea, .NET ofer clase care efectueaz majoritatea sarcinilor uzuale, cum ar fi calculul de func ii trigonometrice, gestionarea elementelor unei liste etc. Limbajul C# C# este un limbaj simplu, cu circa 80 de cuvinte cheie i 12 tipuri de date predefinite. El permite programarea strucuturat , modular i orientat obiectual, conform preceptelor moderne ale program rii profesioniste [20]. Principiile de baz ale program rii pe obiecte (NCAPSULARE, MO TENIRE, POLIMORFISM) sunt elemente fundamentale ale program rii C#. n mare, limbajul mo tene te sintaxa i principiile de programare C++. Sunt o serie de tipuri noi de date sau func iuni diferite ale datelor din C++, iar n spiritul realiz rii unor secven ede cod sigure (safe), unele func iuni au fost ad ugate (de exemplu, interfe e i deleg ri), diversificate (tipul struct), modificate (tipul string) sau chiar eliminate (mo tenirea multipl i pointerii
43

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

c tre func ii). Unele func iuni (cum ar fi accesul direct la memorie folosind pointeri) au fost p strate, dar secven ele de cod corespunztoarese consider nesigure . O aplica ie C# este format din una sau mai multe clase, grupate n spa ii de nume (namespaces). Un spa iu de nume cuprinde mai multe clase cu nume diferite avnd func ionalit i nrudite. O clas este format din date i metode (func ii). Apelarea unei metode n cadrul clasei n care a fost definit aceasta presupune specificarea numelui metodei. Apelul unei metode definite n interiorul unei clase poate fi invocat i din interiorul alteiclase, caz n care este necesar specificarea clasei i apoi a metodei separate prinpunct. C# folose te referirile metodelor, numi i delegate , n loc de pointerii la metod . Astfel se folosesc referin ele la metode, pentru a conecta repede obiectele i metodele. Referin ele la metode sunt oarecum asem n toare cu pointerii la metod din C++, dar sunt de departe mult mai elegante, sigure i folositoare, astfel c atunci cnd un delegate este invocat, sunt apelate toate metodele asociate. Principalele tr s turi ale limbajului de p rogramare C# sunt [21]:
y y y y y y y y y y y y

este un limbaj de programare orientat pe obiecte, simplu, modern, derivat din C++ i Java; scopul lui este de a combina "productivitatea" mare a limbajului Visual Basic i puterea brut a limbajului C++; face parte din pachetul Microsoft Visual Studio; versiunea Visual Studio suport Vb, VC++, C++, Vbscript, Jscript; toate aceste limbaje au prev zut accesul la platforma Microsoft .NET; platforma .NET include un motorCommon Execution, precum si o biblioteca bogata de clase; echivalentul Microsoft pentru Ma ina Virtual Java este Common Language run time (CLR); CLR g zduieste mai mult de un limbaj de felul C#, VB.NET, Jscript, ASP.NET, C++; codul surs este transformat n cod n limbaj intermediar (Intermediate Language code IL), care este transformat n cele din urm n cod nativ (JIT Compiler); tipurile de date i clasele sunt comune pentru toate limbajele .NET; n C# se pot dezvolta aplica ii pentru consol (Console application), aplica ii pentru Windows (Windows application), apl ica ii pentru Web; n limbajul C#, Microsoft s -a ngrijit de probleme ca: management-ul memoriei, pointeri; este prev zut cu facilit i de "garbage collection", management automat al memoriei si altele.

n concluzie, C# este un limbaj de programare simplu, modern, "type safe", orientat pe obiecte, care permite programatorilor s construiasc u or i rapid solu ii pentru platforma Microsoft .NET.

44

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

Tehnologia XML eXtensible Markup Language, abreviat XML, descrie o clas de obiecte numite documente XML i, par ial, comportamentul unor programe de calculator care le proceseaz . Meta-limbajul XML este o form restrns a limbajului SGML (Standard Generalized Markup Language) i a fost proiectat n scopul transferului de date ntre aplica ii pe internet, iar mai nou reprezint i un model de sticare a datelor nestructurate i semistructurate n cadrul bazelor de date native XML [22]. Avantajele folosirii documentelor XML n aplica ii complexe sunt multiple [23]: 1. extensibilitate (se pot defini noi indicatori dac este nevoie) 2. validitate (se verific corectitudinea structural a datelor ) 3. portabilitatea (ofer utilizatorilor posibilitatea de a - i reprezenta datele ntr-un mod independent de aplica ie ) 4. simplitatea i accesabilitatea (sunt fi iere text create pentru a structura, stoca i a transporta informa ia) 5. pot fi editate, modificate foarte u or (necesit precum notepad, wordpad etc.) Language-Integrated Query (LINQ) to XML reprezint o interfa comparabil cu versiunea updatat de programare doar un editor text simplu

XML n-memorie, care utilizeaz cele mai recente capabilit i ale .NET Framework i este i reproiectat a interfe ei de programare XML DOM (Document Object Model). Aceast tehnologie ofer , prin urmare, posibilitatea lucrului cu fi iere XML n cadrul limbajelor de programare ce apar in platformei .NET [24]. Un avantaj important al acestei tehnologii este capacitatea de a utiliza rezultatele interog rilor ca parametri c tre constructorii de obiecte Xelement i Xattribute, permi nd o abordare puternic pentru crearea arborilor XML. Clasa XElement este una dintre clasele fundamentale ale tehnologiei LINQ to XML i reprezint un element XML. Aceast clas este folosit pentru a crea elementele, pentru a schimba con inutul acestora; de asemenea se pot manipula elementele -copil (se pot ad uga, terge sau modifica), dar se i pot ad uga atribute elementelor [25]. Avnd n vedere toate aceste facilit i, i dat fiind faptul c baza de date necesar aplica iei de recunoa tere a amprentei, pentru a stoca datele utilizatorilor mpreun cu amprentele lor, se reduce de fapt la un singur tabel cu cteva nregistr ri, am ales implementarea acesteia i manipularea datelor cu ajutorul tehnologiei LINQ to XML.

45

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

Capitolul 3: Dezvoltarea aplica iei


n acest capitol voi prezenta descrierea aplica iei care implementeaz sistemul de acces pe baz de amprent . Logica dup care a fost construit proiectul ine seama de cele dou mari regimuri de func ionare amintite n capitolul 2 (Fundamente teoretice), i anume: de nrolare; de verificare. Indiferent de modelele propuse i adoptate pentru ciclul de via al unui produs software, dup luarea deciziei de realizare a acestuia se trece la analiza problemei reale i apoi la proiectarea produsului. Astfel, analiza i proiectarea sunt procese principale de definire a cerin elor i de concep ie a solu iei informatice pentru problema propus . Analiza este prima etap a ciclului de realizare, n care se stabilesc cerin ele aplica iei, pornind de la cerin ele utilizatorului final, se identific func ii le viitorului produs software, precum i datele implicate. Analiza trebuie s r spund la ntrebarea ce trebuie s fac viitorul produs, pornind de la cunoa terea n ansamblu a ntregului i descompunerea acestuia n elemente componente mai u or de studiat . Proiectarea este etapa ciclului de realizare, n care se stabile te modul de realizare a cerin elor identificate n etapa de analiz , adic trebuie s r spund la ntrebarea cum se vor realiza aceste cerin e, att la nivel global, ct i la nivel de detaliu. Aceast etap porne te deci de la cerin ele i specifica iile definite anterior i continu cu detalierea i transformarea acestora pn la definirea structurii unei solu ii care s fie reprezentat de folosind un limbaj grafic, textual sau mixt (n cazul nostru C#). Proiectul astfel ob inut va fi uitlizat mai departe la elaborarea produsului software (codificare, testare, integrare). Ciclul de via al unei aplica ii reprezint totalitatea etapelor care sunt parcurse n procesul de dezvoltare a apli ca iei respective. Cele mai importante etape sunt [26][27]: 1. Culegerea de specifica ii (analiza func ional ) specificarea detaliat sistemul informatic; 2. Analiza n cadrul c reia se realizeaz identificare caracteristicilor esen iale tuturor presupune definirea problemei; fie suportate de c tre

a func ionalit ilor ce trebuiesc s

solu iilor corecte posibile; 3. Proiectarea - care adaug modelelor de analiz noi elemente care definesc o solu ie particular , pe baza optimiz rii anumitor criterii;

46

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

4. Implementarea modelat

n care se realizeaz un proiect executabil al solu iei particulare

n faza de proiectare;

5. Testarea - n care se verific echivalen a implement rii cu modelul proiectat i valideaz faptul c implementarea respect criteriile de corectitudine identificate n etapa de analiz . Primele dou etape din ciclul de viat al unei aplica ii au fost realizate n Capitolul 1 (Introducere), respectiv Capitolul 2 (Fundamente teoretice). Realizarea etapelor 3, respectiv 4 se vor face n Capitolul 3 (Dezvoltarea aplica iei), urmnd ca etapa a 5-a s se fac n Capitolul 4 ( Testarea aplica iei i evaluarea aplica iei ).

3.1. Proiectarea aplica iei


Aceast etap a proiectului presupune stabilirea elementelor de proiectare ce nu in neap rat de design, ci mai mult de func ionalitatea software-ului. La rndul ei, aceast etap se descompune n dou subactivit i: Proiectarea de ansamblu, denumit i logic sau arhitectural , care n orientarea obiectual corespunde proiect rii de sistem sau, mai concret, schema bloc a aplica iei. Proiectarea de detaliu, denumit i fizic sau structural , care n orientarea obicetual corespunde proiect rii obiectuale. La acest pas, voi prezenta metodele (func iile) folosite la implementarea realizarea aplica iei. Dup cum aminteam i mai sus, proiectarea aplica iei va avea o singur parte, i anume software, nicio solu ie hardware nefiind implicat . Dup parcurgerea primelor dou etape din ciclul de via al aplica iei, culegerea de specifica ii, respectiv analiza, se desprind urm toarele concluzii: Aplica ia are ca scop final crearea unui soft pentru identificarea utilizatorului unui sistem de acces, pe baza recunoa terii amprentei dactile; Aplica ia trebuie s prezinte o interfa cu utilizatorul ct mai simpl , intuitiv ; Aplica ia va func iona n dou regimuri, i anume de nrolare (n care utilizatorul se va autentifica n baza de date) i de verificare, n sistemul, pe baza scan rii amprentei introduse de utilizator, va decide dac acesta se reg se te n baza de date i, n func ie de aceast decizie, va avea sau nu acces. Interfa a aplica iei va fi proiectat de a a natur , nct utilizatorul i va alege singur regimul de func ionare a softului.

47

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

3.1.1. Proiectarea logic . Schema bloc a aplica iei

A a cum spuneam i mai sus, utilizatorul poate alege dou regimuri: de nrolare i de verificare, dup cum se vede i n Figura 3.1.
NROLARE

Utilizator

VERIFICARE

Figura 3.1. Diagrama cazurilor de utilizare

Att regimul de nrolare, ct i cel de verificare, presupun parcurgerea mai multor pa i. O etap comun i esen ial pentru a putea realiza aceste etape este captura imaginii amprentei. n cazul nrol rii, pe baza ei se face nregistrarea utilizatorului n baza de date. n cazul verific rii, o amprenta nou introdus va fi comparat (potrivit ) cu toate celelalte amprente din baza de date, pentru a se lua decizia dac utilizatorul va avea sau nu acces la sistem. Schemele bloc pentru ambele regimuri de func ionare sunt prezentate n Figura 3.2.
Captur imagine amprent

Captur imagine amprent

Introducere date utilizator n baza de date

Preprocesare imagine

Salvare utilizator n baza de date

Procesare imagine

POTRIVIREA AMPRENTELOR

Figura 3.2. Schema bloc a proceselor de nrolare (stnga) i de verificare (dreapta)

48

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

Aplica ia de fa mai poate fi n eleas i altfel, n sensul c procedeul de recunoa tere a unei amprente (corespunz tor etapei de verificare) poate fi mp r it, la rndul lui, n dou mari etape, a a cum se arat i n Figura 3.3.: Etapa de preprocesare a imaginii amprentei, care include modulele: y Conversia imaginii n grayscale; y y y y Normalizarea; Detec ia conturului liniilor; Aplicarea filtrului Fourier; Binarizarea imaginii;

y Sub ierea liniilor papilare. Etapa de procesare a imaginii, constuit din restul modulelor, i anume: y Identificarea punctelor minutia; y Eliminarea punctelor minutia false; y Orientarea punctelor minutia; y Potrivirea amprentelor.

PREPROCESARE PROCESARE Conversia imaginii n grayscale Identificarea punctelor minutia Normalizarea Eliminarea punctelor minutia false

Detec ia conturului

Aplicarea filtrului Fourier

Orientarea punctelor minutia

Binarizarea imaginii

POTRIVIREA AMPRENTELOR

Sub ierea liniilor papilare Figura 3.3. Schema bloc a etapelor de preprocesare PROCESARE (stnga) i procesare (dreapta)

49

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: p of. univ. d . ing. SILVIU IONI i d . ing. PETRE AN ELESCU ef lu

Ab olven : DIACONU ALEXANDRA DIANA


Unind toate schemele de mai sus, reiese organigrama general a aplica iei, prezentat n Figu a 3.4. n etapa de nrolare, utilizatorul i salveaz datele personale, mpreun cu amprenta n baza de date. n faza de verificare, primul pas care trebuie f cut dup ce utilizatorul i-a introdus amprenta este conversia imaginii amprentei n grayscale (imagine cu 256 de niveluri de gri). Urmeaz etapa de normali are, care n fapt este un filtru aplicat imaginii grayscale, pentru nl turarea zgomotului rezultat n urma achizi iei amprentei de la un senzor. nainte de aplicarea filtrului bazat pe transformata Fourier, este necesar detec ia conturului liniilor papilare, unde se nl tur punctele redundante, ce nu apar in crestelor amprentei. Avnd n vedere ca filtrul bazat pe tansformata Fourier nu se aplic pe toat imaginea, ci pe blocuri de 32x32 pixeli, pentru o mai mult acurate e, binari area imaginii se realizeaz , de asemenea, pentru fiecare bloc de 32x32 pixeli n parte.

Figura 3.4. Organigrama general a aplica iei

50

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

Pentru identificarea punctelor minutia, este necesar sub ierea liniilor papilare, reduse la dimensiunea unui singur pixel. n urma acestui proces, s -a constatat c apar structuri minutia false, ce nu fac parte din amprenta original , astfel c , pentru o mai bun precizie n identificarea punctelor minutia valide, caracteristice amprentei, am implementat modulul de eliminare a punctelor minutia false. A a cum am spus i n capitolul 2, pentru potrivirea a dou amprente este necesar extragerea caracteristicilor acestora. Astfel, pe lng coordonatele punctelor minutia, se ia n considerare i orientarea lor, pe care am determinat-o n penultimul modulul din etapa de verificare, inclus n organigrama aplica iei.

3.1.2. Proiectarea structural . Ierarhia claselor

Pentru descrierea structurii statice, adic a entit ilor sau a claselor exixtente n aplica ie folosim diagrama claselor, diagram care este prezentat n Figura 3.5.. Clasele care au fost implementate sunt: Clasa Program.cs; Clasa FrmAccesDecision.cs; Clasa FrmMatch.cs; Clasa IdentifyEngine.cs; Clasa FrmDbSave.cs; Clasa FFTFiltre.cs; Clasa MinutiaeEngine.cs; Clasa NormalizationEngine.cs; Clasa OrientationEngine.cs; Clasa ThinningEngine.cs; Clasa FFTEngine.cs; Clasa Engine.cs; Clasa FingerPrint.cs; Clasa Person; Clasa XmlContext.cs. Ierarhia claselor are structura urm toare (Figura 3.5.):

51

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: p of. univ. d . ing. SILVIU IONI i d . ing. PETRE AN ELESCU ef lu

Ab olven : DIACONU ALEXANDRA DIANA


Figura 3.5. Diagrama claselor

52

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: p of. univ. d . ing. SILVIU IONI i d . ing. PETRE AN ELESCU ef lu

Ab olven : DIACONU ALEXANDRA DIANA


Descrierea am nun it a claselor utilizate este urm toarea: Clasa Program.cs. Con ine metoda Main(), n care este instan iat i rulat un obiect de tip Form. Clasa FrmAccesDecision.cs. Este clasa meniului principal, interfe ei principale a aplica iei, care permite alegerea regimului de lucru. n aceast clas se g sesc urm toarele metode, cu semnifica iile aferente: y Constructorul clasei: FrmAccesDecision ); care deschide y b nSave_Click(): metod interfa a pentru nrolare; y b nAccess_Click(): metod care deschide interfa a pentru verificare. Clasa Frm.DbSave.cs. Este clasa corespunz toare interfe ei de nrolare a utilizatorului i cuprinde urm toarele metode: y Constructorul clasei: FrmDbSave(); metod care preia y b nOpen_Click(): amprenta utilizatorului, care n prealabil a fost capturat i salvat ntr-un fi ier .bmp pe hard; y b nSave_Click(): metod care salveaz datele personale i amprenta unui utilizator, pentru nregistrarea lui n baza de date; y b nViewDb_Click(): metod care permite vizualizarea bazei de date, respectiv a tabelei cu utilizatorii nregistra i; y b nDelete_Click(): permite tergerea unei nregistr ri (utilizator) din baza de date creat ; Clasa FrmMatch.cs. Este clasa corespunz toare interfe ei de verificare a unui utilizator, care decide dac acesta se afl sau nu n baza de date. Metodele acestei clase sunt: y Constructorul clasei: FrmMatch(); y btnOpenOriginal_Click(): metod care preia o amprenta utilizatorului, salvat anterior pe hard, pentru a o verifica prin potrivirea cu toate celelalte amprente din baza de date.

53

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

y btnBinarization_Click(): aceast metod permite analiza amprentei utilizatorului, afi nd imaginea amprentei rezultat n urma procesului de binarizare; y btnThining_Click(): permite analiza amprentei utilizatorului, afi nd imaginea amprentei rezultat n urma procesului de sub iere a liniilor; y btnMinutiae_Click(): aceast metod permite, de asemenea, analiza amprentei ce se vrea a fi testat , putnd astfel vizualiza caracteristicile amprentei (punctele minutia); y btnSobel_Click(): permite analiza amprentei utilizatorului, afi nd imaginea amprentei rezultat n urma procesului de detec ie a conturului crestelor; y btnFFT_Click(): permite analiza amprentei utilizatorului, afi nd imaginea amprentei rezultat n urma aplic rii filtrului bazat pe transformata Fourier; y btnPair_Click(): aceast metod testeaz propriu-zis amprenta nou introdus , comparnd-o cu toate celelalte din baza de date. Dac utilizatorul va fi indentificat, datele lui vor fi afi ate ntr-un textBox, iar amprenta sa va fi, de asemenea, afi at ntr-un pictureBox, al turi de amprenta introdus pentru testare. Clasa Engine.cs. Este una din cele 2 clase de baz ale proiectului SAADEngine, restul claselor fiind derivate din ea i din clasa FFTEngine.cs. Metodele care se reg sesc n aceast clas sunt: y Imagine_matrice(), care face conversia imaginii amprentei dat ca intrare n imagine grayscale; y Normalizare(), care aplic normalizarea asupra imaginea grayscale; y Sobel(), care realizeaz detec ia conturului liniilor papilare , pe baza imaginii normalizate; y Orientare_imagine(), care determin , pe baza gradien ilor Sobel calcula i n metoda Sobel, orientarea punctelor minutia; y Randeaza(), care afi eaz imaginea rezultat prin convertirea valorilor elementelor matricii imagine a amprentei n culori grayscale; Clasa FFTEngine.cs. Este ce-a de-a doua clas de baz a proiectului SAADEngine. n ea se reg sesc urm toarele metode: y Fourier_kernel(), care calculeaz transformata Fourier pentru intrega imagine a amprentei; y Fourier_2D(), care proceseaz imaginea, prin aplicarea filtrului bazat pe transformata Fourier; y Valoare_threshold(), care binarizeaz o imagine avnd dimensiunile date ca parametri. Acest metod va fi aplelat n cadrul metodei Fourier_2D(),
54

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

pentru fiecare bloc de 32x32 pixeli n parte. Rezultatul va fi binarizarea ntregii imagini a amprentei; y Subtiere_linii() i Imbunatatire_linii(). Aceste dou metode au rolul de a procesa imaginea binarizat , prin reducerea liniilor papilare la dimensiunea unui singur pixel; y Minutiae_linii_papilare(). Aceast metod identific toate punctele minutia ale amprentei, inclusiv pe cele apar innd structurilor minutia false ; y GetWrongEndingPoints(). Identific i elimin punctele terminale false; y GetWrongEndingPoints(). Identific i elimin punctele bifurca ie false; Clasa FFTFiltre.cs este clasa derivat din FFTEngine.cs. Aceasta apeleaz metoda Fourier_2D() din clasa de baz respectiv i converte te n imagine rezultatul. Clasa IdentifyEngine.cs. Este clasa n care se reg se te metoda MatchFingerprint(), care compar amprenta utlizatorului dat ca intrare, cu toate celelalte din baza de date, pe baza listei caracteristicilor (punctele minutia i orientarea lor); Clasa MinutiaeEngine.cs este derivat din clasa FFTEngine.cs i se ocup cu afi area imaginii amprentei procesate n urma identific rii punctelor minutia. n ea sunt apelate metodele din clasa de baz din care e derivat ; Clasa NormalizationEngine.cs este derivat din clasa Engine.cs i se ocup cu normalizarea imaginii amprentei dat ca intrare, apelnd metoda normalizare() din clasa din care e derivat ; Clasa OrientationEngine.cs este derivat din clasa Engine.cs i se ocup cu detec ia orient rii punctelor minutia ale amprentei dat ca intrare, apelnd metodele din clasa de baz din care e derivat ; Clasa ThinningEngine.cs este derivat din clasa FFTEngine.cs i se ocup cu procesarea i afi area imaginii amprentei, dup ce au sub iate liniile papilare. n ea sunt apelate metodele din clasa de baz din care e derivat ; Clasele FingerPrint.cs, Person.cs, XMLContext.cs sunt clase ce fac parte din proiectul SAADdatabase, proiect ce manipuleaz datele introduse n baza de date. Foarte important de precizat este faptul c , a a cum am spus i n capitolul 2 al aplica iei, n accep iunea proiectului, prin baz de date se n elege fi ierul XML FingerprintDb.xml, iar cele trei clase amintite reprezint clase de acces la acest fi ier. Motivul principal pentru care am ales s reprezint baza de date prin acest fi ier XML este, a a cum spuneam, portabilitatea, toat aplica ia putnd fi portabil pe orice alt sistem de operare, nefiind necesar instalarea bazei de date pe fiecare calculator unde urmeaz a fi testat aplica ia. Principalele metode din clasa XMLContext.cs sunt: DeletePerson(), InsertPerson() i LoadPerson().

55

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

3.2. Implementarea aplica iei

Implementarea software a aplica iei a fost realizat Microsoft Visual C# i a fost f cut n dou etape:

n mediul de programare

Realizarea interfe ei grafice cu utilizatorul. Microsoft Visual C# ofer facilit i prin punerea la dispozi ie de formulare i controale predefinite utile n construirea unei interfe e intuitive i u or de folosit ; Scrierea codului propriu -zis. Realizarea interfe ei grafice cu utilizatorul const n desenarea i aranjarea unor controale i n stabilirea unor decizii arhitecturale, decizii care au la baz unul dintre modelele arhitecturale de baz . n realizarea aplica iei am respectat principiile proiect rii interfe elor [], i anume: y y y Simplitatea: interfa a este u or de n eles i de nv at de c tre utilizator i permite acestuia s efectueze opera iile dorite n timp ct mai scurt; Pozi ia controalelor: loca ia controalelor dintr-o fereastr reflect importan a relativ i frecven a de utilizare; Consisten a: ferestrele i controalele sunt afi ate dup un design asem n tor ( template ) pe parcursul utilizprii aplica iei; inainte de a implementa interfa a, am decis cum va ar ta aceasta i am definit template-ul; Estetica: interfa a este pl cut i atr g toare.

3.2.1. Interfa a aplica iei

Mediul de dezvoltare Microsoft Visual C# dispune de instrumente specializate de proiectare, ceea ce a permis crearea aplica iei n mod interactiv, rapid i u or. Pentru implementarea interfe ei grafice a aplica iei am folosit urm toarele componente grafice principale: Butoane (pentru interac iunea cu utilizatorul); TextBox-uri (pentru introducerea datelor de c tre utilizator n baza de date i pentru afi area acelor date n momentul identific rii lui); PictureBox-uri (pentru afi area amprentelor).
56

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE AN ELESCU

Absolvent: DIACONU ALEXANDRA DIANA

Aplica ia dispune de trei interfe e grafice: o interfa principal n care utilizatorul are posibilitatea de a alege regimul de lucru i alte dou interfe e pentru fiecare regim de lucru n parte: de nrolare, respectiv de verificare. n Figura 3.6. este prezentat interfa a principal cu utili atorul:

Figura 3.6. Interfa a principal cu utilizatorul

Dup cum am spus i mai sus, interfa a este simpl , constnd n dou butoane pentru alegerea regimului de lucru al aplica iei. Interfa a regimului de nrolare a utilizatorului este prezentat n Figura 3.7. Astfel, pentru a se nregistra, utilizatorul trebuie s : y preia imaginea amprentei de pe hard, unde a fost salvat dup ce a fost capturat . Aceasta va fi afi at ntr-un pictureBox al turat; y introduc datele personale n textBox-urile corespunz toare etichetelor (label): nume, prenume, CNP, adres , num r de telefon ; y apese butonul care permite salvarea sa n baza de date; n cazul n care nu sa selectat nicio amprent , de i au fost completate cmpurile, salvarea nu poate fi f cut , ntorcndu-se un mesaj de eroare; y poate vizualiza ntr-un DataGridView baza de date creat i, n cazul n care observ c i-a introdus gre it datele, are posibilitatea de a terge nregistrarea respectiv , dup care poate reintroduce datele corecte, urmnd pa ii de mai sus.

57

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE AN ELESCU

Absolvent: DIACONU ALEXANDRA DIANA

Figura 3.7. Interfa a regimului de nrolare

n Figura 3.8. este prezentat interfa a regimului de verificare. Testarea potrivirii amprentei utilizatorului n vederea identific rii lui se face foarte simplu: y se preia de pe hard imaginea amprentei ce se vrea a fi testat ; aceasta va fi afi at n pictureBox-ul din stnga. y se apas butonul de testare, iar dac amprenta va fi reg sit n baza de date, se vor afi a n textBox datele personale ale utilizatorului identificat; n caz contrar, se va afi a un mesaj de eroare corespunz tor.

58

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE AN ELESCU

Absolvent: DIACONU ALEXANDRA DIANA

Figura 3.8. Interfa a regimului de verificare

Figura 3.9. Rezultatul binariz rii imaginii n urma aplic rii filtrului bazat pe FFT

Aplica ia de fa are, ns , i un scop didactic, astfel c avem posibilitatea de a vizualiza rezultatele transform rilor efectuate asupra imaginii amprentei, n paralel cu imaginea original , pentru compara ie. Astfel, n pictureBox-ul din dreapta vor fi afi ate imaginile procesate ale amprentei. Am ales n acest scop cele mai importante metode de procesare (n ordinea butoanelor):
59

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

y y y y

detec ia conturului liniilor; binarizarea imaginii n urma proces rii prin filtrul bazat pe transformata Fourier; sub ierea liniilor papilare; identificarea punctelor minutia.

n Figura 3.9. putem vedea rezultatul proces rii imaginii amprentei, n urma binariz rii.

3.2.2. Implementarea software a aplica iei

n continuare, voi prezenta por iuni reprezentative din codul surs pentru cele mai importante metode ale aplica iei. 1. Metoda de conversie a imaginii amprentei dat ca intrare n imagine grayscale:
protected { void Imagine_matrice()

matr_img_gray = new int[bitmap.Width, bitmap.Height]; Color culoare_bitmap; int ton_gri; for (int j = 0; j < bitmap.Height; j++) for (int i = 0; i < bitmap.Width; i++) { culoare_bitmap = bitmap.GetPixel(i, j); ton_gri = (int)((culoare_bitmap.G * 59 / 100) + (culoare_bitmap.R * 30 / 100) + (culoare_bitmap.B * 11 / 100)); matr_img_gray[i, j] = ton_gri; } }

2. Metoda care realizeaz normalizarea imaginii:


matr_norm = new double[bitmap.Width, bitmap.Height]; double m, var, suma2 = 0; int suma = 0; for (int i = 0; i < bitmap.Width; i++) for (int j = 0; j < bitmap.Height; j++) suma += matr_img_gray[i, j]; m = suma / (bitmap.Width * bitmap.Height); for (int i = 0; i < bitmap.Width; i++) for (int j = 0; j < bitmap.Height; j++) suma2 += Math.Pow((matr_img_gray[i, j] - m), 2); var = suma2 / (bitmap.Width * bitmap.Height);

60

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

double var_0; var_0 = 100; double m0 = 100; Color culoare; for (int i = 0; i < bitmap.Width; i++) for (int j = 0; j < bitmap.Height; j++) { if (matr_img_gray[i, j] > m) matr_norm[i, j] = (double)m0 + Math.Sqrt((var_0 * Math.Pow((matr_img_gray[i, j] - m), 2)) / var); else matr_norm[i, j] = (double)m0 - Math.Sqrt((var_0 * Math.Pow((matr_img_gray[i, j] - m), 2)) / var); } for (int j = 0; j < bitmap.Height; j++) for (int i = 0; i < bitmap.Width; i++) { if (matr_norm[i, j] < 0) matr_norm[i, j] = 0; if (matr_norm[i, j] > 255) matr_norm[i, j] = 255; }

3. Metoda care realizeaz gradien ilor Sobel:


protected { void Sobel()

detec ia conturului liniilor papilare , pe baza

matr_orientare = new ridge_distance[bitmap.Width, bitmap.Height]; int operator_sobelGy, operator_sobelGx, magnitudine_gradient; int[,] sobel_temp = new int[bitmap.Width, bitmap.Height]; int[] p = new int[9]; for (int i = for (int { p[1] p[2] p[3] p[4] p[5] p[6] p[7] p[8] 1; i < bitmap.Height - 1; i++) j = 1; j < bitmap.Width - 1; j++) = = = = = = = = matr_img_gray[i - 1, matr_img_gray[i - 1, matr_img_gray[i - 1, matr_img_gray[i, j + matr_img_gray[i + 1, matr_img_gray[i + 1, matr_img_gray[i + 1, matr_img_gray[i, j j - 1]; j]; j + 1]; 1]; j + 1]; j]; j - 1]; 1];

operator_sobelGx = Math.Abs(p[3] - p[1] + (2 * p[4]) - (2 * p[8]) + p[5] - p[7]); operator_sobelGy = Math.Abs(p[1] - p[7] + (2 * p[2]) - (2 * p[6]) + p[3] - p[5]);

61

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

if (operator_sobelGy > 255) operator_sobelGy = 255; else if (operator_sobelGy < 0) operator_sobelGy = 0; if (operator_sobelGx > 255) operator_sobelGx = 255; else if (operator_sobelGx < 0) operator_sobelGx = 0; matr_orientare[i, j].delta_x = operator_sobelGx; matr_orientare[i, j].delta_y = operator_sobelGy; magnitudine_gradient = (int)Math.Sqrt(Math.Pow(operator_sobelGy, 2) + Math.Pow(operator_sobelGx, 2)); if (magnitudine_gradient > 255) { magnitudine_gradient = 255; } else if (magnitudine_gradient < 0) { magnitudine_gradient = 0; } sobel_temp[i, j] = magnitudine_gradient; } for (int i = 1; i < bitmap.Height - 1; i++) for (int j = 1; j < bitmap.Width - 1; j++) matr_img_gray[i, j] = sobel_temp[i, j]; }

4. Metoda n care se aplic asupra imaginii filtrul bazat pe transformata Fourier, iar apoi imaginea rezultat se binarizeaz :
public void Fourier_2D() // proceseaza imaginea prin filtrul bazat pe TFR { Imagine_matrice(); // muta valorile pixelilor(grayscale) in matr_img_gray int val_threshold = 0; for (int id = 0; id < bitmap.Height; id += 32) for (int jd = 0; jd < bitmap.Width; jd += 32) { parcurgere(id, jd); // se construieste matr_fourier(32x32) dupa coordonatele date Fourier_kernel(1); // se proceseaza matr_fourier prin TFR

62

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

// calcul formula filtru: convolutia TFR cu spectrul de putere double f_real, modul; double k = 0.45; for (int l = 0; l < 32; l++) for (int m = 0; m < 32; m++) { modul = Math.Pow(matr_fourier[l, m].real, 2.0) + Math.Pow(matr_fourier[l, m].imag, 2.0); f_real = Math.Pow((Math.Sqrt(modul) / (Math.Pow(16 * 32, 2))), k); matr_fourier[l, m].real = matr_fourier[l, m].real * f_real; matr_fourier[l, m].imag = matr_fourier[l, m].imag * f_real; } Fourier_kernel(-1); // inversa TFR int[] vec_t = new int[32 * 32]; int c = 0; //copiaza valori calculate in matr_img_gray for (int l = id, a = 0; l < id + 32; l++, a++) for (int m = jd, b = 0; m < jd + 32; m++, b++) { vec_t[c++] = (int)matr_fourier[a, b].real; matr_img_gray[l, m] = (int)matr_fourier[a, b].real; } val_threshold = Valoare_threshold(vec_t, 32, 32); for (int l = id, a = 0; l < id + 32; l++, a++) for (int m = jd, b = 0; m < jd + 32; m++, b++) { if ((int)matr_fourier[a, b].real < val_threshold) matr_img_gray[l, m] = 1; else matr_img_gray[l, m] = 0; } } matr_img = new byte[bitmap.Width, bitmap.Height]; for (int k = 0; k < bitmap.Height; k++) for (int l = 0; l < bitmap.Width; l++) { matr_img[k, l] = (byte)matr_img_gray[k, l]; } }

63

SISTEM DE ACCES PE BAZ DE AMPRENT DACTIL , PROIECT DE DIPLOM 2011 ndrum tori: prof. univ. dr. ing. SILVIU IONI ef lucr ri dr. ing. PETRE ANGHELESCU

Absolvent: DIACONU ALEXANDRA DIANA

5. Metoda de binarizare a unei imagini de dimensiuni date :

public int Valoare_threshold(int[] valori_procesate, int inaltime, int latime) { int[] grafic_histograma = new int[256]; int val_threshold; val_threshold = 0; float fundal, prim_plan; float suma_threshold, suma, temp, discriminant; fundal = prim_plan = suma_threshold = suma = temp = 0; // construire histograma for (int i = 0; i < inaltime * latime; i++) grafic_histograma[valori_procesate[i]]++; for (int i = 0; i <= 255; i++) suma_threshold += i * grafic_histograma[i]; for (int i = 0; i <= 255; i++) { fundal += grafic_histograma[i]; // caut & ignora locatiile goale din grafic_histograma if (fundal != 0) { prim_plan = (inaltime * latime) - fundal; suma += i * grafic_histograma[i]; // discriminant= between class variance discriminant = prim_plan * fundal * (float)Math.Pow((suma / fundal - (suma_threshold - suma) / prim_plan), 2); if (discriminant > temp) { temp = discriminant; val_threshold = i; } } } return val_threshold; }

6. Metoda prin care liniile papilare sunt reduse la dimensiunea unui singur pixel:

64