Professional Documents
Culture Documents
Jovanov Fingerprint Recognition Seminar
Jovanov Fingerprint Recognition Seminar
Jovanov Fingerprint Recognition Seminar
Goran Jovanov
1 UVOD
U modernom svijetu pouzdano je osiguranje jedna od najpoželjnijih odlika. Bez pouzdanog
osiguranja ugrožene su brojne svakidašnje aktivnosti kao na primjer:
zaštita osobnih računala, prijenosnih računala, mobilnih telefona, internetskih radnji
i sličnih pomagala od uporabe neovlaštenih osoba
zaštita motornih vozila, strojeva i drugih vrijednih predmeta od neovlaštene uporabe
ili pristupa
sprječavanje krađe i krivotvorenja pri financijskim transakcijama, a posebno
elektronskih radnji, uključujući plaćanja s kreditnim karticama i plaćanja preko
interneta
omogućavanja pristupa radnim mjestima, skladištima i područjima povećane
sigurnosti, kao i vojnih područja, isključivo ovlaštenim osobama
nadzor pristupa obavljanja usluga javnog prijevoza, posebno u zračnom prometu
provjera identiteta pojedinaca u vozačkoj dozvoli, kartici zdravstvenog osiguranja,
osobnoj iskaznici i sličnim dokumentima
Značajan čimbenik pri postizanju sigurnosti je identifikacija osobe ili provjera da li je osoba
baš ta za koju se izdaje. Provjera mora biti pouzdana, brza, da ne zadire u tijelo i za
primjerenu cijenu. U prošlosti se provjera te vrste temeljila na sigurnosnim karticama,
privjescima, lozinkama, PIN-kôdovima, potpisima ili čak na prepoznavanju osobe pri službi
osiguranja ili portira. Svi ti načini su glede zahtjeva u suvremenom svijetu postali
nepouzdani i jako ograničeni. Budućnost je na strani biometrije. Biometrija nudi
jednostavno, pouzdano i povoljno rješenje pri provjeri identiteta korisnika, koju možemo
koristiti i u nekontroliranim i udaljenim područjima.
Biometrijski način identifikacije pojedinca znači individualno uvažavanje čovjekovih fizičkih
svojstava ili značajki ponašanja i evidentiranje, te pohranu tog uzorka (zvan i živi uzorak),
u standardnom podatkovnom obliku. Taj uzorak se u postupku identifikacije uspoređuje s
uzorkom (zvan i memoriran uzorak ili potpis) koji se temelji na istim značajkama, a
pohranjen je u sigurnosnom sustavu. Usporedba oba uzorka potvrđuje ili negira identitet
pojedinca.
Pri takvoj identifikaciji je pozornost usmjerena na mali broj fizičkih značajki koje pripadaju
isključivo jednoj osobi. Tu spadaju boja glasa, način hoda, značajke lica, uzorak šarenice,
otisak dlana i prstiju. (DNK nije pritom uključen jer je uzimanje uzorka DNK dugotrajno i
znači zahvat u tijelo). Najbolje usavršen, napredan i najrazvijeniji način je provjera na
temelju otisaka prstiju.
Dugogodišnja istraživanja i pokusi kažu nam da su otisci prstiju trenutno najpouzdaniji
način provjere identiteta osoba. Unatoč nekim sudskim postupcima u SAD-u, još uvijek su
otisci prstiju nedvojben dokaz identiteta pojedinca. Većina današnjih biometrijskih sistema
temelji se na prepoznavanju otisaka prstiju.
Fiziološki je otisak prsta konfiguracija grebena s porama koje dijele doline. Leže na žilama,
odmah pod kožom. Morfologija (oblik) otiska prsta je povezana sa specifičnim električnim i
toplinskim značajkama kože. To znači da svjetlost, toplina ili električni napon (ili
kombinacija svih) možemo koristiti za evidentiranje slike otiska prsta. Otisak prsta nastane
još pri razvoju embrija i ne mijenja se sa starošću osobe, nego raste u svojem prvobitnom
obliku i kad se završi rast osobe, ostaje u svojoj veličini nepromijenjen. Upravo tako se po
oštećenju obnovi u prvobitni oblik. Jednojajčani blizanci nemaju jednake otiske prstiju.
Mali postotak populacije (npr. rudari i mali broj glazbenika) ima oštećene otiske prstiju,
zbog stalnog trenja. U razvijenim državama je taj postotak zanemariv i ne predstavlja
spomena vrijedne poteškoće za identifikacijske sustave koji se temelje na otiscima prstiju.
Za evidentiranje značajki uzorka otiska prsta postoji već algoritamska metoda.
Najproširenije metode temelje se na prepoznavanju uzorka ili izvodu minucija. U slučaju
algoritma koji se temelje na minucijama otisak prsta sastavljen je od grubih značajki kao
što su vitice, krakovi i zavijuci, te od sitnih značajki (minucija) a to su prije svega bifurkacije
(račvanja), delte, (spajanja u obliku slova Y) i završetaka grebena. Otisak prsta ima
između 30 i 40 minucija. Značajka svake od njih je položaj (koordinate), tip (bifurkacija,
delta ili završetak) i usmjerenost (orijentacija). Skup značajki minucija daje predložak za
otisak prsta. Ako su značajke detaljno evidentirane, mogućnost da se nađu dva otiska
prsta jednakih značajki, je izuzetno niska.
Cilj proizvođača sustava čitača otisaka prstiju su što niže vrijednosti FAR i FFR, premda u
praksi postoji raskorak među njima. Smanjenje FAR znači povećanje FRR i obrnuto.
Razuman cilj je točka kad obje vrijednosti i posljedice greški ne predstavljaju spomena
vrijedno ugrožavanje sigurnosti. Posljedice pogrešnog odbijanja (FRR) sežu od štetnih do
po život opasnih, ovisno o području uporabe. Neki su sustavi dostatno napredni da
uključuju različite uređaje za osiguranje od posljedica pogrešnog odbijanja. Npr. osoba
mora ponoviti postupak očitavanja otiska ili je za tu osobu unijeto više predložaka.
Sam postupak provjere sukladnosti predloška i uzorka je stvar programske opreme i ne
ovisi o načinu snimanja otiska prsta. Unatoč tome je visoko-kvalitetna slika uvjet za što niži
stupanj FAR i FFR.
Danas postoji jako puno riješenja za klasifikaciju i identifikaciju na temelju otiska prsta.
Razlika između klasifikacije i identifikacije je ta što se kod klasifikacije gleda samo
pripadnost otiska prsta u neku od 6 mogućih klasa (slika 4.):
Slika 4. Primjeri klasa otisaka prsta
Dok se kod identifikacije određuje pripadnost nekog otiska prsta nekoj osobi, tj. ta osoba
se identificira na temelju otiska prsta. Neki sustavi danas rade tako da se za određeni
primjer otiska prsta, na temelju kojeg se želi identificirati neku osobu, najprije provjerava
da li je nepoznati otisak prsta ista klasa, s ostalim otiscima iz baze, te ukoliko se ustanovi
ista klasa s nekom od ostaka iz baze, onda se radi ekstrakcija značajki, te provjera na
temelju njih. Na taj način se brže obavlja identifikacija, jer sama ekstrakcija značajki i
identifikacija traje puno dulje, nego pronalaženje klase otiska prsta. Ovaj način pogodan je
pogotovo kod većih baza otisaka.
Značajke se izvlače na temelju dobivenih minucija. Minucija može biti završetak i grananje
grebena, kako je prikazano na slici 5.,
Slika 5. Mogući tipovi značajki: (a) završetak grebena; (b) grananje grebena
Neuronske mreže se često koriste za ekstrakciju značajki ili za klasifikaciju otiska prsta,
dok se identifikacija često radi nekakvim usporedbenim algoritmima.
Neka od postojećih riješenja klasifikacije otiska prsta su implementirana višeslojnom
samoorganizirajućom mrežom, dok druga koriste neke od poznatih algoritama grupiranja
kao što je algoritam K-najbližih susjeda.
Jedan od osnovnih problema identifikacije neuronskom mrežom, je to što otisak prsta ima
varijabilan broj značajki, a neuronska mreža ima fiksan broj ulaza. Dakle problem se svodi
na uspoređivanje skupova značajki, što se puno brže i jednostavnije obavlja usporedbenim
algoritmima.
Ovaj problem se može riješiti na način da se pronađe centar otiska prsta (core point), te se
na temelju centra podijeli slika podijeli na 9 regija (slika 6.).
Na ovaj način se problem svodi na fiksan broj značajki po regijama, što omogućava
rješavanje identifikacije višeslojnim back-propagation perceptronom. Uz to je riješen i
problem invarijantnosti na translaciju jer se pronalaskom centra otiska prsta on uzima kao
referentna točka, te se segmentacija u 9 regija izvodi u odnosu na njega.
Invarijantnost na rotaciju se može postići tako da se za centar otiska odredi usmjerenje, te
da se segmentacija regija odredi na temelju centra otiska i njegovog usmjerenja.
3 OPIS IMPLEMENTACIJE SUSTAVA
Ideja implementacije ovog sustava bila je izraditi sustav za automatsko identificranje na
temelju otiska prsta pomoću neuronske mreže. Sam postupak identifikacije se može
podijeliti na nekoliko koraka, kako je prikazano na slici 7:
Zatim slijedi korak normalizacije kako bi slika imala predefiniranu srednju vrijednost i
varijancu. Ovaj korak je potreban zbog nastajanja imperfekcija kao što su nejednolika
raspodjela intenziteta tinte, kao i nejednolikog kontakta prsta i uređaja za skeniranje, što
za poslijedicu ima distorzirane razine sivih boja grebena i dolina otiska.
Slika 10. Orijentacija grebena
Slijedi korak određivanja orijentacije grebena, koja je potrebna za izvođenje Gabor filtera
(slika 10.). Orijenatacije se određuju za pojedini blok, a računaju se uprosječavanjem
vrijednosti dobivenih sa horizontalnim i vertikalnim Sobel operatorom na svakom pikselu u
bloku.
Određivanje frekvencije grebena također se određuje za pojedini blok, a dobiva se na
način da se napravi projekcija vrijednosti piksela bloka u smjeru okomitom na orijentaciju
tog bloka. Time se dobiva sinusoidalni valni oblik, kod kojeg se traže minimumi i na
temelju udaljenosti tih minimuma računa frekvencija. Kod otisaka lošije kvalitete dolazi do
pojave nekih lokalnih minimuma, koje izbjegavamo izglađivanjem valnog oblika, te nekim
heurističkim pravilima (slika 11.).
Slika 11. Određivanje frekvencije grebena: (a) Slika bloka; (b) Projekcija vrijednosti
pikselau smjeru okomitom na orijentaciju bloka; (c) Izglađeni oblik projekcije.
Nakon toga slijedi korak binarizacije, odnosno na temelju globalnog praga neki se piksel
postavlja u 0 ako ima vrijednost manju od praga, a inače u 1 (slika 14. b). Zadnji korak
image enhancment-a je stanjivanje rubova na debljinu jednog piksela kako bi se mogle
točno odrediti značajke otiska (slika 14. c).
Slika 14. Originalna slika otiska i pripadna filtrirana slika
Slika 15. Tipovi lažnih minucija: (a) izbočina; (b) rupa; (c) trokut; (d) šiljak
Nakon podjele slike u 9 regija, na ulaz neuronske mreže s 9 ulaza dovodi se broj značajki
u pojedinoj regiji, s time da se ne radi razlika između završetka i grananja regija. Razlog
zbog čega se ne razlikuju značajke završetka i grananja grebena je taj što se pri postupku
poboljšavanja kvalitete slike, preciznije pri izvođenju Gabor filtera, može desiti da se spoji
neki završetak grebena s nekim drugim grebenom, tako da nastane grananje grebena. Ili
premda postoji neko grananje grebena, zbog nedovoljne kvalitete slike (prekinutosti
grebena) možda se pronađe završetak grebena. Dakle, nakon pretprocesiranja slike i
izvlačenja značajki otiska prsta, slijedi proces učenja neuronske mreže. Za neuronsku
mrežu koristili smo višeslojni perceptron sa sigmoidalnom aktivacijskom funckijom. Mreža
se sastoji od 9 ulaza u ulaznom sloju, nekoliko skrivenih slojeva, te od izlaznog sloja koji
ima onoliko neurona koliko imamo izlaznih klasa, odnosno broja otisaka u bazi. Broj
skrivenih slojeva, kao i broj neurona po slojevima, mijenjali smo kako bi odredili
najprikladniju mrežu. Dakle mrežu koja je mogla naučiti sve primjere za učenje i koja bi
dobro generalizirala na primjerima za testiranje, uzimajući u obzir performanse (vrijeme
učenjenja).
Mrežu smo trenirali pomoću backpropagation algoritma kojeg smo implementirali na tri
načina. Tipovi backpropagation algoritma su:
s konstantnom stopom uĉenja (obična verzija): Vrlo je osjetljiv na postavljenu
vrijednost stope učenja. Ako je prevelika, može doći i do oscilacija, pa mreža nikada
neće naučiti primjere za učenje, a ako je premala mreža će presporo učiti.
s varijabilnom stopom uĉenja: Problem koji se pojavljuje kod BP s konstantnom
stopom učenja je riješen. Stopa učenja se drži dovoljno visokom tako da algoritam
brzo konvergira, ali da je još uvijek stabilan. Stopa učenja se mijenja po heurističkim
pravilima na način da se najprije izračunaju nove vrijednosti težina i pragova u
nekoj epohi, te se zatim računaju greške na izlazu, te ukoliko je je greška veća za
4% od greške u prethodnoj epohi, onda se nove težine odbacuju, te se stopa
učenja smanjuje još za 30%. U protivnom se težine i pragovi sačuvaju, te se nova
stopa učenja poveća za 5%.
resilient backpropagation: Ova verzija algoritma je otporna na zasićenja neurona,
što za poslijedicu ima znatno ubrzanu konvergenciju. Algoritam radi tako da koristi
samo predznak derivacije za promjenu novih težina i pragova, tako da amplituda
nema efekta. Svaka težina i svaki prag imaju posebnu vrijednost promjene.
Vrijednosti promjene težina i pragova se povećavaju za faktor delt_inc, ukoliko je
predznak derivacije, s obzirom na težine, isti kao kroz dvije susjedne iteracije.
Ukoliko se predznak derivacije mijenja, sobzirom na težine, kroz dvije neposredne
iteracije, onda se vrijednosti težina i pragova smanje za faktor delt_dec. Ukoliko je
derivacije jednaka nuli, onda se težine ne mijenjaju.
Desni dio ovog prozora sadrži funkcije za učitavanje, spremanje i evaluiranje primjera za
treniranje i testiranje. Gornja tablica (slika 20.) predstavlja primjere za treniranje mreže,
dok donja tablica (slika 21.) predstavlja primjere za testiranje mreže. Svaka od ovih tablica
sadrži po šest stupaca. Prvi stupac sadrži redni broj primjera. Drugi i treći sadrže ulaznu i
očekivanu izlaznu vrijednost primjera, dok četvrti stupac sadrži informaciju o izlazima
mreže (moguć je grafički ili numererički prikaz). Peti stupac daje informaciju o polovici
kvadratne pogreške očekivanog i dobivenog izlaza mreže, a šesti stupac daje informaciju
o tome da li je mreža ispravno naučila određeni primjer (Y/N).
U ovom tab-prozoru nalaze se još i Backpropagation opcije (slika 22.). Dakle opcije koje
se mogu podešavati za backpropagation algoritam su slijedeće: stopa učenja, broja epoha
i srednja kvadratna pogreška. Uvjet zaustavljanja može biti: dosegnut određen broj epoha,
razina kvadratne pogreške manja od zadanog praga, ili dok se ne zadovolji jedan od ta
dva uvjeta. Zatim se može odabrati tip backpropagation algoritma: s konstantnom stopom
učenja, s varijabilnom stopom učenja ili resilient backpropagation. U ovim postavkama
nalazi se još i opcija za mijenjanje intervala osvježavanja kod iscrtavanja informacija
tijekom učenja mreže.
Slika 21. sučelje programa (primjer tablice primjera za testiranje)
U ovom dijelu prozora također se nalaze ispisi srednje kvadratene pogreške (MSE)
primjera za treniranje i testiranje, te broj i postotak ispravno klasificiranih primjera za
učenje i testiranje. Vrijeme osvježavanje ovog ispisa, kao i vrijeme osvježavanja status
bara (slika 23.), koji se nalazi pri dnu prozora, se reguliraju mijenjanjem postavke Refresh
interval.
U status baru se u prvom dijelu informira o tijeku i stanju akcija koje se obavljaju
(učitavanje primjera, stvaranje i učenje mreže). Zatim, u drugom se dijelu prikazuje
informacija o proteklom vremenu tijekom učenja. Treći dio sadrži informaciju o trenutnoj
MSE, gradijentu, kao i trenutnoj stopi učenja. Zadnji dio prikazuje informacije o broju
trenutne epohe, brzini učenja (broj epoha u sekundi, broj neurona u sekundi i broj trežina u
sekundi).
5.1 ĈLANCI
[1] A Direction-Based Vascular Pattern Extraction Algorithm for Hand Vascular Pattern
Verification, Authors: Sang Kyun Im, Hwan Soo Choi, and Soo-Won Kim
[2] A two-stage fingerprint classification system, Authors: Raffaele Cappelli Dario Maio
Davide Maltoni Loris Nanni
[3] Combining Flat and Structured Representations for Fingerprint Classification with
Recursive Neural Networks and Support Vector Machines, Authors: Paolo Frasconi Fabio
Roli
[4] Fingerprint Classification and Matching, Authors: Anil Jain Sharath Pankanti
[5] Fingerprint Classification by Directional Image Partitioning, Authors: Raffaele Cappelli,
Alessandra Lumini, Dario Maio, Member, IEEE, and Davide Maltoni
[6] Fingerprint Classification Through Self Organizing Feature Maps Modified to Treat
Uncertainties, Authors: UGUR HALICI, GUCLU ONGUN
[7] Fingerprint Classification with Combinations of SVM, Authors: Yuan Yao, Paolo
Frasconi, and Massimiliano Pontil
[8] Fingerprint Classification with Neural Networks, Authors: Hugo Vieira Neto, Dibio
Leandro Borges
[9] Fingerprint Image Enhancement and Minutiae Extraction, Author: Raymond Thai
[10] Fingerprint Image Enhancement using Filtering Techniques, Authors: Shlomo
Greenberg, Mayer Aladjem, Daniel Kogan and Itshak Dimitrov
[11] Neural networks, Pattern Recognition and Fingerprint Halluctination, Author: Eric
Mjolsness
[12] New Fingerprint Image Enhancement Using Directional Filter Bank, Authors: Sang
Keun Oh, Joon Jae Lee, Chul Hyun Park, Bum Soo Kim, Kil Houm Park
[13] Region of interest detection for fingerprint classification, Authors: John M. Trenkle
[14] Robust Fingerprint Classification using an Eigen Block Directional Approach, Authors:
P Madhusoodhanan Sumantra Dutta Roy
[15] Advances in Fingerprint Recognition at CUBS, Author: Venu Govindaraju
[16] Orientation estemation: Conventional techniques and a new non-differential Approach,
Author: Rudolf Mester
[17] Feature Extraction Using a Chaincoded Contour Representation of Fingerprint
Images, Authors: Venu Govindaraju, Zhixin Shi
[18] Fingerprint Recognition, Author: Anthony Lum
[19] Direct Gray-Scale Minutiae Detection In Fingerprints, Authors: Dario Maio, Member,
IEEE, and Davide Maltoni
[20] Verification of Ink-on-paper Fingerprints by Using Image Processing Techniques and
a New Matching Operator, Authors: Vincenzo Conti, Giovanni Pilato, Salvatore Vitabile,
Filippo Sorbello
[21] A Comparison of Gabor Filter Methods for Automatic Detection of Facial Landmarks,
Authors: Ian R Fasel, Marian S Bartlett, Javier R Movellan
[22] Pattern matching on vector fields using Gabor filter, Authors: Julia Ebling and Gerik
Scheuermann
[23] Fingerprint Matching using Gabor Filters, Authors: Muhammad Umer Munir and Dr.
Muhammad Younas Javed
[24] A modified filter design method for fingerprint image enhancment, Authors: Jianwei
Yang, Lifeng Liu, Tianzi Jiang, Yong Fan
5.2 LINKOVI
[1] http://www.google.com/
[2] http://intl.ieeexplore.ieee.org/
[3] http://www.ee.iitb.ac.in/~sumantra/publications/
[4] http://www.icassp2005.com/Papers/AcceptedList.asp
[5] http://csdl2.computer.org/persagen/
[6] http://www.informatik.uni-trier.de/~ley/db/conf/icvgip/icvgip2004.html
[7] http://www.cse.msu.edu/rgroups/prip/ResearchProjects/project_abstracts.html
[8] http://wscg.zcu.cz/wscg2003/
[9] http://www.stats.ox.ac.uk/pub/PRNN/
[10] http://portal.acm.org/
[11] http://biometrics.cse.msu.edu/
[12] http://people.csse.uwa.edu.au/pk/studentprojects/raymondthai/