Lect.dr. Mihail G aianu Pi conje Estelio TIMIS OARA 2019 UNIVERSITATEA DE VEST DIN TIMIS OARA FACULTATEA DE MATEMATIC A S I INFORMATIC A… [607818]

UNIVERSITATEA DE VEST DIN TIMIS OARA
FACULTATEA DE MATEMATIC A S I INFORMATIC A
PROGRAMUL DE STUDII DE MASTER:
INGINERIE SOFTWARE
LUCRARE DE DISERTAT IE
COORDONATOR: ABSOLVENT: [anonimizat].dr. Mihail G aianu Pi conje Estelio
TIMIS OARA
2019

UNIVERSITATEA DE VEST DIN TIMIS OARA
FACULTATEA DE MATEMATIC A S I INFORMATIC A
PROGRAMUL DE STUDII DE MASTER:
INGINERIE SOFTWARE
FACE DETECTION
OPENCV
COORDONATOR: ABSOLVENT: [anonimizat].dr. Mihail G aianu Pi conje Estelio
TIMIS OARA
2019

Abstract
A face recognition system is one of the biometric information processes, its applicability
is easier and working range is wider than other systems like:
 ngerprint
iris scanning
signature
etc
The detection methods are designed to extract features of face region out of a digital
image. The output face image of the detection algorithm should be similar to the
recognition input image. Face detection is performed on live acquired images without
any application eld in mind. The developed system uses white balance correction,
skin like region segmentation, facial feature extraction and face image extraction on
a face candidate. System is also capable of detecting multiple faces in live acquired
images.
3

Cuprins
Introducere . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1 Tehnologii pentru urm arire a persoanelor 6
1.1 Ce este tehnologia pentru urm arirea persoanelor? . . . . . . . . . . . . 6
1.2 Metoda pentru urm arirea (anonim a) ^ n cump ar atorii de magazine . . . 8
1.3 Num ararea persoanelor (detectarea obiectelor) . . . . . . . . . . . . . . 9
1.4 Urm arirea magazinelor Analiza geogra c a
(Object Tracking) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.5 Senzori fat , a de urm arirea bazat a pe dispositive . . . . . . . . . . . . . 11
1.6 Tehnologii de senzori (Edge-Solution) . . . . . . . . . . . . . . . . . . . 12
2 Face Detection 13
2.1 Funct ,ia de detectare a fet ,ei . . . . . . . . . . . . . . . . . . . . . . . . 14
2.2 Prezentarea general a s ,i activitatea timpurie ^ n detectarea fet ,ei . . . . . 14
2.3 Viola and Jones Face Detector . . . . . . . . . . . . . . . . . . . . . . . 17
2.3.1 Imagine integral a . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.3.2 AdaBoost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.3.3 Cascada Clasi catorilor . . . . . . . . . . . . . . . . . . . . . . . 21
2.4 Tehnici recente de detectare a fet ,ei . . . . . . . . . . . . . . . . . . . . 22
2.4.1 Orientarea imaginii . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.4.2 Condit ,iile de imagine s ,i expresiile faciale . . . . . . . . . . . . . 23
2.4.3 Lucr ari ^ n continuare pe detectoare de fet ,e bazate pe cascad a . . 24
2.4.4 Alte abord ari pentru detectarea fet ,elor . . . . . . . . . . . . . . 26
3 Aplicat ,ia 27
3.1 Problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.2 Solut ,ia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.3 Compararea altor algoritmi . . . . . . . . . . . . . . . . . . . . . . . . 31
4 Data Analysing and Information Gathering 32
4.1 Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
4.2 Recunoas ,terea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.3 Autenti carea ^ n aplicat ,ie . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.4 Concluzie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4

Introducere
Ce este Face Detection?
De nit ,ia "Face Detection" se refer a la un subset de tehnologie informatic a capabil a
s a identi ce chipurile oamenilor ^ n cadrul imaginilor digitale. Aplicat ,iile de detectare
a fet ,ei folosesc algoritmi axat ,i pe detectarea chipurilor umane ^ n imagini mai mari care
pot cont ,ine peisaje, obiecte s ,i alte p art ,i ale oamenilor.
Cum functioneaz a Face Detection?
Tehnologia de detectare a fet ,ei ar putea ^ ncepe prin c autarea ochilor umani. Ar
putea face acest lucru prin testarea regiunilor ^ n imaginea de nivel gri. Se poate folosi
apoi un algoritm genetic pentru a detecta regiuni ale fet ,ei, inclusiv spr^ ancenele, gura,
nasul s ,i n arilor. Algoritmul ar identi ca mai ^ nt^ ai posibilele regiuni faciale s ,i apoi vor
aplica teste suplimentare pentru validare.
Aplicat ,ii de detectare a fet ,ei
Fotogra e – Tehnologia de detectare a fet ,ei este folosit a mai frecvent ^ n fotogra e
ca o modalitate de a ajuta autofocusul camerelor pe fet ,ele oamenilor. O alt a aplicat ,ie
este recunoas ,terea z^ ambetului, care ^ i ajut a pe oameni s a fac a fotogra i la momentul
potrivit pentru a captura z^ ambete.
Recunoas ,terea facial a – Una dintre cele mai r asp^ andite utiliz ari ale detect arii fet ,ei
este un sistem de recunoas ,tere facial a. Un sistem de recunoas ,tere facial a se potrives ,te
instantaneu cu fat ,a unui individ ^ mpotriva unei baze de date pentru a stabili identi-
tatea. Instrumentele de recunoas ,tere a fet ,ei sunt utilizate pentru a asigura telefoanele
s,i aplicat ,iile. Acestea sunt de asemenea utilizate de companiile de retail, aeroporturi,
stadioane s ,i alte organizat ,ii pentru a ^ mbun at at ,i securitatea.
Num ararea de oameni ^ n marketing – Detectare a fet ,ei este utilizat ^ n marketing
pentru a detecta c^ and oamenii merg pe o anumit a zon a. Sistemele de detectare a fet ,ei
pot utiliza algoritmi pentru a prezice v^ arsta, sexul s ,i alt ,i factori pentru a servi reclame
relevante.
5

Capitolul 1
Tehnologii pentru urm arire a
persoanelor
1.1 Ce este tehnologia pentru urm arirea persoane-
lor?
Tehnologiile de urm arire a persoanelor captureaz a pozit ,ia de timp s ,i locat ,ie a obiec-
telor (^ n mis ,care) pentru a cuanti ca performant ,a magazinului s ,i pentru a analiza
comportamentul clientului ^ n mod anonim.
Urm arirea persoanelor include detectarea, recunoas ,terea s ,i analiza predictiv a a
obiectelor ^ n mis ,care. Complexitatea depinde de locat ,ia obiectelor (adic a de magazin
sau de strad a), de dimensiunea obiectelor (adic a de o persoan a sau de imagine) s ,i de
detaliile imaginii (adic a recunoas ,terea fet ,ei sau demogra a fet ,ei).
6

Solut ,iile de urm arire pot ^ mp art ,ite ^ n trei categorii largi: Senzori (@Edge),
Urm arirea bazat a pe dispozitive s ,i Tehnologii avansate.
Tehnologiile includ:
Viziune Analytics
Analiza 3D stereo video.
Analiza video monocular a
Imagine termic a
Infrarosu
Ora zborului
Lumin a structurat a
Ret ,eaua Wi-Fi (Ret ,eaua de zon a extins a)
UWB (Band a Ultra Wide) | Radar Imaging
BLE (Baterie cu consum redus de energie Bluetooth)
GPS (sistem de pozit ,ionare global a) Personal Tracker
Identi carea prin RFID (identi carea prin radiofrecvent , a) a etichetelor s ,i urm aririi
Bio-metrice (recunoas ,terea facial a s ,i demogra a anonim a)
^Inv at ,area spat ,ial a 3D (realitatea augmentat a)
7

1.2 Metoda pentru urm arirea (anonim a)^ n cump ar atorii
de magazine
Cel mai bun mod de a g^ andi despre urm arirea oamenilor este ^ n ceea ce prives ,te
avantajele afacerii. Date anonime bazate pe locat ,ie servesc la o mare varietate de
sectoare, inclusiv retail, cl adiri, spitale, transport s ,i oras ,e inteligente.
Analiza locat ,iei a fost ^ n jur de ceva timp.
Si totusi. . .
"Chiar s ,i la cele mai ^ nalte niveluri, comerciant ,ii cu am anuntul nu ^ nt ,eleg cu
adev arat nici recompensele, nici riscurile asociate cu datele de geo-locat ,ie al client ,ilor
anonimi sau non-anonimi." – RSR Research.
8

1.3 Num ararea persoanelor (detectarea obiectelor)
Persoanele care se num ar a se refer a la solut ,ii tehnologice care "num ar a" num arul de
persoane care trec linia virtual a sau stau ^ ntr-o zon a speci cat a.
Oamenii care num ar a solut ,ii genereaz a date liniare ^ n cazul ^ n care obiectul este
detectat sau nu. Unele tehnologii recunosc direct ,ia obiectului (calea) s ,i furnizeaz a
numerele de intrare / ies ,ire s ,i timpul de ocupare.
Tehnologiile uzuale includ Video Analytics, Ora de zbor, Grinzi infraros ,ii s ,i Ima-
gine termic a.
Bene ciile afacerii pentru num ararea persoanelor se refer a la m asurarea num arului
de vizitatori, conversia v^ anz arilor, compararea magazinului s ,i analiza mall-urilor.
Num ar atoarea oamenilor este estimat a la 15,5 miliarde de dolari p^ an a ^ n 2022 –
Fior Markets Reserach
Persoanele care se num ar a sunt un subgrup al Google Analytics pentru localizarea
geogra c a.
9

1.4 Urm arirea magazinelor Analiza geogra c a
(Object Tracking)
Urm arirea magazinului se refer a la urm arirea persoanelor (obiectelor) ^ n mis ,care.
^In plus fat , a de detectarea obiectului, solut ,ia trebuie s a recunoasc a obiectul. Exist a
niveluri diferite de recunoas ,tere a obiectelor.
De exeplu:
Oamenii de num arare identi c a "capetele"
WiFi – monitorizeaz a semnalele Smartphone
BLE Beacons utilizeaz a informat ,ii opt-in
Etichetele RFID s ,i urm aresc SKU-urile produsului
Factorii demogra ci identi c a sexul
Biometria capteaz a fet ,ele individuale
Vision Analytics poate "recunoas ,te" imaginile
Av^ and ^ n vedere c a tehnologia trebuie s a prezic a calea viitoare a obiectului, solut ,iile
mai avansate utilizeaz a tehnici de ^ nv at ,are s ,i tehnici avansate de analiz a.
"Serviciile bazate pe localizare se as ,teapt a s a ajung a la aproape 62 de miliarde de
dolari p^ an a ^ n 2022" – Allied Market Research
Urm arirea persoanelor este utilizat a^ n prezent^ n Analiza client ,ilor InStore, Analiza
muncii, Managementul coastelor, Pozit ,ionarea produselor s ,i Analiza c ailor.
10

1.5 Senzori fat , a de urm arirea bazat a pe dispositive
Senzorii bazat i pe dispozitive sunt adesea solut ,ii complementare. Fiecare tehnologie
are propriile sale provoc ari s ,i bene cii.
^In senzori, ne intereseaz a acuratet ,ea urm aririi a tuturor obiectelor din c^ ampul de
vedere.
^In r^ andul persoanelor care num ar a pentru m asurarea tra cului pietonal s ,i a valori-
lor de conversie a v^ anz arilor cu am anuntul, tehnologiile preferate urm aresc persoanele
cu senzori.
11

1.6 Tehnologii de senzori (Edge-Solution)
Distinct ,ia dintre urm arirea persoanelor bazate pe senzori este c a prelucrarea datelor
se face la margine. Aceasta ^ nseamn a c a senzorul capteaz a at^ at datele brute c^ at s ,i
proceseaz a valorile.
Obiectivul principal al unei solut ,ii bazate pe senzori este de a furniza analize la
margine (^ n magazin). Ies ,irea c atre serverul corporativ este un s ,ier de m asur atori.
12

Capitolul 2
Face Detection
Detectarea fet ,ei este o tehnologie de calculator utilizat a^ ntr-o varietate de aplicat ,ii care
identi c a chipurile umane ^ n imagini digitale. Detectarea fet ,ei se refer a, de asemenea,
la procesul psihologic prin care oamenii localizeaz a s ,i particip a la fet ,e ^ ntr-o scen a
vizual a.
13

2.1 Funct ,ia de detectare a fet ,ei
Primul pas al unui sistem de prelucrare a fet ,ei este detectarea fet ,elor. Detectarea fet ,ei
vizeaz a identi carea dac a exist a sau nu o imagine ^ ntr-o imagine s ,i, dac a este cazul,
raportat ,i locat ,ia ec arei fet ,e. Vom descrie acum unele dintre tehnicile de cercetare a
detect arii fet ,ei.
2.2 Prezentarea general a s ,i activitatea timpurie ^ n
detectarea fet ,ei
Potrivit lui Yang et al. detectarea fet ,ei poate ^ mp art ,it a ^ n patru categorii largi pe
baza abord arii lor:
Bazate pe cunoas ,tere
Caracter invariante
Potrivire s ,ablon
Metode bazate pe aspect
Tehnicile bazate pe cunos ,tint ,e se bazeaz a pe reguli care codi c a o fat , a tipic a. Ele
au fost utilizate ^ n principal pentru localizarea fet ,ei. Yang s ,i Huang au folosit aceast a
abordare pentru a localiza fet ,e umane ^ ntr-un fundal complex. Abordarea lor const a ^ n
trei niveluri bazate pe cunoas ,tere. La nivelul 1, ^ ntreaga imagine este scanat a pentru
a localiza toate fet ,ele, iar ^ n urm atorul nivel, 8 8 celule window screens localizeaz a
fet ,ele obt ,inute ^ n primul nivel. La nivelul 3 se efectueaz a o nou a examinare s ,i dac a
zona ochilor s ,i a gurii se potrives ,te cu caracteristicile stabilite, atunci prezent ,a fet ,ei
este stabilit.
Abord arile utilizeaz a caracteristici structurale pentru a identi ca fet ,ele dintr-o ima-
gine. Aceast a abordare le face robuste la variat ,ii ^ n ceea ce prives ,te pozit ,ia, punctul
de vedere sau condit ,iile de iluminare. Leung s ,i altii a folosit aceast a abordare pentru
a localiza fet ,e ^ n scene aglomerate. Au folosit un set de detectoare de tr as aturi locale
s,i le-au cuplat cu un model statistic al distant ,elor reciproce dintre tr as aturile faciale.
Aceasta abordarea este robust a la variat ,iile scalei, traducerii, rotat ,iei (^ n plan) s ,i poate
face fat , a part ,ial a ocluziile.
14

Yow s ,i Cipolla au propus un algoritm bazat pe caracteristici care detecteaz a punc-
tele de caracteristic a de la imagine folosind ltrele spat ,iale s ,i le grupeaz a ^ n candidat ,i
la fat ,a folosind geometric s ,i constr^ angeri gray nivel. Pentru a stabili prezent ,a unei fet ,e,
ei folosesc un cadru probabilistic. Dai s ,i Nakano au dezvoltat o metod a de detectare
a fet ,elor ^ n scenele de culori aglomerate. Au derivat un set de inegalit at ,i pentru a
forma un model de textur a pe baza parametrilor caracteristici prezent ,i ^ n o matrice
de dependent , a la nivel de spat ,iu gri. Aceste inegalit at ,i au ajutat la de nirea locat ,iei
fet ,ei. Acestea au ^ mbun at at ,it zonele fet ,ei prin utilizarea componentei I a sistemului
de culori YIQ. Yang s ,i Waibel a dezvoltat un tracker de timp real. Ei au caracterizat
chipurile umane folosind o piele model de culoare ^ n spat ,iul de culoare cromatic a. Ei
au propus, de asemenea, un model de mis ,care pentru a urm ari mis ,carea capului s ,i
un model de camer a pentru a prezice mis ,carea camerei. McKenna s ,i altii amestecul
gaussian folosit modele pentru detectarea fet ,elor umane.
Metodele de potrivire a s ,abloanelor utilizeaz a corelarea ^ ntre o imagine s ,i modelele
stocate pentru detectare precum s ,i localizarea. Craw et al. a prezentat o metod a de
localizare a caracteristicilor personale ale fet ,ei cum ar ochii s ,i gura ^ ntr-o imagine cu
chip gri. Detectarea fet ,ei se realizeaz a ^ n dou a etape ^ ncep^ and cu localizarea general a
a fet ,elor din imagine urmat a de ra nament s ,i evaluare pentru a g asi fat ,a. Lanitis s ,i
altii prezint a o reprezentare bazat a pe model a forma si aspectul gri al fetelor umane.
Aceste modele sunt folosite ulterior pentru clasi care imagini.
Metodele bazate pe aspect sunt concepute ^ n primul r^ and pentru detectarea fet ,ei.
Modelele sunt generate de imagini pentru a le capta variabilitatea. Turk s ,i Pentland
au f acut fat , a recunoas ,terea s ,i detectarea prin analiza componentelor principale. Ana-
liza principal a a componentelor este folosit a pentru a genera fet ,e eigen care se ^ ntind
pe un subspat ,iu. Dup a proiectarea acestor imagini ^ n subspat ,iu, ele sunt grupate.
Imaginile fet ,ei nu se schimb a radical atunci c^ and sunt proiectate ^ n subspat ,iu ^ n timp
ce non-fet ,ele apar diferit atunci c^ and sunt proiectate pe subspat ,iu. Distant ,a dintre
ecare locat ,ie ^ n imagine s ,i spat ,iul fet ,ei sunt calculate pentru a detecta prezent ,a unei
fet ,e. Distanta din spat ,iul fet ,ei este folosit ca m asur a de apropiere de o fat , a s ,i rezulta-
tul acestei distant ,e este a harta harta. O fat , a poate apoi detectat a de la minimele
locale ale h art ,ii fet ,ei.
Sung s ,i Poggio au prezentat un sistem de ^ nv at ,are despre modelele de imagine ale
unei clase exemplele pozitive s ,i negative ale clasei respective. Ei folosesc o abordare
bazat a pe dou a componente distinge ^ ntre fet ,e s ,i persoane f ar a fet ,e. Prima compo-
nent a const a ^ n modele bazate pe distribut ,ie pentru modelele fat , a / nonface s ,i a doua
component a este un clasi cator perceptron multistrat.
15

Rowley s ,i altii au facut cea mai importanta munca in detectarea fetei folosind re-
tele neuronale. Ei folosesc o ret ,ea neural a multistrat pentru a diferent ,ia ^ ntre fat , a s ,i
nonface modele de pe imaginea fet ,ei s ,i a imaginilor nonface. Cu toate acestea, ele pot
detecta doar fet ,ele frontale. Una dintre cele mai r asp^ andite baze de date de detectare
a fet ,ei a fost creat a de Rowley et al. Osuna s ,i altii au fost primii care au folosit un
SVM pentru detectarea fet ,ei. Sistemul lor are rate de eroare mai mici s ,i ruleaz a de 30
de ori mai repede dec^ at sistemul Sung s ,i Poggio.
Schneiderman s ,i Kanade au dezvoltat o abordare folosind un clasi cator naiv Bayes
pentru a calcula probabilitatea comun a a aspectului local s ,i a pozit ,iei subregiunilor
fet ,ei la diferite rezolut ,ii. Accentul pe modele sau subregiuni locale se datoreaz a faptului
c a ele pot mai multe distinctiv. De exemplu, exist a o diferent , a clar a ^ ntre modelele
din jurul ochilor s ,i cele ale acestora ^ n jurul obrajilor. ^In aceast a procedur a, o fat , a este
^ mp art ,it a ^ n patru subregiuni dreptunghiulare la ecare scar a. Aceste subregiuni sunt
proiectate ^ ntr-un spat ,iu dimensional inferior folosind PCA s ,i cuanti cate ^ n un set
nit de modele. Statisticile din ecare subregiune sunt folosite pentru a codi ca aspec-
tul local. Prin urmare, aces ,tia raporteaz a prezent ,a unei fet ,e atunci c^ and raportul de
probabilitate este mai mare dec^ at raportul dintre probabilit at ,ile anterioare. Aceast a
abordare este capabil a s a detecteze unele fet ,e rotite s ,i de pro l. Acest lucru a fost
ulterior extins de Schneiderman s ,i Kanade folosind reprezent ari wavelet pentru a le
detecta pro le s ,i mas ,ini.
Rajagopalan s ,i altii au propus dou a metode probabiliste pentru detectarea fet ,ei.^In
prima metod a utilizeaz a statistici de ordin superior (HOS) pentru estimarea densit at ,ii.
^In a doua metod a fet ,ele s ,i nonface ^ ntr-o imagine sunt de nite prin utilizarea unui
model Markov ascuns (Hidden Markov Model – HMM). Des ,i aceste abord ari au o rat a
ridicat a de detectare, exist a s ,i unele fals pozitive. Lew a efectuat detectarea fet ,ei prin
asocierea unei funct ,ii de probabilitate p (x) cu evenimentul c a s ,ablonul este o fat , a s ,i
q (x) la evenimentul ^ n care s ,ablonul nu este o fat , a. O curs a de fat , a baz a de date
const^ and din nou a vederi de 100 de persoane este utilizat a pentru a estima distribut ,ia
fet ,ei s ,i a setul de 143.000 de s ,abloane nonface este utilizat pentru a estima funct ,ia
densit at ,ii de probabilitate nonface. Una dintre lucr arile seminale ^ n detectarea fet ,ei
care a avut un impact urias ,este de Viola s ,i Jones.
16

2.3 Viola and Jones Face Detector
Viola s ,i Jones au prezentat un cadru de detectare a fet ,ei care poate detecta chipurile
la 15 cadre pe secunda. Autorii s ,i-au distins munca prin trei contribut ,ii cheie ^ n
dezvoltarea acestui detector de fat , a:
O reprezentare a imaginii bazat a pe imaginea integral a prezentat a de c atre Crow
Un algoritm de ^ nv at ,are, bazat pe AdaBoost
Combinarea clasi catorilor complexi ^ ntr-un cascad a
Acestea sunt componentele cheie ale acestui detector de fet ,e.
2.3.1 Imagine integral a
O imagine integral a se bazeaz a pe tr as aturi asem an atoare lui Haar, care sunt prezen-
tate ^ n gur a.
Caracteristici integrate ale imaginii: A s ,i B: Caracteristici cu dou a dreptunghiuri,
C: Trei caracteristici dreptunghiulare, D: Patru caracteristici dreptunghiulare
Acestea sunt cele trei tipuri de tr as aturi pe care Viola s ,i Jones le-au folosit ^ n cer-
cetarea lor. Valoarea unei caracteristici cu dou a dreptunghiuri este diferent ,a dintre
suma pixelilor din cele dou a regiuni dreptunghiulare. Aceste regiuni sunt adiacente
pe orizontal a sau vertical a s ,i av^ and aceeas ,i dimensiune. Caracteristica cu trei laturi
17

calculeaz a diferent ,a dintre suma celor dou a regiuni exterioare s ,i centru dreptunghiular.
Caracteristicile cu patru dreptunghiuri g asesc diferent ,a dintre perechile cu dreptunghi
diagonal. Rezolut ,ia de baz a a detectorului este 24 24, ceea ce face num arul drept-
unghiular Caracteristicile s a e 160.000.
Pentru a g asi aceste tr as aturi rectangulare, Viola s ,i Jones au folosit o imagine
intermediar a reprezentare pe care o numesc o imagine integral a. La o locat ,ie x, y, o
imagine integral a cont ,ine suma pixelilor deasupra s ,i la st^ anga lui x, y, inclusiv:
unde ii(x, y) este imaginea integral a a imaginii originale i.
Caracteristicile rectangulare sunt oarecum primitive s ,i sensibile la prezent ,a margi-
nilor, a barelor s ,i a altelor structuri de imagine simpl a. ^In acelas ,i timp, ele sunt destul
de grosolane. Viola s ,i Jones au generat un set foarte mare s ,i variat de elemente drept-
unghiulare. Acest set de caracteristici rectangulare incomplete ofer a o reprezentare
bogat a a imaginii care sprijin a ^ nv at ,area e cient a. Prin urmare, limit arile caracte-
risticilor dreptunghiului sunt ^ n mare parte dep as ,ite de e cient ,a lor computat ,ional a
extrem a. Acest detector de fat , a scaneaz a o imagine de intrare la mai multe scale,
^ ncep^ and de la scala de baz a ^ n care se a
 a fet ,ele sunt detectate la o dimensiune de
2424 pixeli, o imagine de 384 288 pixeli este scanat a la 12 scale, ecare factor de
1,25 mai mare dec^ at ultimul. ^In practic a, cu toate acestea, o piramid a de 12 imagini,
ecare 1,25 ori mai mic dec^ at imaginea anterioar a. Un detector de scar a x a este apoi
utilizat pentru scanarea peste ecare dintre aceste imagini.
18

2.3.2 AdaBoost
Viola s ,i Jones folosesc o variant a de ^ nv at ,are a AdaBoost pentru a instrui clasi cato-
rul s ,i a selecta caracteristici. AdaBoost este un proces de select ,ie lacom. Un sistem
de ponderare este utilizat pentru a asocia greut at ,ile la clasi catorii cu greutate mare
asociate cu ecare funct ,ie de clasi care bun a s ,i o greutate mic a cu funct ,ii slabe.
AdaBoost este o tehnic a e cient a pentru a selecta un set mic de funct ,ii bune. Scopul
este de a separa exemple pozitive s ,i negative, astfel ^ nc^ at un num ar minim de exemple
s a e clasi cate gres ,it. Pentru a realiza acest lucru, un algoritm de ^ nv at ,are slab este
conceput pentru a selecta o singur a caracteristic a dreptunghiular a care realizeaz a cel
mai bine aceast a separare ^ ntre exemplele pozitive s ,i cele negative. Acest clasi cator
slab determin a funct ,ia optim a a pragului pentru a minimiza clasi carea gres ,it a. Un
clasi cator slab poate prezentat ca
unde (h(x;f;p; )) este un clasi cator slab compus din caracteristica f, si polari-
tate p si o sub-fereastr a de 24 24 pixeli, x, a unei imagini.
Num arul clasi catorilor slabi este ^ n ordinea lui K N, unde K este num arul de
caracteristici s ,i N este num arul de exemple. Pentru a obt ,ine o idee despre num arul
de persoane distincte slabe clasi catorii vom cita un exemplu de la Viola s ,i Jones.
Av^ and o sarcin a cu N = 20000 s ,i K = 160000 exist a 3,2 miliarde clasi catori binari
diferit ,i.^In ciuda acestui lucru extraordinar set mare de clasi catori, AdaBoost este
^ ntr-adev ar foarte e cient s ,i rapid. Un clasi cator de caracteristici 200 poate s a e
^ nv at ,at ^ n O (MNK) sau aproximativ 1011operat ,iuni. ^In ecare etap a, dependent ,a de
anterior caracteristicile selectate sunt codi cate e cient folosind greut at ,i de exemplu
care pot folosite pentru a evaluate un clasi cator slab dat ^ n timp constant.
19

Procesul de generare a unui clasi cator slab poate explicat dup a cum urmeaz a.
Exemplele sunt sortat a pe baza ec arei caracteristici a ec arei caracteristici. Pragul
optim pentru AdaBoost pentru o caracteristic a pot calculate ^ ntr-o singur a trecere
peste aceast a list a sortat a. Pentru ecare element din lista sortat a , se p astreaz a
s,i se evalueaz a urm atoarele patru sume: suma total a a greut at ,ilor exemplu pozitive
T+, suma total a a greut at ,ilor de exemplu negative T, suma ponderilor pozitive sub
exemplul curent S+s,i suma greut at ,ilor negative sub exemplul curent S. Eroarea
pentru un prag care ^ mparte intervalul dintre exemplul curent s ,i cel anterior din lista
sortat a este:
sau minimul erorii de etichetare a tuturor exemplelor sub exemplul curent negativ
s,i marc^ and exemplele de mai sus pozitive fat , a de eroarea contrar. Aceste sume sunt
us,or actualizat a ^ n urma c aut arii.
Funct ,iile init ,iale alese de AdaBoost sunt foarte utile pentru detectarea fet ,ei. Aceasta
stabiles ,te acest lucru regiunea ochilor este adesea mai ^ ntunecat a dec^ at regiunea
nasului s ,i a obrajilor. Totus ,i, asta nu este sensibil a la locat ,ia s ,i la dimensiunea fet ,ei.
A doua caracteristic a este ceva mai mult speci c a s ,i se bazeaz a pe proprietatea c a
ochii sunt mai ^ ntunecat ,i dec^ at regiunea nasului. Prin urmare, caracteristicile devin
un instrument e cient ^ n procesul de detectare a fet ,ei.
20

2.3.3 Cascada Clasi catorilor
Scopul construirii unei cascade de ltre este o mai mare e cient , a s ,i o reducere a cal-
culelor timp. Viola s ,i Jones au sugerat c a un num ar mai mic de clasi catori e cient ,i
s,i potent ,iali pot s a e construite. Aces ,ti clasi catori potent ,iali vor mai e cient ,i ^ n
respingerea multor negative sub-windows ^ n timp ce detecteaz a aproape toate situat ,iile
pozitive. Majoritatea sub-windows sunt respinse de clasi catorii mai simpli, iar redu-
cerea ratei false pozitive se realizeaz a prin utilizarea mai multor clasi catori complexi.
AdaBoost este folosit pentru a crea etape pentru clasi carea formatorilor. Prima
etap a este format a din un clasi cator puternic cu dou a caracteristici. Pentru a con-
strui un ltru e cient al fet ,ei, pragul puternic al clasi catorului este ajustat pentru a
minimiza falsele negative. O rat a de eroare mai mic a a datelor de antrenament este
obt ,inut a prin utilizarea pragul init ,ial AdaBoost. Acest prag inferior genereaz a rate de
detect ,ie mai mari s ,i ratele fals pozitive mai mari. Viola s ,i Jones au obt ,inut o precizie
de 100% cu o rat a fals pozitiv a de 50% utiliz^ and clasi catorul cu dou a caracteristici.
O cascad a de ltre funct ,ioneaz a astfel ^ nc^ at s a se obt ,in a rezultate pozitive primul cla-
si cator declans ,eaz a un al doilea clasi cator s ,i un rezultat pozitiv din clasa a doua
declans ,eaz a clasi catorul, un al treilea clasi cator s ,i as ,a mai departe. Un rezultat
negativ ^ n orice etap a conduce la respingerea sub-windows.
Prin urmare, o cascad a este proiectat a astfel ^ nc^ at tot mai multe exemple negative
s a e respinse, iar exemplele pozitive s a treac a prin clasi catorii ulteriori. Viola s ,i
Jones au bazat proiectarea acestei cascade de ltre pe un cadru de optimizare astfel
^ nc^ at num arul de etape ale clasi catorului, num arul de caracteristici din ecare etap a
s,i pragul ec arei etape sunt tranzact ,ionate pentru a minimiza num arul as ,teptat de
caracteristici evaluate. Viola s ,i Jones au folosit un total din 38 de etape cu peste 6000
de caracteristici ^ n detectorul lor de cascad a s ,i au avut ^ nc a o detectare rapid a medie
ori.
21

2.4 Tehnici recente de detectare a fet ,ei
Mai sus am discutat tehnicile de detectare a fet ,ei ^ nainte de anul 2002 urmate de
detectorul de fat , a Viola s ,i Jones din cauza in
uent ,ei sale ^ n cercetarea detect arii fet ,ei.
Acum voi descrie cercetarea recenta a detect arii fet ,ei ^ n contextul unor provoc ari,
inclusiv schimb arile ^ n pozit ,ie, ocluzie, expresii faciale, vitez a, orientare a imaginii s ,i
condit ,ii de imagine, as ,a cum sunt enumerate Yang s ,i altii
2.4.1 Orientarea imaginii
Detectarea pozit ,iilor frontale ^ n condit ,ii controlate este mai mult sau mai put ,in o
problem a rezolvat a. In orice caz, variat ,iile ^ n condit ,iile imaginii fac mult mai greu de-
tectarea fet ,ei. Ca rezultat, mult ,i cercet atori au impus diferite tehnici pentru a dep as ,i
astfel de provoc ari. Viola s ,i Jones au extins cadru frontal de detectare a fet ,ei pentru a
manipula fet ,ele pro late s ,i rotite. Ei s-au antrenat diferit detectoare pentru vizualiz ari
diferite ale fet ,ei s ,i au folosit o arbore de decizie pentru a determina pro lul s ,i rotat ,ia.
Cu toate acestea, ei au primit multe respingeri false s ,i fals pozitive.
Wu s ,i altii au utilizat o cascad a paralel a pentru detectarea fet ,ei cu mai multe vi-
zualiz ari. Au facut un clasi cator pentru ecare vizualizare. Des ,i performant ,a a fost
bun a, con gurarea este prea lent a pentru utilizare practic a. Li s ,i altii a folosit o cas-
cad a de piramide pe 3 nivele pentru a ^ mbun at at ,i designul lui Wu s ,i altii pentru vitez a
s,i performant , a mai bun a. ^In piramid a, primul nivel funct ,ioneaz a pe toate pozit ,iile,
al doilea nivel detecteaz a pro lurile st^ anga ^ ntre -90s,i -30, ^ ntre -30s,i + 30pentru
vizualiz arile frontale s ,i pro le drepte ^ ntre + 30s,i + 90. Al treilea nivel al piramidelor
detecteaz a fet ,e la 7 unghiuri mai ne. Des ,i acest design arat a performant ,e mult mai
bune, necesit a ^ n continuare multe ^ mbun at at ,iri. Huang s ,i altii proiectat un detector
de fet ,e Multi-View, care ^ mparte ^ ntregul spat ,iu al fet ,ei ^ n subspat ,ii mai mici s ,i mai
mici. Folosind aceast a abordare se pot confrunta cu modi c ari posibile care acoper a
45rotat ,ie ^ n plan s ,i90rotat ,ie ^ n afara planului.
Aceast a abordare necesit a doar patru astfel de detectoare s a aib a grij a de un MVFD
independent de rotat ,ie. In orice caz, aceast a metod a necesit a clasi carea manual a a
datelor de formare s ,i poate o sarcin a plictisitoare. Anoop s ,i altii a prezentat o abor-
dare pentru detectarea fet ,elor cu mai multe vizualiz ari ^ n videoclipuri. Ei au efectuat
aceast a detectare a fet ,ei multiview la anumite pozit ,ii cheie din videoclip, ^ n loc de la
ecare pozit ,ie ^ ntr-un cadru. Aceste pozit ,ii cheie se bazeaz a pe es ,antioane statistice
extrase dintr-o densitate a funct ,iei a c arei estimare se bazeaz a pe indicii de culoare,
rezultatele detect arii din trecut, rezultatele tracker-ului s ,i un model de continuitate
temporal a.
22

2.4.2 Condit ,iile de imagine s ,i expresiile faciale
Detectarea fet ,ei ^ n lumina iluminat a necontrolat a este foarte di cil a. ^In plus, modi-
c arile expresiilor complic a s ,i mai mult detectarea. Desi accentul principal al cercet arii
de detectare a fet ,ei a fost ^ n ceea ce prives ,te inversarea, au fost efectuate unele lucr ari
pentru a reduce impactul condit ,iilor de iluminare a imaginii s ,i pentru a ^ ncorpora dife-
rite expresii faciale. Hsu s ,i altii au propus un detector de fat , a utiliz^ and o tehnic a nou a
de compensare a ilumin arii s ,i o transformare a culorilor neliniar a pentru a detecta
regiunile pielii pe ^ ntreaga imagine. Aceasta a fost urmat a de generarea de candidat ,i
pentru fet ,e pe baza dispunerii spat ,iale a acestor plasturi de piele. Culoarea pielii este
modelat a utiliz^ and o elips a parametric a ^ ntr-un spat ,iu de culoare transformat ^ n dou a
dimensiuni s ,i caracteristicile faciale sunt extrase prin construirea h art ,ilor caracteris-
tice pentru ochi, gura s ,i limita fet ,ei. Cu toate acestea, num arul de fals pozitive care
utilizeaz a aceast a abordare este ridicat.
Xiao s ,i altii au folosit o abordare ^ n trei etape pentru a detecta fet ,ele ^ n imagini
cu fundaluri complexe, vederi, ilumin ari s ,i expresii faciale. Ei folosesc un algoritm
de ltrare liniar a pentru a elimina majoritatea non-fet ,elor, urmat de un algoritm de
ampli care a lant ,ului pentru a spori e cient ,a. In cele din urma, ei folosesc preproce-
sarea imaginii, ltrul SVM s ,i ltrul de culoare pentru a ra na predict ,ia nal a. Ei, de
asemenea au folosit un estimator de pozare ^ n plan pentru acest sistem ^ n timp real
pentru detectarea fet ,ei multiview ^ n fotogra i. Des ,i aceste abord ari se dovedesc foarte
bine ^ n anumite aspecte ale detect arii fet ,ei, majoritatea sistemelor es ,ueaz a atunci c^ and
toate aceste provoc ari sunt prezentate ^ n aceeas ,i baz a de date, rezult^ and o mult ,ime de
false pozitive s ,i un num ar mare de respingeri false. Chiar dac a astfel de provoc ari sunt
dep as ,ite, rezultatul este adesea un sistem cu cereri computat ,ionale mari care limiteaz a
aplicarea ^ n timp real.
23

2.4.3 Lucr ari ^ n continuare pe detectoare de fet ,e bazate pe
cascad a
Dupa succesul detectorului de fet ,e bazat pe cascada Viola si Jones, mult ,i cercetatori
au ^ mpins ideea ^ n direct ,ii diferite. Li s ,i Zhang au introdus o nou a procedur a numit a
FloatBoost pentru ^ nv at ,area unui clasi cator ampli cat pentru atingerea ratei minime
de eroare. FloatBoost este folosit pentru a reduce decalajul dintre obiectivul unui al-
goritm de ampli care convent ,ional s ,i cea a multor aplicat ,ii prin ^ ncorporarea c aut arii
plutitoare ^ n AdaBoost. Aceast a tehnic a permite s ,tergerea clasi catorilor slabi care
sunt ine cient ,i ^ n termeni din rata de eroare. Apoi este folosit ^ n mod e cient pentru
a realiza detectarea ^ n timp real a imaginilor multiview ^ ncorpor^ and ideea piramidei
detectorului ^ nv at ,at a folosind FloatBoost.
Cu toate acestea, unul dintre dezavantajele metodelor cascadate este acela c a re-
ducerea pozitivelor false necesit a preg atirea unor noi etape care reduc rata de detect ,ie.
Pentru a dep as ,i astfel de sl abiciuni a sistemelor bazate pe cascad a, Bourdev s ,i Brandt
au propus un nou sistem bazat pe cascad a numit a "soft cascade". Potrivit autorilor,
sistemele cascade au mai multe dezavantaje c a sistemul lor se adreseaz a. Unele dintre
aceste dezavantaje au fost raportate dup a cum urmeaz a: ^ n primul r^ and, ^ n ecare
etap a se ia o decizie de acceptare sau de respingere a unei instant ,e f ar a a se lua ^ n
considerare modul ^ n care aceasta se desf as ,oar a bine, instant ,a efectuat a ^ n etapele an-
terioare; ^ n al doilea r^ and, exist a o cerint , a de formare sever a la ecare etap a. Pentru
a trece ^ n ecare etap a este necesar a o clasi care pozitiv a, iar rata de detect ,ie nal a
este produsul ratelor de detect ,ie din toate etapele, de exemplu, ^ ntr-o cascad a cu 10
etape, o nal a rata de detect ,ie de 90% necesit a ca ^ n ecare etap a rata de detectare a
fet ,ei s a e de 99%. Asta este foarte di cil pentru etapele ulterioare; ^ n al treilea r^ and,
parametrii de formare, cum ar detectarea t ,int a s ,i valorile false pozitive ofer a doar
un control indirect asupra vitezei totale de execut ,ie, ceea ce cere recali carea cascadei
pentru a testa parametrii diferit ,i; s ,i, ^ n sf^ ars ,it, nu exist a nici o modalitate de a alege
parametrii cum ar num arul de etape, ordonarea, rata de detectare a t ,int a s ,i rata fals
pozitiv a la ecare etap a.
Bourdev s ,i Brandt au folosit o abordare ^ n dou a etape pentru a dep as ,i unele dintre
aceste dezavantaje detectoare de cascad a. ^In primul r^ and, au generalizat funct ,ia de
luare a deciziilor pentru ecare etap a scalar-valoare, mai degrab a dec^ at binar-evaluat.
^In al doilea r^ and, decizia dac a o instant , a pozitiv a trece o anumit a etap a depinde de
valorile ec areia dintre etapele anterioare, mai degrab a dec^ at de valoarea etapei avute
^ n vedere. ^In aceast a abordare, ^ n loc s a e format a o secvent , a de etape consecutive ca
s,i ^ n abordarea lui Viola s ,i Jones, Bourdev s ,i Brandt au instruit un singur, potent ,ial
foarte lung, etape const^ and din tr as aturi T. Clasi catorul rezultat poate reprezentat
ca:
24

undect(x) = tht(x) sunt setul de clasi catori bazat ,i pe Haar, selectat ,i ^ n tim-
pul AdaBoost trainer scalat de greut at ,ile asociate. Cu toate acestea, pentru a reduce
num arul de falsuri negative, Bourdev s ,i Brandt au propus o solut ,ie care utilizeaz a
o curb a parametrizat a. ^In ^ ncercarea de a reducerea num arului de falsuri negative,
aceast a solut ,ie renunt , a, de asemenea, la exemplele pozitive. Mita s ,i alt ,ii. au introdus
o nou a caracteristic a asem an atoare Haar pentru detectarea fet ,ei.^In aceast a abordare
AdaBoost este folosit pentru a ^ nv at ,a un detector de fet ,e prin selectarea ^ n etape
a elementelor articulare asem an atoare Haar. Autorii sust ,in c a acest detector are o
performant , a de clasi care mai mare dec^ at Detectorul lui Viola s ,i Jones. Acest detec-
tor este de 2,6 ori mai rapid dec^ at detectorul de fat , a Viola s ,i Jones. Totus ,i, acest
algoritmul a fost testat numai pe setul de date MIT-CMU.
Heisele s ,i altii au dezvoltat un cadru part ,ial bazat pe c autarea componentelor faci-
ale proeminente, cum ar ochii, nasul etc., s ,i apoi folosirea relat ,iei lor spat ,iale pentru
detectarea fet ,elor. Aceasta metoda este foarte robust a pentru deform ari s ,i ocluziuni
ale imaginii. Cu toate acestea, alegerea reprezent arilor caracteristice s ,i caracterizarea
precis a a relat ,iilor dintre componentele faciale este ^ n continuare o provocare.
Nilsson s ,i altii utilizeaz a tehnica local a de transformare cuantic a medie succesiv a
(SMQT) pentru detectarea fet ,ei. SMQT local este robust pentru schimbarea ilu-
min arii. Aceast a abordare este o versiune extins a a clasi catorului Sparse Network
of Winnows (SNoW). SNoW este rar ret ,ea de unit at ,i liniare peste spat ,iul caracteris-
tic. Unul dintre dezavantajele bazate pe SNoW metode este c a acestea necesit a un
num ar mare de fet ,e s ,i non-fat ,e patch-uri ^ n timpul antrenamentului. Jang s ,i Kim
au folosit un detector de cascad a bazat pe AdaBoost pentru detectarea fet ,ei. Ei au
folosit o t aiere evolutiv a pentru a reduce num arul de clasi catori slabi. ^In scopul de
a construi un multiview detector de fet ,e, autorii au ^ ncorporat pro lul frontal, st^ ang
s,i un detector de fat , a din dreapta. In orice caz, ei au testat-o doar pe setul de date
CMU-MIT s ,i de asemenea, sufer a de aceleas ,i probleme cu mai multe pozit ,ii false,
ca s ,i alte abord ari bazate pe detectori cascad a. Pentru astfel de detectori, Brubaker
et Al. a prezentat o modalitate de determinare a num arului de ipoteze care trebuie
incluse ^ ntr-un ansamblu precum s ,i echilibrul corespunz ator de detectare s ,i rate fals
pozitive ^ n etapele individuale. Pakazad s ,i altii au utilizat un detector de fat , a bazat
pe cascad a pe modelul detectorului de fat , a Viola s ,i Jones. ^In ecare etap a a cascadei,
cel mai bun set minimal de caracteristici este selectat utiliz^ and o select ,ie a caracte-
risticilor algoritm. Aceast a abordare reduce num arul mediu de operat ,iuni pe locat ,ie.
Caracteristicile care pe care le-au folosit sunt momente geometrice centrale (CGM) ale
componentelor fet ,ei s ,i orizontale ale acestora vertical gradients. Aceste caracteristici
au fost calculate folosind algoritmul de sumare Kahan pentru a reduce efectele erorii
rotunde.
25

2.4.4 Alte abord ari pentru detectarea fet ,elor
Sznitman s ,i Jedynak au folosit o abordare bazat a pe teoria informat ,iilor pentru de-
tectarea s ,i localizarea fet ,ei.^In aceast a abordare, ^ ntreb arile generale s ,i speci ce sunt
solicitate pentru a determina fat ,a ridicat a ^ n timp ce sunt acoperite diferite p art ,i ale
acestei. Aceast a abordare se concentreaz a strict pe fet ,ele frontale. Tsao s ,i altii a apli-
cat o abordare bazat a pe baze de date pentru detectarea fet ,ei. Detectorul de fat , a este
alc atuit din trei clasi catori cascad a pentru a t aia non-fet ,e. Aceasta implic a extragerea
de date a caracteristicilor a fet ,elor umane ^ n mod automat s ,i e cient. Fiecare imagine
de antrenament este convertit a la o imagine de margine prin aplicarea operatorului de
detectare a marginilor Sobel, a unui operator morfologic s ,i a unui prag. Din aceste
imagini de margine, ele obt ,in caracterul pozitiv al caracteristicilor prin miniere frec-
vente maxime folosind o abordare bazat a pe baze de date numit a algoritmul MAFIA.
Aceast a abordare nu acord a atent ,ie numai modelelor pozitive cum ar ochii s ,i gura,
dar s ,i unelor caracteristici negative cum ar obrajii care nu cont ,in nici un num ar de
tr as aturi faciale.
Wang s ,i altii a folosit o combinat ,ie de caracteristici Haar s ,i caracteristici ale culori-
lor pielii pentru detectarea fet ,ei. Aceast a abordare combinat a ajut a cele dou a metode
s a valori ce reciproc punctele forte. ^In ^ n plus, acest lucru permite nu numai o cres ,tere
a vitezei de detectare, dar s ,i ^ mbun at at ,es,te acuratet ,ea acesteia s ,i minimizarea falselor
pozitive.
Paisitkriangkrai s ,i alt ,ii sugereaz a c a, ^ n loc s a utilizeze caracteristicile asem an atoare
cu Haar, as ,a cum sunt folosite ^ n cele mai multe detect ,ii de fat ,a pe baz a de cascad a,
aces ,tia pot utiliza caracteristici mai simple s ,i mai pot obt ,ine informat ,ii discriminatorii
^ ntr-un mod mai e cient. Ele creeaz a un set de caracteristici utiliz^ and o regresie mi-
nim a p atrat a prin simpli carea unei combinat ,ii^ ntre Histograms of Gradients Oriented
(HOG) s ,i modelul binar local (LBP) propus de Wang s ,i alt ,ii. Acest nou descriptor
de blocuri p astreaz a propriet at ,ile descriptorilor HOG s ,i LBP, cum ar robustet ,ea la
schimb arile de iluminare s ,i zgomotul imaginii, pe l^ ang a simplitatea computat ,ional a.
Rezultatele lor sunt comparabile cu cele obt ,inute prin Haar caracteristici cu avantajul
c a noile caracteristici sunt mai simple.
26

Capitolul 3
Aplicat ,ia
De nit ,ia "Face Detection" se refer a la un subset de tehnologie informatic a capabil a s a
identi ce chipurile oamenilor ^ n cadrul imaginilor digitale. Aplicat ,iile de detectare a
fet ,ei folosesc algoritmi axat ,i pe detectarea chipurilor umane ^ n imagini mai mari care
pot cont ,ine peisaje, obiecte s ,i alte p art ,i ale oamenilor.
Capacitatea de a recunoas ,te chipurile este foarte important a pentru multe aspecte
ale viet ,ii. Nu numai c a ne ajut a s a recunoas ,tem pe cei apropiat ,i de noi, dar s ,i ne
permite s a identi c am indivizi pe care nu s ,tim, astfel ^ nc^ at s a putem mai cons ,tient ,i
de posibilele pericole.
27

3.1 Problema
Descrierea problemei
O a rmat ,ie general a privind problema recunoas ,terii fet ,ei poate formulat a dup a cum
urmeaz a:
Av^ and imagini statice sau video ale unei scene, s a identi ce sau s a veri ce una sau
mai multe persoane ^ n scena folosind o baz a de date stocat a de fet ,e Informat ,iile de
garant ,ie disponibile, cum ar :
Ras a
V^ arst a
Sex
Expresia facial a
Vorbirea
Pot folosite pentru a reduce limita c autarea, m arind recunoas ,terea.
28

3.2 Solut ,ia
Solut ,ia problemei implic a segmentarea fet ,elor (detectarea fet ,ei) din scene aglomerate,
prezint a extragerea din recunoas ,terea sau verifcarea regiunii fet ,ei.^In problemele de
identi care, intrarea ^ n sistem este o fat , a necunoscut a s ,i sistemul raporteaz a identi-
tatea decis a dintr-o baz a de date cu indivizi cunoscut ,i, ^ n timp ce ^ n problemele de
veri care sistemul trebuie s a confrunte sau s a resping a identitatea revendicat a a chi-
pului de intrare.
Pentru rezolvarea problemei am folosit limbajul de programare Python , cu libraria
OpenCV  si clasi catorul Haar Cascade .
Haar Cascade este un machine learning object detection algorithm utilizat pentru
a identi ca obiectele dintr-o imagine sau video s ,i ^ n baza conceptului de caracteristici
propus de Paul Viola s ,i Michael Jones.
Cum functioneaza acest clasi cator?
Exist a c^ ateva tr as aturi comune pe care le g asim pe toate chipurile umane:
O regiune a ochilor ^ n comparat ,ie cu obrajii de sus
Regiunea nasului comparat a cu ochii
O anumit a locat ,ie speci c a a ochilor, gurii, nasului
Aceste caracteristici sunt numite caracteristici Haar.
Procesul de extragere a caracteristicilor va ar ata astfel:
^In acest exemplu, prima caracteristic a m asoar a diferent ,a de intensitate dintre re-
giunea ochilor s ,i o regiune de-a lungul partii superioare. Valoarea caracteristic a este
pur s ,i simplu calculat a prin ^ nsumarea pixelilor ^ n zona neagr a s ,i sc aderea pixelilor ^ n
zona alb a.
29

Exist a mai multe tipuri de dreptunghiuri care pot aplicate pentru extragerea
funct ,iilor Haar. Potrivit documentului original:
Caracteristica cu dou a dreptunghiuri este diferent ,a dintre suma pixelilor din
dou a regiuni dreptunghiulare, utilizat a ^ n principal pentru detectarea muchiilor
(a, b)
Caracteristica cu trei dreptunghiuri calculeaz a suma din dou a dreptunghiuri ex-
terioare sc azute din suma ^ ntr-un dreptunghi central, utilizat ^ n principal pentru
detectarea liniilor (c, d)
Caracteristica cu patru dreptunghiuri calculeaz a diferent ,a dintre perechile dia-
gonale de dreptunghi (e)
30

3.3 Compararea altor algoritmi
Pentru a face o aplicat ,ie c^ at mai bun a, am mai luat ^ nc a 4 algoritmi s ,i i-am comparat:
Haar Cascade (OpenCV)
LPB Cascade (OpenCV)
HoG Face Detector (Dlib)
CNN based Face Detection (Dlib)
Am ajuns la concluzia c a ecare clasi cator de detectare a fet ,ei are avantaje s ,i deza-
vantaje, dar diferent ,ele majore sunt ^ n precizie s ,i vitez a. Deci, ^ ntr-un caz de utilizare
^ n care sunt necesare detect ari mai precise, clasi catorul Haar este mai potrivit ca ^ n
sistemele de securitate, ^ n timp ce clasi catorul LBP este mai rapid dec^ at clasi catorul
Haar s ,i datorit a vitezei sale rapide, este mai preferabil ^ n aplicat ,ii ^ n care viteza este
important a, aplicat ,ii sau sisteme ^ ncorporate.
31

Capitolul 4
Data Analysing and Information
Gathering
4.1 Database
Pentru recunoasterea facial a am construit un trainner, conectat a cu o baz a de date in
SQL.
32

Pentru a introduce o persoan a ^ n baza de date este necesar s a se treac a printr-un
trainer. Mai ^ nt^ ai este nevoie de introducerea datelor cerute, cum ar :
ID
Nume
Prenume
V^ arst a
Sex
Localitatea curenta
T,ara
Postal code
Adresa de E-mail
Numarul de telefon
Iar apoi se face capturarea fet ,ei.
Acest pas trebuie f acut doar odat a, dup a aceea, persoan a respectiv a va recunos-
cut a de ecare dat a.
33

4.2 Recunoas ,terea
Dac a apare persoan a necunoscut a, pe ecranul camerei va ap area un WARNING iar
persoana va selectat a, ^ n dreptunghiul c areia va scrie UNKNOWN.
La astfel de cazuri, automat se va face poz a ^ n care este persoan a respectiv a.
Aceast a poz a va salvat a ^ n folderul aplicat ,iei. Aceste poze vor avea numele cu data
si ora la care aceast a persoan a este vazut a.
34

Dac a persoan a respectiv a este introdus a ^ n baza de date, aceast a va selectat a
s,i ^ n zurul ei vor scrise toate informat ,iile (pe care le-am introdus ^ n baza de date)
despre ea.
Aceasta va ar ata ^ n felul urm ator
Pe l^ ang a aceast a, aplicat ,ia are s ,i opt ,iunea da a captura frame-ul curent cu per-
soan a respectiv a s ,i de a trimite e-mail proprietarului aplicat ,iei, care va cont ,ine numele,
prenumele persoanei selectate, cu dat a s ,i ora la care aceast a s a ^ nt^ amplat, ap as^ and pe
butonul cu litera S.
Aceast a opt ,iune am facuto cu ajutorul package-ului smtplib , care permite trimi-
terea unu e-mail prin limbajul de programare python.
if cv2.waitKey(1) ==ord('s'):
path = '/home/Styllos/Desktop/DAIG17/Frame'
count = 0
imageName = str(time.strftime("%H:%M %Y-%m-%d")) + '.jpg'
cv2.imwrite(os.path.join(path, imageName), im)
print(BCyan+"Photo saved in DAIG17/Frame!")
content = 'Persoana' + pro le[1] + pro le[2] + 'este vazuta la ora si data' +
str(time.strftime("%H:%M %Y-%m-%d"))
mail = smtplib.SMTP('smtp.gmail.com', 587)
mail.starttls()
mail.login(ContactMail,'qwertyu1')
mail.sendmail(ContactMail, 'riseandfall017@gmail.com',content)
mail.close()
print(BCyan+"E-mail was Successfully send!"+BPurple+")
playsound("Sounds/PhotoEmail.mp3")
35

4.3 Autenti carea ^ n aplicat ,ie
Deoarece dup a ce termin masterul doresc s a m a angajez la polit ,ie, aceast a este s ,i
cauza din care am f acut aplicat ,ia ^ n as ,a fel. ^Ins a, pentru a folosi aplicat ,ia, va
nevoie de o autenti care. La deschiderea aplicat ,iei va apare o avertizare, ^ ncare scrie
c a acest program se foloses ,te doar ^ n scopuri profesionale. Dac a utilizatorul introduce
username-ul s ,i parol a gres ,it, va apare IP-ul acestuia, cu locat ,ia exact a s ,i cu poz a
acestuia.
Aceast a poz a va la fel salvat a ^ ntr-un folder, iar poz a va avea numele de
UNAUTORIZED.
36

Partea de cod pentru aceasta funct ,ie este
print(BPurple+"Login failed!")
playsound("Sounds/wrong.mp3")
print("Sign-In Attempt from Unknown Device", ip)
print("Latitude, Longitude=", g.latlng)
print("Geolocation Information:", g.state, g.country, g.city)
vidcap = cv2.VideoCapture(0)
detector = cv2.CascadeClassi er('haarcascade frontalface default.xml')
font = cv2.FONT HERSHEY DUPLEX
sampleCntr = 0
while (True):
ret, img = vidcap.read()
gray = cv2.cvtColor(img, cv2.COLOR BGR2GRAY)
faces = detector.detectMultiScale(gray, 1.3, 5)
for (x, y, w, h) in faces:
cv2.rectangle(img, (x, y), (x + w, y + h), (255, 0, 0), 2, cv2.LINE AA)
sampleCntr = sampleCntr + 1
cv2.imwrite("NoAccess/UNAUTORIZED.jpg", gray[y:y + h, x:x + w])
if cv2.waitKey(100) & 0xFF == ord('q'):
break
elif sampleCntr > 0:
break
Aceast a funct ,ie poate avea posibilitatea s ,i de a trimite poz a cu aceast a persoan a,
prin e-mail, proprietarului.
37

Pentru un efect mai bun s ,i mai frumos al aplicat ,iei, am ad augat la ecare funct ,ie
c^ ate un sunet sau efect audio.
Aceast a se face printr-o simpl a funct ,ie numit a playsound
38

4.4 Concluzie
Tehnologia de recunoas ,tere a fet ,ei a parcurs un drum lung ^ n ultimii dou azeci de ani.
Ast azi, mas ,inile sunt capabile s a veri ce automat informat ,iile de identitate pentru
tranzact ,ii sigure, pentru activit at ,i de supraveghere s ,i securitate s ,i pentru controlul
accesului la cl adiri etc. Aceste aplicat ,ii lucreaz a de obicei ^ n medii controlate, iar
algoritmii de recunoas ,tere pot pro ta de constr^ angerile de mediu pentru a obt ,ine o
precizie ridicat a a recunoas ,terii . Cu toate acestea, sistemele de recunoas ,tere a fet ,ei
de generat ,ie urm atoare vor avea o aplicare pe scar a larg a ^ n medii inteligente – unde
computerele s ,i mas ,inile sunt mai degrab a asistat ,i de asistent ,i.
Pentru a atinge acest obiectiv, calculatoarele trebuie s a poat a identi ca ^ n mod
abil persoanele din apropiere ^ ntr-o manier a care se potrives ,te ^ n mod natural cu
modelul interact ,iunilor umane normale. Ele nu trebuie s a necesite interact ,iuni speciale
s,i trebuie s a se conformeze intuit ,iilor umane cu privire la momentul recunoas ,terii.
Aceasta implic a faptul c a viitoarele medii inteligente ar trebui s a utilizeze aceleas ,i
modalit at ,i ca s ,i oamenii s ,i au aproximativ aceleas ,i limite. Aceste obiective apar ^ n
prezent la ^ ndem^ an a – totus ,i, trebuie s a se realizeze cercet ari substant ,iale ^ n ceea ce
prives ,te faptul c a tehnologia de recunoas ,tere a persoanelor funct ,ioneaz a ^ n mod abil,
^ n condit ,ii foarte diferite, utiliz^ and informat ,ii din modalit at ,i simple sau multiple.
39

Bibliogra e
[1] Wikipedia, URL: https://en.wikipedia.org/wiki/Face_detection
[2] URL: https://towardsdatascience.com/face-detection-for-beginners-e58e8f21aad9
[3] Real Python, URL: https://realpython.com/
face-recognition-with-python/
[4] URL: https://sightcorp.com/knowledge-base/face-detection/
[5] URL: https://www.researchgate.net/publication/228687993_Review_of_
existing_algorithms_for_face_detection_and_recognition
[6] URL: https://www.researchgate.net/publication/275355188_Face_
Detection_Using_Modified_Viola_Jones_Algorithm
[7] URL: https://www.ingenia.org.uk/Ingenia/Articles/
17811c85-d91a-4746-a7e9-5d32ee50cb16
[8] URL: https://www.datacamp.com/community/tutorials/
face-detection-python-opencv
[9] K. C. Yow si R. Cipolla, Image and Vision Computing, Feature-based human face
detection, 1997.
[10] G. Yang si T. S. Huang, Human face detection in complex background, Pattern
Recognition, 1994
40

Similar Posts