1 UVOD Prepoznava obrazov je ena osnovnih človeških zmožnosti, ki jo usvojimo v zgodnjem obdobju življenja. Težko si je predstavljati vsakdanje življenje brez zmožnosti, da bi na ulici prepoznali znano osebo, prijatelja ali sorodnika. Čeprav se nam prepoznavanje obrazov zdi samoumevna funkcija, je to zapletena naloga, ki smo jo sposobni izvesti zelo hitro in učinkovito. Kompleksnosti naloge se zavemo, ko želimo zmožnost prepoznavanja obrazov prenesti v računalniški sistem. Prvi začetki razvoja sistemov za prepoznavanje obra- zov segajo v šestdeseta leta prejšnjega stoletja, ko se je začel razvoj prvih polavtomatskih sistemov, ki so zahtevali ročno vnašanje značilnic na obrazu (oči, ušesa, nos in usta) [1]. Skozi leta je prišlo do veliko izboljšav [2], [3], [4]. Prejet 12. november, 2018 Odobren 5. marec, 2019 Prepoznavanje obrazov ima velik potencial uporabe. Med drugim bi ga s pridom lahko uporabljali za kontrolo dostopa, nadzor in v zdravstvene namene. V zadnjih letih se je prepoznava obrazov že začela uporabljati kot biometrična identifikacija npr. za dostop do socialnih omrežij, kot sta Facebook in Google+, ki sta dostopna na pametnih telefonih, kjer vgrajena kamera omogoča sliko obraza. Prepoznava obrazov je zelo obsežno raziskovalno po- dročje. Grobo ga lahko razdelimo na dva dela, pri katerih se uporabljata globalni oz. lokalni pristop. Starejši je globalni pristop. Sem uvrstimo metodo glavnih kompo- nent (PCA) [5], linearno diskriminantno analizo (LDA) [6] in analizo neodvisnih komponent (ICA) [7]. Uporaba teh metod ima svoje slabosti, med drugim je znano, da je PCA metoda občutljiva na spremembe v osvetlitvi. Na splošno so te metode, ker opisujejo obraz kot celoto, zelo občutljive na spremembe v videzu obraza, kot je npr. sprememba v izrazih. Pri lokalnem pristopu obraz običajno predstavimo z lokalnimi opisniki, izračunanimi na določenih obraznih točkah, imenovanih značilne lokacije. Lokalni pristopi so zato bolj robustni na spre- membe v izrazih na obrazu. Z uporabo ustreznega opis- nika lahko minimiziramo vpliv osvetlitve. Med prvimi je bil opisnik SIFT [8], skozi leta pa so bili razviti številni novi opisniki [9], [12], [13], [14], [15]. Pre- poznava obrazov pogosto vključuje uporabo metod s področja umetne inteligence. Za primerno se je izkazal klasifikator SVM, prav tako naključni gozdovi in umetne nevronske mreže. Uporaba metod umetne inteligence je postala skoraj neizogibna, saj je prispevek zelo velik. Cilj predlaganega dela je preizkusiti lokalni AG opis- nik [11] za prepoznavo obrazov. Pripravili smo sistem za prepoznavo obrazov, sestavljen iz modula za detekcijo obraza in modula za prepoznavo. Predstavitev obrazov, 8 LUŠINA, MAVER Slika 1: Sistem za prepoznavo obrazov. ki jo uporablja modul za prepoznavo, bo zasnovana na AG opisnikih. V poglavju 2 predstavimo zgradbo sis- tema za prepoznavo obrazov oz. osnovne module, ki jih vključuje sistem. V podpoglavju 2.1 opišemo postopek detekcije in izrezave obraza iz slike, v poglavju 2.2 pa predstavimo metodo vreče besed, ki smo jo uporabili za predstavitev obrazov, in dva različna pristopa za pridobivanje značilnih lokacij. Sledi razlaga AG opis- nika, s katerim predstavimo značilne lokacije na sliki. V poglavju 3 najprej predstavimo testne podatkovne baze slik obrazov. Sledijo opis eksperimentov ter prikaz in interpretacija rezultatov. 2 SISTEM ZA PREPOZNAVO OBRAZOV Sistem za prepoznavanje obrazov je sestavljen iz več modulov: predprocesiranja slike, gradnje predstavitve obraza in klasifikatorja, ki je zgrajen s pomočjo učenja. Slika 1 prikazuje osnovne module predlaganega sistema. 2.1 Predprocesiranje Predprocesiranje slike vključuje detekcijo obraza, izračun verige mejnih točk na obraznih delih, porav- navo in izrezovanje obraza ter normalizacijo velikosti obraznega dela. 2.1.1 Detekcija obraza: Primer detektiranega obraza prikazuje slika 2. Izmed številnih algoritmov, ki so na voljo, smo izbrali algoritem za detekcijo obrazov, pred- lagan v delih [17] in [18]. Koda algoritma je na voljo v knjižnici dLib*. Algoritem uporablja HOG piramido slik, skozi katero pošlje linearni klasifikator. Vsaka raven v piramidi pomeni HOG značilnice, izračunane pri različni resoluciji slike. Za detekcijo obraza uporabimo zaznavalno okno, ki je sestavljeno iz mreže prekrivajočih ∗Zaznava slik frontalnih obrazov knjižnice dLib: http://dlib.net/imaging.html#get frontal face detector/. se HOG značilnic. Te združimo v skupni vektor in uporabimo SVM klasifikator, ki ločuje med območjem v sliki, ki predstavlja obraz in območjem, ki to ni. Detekcijo obrazov smo izboljšali tako, da smo dano sliko I rotirali za kote α ∈ [−30◦, 30◦] s korakom 1◦. Za manjše obraze, katerih drseče okno ni zaznalo, smo sliko povečali in detekcijo ponovili. Slika 2: Detekcija obraza. Obraz je označen z rdečim okvirjem. 2.1.2 Izločanje obraza in njegova poravnava: Obraz izločimo iz slike z določitvijo verige mejnih točk na obraznih delih (slika 3), kot so npr. usta, nos, oči in obrvi. Za to nalogo uporabimo algoritem ansambla regresijskih dreves [19], ki uporablja 68 mejnih točk. Algoritem je implementiran v knjižnici dLib. Prednost tega algoritma je, da z zadovoljivo natančnostjo zazna verigo mejnih točk obraznih delov v milisekundi. Algo- ritem uspešno zazna položaj mejnih točk tudi v primerih, ko je obraz delno zakrit. Obraz na sliki poravnamo glede Slika 3: Veriga vključuje 68 mejnih točk. PREPOZNAVA OBRAZOV Z AG OPISNIKOM 9 na položaj oči. Središči obeh očes smo izračunali s pomočjo mejnih točk, pridobljenih v prejšnjem koraku. Naj pi,s označuje koordinati (xi,s, yi,s) i-te mejne točke, v verigi mejnih točk, ki pripadajo očesu. Naj velja i ∈ {1, . . . , N}, kjer je N število mejnih točk, razporejenih okoli očesa, in naj s označuje, ali gre za levo ali desno oko (s ∈ {l, r}). Središče očesa Cs zapišemo kot: Cs = (xc,s, yc,s) = 1 N N∑ i=1 pi,s . (1) Iz izračunanih središč lahko določimo kot nagiba obraza na sliki α = tan−1 ( yc,l − yc,r xc,l − xc,r ) . (2) Sliko nato zarotiramo z rotacijsko matriko R: R =  cos(α) −sin(α) 0sin(α) cos(α) 0 0 0 1   . (3) Hkrati ob rotaciji slike pa moramo koordinate mejnih točk v verigi transformirati v koordinate rotirane slike. Poznamo lokacijo zgornjega levega vogala (x0, y0) slike v novem koordinatnem sistemu. Nove koordinate mejnih točk v verigi (x′, y′) izračunamo z naslednjo enačbo: x′y′ 1   =  1 0 x00 1 y0 0 0 1  (R  xy 1  ). (4) 2.1.3 Izrezovanje obraza: Z izrezovanjem obraza želimo izločiti vpliv ozadja na prepoznavo obraza. S slike poravnanega obraza odstranimo del, ki ne vključuje obraza. Ustvarili smo tri različne tipe izrezovanja, ki jih prikazuje slika 4: • tip 1 - okvir izrezave zajame oči, usta in nos, • tip 2 - okvir izrezave zajame oči, usta, nos, lica in obrvi, • tip 3 - okvir izrezave zajame cel obraz. Slika 4: Različni tipi izrezave: tip 1, tip 2 in tip 3 Velikost izrezanega območja smo izračunali iz koordinat mejnih točk v verigi. Za vsak tip izrezave izračunamo minimalni in maksimalni koordinati x in y. Izračunane koordinate določajo štiri vogalne točke okvirja izrezave. Območje v sliki zunaj okvirja odstranimo in izrezano sliko normaliziramo na 128 pikslov v višino in širino. 2.2 Gradnja predstavitve obraza in klasifikatorja Za predstavitev obrazov uporabimo metodo vreče besed (BOW - angl. bag of words) [20]. Značilne lokacije na sliki obraza predstavimo z opisniki, s pomočjo katerih zgradimo besednjak za vrečo besed. Vrečo besed uporabi klasifikator, ki je zmožen ločevanja med različnimi osebami. Glavni koraki predlagane metode so: 1) Določanje značilnih lokacij na sliki in grad- nja opisnikov. Opisnik opisuje bližnjo okolico značilne lokacije in je predstavljen kot vektor. 2) Gradnja besednjaka oz. razvrščanje opisnikov v roje. 3) Gradnja histograma opisnikov oz. vreče besed, ki prešteje število opisnikov, dodeljenih k vsakemu roju. 4) Uporaba večrazrednega klasifikatorja, kjer vrečo besed, predstavljeno v vektorski obliki, uporabimo za dodeljevanje h kategoriji oz. osebi. Idealno so ti koraki zasnovani tako, da maksimi- rajo klasifikacijsko točnost, medtem ko minimizirajo računsko zahtevnost. Za opisnike, pridobljene v prvem koraku, mora veljati, da so robustni na spremembe, ki niso povezane s kategorizacijo (npr. razlike zaradi osvetlitve), hkrati pa morajo vsebovati dovolj informacij, ki omogočajo, ločevanje med kategorijami. Poskrbeti moramo, da je besednjak dovolj velik, da omogoča ločevanje pomembnih sprememb v delih slike in hkrati ne preveč velik, da se izognemo ločevanju nepomembnih podrobnostmi, kot je npr. šum. Slika 5: Izbira značilnih lokacij. Levi del slike prikazuje izbiro značilnih lokacij z mrežo, desni del slike prikazuje značilne lokacije, izbrane z detektorjem. Uporabili smo detektor SURF. 2.2.1 Značilne lokacije: Najprej na sliki določimo značilne lokacije, okoli katerih želimo opisati lokalno regijo oz. jo predstaviti z opisnikom. Raziskali smo dva pristopa. Prvi deluje tako, da na sliko postavimo mrežo (slika 5 levo). Presečišča mrežnih črt pomenijo značilne lokacije, za katere izračunamo opisnike. Drug pristop uporablja detektorje značilnih točk (slika 5 desno). 2.2.2 Gradnja besednjaka: Pri gradnji sistema za pre- poznavo obrazov je pomembno, kako zgradimo besedn- jak. Besednjak uporablja klasifikator, ki ga je treba učiti. Če bi vsak opisnik iz prejšnjega koraka pomenil besedo v besednjaku, bi bilo učenje časovno zelo zahtevno. Če bi veliko opisnikov dodelili enemu roju oz. besedi, bi izgubili na natančnosti klasifikatorja. Število rojev k je treba pazljivo izbrati, v našem primeru je bilo rojev 10 LUŠINA, MAVER 1000. Za združevanje opisnikov v roje oz. besede upora- bimo algoritem k-means [21]. Za vsak obraz preštejemo enake besede in zgradimo histogram oz. vrečo besed, ki je pravzaprav vektor, s katerim predstavimo obraz. 2.2.3 Razvrščanje v razrede s SVM klasifikatorjem: Razvrščanje v razrede vključuje učenje klasifikatorja in njegovo testiranje. Predlagan sistem za prepoznavo obra- zov uporablja SVM klasifikator. SVM klasifikator najde optimalno hiperravnino, ki razdeli prostor podatkov, v prejšnjem koraku izračunane vreče besed, v dva razreda. Optimalna hiperravnina je določena tako, da je ločitvena meja med razredoma čim širša. SVM se v osnovi uporablja za razvrščanje v dva razreda. Za razširitev na večrazredno razvrščanje moramo opraviti primerjavo vseh mogočih N razredov med seboj. Končno število primerjav je tako N · (N − 1)/2. 2.3 AG opisnik Raziskati smo želeli, kako zanesljiva je prepoznava obrazov, če za opisnik ključnih lokacij uporabimo AG opisnik [11]. Večina popularnih opisnikov, med kater- imi je najbolj poznan SIFT, uporablja za predstavitev lokalne regije na sliki informacijo o gradientu oz. o velikosti spremembe intenzivnosti in smeri spremembe. AG opisnik uporabi model odvisnih učinkov (angl. De- pendent Effects Model [22]). Opisnik vzorči sliko v okolici značilne lokacije na krožnicah z eksponentno naraščajočim polmerom. Zajete vrednosti so Gaussova povprečja, izračunana na okoliških pikslih. Standardni odklon filtrov narašča eksponentno s številko krožnice. Princip vzorčenja prikazuje slika 6. Odčitana Gaussova Slika 6: Marjetica ponazarja vzorčenje informacije na sliki z AG opisnikom. Modre točke so mesta, kjer vzorčimo z Gausso- vimi filtri. Polmeri barvnih krogov ustrezajo standardnemu odklonu Gaussovega filtra. Vzorec je sestavljen iz devetih krožnic. Na vsaki krožnici zajamemo 13 vrednosti. povprečja Imn;m = 0, . . . ,M − 1, n = 0, . . . , N − 1 lahko ponazorimo s pravokotnikom P dimenzije M×N . Vrednost M označuje število krožnic, na katerih smo vzorčili, oz. število stolpcev v P , vrednost N pa število vzorcev na krožnici oz. število vrstic v P . V našem primeru velja: M = 9 in N = 13. Naj Cm in Rn označujeta seštevek vrednosti iz m-tega stolpca in n- te vrstice pravokotnika P . Velja Cm = ∑N−1 n=0 Imn in Rn = ∑M−1 m=0 Imn. Pravokotnik P lahko predstavimo s tremi tipi učinkov: učinki stolpcev αm, učinki vrstic βn, in učinki preostanka γmn, za m = 0 . . . M − 1 in n = 0 . . . N − 1. Vsak Imn lahko predstavimo kot linearno kombinacijo treh zgoraj navedenih učinkov Imn = Ī + αm + βn + γmn. (5) Ī označuje povprečno vrednost, izračunano na vrednos- tih pravokotnika P . Ī = 1 MN · M−1∑ m = 0 N−1∑ n = 0 Imn, (6) αm in βn označujeta razliko povprečne vrednosti stolpca m in vrstice n od povprečne vrednosti pravokotnika Ī: αm = 1 N · Cm − Ī , (7) βn = 1 M · Rn − Ī . (8) Učinke preostanka γmn lahko izrazimo kot: γmn = Imn − Ī − αm − βn. (9) Enostavno je pokazati [11], da so učinki βn enaki učinkom −γ0n, zato opisnik uporabi le učinke α in γ. Od tod sledi tudi ime AG opisnika kot okrajšava za alfa- gama. Z normalizacijo opisnika dosežemo robustnost opis- nika na velikost spremembe v kontrastu. Vred- nosti učinkov normaliziramo s standardnimi odkloni, izračunanimi za vektor α učinkov in stolpce pravokot- nika γ učinkov. Velja: α̂ = ( α0 σα , α1 σα , . . . , αM−1 σα ) (10) in γ̂ =   γ00 σγ0 γ10 σγ1 . . . γ(M−1),0 σγ(M−1) γ01 σγ0 γ11 σγ1 . . . γ(M−1),1 σγ(M−1) ... ... . . . ... γ0,(N−1) σγ0 γ1,(N−1) σγ1 . . . γ(M−1),(N−1) σγ(M−1)   , (11) kjer so σα in σγm ;m = 0 . . . M−1 ocenjeni standardni odkloni, izračunani z naslednjima enačbama: σα = √∑M−1 m = 0 α 2 m M − 1 , σγm = √∑N−1 n = 0 γ 2 mn N − 1 . (12) PREPOZNAVA OBRAZOV Z AG OPISNIKOM 11 3 EKSPERIMENTIRANJE 3.1 Testne baze slik Predlagani sistem smo testirali na treh bazah, faces94, faces95 in faces96 zbirke slik obrazov Univerze v Es- sexu*. Podatkovne baze se po težavnosti razlikujejo. Slika 7: Primeri slik iz zbirke slik obrazov Univerze v Essexu. Prva vrstica predstavlja slike iz faces94, druga iz faces95 in tretja vrstica iz podatkovne baze faces96. Podatkovna baza faces94 vsebuje 3059 slik 153 oseb, med katerimi je 20 žensk in 133 moških. Ozadje na slikah je zeleno platno. Osvetlitev obrazov je enaka, velikosti obraza na slikah so enake. Obrazi so lahko rahlo nagnjeni, prisotna pa je tudi sprememba v izrazih na obrazu. Podatkovna baza faces95 vsebuje 1440 slik 72 oseb. Ozadje je rdeča zavesa, ki vsebuje sence, padajoče s slikane osebe. S premikanjem osebe naprej se zgodijo velike spremembe v osvetlitvi obraza zaradi umetnega osvetljevanja. Prisotne so manjše razlike v velikosti obraza, nagibu glave in izrazih na obrazu. Podatkovna baza faces96 vsebuje 3016 slik 152 oseb. Iz podatkovne baze so bile izločene tri slike, na katerih nismo zaznali obraza. Naš detektor obrazov zaznava frontalni del obraza in ne stranskega profila obraza, ki je prisoten na teh slikah. Ozadje je kompleksno, saj vsebuje bleščeče posterje. Prisotne so razlike v velikosti, izrazih in nagibu obraza. Osvetlitev obraza se spremeni, ko se oseba pomakne naprej. 3.2 Rezultati 3.2.1 Izbira tipa izrezave obraza: Ugotoviti smo želeli, kateri tip izrezave obraza da najvišjo klasifikaci- jsko točnost. Klasifikacijska točnost je delež pravilno prepoznanih obrazov glede na vse testirane obraze. Prepoznava obraza je pravilna, če pravilno prepoz- namo osebo, ki ji obraz pripada. Podatkovno bazo smo naključno razdelili na učno in testno množico. Učno množico predstavlja 80 % vseh slik, testno množico pa ∗Zbirka Univerze v Essexu je dosegljiva na: http://cswww.essex.ac.uk/mv/allfaces/. preostalih 20 % slik. Parameter k, ki pomeni število rojev za algoritem k-means, smo nastavili na 1000 in izvedli 10 ponovitev. Testiranje smo ponovili za vse tri tipe izrezav. Značilne lokacije smo najprej določili z mrežo z velikostjo celic 8 × 8 pikslov. Testirali smo naslednje opisnike lokalne regije: SURF [10], SIFT [8], BRISK [9], ORB [15], KAZE [14] in AG [11]. Rezultate za vse tri testne baze in tri različne tipe izrezav prikazuje tabela 1. Kot je razvidno iz posamičnih rezultatov in povprečja rezultatov, izrezava tipa 3 dosega najvišjo klasifikacijsko točnost. Rezultat se zdi smiseln, saj izrezava tipa 3 vključuje največji del obraza, torej največ informacije. Opazimo lahko, da se klasifikaci- jska točnost zmanjšuje s težavnostjo podatkovne baze. Klasifikacijska točnost je najvišja za bazo faces94 in najnižja za bazo faces96. Rezultati, ki so jih dosegli različni opisniki, so si podobni, gre za majhne razlike, manjše od 1 %. Za izrezavo tipa 3 dosega opisnik AG na bazi faces96 najboljši rezultat, na bazi faces95 pa drugi najboljši rezultat. Najslabše rezultate je dosegel opisnik BRISK. Algoritem smo testirali tudi za primer značilnih lokacij, ki jih dobimo z detektorjem. Testirali smo naslednje detektorje: SURF [10], SIFT [8], BRISK [9], ORB [15] in KAZE [14]. Rezultate prikazuje tabela 2. Tudi tu da izrezava tipa 3 v večini primerov na- jboljše rezultate. Klasifikacijska točnost se zmanjšuje s težavnostjo podatkovne baze. Če izberemo izrezavo tipa 3, dosežemo z uporabo detektorjev boljšo kvali- fikacijsko točnost kot pri izbiri ključnih lokacij z mrežo. 3.2.2 Rezultati ob prisotnosti zameglitve in zakritij: Preizkusiti smo želeli tudi robustnost predlaganega sis- tema ob prisotnosti zameglitve slike in zakritja dela obraza. Za prvo nalogo smo slike filtrirali z Gaussovim filtrom s standardno deviacijo σ = 1, 1 piksel. Eksperiment smo izvedli pri določitvi značilnih lokacij z mrežo in detektorjem. Rezultate za izrezavo tipa 3 prikazujeta tabeli 3 in 4. Rezultati, doseženi pri uporabi detektorja značilnih lokacij, so večinoma boljši na bazah faces95 in faces96, pri bazi faces94 pa so rezultati v večini primerov malenkostno slabši od rezultatov, dobljenih pri uporabi mreže. Opisnik AG je dosegel najboljše rezultate za detektor BRISK in ORB. Za drugo nalogo smo četrtino izrezane slike obraza zakrili s kvadratom intenzivnosti nič. Vsako sliko smo zakrili na štiri različne načine s polaganjem kvadrata v drugo oglišče slike. Eksperiment smo izvedli pri določitvi značilnih lokacij z mrežo in detektorjem. Rezultate za izrezavo tipa 3 prikazujeta tabeli 5 in 6. Rezultati so pri uporabi značilnih lokacij, določenih z mrežo malenkostno boljši na testni bazi faces94 in faces96 in slabši na bazi faces95. V tem testu se je najbolje izkazal opisnik AG. Pri izbiri značilnih lokacij z detektorjem je dosegel najboljše rezultate v kombinaciji z detektorjem KAZE. 12 LUŠINA, MAVER Opisnik SURF SIFT BRISK ORB KAZE AG povprečje KT[%] faces94-tip 1 99,36 99,45 99,18 99,40 99,12 99,45 99,33 KT[%] faces94-tip 2 99,79 99,77 99,64 99,78 99,91 99,78 99,78 KT[%] faces94-tip 3 99,97 99,93 99,90 99,90 99,88 99,86 99,91 KT[%] faces95-tip 1 94,13 93,34 93,87 94,14 94,06 93,67 93,87 KT[%] faces95-tip 2 97,16 97,91 97,50 97,61 97,56 97,68 97,57 KT[%] faces95-tip 3 98,71 98,43 98,53 98,42 98,92 98,88 98,65 KT[%] faces96-tip 1 84,43 84,68 84,56 84,92 85,00 84,54 84,69 KT[%] faces96-tip 2 93,89 93,71 93,35 94,04 93,50 93,58 93,68 KT[%] faces96-tip 3 96,66 96,54 96,45 96,71 96,76 96,78 96,65 Tabela 1: Klasifikacijska točnost (KT), dosežena na bazah faces94, faces95 in faces96 z izbiro značilnih lokacij z mrežo in pri uporabi različnih tipov izrezave. Prvi, drugi in tretji rezultat v vrstici so obarvani in poudarjeni. Detektor SURF SIFT BRISK ORB KAZE SURF SIFT BRISK ORB KAZE Opisnik SURF SIFT BRISK ORB KAZE AG AG AG AG AG povprečje KT[%] faces94-tip 1 99,50 99,43 99,36 99,34 99,44 99,28 99,43 99,36 99,62 99,66 99,44 KT[%] faces94-tip 2 99,80 99,76 99,67 99,78 99,70 99,76 99,69 99,92 99,76 99,81 99,76 KT[%] faces94-tip 3 99,85 99,86 99,83 99,80 99,84 99,85 99,76 99,79 99,86 99,88 99,83 KT[%] faces95-tip 1 97,22 97,96 97,53 97,54 97,89 98,06 97,48 97,69 97,53 97,90 97,68 KT[%] faces95-tip 2 98,62 98,44 98,53 98,38 98,47 98,60 98,49 98,29 98,55 98,55 98,49 KT[%] faces95-tip 3 98,75 99,20 98,67 98,97 98,86 98,75 99,31 98,96 98,88 98,74 98,91 KT[%] faces96-tip 1 85,39 85,47 85,52 85,59 84,98 85,63 84,77 85,97 85,56 84,53 85,34 KT[%] faces96-tip 2 92,51 93,53 93,23 92,72 92,72 92,65 92,69 93,39 92,96 92,50 92,89 KT[%] faces96-tip 3 97,78 97,28 97,29 97,26 97,87 97,37 97,20 97,56 97,70 97,65 97,50 Tabela 2: Klasifikacijska točnost (KT), dosežena na bazah faces94, faces95 in faces96 z izbiro značilnih lokacij z detektorjem in pri uporabi različnih tipov izrezave. Prvi, drugi in tretji rezultat v vrstici so obarvani in poudarjeni. SURF SIFT BRISK ORB KAZE AG KT[%] faces94-zameglitev-tip 3 99,86 99,82 99,91 99,93 99,88 99,86 KT[%] faces95-zameglitev-tip 3 98,80 98,66 98,37 98,32 98,56 98,35 KT[%] faces96-zameglitev-tip 3 96,85 96,83 96,72 97,06 96,50 96,48 Tabela 3: Klasifikacijska točnost (KT), dosežena na bazah faces94, faces95 in faces96 z izbiro značilnih lokacij z mrežo pri uporabi izrezave tipa 3 in zameglitvi slike z Gaussovim filtrom. Prvi, drugi in tretji rezultat v vrstici so obarvani in poudarjeni. Detektor SURF SIFT BRISK ORB KAZE SURF SIFT BRISK ORB KAZE Opisnik SURF SIFT BRISK ORB KAZE AG AG AG AG AG KT[%] faces94-zameglitev-tip 3 99,80 99,81 99,85 99,76 99,93 99,76 99,77 99,86 99,79 99,81 KT[%] faces95-zameglitev-tip 3 99,14 99,08 99,17 99,23 98,76 99,02 99,00 99,35 99,32 98,84 KT[%] faces96-zameglitev-tip 3 97,78 97,28 97,29 97,26 97,87 97,37 97,20 97,56 97,70 97,65 Tabela 4: Klasifikacijska točnost (KT), dosežena na bazah faces94, faces95 in faces96 z izbiro značilnih lokacij z detektorjem pri uporabi izrezave tipa 3 in zameglitvi slike z Gaussovim filtrom. Prvi, drugi in tretji rezultat v vrstici so obarvani in poudarjeni. SURF SIFT BRISK ORB KAZE AG KT[%] faces94-zakritja-tip 3 99,90 99,87 99,89 99,90 99,86 99,91 KT[%] faces95-zakritja-tip 3 98,02 98,15 98,01 97,99 98,24 98,25 KT[%] faces96-zakritja-tip 3 96,94 97,10 96,97 97,05 96,63 97,02 Tabela 5: Klasifikacijska točnost (KT), dosežena na bazah faces94, faces95 in faces96 z izbiro značilnih lokacij z mrežo pri uporabi izrezave tipa 3 in prisotnosti zakritij na slikah. Prvi, drugi in tretji rezultat v vrstici so obarvani in poudarjeni. Detektor SURF SIFT BRISK ORB KAZE SURF SIFT BRISK ORB KAZE Opisnik SURF SIFT BRISK ORB KAZE AG AG AG AG AG KT[%] faces94-zakritja-tip 3 99,78 99,80 99,75 99,75 99,79 99,79 99,79 99,78 99,81 99,82 KT[%] faces95-zakritja-tip 3 98,37 98,49 98,46 98,47 98,43 98,51 98,46 98,38 98,52 98,55 KT[%] faces96-zakritja-tip 3 95,86 95,51 95,72 95,56 95,74 95,58 95,64 95,67 95,65 95,91 Tabela 6: Klasifikacijska točnost (KT), pridobljena na bazah faces94, faces95 in faces96 z izbiro značilnih lokacij z detektorjem pri uporabi izrezave tipa 3 ter prisotnosti zakritij na sliki obraza. Prvi, drugi in tretji rezultat v vrstici so obarvani in poudarjeni. PREPOZNAVA OBRAZOV Z AG OPISNIKOM 13 Na testiranih podatkovnih bazah sta se metodi pridobi- vanja značilnih lokacij s pomočjo mreže in detektorjem izkazali za uspešni. Klasifikacijsko točnost bi lahko izboljšali s povečanjem števila rojev k, metodo z mrežo bi lahko še dodatno izboljšali, če bi uporabili gostejšo mrežo. Razlog, da tega nismo storili, je v omejitvi količine virov, ki so nam bili na voljo. Vsi uporabljeni lokalni opisniki in detektorji ključnih točk, z izjemo opisnika AG so implementirani v knjižnici OpenCV. Te implementacije smo tudi uporabili pri testiranju. Koda za opisnik AG je dostopna na [16]. 4 SKLEP V delu smo predlagali sistem za prepoznavo obra- zov. Sistem najprej predprocesira sliko. Ta korak vključuje detekcijo obraza, iskanje verige mejnih točk in izrezavo slike obraza. Raziskali smo tri izrezave slike, za najboljšo se je izkazala izrezava, ki vključuje cel obraz. Za prepoznavo uporabimo metodo vreče besed in klasifiator SVM. Vreča besed uporablja opis- nike AG značilnih lokacij. Predlagali smo dve metodi za določanje značilnih lokacij; prva določi lokacije s pomočjo mreže, druga uporabi detektorje značilnih točk. Testirali smo več detektorjev, rezultati prepoznave so bili podobni. Celoten sistem smo testirali na treh javno dostopnih bazah, ki se po težavnosti razlikujejo. Sistem smo testirali tudi za druge popularne opisnike lokalnih regij. Opisnik AG se je izkazal kot primeren, saj je dosegel povsem konkurenčne rezultate k drugim testi- ranim opisnikom, pri delno zakritih obrazih pa je dosegel najvišjo klasifikacijsko točnost. ZAHVALA Raziskavo je omogočilo Ministrstvo za izobraževanje, znanost in šport Republike Slovenije v okviru programa P2-0214-Računalniški vid. REFERENCES [1] P. Melin and W. Pedrycz. Soft Computing for Recognition Based on Biometrics, volume 312, Springer, 2010. [2] A. J. Goldstein, L. D. Harmon and A. B. Lesk. Identification of human faces. Proceedings of the IEEE, 59(5), pp. 748–760, 1971. [3] L. Sirovich and .l Kirby. Low-dimensional procedure for the characterization of human faces. Josa A, 4(3), pp. 519–524, 1987. [4] M. A. Turk and A. P. Pentland. Face recognition using eigen- faces. Proceedings of the CVPR, pp. 586–591, 1991. [5] M. Kirby and L. Sirovich. Application of the karhunen-loeve procedure for the characterization of human faces. IEEE Trans- actions on Pattern analysis and Machine intelligence, 12(1), pp. 103–108, 1990. [6] K. Etemad and R. Chellappa. Discriminant analysis for recog- nition of human face images. JOSA A, 14(8), pp. 1724–1733, 1997. [7] M. S. Bartlett, J. R. Movellan and T. J. Sejnowski. Face recogni- tion by independent component analysis. IEEE Transactions on neural networks, 13(6), pp. 1450–1464, 2002. [8] D. G. Lowe. Distinctive image features from scale-invariant keypoints. International journal of computer vision, 60(2), pp. 91–110, 2004. [9] S. Leutenegger, M. Chli and R. Y. Siegwart. Brisk: Binary robust invariant scalable keypoints. ICCV, pp. 2548–2555, 2011. [10] H. Bay, A. Ess, T. Tuytelaars and L. Van Gool. Speeded-up robust features (surf). Computer vision and image understanding, 110(3), pp. 346–359, 2008. [11] R. Mandeljc and J. Maver AGs: local descriptors derived from the dependent effects model. Journal of Visual Communication and Image Representation 58, pp. 503–514, 2019. [12] M. Calonder, V. Lepetit, C. Strecha and P. Fua. Brief: Binary robust independent elementary features. ECCV, pp. 778–792, 2010. [13] A. Alahi, R. Ortiz and P. Vandergheynst. Freak: Fast retina keypoint. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pp. 510–517, 2012. [14] P. F. Alcantarilla, A. Bartoli and A. J. Davison. Kaze features. In European Conference on Computer Vision, pp. 214–227, 2012. [15] E. Rublee, V. Rabaud, K. Konolige and G. Bradski, ORB: An efficient alternative to SIFT or SURF, In Proc. IEEE Int. Conf. Comput. Vis., pp. 2564–2571, 2011. [16] R. Mandeljc, AlphaGamma descriptor, https://github.com/rokm/ alphagamma-descriptor, 2017. [17] N. Dalal and B. Triggs. Histograms of oriented gradients for human detection. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, volume 1, pp. 886– 893, 2005. [18] P. F. Felzenszwalb, R. B. Girshick, D. McAllester and D. Ra- manan. Object detection with discriminatively trained part-based models. IEEE transactions on pattern analysis and machine intelligence, 32(9), pp. 1627–1645, 2010. [19] V. Kazemi and J. Sullivan. One millisecond face alignment with an ensemble of regression trees. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pp. 1867–1874, 2014. [20] G. Csurka, C. R. Dance, L. Fan, J. Willamowski and C. Bray. Visual categorization with bags of keypoints. In Workshop on Statistical Learning in Computer Vision, ECCV, pp. 1–22, 2004. [21] D. G. Stork, O. Duda, P. E. Hart. Pattern classification. John Wiley & Sons, 2000. [22] J. Maver. Self-similarity and points of interest. IEEE transac- tions on pattern analysis and machine intelligence, 32 (7), pp. 1211–1226, 2010. Domen Lušina je leta 2017 postal diplomirani inženir računalništva in informatike (UN) na Fakulteti za računalništvo in informatiko Univerze v Ljubljani. Trenutno nadaljuje študij na magistrskem pro- gramu Računalništvo in matematika na Fakulteti za matematiko in fiziko Univerze v Ljubljani. Zanima se predvsem za področje umetne inteligence in rudarjenja podatkov. Jasna Maver je leta 1995 doktorirala s področja računalništva na Fakulteti za računalništvo in informatiko Univerze v Ljubljani. V letih 1990 in 1991 je bila raziskovalka v laboratoriju GRASP na Univerzi v Pensilvaniji, kjer je raziskovala na področju aktivnega robotskega vida. Je izredna profesorica za računalništvo in informatiko na Univerzi v Ljubljani. Zaposlena je na Oddelku za bibliotekarstvo, informacijsko znanost in knjigarstvo na Filozofski fakulteti, kjer predava računalniške predmete. Na raziskovalnem področju sodeluje z Laboratorijem za računalniški vid in Laboratorijem za umetne vizualne spoznavne sisteme na Fakulteti za računalništvo in informatiko. Njeno trenutno področje raziskovanja je gradnja nizkonivojskih opisnikov lokalnih regij v slikah, ki jih lahko uporabimo za različne naloge računalniškega vida, med katere lahko uvrstimo tudi prepoznavo obrazov.