Vous êtes sur la page 1sur 93

Catholique de Louvain Universite

Ecole Polytechnique de Louvain moire de fin de tudes Me

Reconnaissance et suivi de visages et impl ementation en robotique temps-r eel

R ealis e par Mathieu Van Wambeke en vue de lobtention du dipl ome de nieur Civil en Ge nie Biome dical Master Inge

Promoteur: Prof. Beno t Macq Assistant: Christian Van Brussel

Ann ee acad emique 2009-2010

Remerciements

Je remercie particuli` erement ma famille pour le soutien quelle ma apport e et la motivation quelle a su me donner lorsque jen avais le plus besoin. Je tiens a ` remercier mon promoteur, le professeur Beno t Macq, sans qui je naurais pas pu r ealiser ce m emoire ni avoir acc` es ` a Nao, le petit robot humano de. Je remercie sinc` erement mon assistant-chercheur, Christian Van Brussel, pour ses pr ecieux conseils lors de la r edaction et sa disponibilit e sans failles. Je remercie egalement mes compagnons m emorants du local a143.10, Arnab Bhattacharya, Mireia Monta nola et les autres, gr ace auxquels lambiance de travail fut excellente. Je remercie aussi S ebastien Brousmiche et Abdellatif Zaidi pour leurs conseils avis es.

R esum e
Dans ce m emoire, il est question dimpl ementer sur un robot humano de les m ecanismes de base dune relation entre individus. Lobjectif est de reconna tre les personnes et de sorienter vers une dentre elles pour commencer une interaction. Le robot humano de Nao de Aldebaran Robotics sert de support au logiciel et la reconnaissance se fait exclusivement sur base de donn ees biom etriques visuelles captur ees dans un environnement r eel, donc soumis a ` des variations dillumination. Nao eectuera une localisation et une poursuite des visages et sera capable de se souvenir des gens quil croise apr` es ne les avoir vu quune seule fois. Ce probl` eme de reconnaissance ` a partir dun seul clich e est trait e dans la litt erature sous le nom de one sample problem ou reconnaissance avec un seul echantillon dapprentissage par personne. Lapplication de reconnaissance de visages convertit les images en mod` eles binaires locaux (local binary patterns), les divise en plusieurs sous-r egions et d etermine lidentit e dun visage en comparant leurs histogrammes de sous-r egions. Le nombre de mani` eres de diviser limage en sous-r egions pouvant se chevaucher est colossal et emp eche de s electionner la meilleure en les essayant toutes. Ce m emoire propose une m ehode pour garantir le choix dune des meilleures combinaisons de sous-r egions. De plus, il est propos e une technique de g en eration de cartes des zones les plus utiles a ` la discrimination qui permet de mettre en evidence limportance des zones fronti` eres des el ements cl es du visage tels que le nez, la bouche ou les yeux dans le cas de la reconnaissance de visages par comparaison dhistogrammes de mod` eles binaires locaux.

II

Table des mati` eres


Remerciements R esum e Table des mati` eres Introduction Structure du m emoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . I II III 1 3

Etat de lart

4
5 6 6 8 9 10 12 12 12 12 13 15 16 16 17 17 19 19

1 D etection de visages 1.1 Algorithme de Viola & Jones . . . . . . . . . . . . . . . . . . . . . . . . . 1.1.1 1.1.2 1.1.3 1.2 1.3 Limage int egrale . . . . . . . . . . . . . . . . . . . . . . . . . . . Algorithme dapprentissage bas e sur Adaboost . . . . . . . . . . . Cascade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Param etrisation & Entra nement . . . . . . . . . . . . . . . . . . . . . . Travaux existants suite ` a lAlgorithme de Viola & Jones 1.3.1 1.3.2 1.3.3 1.3.4 Nouvelles caract eristiques . . . . . . . . . . . . . . . . . . . . . . Am eliorations du Training set . . . . . . . . . . . . . . . . . . . . Derni` eres avanc ees : Wu et al. . . . . . . . . . . . . . . . . . . . . Derni` eres avanc ees : Xiaohua et al. . . . . . . . . . . . . . . . . .

2 Reconnaissance de visages 2.1 2.2 Probl` eme ` a echantillons multiples . . . . . . . . . . . . . . . . . . . . . . Probl` eme avec un seul echantillon dentra nement par personne . . . . . . 2.2.1 2.2.2 2.2.3 2.3 M ethodes holistiques . . . . . . . . . . . . . . . . . . . . . . . . . M ethodes locales . . . . . . . . . . . . . . . . . . . . . . . . . . . M ethodes hybrides . . . . . . . . . . . . . . . . . . . . . . . . . .

Les Local Binary Patterns appliqu es a ` la reconnaissance faciale . . . . . III

2.3.1 2.4

Derni` eres avanc ees : Travail de Tan et Triggs

. . . . . . . . . . .

22 25

Le traitement de lillumination . . . . . . . . . . . . . . . . . . . . . . . .

II

Application

26
27 27 27 28 29 30 30 30 32 33 33 34 35 36 41 41 42 43 44 45 46 47 47 48 51 54 54 55 56

3 Conception de lapplication 3.1 Mise en situation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1.1 3.1.2 3.1.3 3.1.4 3.2 3.2.1 3.2.2 3.2.3 3.3 3.3.1 3.3.2 3.3.3 3.4 3.4.1 3.4.2 3.5 D enition de lobjectif et enum eration de ses cons equences . . . . Importance du temps r eel et des performances . . . . . . . . . . . Mat eriel disponible et limitations . . . . . . . . . . . . . . . . . . Le challenge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Di erence entre temps de r eaction et le temps de rafraichissement Points importants pour choisir la distribution id eale des t aches . . Choix des lieux dex ecution : larchitecture prototype . . . . . . . D etection des visages . . . . . . . . . . . . . . . . . . . . . . . . . La poursuite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Reconnaissance des visages . . . . . . . . . . . . . . . . . . . . . . Nouvelles informations spatiales . . . . . . . . . . . . . . . . . . . Collaboration des syst` eme de reconnaissance et de poursuite . . .

G erer le probl` eme du temps r eel . . . . . . . . . . . . . . . . . . . . . . .

Architecture prototype et cycle de fonctionnement standard . . . . . . .

Pistes pour am eliorer les performances . . . . . . . . . . . . . . . . . . .

Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4 Entra nement sous MatLab du stage de reconnaissance 4.1 4.2 4.3 Ensembles dentra nement, de validation et bases de visages . . . . . . . Taille de fen etre utilis ee . . . . . . . . . . . . . . . . . . . . . . . . . . . S election de la combinaison de sous-r egions pour la reconnaissance faciale 4.3.1 4.3.2 4.4 Dicult e et objectif . . . . . . . . . . . . . . . . . . . . . . . . . . Strat egie et r esultats . . . . . . . . . . . . . . . . . . . . . . . . .

Conclusion et suite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5 Obtenir une carte des zones utiles ` a la discrimination 5.1 5.2 5.3 Contexte et motivations . . . . . . . . . . . . . . . . . . . . . . . . . . . Division en parties contigues . . . . . . . . . . . . . . . . . . . . . . . . . Introduction aux ensembles dapprentissage et de validation articiellement g en er es . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

IV

5.4

Exploitation de parties non-contigues . . . . . . . . . . . . . . . . . . . . 5.4.1 5.4.2 5.4.3 5.4.4 M ethode (a) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . M ethode (b) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . M ethode (c) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . M ethode (d) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

57 57 58 59 59 63 65 67 67 68 68 68 70 72 78 84 85 85 86

5.5 5.6

Strat egie propos ee et r esultats . . . . . . . . . . . . . . . . . . . . . . . . Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6 Impl ementation C++ et test des performances 6.1 6.2 Impl ementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Test de la d etection des visages . . . . . . . . . . . . . . . . . . . . . . . 6.2.1 6.2.2 6.3 Orientations d etect ees . . . . . . . . . . . . . . . . . . . . . . . . Cadrage des visages . . . . . . . . . . . . . . . . . . . . . . . . . .

Test de la reconnaissance des visages . . . . . . . . . . . . . . . . . . . .

Conclusion Bibliographie Appendices A Impl ementation C++ : la librairie ImProc A.1 Les librairies utilis ees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2 La librairie ImProc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Introduction
La reconnaissance faciale est une aptitude qui relie lapparence dune personne a ` son identit e. Lors dune rencontre, cette comp etence permet de se rappeler des echanges pr ec edents et ainsi de construire une relation ` a long terme o` u les individus nissent par se conna tre et savoir anticiper leurs comportements et besoins respectifs. Dans une situation o` u un d elit est eectu e` a visage d ecouvert, reconna tre le coupable permet de lui faire assumer la responsabilit e de ses actes. Lint er et de la communaut e scientique a ` la reproduction de cette aptitude pour des applications judiciaires, de contr ole et dassistance est donc manifeste; la v erication didentit e pour le d everrouillage dordinateur ou la traque de suspects a ` travers les enregistrements vid eos de stations de m etro repr esentent un echantillon des nombreuses applications envisageables ` a partir de ce type de technologie. Lobjectif de ce m emoire est de concevoir et dimpl ementer sur un petit robot humano de commercialis e par Aldebaran Robotics une application de reconnaissance faciale capable de reconna tre les individus apr` es une seule prise de vue. Nao, le petit robot humano de, montrera son intention dentrer en interaction avec une des personnes reconnues en la poursuivant du regard. Le logiciel d evelopp e aura deux t aches principales a ` eectuer. Tout dabord la localisation des visages dans le champ visuel de Nao et leur poursuite ` a chaque rafra chissement de limage. Ensuite la reconnaissance des visages d etect es. Dans un contexte plus large, ce logiciel incarne lassise dapplications plus sophistiqu ees dinteractions homme-machine : une fois les personnes reconnues et le regard orient e vers un individu, la voie est pr ete pour un echange. Celui-ci pourra, par exemple, commencer par lanalyse des emotions du visage de la personne ou par le rassemblement des donn ees en m emoire concernant lindividu. De par cette position a ` la source dune grande quantit e dapplications potentielles, lex ecution du logiciel devra ob eir ` a des exigences de uidit e et de rapidit e et fournir un r esulat robuste.

Figure 1: Robot humano de Nao utilis e comme support de lapplication de ce m emoire. Il mesure 58 centim` etres, est capable de se mouvoir et poss` ede une cam era sur le front qui sera utilis ee par le logiciel pour capturer limage de lenvironnement qui lui fait face. Ses ressources au niveau du processeur et de la m emoire sont faibles et am` eneront le logiciel nal ` a etre ex ecut e` a c ot e, sur un ordinateur distant plus puissant.

La seconde t ache charg ee de la reconnaissance des visages convertit dabord limage en mod` eles binaires locaux et divise limage en sous-r egions pouvant se chevaucher. Un comptage des mod` eles binaires locaux est ensuite r ealis e pour chaque sous-r egion et les histogrammes ainsi obtenus servent de base ` a la comparaison dindividus. La mani` ere de d ecomposer limage a une inuence capitale sur les performances nales du classieur: comme la transformation en histogrammes eace toutes les informations quant ` a lemplacement des mod` eles binaires locaux, la division est lunique garante que des donn ees concernant lorganisation spatiale sont disponibles durant le processus de comparaison. Trouver la meilleure combinaison de sous-r egions nest pas facile vu leur nombre. Ainsi, trouver la meilleure association de trois sous-r egions contenues dans un visage de 60 60 pixels, signie s electionner 1 combinaison parmi 6.2597 1018 candidats. Ce m emoire accorde une importance sp eciale a ` ce probl` eme et propose une solution pour g erer ce grand nombre de candidats. De plus, il a et e d ecid e de d evelopper une m ethode de g en eration dune carte qui, par sa consultation, permettrait de rep erer tout de suite les zones du visage a ` consid erer 2

prioritairement pour la reconnaissance. Cette carte orirait par la m eme occasion une vue densemble du visage en termes de ces zones les plus ` a m eme de di erencier les individus. Le d eveloppement dune telle m ethode sest r ev el e plus ardu que pr evu et les principaux probl` emes ` a r esoudre ont et e les cons equences n egatives des eets de bord et la tendance au gommage des contours de la carte lors de lutilisation de m ethodes simples.

Structure du m emoire
Dans les deux premiers chapitres jintroduirai les probl` emes de localisation et de reconnaissance faciale et pr esenterai les principales m ethodes qui sont utilis ees de nos jours pour leurs r esolutions. Dans le troisi` eme chapitre, je parlerai de la conception du logiciel de reconnaissance faciale utilisant Nao comme support en pr ecisant les contraintes mat erielles que lutilisation dun tel robot provoque sur larchitecture dune application de ce type. Dans le quatri` eme chapitre, je param etrerai le logiciel pens e au chapitre 3 en utilisant le logiciel MatLab. Dans le cinqui` eme chapitre, jexpliquerai comment jai d evelopp e un syst` eme qui permet de g en erer une carte des r egions les plus utiles a ` la discriminination dans le cas de la reconnaissance faciale a ` partir dun seul clich e. Dans le sixi` eme chapitre, je donnerai le r esultat des tests de performance.

Partie I Etat de lart

Chapitre 1 D etection de visages


La d etection des visage pose le probl` eme de la localisation des visages pr esents dans une image dentr ee. Id ealement, la d etection fourni aussi leurs dimensions pour un eventuel traitement ult erieur. Lint er et de la localisation faciale va au-del` a de lapplication de ce pr esent m emoire. Son utilit e se manifeste dans des domaines vari es allant de la vid eosurveillance au jeu interactif. Les premi` eres dicult es rencontr ees par les m ethodes sattelant ` a d etecter les visages sont les variations de pose (vue de prol, de face), dexpression, de rotation du visage1 , d age et dillumination. Ce dernier type de dicult e pouvant etre surmont e par un pr etraitement de normalisation et de compensation de lillumination pr esent e au chapitre 2.4. Pour le reste la dicult e est dautant plus grande que la plupart des applications ayant recours a ` cette technologie requi` erent une ex ecution en temps r eel, limitant les marges de manoeuvre de lalgorithme. Une classication des m ethodes de localisation faciale est propos ee par Yang et al. [49]: Knowledge-based methods. Ces m ethodes se basent sur la connaissance des di erents el ements qui constituent un visage et des relations qui existent entre eux. Ainsi, les positions relatives de di erents el ements cl es tels que la bouche, le nez et les yeux sont mesur es pour servir ensuite a ` la classication visage nonvisage chez Chiang et al. [13]. Le probl` eme dans ce type de m ethode est quil est dicile de bien d enir de mani` ere unique un visage. Si la d enition est trop d etaill ee, certains visages seront rat es tandis que si la description est trop g en erale le taux de faux positifs montera en ` eche. Feature invariant approaches. Ces approches utilisent les el ements invariants
1

selon un axe perpandiculaire ` a lobjectif

aux variations dillumination, dorientation ou dexpression tels que la texture ou la signature de couleur de la peau pour la d etection. Template matching methods. Des mod` eles caract eristiques dun visage entier ou de sous-partie de visage (bouche, oeil, nez) sont cr e es. La localisation se fait ensuite sur base de la corr elation de ces mod` eles avec les candidats. Appearance-based methods. Ces m ethodes utilisent le m eme principe que pr esent e au point pr ec edent mais se basent sur des mod` eles appris ` a partir de set dentra nement. Ces m ethodes pr esentent lavantage de sexecuter tr` es rapidement mais demandent un long temps dentra nement. Les m ethodes appartenant ` a cette cat egorie ont montr e de bons r esultats par rapport aux 3 autres types de m ethodes [54], on peut citer parmi celles-ci la m ethode bas ee sur les r eseaux de neurones de Rowley et al. [29], la m ethode de Schneiderman et Kanade [30] bas ee sur un classieur de Bayes na f ainsi que le fameux algorithme de Viola et Jones [38] fonctionnant en temps r eel qui sera d etaill e plus loin. Notons que la d elimitation entre les trois premi` eres cat egories est parfois oue et que dans les articles plus r ecents, ces cat egories sont fusionn ees entre elles [54, 35, 20].

1.1

Algorithme de Viola & Jones

Une avanc ee majeure dans le domaine a et e r ealis ee par Viola et Jones en 2001 [38]. Ces derniers ont propos e une m ethode bas ee sur lapparence (Appearance-based methods) robuste et tournant a ` 15 fps pour des images de 384 x 288 pixels sur un pc Intel Pentium III 700Mhz. Ce fut la premi` ere m ethode en temps r eel pr esent ee. La renomm ee de cette approche
2

est faite sur trois concepts :

1.1.1

Limage int egrale

Lalgorithme se base sur les caract eristiques de Haar (Haar features) pour localiser les visages pr esents sur une image dentr ee. Dans le but dextraire rapidement ces caract eristiques, limage est repr esent ee sous forme int egrale. En eet, sous cette forme, lextraction dune caract erisque a ` nimporte quel endroit et a ` nimporte quelle echelle est eectu ee en un temps constant tandis que le temps de conversion vers la repr esentation int egrale ne remet pas en cause ce gain de temps oert par lutilisation de la repr esentation en image int egrale. La d enition des caract eristiques de Haar et la mani` ere dont la
2

Larticle Robust Real-Time Face Detection [39] est cit e plus de 1600 fois selon Google Scholar

repr esentation int egrale acc el` ere consid erablement leur extraction sont pr esent es ci-apr` es pour une image en niveaux de gris. Dans toute image, une zone rectangulaire peut etre d elimit ee et la somme des valeurs de ses pixels calcul ee. Une caract eristique de Haar est une simple combinaison lin eaire de sommes ainsi obtenues. Plusieurs caract eristiques de Haar peuvent etre d enies selon le nombre, les echelles, les positions et les dimensions des zones rectangulaires consid er ees. 4 exemples sont pr esent es a ` la gure 1.1.

Figure 1.1: Exemple de 4 caract eristiques de Haar. La somme des valeurs des pixels appartenant aux zones encadr ees claires est soustraite ` a la somme des valeurs des pixels appartenant aux zones encadr ees sombres pour obtenir la caract eristique de Haar. Chacune des quatre caract eristiques de Haar est repr esent ee avec son cadre de d etection respectif.

Pr esent e comme tel, le calcul dune caract eristique de Haar demande ` a chaque fois lacc` es aux valeurs de tous les pixels contenus dans les zones rectangulaires consid er ees. Cela devient vite contraignant temporellement d` es que les caract eristiques de Haar sont d enies par des zones rectangulaires de grandes dimensions. Limage int egrale permet de surmonter ce probl` eme en rendant constant le temps de calcul dune caract eristique de Haar a ` nimporte quelle echelle. Limage int egrale est r epr esent ee math ematiquement par : ii(x, y ) =
x x,y y

i(x , y )

(1.1) (1.2)

0 < x width, 0 < y height

o` u i(x, y ) est limage dorigine et i(x , y ) limage sous sa nouvelle repr esentation. Ainsi chaque pixel a pour valeur la somme des valeurs des pixels compris dans le rectangle d eni par le coin sup erieur gauche de limage et lui-m eme.

Le calcul de la somme des valeurs des pixels appartenant ` a une zone rectangulaire seectue donc en acc edant seulement ` a quatre pixel de limage int egrale : Soit un rectangle ABCD dont les sommets sont nomm es dans le sens des aiguilles dune montre en commen cant par le sommet sup erieur gauche et soit x la valeur sous la repr esentation int egrale dun sommet X du rectangle (X {A, B, C, D}). La somme des valeurs des pixels appartement ` a ABCD est, quelle que soit sa taille, donn ee par c b d + a. Une caract eristique de Haar etant une combinaison lin eaire de tels rectangles ABCD, son calcul se fait alors en un temps ind ependant sa taille.

1.1.2

Algorithme dapprentissage bas e sur Adaboost

Pour localiser les visages sur limage dentr ee, cette derni` ere est scann ee par une fen etre de dimension d etermin ee. La fen etre parcourt limage et son contenu est analys e pour savoir sil sagit dun visage ou non. Comme dit plus haut, les caract eristiques de Haar sont extraites pour eectuer la classication et de ce fait la repr esentation int egrale de limage acc el` ere lanalyse. Mais, pour une fen etre de 24x24 pixels il y a 45 396 caract eristiques de Haar, les traiter toutes prendrait beaucoup trop de temps pour une application en temps r eel. Pour surmonter ce probl` eme, une variante de la m ethode de boosting Adaboost est utilis ee. Ci-dessous Adaboost est bri` evement pr esent e suivi de sa variante qui constitue le deuxi` eme apport du travail de Viola & Jones. Adaboost est une m ethode dapprentissage permettant de booster les performances dun classieur quelconque nomm e classieur faible. Lid ee est de faire passer les candidats a ` classier a ` travers plusieurs classieurs faibles, chacun etant entra n e en portant plus dattention sur les candidats mal classi es par le classieur pr ec edent. Pour arriver a ` ce r esultat des poids sont associ es aux echantillons du set dentra nement3 ((xi , yi ) i = 1, ..., m), tout dabord de mani` ere equilibr ee :
0 wi =

1 m

(1.3)

pour i = 1, ..., m. Le 0 en exposant indique quil sagit des poids initiaux. Ensuite le premier classieur faible est entra n e comme suit : h0 = argminhj H avec lerreur
3

(1.4)

m i=1

0 wi (yi hj (xi )) et H lensemble des classieurs faibles. Puis

1 une nouvelle g en eration de poids wi sont cr e es tels quils accordent plus dimportance

Pour un echantillon (x, y ) appartenant au set, x est la valeur de l echantillon et y la classe ` a laquelle

il appartient

aux echantillons mal classi es par h0 . Ensuite un nouveau classieur h1 est entra n e,
2 sont g en er es et ainsi de suite. Enn, apr` es T it erations, le puis de nouveaux poids wi

classieur fort H (x) est obtenu :


T

H (x) = sign
t=1

t ht (x)

(1.5)

avec = 1 ln 2 faibles.

1 t t

et un seuil a ` d eterminer. La valeur a ` attribuer a ` ce dernier sera dis-

cut ee plus loin. Chaque classieur fort est donc constitu e dun nombre T de classieurs

Adaboost sert donc a ` booster une classieur d ej` a existant et a ` priori chaque classifeur faible poss` ede le m eme espace dentr ee. Dans la variante dAdaboost de Viola & Jones, les classieurs faibles hj H ont pour entr ee une caract eristique de Haar di erente. Adaboost sapparente alors a ` une s election de caract eristiques (feature selection). Cette variante dAdaboost est utilis ee lors de lapprentissage pour s electionner les caract eristiques de Haar les plus ` a m eme de d etecter un visage et permet ainsi de surmonter le probl` eme du nombre elev e de caract eristiques de Haar existant pour une fen etre de recherche.

1.1.3

Cascade

Lid ee de base derri` ere le concept de Cascade est que parmi lensemble des candidats, cest ` a dire lensemble des etats de la fen etre de recherche, une partie peut etre elimin ee sur base de l evaluation de seulement quelques caract eristiques de Haar. Une fois cette elimination eectu ee, les candidats restants sont analys es par des classieurs forts plus complexes (utilisant plus de caract eristiques de Haar) demandant un plus grand temps de traitement. En utilisant plusieurs etages de ce type, le processeur evite deectuer des analyses lourdes en temps de calcul sur des echantillons pour lesquels il est rapidement possible de se rendre compte quils sont n egatifs. Le processus de classication appara t alors comme une cascade de classieurs forts de plus en plus complexes o` u a ` chaque etage les echantillons classi es n egatifs sont sortis tandis que les echantillons classi es positifs sont envoy es aux classieurs suivants. Ceci est repr esent e` a la gure 1.2. Si le premier etage rejette un faux n egatif, cest un gros probl` eme car il ne sera jamais r ecup er e par la cascade. Autrement dit cest un visage qui ne sera pas d etect e. Par contre, si le premier etage transmet un faux positif, il pourra toujours etre elimin e aux etages suivants de la cascade. Ce petit raisonnement permet de mettre en evidence que les premiers noeuds constitutifs de la cascade peuvent se permettre davoir un taux de faux positifs elev es (de lordre de 40-50%) mais doivent absolument assurer un taux 9

Figure 1.2: Cascade de classieurs forts. A chaque etage, uniquement les candidats classi es positifs sont transmis ` a l etage suivant.

de d etection maximum. La param etrisation de lalgorithme en ce sens sera d etaill ee dans la prochaine section. Ce concept permet donc a ` lalgorithme de consacrer son temps a ` de longues analyses complexes uniquement lorsque cela en vaut la peine. Il sagit ` a nouveau dun m ecanisme qui acc el` ere la vitesse dex ecution de la m ethode propos ee par Viola & Jones.

1.2

Param etrisation & Entra nement

Le nombre d etages dans la cascade, leurs seuils de d etection et le nombre de caract eristiques T consid er e a ` chaque etage sont ` a ajuster pour que la localisation soit rapide et atteigne un taux de d etection elev e. Cet ajustement se fait pendant la phase de construction de la cascade qui sera d ecrite apr` es lintroduction des quelques el ements cl es ci-dessous. Premi` erement, pour une image dentr ee en situation r eelle, le nombre de candidats qui sav ereront positifs est relativement faible par rapport au nombre total de candidats. Le probl` eme est dit asym etrique. Il faut d` es lors pour assurer une d etection able que le taux de d etection des n egatifs soit bien plus elev e que le taux de d etection des positifs. On parle typiquement dun taux de d etection autour de 95%-99% et dun taux de faux positif extr ement faible4 de lordre de 107 . Lasym etrie constitue donc une dicult e` a la r esolution du challenge de localisation faciale. Notons que le probl` eme de localisation faciale est asym etrique pour 3 raisons cat egoris ees par Wu et al. dans [44]. Ensuite et enn, les el ements cl es taux globaux de d etection D et taux de faux
4 TN F P +T N )

Un taux de d etection des n egatifs elev e (=

equivaut ` a un faible taux de faux positifs

(=

FP F P +T N )

10

positifs F sont d enis comme suit :


K

D =
i=1 K

di fi
i=1

(1.6)

F =

(1.7)

o` u K est le nombre d etages de la cascade, di lobjectif local de d etection (voir plus loin) et fi lobjectif local de faux positifs (idem). La m ethode de construction de la cascade utilis ee par Viola & Jones re coit ses objectifs en terme de taux de d etection et taux de faux positifs globaux. Ceux-ci permettent de d eterminer les objectifs locaux (entendre par noeud) par les formules pr esent ees-ci dessus. Puis, la cascade est construite un etage apr` es lautre, le processus prenant n d` es lors que les objectifs globaux sont atteints. La construction dun etage est faite en utilisant Adaboost, ce dernier ajoute des caract eristiques au classieur fort jusqu` a ce que les taux locaux de d etections de positifs et n egatifs soient atteints. Imaginons une cascade de 15 etages pour laquelle nous souhaitons obtenir un taux de d etection de 99% et un taux de faux positif de 107 . Par les formules ci-dessus lobjectif local en taux de d etection doit donc etre de 99.93%. Ce dernier semble au premier abord dicile mais lop eration est facilit ee par le fait que le taux de faux positifs local n ecessaire est de 34.14% (>> 107 ). Ainsi la dicult e attribu ee au haut taux de faux positif global est surmont ee par lutilisation de la cascade qui divise lemb uche parmi les etages. Notons que le taux de d etection local est quant a ` lui sup erieur ` a son equivalent global. On observe quune cascade entra n ee comme telle r epond aux attentes de rapidit e formul ee par lexigence du temps r eel. Les premiers niveaux traitent quelques caract eristiques en rejettant plus de 50% des n egatifs tandis que les derniers niveaux plus complexes analysent jusqu` a plusieurs milliers de caract eristiques de Haar pour arriver au m eme r esultat. La complexit e et le temps de calcul sont donc bien distribu es de mani` ere a ` ce quuniquement les candidats les plus prometteurs soient soumis aux analyses les plus gourmantes en instructions. Une technique de boostrapping est utilis ee lors de lentra nement du d etecteur en cascade. Apr` es la construction de chaque etage, un nouveau set de non-visages est construit pour lentra nement du suivant. Celui-ci est constitu e des echantillons n egatifs qui nauront pas et e d etect es par la cascade en cours de construction. Le set d echantillon positif reste quant a ` lui toujours le m eme. 11

1.3

Travaux existants suite ` a lAlgorithme de Viola & Jones

1.3.1

Nouvelles caract eristiques

Lienhart et al. ont propos e en plus de la repr esenation int egrale une repr esentation int egrale inclin ee o` u chaque pixel a pour valeur la somme des valeurs des pixels compris dans la zone rectangulaire inclin ee de 45 dont le point extr eme droit est le pixel consid er e. Aux mod` eles initiaux de Viola & Jones sont donc ajout es leurs equivalents inclin es de 45 . Le set obtenu ainsi et utilis e par Lienhart et al. est pr esent e` a la gure 1.3. Lienhart et al. ont obtenu ainsi des am eliorations de lordre dun demi-pourcent derreur.

Figure 1.3: Set de caract eristiques de Haar obtenu par Lienhart et al. en utilisant les concepts dimage int egrale et dimage int egrale inclin ee.

1.3.2

Am eliorations du Training set

Les performances du classieur nal peuvent etre am elior ees en pr eparant le set dentra nement. Les travaux r ecents eectu es par Chen et al. [9] proposent une m ethode bas ee sur un algorithme g en etique pour etendre le set de visages. Lutilisation de leur approche est selon leurs dires la plus prometteuse dans le domaine de loptimisation du Training set. En reconnaissance faciale, le one sample problem o` u un seul echantillon est disponible par personne ` a reconna tre, des travaux sint eressent a ` la g en eration de nouveaux echantillons positifs ` a partir dun seul visage. Cette optimisation du training set sera trait ee dans le chapitre 2 consacr ea ` la reconnaissance faciale.

1.3.3

Derni` eres avanc ees : Wu et al.

La version d evelopp ee par Wu et al. en 2008 [44] est prise dans un article r ecent comme r ef erence en terme de vitesse et de performance [46]. Leurs travaux se consacrent ` a la fois a ` la vitesse de traitement, la vitesse dapprentissage et aux performances en

12

termes de taux de d etection. Lalgorithme de Viola & Jones eectue la s election de caract eristiques et lapprentissage en une seule etape lors de lintervention dAbaboost dans lalgorithme. Wu et al. proposent de traiter ses deux phases s epar ement et avancent que cela permet de mieux g erer les dicult es li ees a ` lasym etrie du probl` eme de localisation faciale. Ils enum` erent leurs contributions au nombre de trois. Premi` erement une analyse appronfondie du probl` eme qui r ev` ele trois causes dasym etrie du probl` eme et les dicult es quelles engendrent. Deuxi` emement une m ethode de s election de caract eristiques est propos ee, la FFS pour forward feature selection, cette derni` ere acc el erant 50 a ` 100 fois lapprentissage dAbaboost. Et troisi` emement un algorithme dapprentissage nomm e Linear Asymetric Classier (LAC) est pr esent e. Il est montr e que ce dernier am eliore les performances du classieur.

1.3.4

Derni` eres avanc ees : Xiaohua et al.

Comme vu plus haut, lors de lentra nement de la cascade, un nouveau set de non-visages est g en er e par bootstrapping a ` la n de la construction de chaque etage. Xiaohua et al. [46] ont remarqu e quau fur et a ` mesure que la cascade grandissait, les non-visages collect es sont de plus en plus similaires aux visages et que le taux derreur des noeuds les plus profonds sur un set de validation compos e uniquement d echantillons n egatifs tendait vers 0.5. Cela signie quil devient ardu de trouver des caract eristiques encore capables de distinguer les non-visages des visages. Ils observent aussi que le nombre de caract eristiques n ecessaires pour atteindre les objectifs locaux en terme de taux de d etection et de faux positifs augmente selon une pente de plus en plus raide pour les noeuds profonds. Ceci conrme la dicult e de trouver des bonnes caract eristiques. Notons que les echantillons positifs utilis es sont des carr es couvrant la zone yeux-nezbouche. Xiaohua et al proposent quau del` a dune certaine profondeur soient consid er ees les parties entourant la zone yeux-nez-bouche en se basant sur le fonctionnement du syst` eme visuel humain [34]. Ils avancent que les informations de ces zones peuvent etre b en equement utilis ees lorsque la zone centrale est epuis ee. Ainsi une hi erarchie est mise en place o` u 3 dimensions standards d echantillons positifs sont utilis ees successivement pour entra ner la cascade. Ceci est pr esent ea ` la gure 1.4. De plus, ils proposent une extension du set de caract eristiques de Haar compos e de wavelets de Gabor simpli ees. Ces wavelets sont des fonctions inspir ees du prol des champs r eceptifs de loeil des mammif` eres [14]. Elles sont simpli ees car elles sont calcul ees a ` partir des repr esentions int egrales et int egrales inclin ees de mani` ere a ` ne pas compromettre laspect temps r eel de lalgorithme de Viola et Jones. Ceci est illustr ea `

13

Figure 1.4: 3 types d echantillons positifs utilis es par Xiaohua et al. pour am eliorer les performances du classieur en cascade. Le format de gauche est dabord utilis e puis lorsque son potentiel en caract eristiques devient trop faible le format suivant est utilis e et ainsi de suite.

la gure 1.5.

Figure 1.5: En haut : quelques wavelets de Gabor. Une fr equence ` a plusieurs orientations est pr esent ee. En bas : echantillon des Wavelets de Gabor simpli ees utilis ees comme caract eristiques pour le classieur en cascade.

Les exp eriences men ees par l equipe montre des am eliorations en terme de vitesse et de taux de d etection par rapport ` a la version de Wu et al.

14

Chapitre 2 Reconnaissance de visages


Le domaine de la reconnaissance faciale se veut de proposer des m ethodes pour parvenir a ` identier des personnes a ` partir dinformations visuelles. Pour cela la reconnaissance faciale fait partie des m ethodes de biom etrie qui visent ` a lidentication des personnes a ` partir dinformations biologiques. Dautres m ethodes appartenant ` a cette cat egories sont par exemple la capture de limage de liris ou des empreintes digitale. La reconnaissance faciale est un domaine de recherche aux publications foisonnantes en raison de ses nombreuses applications. Parmi celles-ci les syst` emes de contr ole dacc` es, de surveillance, dinteraction homme machine dans des applications multim edia de divertissement ou a ` nalit es educatives, de v erication de carte de cr edit et bien dautres. Une premi` ere distinction au sein des approches existantes peut se faire entre les m ethodes a ` echantillons multiples et les m ethodes a ` echantillon unique. Dans la premi` ere cat egorie, le training set est compos e de plusieurs prises de vue par sujet et ces derni` eres peuvent inclure des variations diverses telles que lillumination, l age, lorientation du visage ou lexpression. La seconde cat egorie, quant a ` elle, sattarde sur des probl` emes de reconnaissance o` u il ny a quun seul echantillon disponible par personne pour construire le reconnaisseur de visage. Un br` eve description de l etat de la technique pour le probl` eme a ` echantillons multiples est faite ci-dessous suivi dun etat de lart de la r esolution du probl` eme de la reconnaissance faciale a ` partir dune seule image. Cette d emarche qui accorde plus dint er et sur le probl` eme a ` echantillon unique est utilis ee car lattention de ce m emoire est premi` erement port ee sur ce probl` eme aussi d enomm e le one sample problem. Apr` es cet etat de lart, je mattarderai a ` d ecrire et faire linventaire d etaill e des derni` eres avanc ees relatives a ` la m ethode des Local Binary Patterns qui sera utilis ee pour lapplication de ce m emoire.

15

2.1

Probl` eme ` a echantillons multiples

Les m ethodes sattelant a ` la r esolution de ce probl` eme peuvent etre class ees en plusieurs cat egories [53]: 1. Les m ethodes de projection qui prennent en entr ee un vecteur constitu e de la concat enation des lignes de limage. On compte entre autres parmi ces m ethodes lanalyse en composante principale (PCA) [36] et lanalyse en discriminant lin eaire de Fisher(FLDA) [7]. Les limitations de ces m ethodes viennent de leur sensibilit e aux variations dexpression et dillumination car elles consid` erent chaque visage comme une combinaison de vecteurs de base appel es Eigen Face ou Fisher Face, ce qui est evidemment faux [5]. 2. Les r eseaux de neurones parmi lesquels ont peut noter la pr esence de la m ethode Elastic Bunch Graph Matching (EBGM) [43] o` u un graphe est superpos e au visage de mani` ere a ` faire correspondre les noeuds a ` des points cl es du visage tels que les yeux et le bout du nez. Chacun de ses noeuds est rattach e` a un ou plusieurs jets de Gabor constitu es de r eponses du voisinage du noeud en question face a ` des ltres associ es a ` plusieurs wavelets de Gabor. Ces jets de Gabor attribuent a ` la m ethode EBGM une robustesse face aux variations dillumination, aux distortions et aux changements d echelle [26]. Notons que le champ de recherche issu des EBM (Elastic Graph Mathing) est large et compte dans ses rangs dautres m ethodes que le EBGM tels que le morphological elastic graph matching (MEGM) [22] ou le discriminant elastic graph matching (DEGM) [52]. 3. Les autres m ethodes sont bas ees sur lobtention dinformations compl ementaires telles que la profondeur ou le prol infrarouge. Ces techniques ouvrent la voie a ` de nouvelles m ethodes pour contrer les variations dillumination qui seront trait ees dans le chapitre 2.4.

2.2

Probl` eme avec un seul echantillon dentra nement par personne

Les avantages dun syst` eme capable de r esoudre ce probl` eme sont (1) la facilit e de rassembler un training set car une simple photo sut par personne; (2) une economie de m emoire pour le stockage de la base de donn ees; (3) une economie de temps dapprentissage peut avoir lieu puisquil ny a quune seule image par personne ` a consid erer [32]. Lint er et

16

dun tel syst` eme est donc tout a ` fait tangible que ce soit pour un syst` eme de poursuite de suspect a ` travers un r eseau de cam eras ou pour la v erication didentit e. Dans ce type de probl` eme, on ne peut compter sur la taille du training set pour distinguer les variabilit es intra-class (au sein dun m eme groupe, ici lensemble des variations pouvant aecter un m eme visage, a ` savoir lillumination, la pose, lexpression, l age) et inter-class (entre les individus)[42]. Lensemble de ces m ethodes peut faire lobjet dune classication, celle de Tan et al. [32] compte 3 cat egories qui seront d etaill ees dans les sections suivantes : les m ethodes holistiques, les m ethodes locales et les m ethodes hybrides.

2.2.1

M ethodes holistiques

Ces derni` eres utilisent comme entr ee limage compl` ete sous forme dun vecteur de niveau de gris pour d ecider dune identit e. Ici tombent des extensions au one sample problm issues des m ethodes de projection pr esent ee plus haut. Malheureusement, ces m ethodes de projection con cues pour le probl` eme a ` echantillons multiples ne sont pas directement utilisables ici. En eet, les m ethodes de projection telle que la LDA [51] ayant fait leurs preuves dans le domaine du probl` eme a ` echantillons multiples sourent du probl` eme du petit nombre d echantillons (small sample size (SSS) problem) [19] [55] qui d egrade leurs performances. N eanmoins, on trouve dans les d eveloppement r ecents des travaux qui passent au dessus de ce probl` eme et pr esentent des r esultats corrects. Parmi ces travaux la (PC)2 A [45] suivi de sa g en eralisation la E(PC)2 A [11]; et la 2DPCA [48]. Toujours dans le domaine des m ethodes holistiques, des strat egies consistent ` a elargir articiellement le training set par la g en eration de nouveaux echantillons ` a partir du premier, ouvrant ainsi la porte a ` lutilisation de m ethodes a ` echantillons multiples. Citons parmis celles-ci lid ee simple de Yang et al. [50] qui utilisent les images symm etriques gauche et droite pour g en erer de nouvelles vues. A noter aussi, le travail de Beymer et al. [8] qui ont pr esent e la m ethode de d eformation parall` ele pour g en erer de nouvelles poses a ` partir dune premi` ere photo (voir gure 2.1 pour un exemple).

2.2.2

M ethodes locales

Cette cat egorie se divise en deux sous-cat egories bas ees respectivement sur des caract eristiques et des apparences locales. M ethodes bas ees sur des caract eristiques locales Ici des propri et es g eom etriques sont extraites a ` partir de la localisation de points cl es sur le visage. Deux faiblesses en d ecoulent directement : dune part la localisation de 17

Figure 2.1: M ehode de d eformation parall` ele d evelopp ee par [8] pour la g en eration de nouveaux echantillons via g en eration de nouvelle pose. Limage dentr ee est la photo centrale, les 8 autres ont et e g en er ees automatiquement.

tels points nest pas toujours une mince aaire lorsque des occlusions ou des variations de position ou dexpression surviennent et dautre part toute linformation n ecessaire a ` une reconnaissance robuste nest pas forcement contenue dans ces quelques points cl es, en eet beaucoup dinformations passent a ` la trappe lorsque limage est compress ee aux informations contenues ` a quelques endroits. Un exemple parlant est la m ethode DCP de Gao et al. [18] qui, appliqu ee au probl` eme de la reconnaissance faciale de personnes qui crient, pr esente une chute de performance de pr` es de 60% [32]. On peut noter parmi ces m ehodes bas ees sur les caract eristiques locales les d eveloppements de Gao et al. [18] d ej` a mentionn es plus haut et les EBGM [43]. Du ` a l etape n ecessaire de recherche des points cl es, cette derni` ere technique a pour d efaut de pouvoir demander plus de temps de calcul pour son ex ecution que la PCA. M ethode bas ees sur des apparences locales Ici ce sont plusieurs vecteurs correspondant ` a des caract eristiques du visage qui sont utilis es en entr ee. Ces m ethodes sont ` a priori mieux taill ees pour le probl` eme ` a echantillon unique [32]. Tout dabord car un set de plusieurs vecteur de faible dimension au lieu dun seul de grande dimension permet d` es le d ebut de sattaquer ` a la mal ediction de la dimen18

sionnalit e (curse of dimensionality). Ensuite le fait davoir plusieurs sous-vecteurs de caract eristiques permet lutilisation dun syst` eme de poids donnant priorit e dans la d ecision nale aux sous-vecteurs identi es comme etant les plus discriminatifs, ce qui am eliore les performances [37]. Enn, un nombre elev e de sous-vecteurs de caract eristiques peut augmenter la diversit e des types de classieurs utilis es par le biais d equipe de classieurs et ainsi am eliorer les performances du classieur global [23]. Notons que ces trois observations peuvent sappliquer aussi a ` certaines m ethodes de la premi` ere cat egorie des m ethodes locales tel que lElastic Bunch Graph Matching (EBGM) o` ua ` chaque point cl e correspond un vecteur dinformation. Ci-apr` es sont cit ees quelques autres techniques appartenant a ` cette cat egorie qui sont reprises dans le tableau r ecapitulatif de performance compil e par Tan et al. [32] pr esent e a ` la gure 2.2. Les travaux de Tan utilisant les self-organizing-map (SOM) [31], une technique pour rendre la LDA utilisable pour le one sample problem [10], une appoche analytic-to-holistic de Lam et al. [24], la m ethode bas ee sur les Hidden Markov Model [25] et les Local Binary Patterns [4]. Ces derniers feront lobjet dexplications et dun etat de lart d etaill ea ` la section 2.3.

2.2.3

M ethodes hybrides

Comme leur nom le fait penser, ces approches combinent des m ethodes holistiques et locales. Lid ee est de les combiner de mani` ere a ` utiliser les avantages de lune pour contrebalancer les d efauts de lautre. La combinaison ecace entre caract eristiques locales et globales reste pour le moment un probl` eme et peu de travaux sur son application au probl` eme de la reconnaissance faciale existent [32]. A la gure 2.2 sont reprises les performances des m ethodes phares dans le domaine de la reconnaissance faciale ` a partir dune seule image par personne.

2.3

Les Local Binary Patterns appliqu es ` a la reconnaissance faciale

Ci-dessous sera d ecrite la m ethode de Ahonen et al., la majeure partie des informations etant reprise de leur article [4]. Lop erateur LBP basique prend comme entr ee un carr e de 9 pixels et a pour sortie un nombre binaire 8 bits. Ce dernier est pr esent e ` a la gure 2.3. La motivation qui a pouss ea ` utiliser cet op erateur est quun visage peut etre vu comme un assemblage

19

Figure 2.2: Tableau r ecapitulant les scores de certaines m ethodes sattaquant au probl` eme de la reconnaissance faciale avec des training sets compos es dun seul echantillon par personne. La base de donn ees utilis ee pour les tests est ` a chaque fois indiqu ee ainsi que des informations compl ementaires sur les conditions de test (nombre dimages, de personnes ` a tester, etc.). Le dataset accessoire d esigne un set ext erieur utilis e lors de lentra nement, il peut sagir par exemple didentier les d eformations que le visage subit lorsque la position du sujet change dune photo ` a lautre dans le but de les reproduire pour elargir le training set articiellement comme dans la m ethode de d eformation parall` ele [8].

de micro-patterns dont la description par LBP est ` a la fois bonne, robuste face aux variations de gris et rapide ` a g en erer.

Figure 2.3: Op erateur LBP basique. Lentr ee est un carr e de 9 pixels. Un seuil est appliqu e tel que tous les pixels p eriph eriques dont la valeur est sup erieure ` a la valeur du pixel central se voient attribuer la valeur 1 tandis que les autres re coivent la valeur 0. La valeur LBP nalement obtenue est le nombre binaire se lisant dans le sens des aiguilles dune montre autour du pixel central. La convertion de toute une image se fait en d epla cant une fen etre de conversion de 3x3 pixels sur lenti` eret e de limage. Pour obtenir une image convertie de m eme dimension que limage dentr ee on peut par exemple r ep eter les pixels du bord de limage. Figure tir ee de [4].

20

Cet op erateur simple a et e etendu pour rester able ` a di erentes echelles. Ainsi, P points d ecrivent le nombre binaire et ceux-ci sont distribu es le long dun cercle de rayon R. Cet entourage sera not e (P, R). Comme ces P points ne tombent pas n ecessairement au centre dun pixel de limage, leurs valeurs sont obtenues par interpolation bilin eaire. Ceci est illustr e` a la gure 2.4.

Figure 2.4: Extension de lop erateur lbp basique. Les entourages (8,1), (16,2), (8,2) sont repr esent es. Figure tir ee de [4].

Ensuite ne sont gard es que les patterns uniformes ne pr esentant au plus que deux transitions 1-0 ou 0-1 lorsquils sont regard es comme des cercles. Ainsi 00110000 et 10000001 sont uniformes tandis que 10010001 et 11011101 ne le sont pas. En pratique, la conversion dun pattern non uniforme donne le r esultat 0. On se rend compte ainsi que 90% des patterns (8, 1) appartiennent ` a la cat egorie des uniformes. Cette extension permet linterpr eter les LBPs en termes de coins et arr etes inclin ees et sera revue a ` la section 3.3.3. Ensuite pour inclure une information quant a ` la disposition spatiale des textures et eviter de se limiter ` a une description holistique des textures qui sourirait des limitations connues des m ethodes de ce type, limage convertie est divis ee en plusieurs sous-r egions pour lesquelles autant dhistogrammes LBP seront faits. Ainsi pour 4 sous-r egions, 4 histogrammes seront g en er es. Ces derniers seront concat en es pour former une matrice a ` 2 dimensions appel ee histogramme spatialement am elior e. Notons que les sous-r egions peuvent se recouvrir et ne doivent pas n ecessairement etre rectangulaires. La comparaison de deux histogrammes spatialement am elior es suppose dune part d etablir une m ethode de mesure de distance entre deux histogrammes simples et dautre part lutilisation de poids pour rassembler les distances obtenues pour chaque sousr egion. La m ethode 2 en 1 propos ee par Ahonen et al. est la distance carr e de Chi balanc ee : (xi,j i,j )2 xi,j + i,j

2 w (x, ) =
j,i

wj

o` u x et sont des histogrammes spatialement am elior es normalis es ` a comparer, i correspond ` a ii` eme valeur du j i` eme sous-histogramme et wj est le poids accord e` a la sousr egion j . 21

Notons maintenant lensemble des el ements param etrisables : tout dabord le choix de lentourage (P, R) ` a utiliser pour la conversion LBP, ensuite la mani` ere dont les sousr egions sont d elimit ees, puis le poids accord ea ` chacune delles et enn la m ethode de calcul de distance qui sera utilis ee pour comparer deux histogrammes. Ces param etrages bien eectu es am elioreront les performances du classieur nal.

2.3.1

Derni` eres avanc ees : Travail de Tan et Triggs

Leur travail [33] fait suite a ` celui de Ahonen et al. et propose 3 nouveaux concepts qui permettent dam eliorer signicativement les performances (plus de 40% sur la database FRGC-104 selon leur publication). Ces trois concepts sont les Local Ternary Patterns (LTP), une m ethode de pr etraitement de limage et enn une m ethode de mesure de distance pour la comparaison d echantillons au format LBP ou LTP. Ces concepts sont d etaill es ci-dessous. Les local ternary patterns Il sagit de la g en eralisation des local binary patterns au syst` eme ternaire. Elle a et e propos ee par Tan et Triggs [33] comme solution au probl` eme de sensibilit e qu eprouve le LBP face au bruit al eatoire et celui de quantication. Le principe est le suivant : alors que les LBP appliquaient un seuil egal a ` la valeur du pixel central, la conversion en Local Ternay Patterns (LTP) attribue ` a la valeur 0 aux pixels dont la valeur se trouve dans un voisinage de la valeur du pixel central, 1 a ` ceux dont la valeur est au-del` a de ce voisinage et -1 a ` ceux dont la valeur est en dessous. La formulation math ematique est la suivante pour u un pixel p eriph erique dun entourage ` a convertir, ic la valeur du pixel central et t le voisinage : 1 si u ic + t si |u ic | < t si u ic t

s(u, ic , t) =

0 1

Comme fait pour lop erateur lbp basique, une illustration de lop erateur ltp basique est faite a ` la gure 2.5.

Figure 2.5: Op erateur LTP basique. [33].

22

Ensuite, ce code ternaire peut etre transform e soit en un nombre r eel soit en code binaire pour passer ` a la phase suivante. Dans le premier cas on pourrait utiliser un code de valeurs 3n similaire au code binaire 2n . Tan et Triggs ont quant a ` eux divis e le code ternaire en deux codes binaires trait es s epar ement et rassembl es ensuite lors de la phase de comparaison. Cette m ethode a ` lavantage de garder le syst` eme simple d elimination des patterns non-uniformes. La m ethode de pr eparation de limage Celle-ci seectue en trois etapes : 1. Correction Gamma. Lid ee de base est que comme limage r e echie par un visage est le produit de la lumi` ere qui latteint par la r eectance de la surface, une variation de la r eectance repr esentant un trait discriminatif aura une inuence relative a ` lillumination quelle subit, introduisant par l` a m eme un biais. La solution propos ee est dappliquer lop erateur logarithmique par lequel ce produit deviendra une somme. Ainsi, pour une illumination locale uniforme, un saut de r eectance x provoquera la m eme incr ementation sur limage r e echie quelle que soit la valeur de lillumination de d epart. N eanmoins, selon Tan et al., un logarithme a tendance a ` trop amplier le bruit dans les zones sombres. Pour cette raison, un exposant compris dans lintervalle [0, 0.5] est utilis e ` a la place du logarithme. Ainsi la premi` ere etape se d ecrit par la relation math ematique : I (i, j ) = I (i, j ) o` u I (i, j ) est lintensit e du pixel de coordonn ees (i, j ) de limage dentr ee et I limage issue de cette premi` ere etape de pr etraitement. 2. Filtrage par di erence de Gaussiennes. Il sagit de limpl ementation dun passe bande pour supprimer les basses fr equences contenant les eets non d esirables des ombres et les hautes fr equences contenant laliasing et le bruit. 3. Egalisation des contrastes. Celle-ci seectue en trois etapes sur la r egion d elimitant le visage. I (x, y ) I (x, y ) (mean(|I (x , y )|a ))1/a I (x, y ) I (x, y ) (mean(min(, |I (x , y )|)a ))1/a I (x, y ) I (x, y ) tanh( ) 23

o` u est utilis e dans l etape deux pour tronquer les grandes valeurs, a est un exposant inf erieur a ` 1 r eduisant leet des grandes valeurs. L etape trois limite lespace de limage a ` lintervalle [, ]. Eectuer cette m ethode sur une zone pr esentant plusieurs visages ne donnera pas le m eme r esultat que lapplication sur chacun des visages s epar ement. Par cons equent, si une etape de masquage doit etre eectu ee, il faut quelle le soit avant cette etape d egalisation des contrastes. Lapplication de cette m ethode ` a un m eme visage soumis a ` di erentes conditions dillumination est illustr ea ` la gure 2.6.

Figure 2.6: Illustration de lapplication de la m ethode de correction dillumination propos ee par Tan et Triggs. Figure tir ee de [33].

La m etrique utilis ee pour comparer deux histogrammes La mesure de distance propos ee par Tan et Triggs prend intrins` equement compte de lorganisation spatiale des LTP distribu es sur lenti eret e de limage. Ici plus question dhistogramme non plus. Soit deux images ` a comparer X et Y . Pour chaque LTP (aussi nombreux que le nombre de pixels) de Y , la m ethode va regarder parmi les LTPs de m eme valeur de X celui qui est le plus proche et utiliser la distance qui les s epare pour incrementer proportionnellement la distance globale. esentant Concr` etement, pour chaque valeur k possible de LTP, une matrice binaire bk X repr la distribution des patterns k dans X est cr e ee. Ensuite, les matrices de distances dk X sont compil ees tel que l el ement (i, j ) de dk esente la distance entre (i, j ) et la posiX repr tion du plus proche pixel de X dont la valeur est k . Lexemple dune matrice bk X et de sa matrice dk ee est pr esent e` a la gure 2.7. X associ Finalement le calcul de la distance entre deux images X et Y se fait comme suit: D(X, Y ) =
pixels(i,j )of Y
Y w(dX

k (i,j )

(i, j ))

o` u w(d) est une fonction (` a choisir) qui associe a ` une distance de pixel la p enalit e correspondante. Tan et Triggs proposent la gaussienne1 w(d) = exp(d/)
1
2 /2

et la troncation

A noter que dans ce cas-ci un grand D(X, Y ) correspondra ` a deux images X et Y proches

24

Figure 2.7: A gauche : Exemple de matrice binaire de distribution des patterns. A droite : Matrice de distances correspondante. Figure tir ee de [33].

lin eaire w(d) = min(d, ) et disent que leurs performances sont similaires.

2.4

Le traitement de lillumination

Les probl` emes li es aux variations dillumination sont tr` es pr esents dans le domaine de la reconnaissance et de la d etection faciale. Limportance li ee ` a ce domaine pour am eliorer les performances des reconnaisseurs de visage se manifeste par le nombre darticles sur le sujet rien que pour les 5 premiers mois de 2010 [12, 6, 21, 40]. Un inventaire des techniques existantes en deux cat egories actives et passives est fait par Zou dans [56]. Les techniques passives soccupent de lillumination a ` partir des donn ees en niveaux de gris ou en couleur re cues par lappareil de capture. De lautre c ot e, les techniques actives obtiennent des donn ees suppl ementaires telles que la profondeur ou le prol infrarouge pour arriver a ` leurs ns. Plus r ecemment est parue une etude comparative des di erentes techniques de pr eprocessing dans le domaine de la reconnaissance bas ee sur les espaces de vecteurs propres [15], cest a ` dire les m ethodes holistiques ou de projections. Un point important de cette etude est quelle rend compte de la simplicit e de la m ethode, de sa rapidit e et sa robustesse. Il est par contre dommage que les comparaisons en termes de performances ne soient faites que sur base de la reconnaissance par des m ethodes de projections. N eanmoins Ruiz-del-Solar donne ainsi un bon aper cu objectif des techniques existantes et de leurs performances ainsi quun relev e de leurs temps dexecution sur une m eme machine pour le m eme boulot, ce qui peut sav erer tr` es utile pour le design dapplication en temps r eel. La m ethode qui ressort comme etant l etat de lart pour la reconnaissance par m ethode de projection est la combinaison de SQI [41] et du LBP modi e [17]. N eanmoins cette m ethode est surpass ee en terme de performance par une m ethode contemporaine a ` l etude comparative : le pr etraitement de Tan et Triggs [33] pr esent ee plus haut. 25

Partie II Application

26

Chapitre 3 Conception de lapplication


Ce troisi` eme chapitre est consacr e ` a la conception de lapplication qui permettra ` a Nao d etablir des relations avec les personnes qui lentourent. Tout dabord, dans la premi` ere section Mise en situation, je pr eciserai l enonc e du probl` eme et identierai les limitations mat erielles qui guideront le d eveloppement de lapplication. Je consacrerai ensuite la section 3.2 au probl` eme du temps r eel en g en eral et appliqu e` a lapplication de ce m emoire. Puis, jexpliquerai le fonctionnement complet de lapplication nale a ` la section 3.3 Architecture prototype et cycle de fonctionnement standard. Je terminerai par apporter quelques pistes qui permettraient dam eliorer les performances g en erales a ` la section 3.4 et par conclure a ` la section 3.5.

3.1
3.1.1

Mise en situation
D enition de lobjectif et enum eration de ses cons equences

Lobjectif de lapplication est de permettre ` a Nao de reconna tre les personnes qui lentourent, de m emoriser sur demande lidentit e dun nouveau personnage et d etablir une relation avec quelquun en le suivant du regard. Un sc enario type de lutilisation de ces capacit es se d eroule en deux phases. Premi` erement Nao fait la connaissance dun personnage (Paul), sauvegarde ses informations visuelles et les associe a ` un label. La deuxi` eme phase se produit lorsque Paul revient voir Nao, ce dernier le reconna t et tourne le visage vers lui en le saluant. Cette deuxi` eme phase est illustr ee a ` la gure 3.1 p.28. Un tel comportement implique en cons equence que Nao soit capable deectuer en temps r eel 1. la localisation de tous les visages dans son champ visuel,

27

Figure 3.1: Situation typique que Nao doit etre capable deectuer. Paul est un personnage que Nao a rencontr e auparavant. Lors dune seconde rencontre, Paul rentre dans le champ visuel de Nao et ce dernier le reconna t, se tourne vers lui et le salue par son pr enom.

2. la poursuite des visages dune capture du champ visuel ` a lautre, 3. la reconnaissance faciale, 4. une sauvegarde de nouveaux visages dans une base de donn ees et 5. la construction de lordre de mouvement de la t ete pour xer une personne en particulier.

3.1.2

Importance du temps r eel et des performances

Cette application est une routine ` a la base de toute une s erie dapplications dinteraction homme-machine dordre sup erieur telles quune conversation ou la poursuite a ` travers la foule dune personne en particulier. Elle doit par cons equent (1) utiliser un minimum de ressources et (2) etre la plus robuste possible, un dysfonctionnement a ` cet etage se propagerait de mani` ere d esastreuse en aval. Si le robot pr esente ces deux caract eristique de temps r eel et de performance, on pourra dire quil sint` egre dans son milieu de mani` ere limpide, ce qui sav` ere etre pr ecieux pour toutes les applications potentielles. Prenons lexemple dun syst` eme charg e de transmettre des informations condentielles a ` un trader internationnal press e. Il sera malvenu que (1) le syst` eme transmette les informations ` a la mauvaise personne ou (2) le syst` eme prenne 15 secondes pour reconna tre le trader.

28

La conception devra donc sorienter d` es le d ebut vers des choix qui permettront au syst` eme d etre rapide et robuste. La t ache sera dautant plus ardue quil sagit l` a de deux el ements antagonistes o` u lam elioration de lun se fait souvent au d etriment de lautre.

3.1.3

Mat eriel disponible et limitations

Figure 3.2: Mat eriel disponible pour lapplication d evelopp ee dans le cadre de ce m emoire. Une unit e de traitement embarqu ee sur Nao et une unit e de traitement ` a distance puissante communiquant entre-elles par wi.

Le mat eriel disponible (voir g. 3.2 p.29) est constitu e de Lordinateur Zosma AMD Athlon 64 X2 Dual 3800+ (2.01 GHz) 2 Go de RAM (ressources distantes). Le robot Nao fourni par Ald ebaran Robotics [1]. Ce dernier est equip e dun processeur AMD X86 GEODE 500MHz et de 256 Mo de SDRAM (ressources embarqu ees). Une cam era est plac ee sur le haut de sa t ete et fonctionne en trois modes : 640x480, 320x240 et 180x120 pixels. Une transmission sans l est disponible entre Nao et lordinateur distant. Une seconde connection par l est aussi disponible mais soppose a ` lid ee dautonomie du robot.

29

Avec l R esolution 160120 320240 640480 N&B 47 94 333 Couleur 47 141 510 58

Sans l N&B 150 555 Couleur 95 270 1000

Table 3.1: Relev e en ms des temps de transmission avec et sans l entre le robot Nao et lordinateur distant pour di erentes r esolutions. La transmission dimages de couleur implique le transfert de 3 cha nes de couleur.

Ce mat eriel a pour principaux d efauts des ressources embarqu ees faibles et un temps de transmission elev e comme le montre le relev e des temps de transmission dans di erentes conditions ` a la table 3.1 p.30.

3.1.4

Le challenge

Le challenge a ` relever est donc de choisir larchitecture et les m ethodes pour obtenir le meilleur compromis entre temps r eel et performance en sarrangeant avec des ressources embarqu ees faibles et un temps de transmission elev e.

3.2

G erer le probl` eme du temps r eel

Des solutions au probl` eme du temps r eel peuvent d ej` a etre trouv ees d` es la conception de larchitecture o` u il est possible de jouer sur la distribution des t aches entre les deux processeurs disponibles. Il sera donc question ici de choisir les lieux dex ecution des di erentes etapes du traitement enum er ees a ` la section 3.1.1 p.27 : la d etection, la poursuite, la sauvegarde, la reconnaissance et la construction de lordre de mouvement. Mais tout dabord, deux concepts temporels importants, a ` savoir le temps de r eaction et le temps de rafraichissement, sont introduits a ` la section 3.2.1 et une liste des el ements ` a prendre en compte pour le choix des lieux dex ecution des di erentes etapes du traitement est etablie a ` la section 3.2.2.

3.2.1

Di erence entre temps de r eaction et le temps de rafraichissement

Le temps de r eaction est le temps entre loccurence dun stimulus au syst` eme et le d ebut de lex ecution de la r eponse souhait ee. Le temps de rafraichissement sapparente au nombre dimages captur ees par seconde ou le nombre dimages ach ees par seconde 30

dans le cas o` u il y a un ecran t emoin. Bien que loptimisation de lun semble d ecouler de loptimisation de lautre, ce nest pas n ecessairement le cas. Ainsi, en prenant lapplication a ` d evelopper pour ce m emoire, les architectures potentielles1 (A) et (B) pr esent ees ci-dessous illustrent une situation o` u laugmentation du nombre dimages par seconde (fps = frames per second) est synonyme de diminution de temps de r eaction, voir gure 3.3 p.31.

Figure 3.3: Illustration de deux situations pour lequelles la diminution du temps de rafra chissement nest pas synonyme de diminution du temps de r eaction du syst` eme. Dans la situation A, lenti` eret e du traitement seectue sur Nao, donnant un temps de rafra chissement egal au temps de r eaction. Dans la situation B, une partie du traitement se fait sur lordinateur distant, plus rapide. Bien que cela ait permis de diminuer le temps de rafra chissement, on voit que le temps de r eaction a quant ` a lui augment e par rapport ` a la situation A (Lhypoth` ese est faite que les deux plateformes sont multit aches, sachant ` a la fois traiter et transmettre/recevoir. La relaxation de cette hypoth` ese forcerait Nao ` a commencer la capture de limage 1 seulement ` a la n de la transmission ` a lordinateur mais ne remettrait pas en cause cette conclusion).

A Tout le traitement seectuent sur Nao, la d etection des visages et la reconnais1

Pour illustrer le concept, seules deux etapes de traitement sont consid er ees : la d etection et la

reconnaissance des visages. Ceci est aussi valable pour la gure 3.3.

31

sance. B Seule la d etection seectue sur le processeur embarqu e, la reconnaissance se fait sur lordinateur distant, plus rapide. Cela implique un temps de transmission. Les temps de rafra chissement et de temps de r eaction sont donc deux concepts di erents et lorsque le temps de transmission entre les deux processeurs est signicatif loptimisation de lun peut conduire ` a la d et erioration de lautre.

3.2.2

Points importants pour choisir la distribution id eale des t aches

Lobtention de la distribution id eale des t aches entre le processeur embarqu e et le processeur distant se d eroule en etant attentif ` a plusieurs points : La grandeur temporelle a ` minimiser: larchitecture ne sera pas la m eme pour une application aval demandant beaucoup dinformations en un minimum de temps (temps de rafra chissement faible) ou une application aval demandant un temps de r eaction faible. La premi` ere cat egorie correspond par exemple ` a une application charg ee de v erier lidentit e du personnel dentreprise ` a lentr ee du b atiment et davertir de la pr esence dun etranger. Pour ne pas alerter inutilement le garde, lapplication pourra augmenter sa robustesse en basant son jugement sur plus dun clich e. La deuxi` eme cat egorie comprend par exemple les applications dinteraction de divertissement o` u le lag est un ph enon` eme tr` es peu appr eci e. Les ressources disponibles, pas uniquement les processeurs, la m emoire RAM aussi. Le lieu de stockage de la base de donn ees. En eet, pour chaque information la base doit enti` erement etre parcourue et le transfert entre la base et le processeur qui eectue la reconnaissance peut donner lieu ` a des temps dacc` es signicatifs. La quantit e dinformations devant etre transmise sur lordinateur distant. Une situation o` u toute limage doit etre transmise et une autre o` u seulement les visages sont demand es pourront conduire ` a des choix darchitecture di erents. La d etermination de la r epartition id eale des t aches ` a utiliser est donc inuenc ee par (1) les temps de transmission et de traitement sur les di erentes plateformes, ceuxci d ependant du mat eriel et (2) les objectifs de lapplication en aval demandeuse du syst` eme de reconnaissance, a ` savoir principalement la grandeur temporelle ` a minimiser (temps de rafra chissement ou temps de r eaction) et les besoins en achage.

32

3.2.3

Choix des lieux dex ecution : larchitecture prototype

Larchitecture d evelopp ee est un prototype o` u tout se d eroule sur lordinateur distant (voir gure 3.4 p.33). Les raisons qui ont pouss e` a ce choix sont (1) les ressources limit ees de Nao (le processeur, lespace disponible et la RAM), (2) labsence dapplication aval; (3) la facilit e de d eveloppement car pour charger un nouveau programme sur Nao il faut l eteindre, ouvrir sa t ete, retirer une cl e USB, la asher, la remettre en place et rallumer Nao, op eration pouvant prendre facilement 3 ` a 5 minutes; et (4) limportance davoir un achage du champ visuel complet pour une application prototype de ce type.

Figure 3.4: Un cycle complet de lapplication. Il commence par la capture de limage sur Nao et se poursuit par la transmission de limage ` a lordinateur distant. Ensuite trois etapes de traitement sont eectu ees ` a lissue desquelles un ordre de mouvement est envoy e par wi ` a Nao.

3.3

Architecture prototype et cycle de fonctionnement standard

Lapplication fonctionne par cycles qui commencent par la capture du champ de vision de Nao et se termine par lenvoi ou non de lordre de mouvement de la t ete de Nao vers

33

une personne en particulier. Un cycle standard n comprend trois stages2 de traitements cit es ci-dessous, d ecrits en d etail a ` partir de la prochaine section et illustr es a ` la gure 3.4 p.33. La d etetion des visages. Il sagit dextraire les zones rectangulaires qui d elimitent les visages du cycle n contenus dans le champ de vision de Nao. La poursuite des visages qui est charg ee de faire correspondre les visages du cycle na ` ceux du cycle n 1. Cette poursuite permettra au stage de reconnaissance de tenir un historique sur plusieurs cycles des identit es attribu ees ` a un m eme visage. La reconnaissance des visages : les visages du cycles n sont compar es avec ceux contenus dans la base de donn ees et les identit es ponctuelles (uniquement bas ees sur les informations du cycle n) sont d eduites puis ajout ees ` a lhistorique. Lidentit e divulgu ee est le r esultat dun vote des identit es ponctuelles de plusieurs cycles.

3.3.1

D etection des visages

Figure 3.5: La bo te de d etection des visages. Lentr ee est une capture du champ visuel de Nao tandis que la sortie comprend les visages extraits, leurs dimensions et leurs positions dans limage de d epart.

La d etection des visages re coit une capture du champ visuel de Nao et a pour but (1) dextraire les zones rectangulaires de limage qui contiennent les visages et (2) de fournir leurs dimensions et leurs positions. Cette localisation est eectu ee par la librairie C++ OpenCV [2] qui fournit une impl ementation de lalgorithme de d etection de Viola et Jones [38] d ecrit ` a la section 1.1 p.6. La description de la bo te d etection des visages est faite a ` la gure 3.5 p.34.
2

Le mot stage est utilis e ici comme synonyme du mot etape pour eviter toute confusion plus loin

dans le texte

34

OpenCV ( Open Source Computer Vision ) est une librairie initialement d evelopp ee par Intel qui fournit plus de 500 algorithmes pour la vision par ordinateur en temps r eel. Lalgorithme de Viola et Jones y est impl ement e et des apprentissages sont fournis. Ainsi OpenCV peut d ej` a localiser les visages, les yeux, les bouches ou dautres parties du corps.

3.3.2

La poursuite

Figure 3.6: La m ethode de poursuite utilis ee. Le fonctionnement normal est pr esent e ` a gauche. Les trois situations suivantes correspondent ` a trois situations o` u la poursuite ne parvient pas ` a poursuivre correctement les visages dun cycle ` a lautre

La poursuite doit etablir la correspondance entre les visages de deux cycles successifs. La m ethode utilis ee dans cette application consiste ` a appliquer la r` egle simple suivante : si le centre du visage dans la frame n est compris a ` lint erieur dune zone d enissant un visage dans la frame n 1, alors il sagit de visages appartenant a ` la m eme personne. Lex ecution normale de cette m ethode est illustr ee ` a la gure 3.6. Les inconv enients et faiblesses de cette m ethode sont list es ci-dessous et les trois premiers (a), (b) et (c) font aussi lobjet dune illustration ` a la gure 3.6. (a) Lorsque le temps de rafra chissement est faible, les distances parcourues par les centres des visages en mouvement peuvent d epasser leur cadre de d elimitation provoquant ainsi l echec de la poursuite. (b) Lorsque deux candidats repreneurs sont pr esents (voir point (b) de la gure 3.6) une ind ecision a lieu. Bien que lalgorithme nassociera pas deux fois la m eme iden35

tit e, le r esultat de la poursuite d ependra de lordre dans lequel les deux candidats auront et e d etect es durant le stage de d etection et ne sera donc pas able. (c) Lors du croisement de deux visages, il se peut que les identit es soient invers ees, faussant ainsi tout r esultat du vote ult erieur pour lidentication. (d) Si le syst` eme de d etection de visage manque le visage x lors du cycle n, le lien entre le visage x du cycle n 1 et du cyle n + 1 ne sera pas etabli. Comme cons equence imm ediate la phase de vote de l etape de reconnaissance ne pourra plus compter que sur un seul exemplaire du visage x lors de lidentication du cycle n + 1. Le m eme probl` eme survient lorsquun visage quitte le champ visuel pendant un court instant. Pour eviter la majorit e de ces inconv enients, une m ethode de poursuite alternative bas ee sur la correspondance des couleurs entre visages de cycles successifs pourrait etre utilis ee. Il faudra alors etre attentif ` a sa sensibilit e aux variations dillumination. Cette application utilise donc une m ethode de poursuite simple dont les faiblesses ont et e r epertori ees. Elle pr esente les avantages de sa simplicit e, sa rapidit e dex ecution et son fonctionnement sur nimporte quel type dimage (couleur, niveau de gris,etc.). De plus, les performances quelle a su montrer lors de tests se sont av er ees susantes.

3.3.3

Reconnaissance des visages

Ce stage re coit en entr ee un visage candidat et trouve son identit e si il est d ej` a enregistr e dans la base de donn ees. Dans le cas contraire, cest lidentit e de l el ement le plus proche de la base de donn ees qui est renvoy ee. Ce traitement de linformation se fait en plusieurs phases d ecrites ci-dessous et illustr ees ` a la gure 3.7 p.37 : 1. Le traitement de lillumination. En conditions r eelles, l eclairage peut varier

et causer une d egradation des performances de reconnaissance. Cette phase de pr eparation de limage prend ce probl` eme en charge. 2. La conversion LBP. Limage est d ecrite en termes de Local binary patterns introduits a ` la section 2.3 p.19. Linterpr etation de cette description en termes dar etes et de coins sera donn ee a ` la section 3.3.3 p.38. 3. La division en sous-r egions. Il sagit dune phase cl e qui a fait lobjet dune param etrisation complexe d ecrite a ` la section 4.3 p.47. En s eparant limage en plusieurs petites images trait ees s epar ement, cette phase permet de tenir compte dinformations spatiales pr ecieuses pour la classication. 36

Figure 3.7: Illustration du stage de reconnaissance. Lentr ee est un visage dans sa zone rectangulaire de d elimitation. Il subit dabord un traitement dillumination avant d etre converti au format LBP. Il est ensuite divis e en sous-r egions qui seront trait ees s epar ement durant le reste du processus. Un histogramme par r egion est calcul e et ensuite compar e avec ses homologues chez chacun des el ements de la base de donn ees pour obtenir lidentit e ponctuelle. Un vote sur lhistorique a enn lieu pour d eterminer lidentit e divulgu ee. Lajout de lidentit e ponctuelle ` a lhistorique na pas et e dessin ee pour simplier la lecture du sch ema.

4. La construction des histogrammes pour chaque sous-r egion. Ensemble ils forment un set dhistogrammes associ e au candidat. 5. La comparaison avec les el ements de la base de donn ees. Le set dhistogrammes du candidat est compar e avec tous les personnages de la base de donn ee qui eux aussi poss` edent leur propre set dhistogrammes. Le membre le plus proche est ensuite s electionn e comme identit e ponctuelle du candidat et ajout ea ` un historique. 6. Enn, lidentit e divulgu ee est obtenue par le vote sur plusieurs cycles, rendu pos37

sible par le stage de poursuite et la tenue de lhistorique. Le traitement de lillumination Cette phase du stage de reconnaissance emploie la m ethode utilis ee par Tan et al. [33] et qui est pr esent ee a ` la section 2.3.1. La conversion en local binary Patterns Cette phase de conversion re coit en entr ee une image d ecrite en niveaux de gris et rend une image d ecrite en local binary patterns. La description th eorique de cette technique a et e pr esent ee a ` la section 2.3 p.19 et fait lobjet dans cette section dune interpr etation en termes de coins et ar etes (voir gure 3.8 p.39). Pour rappel, la conversion basique dun pixel en un local binary pattern se fait en deux etapes ` a partir des relations plus petit plus grand quentretient sa valeur et avec celles des 8 pixels p eriph eriques qui lentourent. Tout dabord lassociation dun label binaire a ` chacun des pixels p eriph eriques est faite en leur associant le label 1 si leur valeur est sup erieure a ` celle du pixel ` a convertir et le label 0 dans le cas contraire. Ensuite, les huits labels sont lus dans le sens des aiguilles dune montre pour former un nombre binaire appel e local binary pattern (lbp). Lendroit o` u commence la lecture na pas dimportance et a et e choisi comme etant le pixel p eriph erique situ e au dessus du pixel a ` convertir. Finalement, seuls les lbp uniformes sont conserv es pour la construction de limage convertie. Un lbp est quali e duniforme lorsque la lecture cyclique de ses labels comprend moins de trois transitions 0-1 ou 1-0. Ainsi 11000011 et 00100010 sont respectivement uniforme et non-uniforme. Linterpr etation des lbp est faite sur base de lemplacement des transitions 0-1 1-0 dans le nombre binaire. Ainsi les nombres binaires 11000001, 01110000 et 01000000 correspondent respectivement ` a une ar ete verticale, une ar ete horizontale et un coin inf erieur gauche. Plusieurs exemples de ce type sont pr esent es a ` la gure 3.8. La description lbp d ecrit donc les contours des objets pr esents dans limage et dans le cas de la reconnaissance faciale cela peut etre interpr et e comme une description des silhouettes des el ements cl es du visage tel que le nez ou la bouche.

38

Figure 3.8: Interpr etation de la description en local binary patterns. Limage ` a convertir en LBP est ici le trap` eze. Les arrangements de 8 pixels en carr es correspondent chacun aux pixels p eriph eriques dun pixel ` a convertir. Lorsquun pixel p eriph erique est associ e au label 1 il est colori e en gris et dans le cas contraire en bleu. En commen cant en haut ` a gauche et en continuant dans le sens des aiguilles dune montre, les conversions LBP des arrangements repr esent es donnent respectivement 16, 12, 14 et 112.

La division en sous-r egions et la contruction des histogrammes Cette phase incarne lutilisation dinformations spatiales dans le stage de reconnaissance en d ecoupant limage en sous-r egions qui seront trait ees et compar ees s epar ement. Les tailles et les positions des sous-r egions ont fait lobjet dune optimisation pr esent ee a ` la section 4.3 p.47. Des histogrammes sont ensuite construits pour chacune des sous-r egions et rassembl es dans un set dhistogrammes associ e au visage ` a reconna tre. Ce rassemblement en set dhistogrammes est le format sous lequel les personnages connus de Nao sont stock es dans la base de donn ees. Lantagonisme de ces deux op erations, la division en sous-r egions et la construction des histogrammes, m erite d etre soulign e et est expliqu e ci-dessous. Dans l evolution du contenu informatif tout au long du traitement, lop eration de mettre les donn ees sous forme dun histogramme eace toute information concernant la distribution g eographique des el ements au sein de limage. Cette op eration permet donc de diminuer la sensibilit e de la reconnaissance face aux d eformations rigides locales ou globales que peut subir une personne entre deux clich es mais interdit aussi a ` toute etape ult erieure dappliquer un traitement di erent ` a des r egions dont le contenu discriminatif

39

serait di erent, telles quune r egion a ` contours marqu es et une r egion de peau continue3 . La division en sous-r egions en amont agit dans le sens contraire de la g en eration des histogrammes car elle permet de di erencier le traitement de r egions en fonction de leur emplacement dans la fen etre de d elimination du visage. La divisions en sous-r egions et la g en eration des histogrammes peut donc etre interpr et ee comme deux processus qui permettent ensemble de moduler la quantit e dinformations spatiales qui sera prise en compte lors de la classication. La comparaison avec les el ements de la base de donn ees Cette phase re coit en entr ee le set dhistogrammes du candidat assembl es lors de la phase pr ec edente et d etermine quel set dhistogrammes de la base de donn ees lui est le plus proche. La proximit e de deux sets est donn ee par la distance qui les s eparent. Celle-ci est une combinaison lin eaire des distances entre leurs histogrammes homologues.
n 2 1 ),H2 = , ..., H1 , H1 Ainsi pour deux histogrammes de la premi` ere sous-r egion H1 = (H1 i n 2 1 la valeur du bin i de lhistogramme Hx , la distance qui les s epare ) et Hx , ..., H2 , H2 (H2

est D1 (H1 , H2 ) = ||H1 H2 || ||H1 || ||H2 || (3.1)

La similarit e entre deux visages est donc mesur ee par la combinaison lin eaire des distances qui s eparent leurs histogrammes homologues. Les coecients de cette combinaison ont fait lobjet dune optimisation pr esent ee a ` la section 4.3. Le vote Cette phase utilise les multiples exemplaires4 du visage a ` reconnaitre pour voter lidentit e divulgu ee. Celle-ci est obtenue en moyennant les rangs de proximit e des el ements de la base de donn eess avec les exemplaires.
3

Vu lutilisation des lbp, un simple changement du sens dun d egrad e provoqu e par une source lu-

mineuse sur une zone de peau plane pourra provoquer la g en eration de deux histogrammes compl` etement di erents 4 Ces multiples exemplaires sont les occurences du visages ` a reconna tre dans les cycles pr ec edents

40

3.4
3.4.1

Pistes pour am eliorer les performances


Nouvelles informations spatiales

Les informations spatiales sont actuellement int egr ees a ` la classication lors de la division en sous-r egions et elle concerne la distribution des donn ees discriminatives parmis les sous-r egions. Il mest venu lid ee dajouter a ` cela des informations spatiales contenues ` a lint erieur des sous-r egions. Cette capture dinformations spatiales contenues dans une sous-r egion se d eroule en deux etapes. Tout dabord les centres de gravit e de chaque valeur de lbp sont calcul es et ensuite les distances qui s eparent certains dentre-eux sont ajout ees ` a lhistogramme selon facteur a ` param etrer. Les paires de lbp dont la distance des centres de gravit e est evalu ee sont s electionn es tels quelles puissent eectivement repr esenter une caract eristique discriminative du visage. Ainsi, pour une sous r egions englobant les sourcils, il est possible de mesurer la distances qui les s eparent tel quillustr e` a la gure 3.9.

Figure 3.9: La distance entre les centres de gravit e de lbp au sein dune sous-r egion peut repr esenter une distance physionomique. Ici deux sourcils sont repr esent es en orange p ale et les deux lignes rouges repr esentent des patterns identiques avec leurs centres de gravit e indiqu es par un point noir.

Des exemplaires de paire de lbp dont lespacement des centres de gravit e peut repr esenter une distance discriminative sont pr esent ea ` la gure 3.10. Ne font pas partie de ces paires les lbp repr esentant les ar etes verticales ou horizontales car leur espacement correspond ` a l epaisseur dun trait, ne fournissant pas dinformations discriminatives. Jai donc montr e ici comment extraire des lbps des informations spatiales dune autre mani` ere que par la division en sous-r egions et propose lutilisation de cette m ethode pour am eliorer les performances des syst` emes de reconnaissance faciale.

41

Figure 3.10: Set de quatre paires dont lespacement des centres de gravit e peut aider ` a la reconnaissance faciale en donnant des informations quant ` a lorganisation spatiale ` a lint erieur dune sous-r egion. Ces paires sont toutes issues dune sym etrie axiale. La premi` ere paire illustr ee est constitu ee des lbp 224 et 131.

3.4.2

Collaboration des syst` eme de reconnaissance et de poursuite

La poursuite et la reconnaissance ont le point de commum dassocier un visage ` a un autre issu dune autre frame ou dune base de donn ees. Cet objectif commum permet denvisager une collaboration entre les deux techniques. Actuellement, la poursuite aide d ej` a la reconnaissance en lui permettant davoir acc` es a ` plusieurs exemplaires du visage ` a identier et en augmentant ainsi sa robustesse. Cest d ej` a un premier pas vers la collaboration mais il est possible de faire plus. Tout dabord en rendant inutile la reconnaissance dans les situations o` u la poursuite est capable darmer avec certitude quun visage est le m eme que celui dun autre cycle d ej` a identi e. Ce type dentraide a deux b en eces : celui de diminuer le temps de traitement et celui dorir un support au syst` eme de reconnaissance lorsque sa t ache est rendue dicile par une occlusion partielle ou une d eformation du visage. Ainsi le f acheux probl` eme du cri qui survient quand la personne a ` reconna tre crie est esquiv e lorsque le syst` eme de reconnaissance a la possibilit e de faire appel au syst` eme de poursuite. Ensuite en donnant la possibilit e au syst` eme de poursuite de faire appel au syst` eme de reconnaissance pour retrouver la trace dun visage disparu apr` es une occlusion totale. La mise en place dune collaboration entre les syst` emes de reconnaissance et de poursuite demanderait donc ` a ces deux syst` emes de pouvoir fournir un degr e de certitude quant a ` leurs r esultats et dans le m eme temps permettrait dam eliorer dune part la robustesse des deux techniques face a ` des situations dicilles et dautre part le nombre moyen dimages trait ees par intervalle de temps.

42

3.5

Conclusion

La conception de lapplication en tenant compte des contraintes mat erielles et de lexigence dune ex ecution en temps r eel est maintenant termin ee. Elle a sollicit e une r eexion sur les concepts de temps de rafra chissement et de temps r eaction et a nalement abouti ` a lorganisation pr esent ee ci-dessous. La capture du champ de vision de Nao est directement envoy ee par wi a ` un ordinateur puissant charg e, en fonction de la personne avec qui etablir un contact, de commander un mouvement de t ete qui centrera le visage de linterlocuteur au centre du champ de vision de Nao. La station distante eectue pour cela deux stages majeurs5 de traitement: une localisation des visages dans le champ de vision de Nao et une reconnaissance faciale pour chacun deux6 . La d etection utilise le fameux algorithme de localisation en temps r eel de Viola et Jones et la reconnaissance est bas ee principalement sur une division de limage en sous-r egions suivie de la g en eration pour chacune delles dhistogrammes de local binary patterns. Les interpr etations de deux phases importantes du stage de reconnaissance ont et e faites: celle de la conversion en local binary patterns comme description en termes dar etes et de coins, et celle de la division en sous-r egions suivie de la g en eration dhistogrammes comme moyen de modulation de la quantit e dinformations spatiales prise en compte lors de la classication. Dautre part, deux am eliorations ont et e propos ees: une concernant la prise en compte dinformations spatiales au sein des sous-r egions et lautre concernant la collaboration des syst` emes de reconnaissance et de poursuite de visages ` a travers plusieurs champs visuels successifs. Apr` es cette conception, la param etrisation qui doit n ecessairement avoir lieu est faite au chapitre suivant et d eterminera premi` erement la taille des fen etres de d elimitation qui seront utilis ees et deuxi` emement la mani` ere de diviser limage en sous-r egions pour obtenir le meilleur taux de bonnes classications.
5

Pour rappel, cest ainsi que les macro etapes de traitement sont nomm ees pour eviter la confusion

avec des etapes de traitement dordre inf erieur 6 Si la personne avec qui etablir un contact est connue davance, une v erication didentit e aurait su. La reconnaissance est ici utilis ee pour donner ` a Nao la conscience permanente de lidentit e des gens qui lentourent et ainsi lui permettre dajuster son comportement en fonction des personnes pr esentes ou non. Cela permet aussi de rester dans un cas g en eral et dorir un maximum dinformations ` a tout logiciel dordre sup erieur telle que pourrait constituer une application charg ee de rendre un accueil personnalis e` a lentr ee dune institution

43

Chapitre 4 Entra nement sous MatLab du stage de reconnaissance


Ce chapitre est destin e` a param etrer lapplication pens ee au chapitre pr ec edent. Pour cela, le stage de reconnaissance de visage a et e enti` erement impl ement e a ` laide du Logiciel Matlab. Les el ements ` a param etrer sont: 1. La taille de fen etre qui sera utilis ee. Tous les visages dentr ee, quils soient destin es a ` la sauvegarde dans la base de donn ees o` u ` a lidentication, devront pr esenter les m emes dimensions. En eet, la reconnaissance est bas ee sur la g en eration dhistogrammes de local binary patterns (lbp) et par cons equent lutilisation de visages de r esolutions di erentes poserait deux probl` emes : celui des lbp qui d etectent la pr esence dar etes et coins pour des environnements de 9 pixels quelque soit la r esolution de limage et celui des histogrammes qui, sils sont g en er es sur des r egions de tailles di erentes, ne pourront pas etre compar es. La solution la plus simple est de redimensionner limage d` es le d ebut. La principale critique a ` lencontre de cette solution est que linterpolation qui devra n ecessairement avoir lieu d egrade la qualit e de linformation contenue dans limage originale. 2. Les dimensions, les positions et les poids des sous-r egions utilis ees pour la reconnaissance. Pour rappel, lapplication comprend une phase de d ecoupage de limage en sous-r egions trait ees s epar ement pour apporter des informations concernant lorganisation spatiale a ` la classication. Cette m ethode, comme cela sera vu au chapitre 6, augmente de mani` ere signicative les r esultats et m erite donc de sy attarder. Ce chapitre d ecrit la param etrisation de ces el ements aux sections 4.2 et 4.3. Une conclusion a ` la section 4.4 p.51 reprend les el ements a ` retenir et donne un avis critique 44

accompagn e des el ements qui conduiront au chapitre 5. Avant de commencer la param etrisation, les ensembles dentra nement et de validation qui seront utilis es sont introduits a ` la section 4.1.

4.1

Ensembles dentra nement, de validation et bases de visages

Figure 4.1: M ethode de d etection de Viola et Jones impl ement ee par OpenCV appliqu ee ` a un echantillon de la base de donn ees FERRET gray. Cette extraction qui forme les ensembles dapprentissage et de validation pour lapplication de param etrisation en Matlab a et e eectu ee avec le m eme code c++ que celui qui est utilis e pour lapplication avec Nao.

Le contenu des ensembles dentra nement et de validation se veut le plus proche possible des visages auxquels le stage de reconnaissance aura aaire. Par cons equent leurs cadrages dans leurs fen etres de d elimitation seront faits en utilisant limpl ementation OpenCV de lalgorithme de Viola et Jones [38] tel que cest le cas pour les visages d etect es dans le champ visuel de nao. Les images dentr ees sont issues de la base de donn ees FERRET gray [27, 28](voir gure 4.1 pour un echantillon cadr e avec OpenCV). Lensemble dapprentissage compte 60 visages di erents et celui de validation compte 100 prises de vue des 60 personnes de lensemble dapprentissage. Un test standard comprend lapprentissage des 60 visages di erents suivi du calcul du taux de bonnes classications sur lensemble de validation. 45

La base de donn ees FERRET est largement utilis ee ` a travers la litt erature pour mesurer les performances dun classieur [4, 47, 6, 16] et nest pas disponible en t el echargement libre. Jai pu la t el echarger enti` erement apr` es avoir suivi les proc edures qui sont demand ees sur le site web du projet [3].

4.2

Taille de fen etre utilis ee

Pour d eterminer la taille de fen etre a ` utiliser, plusieurs dimensions dimage ont et e test ees sur lensemble de validation. Le graphe de la gure 4.2 reprend les r esultats qui montrent quil existe un intervalle de taille de fen etre dentr ee pour lequel la m ethode de classication est plus performante. Je nai pas pu tester lutilisation de taille dimage dentr ee sup erieure ` a 105 pixels de c ot e car je navais pas assez de m emoire virtuelle pour eectuer les calculs.

Figure 4.2: Taux de bonnes classications obtenus pour di erentes longueurs de c ot e dimage dentr ee. Des petites longueurs donnent de mauvais r esultats car elle ne capturent pas beaucoup dinformations. Bien quil mait et e impossible de tester pour des tailles dimages dentr ee plus grande, le graphe laisse para tre quune fois pass e une certaine dimension le taux de bonnes classications par rapport ` a la taille de limage dentr ee diminue. La raison serait qu` a partir dune certaine dimension, linformation captur ee par les lbps devient moins discriminative car elle est relative ` a un environnement de 8 pixels autour de chaque pixel et est donc invariable aux dimensions de limage.

46

Au vu de ces r esultats, jai choisi une taille de 60 pixels de c ot e. Ce choix est aussi motiv e par le fait que la r esolution de limage dentr ee captur ee du champ de vision de Nao sera dune r esolution faible (320 240 ou 160 120 pixels) pour minimiser les temps de transmission a ` la station distante et que par cons equent les visages extraits par la m ethode de d etection ne seront pas de dimensions tr` es elev ees a ` moins que les personnes ne se tiennent juste en face de la cam era, situation impossible ` a garantir. Donc un choix dimage dentr ee de 60 pixels de c ot ea et e fait en tenant compte de la r esolution des images qui seront eectivement apport ees par la cam era de Nao et de la taille dimage dentr ee qui semble permettre aux local binary patterns de capter le plus dinformations discriminatives.

4.3

S election de la combinaison de sous-r egions pour la reconnaissance faciale

Lobjectif de cette param etrisation est de trouver la combinaison de sous-r egions qui permettra de distinguer au mieux les personnages. Pour rappel, le stage de reconnaissance divise le visage en plusieurs sous-r egions trait ees s epar ement pour tenir compte de la distribution g eographique des zones utiles a ` la discrimination lors de la classication. Lidentication de la dicult e de cette param etrisation et la pr ecision de lobjectif en cons equence sont dabord faits a ` la section 4.3.1, puis la strat egie et la combinaison nalement s electionn ee sont repris a ` la section 4.3.2. Enn, une conclusion comprenant une critique de la strat egie adopt ee et des pistes pour la suite est faite ` a la section 4.4.

4.3.1

Dicult e et objectif

La majeure dicult e de ce probl` eme est de s electionner la meilleure combinaison de x sous-r egions parmi le nombre titanesque quil est possible de trouver. Ainsi il y a d ej` a 6.2597 1018 mani` eres di erentes de prendre x = 3 sous-r egions parmi les n = 3348900 que compte une fen etre de 60 pixels de c ot e1 : n! 3348900! = (n x)!x! (3348897)!3! = 6.2597 1018 Lobjectif de cette section sera donc de d evelopper et dex ecuter une strat egie ecace qui permettra de trouver une combinaison performante sans devoir utiliser dordinateur quantique.
1

Ce nombre a et e obtenu par Matlab en tentant de toute les g en erer.

47

4.3.2

Strat egie et r esultats

La strat egie est globalement de faire une pr e-s election parmi les 3348900 sous-r egions rectangulaires que contient une fen etre de 60 pixels de c ot e pour que le nombre de combinaisons possibles devienne accessible. Il sera possible de toutes les essayer pour trouver la meilleure. Pour obtenir cette pr e-s election, il faut tout dabord trouver le moyen de les comparer entre elles. Une technique simple serait de comparer les r esultats que chacune des sous-r egions parvient a ` atteindre sur lensemble de validation2 . N eanmoins, lapplication directe de cette technique pose plusieurs probl` emes : Les premi` eres zones s electionn ees sont de grande dimension et correspondent en fait a ` un simple recadrage du visage (voir g 4.3). Or il est recherch e des zones de taille moyenne couvrant plusieurs parties di erentes pour rendre compte lorganisation spatiale des donn ees discriminantes.

(a) Meilleur score

(b) Score en fonction de la surface

Figure 4.3: (a) La plus petite des sous-r egions orant le meilleur score de 67%. (b) Score des sous-r egions en fonction de leur surface.

Une id ee pour passer au-del` a de ce probl` eme serait de p enaliser le score obtenu par les zones de grande taille, mais d eterminer de quelle mani` ere eectuer cette p enalisation nest pas evident. Normaliser les scores par la surface ne donne pas
2

La m ethode de test dune sous-r egion consiste ` a ne consid erer que les pixels quelle inclue pour

eectuer la reconnaissance

48

de bons r esultats et ne fait que retourner le probl` eme en privil egiant de mani` ere excessive les sous-fen etres de petite taille. Cette technique consid` ere que la force dune combinaison de sous-r egions se trouve dans les performances individuelles de ses membres, or la richesse de leur combinaison est aussi recherch ee: si une zone contient les trois quarts de linformation et une autre un quart, il est aussi important de s electionner au moins une sous-r egion issue de chaque zone que de s electionner la meilleure sous-r egion de chaque zone. Lid ee apport ee pour r esoudre ces deux probl` emes est de neectuer la comparaison des r esultats que sur des sous-r egions de dimensions identiques et de constituer la pr es election avec les premiers class es de chaque cat egorie. Bien quil soit evident que cette id ee r esolve le premier probl` eme, il est moins manifeste que ce proc ed e s electionne des sous-r egions dhorizons di erents. Pourtant cest bien le cas. Comme montr e dans la gure 4.4 p.49, des zones cl es du visages telles que le nez et les yeux semblent etre contenues dans des rectangles de dimensions di erentes assurant ainsi que chacune delle a la chance d etre class ee premi` ere dans une cat egorie di erente et que les sous-r egions pr es electionn ees proviendront dendroits di erents de du visage. En compl ement, les classements au sein de quatre cat egories de sous-r egions de dimensions di erentes sont pr esent es a ` la gure 4.5.

Figure 4.4: Trois zones class ees premi` eres dans leurs cat egories. Elles correpondent aux deux yeux et le nez. Il est montr e ainsi que la m ethode de pr es election ne s electionne pas que des sous-r egions provenant du m eme endroit

A ce stade, la pr es election des sous-r egions class ees premi` eres dans leurs cat egories permet de r eduire le nombre de sous-r egions a ` combiner de 99.89% en passant de 3348900 a ` 3540 (=60 largeurs possibles 60 hauteurs possibles - 60 r ep etitions que constituent les carr es). N eanmoins le nombre de possibilit es de combiner trois dentre elles reste

49

Figure 4.5: Classements au sein des cat egories de sous-r egions de dimensions 60 9, 60 3, 18 9 et 12 24 pixels2 . Les zones rouges fonc es sont les plus discriminatives sur lensemble de validation tandis que les zones bleues sont les moins discriminatives.

elev e (8.0315e + 009) et le test de chacune de ces combinaisons prendrait 38 ans et une septantaine de jours 3 .

Figure 4.6: R esultat de la param etrisation des sous-r egions trait ees s epar ement durant la reconnaissance. Les zones 1 et 2 ont un poids de 5 tandis que les deux autres ont un poids de 1.

Ont alors et e mises sur le c ot e les sous-r egions dont la surface n etait ni comprise entre 280 et 420, ni entre 1600 et 1700. Il sest av er e apr` es quelques tests que cette pr es election
3

Temps obtenu ` a partir du temps moyen n ecessaire au test dune seule combinaison selon plusieurs

combinaisons de poids

50

semblait mener aux meilleurs r esultats. Avec ce crit` ere et en prenant seulement les premi` eres sous-r egions de chaque cat egorie, 47 sous-r egions ont et e pr es electionn ee. Ensuite les 178365 moyens de prendre 4 de ses 47 sous-r egions ont et e test es sur lensemble de validation pour 455 congurations de poids di erentes4 . Cela fait un total de 81 156 075 congurations. Le r esultat est donn e` a la gure 4.6 Plusieurs remarques sont ` a faire ` a la d ecouverte de ce r esultat. Tout dabord la pr esence de deux grandes sous-r egions (1 et 2) englobant plusieurs el ements cl es du visage tels que les yeux, le nez et la bouche. Une seule dentre elles obtient sur lensemble de validation un taux de bonnes classications avoisinnant les 67% tandis que leur combinaison avec les trois autres sous-r egions permet une diminution de 45% de lerreur, soit un taux de bonnes classications obtenu de 82%5 . Ensuite les poids tr` es faibles accord es aux deux sous-r egions de dimensions moyennes 3 et 4. Lalgorithme avait la possibilit e de leur attribuer un poid nul, le fait quil ne lait pas fait semble indiquer que dans une combinaison, les sous-r egions de petites dimensions permettent par des petites inuences de mener le reconnaisseur de visage a ` la bonne d ecision. Enn, le positionnement exclusivement sur la partie gauche du visage des zones 3 et 4. Une hypoth` ese quant ` a ce ph enom` ene serait la sym etrie du visage diminuant lint er et dune sous-r egion du visage lorsque son homologue sym etrique est d ej` a consid er e.

4.4

Conclusion et suite

Le premier objectif de ce chapitre etait de trouver les dimensions de limage dentr ee telles que le logiciel de reconnaissance fonctionnant sur Nao puisse atteindre les meilleurs r esultats. Il a et e d ecid e dutiliser des images dentr ee de 60 pixels de c ot e car cela permettait (1) aux mod` eles binaires locaux de tirer un maximum dinformations discriminatives et (2) de rester proche des dimensions dimages dentr ee qui seront typiquement rencontr ees par Nao en conditions r eelles. Le deuxi` eme objectif etait de trouver la combinaison de sous-r egions qui permet dobtenir le meilleur taux de bonnes classications. La principale dicult e rencontr ee est le nombre colossal de combinaisons possibles parmi lensemble des sous-r egions :
4 5

Nombre de fa con di erentes dattribuer 4 poids compris entre 0 et 12 dont la somme vaut 12 Ceci est une premi` ere estimation de lam elioration que peut apporter lutilisation de la combinaison

de sous-r egions. Le v eritable potentiel de cette m ethode sera r ev el e au chapitre 6 lors de lutilisation de la combinaison sur un ensemble de test. Ahonen et al. [4] avaient d ej` a mentionn e limportance de la division en sous-r egions mais nen avait impl ement e quune version simpli ee ne supportant pas la superposition des sous-r egions

51

pour une fen etre de 60 60 pixels2 il y a d ej` a 6.2597 1018 possibilit es di erentes de prendre 3 sous-r egions. Pour enjamber cette dicult e, une m ethode a et e d evelopp ee pour eliminer un maximum des sous-r egions qui, combin ees avec les autres, ne permettraient pas dobtenir un bon taux de bonnes classications. Cette m ethode consiste a ` pr es electionner un repr esentant de chaque cat egorie de dimensions de sous-r egions et a ` ecarter les autres. Apr` es s etre assur e que cela permettait de compter dans la pr es election des sous-r egions de localisations vari ees contenant di erents el ements cl es du visage, la technique a et e adopt ee. Le r esultat donn e par cette m ethode de pr es election comptait encore un nombre elev e de sous-r egions. Par cons equent, une seconde epuration selon un crit` ere de surface a et e eectu ee pour conduire nalement ` a un nombre de 47 sous-r egions pr es electionn ees. Ensuite, les 81 156 075 possibilit es de prendre 4 sous-r egions parmi ces 47 sous-r egions d elite selon di erentes distributions de poids ont et e test ees sur lensemble de validation. La combinaison qui ressort premi` ere de cette optimisation est pr esent ee a ` la gure 4.6 et a permis, sur lensemble de validation, de diminuer de 45% le pourcentage derreur. Le v eritable potentiel cette combinaison sera vu au chapitre 6 sur un ensemble de test. Apr` es ce chapitre, la meilleure combinaison est constitu ee de petites sous-r egions imbriqu ees dans des sous-r egions de plus grande taille, englobant la totalit e des el ements cl es du visage tels que les yeux, la bouche et le nez. Ce r esultat est probablement inuenc e par le nombre de sous-r egions consid er ees x ea ` quatre. L etape suivante du d eveloppement serait de voir, avec un ordinateur le permettant, si ces sous-r egions de grande taille sont toujours pr esentes pour une combinaison dun nombre plus el ev e. Les plus petites sous-r egions se r epartissent sur un seul c ot e du visage, ph enom` ene qui serait du a ` la sym etrie du visage qui rend inutile la connaissance dune sous-r egion si son homologue sym etrique est d ej` a connu. Ce dernier r esultat devrait faire lobjet de plus d etude avant de pouvoir etre g en eralis e. Dans le cas dun nombre xe de 4 sous-r egions combin ees, il est remarqu e que les sous-r egions de petites dimensions centr ees sur des el ements cl es du visage semblent aider le reconnaisseur de visage ` a se diriger vers la bonne d ecision par de petites inuences tandis que des sous-r egions de grandes dimensions indiquent la direction g en erale. La technique de pr es election a comme principaux d efauts de (1) ne s electionner au maximum quune sous-r egion par cat egorie de dimensions et (2) de ne pas garantir par son fonctionnement intrins` eque une pr es election comptant des sous-r egions de toutes les 52

zones suppos ees cl es du visage telles que les yeux, le nez, la bouche et les oreilles. Une am elioration de la m ethode propos ee consisterait alors a ` diviser limage en plusieurs macro sous-r egions au sein desquelles des classements entre sous-r egions de m eme surface serait eectu es. Ensuite chaque macro sous-r egions apporterait ses sous-r egions d elite a ` la pr es election. Parall` element a ` la recherche de la meilleure combinaison rendue dicile par le nombre elev e de combinaisons possibles, une recherche des zones les plus utiles ` a la discrimination peut etre men ee pour tenter dapporter des indices quant aux zones ` a explorer en priorit e lors de la pr es election. Cela augmenterait le potentiel discriminatif de la pr es election et ainsi les performances de la meilleure combinaison de sous-r egions qui en sera tir ee. Une tentative de g en eration dune telle carte des zones les plus utiles a ` discrimination est faite au chapitre suivant.

53

Chapitre 5 Obtenir une carte des zones utiles ` a la discrimination


Lobjectif de ce chapitre est d etablir une carte du visage indiquant les zones les plus utiles ` a la discrimination. L elaboration de la strat egie pour y parvenir na pas et e aussi simple quattendu et je reprends ici les etapes de mon raisonnement qui ont men ea ` la strat egie nalement propos ee de la section 5.5 p.63. Une conclusion a ` la page 65 reprend les r esultats et les points importants du d eveloppement de la strat egie de g en eration de la carte des zones les plus utiles ` a la discrimination et apporte un avis critique.

5.1

Contexte et motivations

Le d eveloppement de cette strat egie sest fait en m eme temps que celui de la strat egie de pr es elections des sous-r egions pour la recherche de la meilleure combinaison capable de discriminer les visages (voir chapitre 4 p.44). La principale motivation vient de la dicult e de comparer des sous-r egions de dimensions di erentes entre elles, comme constat e au chapitre pr ec edent. Apr` es la construction dune carte des zones les plus utiles a ` la discrimination, il est esp er e que, par sa consultation, la s election des sous-r egions pour construire la meilleure combinaison sera facilit ee. Cette chapitre pr esente en plus du pr ec edent les probl` emes qui se sont pr esent es lors du d eveloppement des deux strat egies, le raisonnement complet pour les contourner et des pr ecisions quant ` a lobtention des graphes de la gure 4.5 p.50. Les sections 5.2 jusqu` a 5.4 comprise retracent dans lordre chronologique les etapes de mon raisonnement et de mes exp erimentations qui mont men es a ` la solution nalement pr esent ee a ` la section 5.5 p.63. 54

5.2

Division en parties contigues

Une premi` ere fa con de proc eder pour obtenir la carte des zones les plus utiles ` a la discrimination est de la diviser en plusieurs parties contigues et de tester chacune dentre elles sur lensemble de validation. La taille des sous-r egions devra etre choisie ni trop grande ni trop petite. En eet, une taille trop grande donnerait une faible r esolution ` a la carte nale tandis quune taille trop petite soumettrait les r esultats aux cons equences n efastes dun positionnement irr egulier du visage ou de parties du visage par rapport a ` la fen etre de d elimitation. Cet eet est expliqu e et illustr e` a la gure 5.1.

Figure 5.1: Eets du positionnement irr egulier du visage ou de parties de visage par rapport a la fen ` etre de d elimitation pour deux tailles de sous-r egions di erentes. La ligne du haut pr esente la robustesse dune grande fen etre tandis que la seconde montre lincapacit e de la petite sous-r egion ` a garder son contenu discriminatif lorsque sa position par rapport ` a loeil change. Ces variations de positions peuvent etre provoqu ees par le stage de d etection qui ne cadre pas toujours les visages de la m eme fa con, par des variations dinclinaison du visage, par des variations dangle de prise de vue ou encore par des variations li ees ` a lexpression du visage.

Finalement, comme le montre la gure 5.2, il naura pas et e possible de trouver un compromis satisfaisant entre les eets n efastes de la grande taille sur la r esolution et la sensibilit e probl ematique des petites sous-r egions au positionnement irr egulier du visage ou de parties de visages qui peut etre provoqu e par le stage de d etection, par une variation dinclinaison du visage ou par une variation dangle de prise de vue. Cest pourquoi jai d ecid e dexploiter des sous-r egions non contigues pouvant se recouvrir ` a la section 5.4. Mais tout dabord, la section 5.3 introduit les ensembles dapprentissage et de validation articiels qui permettront de valider la strat egie de g en eration de la carte des zones les plus utiles a ` la discrimination avant de lutiliser sur les ensembles de visages.

55

Figure 5.2: Cartes des zones les plus utiles ` a la discrimination obtenues par la technique de la division en parties contigues pour di erentes tailles de sous-r egions el ementaires: 3, 5, 10 et 15 pixels de c ot e. Le r esultat des cartes haute r esolution est mauvais pour les raisons evoqu ees dans le texte et celui des cartes basse r esolution nest pas assez pr ecis pour localiser avec pr ecision les el ements les plus utiles ` a la discrimination.

5.3

Introduction aux ensembles dapprentissage et de validation articiellement g en er es

Suite a ` des r esultats inattendus obtenus lors dessais de construction de la carte des zones utiles a ` la discrimination, jai d ecid e dutiliser des ensembles articiels de donn ees pour valider la technique de construction de la carte avant de lemployer sur des donn ees r eelles. Jai ainsi g en er e quatre personnes pr esent ees a ` la gure 5.3. Chaque visage est constitu e de deux zones discriminatives qui permettent de les distinguer.

Figure 5.3: Les quatres personnes g en er ees articiellement pour valider la technique de construction de la carte des zones utiles ` a la discrimination.

Plus loin dans le texte, cet ensemble dapprentissage et son ensemble de test correspondant serviront a ` comparer lecacit e de m ethode de cr eation de carte. Ces cartes auront une r esolution de 6 6 carr es de 100 pixels2 (voir gure 5.4). Les deux zones discriminatives sont plac ees exactement au centre de deux de ces carr es de 100 pixels2 . Quelques notations et pr ecisions utiles pour la suite : les quatres personnes de lensemble articel sont constitu es de N = 2 zones discriminatives pouvant prendre deux valeurs chacune ( = 2). Ainsi la chance didentier une des quatre personnes

56

articielles en devinant au hasard est de : = 1


N

(5.1)
2

1 = 2 = 0.25

Pour simuler une situation r eelle o` u le cadrage du visage et lorganisation spatiale des el ements importants pour la discrimination ne sont pas toujours les m emes, il est possible dajouter des perturbations de dimension et de position aux ensembles articiels. N eanmoins, an de pouvoir rep erer le plus pr ecis ement possible les eets ind esirables sur les r esultats des m ethodes qui seront test ees plus loin, lajout des perturbations de position et de dimension aux ensembles de donn ees articielles ne sera pas eectu e dans un premier temps.

5.4

Exploitation de parties non-contigues

Une solution alternative a ` la division en parties contigues est de rassembler les scores de classication de plusieurs parties non contigues pouvant se chevaucher. Ainsi jai (1) consid er e toutes les sous-r egions d elimitables dans une fen etre de 60 pixels de c ot e dont les dimensions et les positions etaient des multiples de 151 , (2) regard e le pourcentage de personnes quelles pouvaient classer correctement sur lensemble de validation et (3) recoup e les r esultats pour obtenir la carte des zones les plus utiles a ` la discrimination. La bonne fa con de les rassembler nest pas evidente ` a trouver et les etapes successives qui mont men ees a ` la strat egie nale de la section 5.5 p.63 sont pass ees en revue cidessous.

5.4.1

M ethode (a)

La premi` ere m ethode (a) que jai essay ee se d eroule en deux etapes : dans un premier temps les r esultats des sous-r egions sont normalis es par unit e de surface (les scores sont divis es par le nombre de pixels contenus dans la sous-r egion) et ensuite a ` chaque pixel de la carte est attribu ee la moyenne des r esultats des sous-r egions qui lincluent. La normalisation est utilis ee pour d epartager les sous-r egions de surface di erente qui contiennent la m eme quantit e dinformations discriminatives en favorisant les r egions
1

Ce choix est fait pour limiter le nombre de fen etres existantes et pour faciliter le r ep erage des points

faibles des m ethodes qui seront successivement test ees

57

(a)

(b)

(c)

(d)

Figure 5.4: Cartes obtenues par di erentes m ethodes de rassemblement des r esultats des sous-r egions. La m ethode (a) eectue une moyenne des r esultats normalis es par leur surface. La m ethode (b) eectue une moyenne pond er ee par linverse de la surface des r esultats normalis es. La m ethode (c) utilise la technique dexpansion pour annuler les eets de bords. La m ethode (d) introduit la notion de fraction dinformations discriminatives et utilise le maximum au lieu de la moyenne.

de dimensions plus faibles qui cadrent mieux linformation discriminative2 . La carte obtenue par cette m ethode est la carte (a) de la gure 5.4. La carte est incorrecte car elle attribue une importance di erente aux deux zones discriminatives. La raison de cette di erence dimportance aux deux zones discriminatives attribu ee par la premi` ere m ethode est que la normalisation par la surface a plus aect e les zones centrales de carte que les zones p eriph eriques. En eet, une zone issue du centre de la fen etre de 60 60 pixels2 a une proportion plus grande de sous-r egions de grandes tailles qui lincluent que celle dune zone p eriph erique (voir g. 5.5) et par cons equent, comme les scores p enalis es sadditionnent, la zone centrale est plus p enalis ee que les zones ext erieures.

5.4.2

M ethode (b)

La premi` ere technique (b) propos ee pour contrer ce probl` eme est de diminuer limportance des grandes zones dans le moyennage nal en pond erant la contribution a ` la moyenne des sous-r egions par linverse de leurs surfaces. Cette technique donne la carte (b) pr esent ee a ` la gure 5.4. Il est constat e que la seconde m ethode gomme leet n efaste de la normalisation des scores de la m ethode (a) mais ne leace pas totalement.
2

Avec le positionnement irr egulier de limage par rapport ` a sa fen etre de d elimitation (cfr g. 5.1

p.55), nest-il pas dangereux de favoriser des petites sous-r egions? Non, car les sous-r egions soumises au probl` eme du positionnement irr egulier auront d ej` a et e d efavoris ees en aval, lors du test sur lensemble de validation. En eet, si ce dernier est r ealiste, il contient des irr egularit es de position qui conduiront a un faible taux de bonnes classications pour les sous-r ` egions de petites dimensions

58

Figure 5.5: Illustration de la di erence de proportion de sous-r egions de grandes tailles quil existe pour une image de 60 60 pixels2 . Ce graphique repr esente pour chaque pixel le nombre de sousr egions de 900 pixels de surface qui le contiennent.

5.4.3

M ethode (c)

La troisi` eme m ethode (c) propos ee r esout totalement le probl` eme de la m ethode (a) dont la mesure de linformation discriminative dune zone d epend de lendroit o` u elle se trouve sur limage. Pour supprimer la di erence entre une zone centrale et p eriph erique, limage de d epart 60 60 pixels est plac ee au centre dun grand carr e de 180 180 pixels ne contenant aucune information discriminative et le dessin de la carte des zones les plus utiles a ` la discrimination est fait en consid erant les sous-r egions de la grande image dont aucune des dimensions ne d epasse 60 pixels. De cette mani` ere, tous les pixels de limage originale sont dor enavant les pixels centraux de la grande image et donc un pixel central et un pixel p eriph erique auront la m eme population de sous-r egions qui les incluent. Cette m ethode appliqu ee en amont de la m ethode (b) donne la carte (c) pr esent ee a ` la gure 5.4. La carte (c) accorde la m eme importance aux deux zones discriminatives, contrairement aux cartes (a) et (b).

5.4.4

M ethode (d)

Les motivations qui mont pouss ea ` d evelopper la m ethode suivante emane de lobservation de la carte produite par la m ethode (c). Cette carte indique que la r egion situ ee entre les deux zones de discrimination contient plus dinformations utiles ` a la discrimination quailleurs. Ceci sexplique par le fait que prendre une sous-r egion de dimensions al eatoires et placer son centre ` a mi-chemin des deux zones de discrimination donne le plus de chances de r eunir les deux zones discriminatives. N eanmoins, pour un nombre plus elev e de zones discriminatives, cet eet aura tendance a ` gommer les contours et diminuer la pr ecision de la carte des zones les plus utiles a ` la discrimination. Jai donc d ecid e de continuer a ` r e echir sur le probl` eme et jen suis arriv e` a d evelopper la m ethode (d) qui apporte deux contributions ` a la pr ec edente. La premi` ere est lutilisation du maximum au lieu de la moyenne des r esultats. Appliqu e directement a ` la m ethode (c) cette contribution donne la carte pr esent ee a ` la gure 5.6. Bien que cette carte d etecte exactement les deux zones de discrimination, une critique importante est a ` faire : cette carte na et e obtenue qu` a partir des sous-r egions de
Premi` ere contribution

59

Figure 5.6: Carte obtenue par lutilisation du maximum ` a la place du moyennage dans lex ecution de la m ethode (c). Les deux zones discriminatives sont parfaitement rep er ees.

15 15 pixels, la plus petite unit e utilis ee lors de ces simulations. De ce fait, elle nutilise absolument pas linformation de plusieurs sous-r egions non contigues pouvant se chevaucher et donne le m eme r esultat et soure des m emes probl` emes que la m ethode de division en parties contigues pr esent ee a ` la section 5.2. Ce probl` eme est provoqu e par la normalisation qui est trop p enalisante pour les sous-r egions de moyennes et grandes dimensions et les emp echent de se manifester dans la carte nale : soit le cas de deux zones 15 15 et 30 15 pixels2 qui contiennent respectivement sur les deux zones discriminatives aucune zone discriminative et 1 zone discriminative, la premi` ere donne un r esultat observ e de 25% et la seconde un r esultat de 50% (donn ees r eellement obtenues avec les ensembles articiels) tandis que leurs r esultats normalis es sont respectivement de 25/225 = 0.111 et 50/450 = 0.111. Ces r esultats normalis es egaux rendent equivalentes les participations a ` la carte nale dune sous-r egion contenant 50% de linformation et dune autre ne contenant aucune information et montre donc que dans ce cas pr ecis la carte des zones les plus utiles ` a la discrimination na et e contruite qu` a partir des sous-r egions de 15 15 pixels. Un autre moyen de se convaincre que la normalisation est trop p enalisante est de voir que la normalisation par la racine carr ee de la surface plut ot que la surface fait resurgir la participation des sous-r egions de dimensions moyennes a ` la carte des zones les plus discriminatives (voir gure 5.7).

Figure 5.7: Carte obtenue par lutilisation du maximum ` a la place du moyennage dans lex ecution de la m ethode (c) et la diminution de la p enalit e impos ee aux sous-r egions de grande dimension.

La deuxi` eme contribution de cette m ethode (d) permet de conserver lutilisation de la normalisation par la surface dont le but premier est de permettre de cadrer au mieux les zones les plus utiles ` a la discrimination en p enalisant la participation a ` la carte nale des sous-r egions de surface inutilement trop grande. Une fois la m ethode (d) au point, il sera m eme possible dutiliser la normalisation par une puissance de la surface comme 60

Deuxi` eme contribution

un param` etre de pr ecision de la carte des zones les plus utiles a ` la discrimination. Le coeur de la deuxi` eme contribution est la transformation des r esultats de taux de bonnes classications des sous-r egions sur lensemble de validation a ` une expression de la fraction dinformations discriminatives contenues dans la sous-r egion. Lid ee de base de cette approche vient du fait que si la fraction dinformations discriminatives etait utilis ee au lieu du taux de bonnes classications, la normalisation lors de lutilisation du maximum ` a la place de la moyenne naurait pas leet ennuyeux sur la carte nale d ecrit plus haut : en reprenant lexemple on obtient des fractions dinformations discriminatives normalis ees de 0% pour la sous-r egion de 15 15 pixels ne contenant aucune zone discriminative et de 0.111% pour la sous-r egion de 15 30 pixels contenant une zone discriminative. La formule pour passer du taux de bonnes classications C a ` la fraction dinformations discriminatives QI dans le cas des ensembles articiels est not ee ci-dessous et son graphe est repr esent e` a la gure 5.8 : QI = 1 log0.25 (C ) (5.2)

La relation 5.2 a et e obtenue en partant de sa r eciproque plus intuitive, le taux de bonnes classications en fonction de la fraction dinformations discriminatives. Celle-ci se construit en raisonnant comme suit sur lidentication des personnes articielles : Si aucun bit nest connu, deux sont devin es au hasard et cela donne une chance sur 4 de trouver la bonne identit e; si 1 bit est connu, 1 est devin e au hasard et cela donne une chance sur 2 de trouver la bonne identit e; si 2 bits sont connus, aucun nest devin e au hasard et cela donne 100% de chance de trouver la bonne identit e. La g en eralisation de ce concept pour N bits -iaire donne la formule 5.3. C = 1
N (1QI )

(5.3)

o` u N est le nombre total d el ements discriminatifs et N (1 QI ) le nombre d el ements discriminatifs ind etermin es en fonction de la fraction dinformations discriminatives. La r eciproque de 5.3 donne la fonction g en eralis ee de la fraction dinformations discriminatives par rapport au taux de bonnes classications :

QI = 1 log(1/)N (C )

(5.4)

La m ethode (d) apporte donc deux contributions : la premi` ere est lutilisation du maximum a ` la place de la moyenne qui permet de diminuer la tendance de la m ethode (c) ` a gommer les contours et diminuer la pr ecision de la carte. La seconde transforme 61

Figure 5.8: Fonction de conversion de taux de bonnes classications vers fraction dinformations discriminatives contenue dans la sous-r egion pour le cas des ensembles articiels compos es de quatre visages. Trois points cl es sont indiqu es sur la gure : le point (0.25, 0) qui correspond ` a la situation o` u aucune information nest disponible et o` u le taux de bonnes classications correspond ` a la chance de didentier au hasard la bonne personne. Le point (0.5, 0.5), ce cas repr esente une r egion qui contient 50% de linformation discriminative n ecessaire a une identication correcte, cest ` ` a dire un bit sur un nombre binaire de 2 bits dans le cas des ensembles articiels. La chance de trouver au hasard la bonne personne est donc de 50%. Le point (1, 1) o` u toute linformation discriminative est connue et donc o` u le taux de bonnes classications est maximum.

les r esultats de taux de bonnes classications en fraction dinformations discriminatives contenue dans la sous-r egion consid er ee et permet ainsi dutiliser la normalisation par une puissance de la surface comme un param` etre de pr ecision de la carte nale des zones les plus utiles a ` la discrimination. En eet, lors de lassignation du score maximal, une puissance elev ee favorisera les grandes sous-r egions tandis quune puissance plus faible augmentera la participation des sous-r egions de faibles dimensions a ` la carte des zones les plus utiles a ` la discrimination.

62

5.5

Strat egie propos ee et r esultats

La m ethode nalement utilis ee pour la cr eation de la carte des zones les plus utiles ` a la discrimination est la m ethode (d) pr esent ee ci-dessus qui consiste a ` 1. Placer limage dentr ee de 60 60 pixels2 au centre dune grande image neutre de 180 180 pixels2 pour contrer les eets de bords. 2. D eterminer lensemble des sous-r egions dont la hauteur et la largeur sont inf erieures a ` 60 pixels pour la grande image de 180 180 pixels. 3. Tester pour toutes les sous-r egions le taux de bonnes classications quelle permettent dobtenir sur lensemble de validation. 4. Transformer les taux de bonnes classications en fraction dinformations discriminatives. 5. Normaliser les fractions dinformations discriminatives par une puissance de la surface pour diminuer la participation des sous-r egions de grande taille ` a la carte nale. Une puissance elev ee lannule compl` etement tandis quune puissance nulle les met sur un pied d egalit e et produit une carte peu pr ecise. 6. Pour chaque pixel rep erer toutes les sous-r egions qui lincluent et lui assigner la valeur de la sous-r egion qui, selon le test sur lensemble de validation, a la plus grande fraction dinformations discriminatives apr` es normalisation par une puissance de la surface.

Figure 5.9: Carte des zones les plus utiles ` a la discrimination obtenue par la m ethode nale (d). La normalisation sest faite par la racine quinzi` eme de laire et la carte a et e obtenue en ne consid erant que les r egions ont la position et les dimensions sont des multiples de 5.

63

Apr` es quelques essais pour trouver la puissance de surface id eale par laquelle il faut normaliser pour avoir un bon r esultat, la carte des zones les plus utiles a ` la discrimination est dress ee a ` la gure 5.9. Les zones les plus utiles sont les sourcils, le bas des yeux et les coins gauche et droit de la bouche. Dautres r esultats pr esent es a ` la gure 5.10 abondent aussi dans ce sens. N eanmoins, il faut signaler que ce r esultat ne ressort pas de mani` ere cat egorique a ` toutes les r esolutions et pour toutes les puissances de surface de normalisation. De plus, pour ce genre dobjectif, les visages constituant les ensembles dapprentissage et de validation devraient etre parfaitement r eguliers pour que les variations dinclinaison et de cadrage ne viennent pas biaiser les r esultats. Or les ensembles de visages utilis es ici etaient destin es a ` reproduire une situation r eelle de d etection de visages soumise ` a la contrainte du temps r eel et ` a plusieurs inclinaison des visages. Une autre remarque ` a faire est li ee a ` la r esolution de limage: comme lalgorithme de g en eration de la carte navait pas la possibilit e de tracer une limite de sous-r egions entre le bas des yeux et les sourcils, les deux sous-r egions contenant les sourcils et le contour inf erieur des yeux peuvent sav erer etre quelque peu d ecal ee. N eanmoins, cela ne remet pas en doute lobservation dun creux dimportance entre les sourcils et les yeux.

Figure 5.10: Deux autres congurations de test pour conrmer les r esultats obtenus ` a la gure 5.9. Ces deux cartes montrent quau niveau des yeux deux zones sont importantes : les sourcils et une zone situ ee plus bas. Ici seules les sous-r egions de hauteur 6 ont et e consid er ees pour des positions et des largeurs multiples de 3 (contrairement aux positions et dimensions multiples de 5 pour la gure 5.9)

Figure 5.11: Carte obtenue par la m ethode (c) avec une puissance daire de normalisation dun quinzi` eme. La carte est oue et ne permet pas de distinguer les d etails. Les raisons de ce ou sont expliqu ees a la section 5.4.4 p.59 et sont accompagn ` ees de la description de la m ethode (d) qui passe au dessus de ce probl` eme.

64

Il est int eressant maintenant de voir ce que donne lutilisation dune autre m ethode sur les ensembles de visages r eels. A cette n, le r esultat de la m ethode (c) avec les m eme param` etres est pr esent e` a la gure 5.11. Lobtention de la carte des zones les plus utiles a ` la discrimination ne sest donc pas faite sans mal mais a abouti a ` un r esultat qui apporte des informations pr ecises quant a ` la distribution des zones qui discriminent au mieux un visage (voir g 5.9).

5.6

Conclusion

Lobjectif de d epart etait de g en erer une carte indiquant les zones les plus utiles a ` la discrimination en vue daider a ` la recherche de la combinaison de sous-r egions qui donne le meilleur taux de bonnes classications (voir section 4.3). La t ache sest av er ee dicile et le d eveloppement dune strat egie de construction dune telle carte a permis de se pencher sur les el ements qui inuen caient le caract` ere discriminatif dune sous-r egion tels que le probl` eme du positionnement irr egulier du visage ou de parties de visage par rapport ` a la fen etre de d elimitation. Les principaux d es qui ont et e relev es sont leet d esastreux des eets de bord et la tendance des m ethodes simples de gommer les contours de la carte. Pour les identier et cerner leurs cons equences sur la carte nale, des ensembles articiels de donn ees ont et e g en er es et mis sur le banc dessai. Parmi les propositions qui ont nalement men e a ` la strat egie nale, une fonction associant la fraction dinformations discriminatives contenue dans une sous-r egion au taux de bonnes classications a constitu e un tournant dans le d eveloppement de la strat egie. La solution nalement adopt ee construit la carte a ` partir des taux de bonnes classications individuels des sous-r egions. Elle admet deux param` etres : le premier agit pendant la phase de normalisation des donn ees et permet de jouer sur la pr ecision de la carte nale en d efavorisant plus ou moins les sous-r egions de grande supercie. Le second concerne la r esolution de la carte nale. A c ot e de ces param` etres, il est possible de construire la carte a ` partir densembles de sous-r egions dont une des caract eristiques, telle quune dimension ou la surface, est comprise dans un intervalle particulier. Toutes ces possibilit es de congurer la g en eration de la carte des zones les plus utiles a ` la discrimination m` enent nalement ` a un large panel de cartes desquelles il est dicile de faire la synth` ese. Ainsi le premier param` etre de pr ecision sapparente ` a un bouton de mise au point qui produit une multitude de niveaux de r esultats correspondant ` a di erents niveaux de d efavorisation des sous-r egions de supercie elev ee. 65

La technique ne r epond donc pas enti` erement aux attentes de d epart mais r esout les premi` eres grosses emb uches a ` la g en eration dune telle carte. Je nai pas trouv e dindications pour maider dans la litt erature concernant la reconnaissance faciale que jai consult ee. Une des premi` eres etapes de la suite du d eveloppement de cette m ethode serait donc de regarder ce que peuvent apporter des techniques statistiques ou dimagerie. Les pr esents r esultats permettent den savoir un peu plus sur lorganisation des zones les plus utiles ` a la discrimination malgr e quils doivent encore faire lobjet de tests pour etre arm es avec certitude. Ainsi il semble que ce ne soit pas les zones comprenant compl` etement des el ements cl es du visage tels que les yeux, le nez ou la bouche qui sont les plus utiles a ` la discrimination mais des zones fronti` eres comme les bords de la bouche (sous doute moins soumis a ` des l egers d eplacements des l` evres causant lapparition des dents) ou la r egion inf erieure des yeux.

66

Chapitre 6 Impl ementation C++ et test des performances


6.1 Impl ementation

Lapplication a et e enti` erement impl ement ee en C++ (voir appendice A) et interfac ee avec Nao. Une capture d ecran de lapplication en fonctionnement est pr esent ee a ` la gure 6.1.

Figure 6.1: Capture d ecran de lapplication en fonctionnement. Deux personnes sont reconnues par lapplication qui leur attribue une couleur di erente. Les deux images t emoins en bas ` a gauche sont le r esultat de la phase de traitement de lillumination eectu ee durant le stage de reconnaissance.

67

Lenregistrement dun nouveau visage se commande par le clavier et il est aussi possible de commander lenregistrement sur le disque dur dun visage dans sa fen etre de d elimitation.

6.2

Test de la d etection des visages

Les tests de la d etection des visages ont et e eectu es car elle se trouve en amont du traitement de limage et conditionne donc tout le reste du traitement. Une bonne compr ehension et connaissance de ses capacit es est importante pour linterpr etation des r esultats de la reconnaissance faciale ou de tout autre traitement ult erieur. Deux el ements seront test es ici : lorientation en degr es des visages d etect es et le cadrage du visage dans son rectangle de d elimitation.

6.2.1

Orientations d etect ees

OpenCV fournit entre autres deux apprentissages utiles pour cette application : un pour d etecter les visages de face et le second pour les visages de prol. Jai voulu en savoir plus sur les taux de d etection en fonction de lorientation du visage de ces deux m ethodes et jai donc men e lexp erience. Les r esultats sont pr esent es a ` la gure 6.2. Lapprentissage FRONTFACE donne des r esultats en faveur de son utilisation comme routine de localisation de visages pr esent es face a ` la cam era : une zone de d etection sup erieure a ` 94% s etend de -20 a ` 20 . Lapprentissage PROFILFACE vient soutenir le FRONTFACE en elargissant cette zone de d etection vers la gauche jusqu` a -70 .

6.2.2

Cadrage des visages

Les r esultats de la param etrisation montrent que les zones de discrimination sont toutes d eplac ees vers la gauche (voir gure 6.3), comme si lensemble des visages issus de la d etection etaient mis trop a ` gauche dans leur fen etre de d elimitation. Jai voulu conrmer ces r esultats en eectuant deux tests. Tout dabord, pour voir si cette asym etrie venait de mon code MatLab, jai r eeectu e les tests sur lensemble de validation ayant subi une sym etrie horizontale. Le r esultat est n egatif, mon code nest pas en cause. Le probl` eme doit donc provenir dune etape en amont: la d etection des visages ou les conditions dans lesquelles se sont d eroul ees les s eances photos desquelles sont issues les photos de la base de donn ees FERRET. Une premi` ere hypoth` ese serait que le cadrage du stage de d etection soit incorrect. Jai alors relev e manuellement la position des yeux, des coins des yeux pour chacune des 60 images de lensemble dapprentissage. Le r esultat est que la moyenne et la m ediane 68

Figure 6.2: Taux de d etection des apprentissages fournit avec OpenCV en fonction de lorientation du visage. La courbe verte correspond ` a lapprentissage pour la d etection des visages de face tandis que la bleue montre les performances de lapprentissage destin e` a d etecter les visages de prol. Les photos proviennent de la base de donn ees GRAY FERET. Les courbes ont et e construites ` a partir de tests portant sur 30 sujets pr esent es chacun selon 9 orientations di erentes s etalant uniform ement de -90 ` a 90 .

Figure 6.3: R esultats repr esentant les zones les plus utiles ` a la discrimination obtenus selon di erentes m ethodes d evelopp ees au chapitre 5 Obtenir une carte des zones utiles ` a la discrimination. Tous montrent un d ecalage des zones les plus utiles ` a la discrimination sur la gauche de limage.

des centres de gravit es des deux yeux sont d ecal es dun dixi` eme de pixel vers la gauche, ce qui nest pas susant pour provoquer lasym etrie observ ee dans 6.3. Une seconde hypoth` ese et que pour les visages inclin es a ` gauche ou ` a droite, lapprentissage de d etection fourni par OpenCV privil egie un positionnement r egulier de loeil gauche 69

a ` un positionnement r egulier de loeil droit, produisant plus deets n efastes dus au positionnement irr egulier de la fen etre de d elimitation (voir section 5.2 p.55 et gure 5.1 p.55) pour les parties du visage se trouvant ` a droite que pour celles se trouvant ` a gauche. La premi` ere observation des variances des positions en x et y relev ees manuellement pour loeil gauche et de loeil droit semblent abonder en ce sens mais il faudrait encore des tests pour valider lhypot` ese. Une derni` ere hypoth` ese serait que l eclairage durant les s eances de photo etait privil egi` erement situ ea ` la gauche des sujets. Ceci aurait provoqu e une augmentation de contraste sur la partie vue a ` gauche de la photo, apportant ainsi plus de d etails que les local binary patterns peuvent exploiter. Donc, on observe un d eplacement vers la gauche des zones riches en informations sur toutes les cartes g en er ees automatiquement. Un test simple de sym etrie centrale sur les donn ees dentr ee a permis d ecarter lhypoth` ese dun souci dans limpl ementation Matlab. Apr` es quelques tests, deux hypoth` eses a ` conrmer sont formul ees: (1) une favorisation par lapprentissage de d etection dOpenCV du placement r egulier de la partie gauche de limage et (2) des conditions dilluminations r eguli` eres favorisant lapparition dune zone plus contrast ee a ` gauche, soulignant les traits du visages et fournissant ainsi plus dinformations pour la discrimination. La premi` ere etape dans la suite des investigations est de conrmer ce d ecalage vers la gauche sur un autre ensemble de test dont le cadrage aura et e obtenu de la m eme fa con, cest-` a-dire par lalgorithme de Viola et Jones impl ement e par OpenCV.

6.3

Test de la reconnaissance des visages

Les taux de bonnes classications pour un ensemble de test comptant 60 visages di erents pour lapprentissage et 69 prises de vue de ces 60 visages pour le test sont pr esent es a ` la gure 6.4. Les m ethodes test ees sont la simple classication a ` partir des images dorigine, la classication utilisant les sous-r egions s electionn ees par la technique pr esent ee au chapitre 4 et idem avec les images ayant subi un traitement contre lillumination. Ce r esultat est a ` replacer dans son contexte: deux facteurs principaux le d emarque des situations de tests rencontr ees dans les articles de la litt erature. Les visages ont et e cadr es par lalgorithme de localisation de visages de Viola et Jones et aucune op eration visant a ` recentrer le visage par rapport a ` sa fen etre de d elimitation, ` a mettre le visage droit ou a ` gommer un background g enant na et e eectu ee. Par exemple, larticle de Deng et al. [16] obtenant des r esultats

70

Figure 6.4: Taux de bonnes classications obtenus ` a partir des images originales (BMP), des images originales et en utilisant la technique de la division en sous-r egions trait ees s epar ement (COMBI) et idem avec un pr etraitement dillumination (COMBI+ILLU).

avoisinant les 95% place les yeux au pixel pr` es dans une fen etre de d elimitation de 128 128 pixels2 . La dimension de limage est de 60 60 = 3600 pixels2 pour rejoindre les dimensions que lalgorithme rencontrera lors de son utilisation avec le robot Nao. Dans la litt erature, des dimensions sup erieures a ` 10000 pixels2 sont souvent rencontr ees [42, 4].

71

Conclusion
Lobjectif de ce m emoire etait de concevoir et dimpl ementer sur un petit robot humano de, Nao, une application de reconnaissance faciale capable, en temps r eel, de reconna tre les visages et de diriger le regard de Nao vers eux apr` es une seule prise de vue. Vu la quantit e de logiciels potentiels pouvant se baser sur cette application, celle-ci devait r epondre a ` des exigences de rapidit e et de robustesse des r esultats. En ce sens, la premi` ere partie de lapplication qui consiste a ` localiser les visages employe lalgorithme de Viola et Jones [38], largement reconnu comme m ethode fonctionnant en temps r eel et fournissant des r esultats robustes et ables. Il sest av er e que lalgorithme d etectait une proportion tr` es elev ee (> 98%) des visages pr esent es de face et plus de 94% des visages qui s ecartaient de la position frontale de moins de 20 . Ces r esultats sont consid er es amplement susants pour son utilisation par le logiciel d evelopp e. Les visages localis es sont extraits et font lobjet du traitement dillumination propos e par Tan et al. [33] qui est compos e de deux etapes majeures. Tout dabord l el evation ` a une puissance qui diminue linuence de lintensit e dillumination sur la couleur per cue dun pixel. Ensuite une ltration par di erence de gaussiennes qui supprime les basses fr equences contenant les eets non d esirables des ombres et les hautes fr equences contenant laliasing et le bruit. La seconde partie de lapplication soccupant de la reconnaissance des visages localis es convertit dabord limage en mod` eles binaires locaux et ensuite divise limage en sousr egions pouvant se chevaucher. Enn, un comptage des mod` eles binaires locaux est r ealis e pour chaque sous-r egion et les histogrammes ainsi obtenus servent de base a ` la comparaison dindividus. La conversion en mod` eles binaires locaux aboutit ` a une description de limage en termes des structures, coins ou ar etes, auxquelles appartiennent les pixels de limage. Ainsi, deux pixels de m eme couleur appartenant respectivement a ` une ar ete verticale et une ar ete horizontale auront deux mod` eles binaires locaux associ es di erents d evrivant

72

leurs types de structure (ici: deux ar etes) et leurs orientations (ici: verticale et horizontale). Cette description en termes de coins et dar etes est une premi` ere interpr etation de limage et donne une signication plus pertinente aux valeurs des pixels. La division peut se faire de beaucoup de mani` eres di erentes et certaines zones du visages ne sont parfois pas du tout consid er ees pour la classication. De la m eme fa con, certaines combinaisons sont plus aptes a ` reconna tre les visages que dautres. Trouver la meilleure combinaison de sous-r egions est dicile vu leur nombre. Ainsi, trouver la meilleure association de trois sous-r egions contenues dans un visage de 60 60 pixels2 , signie s electionner 1 combinaison parmi 6.2597 1018 candidats. La solution propos ee a ` cette situation est dop erer une pr es election. La technique consiste ` a classer les sous-r egions au sein de chaque cat egorie de dimensions et de pr es electionner ensuite la meilleure combinaison des meilleures sous-r egions de chaque cat egorie. La m ethode de pr es election a comme principaux d efauts de (1) ne s electionner au maximum quune sous-r egion par cat egorie de dimensions et (2) de ne pas garantir par son fonctionnement intrins` eque une pr es election dont la compl ementarit e des el ements accordera au classieur nal les meilleures performances. Une am elioration de la m ethode propos ee consisterait alors ` a diviser limage en plusieurs macro sous-r egions au sein desquelles des classements entre sous-r egions de m eme surface seraient eectu es. Ensuite chaque macro sous-r egion apporterait ses sous-r egions d elite ` a la pr es election.

Figure 6.5: R esultat de la param etrisation des sous-r egions trait ees s epar ement durant la reconnaissance. Les zones 1 et 2 ont un poids de 5 tandis que les deux autres ont un poids de 1.

La meilleure combinaison obtenue (voir g. 6.5) en utilisant la m ethode d evelopp ee est constitu ee de petites sous-r egions inclues dans des sous-r egions de plus grandes di73

mensions qui englobent la totalit e des el ements cl es du visage tels que les yeux, la bouche et le nez. Or, il etait attendu plusieurs sous-r egions de dimensions moyennes ne se chevauchant que l eg` erement. Ce r esultat est probablement inuenc e par le nombre de sous-r egions consid er ees impos e` a quatre. L etape suivante du d eveloppement serait donc de voir, avec un ordinateur le permettant, si ces sous-r egions de grande taille sont toujours pr esentes pour une combinaison dun nombre plus el ev e. Les plus petites sous-r egions se r epartissent sur un seul c ot e du visage, ph enom` ene qui pourrait etre du a ` la sym etrie du visage qui rend inutile la connaissance dune sousr egion si son homologue sym etrique est d ej` a connu. Ce dernier r esultat est int eressant et devrait faire lobjet de plus d etudes pour le g en eraliser. Dans le cas dun nombre xe de 4 sous-r egions combin ees, lanalyse de la distribution des poids fait remarquer que les sous-r egions de petites dimensions centr ees sur des el ements cl es du visage semblent aider le reconnaisseur de visage a ` se diriger vers la bonne d ecision par de petites inuences tandis que les sous-r egions de grandes dimensions indiquent la direction g en erale. Au vu de cette m ethode de pr es election qui ne garantit pas dobtenir la combinaison dont les sous-r egions sont les plus compl ementaires, ce m emoire propose une m ethode de g en eration de carte dont la consultation permettrait de rep erer tout de suite les zones du visage a ` consid erer prioritairement. Le d eveloppement dune telle m ethode sest r ev el e plus ardu que pr evu et les principaux probl` emes ` a r esoudre ont et e les cons equences n egatives des eets de bord et la tendance au gommage des contours de la carte lors de lutilisation de m ethodes simples. Pour identier ces probl` emes et cerner leurs cons equences sur la carte nale, des ensembles articiels de donn ees ont et e g en er es et mis sur le banc dessai. Parmi les propositions qui ont nalement men e` a la strat egie nale, une fonction associant la fraction dinformations discriminatives contenue dans une sous-r egion au taux de bonnes classications a constitu e un tournant. La solution nalement adopt ee construit la carte a ` partir des taux de bonnes classications individuels des sous-r egions. Elle admet deux param` etres : le premier agit pendant la phase de normalisation des donn ees et permet de jouer sur la pr ecision de la carte nale en d efavorisant plus ou moins les sous-r egions de grande supercie. Le second concerne la r esolution de la carte nale. A c ot e de ces param` etres, il est possible de construire la carte a ` partir densembles de sous-r egions dont une des caract eristiques, telle quune dimension ou la surface, est comprise dans un intervalle particulier. Toutes ces possibilit es de congurer la g en eration de la carte des zones les plus utiles 74

a ` la discrimination m` enent nalement ` a un large panel de cartes desquelles il est dicile de faire la synth` ese. Ainsi le premier param` etre de pr ecision sapparente ` a un bouton de mise au point qui produit une multitude de niveaux de r esultats correspondant ` a di erents niveaux de d efavorisation des sous-r egions de supercie elev ee. La technique ne r epond donc pas enti` erement aux attentes de d epart mais r esout les premi` eres grosses emb uches a ` la g en eration dune telle carte. Une des premi` eres etapes de la suite du d eveloppement de cette m ethode serait de regarder ce que peuvent apporter des techniques statistiques ou dimagerie.

Figure 6.6: Carte des zones les plus utiles ` a la discrimination.

Les pr esents r esultats (voir g. 6.6) permettent den savoir un peu plus sur lorganisation des zones les plus utiles a ` la discrimination malgr e quils doivent encore faire lobjet de tests pour etre arm es avec certitude. Ainsi il semble que ce ne soit pas les zones comprenant compl` etement des el ements cl es du visage tels que les yeux, le nez ou la bouche qui sont les plus utiles ` a la discrimination dans le cas de lutilisation dhistogrammes de mod` eles binaires locaux, mais les zones fronti` eres comme les bords de la bouche (sans doute moins soumis a ` des l egers d eplacements des l` evres causant lapparition des dents) ou la r egion inf erieure des yeux. Le logiciel nalement con cu reconna t 85.5% des visages pr esent es pour une base de visages de 60 el ements. Avant d etre compar e aux r esultats obtenus dans la litt erature, une remarque importante est a ` faire. Pour reproduire au mieux les conditions r eelles dex ecution de lapplication, les visages utilis es lors des tests ont et e extraits dimages originales de la base de donn ees FERRET par lalgorithme de localisation des visages de Viola et Jones impl ement e par OpenCV. Par cons equent, les visages des ensembles dapprentissage et de test pr esentaient des variations d echelles, de cadrages et dinclinaisons des visages (visages pench es a ` droite ou ` a gauche jusqu` a 7 ). 75

De plus, pour reproduire les dimensions des visages qui seront extraits du champ visuel de Nao en conditions r eelles, les visages utilis es lors des tests avaient des dimensions de 60 60 pixels2 . Les r esultats obtenus dans la litt erature atteignent des valeurs sup erieures a ` 95% mais font souvent recours a ` des recadrages et mises ` a l echelle manuels placant les el ements cl es du visage au pixel pr` es dans une fen etre de d elimitation de surface sup erieure ` a 100 100 pixels2 [42, 4, 16]. Les points cl es de ce m emoire sont: La proposition dune m ethode de s election dune combinaison de sous-r egions pour la classication des visages qui supporte le chevauchement. La proposition dune m ethode de g en eration de cartes des zones les plus utiles a ` la discrimination. La mise en evidence des r oles jou es par les petites et les grandes sous-r egions dans une combinaison performante. La mise en evidence du r ole des zones fronti` eres des el ements cl es du visage dans la reconnaissance faciale. La conception dun logiciel de reconnaissance sur le robot Nao en tenant compte de ses limitations mat erielles. Linterpr etation des mod` eles binaires locaux en termes dar etes et de coins. Linterpr etation de la division et de la conversion en histogrammes comme moyen de moduler la quantit e dinformations spatiales utilis ee pour la classication des visages. La proposition dutiliser la distance entre les centres de gravit e de mod` eles binaires locaux identiques comme information spatiale au sein dune sous-r egion. Une r eexion sur ce que pourrait apporter une meilleure collaboration des syst` emes de poursuite et de reconnaissance des visages. Une r eexion sur la di erence entre le temps de rafra chissement et le temps de r eaction dun syst` eme. La transposition du concept de limage int egrale ` a celui de lhistogramme int egral sans laquelle la plupart des simulations de ce m emoire naurait pas pu etre effectu ee. La suite du travail pourrait se concentrer sp eciquement sur la g en eration de cartes des zones les plus utiles ` a la discrimination et la s election de la meilleure combinaison de 76

sous-r egions pour la classication. Je propose tout dabord lam elioration de la gestion de la m emoire et du processeur des algorithmes utilis es et lemploi de machines plus puissantes pour atteindre des r esolutions plus elev ees et des nombres de sous-r egions par combinaison plus grands. Ensuite je conseille lutilisation de base de visages parfaitement homog` enes en ce qui concerne le cadrage, les poses et les inclinaisons des visages. Cela permettrait dobtenir des r esultats plus pr ecis qui augmenteraient les connaissances concernant la r epartition des zones les plus utiles a ` la discrimination dans le cas de la classication par comparaison dhistogrammes de mod` eles binaires locaux. Ensuite, ces connaissances en situation id eale serviraient ` a mieux appr ehender le probl` eme de la reconnaissance faciale en conditions r eelles o` u les visages sont soumis ` a des variations dinclinaison, dorientation, dillumination et dexpression.

77

Bibliographie
[1] http://www.aldebaran-robotics.com/. [2] http://opencv.willowgarage.com/wiki/. [3] http://face.nist.gov/colorferet/release agreement v1.html. [4] Timo Ahonen, Abdenour Hadid, and Matti Pietik ainen. Face description with local binary patterns: Application to face recognition. IEEE Transactions on Pattern Analysis and Machine Intelligence, 28(2006):20372041, 2006. [5] Alberto Albiol, David Monzo, Antoine Martin, Jorge Sastre, and Antonio Albiol. Face recognition using hog-ebgm. Pattern Recognition Letters, 29(10):15371543, 2008. [6] Gaoyun An, Jiying Wu, and Qiuqi Ruan. An illumination normalization model for face recognition under varied lighting conditions. Pattern Recognition Letters, 31(9):1056 1067, 2010. [7] Peter N. Belhumeur, Jo ao P. Hespanha, and David J. Kriegman. Eigenfaces vs. sherfaces: Recognition using class specic linear projection. In Computer Vision ECCV 96, volume 1064/1996 of Lecture Notes in Computer Science, pages 4358. Springer, Heidelberg, 1996. [8] David Beymer and Tomaso Poggio. Face recognition from one example view. In Fifth International Conference on Computer Vision (ICCV95), 1995. [9] Jie Chen, Xilin Chen, Jie Yang, Shiguang Shan, Ruiping Wang, and Wen Gao. Optimization of a training set for more robust face dectection. Pattern Recognition, 42(2009):28282840, 2009. [10] Songcan Chen, Jun Liu, and Zhi-Hua Zhou. Making da applicable to face recognition with one sample per person. Pattern Recognition, 37(7):15531555, 2004.

78

[11] Songcan Chen, Daoqiang Zhang, and Zhi-Hua Zhou. Enhanced (pc)2a for face recognition with one training image per person. 25(10):1173 1181, 2004. [12] Yong Cheng, Yingkun Hou, Chunxia Zhao, Zuoyong Li, Yong Hu, and Cailing Wang. Robust face recognition based on illumination invariant in nonsubsampled contourlet transform domain. Neurocomputing, 73(10-12):2217 2224, 2010. [13] Cheng-Chin Chiang, Wen-Kai Tai, Mau-Tsuen Yang, Yi-Ting Huang, and ChiJaung Huang. A novel method for detecting lips, eyes and faces in real time. Real-Time Imaging, 9(4):277287, 2003. [14] Charles K Chui. An Introduction to Wavelets. Academic Press, Boston, 2002. [15] Javier Ruiz del Solar and Julio Quinteros. Illumination compensation and normalization in eigenspace-based face recognition: A comparative study of dierent pre-processing approaches. Pattern Recognition Letters, 29(14):1966 1979, 2008. [16] Weihong Deng, Jiani Hu, Jun Guo, Weidong Cai, and Dagan Feng. Robust, accurate and ecient face recognition from a single training image: A uniform pursuit approach. Pattern Recognition, 43(5):1748 1762, 2010. [17] B. Fr oba and A. Ernst. Face detection with the modied census transform. In Proceedings of the 6th IEEE International Conference on Automatic Face and Gesture Recognition AFGR6th IEEE International Conference on Automatic Face and Gesture Recognition AFGR, pages 9196, Seoul, Korea, May 2004. [18] Yongsheng Gao and Yutao Qi. Robust visual similarity retrieval in single model face databases. Pattern Recognition, 38(7):1009 1020, 2005. [19] Peg Howland, Jianlin Wang, and Haesun Park. Solving the small sample size problem in face recognition using generalized discriminant analysis. Pattern Recognition, 39(2):277287, 2006. [20] Samuel Kadoury and Martin D. Levine. Face detection in gray scale images using locally linear embeddings. Computer Vision and Image Understanding, 105(1):1 20, 2007. [21] Wen-Chung Kao, Ming-Chai Hsu, and Yueh-Yiing Yang. Local contrast enhancement and adaptive feature extraction for illumination-invariant face recognition. Pattern Recognition, 43(5):1736 1747, 2010. Pattern Recognition Letters,

79

[22] Constatine Kotropoulos, Anastasios Tefas, and Ioannis Pitas. Frontal face authentication using morphological elastic graph matching. IEEE Transactions on Image Processing, 9(4):555560, 2000. [23] Ludmila I. Kuncheva and Christopher J. Whitaker. Feature subsets for classier combination: An enumerative experiment. In Multiple Classier Systems, volume Volume 2096/2001 of Lecture Notes in Computer Science, pages 228237. Springer, Heidelberg, 2001. [24] Kin-Man Lam and Hong Yan. An analytic-to-holistic approach for face recognition based on a single frontal view. IEEE Transactions on pattern analysis and machine intelligence, 20(7):673686, 1998. [25] Hung-Son Le and Haibo Li. Recognizing frontal face images using hidden markov models with one training image per person. In 17th International Conference on Pattern Recognition (ICPR04) - Volume 1, volume 1, pages 318321, 2004. [26] Tai Sing Lee. Image representation using 2d gabor wavelets. IEEE Trans. Pattern Analysis and Machine Intelligence, 18:959971, 1996. [27] P.J. Phillips, H. Wechsler, J. Huang, and P. Rauss. The feret database and evaluation procedure for face recognition algorithms. Image and Vision Computing J, 16(5):295306, 1998. [28] P.J. Phillips, H. Wechsler, J. Huang, and P. Rauss. The feret evaluation methodology for face recognition algorithms. IEEE Trans. Pattern Analysis and Machine Intelligence, 22:10901104, 2000. [29] H.A. Rowley, S. Baluja, and T. Kanade. Neural network-based face detection. IEEE Transactions on Pattern Analysis and Machine Intelligence, 20(1):2338, 1998. [30] H. Schneiderman and T. Kanade. Probabilistic modeling of local appearance and spatial relationships for object recognition. Computer Vision and Pattern Recognition, IEEE Computer Society Conference on, 0:45, 1998. [31] Xiaoyang Tan, Songcan Chen, Zhi-Hua Zhou, and Fuyan Zhang. Recognizing partially occluded, expression variant faces from single training image per person with som and soft knn ensemble. IEEE Transactions on Neural Networks 1, 16(4):875 886, 2005.

80

[32] Xiaoyang Tan, Songcan Chen, Zhi-Hua Zhou, and Fuyan Zhang. Face recognition from a single image per person: A survey. Pattern Recognition, 39(2006):17251745, 2006. [33] Xiaoyang Tan and Bill Triggs. Enhanced local texture feature sets for face recognition under dicult lighting conditions. In Analysis and Modelling of Faces and Gestures, volume 4778 of LNCS, pages 168182. Springer, oct 2007. [34] Antonio Torralba and Pawan Sinha. Detecting faces in impoverished images. Journal of Vision, 2(7):601, 2002. [35] Wen-Kwang Tsao, Anthony J.T. Lee, Ying-Ho Liu, Ting-Wei Chang, and Hsiu-Hui Lin. A data mining approach to face detection. Pattern Recognition, 43(3):1039 1049, 2010. [36] M. Turk and A. Pentland. Eigenfaces for recognition. Journal of Cognitive Neuroscience, 3(1):7186, January 1991. [37] Patricia Ray on Villela and Juan Humberto Sossa Azuela. Face description with local binary patterns: Application to face recognition. In MICAI 2002: Advances in Articial Intelligence, volume 2313/2002 of Lecture Notes in Computer Sciences, pages 282291. Springer, Heidelberg, 2002. [38] Paul Viola and Michael Jones. Robust real-time object detection. In Second international workshop on statistical and computational theories of vision, Vancouver, Canada, July 13 2001. [39] Paul Viola and Michael Jones. Robust real-time face detection. International Journal of Computer Vision, 57:137154, 2004. [40] Chao Wang and Yongping Li. Combine image quality fusion and illumination compensation for video-based face recognition. Neurocomputing, 73(7-9):1478 1490, 2010. [41] Haitao Wang, Stan Z Li, and Yangsheng Wang. Face recognition under varying lighting conditions using self quotient image. Automatic Face and Gesture Recognition, IEEE International Conference on, 0:819, 2004. [42] Jie Wang, K.N. Plataniotis, Juwei Lu, and A.N. Venetsanopoulos. On solving the face recognition problem with one training sample per subject. Pattern Recognition, 39(2006):17461762, 2006.

81

[43] Laurenz Wiskott, Jean-Marc Fellousc, Norbert Kr uger, and Christopher von der Malsburg. Face recognition by elastic bunch graph matching. IEEE Trans. Pattern Anal. Mach. Intell., 19(7):775779, 1997. [44] Jianxin Wu, S. Charles Brubaker, Matthew D. Mullin, and James M. Rehg. Fast asymmetric learning for cascade face detection. IEEE Transactions on pattern analysis and machine intelligence, 30(3):369382, 2008. [45] Jianxin Wu and Zhi-Hua Zhou. Face recognition with one training image per person. Pattern Recognition Letters, 23(14):17111719, 2002. [46] Li Xiaohua, Kin-Man Lam, Shen Lansun, and Zhou Jiliu. Face detection using simplied gabor features and hierarchical regions in a cascade of classiers. Pattern Recognition Letters, 30(2009):717728, 2008. [47] Quan xue Gao, Lei Zhang, and David Zhang. Face recognition using da with single training image per person. Applied Mathematics and Computation, 205(2):726734, 2008. [48] Jian Yang, David Zhang, Alejandro F. Frangi, and Jing yu Yang. Two-dimensional pca: A new approach to appearance-based face representation and recognition. IEEE Transactions on pattern analysis and machine intelligence, 26(1):131137, January 2004. [49] Ming-Hsuan Yang, David J. Kriegman, and Narendra Ahuja. Detecting faces in images : A survey. IEEE Transactions on pattern analysis and machine intelligence, 24(1):17461762, 2002. [50] Qiong Yang and Xiaoqing Ding. Symmetrical pca in face recognition. In ICIP (2), pages 97100, 2002. [51] Hua Yu and Jie Yang. A direct lda algorithm for high-dimensional data with application to face recognition. Pattern Recognition, 34(10):2067 2070, 2001. [52] Stefanos Zafeiriou, Anastasios Tefas, and Ioannis Pitas. The discriminant elastic graph matching algorithm applied to frontal face verication. Pattern Recognition, 40(10):2798 2810, 2007. [53] W. Zhao, R. Chellappa, P.J. Phillips, and A. Rosenfeld. Face recognition : a literature survey. ACM Computing Surveys, 28:399458, 2003.

82

[54] Wenlong Zheng and Suchendra M. Bhandarkar. Face detection and tracking using a boosted adaptive particle lter. Journal of Visual Communication and Image Representation, 20(1):9 27, 2009. [55] Xiao-Sheng Zhuang and Dao-Qing Dai. Inverse sher discriminate criteria for small sample size problem and its application to face recognition. Pattern Recognition, 38(11):21922194, 2005. [56] Xuan Zou, J. Kittler, and K. Messer. Illumination invariant face recognition: A survey. In First IEEE International Conference on Biometrics : Theory, Applications, and Systems, pages 18, Crystal City, VA, September 2007.

83

Appendices

84

Appendix A Impl ementation C++ : la librairie ImProc


Le module de reconnaissance est con cu pour etre utilis e ` a partir de nimporte quelle source visuelle. Il est contenu dans une librairie statique pour ensuite etre li ee a ` nimporte quel projet. En quelques minutes seulement, une application capable de reconna tre des personnes peut etre con cue. Ainsi, pour l elaboration de ce pr esent m emoire, une application vid eo dune trentaine de lignes li ee ` a la libraire ImProc est d ej` a capable de localiser, m emoriser et reconna tre des individus. Le module re coit en entr ee une image sous le format IplImage de la librairie OpenCV. Celle-ci est ensuite trait ee et le r esultat (nombre de personnes pr esentes, leurs positions et leurs identit es) est directement utilisable pour des t aches dordre sup erieur tel que la cr eation dun historique des rencontres o` u l elaboration dun mouvement de la cam era vers un individu en particulier. Larchitecture de la librairie est d etaill ee dans la section A.2.

A.1

Les librairies utilis ees

Pour l elaboration de ce module, plusieurs libraires externes ont et e utilis ees : OpenCV ( Open Source Computer Vision ) est une librairie initialement d evelopp ee par Intel qui fournit plus de 500 algorithmes pour la vision par ordinateur en temps r eel. Lalgorithme de Viola et Jones y est impl ement e et des apprentissages sont fournis. Ainsi OpenCV peut d ej` a localiser les visages, les yeux, les bouches ou dautres parties du corps. GTK ( Gimp toolkit ) est une librairie destin ee a ` la cr eation dinterfaces visuelles. Elle permet aussi linteraction avec le clavier et la souris. 85

A.2

La librairie ImProc

Cette section d ecrit larchitecture de la librairie ImProc que jai d evelopp ee dans le cadre du m emoire. Les el ements cl es sont d ecrit bri` evement ci-dessous tandis quune vue densemble est propos ea ` la gure A.1. Display : Cet objet sera charg e de lachage des r esultats ` a l ecran. Il relaie via ImgBuerOUT linformation visuelle g en er ee par la ImProc a ` la librairie GTK qui soccupe ensuite de son achage ` a l ecran. Il est constitu e dun threath qui v erie r eguli` erement sil y a une nouvelle information ` a acher a ` l ecran. ImageBuerIN : Il sagit du tampon dans lequel est charg e une image brute ` a traiter. ImageBuerOUT : Lors du traitement de limage brute, celle-ci se voit modi ee par lajout de rectangles indiquant lemplacement des visages, de texte, etc. Cette image trait ee est stock ee dans ImageBuerOUT, lue par Display et envoy e pour achage. LogWriter : Objet destin e` a l ecriture dinformation issue de lex ecution dans des chiers. Lacc` es au disque dur est souvent synonyme de ralentissement or nous cherchons a ` construire une application en temps r eel. Cest pourquoi LogWriter stocke en m emoire RAM toutes les informations qui lui sont transmises au fur et a ` mesure. Il est ensuite possible de commander l ecriture sur disque dur ` a des moments plus appropri es, a ` la n de lex ecution de lapplication par exemple. ImProc : Le coeur de la librairie. Cest cet objet qui est charg e de la localisation, le tracking, lenregistrement et la reconnaissance des individus. Cest lui qui prend limage brute dans ImageBuer1 pour la traiter et la placer dans ImageBuer2. KBEvent : Cette objet permet aux autres (typiquement ImProc) de savoir si un intervention utilisateur a eu lieu. Typiquement il sagit de lordre denregistrer les personnes pr esentes, de prendre une photo ou de quitter lapplication. Il travaille en collaboration avec Display qui avec la librairie GTK d etecte les ev` enements claviers. Lapplication peut aussi utilis e KBEvent comme vecteur pour ordonner lenregistrement du visage courant ou pour quitter lapplication.

86

Figure A.1: Vue densemble de larchitecture de la Librairie ImProc cr e ee dans le cadre du m emoire. La boucle de traitement commence en haut ` a droite par lapplication qui capture limage dune source quelconque est la transmet ` a ImgBuer IN. Limage est ensuite trait ee par lobject ImProc(coeur de la librairie ImProc) en collaboration avec OpenCV. Le r esultat est stock e dans ImbBuer OUT pour achage. Lobjet KBEvent est con cu pour modier le comportement dImProc en fonction de messages re cu en cours d execution soit par lutilisateur soit par lapplication.

87

Vous aimerez peut-être aussi