Aplicații biometrice. [618410]
Capitolul 1
Aplicații biometrice.
Recunoașterea fețelor
1.1 Recunoa șterea fețelor
1.2 Algoritmi de recunoa ștere a fețelor
1.3 Aplica ții ale algoritmilor de
recunoaștere a fețelor
1.4 Discu ție asupra sistemelor biometrice
2 CAPITOLUL 1: RECUNOA ȘTEREA FE ȚELOR
Identitatea unei persoane este reprezentat ă nu de actele oficiale pe care le de ține,
ci de un set extins, complex, variabil în timp și nu întotdeauna u șor de definit de
trăsături personalizate, de natur ă anatomic ă, fiziologic ă sau comportamental ă.
Unele dintre aceste tr ăsături (considerate izolat sau sub forma unor combina ții) pot
fi folosite, împreun ă cu tehnici automate de procesare a semnalelor, pentru
implementarea a șa-numitelor sisteme biometrice , capabile s ă recunoasc ă sau să
valideze autenticitatea identit ății unor persoane. Drept informa ții biometrice se
utilizează în mod curent amprentele, vocea, fa ța, irisul, forma geometric ă a mâinii.
Spre deosebire de modalit ățile tipice de identificare precum legitima țiile, cheile,
parolele sau codurile PIN ( Personal Identification Number ), informa țiile
biometrice nu pot fi pierdute, furate sau uitate (îns ă uneori pot fi reproduse cu
acuratețe suficient ă pentru a “p ăcăli” sistemele automate de recunoa ștere).
Pentru definirea și măsurarea performan țelor trebuie avute în vedere urm ătoarele
elemente ce compun un sistem biometric ideal :
toți membrii popula ției posedă caracteristicile pe care sistemul le identific ă
fiecare “semn ătură” biometric ă a unei persoane difer ă de semn ăturile tuturor
celorlalte persoane din popula ția supusă analizei
“semnătura” biometric ă nu variaz ă semnificativ în func ție de condi țiile
particulare în care este extras ă (obținută)
sistemul rezist ă tentativelor de fraudare a semn ăturilor
Metodologiile de evaluare a sistemelor biometrice cuantific ă măsura în care
sistemele reale se apropie de aceste cerin țe ideale. Sunt avute în vedere dou ă clase
de aplicații, de identificare (recunoaștere) , respectiv de verificare (autentificare) :
– într-un sistem de identificare (recunoa ștere), “semn ătura” biometric ă a unei
persoane necunoscute este prezentat ă la intrarea sistemului, urmând a fi comparat ă
cu cele disponibile într-o baz ă de date alc ătuită din “semn ături” ale unui set de
persoane cunoscute. Sistemul furnizeaz ă ca răspuns identitatea persoanei din baza
de date a c ărei “semn ătură” seamănă cel mai bine – conform unei distan țe (metrici)
definite adecvat! – cu cea a persoanei necunoscute (în principiu exist ă și
posibilitatea ca sistemul s ă decidă că persoana necunoscut ă nu seamănă cu nimeni
din baza de date, dac ă distanța minimă depășește totuși o anumit ă valoare de prag).
1.1 Recunoa șterea fețelor 3
Ca exemple amintim situa țiile în care poli ția urmărește identificarea unui infractor
pe bază de amprente sau fotografii, precum și situațiile în care aceea și persoan ă
încearcă să depună în mod fraudulos mai multe documenta ții în vederea ob ținerii
unor avantaje materiale (de exemplu, depunerea a mai multor dosare de ob ținere a
pașaportului sau a carnetului de conducere).
– într-o aplica ție de verificare, o persoan ă prezintă “semnătura” sa biometric ă și
pretinde c ă are identitatea care corespunde acelei “semn ături”, pe baza c ăreia vrea
să obțină dreptul de acces într-un spa țiu sau la anumite resurse restric ționate.
Sistemul poate accepta sau respinge aceast ă cerere, respectiv poate furniza un grad
de încredere asupra validit ății identității pretinse. Ca exemple practice putem
menționa autentificarea identit ății în tranzac țiile bazate pe utilizarea cardurilor,
precum și accesul restric ționat la anumite calculatoare sau incinte de cl ădiri.
Este important de subliniat c ă indicatorii de performan ță utilizați în sistemele de
verificare difer ă net de cei utiliza ți de sistemele de identificare (recunoa ștere).
Astfel, calitatea unui sistem de identificare este m ăsurată de procentajul de
răspunsuri corecte dintr-un num ăr suficient de mare de teste. De exemplu, pentru
identificarea unui suspect, poli ția utilizeaz ă o bază de date în format electronic ce
conține fotografii pentru un num ăr foarte mare de infractori. Un test tipic const ă în
furnizarea la intrarea sistemului a fotografiei unei persoane necunoscute, iar răspunsul sistemului const ă într-o list ă sortată de fotografii (sortat ă de regul ă în
ordine descresc ătoare a gradului de similari tate cu imaginea persoanei
necunoscute). Astfel, indicatorul de performan ță avut în vedere es te procentajul de
situații în care identitatea persoanei necunoscute se reg ăsește cu adev ărat printre
primele “k” r ăspunsuri ale sistemului (tipic, k=5). Pe de alt ă parte, în cazul
sistemelor de verificare, se utilizeaz ă în mod tradi țional dou ă tipuri de erori:
rată falsă de rejecție (False Reject Rate )
rată falsă de acceptare ( False Acceptance Rate )
O rejecție falsă apare când sistemul refuz ă o identitate valid ă, iar o acceptare fals ă
apare atunci când sistemul accept
ă o identitate fals ă. Într-un sistem biometric ideal,
ambele rate de erori ar fi zero. În practic ă, sistemele realizeaz ă un anumit
compromis. De regul ă, sistemele se proiecteaz ă pentru a avea o valoare fixat ă a
4 CAPITOLUL 1: RECUNOA ȘTEREA FE ȚELOR
ratei de acceptare fals ă, ce va conduce în mod corespunz ător la determinarea
valorii ratei de rejec ție falsă. Alegerea acestor parametri depinde de aplica ția avută
în vedere. Astfel, la cititoarele de carduri (ATM), rata de rejec ție falsă va fi aleas ă
mică pentru a nu crea disconfort clien ților de bun ă credință. Pe de alt ă parte, în
situațiile de acces restric ționat în anumite spa ții, factorul principal avut în vedere
va fi alegerea unei rate false de acceptare cât mai mici. Recent a fost propus ă o
generalizare a aplica țiilor de verificare denumit ă generic watch list , în care
verificarea identit ății unei persoane necunoscute se efectueaz ă în raport cu o list ă
de persoane “suspecte” și nu față de o singur ă persoană.
Arhitectura unui sistem biometric generic include urm ătoarele module [18]:
a) un senzor utilizat pentru colectarea infoma țiilor primare și conversia acestora
în format digital b) un algoritm de procesare de semnal care va extrage o „semn ătură” biometric ă
adecvată
c) o bază de date în care se stocheaz ă „semnături” provenind de la o popula ție de
subiecț
i
d) o procedur ă de compara ție a “semn ăturii” corespunz ătoare unei persoane
necunoscute cu cele stocate în baza de date e) o procedur ă de decizie (complet automat ă sau asistat ă de către om) care
utilizează rezultatul compara ției anterioare în vederea efectu ării unei ac țiuni.
Este important de subliniat c ă datorită dificultății aplicațiilor biometrice, precum și
a cerințelor de performan ță impuse, se folosesc deseori sisteme complexe, care
urmăresc recunoa șterea/identificarea unei persoane folosind mai multe tipuri de
“semnături”, de exemplu imaginea fe ței (sau amprenta) și vocea. Pentru testarea
sistemelor biometrice au fost elaborate protocoale de evaluare standardizate. Astfel, pentru recunoa șterea fețelor, institutul american NIST ( National Institute of
Standards and Technology ) a elaborat standardul FERET ( Face Recognition
Technology ) și a efectuat de asemenea evalu ări ale tehnologiei de recunoa ștere a
vorbitorului. De regul ă, astfel de evalu ări fac obiectul unor competi ții deschise atât
companiilor cât și universit ăților și sunt coordonate de c ătre un grup de exper ți
independen ți.
1.1 Recunoa șterea fețelor 5
1.1 Recunoa șterea fețelor
Fața joacă un rol esen țial în rela țiile sociale, în comunicarea identit ății și a
emoțiilor. Capacitatea umana de a recunoa ște fețele este remarcabil ă: putem
recunoaște mii de figuri înv ățate de-a lungul vie ții și identifica fe țele familiare dintr-o
singură privire chiar dup ă ani de zile. Aceast ă capacitate este destul de robust ă, în
ciuda schimb ărilor mari în stimulul vizual datorate condi țiilor de vizualizare,
expresiei, îmb ătrânirii și altor factori perturbatori precum prezen ța ochelarilor, a
bărbii sau schimb ări ale coafurii. Ca urmare, acest subiect a fost în centrul aten ției
unor grupuri numeroase de cercet ători din întreaga lume în ultimele dou ă decenii și
a pătruns de curând și în circuitul comercial: se estimeaz ă că piața aplicațiilor
biometrice va dep ăși 2 miliarde $ pân ă la sfârșitul lui 2006, ajungând la
aproximativ 5.5 miliarde $ în 2010, cu o rat ă de creștere anual ă de aproximativ
25% [8]. Pe de alt ă parte, în ciuda numeroaselor solu ții originale raportate în
literatură, tehnicile actuale sunt înc ă departe de a oferi nivele de performan ță
acceptabile pentru introducerea acestor tehnologii în domenii sensibile precum
controlul identit ății călătorilor în aeroporturi sau controalele vamale.
Deși atractivă deoarece nu presupune contact direct între subiect și senzor (se
spune că este o tehnic ă neinvaziv ă), recunoa șterea feței este o sarcin ă dificilă
datorită surselor numeroase de variabilitate în condi ții reale. Acestea includ printre
altele: orientarea fe ței în raport cu aparatul de fotografiat sau camera de filmat,
nivelul de iluminare, expresia fe ței, timpul scurs între momentele prelev ării unor
imagini distincte, precum și aspectele demografice (rasa, vârsta, sexul). Asigurarea
invarianței în raport cu transform ări elementare precum transla ția, rotația sau
schimbarea rezolu ției reprezint ă de asemenea o cerin ță obligatorie. Schema-bloc a
unui sistem generic de recunoa ștere a fețelor se prezint ă în Fig. 1.1, în care se
distinge prezen ța unui modul de extragere a “semn ăturii” specifice fiec ărei fețe și a
unui modul de clasificare, a c ăror proiectare este de regul ă corelată.
Există 2 abordări majore pentru a ob ține informa ția caracteristic ă unei fețe, cu
avantaje și dezavantaje specifice, ce pot fi folosite pentru extragerea “semn ăturilor”
de interes atât pentru aplica ții de recunoa ștere cât și pentru cele de verificare,
diferențe apărând datorit ă tipului de clasificator utilizat:
6 CAPITOLUL 1: RECUNOA ȘTEREA FE ȚELOR
Fig. 1.1 Schema-bloc a unui sistem de recunoa ștere/verificare a fe țelor
a) algoritmi baza ți pe analiza statistic ă a imaginilor disponibile, al c ăror scop
constă în identificarea unei baze reprezentative în raport cu care s ă poată fi
exprimată orice imagine sub forma unei combina ții liniare de vectori ai bazei. Din
această categorie fac parte metode precum Analiza pe Componente Principale
(PCA) [24], Analiza Discriminatorie Liniar ă (LDA) [2] și Analiza pe Componente
Independente (ICA) [1]. b) algoritmi baza ți pe măsurarea unor tr ăsături geometrice referitoare la distan țe
între puncte semnificative de pe suprafa ța feței. Ca exemple putem enumera
metodele Elastic Bunch Graph Matching [25] și Local Feature Analysis [19].
Câteva studii recente [9, 28] trec în revist ă tendințele actuale din acest domeniu,
printre care men ționăm:
– extensii de tip nucleu ( kernel ) ale unor metode clasice de proiec ție pe subspa ții
liniare, care au condus la apari ția algoritmilor de tip Kernel PCA/LDA/ICA
– algoritmi baza ți pe utilizarea unor reprezent ări folosind baze cu bun ă localizare
spațială, respectiv metode urm ărind descompunerea fe țelor în componente distincte
(gupate în jurul unor puncte reprezenta tive precum ochii, nasul, gura – denumite
generic puncte fiduciale )
– analiza imaginilor 3D și aplicarea tehnicilor de morfism
(care urm ăresc generarea
unor imagini virtuale ale unei persoane pornind de la un set de imagini captate din
unghiuri neconvenabile) – un număr semnificativ de articole recente au ca element comun abordarea bazat ă
pe modelarea și aproximarea distribu ției spațiale a imaginilor reprezentând fe țe
umane sub forma a șa-numitelor variet ăți matematice ( manifolds ).
1.1 Recunoa șterea fețelor 7
Alte aspecte interesante se refer ă la asigurarea unei toleran țe sporite în raport cu
numeroasele surse de variabilitate specifice acestor aplica ții (grad de iluminare
variabil, pozi ție, transform ări geometrice, acoperire par țială), elaborarea unor
metode capabile s ă ofere performan țe rezonabile în condi țiile existen ței unor baze
de date de dimensiune redus ă, detecția automat ă a punctelor fiduciale.
Înțelegerea profund ă a conținutului informa ției despre imaginile care reprezint ă
fețe umane este o cerin ță fundamental ă pentru succesul oric ărui sistem performant
de recunoa ștere sau verificare și se poate dovedi folositor și în alte aplica ții de
recunoaștere a formelor ( pattern recognition ). Enumer ăm în continuare
principalele aspecte critice referitoare la acest subiect, indicate în Fig. 1.2, prezentându-le ca pe un sumar de întreb ări fundamentale și indicând solu țiile
raportate în literatur ă.
Fig. 1.2 Aspecte specifice aplica țiilor de recunoa ștere/verificare a fe țelor
Ce reprezint ă o față?
Dacă transform ăm o imagine de dimensiuni NxN pixeli într-un vector de
dimensiune N2, acesta poate fi privit ca un punct într-un spa țiu N2 – dimensional.
Imaginile reprezentând fe țe umane ocup ă doar un mic subspa țiu al acestui spa țiu
multidimensional, cu caracteristici specifice. Se poate ar ăta că modific ările
8 CAPITOLUL 1: RECUNOA ȘTEREA FE ȚELOR
obișnuite precum transla ția, rotația, sau schimbarea nivelului de iluminare, atunci
când au amplitudine mică, definesc simple subregiuni compacte din “subspa țiul
fețelor”. Pentru transform ări mai generale – rota ții mari, acoperire par țială,
schimbări de scal ă – subregiunile fe ței devin non-convexe. Un exemplu în acest
sens este dat în Fig. 1.3, ar ătând că o combina ție liniară dintre o fa ță și versiunea sa
rotită nu este o imagine valid ă a unei fe țe. În plus, asem ănarea dintre imaginea
originală și versiunea sa transformat ă se degradeaz ă rapid odat ă cu creșterea
amplitudinii parametrilor ce descriu transform ările respective. În Fig. 1.4 este
ilustrată această observație, unde func ția de corela ție este aleas ă ca o măsură a
asemănării dintre vectorii compara ți [22].
Datorită atributului “non-convex”, metodele de procesare a fe ței bazate pe o
singură imagine sunt limitate în performan ță. Apare acum o întrebare interesant ă:
de câte imagini bidimensionale (2-D) este nevoie pentru a reprezenta o fa ță,
indiferent de orientarea acesteia? Câteva r ăspunsuri au fost date în literatur ă,
indicând faptul c ă 4 sau 5 imagini sunt suficiente pentru a acoperi toate unghiurile
de vedere (alegerea lor este dependent ă de un set de constrângeri) [3].
Spațiul fețelor
Fig. 1.3 Exemplu indicând non-convexitatea spa țiului fețelor:
imaginea original ă, versiunea rotit ă a aceleea și fețe, combina ție liniară între fețe
1.1 Recunoa șterea fețelor 9
Fig. 1.4 Asemănarea dintre imaginea original ă a feței și versiunea ei transformat ă se
deterioreaz ă rapid pe m ăsura creșterii valorii parametrilor ce definesc transformarea:
a) translație pe axa X; b) transla ție pe axa Y; c) rota ție; d) modificarea scalei
Care este cea mai distinctiv ă informație?
După cum s-a men ționat anterior, exist ă 2 strategii majore implicate în ob ținerea
"semnăturii" feței, anume:
a) tehnica geometric ă, bazată pe extrac ția pozițiilor relative și a altor parametri
dependen ți de puncte particulare precum ochii, col țurile gurii, nasul și bărbia
b) tehnica bazat ă pe modele ( templates ), în care matricele reprezentând valorile de
intensitate luminoas ă a pixelilor care alc ătuiesc fața de test și, respectiv, cea de
referință sunt procesate convenabil, urmând ca rezultatele s ă fie comparate
utilizând un anumit tip de m ăsură a similitudinii (câteodat ă sunt folosite mai multe
modele pentru fiecare fa ță).
Alegerea procedeului specific de extragere a "semn ăturii" este dictat ă de
capacitatea distinctiv ă a informa ției rezultate. Din moment ce imaginile fe ței sunt
reprezentate în mod obi șnuit printr-o matrice de dimensiuni considerabile, se
folosesc diverse metode de compresie, liniare sau neliniare, precum Analiza pe Componente Principale ( Principal Components Analysis – PCA) pentru ob ținerea
10 CAPITOLUL 1: RECUNOA ȘTEREA FE ȚELOR
unei reprezent ări de dimensiuni mult reduse a imaginii originale, f ără o pierdere
semnificativ ă a calității. Mai mult, Analiza Discriminatorie Liniar ă (Linear
Discriminant Analysis – LDA) este adesea aleas ă pentru a identifica direc țiile din
“spațiul fețelor” de-a lungul c ărora separarea „semn ăturilor” este maxim ă.
O abordare original ă constă în organizarea spa țiului fețelor în mod ierarhic,
partiționarea urmând o structur ă de tip arbore. Merit ă notat că tipul de codare a
imaginilor originale poate fi de asemenea influen țat de necesitatea de a asigura
invarianța la transform ări comune. O direc ție recentă de cercetare este legat ă de
așa-numitul " optical flow " [15], bazat pe reprezentarea varia ției (gradientului) în
intensitate dintre dou ă imagini distincte ale acelea și persoane.
O observa ție foarte interesant ă este legat ă de reprezentarea imaginilor în
domeniul frecven ță: informa ția de faz ă este mult mai important ă pentru
discriminare (separare) decât cea de amplitudine, dup ă cum sugereaz ă exemplul
din Fig. 1.5 [21].
Fig. 1.5 a) imagini originale; b) aceea și amplitudine și fază aleatoare;
imagini reconstruite utilizând informa ția de amplitudine corect ă și faza
corespunz ătoare celeilalte persoane
1.1 Recunoa șterea fețelor 11
Procesare local ă sau global ă ?
Modularitatea reprezint ă o caracteristic ă fundamental ă a creierului uman, care a
inspirat numeroase studii ale cercet ătorilor din domeniul neurofiziologiei, dar și al
rețelelor neurale artificiale. Dintre avantajele fa ță de structurile nemodulare
amintim timpul redus de antrenare, degradarea mai lent ă a performan țelor odată cu
creșterea complexit ății aplicației considerate, în țelegerea mai comod ă a rolului
jucat de diversele componente ale unui sistem complex. În cazul aplica țiilor de
recunoaștere a fețelor, abordarea modular ă este strâns legat ă de tehnicile care î și
propun extragerea unei semn ături bazate pe procesare local ă, efectuat ă în jurul
unor puncte reprezentative (ochi, nas, gur ă). În aceast ă categorie sunt incluse
metodele denumite Elastic Bunch Graph Matching [25] și Local Feature Analysis
[19], precum și cele bazate pe utilizarea filtrelor Gabor [16]. La polul opus se
situează așa-numitele metode holistice , care extrag semn ături luând în considerare
întreaga fa ță. În plus, abordarea modular ă a fost utilizat ă și pentru a compensa
problemele cauzate de orientarea variabil ă a capului în raport cu aparatul de
fotografiat [20].
Cum se asigur ă invarianța în raport cu transform ări elementare ?
Aplicațiile de recunoa ștere a feței se confrunt ă cu multe surse de variabilitate,
printre care putem enumera orientarea în raport cu aparatul de fotografiat, nivelul
de iluminare, acoperirea par țială, expresia fe ței, intervalul de timp care separ ă
momentele de achizi ție a unor imagini distincte ale unei aceleea și persoane.
Variațiile datorate nivelului de iluminare au atras o aten ție deosebit ă, datorită
necesității de a beneficia de me tode robuste de recunoa ștere inclusiv în cazul
imaginilor captate îm mediul exterior, nu numai al celor ob ținute în înc ăperi cu
condiții controlate. Astfel, au fost elaborate analize teoretice asupra subspa țiilor
generate de imagini supuse ilumin ării variabile, identificându-se num ărul minim
de surse de lumin ă distincte necesare pentru a modela o fa ță indiferent de direc ția
de iluminare [3]. În plus, sistemele automate de procesare a fe țelor ar trebui s ă tolereze între anumite
limite și prezența unui set de transform ări geometrice elementare precum
12 CAPITOLUL 1: RECUNOA ȘTEREA FE ȚELOR
translațiile, rotațiile în planul imaginii sau schimb ările de scal ă. Au fost propuse
două abordări majore pentru atingerea acestui obiectiv:
a) algoritmi de procesare care asigur ă extragerea din imaginile originale a unor
trăsături invariante la astfel de transform ări. Drept exemple din aceast ă categorie
putem enumera: – funcții de autocorela ție de ordin superior (invarian ță la transla ție) [10] definite
prin relația următoare, unde I( r) desemneaz ă imaginea, iar a
i vectori de deplasare
în planul P al imaginii:
11( ,.., ) ( ) ( )… ( ) NN
Pf II I d=+ +∫aa r r a r a r (1.1)
– modulul transformatei Fourier (bidimensionale) a imaginii originale (invarian ță la
translație)
– reprezentarea în coordonate polare a im aginii originale (în realitate, distan ța unui
punct față de originea sistemului de coordonate se reprezint ă pe o scal ă
logaritmic ă, astfel încât reprezentarea este de tip log-polar [11]). Ca urmare, rota ția
în planul imaginii, respectiv m odificarea scalei de vizualizare ( zoom -ul), se vor
reduce la apari ția unor transla ții de-a lungul uneia dintre cele 2 axe. Pentru a
asigura invarian ța în raport cu aceste dou ă transform ări va fi necesar s ă extragem o
informație invariant ă doar în raport cu transla ția, de exemplu folosind una dintre
metodele enumerate anterior. Metoda denumit ă spectroface [12] extrage tr ăsături
invariante în raport cu toate cele 3 tipuri de transform ări elementare, combinând
reprezentarea log-polar ă cu utilizarea transformatei Fourier.
b) efectul aplic ării unei transform ări elementare poate fi folosit explicit în defini ția
distanței utilizate pentru aprecierea si militudinii dintre imagini. Aceast ă abordare
este ilustrat ă prin metodele bazate pe a șa-numita distanță de tip tangent ă [23] și,
respectiv, modelele de deformare ( Active Appearance Models ) [28].
Cum depind performan țele de componen ța spectral ă și rezoluția de
reprezentare ?
O serie de studii indic ă faptul că frecvențele spațiale joase, respectiv cele înalte
joacă roluri diferite în privin ța recunoa șterii și concluzioneaz ă că:
1.1 Recunoa șterea fețelor 13
– componentele de joas ă frecvență sunt suficiente pentru recunoa ștere
– efectul expresiei faciale poate fi ate nuat prin eliminarea componentelor de
frecvență înaltă
De obicei tehnicile bazate pe Transformata Wavelet Discret ă (DWT) sunt folosite
pentru a extrage semn ături de frecven ță joasă a feței, ca în exemplul din Fig. 1.6
[11, 12]. Influen ța rezoluției de reprezentare asupra ratei de recunoa ștere a fost de
asemenea analizat ă în literatur ă și este interesant de semnalat faptul c ă o rezoluție
de numai 32×32 pixeli este suficient ă pentru a ob ține performan țe rezonabile (în
fapt, anumite aplica ții precum simpla identificare a genului b ărbat/femeie necesit ă
chiar rezolu ții mai mici).
Fig. 1.6 a) expresie normal ă; b) reprezentare de joas ă frecvență a expresiei normale
după aplicarea DWT; c) expresie fericit ă; d) reprezentare de joas ă frecvență a expresiei
fericite dup ă aplicarea DWT
Ce clasificator s ă utilizăm ?
Una dintre cele mai surprinz ătoare observa ții indicate în literatur ă arată că
distanțele dintre imaginile unei acelea și persoane care difer ă prin condi țiile de
iluminare sau prin orientarea în raport cu aparatul de fotografiat sunt mai mari
14 CAPITOLUL 1: RECUNOA ȘTEREA FE ȚELOR
decât distan țele dintre imagini ale unor persoane diferite, prelevate îns ă în acelea și
condiții. Aceste observa ții transform ă recunoșterea feței într-o sarcin ă foarte
dificilă, iar proiectarea clasificatorului nu este deloc simpl ă. Sunt utilizate cu
precădere următoarele dou ă strategii:
a) regula “celui mai apropiat vecin” ( nearest-neighbor rule ): când o imagine test
este prezentat ă la intrarea sistemului de recunoa ștere a feței (care a fost antrenat
anterior cu un set de imagini prototip), ie șirea este definit ă prin eticheta
prototipului care este cel mai apropiat (conform unei distan țe (metrici) adecvate) de
imaginea de test. În mod obi șnuit compara ția este făcută luându-se în considerare
nu imaginile originale, ci “semn ăturile” extrase prin proceduri specifice, iar
alegerea concret ă a distan ței poate fi adaptat ă aplicației considerate. Uneori, o
strategie ierarhic ă se poate dovedi superioar ă din punctul de vedere al ratei de
recunoaștere sau robuste ții clasific ării. De asemenea, se poate folosi un ansamblu
de clasificatoare distincte având tip uri diferite de date de intrare.
b) rețele neurale recurente [4]: sistemele dinamice neliniare pot avea, în anumite
condiții, puncte de echilibru stabil în poziții predefinite. Acelor puncte de echilibru
le vor corespunde un set de imagini prot otip din baza de date de antrenare.
Imaginile unor persoane de test, v ăzute ca versiuni zgomotoase, incomplete sau
distorsionate ale imaginilor prototip, vor servi drept condiții inițiale aparținând
bazinelor de atrac ție ale acestor puncte de echilibru, iar dinamica sistemului va
conduce în final la stabilizarea ie șirii chiar la valorile vectorilor prototip. Aceast ă
abordare a fost folosit ă cu precădere în leg ătură cu strategia de asociere temporal ă
a imaginilor (vederi u șor diferite ale aceleea și persoane sunt de regul ă obținute în
strictă succesiune temporal ă). Avantajul unei asemenea abord ări în compara ție cu
regula “celui mai apropiat vecin” const ă în faptul c ă nu mai este necesar calculul
unei distan țe în raport cu toate imaginile prototip (aspect dificil dac ă baza de date
prototip are dimensiune mare), îns ă dificultățile sunt legate de necesitatea de
stocare doar a punctelor de echilibru dorite, nu și a unora false, precum și de
capacitatea limitat ă de memorare a imaginilor prototip.
O abordare interesant ă este legat ă de așa-numitele rețele neurale autoasociative ,
a căror arhitectur ă este prezentat ă în Fig. 1.7: o re țea multistrat având acela și
1.2 Algoritmi de recunoa ștere a fețelor 15
număr de intrări și ieșiri, precum și aceleași date livrate ca intr ări și ieșiri dorite,
este antrenat ă folosind exemple apar ținînd unei singure clase (diferite imagini ale
unei acelea și persoane). În faza de testare, o imagine nou ă este aplicat ă la intrare,
iar eroarea de reconstruc ție (distanța euclidian ă dintre intrare și ieșire) este folosit ă
ca informa ție descriminatorie: dac ă imaginea apar ține clasei corecte (imaginea de
test corespunde persoanei ale c ărei fotografii au fost utilizate pentru determinarea
valorilor parametrilor re țelei neurale) aceast ă eroare va fi mult mai mic ă decât în
cazul altor clase. Aceast ă abordare este folositoare în mod particular în aplica țiile
de verificare și rezolvă problemele datorate existen ței unui num ăr limitat de
fotografii corespunz ătoare unei aceleea și persoane.
Fig. 1.7 Arhitectura unei re țele neurale autoasociative
1.2 Algoritmi de recunoa ștere a fețelor
În literatur ă au fost propuse numeroase tehnici de recunoa ștere/autentificare a
fețelor, cu grade de complexitate, constrângeri, performan țe și arii de aplicabilitate
foarte diverse. În mod special, identificarea, extragerea și ierarhizarea setului de
trăsături semnificative care va constitui „semn ătura” fiec ărei fețe supuse analizei
continuă să reprezinte un subiect de larg interes. Paleta foarte larg ă de opțiuni din
această categorie poate fi clasificat ă ținând cont de o serie de criterii precum natura
informațiilor extrase (distingem tr ăsături rezultate din geometria specific ă fețelor,
respectiv în urma aplic ării unei proceduri de proiec ție pe subspa ții liniare sau
neliniare specifice), aria imaginii supuse proces ării (vom reg ăsi metode, denumite
holistice , care prelucreaz ă întreaga imagine, respectiv solu ții orientate pe zone
limitate situate în jurul punctelor fiduciale), gradul de localizare spa țială a
16 CAPITOLUL 1: RECUNOA ȘTEREA FE ȚELOR
trăsăturilor, natura real ă (eventual binar ă) sau complex ă a semn ăturii,
modularitatea arhitecturii, robuste țea în raport cu numeroasele surse de variabilitate
specifice acestor aplica ții. De multe ori alegerea metodei de extragere a tr ăsăturilor
semnificative este strâns legat ă de tipul clasificatorului ce urmeaz ă a fi utilizat în
vederea furniz ării deciziei. Mai mult, dimensiunea și particularit ățile bazei de date
disponibile impun constrângeri suplimentare în privin ța alegerii solu ției adecvate.
În cele ce urmeaz ă vom trece în revist ă câteva dintre tehnicile semnificative
descrise în literatur ă, menționând aspectele teoretice, avantajele și dezavantajele,
precum și codul MATLAB corespunz ător.
Analiza pe Componente Principale (PCA)
De regulă, bazele de date folosite în experimentele de recunoa ștere a fețelor
conțin imagini de dimensiune foarte mare. O astfel de “risip ă” de resurse, valabil ă
de altfel și în cazul semnalelor vocale sau al altor imagini naturale, conduce la o
robustețe semnificativ ă, care permite receptarea corect ă a informa ției transmise,
chiar în condi țiile în care aceasta este afecatat ă de zgomot, este distorsionat ă sau
incomplet ă. Pe de alt ă parte, dimensiunile mari complic ă semnificativ
implementarea practic ă a diverselor tehnici de procesare, cresc volumul de calcul
și, în plus, necesit ă existența unui num ăr sporit de imagini în baza de date cu care
se opereaz ă (dacă imaginile originale sunt v ăzute ca puncte într-un spa țiu
multidimensional, cu cât dimensiunea spa țiului este mai mare, cu atât mai multe
puncte sunt necesare pentru a asigura o “acoperire” mai bun ă a întregului spa țiu, în
vederea asigur ării unei aproxim ări adecvate a densit ății reale de reparti ție a tuturor
punctelor reprezentând imagini valide de fe țe umane). În acest context, se dovedesc
utile tehnicile de compresie , folosite pentru a reduce di mensiunea datelor originale,
în condițiile unor pierderi de informa ție (inevitabile) cât mai mici.
Tehnicile de compresie uzuale apar țin de regul ă uneia din urm ătoarele 3 categorii:
a) codare (liniar) predictiv ă; b) calcul de transformate liniare; c) cuantizare
vectorială. În cele ce urmeaz ă vom introduce una dintre cele mai cunoscute metode
de compresie apar ținând celei de a doua clase, denumit ă Analiza pe Componente
Principale ( Principal Component Analysis – PCA) sau transformata Karhunen-
Loeve. Astfel, s ă consider ăm că avem la dispozi ție N vectori xn aparținând unui
1.2 Algoritmi de recunoa ștere a fețelor 17
spațiu vectorial de dimensiune D c ărora li se asociaz ă, prin intermediul unei
transformate liniare descrise de matricea [ W] MxN, un set de vectori de dimensiune
mai mică M < D, conform rela ției:
,1 nn nN ==yW x … (1.2)
În spațiul original, vectorul xn poate fi scris sub forma unei combina ții liniare a
elementelor unei baze ortonormate { ui, i = 1…D} sub forma:
,
1,1D
ni n i
iwn N
===∑ xu … (1.3)
în care coeficien ții w i,n se calculeaz ă cu relația:
, ,1Tin i nwn N ==ux … (1.4)
Să presupunem c ă dorim să reținem din descompunerea (1.3) numai un set redus de
M termeni, iar restul coeficien ților w i,n să fie înlocui ți cu valori constante :
,
11,1MD
ni n i i i
ii Mwc n N
== +=+ =∑∑ xu u … (1.5)
Ideea fundamental ă a metodei PCA este de a g ăsi baza particular ă care asigur ă
minimizarea erorii p ătratice medii dintre seturile de vectori xn și nx:
2 2,
11 111()22NN D
nn i n i
nn i ME wc
== = +=− = −∑∑ ∑xxI (1.6)
Un rezultat fundamental cunoscut sub denumirea de transformata Karhunen-
Loeve (KLT) demonstreaz ă că această bază este format ă din vectorii proprii ai
matricii de autocovarian ță a vectorilor xn:
11{ ( ) ( ) } () ()NTTnn
nSEN==− −≈ −− ∑ XX XX x x x x (1.7)
unde x desemneaz ă valoarea estimat ă (pe baza setului finit de N exemple) a
valorii medii a procesului aleator reprezentat de vectorii xn. În plus, valorile
constantelor c i sunt date de rela ția:
18 CAPITOLUL 1: RECUNOA ȘTEREA FE ȚELOR
,
11NTii n i
ncwN===∑ ux (1.8)
Utilizarea acestor rezultate pentru compresia de date presupune parcurgerea succesiv ă
a câtorva pa și: a) calculul valorii medii x a vectorilor supu și analizei; b) determinarea
valorilor λi și vectorilor proprii ui ai matricii de autocovarian ță S; c) aplicarea rela ției
(1.5) pentru un num ăr M < D de vectori proprii corespunz ători celor mai mari valori
proprii ale matricii de autocovarian ță S (așa-numitele componente principale). În
multe aplica ții practice se dovede ște că cea mai mare parte a energiei semnalelor
originale se reg ăsește acumulat ă numai într-un num ăr redus de componente
principale, iar modalitatea particular ă de selecție a acestora este justificat ă (conform
unui calcul elementar) de expresia erorii p ătratice medii:
11
2D
i
iME λ
=+=∑ (1.9)
Din punct de vedere practic apar dificult ăți datorate complexit ății calculului și
memoriei necesare estim ării matricii de autocovarian ță S și a valorilor/vectorilor
proprii ale acesteia. Una dintre solu țiile adoptate es te de a înlocui baza ortonormat ă
corespunz ătoare transformatei KLT cu cea definit ă de Transformata Cosinus Discret ă
(DCT)1. Pe de alt ă parte au fost prezentate în literatur ă o serie de re țele neurale, cele
mai multe liniare, capabile s ă implementeze metoda PCA într-o manier ă recursivă,
eliminând astfel și dezavantajul variantei standard de a necesita reluarea întregii
proceduri de calcul la fiecare apari ție a unui vector nou în baza de date.
Metoda PCA descris ă anterior a fost aplicat ă cu succes la recunoa șterea fețelor,
sub denumirea generic ă Eigenfaces [24]. ”Materia prim ă” o constituie ansamblul
imaginilor disponibile în baza de date, form ate din matrici cu valori reale (eventual
– binare). Fiecare astfel de matrice, presupus ă de dimensiune (MxN), este mai întâi
transformat ă într-un vector de aceea și lungime, prin concatenarea coloanelor
corespunz ătoare. Algoritmul de procesare presupune parcurgerea urm ătorilor pași:
1 Această metodă este implementat ă în standardul JPEG ( Joint Photographic
Expert Group )
1.2 Algoritmi de recunoa ștere a fețelor 19
a) Se calculeaz ă valoarea medie a imaginilor care formeaz ă setul de antrenare
(presupus a avea K fotografii):
1K
j
jI
IK==∑
(1.10)
și se „centreaz ă” imaginile originale (se aduc la valoare medie nul ă):
centratjjII I =− (1.11)
b) Se calculeaz ă așa-numita scatter matrix , care reprezint ă aproximarea matricii de
covarianță a imaginilor din baza de date (aproximarea este cu atât mai bun ă cu cât
avem mai multe imagini la dispozi ție):
1 TSA AK=⋅ (1.12)
unde matricea A are pe coloane câte o fotografie centrat ă:
()12 ……..centrat centrat centratkMNkAI I I
××⎡⎤=⎢⎥⎣⎦ (1.13)
Matricea S este simetric ă și are dimensiuni (M*N)x(M*N).
c) Se calculeaz ă valorile și vectorii proprii ai matricii S (vectorii proprii ai matricii
S în cazul lucrului cu imagini reprezentând fe țe poartă denumirea Eigenfaces ).
Observații:
a) se poate utiliza un artificiu care re duce volumul de calcul: se calculeaz ă
valorile și vectorii proprii ai matricii AAT și apoi se folose ște relația dintre
aceștia din urm ă și vectorii proprii ai matricii S.
b) valorile proprii ale matricii S sunt întotdeauna pozitive deoarece S este
reală și simetric ă.
d) Se ordoneaz ă valorile proprii ale matr icii S în sens descresc ător. Se traseaz ă un
grafic care exprim ă pierderea de informa ție în raport cu factorul de compresie.
20 CAPITOLUL 1: RECUNOA ȘTEREA FE ȚELOR
Astfel, dac ă notăm cu iλ, ()1iM N=×… , valorile proprii sortate ale matricii S,
graficul anterior se refer ă la raportul (pe abscis ă avem ()1jM N=×… ):
1
()
1j
i
i
MxN
j
jλ
λ=
=∑
∑ (1.14)
Graficul anterior permite estimarea num ărului de valori și vectori proprii
considera ți semnificativi (adic ă aceia care p ăstrează cea mai mare parte din energia
imaginilor originale). e)
Se proiectez ă imaginile (centrate) originale pe spa țiul descris de vectorii
proprii reprezentativi (tipic ace știa sunt în num ăr de 5-10% din num ărul total).
Proiecția constă de fapt în efectuarea produsului scalar dintre fiecare imagine
originală și o matrice având drept coloane numai vectorii proprii semnificativi.
Pentru fiecare imagine (centrat ă) centrat
jI se obține proiec ția pe baza rela ției:
T centratTjj P C AWI V =⋅ (1.15)
123 max…… PCA NVE E E E⎡ ⎤ =⎣ ⎦ (1.16)
unde maxN este num ărul maxim de vectori proprii re ținuți, jE sunt vectorii proprii
semnificativi, iar vectorii jW au dimensiunea )1 (max× N și pot fi privi ți ca
„semnăturile” asociate imaginilor originale.
f) Clasificarea imaginilor test presupune mai întâi determinarea „semn ăturii”
fiecărei imagini în raport cu subpa țiul determinat anterior ( și care depinde exclusiv
de imaginile din setul de antrenare!) și găsirea acelei imagini din baza de date de
antrenare a c ărei semnătură este cea mai apropiat ă de semn ătura imaginii de test.
Aprecierea similitudinii dintre astfel de perechi de imagini se realizeaz ă folosind o
metrică convenabil aleas ă. Opțiunea uzual ă este distan ța Euclidean ă (L2), îns ă se
1.2 Algoritmi de recunoa ștere a fețelor 21
pot utiliza și alte măsuri precum func ția de autocorela ție, cosinusul unghiului dintre
2 vectori sau distan ța Mahalanobis. Defini țiile acestora se prezint ă mai jos:
() ()
()
[]
()
()2
2
1
1
1
1Distanța Euclidean ă:,
Distanța Manhattan: ,
Funcția deintercorela ție:
Cosinusulunghiuluidintre vectori: cos ,
Distanța Mahalanobis: ,D
Li i
i
D
Li i
i
D
ii k
kD
D
ii
iM
idx y x y
dx y x y
Ck x y
xyxyxy
xy
dx y
λ=
=
+
=−
==−
=−
=⋅
⋅=⋅
⋅
=∑
∑
∑
∑ (1.17)
Principalul avantaj al metodei PCA const ă în simplitatea sa. Exist ă posibilitatea de
a calcula vectorii proprii principali nu numai în variant ă off-line prin procedura
algebrică descrisă anterior ci și on-line , folosind anumite re țele neurale artificiale
pentru a ajusta în mod iterativ valorile acestora, pe m ăsură ce se aplic ă date noi la
intrare. În cazul aplic ării metodei PCA la recunoa șterea fețelor, trebuie men ționate
și o serie de dezavantaje, care limiteaz ă performan țele sistemelor bazate pe acest
instrument de analiz ă:
– principalul dezavantaj const ă în faptul c ă ignorarea componentelor care
contribuie pu țin la energia imaginilor originale nu conduce automat și la
îmbunătățirea separ ării (discrimin ării) dintre diversele subclase de imagini
aparținând unor persoane diferite (altfel s pus, minimizarea erorii de reprezentare nu
înseamnă neapărat îmbun ătățirea performan țelor de clasificare!). Un exemplu
intuitiv este prezentat în Fig. 1.8, care indic ă faptul că cele dou ă clase pot fi
separate comod efectuând proiec ția pe componenta principal ă mai puțin
semnificativ ă.
– un alt dezavantaj al tehnicii PCA îl reprezint ă caracterul global al acesteia, în
sensul că matricea de convarian ță (deci și valorile și vectorii proprii) este dedus ă
22 CAPITOLUL 1: RECUNOA ȘTEREA FE ȚELOR
luând în considerare toate imaginile disponibile, care pot s ă conțină o foarte mare
variabilitate din punct de vedere al nivelului de iluminare, orient ării, fundalului.
Acest dezavantaj poate fi compensat pa țial utilizând arhitecturi modulare, în care
tehnica PCA se aplic ă pe subseturi de imagini care au caracteristici comune (de
exemplu, se calculeaz ă seturi de vectori proprii distinc ți pentru clasa imaginilor
reprezentând vederi frontale, respectiv vederi înclinate la ±30 °, ±40 °). De
asemenea, se pot utiliza arhitecturi în care fiecare modul es te “specializat” s ă
recunoasc ă numai imaginile reprezentând o aceea și persoană.
– în cazul particular al analizei imaginilor reprezentând fe țe, metoda PCA s-a
dovedit extrem de sensibil ă în raport cu normalizarea pozi ției acestora: transla ții pe
orizontală/verticală cu numai câ țiva pixeli, mici rota ții sau varia ții de scal ă pot
altera semnificativ „semn ăturile” extrase și, în consecin ță, pot degrada
performan țele de recunoa ștere/autentificare. Ca urmare, este necesar ă o etapă
(manuală sau automat ă) de normalizare a aspectului imaginilor, care s ă preceadă
aplicarea propriu-zis ă a PCA. Alternativ, au fost propuse variante ale metodei
standard, care încearc ă să compenseze acest dezavant aj prin filtrarea adecvat ă a
imaginilor originale. În particular, uneori se prefer ă ignorarea proiec ției de-a lungul
primului vector propriu semn ificativ, deoarece de regul ă acesta este sensibil la
nivelul global de iluminare al imaginilor.
Fig. 1.8 Metoda PCA nu asigur ă întotdeauna maximizarea discriminabilit ății:
direcția de clasificare optimal ă corespunde vectorului propriu mai pu țin semnificativ
1.2 Algoritmi de recunoa ștere a fețelor 23
pca.m: Funcție MATLAB care implementeaz ă algoritmul PCA
function [eig_vectors, eig_va lues] = pca(A, numvecs);
% Functia returneaza un numar de vectori prop rii semnificativi ai matricii de covarianta
% asociate matricii A, folosind algoritmul lui Tu rk & Pentland [24] pent ru cazul tipic in care
% numarul de linii ale lui A este mult mai mare decit cel al coloanelor
% A – matricea datelor de in trare (fiecare coloana reprezinta un vector distinct)
% numvecs – numarul vectorilor proprii selectati
% eig_vectors – matricea vectorilor proprii (organizati pe coloane)
% eig_values – valorile proprii
nexamp = size(A,2);
mean_A = mean(A')'; % valoarea medie
% Se centreaza vectorii care formeaza matricea A
for i = 1:nexamp
A(:,i) = A(:,i) – mean_A;
end
CovMat=A*A'; % matricea de covarianta asociata lui A
L = A'*A; % matricea folosita de catre Turk & Pentland
[Vectors,Values] = eig(L);
% Sortarea vectorilor proprii in functie de valorile proprii
[Vectors,Values] = sortem(Vectors,Values);
% Turk & Pentland: vectorii proprii ai lui L se transforma in cei ai lui CovMat
Vectors = A*Vectors;
% Extragerea valorilor proprii
Values = diag(Values);
Values = Values / (nexamp-1);
% Normalizarea vectorilor pr oprii, eliminarea valorilo r proprii nesemnificative
num_good = 0;
for i = 1:nexamp
Vectors(:,i) = Vector s(:,i)/norm(Vectors(:,i));
if Values(i) < 0.00001
Values(i) = 0;
Vectors(:,i) = zeros(size(Vectors,1),1);
else
num_good = num_good + 1;
end
end
if (numvecs > num_good)
sprintf(1,'Warning: numvecs is %d; only %d exist.\n',numvecs,num_good);
numvecs = num_good;
end
Vectors = Vectors(:,1:numvecs);
24 CAPITOLUL 1: RECUNOA ȘTEREA FE ȚELOR
%==============================
function [NV,ND] = sortem(V,D);
%==============================
% Functia sorteaza coloanele matricii V in functi e de valorile de pe diagonala principala a
% matricii D
dvec = diag(D);
NV = zeros(size(V));
[dvec,index_dv] = sort(dvec);
index_dv = flipud(index_dv);
for i = 1:size(D,1)
ND(i,i) = D(index_dv(i),index_dv(i));
NV(:,i) = V(:,index_dv(i));
end
Analiza Discriminatorie Liniar ă (LDA)
O observa ție important ă menționată anterior sublinia faptul c ă proiecția datelor
de lucru pe subspa țiul generat de setul de vectori proprii semnificativi ai matricii de
autocorela ție, deși minimizeaz ă eroarea de reconstruc ție, nu ofer ă automat și
optimizarea performan țelor de clasificare. Pentru a identifica direc țiile din spa țiu
de-a lungul c ărora ar fi indicat s ă efectuăm proiecția pentru a maximiza separarea
(discriminabilitatea) datelor procesate se poate utiliza o alt ă tehnică liniară de
natură statistică, cunoscut ă sub denumirea Linear Discriminant Analysis (LDA).
Pentru a ilustra aceast ă metodă, să considerăm cazul mai simplu al clasific ării unui
set de vectori x în 2 categorii distincte, având fiecare N 1, respectiv N 2 exemplare.
Să considerăm o direc ție din spa țiu, definit ă de un vector w cu aceeași dimensiune
ca și vectorii x, de-a lungul c ăreia să proiectăm datele de lucru pe baza rela ției
Ty=wxi, decizia privind apartenen ța vectorului x la una dintre cele 2 categorii
urmând a fi luat ă prin compararea m ărimii scalare y cu o valoare de prag
convenabil aleas ă. Ne propunem s ă identific ăm acea direc ție particular ă care
asigură maximizarea ratei de clasificare corect ă, altfel spus direc ția de-a lungul
căreia separarea dintre clase este cea mai mare. Una dintre cele mai naturale idei
este de a considera direc ția care m ărește separabilitatea proiec țiilor valorilor medii
ale celor 2 clase, cu alte cuvinte ar trebui s ă maximizăm expresia:
21 2 1 ()Tmm−= − wmmi (1.18)
unde m1 și m2 desemneaz ă valorile medii:
1.2 Algoritmi de recunoa ștere a fețelor 25
12
121211;nn
nC nCNN∈∈==∑∑ mx m x (1.19)
Deoarece expresia (1.18) poate fi f ăcută oricât de mare “jonglând” din
amplitudinea vectorului w, este necesar s ă introducem o constrângere suplimentar ă,
de exemplu s ă impunem ca norma acestuia s ă fie constant ă. Utilizând
binecunoscuta metod ă a multiplicatorilor lui Lagrange, se poate ar ăta că soluția
noii probleme de optimizare (cu constrângeri) conduce la ()21− wm m∼ .
Totuși, este posibil ca direc ția de maxim ă discriminabilitate s ă nu fie neap ărat cea
care asigur ă separarea optim ă a proiecțiilor valorilor medii, în special în cazurile în
care una sau ambele clase con țin date foarte „împr ăștiate” în spa țiu. Ca urmare, o
soluție mai bun ă este cea care î și propune maximizarea unei func ții definite ca
raportul dintre proiec țiile valorilor medii și dispersiile datelor de-a lungul direc ției
vectorului w:
()2
21
2212()TB
TWmmJw
σσ−==
+wSw
wS w (1.20)
unde matricile SB și SW sunt definite prin:
() ()
() () ( ) ( )2121
11 2 2
12T
B
TT
Wn n n n
nC nC∈∈=− −
=− − + − −∑∑Sm m m m
Sx m x m x m x m (1.21)
Se poate ar ăta că maximizarea func ției J(w) conduce la concluzia:
121() W−− wS m m∼ (1.22)
În cazul particular în care matricea SW este propor țională cu o matrice unitate (se
spune că matricea este izotropă, adică împrăștierea datelor este uniform ă în toate
direcțiile), condi ția anterioar ă se reduce din nou la ()21− wm m∼ .
Metoda LDA poate fi generalizat ă pentru probleme de clasificare cu un num ăr
oarecare de categorii 2 C≥, cu observa ția că numărul de direc ții discriminatorii
posibil de determinat este egal cu (C-1). Aceast ă constrângere poate reprezenta un
dezavantaj major pentru extragerea unor „semn ături” semnificative în condi țiile în
26 CAPITOLUL 1: RECUNOA ȘTEREA FE ȚELOR
care avem la dispozi ție date de dimensiune mare apar ținând unui num ăr limitat de
clase, motiv pentru care de multe ori aplicarea metodei LDA este precedat ă de o
etapă prealabil ă de reducere a dimensionalit ății vectorilor originali, de obicei
bazată pe aplicarea tehnicii PCA. Mai mult, dac ă numărul de vectori disponibili
este redus (iar acest lucru este posibil în aplica ții biometrice unde, de exemplu,
putem avea numai una sau dou ă fotografii ale unei aceleea și persoane!), estimarea
valorilor medii și, în continuare, a matricilor SB și SW este nerelevant ă din punct de
vedere statistic. Un alt dezavantaj, pe care îl prezint ă ambele tehnici descrise
anterior, se refer ă la faptul c ă identificarea setului de tr ăsături semnificative se face
folosind exclusiv datele de intrare, nu și eticheta corespunz ătoare categoriei c ărora
acestea apar țin. În final, s ă menționăm că în literatur ă au fost propuse și utilizate cu
succes unele variante neliniare ale acestor metode, de exemplu bazate pe arhitecturi
speciale de re țele neurale artificiale.
lda.m: Funcție MATLAB care implementeaz ă algoritmul LDA
function [fisher_basis]=lda(dat a, NumClasses, ImgsPerClass);
% data – matricea de date (organizate pe coloane)
% NumClasses – numarul de categorii
% ImgsPerClass – numarul de vectori din fieca re clasa (presupus identic pentru simplitate)
% fisher_basis – matrice ale carei coloane repr ezinta directiile de maxima discriminabilitate
N=size(data_train,1); % dimens iunea vectorilor de intrare
% Se calculeaza vectorul mediu al fiecarei clase
mn = mean(data')';
for i = 1:NumClasses
m(:,i) = mean(data(:,(i-1)*ImgsPerC lass+1:(i-1)*ImgsPerClass+ImgsPerClass)')';
msm(:,i) = m(:,i) – mn;
end
% Se centreaza toate imaginile
for i=1:NumClasses*ImgsPerClass
msc(:,i) = data(:,i) – m(:,double(floor((i-1)/ImgsPerClass))+1);
end
sw = zeros(N); % Se calculeaza matr icea Sw (within class scatter matrix)
for i=1:NumClasses*ImgsPerClass
sw = sw + msc(:,i) * msc(:,i)';
end
sb = zeros(N); % Se calculeaza matricea Sb (between class scatter matrix)
for i=1:NumClasses
sb = sb + msm(:,i) * msm(:,i)';
end
1.2 Algoritmi de recunoa ștere a fețelor 27
% Se rezolva ecuatia: Sb*w = D*Sw*w
[V,D]=eig(sb,sw);
szd = size(D);
for i=1:szd(1)
evals(i) = D(i,i);
end
[a,b]=sort(evals);
% Se extrag vectorii proprii asociati celor mai mari (NumClasses-1) valori proprii
for i = 1:NumClasses-1
fisher_basis(:,i)=V(:,b(szd(1)-(i-1)));
end
Tehnici de procesare local ă
O serie de lucr ări semnifcative ap ărute recent se refer ă la reprezentarea obiectelor
naturale prin p ărți componente ( parts-based object recognition ), justificat ă intuitiv
de o serie de avantaje poten țiale ale acestora precum stabilitatea la deform ări
locale, grad sporit de invarian ță în raport cu nivelul de iluminare, toleran ță la
acoperire par țială. În cazul particular al proces ării fețelor, imaginea se descompune
într-o combina ție liniară de imagini bine localizate în spa țiu, ca în Fig. 1.9, care pot
fi interpretate drept componentele unor baze specifice.
Fig. 1.9 Reprezentarea fe țelor prin p ărți componente
Vom prezenta în continuare câteva modalit ăți diferite de a ob ține astfel de
reprezentări. Procedura general ă este urm ătoarea: imaginile folosite sunt reunite
sub forma unei matrici X, fiecare coloan ă a matricii reprezentând vectorul
intensității luminoase a pixelilor corespunz ători unei anumite fotografii. Vom nota
cu B setul de vectori ai bazei (localizate spa țial) și cu H matricea coeficien ților
descompunerii imaginilor în raport cu aceast ă bază (acești coeficien ți reprezint ă
proiecții ale matricii de date X pe baza B). Dacă numărul de vectori ai bazei este
mai mic decât lungimea vectorilor din matricea X (și, de regul ă, așa se și întâmplă),
28 CAPITOLUL 1: RECUNOA ȘTEREA FE ȚELOR
atunci se ob ține compresia datelor de lucru, iar fiecare linie a matricii H va forma
„semnătura” unei imagini din baza de date . Se poate scrie:
XB H (1.23)
Procedura de recunoa ștere efectiv ă se va baza pe identificarea distan ței minime
dintre o astfel de semn ătură corespunz ătoare unei imagini de test și semnăturile
imaginilor din setul de antrenare. Diversele tehnici folosite impun constrângeri specifice asupra lui B și/sau H, în unele cazuri ob ținându-se baze localizate spa țial.
Metoda NMF a fost recent introdus ă ca tehnic ă liniară de proiec ție care
impune constrângeri de non- negativitate asupra matricilor B și H [13]:
≥ B,H 0 (1.24)
Justificarea de principiu este legat ă de metoda intuitiv ă de combinare a p ărților
pentru a forma un întreg, astfel încât doar combina țiile strict aditive ale vectorilor
care formeaz ă baza B sunt permise. Algoritmul iterativ de calcul pentru ob ținerea
valorilor matricilor de interes este formulat astfel:
[]
[]ij T
aj ajaiiij
ij T
ia iajajij
ia
ia
ja
jXHH
XBB
BBB⎡⎤ ←⎣⎦
⎡⎤ ←⎣⎦
←∑
∑
∑BBH
HBH (1.25)
Contrar rezultatelor raportate în articolul original [13], în cazul reprezent ării unor
imagini de fe țe umane care nu sunt în prealabil aliniate cu acurate țe, baza B
generată prin metoda NMF nu este suficient de bine localizat ă spațial. Pentru a
corecta acest dezavantaj a fost introdus ă o versiune local ă a algoritmului (denumit ă
Local NMF – LNMF), care impune urm ătoarele constrângeri suplimentare [14]:
a) dispersie maxim ă a coeficien ților matricii H
b) maxim ă expresivitate a vectorilor din baza B
c) maxim ă ortogonalitate pentru vectorii din baza B
Următoarele ecua ții descriu procedura de calcul pentru B și H:
1.2 Algoritmi de recunoa ștere a fețelor 29
[]
[]ij T
aj ajaiiij
ij T
ia iajajij
ia
ia
ja
jXHH
XBB
BBB⎡⎤ ←⎣⎦
⎡⎤ ←⎣⎦
←∑
∑
∑BBH
HBH (1.26)
În Fig. 1.10 se prezint ă exemple de vectori ai bazei B obținuți prin cele dou ă
metode descrise anterior, în cazul reprezent ării imaginilor din baza de date Olivetti.
Se observ ă că într-adev ăr localizarea imaginilor este superioar ă în cazul
algoritmului LNMF.
a)
b)
c)
d)
Fig. 1.10 Componente ale bazei B obținute pe baza algoritmului:
a) NMF; b) LNMF; c) ICA; d) NA
30 CAPITOLUL 1: RECUNOA ȘTEREA FE ȚELOR
Este important de men ționat că lista metodelor capabile s ă conducă la baze formate
din imagini cu bun ă localizare spa țială este mai larg ă, incluzând printre altele
tehnica ICA ( Independent Components Analysis ) [1], rețelele neurale asociative de
tipul celor descrise în contextul PCA, înso țite de constrângerea privind caracterul
ne-negativ al tuturor ponderilor ( Non-negative Autoassociators – NA) [6], sau
diversele metode de tip sparse coding [7].
1.3 Aplica ții ale algoritmilor de recunoa ștere a fețelor
În cele ce urmeaz ă vom prezenta o serie de rezultate experimentale ob ținute în
urma aplic ării algoritmilor descri și în paragraful anterior. Vor fi analizate aspecte
specifice fiec ăruia dintre cele 3 module de baz ă care compun un sistem automat de
recunoaștere a formelor (preprocesare, extragere de tr ăsături, clasificare), având la
dispoziție seturi de imagini disponibile public și utilizate frecvent în literatur ă
pentru analiza comparativ ă a performan țelor diverselor solu ții propuse. Începem
prin a descrie sumar bazele de date folosite, vom continua cu prezentarea
exemplelor concrete, iar în final vom enumera o serie de concluzii și comentarii pe
marginea rezultatelor ob ținute. Men ționăm că “scenariul” utilizat în fiecare
experiment presupune folosirea a 2 seturi de date distincte:
– setul de antrenare (denumit în literatur ă gallery set ) reprezint ă “materia prim ă”
utilizată de diver și algoritmi pentru a ob ține informa țiile necesare în vederea
generării “semn ăturii” imaginii analizate. Aceste informa ții pot fi, de exemplu,
vectorii proprii semnificativi ai matricii de covarian ță (în cazul algoritmului PCA),
sau vectorii care definesc direc țiile de maxim ă discriminabilitate (în cazul
algoritmului LDA).
– setul de test (denumit în literatur ă probe set ) este format din imagini “proaspete”,
neutilizate în faza de antrenare, care vor servi pentru a estima performan țele reale
ale metodei de recunoa ștere studiate.
Pentru ca rezultatele s ă fie relevante din punct de ve dere statistic, de obicei se
efectueaz ă experimente repetate , alocând în mod aleator imaginile din baza de date
disponibil ă către setul de antrenare, respectiv cel de test, iar valorile ratelor de
1.3 Aplica ții ale algoritmilor de recunoa ștere a fețelor 31
recunoaștere rezultate în fiecare experiment se mediaz ă pentru a ob ține în final un
rezultat care estimează nivelul real de performan ță al soluției analizate.
Baze de date utilizate în aplica ții de recunoa ștere a fețelor
În literatur ă sunt raportate performan țe de recunoa ștere utilizând o list ă destul de
largă de baze de date, majoritatea disponibile gratis în scopuri de cercetare. Acestea
diferă prin num ărul persoanelor incluse, num ărul de fotografii ale aceluia și subiect,
rezoluție și format, iar dintre acestea amintim [5]:
• Baza de date Olivetti: conține câte 10 imagini distincte pentru un num ăr total de
40 de persoane, prezentând varia ții din punctul de vedere al orient ării, rotației în
planul imaginii (de pân ă la 20 ˚), scalei de reprezentare (de pân ă la 10%) și
expresiei fe ței, în condi ții de iluminare controlate. Dimensiunile fiec ărei imagini
sunt de 112×92 pixeli, folosind 256 nive le de gri, iar exemple se prezint ă în Fig.
1.11. În experimentele efectuate am alocat în mod aleator un num ăr de maxim 5
imagini (din totalul de 10) ale fiec ărei persoane setului de an trenare, iar restul au
format setul de test.
• Baza de date AR: conține 113 persoane (63 b ărbați și 53 femei), fotografiile
având 768×576 pixeli, reprezen tate color pe 24 de bi ți. Pentru fiecare subiect sunt
incluse 2 seturi de câte 13 imagini, ob ținute la interval de dou ă săptămâni,
caracterizate de expresie variabil ă a feței, nivele diferite de iluminare și acoperire
parțială, ca în exemplele din Fig. 1.12. Conform metodologiei utilizate frecvent în
literatură, am alocat setului de antrenare numai perechile de imgini
corespunz ătoare expresiei neutre (notate AR01 1, respectiv AR01 2 în Fig. 1.12),
urmând ca setul de test s ă fie format din restul imaginilor disponibile. În particular,
imaginile au fost preprocesate prin mascarea fundalului și a părului1.
• Baza de date Yale: conține 165 de imagini ale unui num ăr de 15 persoane,
caracterizate prin variabilitate semnificativ ă a expresiei fe ței, ca în Fig. 1.13.
Datorită dimensiunii mici a bazei de date, tipic se efectueaz ă experimente repetate
alocându-se setului de test numai câte o singur ă imagine a fiec ărei persoane.
1 Baza de date preprocesat ă a fost pus ă la dispozi ție cu amabilitate de c ătre David
Guillaumet de la Universitat Autonoma de Barcelona.
32 CAPITOLUL 1: RECUNOA ȘTEREA FE ȚELOR
Fig. 1.11 Exemple de imagini din baza de date Olivetti
AR011
AR012
AR02
AR03
AR04
AR05
AR06
AR07
AR08
AR09
AR10
AR11
AR12
AR13
Fig. 1.12 Exemple de imagini din baza de date AR
Fig. 1.13 Exemple de imagini din baza de date Yale
1.3 Aplica ții ale algoritmilor de recunoa ștere a fețelor 33
Tehnici de preprocesare
Multe dintre tehnicile de recunoa ștere a fețelor, în particular metoda PCA, sunt
foarte sensibile la alinierea corect ă a imaginilor care formeaz ă setul de antrenare,
performan țele degradându-se semnificativ dac ă acestea sunt u șor translate sau
rotite. Din acest motiv, multe solu ții folosesc o etap ă premerg ătoare de
preprocesare (automat ă sau manual ă) care are drept rezultat ob ținerea unei baze de
date formate din imagini având aceea și scală de reprezentare și neafectate de
translații relative sau rota ții în planul imaginii (tipic, segmentul definit de pozi ția
ochilor este folosit pentru aceast ă etapă de normalizare).
În plus, exist ă argumente teoretice care justific ă utilizarea exclusiv ă a zonei care
definește fața propriu-zis ă, eliminându-se influen ța fundalului și a părului. În acest
scop se utilizeaz ă “măști” de form ă ovală, precum se indic ă în Fig.1.12 în cazul
bazei de date AR. Dimensiunile mari ale imaginilor reprezint ă de multe ori o problem ă majoră,
deoarece volumul de calcul poate deveni excesiv în unele cazuri. Ținând cont de
rezultate care confirm ă degradarea lent ă a performan țelor de recunoa ș
tere în raport
cu rezolu ția folosită, se pot aplica proceduri de sube șantionare care s ă conducă la
dimensiuni rezonabile (de exemplu, de ordinul a 1000-2000 de pixeli). În
particular, se poate face apel la Transformata Wavelet Discret ă (prezentat ă pe larg
în capitolul urm ător), care permite reducerea dimensionalit ății simultan cu
asigurarea invarian ței în raport cu expresia fe ței.
Metoda PCA și variantele sale
Metoda PCA (denumit ă eigenfaces în contextul aplica țiilor de recunoa ștere a
fețelor [24]) reprezint ă fără îndoială referința în raport cu care se compar ă
performan țele oricărui algoritm propus în literatur ă. Deși simplu de aplicat și
oferind performan țe rezonabile în condi ții dintre cele mai diverse, metoda este
totuși afectată de unele limit ări precum sensibilitatea în raport cu alinierea
imaginilor și nivelul de iluminare, cerin ța de a beneficia de o baz ă de date de
dimensiune suficient de mare, dificultatea de a opera on-line (în sensul de a putea
actualiza f ără un efort de calcul substan țial valorile vectorilor proprii semnificativi
odată cu apariția unor date „proaspete” în setul de antrenare). Ca urmare, au ap ărut
34 CAPITOLUL 1: RECUNOA ȘTEREA FE ȚELOR
o serie de variante ale algoritmului standard, care încearc ă să diminueze aceste
neajunsuri. Astfel, îmbun ătățirea toleran ței în raport cu alinierea imaginilor este sugerat ă prin
metoda denumit ă (PC)
2A (Projection Combined PCA ) [26], care define ște mai întâi
așa-numitele proiec ții integrale de-a lungul axei orizontale și verticale ale unei
imagini I(x, y) de dimeniune MxN prin:
11() (, ), () (, )NM
pp
yxx xy y xy
====∑∑ VI H I (1.27)
pe baza cărora se define ște apoi matricea:
11(, )() ()(, ) ,MN
pp x y
IxyxyxyMN MN====∑∑ IVHMII (1.28)
În final se ob ține o versiune preprocesat ă a imaginii originale conform rela ției:
(, ) (, )(, )1I xyx yxyαα
α+=+IMP (1.29)
Efectul intuitiv al acestei proceduri const ă într-un anumit grad de dezaccentuare a
contururilor ferme ale imaginii originale ( blurring ), după cum se ilustreaz ă în Fig.
1.14a. Utilizarea efectiv ă a metodei presupune aplicarea acestei transform ări asupra
fiecărei imagini din baza de date, urmând ca apoi s ă folosim varianta standard a
algoritmului PCA. O altă soluție își propune s ă atenueze sensibilitatea PCA în raport cu nivelul
variabil de iluminare. Astfel, pornind de la observa ția intuitiv ă potrivit c ăreia
iluminarea influen țează destul de pu țin contururile unei imagini, metoda eigenhills
[27] propune detec ția prealabil ă a contururilor fe țelor din baza de date, dup ă care
aplică metoda PCA standard. În realitate, pentru a preîntâmpina dezavantajul
conform c ăruia imaginile reprezentând contur urile sunt mult mai sensibile la
translații relative și expresii variabile ale fe ței, se aplic ă asupra contururilor o
operație de filtrare trece-jos, astfel încât informa ția este „împr ăștiată” oarecum în
spațiu, după cum se sugereaz ă în Fig.1.14b.
1.3 Aplica ții ale algoritmilor de recunoa ștere a fețelor 35
a)
b)
Fig. 1.14 Variante ale algoritmul ui PCA : a) metoda (PC)2A ; b) metoda eigenhills
Exemple de componente ale bazei rezultate din aplicarea fiec ărei variante se
prezintă în Fig. 1.15. Rezultate experiment ale comparative între cele 3 metode
folosind baza de date Olivetti sunt indicat e în Tabelul 1.1. Au fost efectuate 10
experimente distincte, folosind câte 5 imagini ale fiec ărei persoane în setul de
antrenare, respectiv de test.
a)
b)
c)
Fig. 1.15 Exemple de componente ale bazelor ob ținute prin metoda :
a) PCA standard; b) (PC)2A ; c) eigenhills
36 CAPITOLUL 1: RECUNOA ȘTEREA FE ȚELOR
Tabelul 1.1: Rezultate experimentale PCA, (PC)2A, eigenhills
Tipul distan ței Eigenface (PC)2A Eigenhills
L2 (individual) 94.7 % 95.5 % 84.4 %
L2 (average) 90.8 % 89.6 % 82.5 %
Mahalanobis 94.8 % 95.4 % 85.4 %
Tehnici de procesare locale
În Fig. 1.9 a fost ilustrat ă posibilitatea de a reprezenta fe țele prin p ărți componente
sau, mai exact, de a încerca descompuner ea unei astfel de imagini în raport cu o
bază particular ă, ale cărei componente s ă fie caracterizate de o bun ă localizare
spațială. Drept exemple de algoritmi capabili s ă conducă la obținerea unei astfel de
baze au fost men ționate metodele NMF ( Non-negative Matrix Factorization ),
varianta local ă a acesteia LNMF ( Local NMF ), algoritmul ICA ( Independent
Components Analysis ) și rețelele neurale autoasociative cu parametri nenegativi
NA ( Non-negative Autoassociators ), iar exemple de componente ale acestor baze
sunt prezentate în Fig. 1.10.
Utilizând baza de date AR au fost efectuate o serie de experimente care î și propun
să analizeze comparativ performan țele acestor algoritmi în raport cu diverse surse
de variabilitate precum expresia fe ței și nivelul de iluminare, iar rezultatele se
prezintă în Tabelele 1.2 și 1.3 (parametrul m indic ă numărul vectorilor care
formează baza, adic ă dimensiunea subspa țiului pe care se efectueaz ă proiecția
vectorilor care reprezint ă imaginile originale). Aceleea și metode au fost utilizate și
pentru studierea performan țelor în situa țiile în care fe țele sunt afectate de acoperire
parțială. Rezultatele corespunz ătoare bazei AR sunt indicate în Tabelul 1.4,
observându-se o degradare semnificativ ă a performan țelor (sunt prezentate numai
rezultate referitoare la cazul acoperirii folosind ochelari, deoarece ochii au o
importanță specială în stabilirea nivelului de performan ță al unui sistem automat de
recunoaștere a fețelor). În cazul bazei de date Olivetti acoperirea a fost modelat ă
prin suprapunerea unor m ăști pătrate de dimensiune variabil ă, plasate aleator în
planul imaginii, dup ă cum se sugereaz ă în Fig. 1.16, iar rezultatele sunt prezentate
în Fig. 1.17.
1.3 Aplica ții ale algoritmilor de recunoa ștere a fețelor 37
Tabelul 1.2: Rate de recunoa ștere pentru expresie variabil ă (AR)
Tabelul 1.3: Rate de recunoa ștere pentru iluminare variabil ă (AR)
Fig. 1.16 Imagini din baza de date Olivetti acoperite par țial
38 CAPITOLUL 1: RECUNOA ȘTEREA FE ȚELOR
Tabelul 1.4: Rate de recunoa ștere pentru acoperire par țială (AR)
Fig. 1.17 Rate de recunoa ștere pentru baza de date Olivetti
Clasificare folosind re țele neurale autoasociative
Principiul de clasificare denumit generic “regula celui mai apropiat vecin” ( nearest
neighbor rule ) rămâne în continuare solu ția cea mai des utilizat ă în aplica ții
generale de recunoa ștere de forme, în particular pentru problemele orientate pe
1.3 Aplica ții ale algoritmilor de recunoa ștere a fețelor 39
prelucrarea imaginilor reprezentând fe țe umane. De și în literatur ă au fost propuse și
alternative mai performante (de exemplu, bazate pe utilizarea clasificatoarelor
optimale de tip Bayes), simplitatea r ămâne un argument puternic în favoarea primei
metode. O alternativ ă interesant ă este oferit ă de teoria sistemelor dinamice
neliniare, în mod c oncret de posibilitatea de a sintetiza a șa-numite memorii
asociative [4], capabile s ă furnizeze ie șirea solicitat ă utilizând drept „cheie” nu o
adresă, așa cum se întâmpl ă în cazul memoriilor clasice, ci o replic ă, de regul ă
zgomotoas ă, incomplet ă sau eronat ă, a însăși informa ției stocate (acesta este și
motivul pentru care astfel de sisteme sunt denumite și memorii adresabile prin
conținut). Ideea fundamental ă este urm ătoarea: trebuie sintetizat un sistem dinamic
care să admită un set de puncte de echilibru stabil în dreptul vectorilor care urmeaz ă a
fi stocați (de exemplu, în aplica țiile de recunoa ștere a fețelor, vectorii memora ți pot
reprezenta „semn ăturile” corespunz ătoare imaginilor din setul de antrenare). Un
vector zgomotos și/sau distorsionat (utilizat dr ept „cheie” pentru recuperarea
informației de interes; de exemplu, „semn ăturile” fe țelor din setul de test) va
reprezenta în fapt o stare ini țială din care sistemul va evolua în mod natural spre
starea de echilibru stabil în bazinul de atrac ție al căreia se afl ă plasată „cheia”, în mod
ideal către cel mai apropiat în distan ță Euclidean ă. Ar fi de dorit ca asemenea sisteme
să ofere urm ătoarele caracteristici:
– să admită puncte de echilibru numai în pozi ții predefinite, f ără apariția unora
parazite –
numărul de stări de echilibru stabil trebuie s ă fie în principiu oricât de mare
– introducerea sau eliminarea unui punct de echilibru trebuie s ă se facă simplu, f ără
a reproiecta întregul sistem –
extensia bazinului de atrac ție în jurul punctelor de echilibru trebuie s ă fie
controlabil ă
O posibil ă soluție de sintez ă a unui astfel de sistem dinamic (neliniar) este
reprezentat de un sistem de tip gradient , definit prin rela ția:
12(),[ ]T i
Ndx Vxxxdt t∂=− =∂XX … (1.30)
40 CAPITOLUL 1: RECUNOA ȘTEREA FE ȚELOR
unde N reprezint ă dimensiunea vectorului de stare, iar V( X) desemneaz ă așa-
numita funcție Lyapunov . Un rezultat teoretic binecunoscut afirm ă că punctele de
echilibru stabil ale unui sistem de tip gradient coincid cu minimele izolate ale
funcției Liapunov. Ținând cont de aceasta, cerin țele formulate anterior pot fi
satisfăcute definind func ția Liapunov într-o manier ă particular ă, sub forma unei
sume de func ții individuale cu selectivitate spa țială, fiecare având un minim accentuat
în dreptul unui singur punct și fiind practic constante în rest [4]:
1() ()M
s
sVg
==∑ XX (1.31)
O posibilitate const ă în a alege drept argument al func ției selective g s(.) distanța
(convenabil aleas ă) dintre vectorul de stare curent X și un vector reprezentând
poziția dorită a unei informa ții ce se dore ște a fi stocat ă, astfel încât vom utiliza
funcții selective prezentând un minim accentuat în origine:
11() () [ (, ) ]MM
s
ss
ssVg G d
====∑∑ XX X X (1.32)
Un exemplu concret îl reprezint ă alegerea unei func ții de tip gaussian, recomandat ă de
considerente legate de facilit ățile de implementare pe care le ofer ă, axate pe
posibilitatea de factorizare comod ă. O imagine intuitiv ă asupra func ției Liapunov
definite mai sus se prezint ă în Fig. 1.18 (N=2, M=4; punctele de echilibru sunt: (-1,-
1), (-1,1), (1,-1), (1,1), iar σs=1).
Fig. 1.18 Exemplu de func ție Liapunov de tipul (1.32)
1.3 Aplica ții ale algoritmilor de recunoa ștere a fețelor 41
Procedura de clasificare ofer ă avantaje evidente fa ță de principiul celui mai
apropiat vecin: nu este necesar s ă evaluăm distanța dintre vectorul de test și toți
vectorii care formeaz ă setul de antrenare (fapt care ar conduce la un volum mare de
calcul atunci când baza de date are dimensiune mare), ci este suficient s ă
inițializăm starea sistemului dinamic neliniar cu vectorul de test, iar evolu ția
acestuia c ătre unul dintre punctele de echilibru ne va furniza de fapt valoarea
vectorului de antrenare cel mai apropiat de cel de test. Solu ția prezint ă un grad
sporit de modularitate deoa rece introducerea/eliminar ea unui punct de echilibru nu
va influen ța semnificativ pozi ția celorlalte puncte, ofer ă o coresponden ță clară între
setul de informa ții ce urmeaz ă a fi stocate și ecuațiile care guverneaz ă dinamica
sistemului, efectul diver șilor parametri asupra evolu ției temporale este u șor de
interpretat, iar implementarea beneficiaz ă de avantajul unui set redus de
interconexiuni. Am utilizat principiul descris anterior în cazul bazei de date Olivetti, folosind drept
vectori ce urmeaz ă a fi memora ți “semnături” extrase pe baza algoritmilor PCA,
respectiv LDA (în realitate, aplicar ea algoritmului LDA a fost precedat ă de
utilizarea metodei PCA în vederea reducerii dimensionalit ății datelor), iar
rezultatele se prezint ă în Tabelul 1.5. Au fost efect uate 10 experimente distincte,
folosind câte 5 imagini ale fiec ărei persoane pentru setul de antrenare, iar
dimensiunea vectorilor de tr ăsă
turi extrase a variat între 50 și 200 (în tabel sunt
prezentate performan țele optime pentru fiecare categorie de „semn ături”). Este u șor
de observat c ă metoda conduce la performan țe comparabile cu cele raportate în
literatură folosind alte solu ții.
Tabelul 1.5: Rezultate comparative folosind baza de date Olivetti
Metoda Eroare de recunoa ștere (%)
Eigenfaces 10
Convolutional Neural Network 3.8
Linear SVM 3
Kernel PCA 2.5
PCA + Memorie asociativ ă 5.4
LDA + Memorie asociativ ă 3.1
42 CAPITOLUL 1: RECUNOA ȘTEREA FE ȚELOR
1.4 Discu ție asupra sistemelor biometrice
Prezentarea din cuprinsul paragrafelor anterioare s-a concentrat asupra
aplicațiilor orientate pe procesarea imaginilor reprezentând fe țe umane, ilustrate pe
baza unor exemple care s ă ofere o imagine intuitiv ă asupra utiliz ării diverșilor
algoritmi enumera ți. Extinzând cadrul discu ției la ansamblul tehnologiilor
biometrice, merit ă trecute în revist ă o serie de elemente specifice acestui domeniu,
care trebuie avute în vedere în cazul implement ării unor sisteme automate capabile
să furnizeze nivele satisf ăcătoare de performan ță în aplicații realiste.
Tehnologii biometrice
Există o listă destul de lung ă a tipurilor de informa ții biometrice care sunt utilizate
în mod curent în aplica ții de recunoa ștere sau autentificare, care include printre
altele: vocea, amprentele, fa ța, irisul, forma geometric ă a mâinii, stilul de scriere,
alura mersului, precum și combina ții ale acestora. Sistemele comerciale folosesc de
regulă primele patru categorii, datorit ă existenței senzorilor necesari cu pre țuri și
performan țe satisfăcătoare, dar și a suportului teoretic aferent proces ării adecvate a
datelor disponibile. În conti nuare vom enumera avantajele și dezavantajele celor
mai importante tehnologii:
amprentele: au avantajul c ă se păstrează practic nealterate în decursul vie ții și și-
au demonstrat deja eficien ța în practic ă, existând un volum apreciabil de date
colectate. Pre țul suficient de sc ăzut al multor senzori, diversitatea tehnologiilor de
obținere și dimensiunile reduse sunt de asem enea atractive. Ca dezavantaje putem
menționa posibilitatea ca anumite profesii s ă poată conduce la alterarea calit ății
amprentelor, ob ținerea unor date de bun ă calitate poate ne cesita o anumit ă
procedură de „antrenare”, precum și reticența de a atinge un senzor pe care l-au
atins în prealabil foarte multe persoane.
irisul: nu necesit ă un contact fizic cu senzorul și reprezint ă o informa ție extrem
de individualizat ă (probabilitatea ca dou ă persoane diferite s ă aibă o aceea și
„semnătură” biometric ă extrasă pe baza irisului este de 3×10-8!). Pe de alt ă parte,
există o reținere în a expune ochii c ătre o sursă de lumin ă, este necesar ă o pricepere
mai mare decât în alte cazuri pentru a extrage informa ția de interes, exist ă riscul ca
1.4 Discu ție asupra sistemelor biometrice 43
informația utilă să fie mascat ă de prezen ța unor lentile, a genelor sau a reflexiilor
de pe cornee. Tehnologia de procesare a unor astfel de informa ții a fost elaborat ă la
începutul anilor ’80 de c ătre cercetătorul american John Daugman și este protejat ă
de o serie de patente.
fața: reprezint ă de asemenea o tehnic ă neinvaziv ă, utilizeaz ă drept senzori
camere de fotografiat sau filmat disponibile pe scar ă largă, există baze de date de
dimensiune mare, iar rezultatele pot fi verificate cu u șurință. Pe de alt ă parte, fețele
sunt puternic afectate de nivelul de iluminare, expresie, transform ări geometrice,
îmbătrânire, iar unele aplica ții video presupun vitez ă de operare sporit ă. În practic ă,
pe lângă distincția dintre problemele de recunoa ștere și cele de verificare, se disting
câteva direc ții particulare de folosire a acestor informa ții precum analiza expresiei
feței, determinarea st ării emoționale, detec ția și urmărirea ochilor sau a buzelor.
vocea: este acceptat ă pe scară largă, senzorii sunt la îndemân ă și nu necesit ă
contact fizic cu utilizatorul. În schimb, vocea prezint ă variații semnificative în
raport cu vârsta, starea de s ănătate și cea emo țională, apar dificult ăți datorate
alterării vocii de c ătre tipul microfonului utilizat și a zgomotului ambiental, iar
rezultate satisf ăcătoare sunt dificil de ob ținut pe baze de date de dimensiune mare.
Sunt avute în vedere dou ă familii mari de aplica ții, de recunoa ștere a vorbirii
(indiferent de persoana care roste ște cuvintele, precum în cazul robo ților
telefonici), respectiv de identificare a vorbitorului.
Proceduri de evaluare a performan țelor
Înainte ca un sistem biometric automat s ă devină pe deplin opera țional, acesta este
supus unui ansamblu de teste specifice, fi ecare având un scop precis, fixat în acord
cu o modalitate particular ă de analiz ă și utilizând o baz ă de date adecvat ă. Putem
identifica urm ătoarele tipuri de proceduri de evaluare [18]:
evaluarea tehnologiei: urmărește validarea metodei analizate folosind baze de
date standardizate de dimensiune mic ă, identificând aspectele critice care necesit ă
o analiză teoretică suplimentar ă și furnizând nivele de performan ță cu rol de
referință pentru celelalte tipuri de proceduri de testare.
evaluarea pe baz ă de scenariu: durează mai mult ca în cazul precedent și își
propune s ă măsoare performan țele pentru o aplica ție specific ă, folosind baze de
44 CAPITOLUL 1: RECUNOA ȘTEREA FE ȚELOR
date de dimensiuni mari, achizi ționate de la un num ăr de utilizatori nefamiliariza ți
în prealabil cu sistemul. Rezultatele pot eviden ția zone care necesit ă analiză
suplimentar ă sau posibilit ăți de integrare și oferă valori mai exacte ale nivelelor
reale de performan ță.
evaluarea opera țională: are în vedere cuantificarea impactului pe care
introducerea sistemului biometric îl are asupra ansamblului în care acesta este inclus. În acest context, este necesar ă evaluarea st ării existente înainte de
introducerea sistemului, respectiv celei de dup ă familiarizarea utilizatorilor cu
modalitatea concret ă de operare a acestuia. Astfel de teste pot avea durate mari, de
ordinul câtorva luni, iar aspectele vizate se refer ă atât la tehnologia propriu-zis ă,
cât și la efectele psihologice și economice pe care aceasta le produce.
Modalități de fraudare
Nu exist ă sisteme biometrice ideale: implementarea oric ărei metode de
recunoaștere/verificare bazate pe utilizarea unor astfel de informa ții este inevitabil
limitată inferior de valori a c ăror estimare precis ă reprezint ă subiectul unor
proceduri riguroase de evaluare standardizat ă și/sau al unor competi ții de mare
anvergură, precum cele organizate periodic de c ătre organiza ția guvernamental ă
americană National Institute of Standards and Technology (
www.nist.gov ). În
particular, aplica țiile de verificare (autentificare) trebuie s ă asigure un compromis
rezonabil între cele dou ă tipuri majore de erori (rata de acceptare, respectiv de
rejecție falsă), astfel încât s ă minimizeze probabilitatea de acces la resurse/spa ții
protejate a unor persoane neautorizate f ără a deranja excesiv pe utilizatorii
autorizați. Alegerea concret ă a unor valori limit ă pentru aceste erori depinde
nemijlocit de aplica ția considerat ă și de restric țiile aferente, astfel încât în realitate
vor exista întotdeauna “porti țe” care pot fi folosite în tentative de fraudare.
Pe de altă parte, folosind seturi de date generate artificial , au fost raportate și
demonstrate posibilit ăți de a “p ăcăli” destul de u șor chiar și sisteme comerciale
care s-au dovedit performante în test ele de evaluare. Spre exemplu, cercet ătorul
japonez Tsutomu Matsumoto și grupul s ău de la Yokohama National University au
obținut amprente artificiale pe baz ă de gelatin ă, pornind atât de la amprentarea
directă a unor degete, cât și de la amprente latente , prelevate de pe o bucat ă de
1.4 Discu ție asupra sistemelor biometrice 45
sticlă. În ambele variante, o serie de sisteme comerciale au fost “p ăcălite” în 80%
dintre cazuri! În cazul aplica țiilor de autentificare a fe țelor, un studiu recent publicat în revista
germană c’t a arătat că unul dintre sistemele cele mai bune de pe pia ță, FaceVACS
produs de c ătre firma Cognitec (una dintre câ știgătoarele deta șate ale ultimei
competiții Face Recognition Vendor Test !), poate fi fraudat prin prezentarea în fa ța
senzorului optic a unei fotografii corespunz ătoare unei persoane autorizate sau
rularea unui scurt fi șier video. Ca urmare, firma a introdus o procedur ă
suplimentar ă de detecție a prezen ței fizice a unei persoane în fa ța senzorului ( Live-
Check ), însă acest element a îngreunat accesul utilizatorilor autoriza ți. De altfel,
rularea unei înregistr ări în care o persoan ă își mișcă ușor capul dintr-o parte în alta
a „păcălit” din nou sistemul.
Nici în cazul recunoa șterii irisului situa ția nu este cu mult mai bun ă, deși această
informație biometric ă este recunoscut ă ca fiind cea mai pu ț
in repetabil ă. “Portița”
de intrare o reprezint ă particularitatea c ă multe sisteme comerciale preleveaz ă în
realitate nu numai por țiunea strict ocupat ă de iris, ci și o zonă de dimensiune
variabilă din jurul acestuia. Astfel, jurnali știi de la aceea și revistă germană au
efectuat un test cu sistemul Authenticam BM-ET100 produs de c ătre firma
Panasonic, folosind fotografia ochiului unei persoane autorizate, dar decupat ă în
centru pentru a permite inspectarea irisului unei alte persoane, iar sistemul nu a
sesizat diferen ța! Pe de alt ă parte însă, proiectarea imaginii digitizate a irisului unei
persoane autorizate de pe ecranul unui notebook nu a reușit să păcălească sistemul.
Etica profesional ă
Potențialul unei tehnologii biometrice trebui e judecat nu numai din punct de vedere
tehnic, dar și din perspectiva unor poten țiale utiliz ări abuzive. Exist ă o serie de
decizii importante care trebuie luate înaint e de introducerea în exploatare a unui
astfel de sistem, printre care eviden țierea nivelului satisf ăcător de performan ță,
identificarea informa țiilor private care sunt strict necesare, estimarea raportului
dintre costuri și sporul de securitate pe care in troducerea unei astfel de tehnologii îl
poate aduce. R ăspunsul la aceste cerin țe trebuie s ă se bazeze pe un anumit cod de
etică profesional ă, care să stipuleze explicit preocuparea proiectan ților pentru
46 CAPITOLUL 1: RECUNOA ȘTEREA FE ȚELOR
aspecte ce țin de protejarea datelor cu caracter personal și respectarea drepturilor
omului, obliga ția acestora de a furniza persoanelor cu putere de decizie, dar și
publicului larg, date reale și complete despre performan țele, constrângerile și
limitele sistemului analizat, cu sc opul de a contribui în cele din urm ă la
îmbunătățirea calității vieții și a siguran ței utilizatorilor. De exemplu, în Marea
Britanie au fost dezbateri aprinse pe marginea implement ării unui sistem ce
urmează să stocheze informa ții de natur ă biometric ă ale întregii popula ții, cu
formularea unor temeri cu privire la fi abilitatea unei baze de date de asemenea
dimensiuni și la consecin țele critice ale compromiterii confiden țialității acestora.
Unul dintre elementele cheie al e eticii profesionale îl reprezint ă aprecierea
obiectivă a performanan țelor unor astfel de sisteme, f ără a le supraestima într-un
mod nerealist numai din considerente de noutate a unui subiect aflat actualmente
„la modă”, iar din acest punct de vedere men ționăm următoarele comentarii:
"As methods of identification, however , biometric technologies are still
imature, and one, face recognition, has been especially dissapointing. In a test
this spring of a leading system, that of Jersey City, N.J.-based Visionics Corp. (now merged with Identix Inc., Minnet onka, Minn.), over half the faces in a
mock terrorist database used at the Palm Beach (Fla.) International Airport
were let through unflagged, while one person in every hundred to pass through
the system was falsely labeled "terrorist" ".
Steven Cherry, Senior Associate Editor , IEEE Spectrum
, Septembrie 2002
“The electronic passport puts up a Maginot line at the border, when what we
really need is a comprehensive defens e that impedes the aspiring terrorist —
but not innocent travelers — at every step.”
Philip E. Ross, IEEE Spectrum , Ianuarie 2005
47
Bibliografie
[1] Bartlett, M.S., Movellan, J.R., Se jnowski, T.R., “Face recognition by
Independent Component Analysis”, IEEE Trans. on Neural Networks , 13, pp.
1450-1464, 2002 [2] Belhumeur, P.N., Hespana, J.P., Kriegm an, D.J., "Eigenfaces vs. fisherfaces:
Recognition using class specific linear projection", IEEE Trans. PAMI , 19, no. 7,
pp. 711-720, 1997 [3] Belhumeur, P.N., Kriegman, D.J., "What is the Set of Images of an Object under All Possible Illumination Conditions?", Int. J. Computer Vision , vol. 28, no.
3, pp. 1-16, 1998 [4] Ciocoiu, I.B., Rețele neurale artificiale , Editura Cantes, Ia și, 2001
[5] Face Recognition Homepage :
www.face-rec.org/databases
[6] Ge, X., Iwata, S., “Learning the parts of objects by auto-association”, Neural
Networks , vol. 15, pp. 285-295, 2002
[7] Hoyer, P.O., “Non-negative matrix fact orization with sparseness constraints”, J.
Machine Learning Research , vol. 5, pp. 1457-1469, 2004
[8] IEEE Spectrum , vol. 41, no. 3, pp. 13, 2004
[9] Kong, S.G., Heo, J., Abidi, B.R., Pa ik, J., Abidi, M.A., “Recent advances in
visual and infrared face recognition—a review”, Computer Vision Image
Understansding ,, vol. 97, pp. 103-135, 2005
[10] Kreutz, M., Volpel, B., Jansen, H., "Scale-Invariant Image Recognition Based on Higher Order Autocorrelation Features", Pattern Recognition , vol. 29, no. 1, pp.
19-26, 1996 [11] Kurita, T., Hotta, K., Mishima, T., "Scale and rotation invariant recognition
method using high-order local autocorrelation features of log-polar image", Proc.
Asian Conf. on Computer Vision , pp. 89-96, 1998
[12] Lai, J.H., Yuen, P.C., Feng, G. C., "Face Recognition Using Holistic Fourier
Invariant Features", Pattern Recognition , vol. 34, pp. 95-109, 2001
[13] Lee, D.D., Seung, H.S., “Learning the parts of objects by non-negative
matrix factorization”, Nature , 401, pp. 788-791, 1999
[14] Li, S.Z., Hou, X.W., Zhang, H.J., “Learning spatially localized, parts-based
representation”, Proc. CVPR, 2001
48
[15] Liu, X., Chen, T., Vijaya Kumar, B.V.K., "Face Authentication for Multiple
Subjects Using Eigenflow", CMU Technical Report AMP 01-05 , 2001
[16] Liu, C., Wechsler, H., “Independent co mponent analysis of Gabor features for
face recognition”, IEEE Trans. Neural Networks , vol. 14, no. 4, pp. 919-928, 2003
[17] Moghaddam, B. , "Principal Manifold s and Probabilistic Subspaces for Visual
Recognition", IEEE Trans. PAMI , vol. 24, no.6, 2002
[18] NIST Subcommittee on Biometrics: www.biometricscatalog.org
[19] Penev, P., Atick, J., "Local feature analysis: A general statistical theory for
object representation", Network: Computation in Neural Systems , vol. 7, no. 3, pp.
477-500, 1996 [20] Pentland, A., Moghaddam, B., St arner, T., "View-based and modular
eigenspaces for face recognition", Proc. CVPR , pp. 84-91, 1994
[21] Piotrowski, L.N., Campbell, F.W., "A demonstration of the visual importance
and flexibility of spatial-freque ncy, amplitude, and phase", Perception , vol. 11, pp.
337-346, 1982 [22] Shan, S., Chang, Y., Gao, W., Ca o, B., “Curse Of Mis-Alignment In Face
Recognition: Problem And A Novel Mis-Alignment Learning Solution”, Proc.
AFGR , pp. 314-320, 2004
[23] Simard, P.Y., Le Cun, Y.A., Denke r, J.S., Victorri, B., "Transformation
Invariance in Pattern Recognition – Tange nt Distance and Tangent Propagation",
Int. J. Imaging System and Technology , vol. 11, Issue 3, pp. 181-194, 2001
[24] Turk, M., Pentland, A.P., "Eigenfaces for recognition", J. of Cognitive
Neuroscience , vol. 3, no. 1, pp. 71-86, 1991
[25] Wiskott, L., Fellous, J.-M., Kruge r, N., von der Malsburg, C., "Face
Recognition by Elastic Bunch Graph Matching", IEEE Trans. PAMI , vol. 17, no. 7.
pp. 775-779, 1997 [26] Wu, J., Zhou, Z.H., “Face recogniti on with one training image per person”,
Pattern Recognition Letters , vol. 23, pp. 1711-1719, 2002
[27] Yilmaz, A., Gokmen, M. , “Eigenhill vs. eigenface and eigenedge”, Pattern
Recognition , vol. 34, pp. 181-184, 2001
[28] Zhao, W., Chellappa, R., Rosenfeld, A., Phillips, P.J., “Face Recognition: A
Literature Survey”, ACM Computing Surveys , pp. 399-458, 2003
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Aplicații biometrice. [618410] (ID: 618410)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
