333
TH ` ESE DE DOCTORAT pr´ esent´ ee par Rachid BELAROUSSI Ing´ enieur E.S.P.C.I. Pour obtenir le titre de Docteur de l’Universit´ e Pierre et Marie Curie Sp´ ecialit´ e : Informatique Localisation du visage dans des images et s´ equences vid´ eo couleur Soutenue le 12 D´ ecembre 2006 devant le jury compos´ e de M. Jean DEVARS Pr´ esident du jury Pr PRC UPMC M. Philippe BOLON Rapporteur Pr LISTIC Savoie M. Jack-G´ erard POSTAIRE Rapporteur Pr USTL Lille M. Christophe GARCIA Examinateur Ch FT R&D Rennes M. Franck DAVOINE Examinateur CR HEUDIASYC Compi` egne M. Renaud SEGUIER Examinateur EC SCEE Sup´ elec Rennes M. Maurice MILGRAM Directeur de th` ese Pr PRC UPMC M. Lionel PREVOST Examinateur MC PRC UPMC

Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

  • Upload
    rb117

  • View
    2.831

  • Download
    3

Embed Size (px)

DESCRIPTION

Thèse de doctorat en informatique de Rachid Belaroussi: "Localisation du visage dans des images et séquences vidéo couleur" - 12 Décembre 2006.280pages, 129 figures, 4 chapitres:1. Un modèle d'apparence du visage: le Diabolo2. Modélisation colorimétrique3. Méthodes de fusion pour la localisation du visage4. Détection et suivi du visages dans des séquences d'imagesRésumé:La localisation du visage est une étape préalable à de nombreux systèmes de vision robotique ou d'interaction homme-machine. Le problème traité consiste à déterminer la position du visage d'une personne présente dans une image en couleur. Notre approche est globale, elle opère une inspection de toutes les vignettes de l'image où le visage peut se trouver, pour déterminer celle qui le contient le plus vraisemblablement. Pour les images fixes, nous proposons d'exploiter trois représentations différentes de l'image, chacune étant traitée par un modèle spécifique. Un modèle d'apparence est appris sur les traits internes au visage (les yeux, la bouche et le nez), caractérisés par un codage particulier de l'orientation des points de contour d'une vignette. C'est un modèle génératif, le Diabolo, qui est un réseau de neurones auto-associateur entraîné sans contre-exemple. Un tel réseau est entraîné à fournir en sortie une image identique à celle mise en entrée en réalisant une compression spécialisée car la couche cachée comporte un nombre de cellules nettement inférieur à celui de l'entrée ou de la sortie. Une image de non visage est en principe mal compressée et donnera une erreur de reconstruction plus importante que dans le cas d'un visage. Un modèle géométrique d'ellipse s'appuyant sur une approche cumulative, la Transformée de Hough Généralisée, est employé. Il traite l'orientation des contours de l'image, et l'accumulateur qui en résulte est exploité pour composer un modèle du contour ovale du visage. Un modèle de couleur de la peau est aussi implémenté au niveau du pixel, plusieurs approches sont proposées pour estimer cet attribut du visage. La fusion des trois modèles a une architecture parallèle, et est opérée par une somme pondérée déterminée par une approche connexionniste. D'autres approches de la combinaison de modèles sont aussi présentées et comparées. Pour traiter le problème de la détection et du suivi de visages dans une séquence d'images en temps réel, un détecteur de visages issu de l'état de l'art, proposé par Viola et Jones, est activé périodiquement produisant les cibles à poursuivre. La distribution de la teinte chair d'une cible est estimée par une approche non paramétrique. Afin d'éviter les problèmes de dérive du modèle de teinte chair, celui-ci n'est pas adapté au cours de la séquence mais renouvelé lorsque le visage est détecté avec certitude à nouveau, ce qui permet au système implémenté de s'adapter de manière plus robuste aux conditions d'éclairement. Le modèle de teinte chair est ensuite exploité pour déterminer la localisation du visage représenté par une ellipse : une segmentation en composante connexe et une approche statistique, le Camshift couplé, introduit par Bradsky, sont comparés en termes d'efficacité et de rapidité. mots-clés: détection/localisation du visage, suivi en temps réel, combinaison d'experts, approche global, réseaux de neurones, modèles colorimétriques, filtres dits de Haar, mean shift, Camshift. key-word: face detection/ localization, real time tracking, experts combination, global approach, neural networks, color model, Haar-like filter, mean shift, Camshift.

Citation preview

Page 1: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

THESE DE DOCTORAT

presentee par

Rachid BELAROUSSIIngenieur E.S.P.C.I.

Pour obtenir le titre de

Docteur de l’Universite Pierre et Marie Curie

Specialite : Informatique

Localisation du visage dans des imageset sequences video couleur

Soutenue le 12 Decembre 2006 devant le jury compose de

M. Jean DEVARS President du jury Pr PRC UPMCM. Philippe BOLON Rapporteur Pr LISTIC SavoieM. Jack-Gerard POSTAIRE Rapporteur Pr USTL LilleM. Christophe GARCIA Examinateur Ch FT R&D RennesM. Franck DAVOINE Examinateur CR HEUDIASYC CompiegneM. Renaud SEGUIER Examinateur EC SCEE Supelec RennesM. Maurice MILGRAM Directeur de these Pr PRC UPMCM. Lionel PREVOST Examinateur MC PRC UPMC

Page 2: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006
Page 3: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

Resume

La localisation du visage est une etape prealable a de nombreux systemes devision robotique ou d’interaction homme-machine. Le probleme traite consiste adeterminer la position du visage d’une personne presente dans une image en cou-leur. Notre approche est globale, elle opere une inspection de toutes les vignettesde l’image ou le visage peut se trouver, pour determiner celle qui le contient leplus vraisemblablement.

Pour les images fixes, nous proposons d’exploiter trois representations differentesde l’image, chacune etant traitee par un modele specifique. Un modele d’appa-rence est appris sur les traits internes au visage (les yeux, la bouche et le nez),caracterises par un codage particulier de l’orientation des points de contour d’unevignette. C’est un modele generatif, le Diabolo, qui est un reseau de neuronesauto-associateur entraıne sans contre-exemple. Un tel reseau est entraıne a fourniren sortie une image identique a celle mise en entree en realisant une compressionspecialisee car la couche cachee comporte un nombre de cellules nettement inferieura celui de l’entree ou de la sortie. Une image de non visage est en principe mal com-pressee et donnera une erreur de reconstruction plus importante que dans le casd’un visage. Un modele geometrique d’ellipse s’appuyant sur une approche cumu-lative, la Transformee de Hough Generalisee, est employe. Il traite l’orientation descontours de l’image, et l’accumulateur qui en resulte est exploite pour composerun modele du contour ovale du visage. Un modele de couleur de la peau est aussiimplementer au niveau du pixel, plusieurs approches sont proposees pour estimercet attribut du visage. La fusion des trois modeles a une architecture parallele,et est operee par une somme ponderee determinee par une approche connexion-niste. D’autres approches de la combinaison de modeles sont aussi presentees etcomparees.

Pour traiter le probleme de la detection et du suivi de visages dans une sequenced’images en temps reel, un detecteur de visages issu de l’etat de l’art, propose parViola et Jones, est active periodiquement produisant les cibles a poursuivre. Ladistribution de la teinte chair d’une cible est estimee par une approche non pa-rametrique. Afin d’eviter les problemes de derive du modele de teinte chair, celui-cin’est pas adapte au cours de la sequence mais renouvele lorsque le visage est detecteavec certitude a nouveau, ce qui permet au systeme implemente de s’adapter demaniere plus robuste aux conditions d’eclairement. Le modele de teinte chair estensuite exploite pour determiner la localisation du visage represente par une el-lipse : une segmentation en composante connexe et une approche statistique, leCamshift couple, introduit par Bradsky, sont compares en termes d’efficacite et derapidite.

Mots cles : detection/localisation du visage, suivi en temps reel, combinaisond’experts, approche global, reseaux de neurones, modeles colorimetriques, filtresdits de Haar, mean shift, Camshift.

Page 4: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006
Page 5: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

Abstract

Face localization is the first stage in many vision based applications and inhuman-computer interaction. The problem is to define face location of a person ina color image. Our approach is global, the face is searched at every location of theimage, to find the one with the highest likelihood.

In still images, we process three different image representations, each one istreated by a specific expert. An appearance-based model is trained to model facialfeatures (eyes, nose, mouth) represented by a specific coding of edge orientationof a sub-image. It is a generative model, called Diabolo, an auto-associator neuralnetwork trained without negative example. This network is trained to produce anoutput identical to its input by operating a specialized compression, as the hiddenlayer has much less unit than the input or output layer. A non face image wouldbe badly compressed and gives a reconstruction error higher than for a face image.An ellipse model based on the Generalized Hough Transform is built. It processesthe image orientation of the edges, and the resulting accumulator is used to modelthe elliptical shape of a face. A skin color model is also used at the pixel leveland several approaches are proposed to estimate this visual cue. The combinationof these three models is done in a parallel way, by a weighted sum built usinga neural approach. Other approaches of expert combination are also investigatedand compared.

For face detection and tracking in real time, a state of the art face detector, de-velopped by Viola and Jones, is periodically activated across the sequence to definethe targets to track. Skin color distribution is estimated using a non parametricapproach. To avoid drifting in color estimate, this model is not updated during thesequence but renewed whenever the face is detected again, that gives the abilityto our system to cope with different lighting conditions in a more robust way. Skincolor model is then used to localize the face represented by an ellipse : connectedcomponent segmentation and a statistical approach, namely the coupled Camshiftof Bradsky, are compared in terms of efficiency and speed.

Keywords : face detection/ localization, real time tracking, experts combina-tion, global approach, neural networks, color model, Haar-like filter, mean shift,Camshift.

Page 6: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006
Page 7: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

Remerciements

Je dois remercier Maurice Milgram pour m’avoir confie ce projet difficile, bienque l’image n’etait pas ma specialite. Tu as su me donner tous les outils necessairea sa realisation : je connais peu de thesard qui ont la chance d’avoir un directeuraussi actif, ayant autant de connaissances et n’hesitant pas a les mettre en oeuvreau service de ses proteges. Pour les nombreux missions aussi, je ne pourrais jamaiste les rendre, mais tu auras droit a quelques photos ! Pour les nombreuses correc-tions que tu as apporte a ce memoire, pour tout.A ce propos je tiens a remercier Lionel Prevost, a qui pas une tournure fantaisisten’echappe, j’ai bien realise l’importance du travail de relecture que toi et Mauriceavez fais, je vous exprime ici toute ma gratitude.Je tiens a remercier Philippe Bolon et Jack-Gerard Postaire, pour me faire l’hon-neur de rapporter ce travail et pour leur lecture attentive de ce manuscrit.Merci bien sur a tous les membres de ce jury, pour avoir repondu a mon invitationet pour l’interet qu’ils ont porte a mes travaux : Renaud Seguier, pour le seminairequ’on a realise ensemble a Paris et ton invitation a Rennes, Franck Davoine, pourla journee GDR-ISIS ou j’ai eu l’occasion de me confronter a une salle comble,Christophe Garcia, pour nos balades a Zagreb, et enfin Jean Devars, a doubletitre, pour avoir accepter de presider ce jury, et pour la confiance que tu m’asaccorde pour assurer les TP de traitements d’images. Ce memoire ne peut etre queplus beau avec tous vos noms en couverture !Merci a Hamid Kokabi de m’avoir ouvert les portes de l’EPU, et a Adrien Sentzpour m’avoir appris tout les secrets d’un micro-controleur, du timer a la transmis-sion serie, merci milles fois pour ta patience, c’est un plaisir de travailler avec toi !Merci a Benoit Forget de m’avoir propose des enseignements en traitement dusignal, Catherine Achard et Jean Luc Zarader pour le filtrage numerique, cet en-seignement a necessite un investissement que je n’aurais pas imagine, mais je suisbien content de l’assurer a nouveau cette annee. Merci Mohammed Chetouani pourm’avoir aide a y voir plus clair dans cette matiere.Je gagne des points a chaque fois que je te cite Maurice : merci pour les TP decompression d’images, et pour les longues explications sur la DCT.Enfin merci a Jean Philippe pour tes conseils avises sur Latex, a mon ex-voisinCedric pour ton amitie, et a tous les autres membres du laboratoire pour ne pasvous facher quand je ne viens pas manger avec vous !

Page 8: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006
Page 9: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

Table des matieres

Introduction 1

1 Un modele d’apparence du visage : le Diabolo 51.1 Approche globale de la detection et de la localisation du visage :

etat de l’art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.1.1 Methodes s’appuyant sur la determination d’un sous espace 61.1.2 Approches exploitant une representation frequentielle de l’image 141.1.3 Approches basees sur une selection automatique de filtres

spatiaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191.1.4 Les approches connexionnistes . . . . . . . . . . . . . . . . . 24

1.2 Presentation du detecteur de Viola&Jones . . . . . . . . . . . . . . 301.2.1 Representation de l’image : filtres spatiaux et classifieurs

faibles associes . . . . . . . . . . . . . . . . . . . . . . . . . 301.2.2 Apprentissage d’une cascade de classifieurs forts . . . . . . . 351.2.3 Classification et arbitrage entre detections multiples . . . . . 40

1.3 Le Diabolo : un modele d’apparence generatif . . . . . . . . . . . . 441.3.1 Analyse en Composante Principale, en Composante Non Lineaire

et reseaux Diabolo . . . . . . . . . . . . . . . . . . . . . . . 451.3.2 Le reseau Diabolo applique a la localisation de visage . . . . 511.3.3 Choix des entrees et de l’architecture du Diabolo . . . . . . 531.3.4 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

2 Modelisation colorimetrique 632.1 Classification de la teinte chair : etat de l’art . . . . . . . . . . . . . 66

2.1.1 Les espaces colorimetriques . . . . . . . . . . . . . . . . . . 672.1.2 Modelisation de la teinte chair . . . . . . . . . . . . . . . . . 862.1.3 Definition explicite de la teinte chair . . . . . . . . . . . . . 862.1.4 Modeles non-parametriques de la couleur peau . . . . . . . . 902.1.5 Modeles parametriques de la couleur peau . . . . . . . . . . 952.1.6 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

2.2 Detection de la peau . . . . . . . . . . . . . . . . . . . . . . . . . . 1012.2.1 Apport d’une modelisation de la non-peau . . . . . . . . . . 1022.2.2 Apport de l’information de luminance . . . . . . . . . . . . . 111

Page 10: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

ii TABLE DES MATIERES

2.2.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1152.3 Segmentation des levres par approche colorimetrique . . . . . . . . 117

2.3.1 Analyse colorimetrique . . . . . . . . . . . . . . . . . . . . . 1182.3.2 Modelisation de la couleur par un systeme d’inferences floues 1232.3.3 Modelisation fine des contours de la bouche . . . . . . . . . 1282.3.4 Resultats experimentaux . . . . . . . . . . . . . . . . . . . . 1312.3.5 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . 136

3 Methodes de fusion pour la localisation du visage 1373.1 Fusion d’information . . . . . . . . . . . . . . . . . . . . . . . . . . 138

3.1.1 Generalites . . . . . . . . . . . . . . . . . . . . . . . . . . . 1383.1.2 Application a la detection de visage : etat de l’art . . . . . . 140

3.2 Combinaison d’algorithmes pour la localisation du visage : presentationde l’approche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1523.2.1 Modele de la peau . . . . . . . . . . . . . . . . . . . . . . . 1533.2.2 Modelisation de l’ovale du visage par Transformee de Hough

Generalisee . . . . . . . . . . . . . . . . . . . . . . . . . . . 1543.2.3 Presentation generale de la fusion d’experts pour la locali-

sation du visage . . . . . . . . . . . . . . . . . . . . . . . . . 1633.3 Algorithmes de fusion . . . . . . . . . . . . . . . . . . . . . . . . . . 165

3.3.1 Modele Bayesien : approches parametrique et non-parametrique1663.3.2 Systeme d’inferences floues . . . . . . . . . . . . . . . . . . . 1673.3.3 Approches neuronales et somme ponderee . . . . . . . . . . 172

3.4 Resultats experimentaux . . . . . . . . . . . . . . . . . . . . . . . . 1743.4.1 Mesure de performances sur la base d’images ECU . . . . . 1743.4.2 Comparaison des methodes de fusion . . . . . . . . . . . . . 1783.4.3 Analyse de la fusion par somme ponderee . . . . . . . . . . . 1853.4.4 Localisation du visage dans une sequence d’image . . . . . . 1893.4.5 Localisation de plusieurs visages dans une image . . . . . . . 1903.4.6 Localisation du visage a plusieurs echelles : comparaison avec

le detecteur de Viola&Jones . . . . . . . . . . . . . . . . . . 1913.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201

4 Detection et suivi de visages dans des sequences d’images 2074.1 Poursuite du visage . . . . . . . . . . . . . . . . . . . . . . . . . . . 208

4.1.1 Tour d’horizon du suivi de visage dans une sequence . . . . 2084.1.2 Suivi par detection ou localisation image par image . . . . . 2094.1.3 Suivi base sur un modele dynamique de la couleur peau . . . 2124.1.4 Suivi s’appuyant sur un modele d’apparence . . . . . . . . . 2224.1.5 Suivi utilisant un modele de la dynamique du visage . . . . . 2254.1.6 Suivi par combinaison de plusieurs attributs . . . . . . . . . 2284.1.7 Discussion et presentation de l’approche implementee . . . . 231

4.2 Choix du detecteur de visages . . . . . . . . . . . . . . . . . . . . . 235

Page 11: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

TABLE DES MATIERES iii

4.3 Poursuite du visage . . . . . . . . . . . . . . . . . . . . . . . . . . . 2414.3.1 Choix de l’espace colorimetrique . . . . . . . . . . . . . . . . 2414.3.2 Suivi par segmentation en composantes connexes . . . . . . 2524.3.3 Suivi de la teinte chair par Camshift couple . . . . . . . . . 2584.3.4 Comparaison des deux approches sur les sequences Microsoft 262

4.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269

Conclusion et Perspectives 273

Annexe 277

Page 12: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006
Page 13: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

Table des figures

1.1 Modelisation des visages et des non visages dans l’espace image.La premiere ligne illustre le cas des visages, la seconde celui desnon visages. De gauche a droite : base d’exemples a partitionner,distribution des exemples dans l’espace image (representee en 3D),les 6 Gaussiennes apres la procedure de k-moyennes, et les 6 centrescorrespondants. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

1.2 Sous espace FS associe a un cluster : �xp est la projection d’unevignette �x sur FS. D1 est la distance de Mahalanobis entre le centredu cluster et �xp. D2 est la distance euclidienne entre la vignette etsa projection (l’erreur de reconstruction). . . . . . . . . . . . . . . . 11

1.3 Decomposition de niveau 1 : l’image est decomposee en une imaged’approximation et 3 sous bandes. Decomposition de niveau trois :a chaque niveau une transformee en ondelettes discrete de l’imaged’approximation est operee pour obtenir les coefficients d’ondelettesdu niveau suivant. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

1.4 Les 4 filtres de Gabor representes dans le domaine des frequencesspatiales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

1.5 Les trois angles et le repere cartesien definissant la pose du visage.Les visages de la premiere ligne sont correctement detectes par l’ap-proche de Viola&Jones, les visages de la seconde ligne, un peu plusinclines, sont manques. . . . . . . . . . . . . . . . . . . . . . . . . . 20

1.6 Ensemble etendu de filtres de Haar introduit par Lienhardt&Maydt 21

1.7 Exemples de visages d’apprentissage utilises par Li&Zhang, et struc-ture de la pyramide de detecteurs. . . . . . . . . . . . . . . . . . . . 23

1.8 Vue d’ensemble de l’approche neuronale de Rowley&al : (a) Detectionde visages frontaux, (b) Estimation de la pose du visage candidat,rotation dans le plan de la vignette suivi du detecteur de visagesfrontaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

1.9 Architecture du reseau de neurones convolutionnel de Vaillant&al . 26

1.10 Architecture du reseau de neurones convolutionnel de Garcia&Delakis 29

1.11 Architecture du reseau Diabolo de Feraud&al . . . . . . . . . . . . 29

Page 14: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

iv TABLE DES FIGURES

1.12 Filtres rectangulaires dits de Haar mis en oeuvre par la cascade avecles poids ω associes aux rectangles blancs entiers et aux rectanglesgris qu’ils incluent . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

1.13 Un filtre rectangulaire est defini par sa forme, sa taille et sa positiondans la retine de recherche . . . . . . . . . . . . . . . . . . . . . . . 32

1.14 II(x0, y0) est, par definition, la somme des niveaux de gris situessous le rectangle A. La somme des pixels situes sous le rectangleRect est la somme de ceux situes sous les quatres rectangles moinsla somme des pixels sous les rectangles A et B, moins la somme despixels sous les rectangles A et C, plus la somme des pixels sous lerectangle A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

1.15 Cascade de classifieurs boostes : les classifieurs les plus simples etles plus rapides rejettent un maximum de fausses alarmes, les clas-sifieurs plus complexes se concentrent alors sur les zones de l’imageles plus proche de l’apparence d’un visage . . . . . . . . . . . . . . 36

1.16 Nombre de classifieurs faibles contenus dans chacun des 25 classi-fieurs boostes de la cascade 24x24 . . . . . . . . . . . . . . . . . . . 37

1.17 Les neufs filtres de Haar du premier classifieur fort F0 de la cascade 37

1.18 Les filtres de Haar du second etage F1 de la cascade . . . . . . . . . 39

1.19 Resultats du detecteur de visage, applique a l’image reduite d’unfacteur 2 de la sequence Antonio . . . . . . . . . . . . . . . . . . . 42

1.20 (a) Les faux positifs sont isoles, et le visage, trop incline pouretre detecte, est manque. (b) Un faux positif est isole, tandis queplusieurs vrais positifs sont detectes dans un meme voisinage del’image : le rectangle rouge, moyenne de ces detections, constitue lalocalisation finale du visage. . . . . . . . . . . . . . . . . . . . . . . 43

1.21 Architecture du reseau Diabolo : il implemente une compressionspecialisee des donnees car sa couche cachee contient beaucoup moinsde cellules que les entrees ou les sorties. . . . . . . . . . . . . . . . . 48

1.22 Architecture d’un Diabolo : la sortie desiree est egale a l’entree, lecorpus d’apprentissage est constitue d’exemples de visages unique-ment (pas de contre-exemple) . . . . . . . . . . . . . . . . . . . . . 52

1.23 Exemple de reconstruction d’images de visage et de non visage parun Diabolo entraine sur des images monochromes. . . . . . . . . . 53

1.24 Optimisation de l’entree du Diabolo : recapitulatif des manipulations 54

1.25 Construction du tableau DiaboloMap des erreurs de reconstructionsur l’image : les zones claires correspondent aux erreurs de recons-truction les plus faibles, les erreurs les plus elevees sont dans leszones les plus sombres . . . . . . . . . . . . . . . . . . . . . . . . . 55

1.26 Pre-traitement de la vignette appliquee en entree du Diabolo apprissur des images de luminance . . . . . . . . . . . . . . . . . . . . . . 56

1.27 Estimation du gradient de l’image . . . . . . . . . . . . . . . . . . . 57

Page 15: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

TABLE DES FIGURES v

1.28 Second codage des entrees : le champ de gradient de la vignette. . . 581.29 Codage s’appuyant sur l’orientation des points de contour de la

vignette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

2.1 Reponse spectrale des trois types de cone et de pastille de phosphored’un tube cathodique . . . . . . . . . . . . . . . . . . . . . . . . . . 68

2.2 Representation conique des couleurs dans HSV . . . . . . . . . . . . 762.3 Representation des couleurs dans le plan H-S pour differents niveaux

de luminance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 772.4 Processus opposes dans la vision des couleurs . . . . . . . . . . . . 802.5 Representation des couleurs dans le plan a-b a differents niveau de

luminances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 812.6 Fixez le point au centre des 4 rectangles colores pendant 30 secondes,

puis visualisez le point isole dans l’image du bas : les couleurs origi-nales sont permutes, le bleu devient jaune, le rouge devient vert etreciproquement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

2.7 Fixez l’image 30 secondes puis regarder une page blanche : le dra-peau des USA retrouve ces couleurs originales (le meme resultatpeut etre obtenu avec le drapeau du Portugual) . . . . . . . . . . . 85

2.8 Segmentation de la peau par seuillage dans le plan CbCr . . . . . . 882.9 Segmentation de la peau par seuillage dans le plan CbCr : (a) taux

de faux positifs eleve, (b) taux de faux negatifs important, . . . . . 882.10 Effet de la luminance sur la segmentation de la peau par seuillage

fixe dans le plan CbCr . . . . . . . . . . . . . . . . . . . . . . . . . 882.11 (a) Image originale. (b) Image convertie dans l’espace HSV : le canal

rouge represente les valeurs de V, le canal vert celles de S et le canalbleu celui de H. (c) Histogramme 2D dans le plan H-S des pixels depeau. (d) Retroprojection de l’histogramme (c) sur l’image HSV. . . 92

2.12 (a) et (d) Images originales. Images des probabilites de teinte chair :(b) et (e) teinte chair modelisee, (c) et (f) peau et non-peau modelisees. 94

2.13 Courbes COR de differents classifieurs de teinte chair (extrait de[PBC05]) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99

2.14 Exemples de la base ECU et de sa verite terrain . . . . . . . . . . . 1012.15 Distribution de la teinte chair dans le plan CbCr et seuillage rectan-

gulaire definissant la teinte chair propose dans [BPM05b] . . . . . . 1032.16 Couleurs peau et non-peau dans le plan CbCr : (a) distribution de

la teinte chair, (b) distribution de la non-peau, (c) rapport de vrai-semblance modelisant la peau et la non-peau dans ce plan . . . . . 105

2.17 Courbes COR du modele de teinte chair (en bleu) et du modele decouleur peau et non-peau (en jaune), dans le plan CbCr . . . . . . . 106

2.18 Courbes COR du classifieur Bayesien modelisant de peau (en bleu)et de celui modelisant la peau et la non-peau (en rouge) dans le planHS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107

Page 16: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

vi TABLE DES FIGURES

2.19 (a) Distribution de la non-peau dans le plan HS. (b) Distributionde la non-peau apres elimination de la case (0,0). (c) Representationdes couleurs dans le plan HS, pour une luminance donnee . . . . . 109

2.20 (a) Densite de probabilite conditionnelle de la couleur peau, (b)rapport de vraisemblance, dans le plan HS . . . . . . . . . . . . . . 110

2.21 Courbes COR pour differentes tailles d’histogrammes modelisant lateinte chair dans Y CbCr . . . . . . . . . . . . . . . . . . . . . . . . 112

2.22 Courbes COR pour trois tailles d’histogrammes (zoom sur la figure2.21) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

2.23 Courbes COR des classifieurs quantifiant la luminance sur deux ettrois valeurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114

2.24 Les cinq images utilise pour analyser la couleur de la peau et cellede la bouche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

2.25 Analyse de la distribution des couleurs peau et levre sur les canauxH, S, et V . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

2.26 Repartition des couleurs normalisees de la bouche et de la peau, descinq images d’apprentissage . . . . . . . . . . . . . . . . . . . . . . 120

2.27 Repartition statistique de la teinte chair et de la couleur des levresdans le plan Cb-Y . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

2.28 Repartition des deux teintes dans le plan Cb-Cr . . . . . . . . . . . 122

2.29 Fonctions d’appartenance des ensembles petit et grand pour les ca-naux Cb et Cr : une valeur de Cb egale a -0.1 a un degre d’apparte-nance a l’ensemble grand de 20%, et a l’ensemble petit de 80% . . . 124

2.30 Fonctions d’appartenance des ensembles flous partitionnant les va-leurs de H . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

2.31 Un pixel de luminance normalisee egale a -0.1 est de valeur grandea 18% et est de teinte chair a 25% avec la regle d’implication proposee126

2.32 Seuil de decision de la segmentation des levres . . . . . . . . . . . . 127

2.33 Modelisation des contours labiaux par deux et trois paraboles . . . 130

2.34 En rouge les contours de la verite terrain, en vert ceux obtenue parune segmentation couleur : celle-ci recouvre 75% de la verite terrain 131

2.35 Distribution des taux de recouvrement de la verite terrain . . . . . 133

2.36 Exemples de segmentation correcte de la bouche avec le taux de re-couvrement de la verite terrain correspondant, et la carte des degresde verite de la teinte bouche lissee . . . . . . . . . . . . . . . . . . . 134

2.37 Exemples de segmentation incorrecte de la bouche avec la carte desdegres de verite lissee . . . . . . . . . . . . . . . . . . . . . . . . . . 135

3.1 Arbre de decision : chaque noeud de test est constitue d’une cascadede classifieurs forts. Deux exemples de chemins sont illustres, l’unest emprunte par un visage (en rouge), l’autre par un non visage(en bleu). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143

Page 17: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

TABLE DES FIGURES vii

3.2 (a) Arbitrage entre detections multiples. Chaque cercle corresponda une vignette dans l’image originale : un visage est detecte a laposition Va, le visage ayant la vraisemblance la plus elevee dans levoisinage A est la vignette V ∗. Les vignettes de la region B ne sontpas evaluees. (b) Critere d’exclusion des regions homogenes. . . . . 146

3.3 Les representations de l’image exploitees par l’expert Eh . . . . . . 148

3.4 Assemblee d’experts : (a) architecture hybride (b) architecture pa-rallele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149

3.5 Architecture hybride de la fusion des modeles directionnel, d’ellipseet d’apparence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151

3.6 Les elements du tableau SkinMap representent la probabilite decouleur peau moyenne de chaque vignette x . . . . . . . . . . . . . 154

3.7 Dualite entre espace d’observation et espace de Hough . . . . . . . 156

3.8 Section r = R de l’accumulateur : le point x est un point de contourde l’image traitee, les noeuds de la grille correspondent aux elementsde l’accumulateur. Les centres des cercles de rayon R passant parx sont representes par des carres, le carre rouge est le centre verslequel pointe le gradient . . . . . . . . . . . . . . . . . . . . . . . . 158

3.9 Codage de l’orientation du gradient des contours . . . . . . . . . . . 160

3.10 Definition des pixels de contour a partir du module du gradient . . 160

3.11 Le seuil sur le module du gradient definissant les contours optimisela Transformee de Hough Generalisee sur une base d’apprentissagede 168 images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

3.12 Transformee de Hough Generalisee appliquee au cas d’une ellipse . . 162

3.13 Les contours et leur orientation sont determines sur l’image mono-chrome. L’accumulateur est le resultat de la Transformee de HoughGeneralisee, et le parcours par une retine (chapeau mexicain) 13x17conduit au tableau HoughMap . . . . . . . . . . . . . . . . . . . . . 163

3.14 Localisation du visage par fusion : vue d’ensemble . . . . . . . . . . 165

3.15 Fonctions d’appartenance des ensembles flous Hgrand et Hpetit (agauche), et des ensembles de sortie visage, non-visage et incertain(a droite) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168

3.16 Methode d’implication floue de Mamdani . . . . . . . . . . . . . . . 169

3.17 Application de l’operateur flou “OU” sur trois entrees . . . . . . . . 170

3.18 Diagramme du systeme d’inferences floues . . . . . . . . . . . . . . 171

3.19 Agregation des ensembles flous de sortie et defuzzification . . . . . . 171

3.20 Combinaison des trois modeles avec un perceptron multi-couche . . 172

3.21 Exemples de la base ECU et verite terrain visage correspondante. . 175

3.22 Exemples de visages consideres comme correctement detectes (ex-traits de quelques articles). . . . . . . . . . . . . . . . . . . . . . . . 177

Page 18: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

viii TABLE DES FIGURES

3.23 (a) Image reduite de maniere a ce que le visage soit de taille egale a13x17. (b) Exemples limites de visages correctement localises (tauxde recouvrement = 60%). . . . . . . . . . . . . . . . . . . . . . . . . 178

3.24 Distribution des visages dans l’espace HDC : le point A correspondaux visages correctement modelises par les trois modeles en memetemps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180

3.25 Distribution des non visages dans l’espace HDC : le point B cor-respond aux non visages se traduisant par une faible vraisemblancede la classe visage par les trois modeles en meme temps . . . . . . . 181

3.26 Gaussiennes modelisant les visages et les non visages dans l’espaceHDC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182

3.27 Histogramme de la proportion de pixels de verite terrain inclus dansle rectangle resultat de la localisation : la localisation par fusionobtient les meilleures performances en terme de nombre de visagescorrectement localises et de precision de la localisation. . . . . . . . 183

3.28 Le modele d’ellipse est ambigu, le modele de teinte chair imprecis,mais les trois sources sont complementaires : la fusion lineaire apour resultat une localisation correcte du visage. . . . . . . . . . . . 185

3.29 Le modele d’apparence est incertain (a), mais la redondance entrele modele de teinte chair (b) et le modele d’ellipse (c) permet dedeterminer une localisation correcte du visage par fusion lineaire (d) 186

3.30 La reponse du modele de teinte chair est incorrect, et le modeled’apparence incertain mais redondant avec le modele d’ellipse auniveau du visage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188

3.31 Le modele d’ellipse n’est pas adapte, mais le modele de teinte chairet le Diabolo se complementent suffisamment pour obtenir une lo-calisation correcte. . . . . . . . . . . . . . . . . . . . . . . . . . . . 188

3.32 Localisation mono-echelle du visage sur des sequences d’images parfusion lineaire. (a) Jamie (b) Ilkay (c) Geoff . . . . . . . . . . . . . 190

3.33 Localisation de plusieurs visages dans une image : le nombre desujets est suppose connu . . . . . . . . . . . . . . . . . . . . . . . . 191

3.34 Localisation multi-echelles du visage : une pyramide d’image estconstruite et le tableau FusionMap est construit pour chacune desechelles. La localisation du visage est definie par la position du maxi-mum local le plus elevee parmi ces tableaux. . . . . . . . . . . . . . 192

3.35 Tailles des visages detectables avec une retine 13x17 dans une image640x480 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194

3.36 (a) Hauteur et largeur des visages localisables dans une image origi-nale 640x480 par une recherche multi-echelles avec une retine 13x17appliquee a l’image 160x120 (apres reduction d’un facteur 4). (b)Repartition sur la base de test du nombre d’echelles a parcourir parimage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195

Page 19: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

TABLE DES FIGURES ix

3.37 Tailles des visages detectables dans une image 640x480 par unerecherche multi-echelles avec une retine 24x24 operee sur l’imagereduite 160x120. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197

3.38 Cas de figure ou la decision du detecteur de visage est correcte etcelle du localisateur est incorrecte : en bleu le resultat du detecteurde visages, en rouge celui du localisateur. . . . . . . . . . . . . . . . 198

3.39 Imprecision du localisateur (en rouge) en terme d’echelle : la lo-calisation est trop etendue spatialement, alors que le detecteur devisage (en bleu) localise correctement le visage. . . . . . . . . . . . 199

3.40 Imprecision du localisateur (en rouge) en terme de position : cas oule visage est correctement localise par le detecteur de Viola&Jones(en bleu). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200

3.41 Cas d’echec du detecteur de visages (en bleu) : la pose des visagesest en dehors des limites de la cascade, alors que la fusion lineaire(en rouge) localise correctement ces visages. . . . . . . . . . . . . . 202

3.42 Cas d’echec du detecteur de visages (en bleu) dus a l’occlusion detraits du visage (front, bouche, yeux), ou encore a une difference deniveaux de gris insuffisantes entre l’ovale du visage et son voisinage. 203

4.1 Distribution de la teinte chair (visage, cou et bras), sur le canalHue de HSV discretise sur 32 valeurs : la couleur correspondanta chaque classe de l’histogramme est represente. (a) Sujet eclairepar un flash : la couleur des bras du sujet tend vers le bleu. (b)Sujet eclaire par la lumiere du soleil et un eclairement exterieur : lalumiere du soleil donne une forte composante de bleu sur une partiedu visage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214

4.2 Detection et poursuite du visage dans une sequence d’images : l’imagedu visage candidat detecte definit la distribution de probabilite dela couleur peau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232

4.3 Limitations du detecteur de visage, en termes d’orientation du visage2334.4 Structure du detecteur de visages par arbre de decision de Lienhart&al2374.5 Exemple de reduction de l’image d’un facteur 2 . . . . . . . . . . . 2384.6 Procedures de test et d’apprentissage. Apprentissage : le modele de

couleur peau est appris sur les pixels de couleur peau (connu gracea la verite terrain). Test : la retro-projection de l’histogramme surle canal H donne la probabilite qu’un pixel ait la couleur peau L’his-togramme (1D lorsqu’on ne considere que le canal H) des pixels decouleur peau est normalise par sa valeur maximale entre les valeurs0 et 255 : hist = 255/max(hist)*hist. La retro projection de cethistogramme hist sur l’image de test consiste a affecter a chaquepixel la valeur de l’histogramme correspondante hist(H) ou H estla valeur de Hue du pixel considere. La carte de probabilite qui enresulte contient donc des valeurs entieres comprises entre 0 et 255. . 244

Page 20: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

x TABLE DES FIGURES

4.7 Couleurs peau et non-peau dans le plan CbCr : (a) distribution dela teinte chair, (b) distribution de la non-peau . . . . . . . . . . . . 245

4.8 Courbes COR du classifieur de teinte chair dans les plans a-b et Cb-Cr2464.9 Courbes COR des classifieurs modelisant la teinte chair dans les

plans H-S et rg normalisee . . . . . . . . . . . . . . . . . . . . . . . 2484.10 Retroprojection d’histogrammes modelisant la teinte chair presente

dans l’image, dans divers plans de chrominance. . . . . . . . . . . . 2494.11 Courbes COR du classifieur de teinte chair dans le plan H-S et sur

le canal Hue : l’echelle en abscisse est differente . . . . . . . . . . . 2504.12 Interet de la modelisation de la Saturation de la peau . . . . . . . . 2514.13 Les exemples de couleur peau sont extraits d’une ellipse centree sur

le visage detecte, et leur distribution dans le plan H-S est enregistredans l’histogramme modele . . . . . . . . . . . . . . . . . . . . . . . 253

4.14 Vue d’ensemble de la procedure de poursuite de la couleur peau . . 2554.15 Operations de post-traitement sur deux region de recherche 77x77 et

132x132. (a) Image de la probabilite de teinte chair. (b) Dilatation.(c) Lissage Gaussien. (d) La composante connexe de plus grandeaire est en blanc, et l’ellipse ajustee a ces contours (en rouge) est enjaune . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256

4.16 La composante connexe a une forme irreguliere du fait de la lu-minosite : ces contours sont surlignes en rouge, et le resultat del’ajustement d’ellipse par les moindres carres est dessine sur le vi-sage poursuivi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257

4.17 Exemples de detection (rectangles bleus) et de suivi du visage surla sequence Jamie : les ellipses bleus correspondent au Camshift,les ellipses rouge et jaune a l’approche composante connexe. Lesvignettes monochromes situees a droite de chaque image illustrentl’image des probabilites de teinte chair et le resultat de son lissage. . 266

4.18 Dans ces deux exemples, le Camshift poursuit correctement le vi-sage, mais les composantes connexes etiquetees sont toutes de sur-face inferieure a la limite de poursuite : dans ce cas le visage n’estplus poursuivi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267

4.19 Un exemple de derive du mean shift vers une zone de distraction :le camshift ne fait pas s’etendre l’ellipse dans les images suivantes. . 268

4.20 Cas ou un faux positif est poursuivi : (a) la sortie du visage a eu lieuau niveau d’un distracteur. (b) Lorsque le visage sort de la scene,la poursuite continue sur les vetements du sujet. . . . . . . . . . . . 270

4.21 Verification d’une cible poursuivie : le rectangle jaune correspond aune detection du visage apres application d’une rotation de la cibledans le plan de l’image d’un angle −Φ determine par l’ellipse. (a)Cas de la rotation du visage dans le plan de l’image. (b) Cas d’unerotation supplementaire hors du plan. . . . . . . . . . . . . . . . . . 271

Page 21: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006
Page 22: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006
Page 23: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

Liste des tableaux

1.1 L’algorithme d’apprentissage par Adaboost Discret . . . . . . . . . 38

1.2 Approche retinienne du detecteur de visage implemente par OpenCV 41

1.3 Nombre de vignettes traitees par le detecteur de visage et taille dela retine en fonction de l’echelle pour une image 160x120 et fQ = 1.2 41

1.4 Nombre d’images de visage utilisees en apprentissage et en validation 52

1.5 Performance en localisation de visages des modeles d’apparence enfonction du codage des entrees, sur la base de validation croisee de126 images, ne contenant qu’un seul visage, de taille connue . . . . 60

1.6 Performances en localisation de visages des modeles d’apparence enfonction du codage des entrees sur la base de validation croisee . . . 60

2.1 Matrice de confusion du classifieur de teinte chair par seuillage rec-tangulaire dans le plan CbCr : la premiere colonne constitue lescoordonnees du point de la courbe COR . . . . . . . . . . . . . . . 87

2.2 Seuils de decision de la classification peau/non-peau pour differentsauteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

2.3 Corpus d’apprentissage et de test pour la classification Peau/Non-Peau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

2.4 Corpus d’apprentissage et de test pour la classification Levres/Peau 118

2.5 Signatures de la teinte chair et de la teinte levre . . . . . . . . . . . 123

2.6 Matrice de confusion de la segmentation Bouche/Peau . . . . . . . 132

3.1 Comparaison entre les differentes approches de Feraud & al sur unebase de 42 images contenant 164 visages. . . . . . . . . . . . . . . . 142

3.2 Performances de l’approche de Froba&Zink. Les performances in-dividuelles des trois experts sont considerablement ameliorees parfusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152

3.3 Nombre de visages et de non-visages dans la base d’apprentissage . 165

3.4 Taux de localisation des differentes approches sur 1353 images necontenant qu’un seul visage . . . . . . . . . . . . . . . . . . . . . . 184

3.5 Taux de localisation correctes sur les trois sequences d’images, parcombinaison lineaire . . . . . . . . . . . . . . . . . . . . . . . . . . 189

Page 24: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

xii LISTE DES TABLEAUX

3.6 Statistiques sur les tailles de visages de la base de test (1353 imagescontenant un visage chacune). . . . . . . . . . . . . . . . . . . . . . 194

3.7 Nombre de vignettes parcourus par une retine 13x17 dans une image160x120. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196

3.8 Bases de test du localisateur et du detecteur : les images ou lesvisages ont des tailles inferieures a la taille minimale de chacun dessystemes sont exclues. Chaque image ne contient qu’un seul visage. 196

3.9 Performances du localisateur par fusion d’algorithme et du detecteurde Viola&Jones (le nombre d’images de test n’est pas le meme pourles deux approches, voir tableau 3.8) . . . . . . . . . . . . . . . . . 198

4.1 Temps moyen de traitement d’une image, interpole pour un Pentium4 cadence a 2.8 GHz . . . . . . . . . . . . . . . . . . . . . . . . . . 210

4.2 L’algorithme d’apprentissage par Gentle Adaboost . . . . . . . . . . 236

4.3 Performance de la cascade 24x24 sur la sequence Antonio de 200images, contenant un visage par image, en fonction de la taille del’image traitee. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238

4.4 Taille de la retine parcourant l’image 160x120 en fonction de l’echelle,pour une cascade 24x24. Taille de visages detectables correspon-dante dans l’image originale 320x240. . . . . . . . . . . . . . . . . . 239

4.5 La taille de la retine parcourant l’image 320x240 pour les quatrespremieres echelles explorees par une cascade 24x24, avec un facteurd’agrandissement fQ = 1.2. Le nombre de vignettes explorees, dansl’image de la figure 1.19 utilisee pour produire le tableau 1.3 (p.41),a chaque echelle y est indique. . . . . . . . . . . . . . . . . . . . . 239

4.6 Taille de la retine parcourant l’image 320x240 en fonction de l’echelle,pour une cascade 24x24 avec fQ = 1.2 (suite du tableau 4.5). Cetableau est comparable avec les tableaux 4.4 et 1.3 car les tailles devisages detectables sont les memes a 5% pres. . . . . . . . . . . . . 239

4.7 Performances de detecteur sur 200 images 160x120 de la sequenceAntonio, contenant un visage par image. Tous les faux positifs ontete elimines, par la procedure d’arbitrage des detections multiples,parcequ’ils etaient isoles. . . . . . . . . . . . . . . . . . . . . . . . . 240

4.8 Partition de la base de test/apprentissage en 4 types de teinte chair 243

4.9 L’algorithme du mean-shift . . . . . . . . . . . . . . . . . . . . . . . 260

4.10 L’algorithme du Camshift . . . . . . . . . . . . . . . . . . . . . . . 260

4.11 L’algorithme du Camshift couple . . . . . . . . . . . . . . . . . . . 261

4.12 Performances sur la sequence Geoff contenant 48 images : un visageest detecte des la premiere image, le modele de teinte chair estrenouvelle a deux reprises durant le reste de la sequence. . . . . . . 264

4.13 Decomposition du temps de segmentation du visage dans la sequenceGeoff (temps approximatifs) . . . . . . . . . . . . . . . . . . . . . . 264

Page 25: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

LISTE DES TABLEAUX xiii

4.14 Performances sur la sequence Ilkay contenant 160 images : le premiervisage est detecte a la treizieme image de la sequence, le modele estremis a jour a sept reprises par la suite. . . . . . . . . . . . . . . . . 265

4.15 Performances sur la sequence Jamie contenant 85 images : le premiervisage est detecte a la troisieme image de la sequence, le modele estremis a jour a trois reprises par la suite. . . . . . . . . . . . . . . . 268

4.16 Performances de la localisation mono-echelle sur une base de 1353images ne contenant qu’un seul visage . . . . . . . . . . . . . . . . . 274

4.17 Perfomances du localisateur par fusion et du detecteur de visages . 274

Page 26: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006
Page 27: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006
Page 28: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006
Page 29: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

Introduction

Applications de la detection de visages La detection de visages a connuun essor considerable ces dix dernieres annees, et une attention soutenue de lacommunaute vision du fait de la non rigidite importante de l’objet a detecter. Lagamme de ses applications est large et variee, encapsulant les problematiques quise posent sur des images fixes ou sur des sequences :

– en video-surveillance : elle est utilisee pour determiner la presence d’etreshumains, ou pour valider la reponse d’un detecteur de mouvement. L’interetest la surveillance automatique de zones sensibles ou, en la couplant a unereconnaissance faciale, de remplacer les systemes actuelles de clefs, badgesou mots de passe.

– en biometrie faciale : parmi les developpements recents dans ce domaine,citons la reconnaissance du visage en trois dimensions, qui consiste a photo-graphier la personne sous six angles differents permettant la comparaison desvues de face et de profil. Citons aussi l’utilisation d’infrarouges pour analyserla cartographie vasculaire du visage, propre a chaque individu. La localisa-tion du visage est l’etape preliminaire dans le cadre d’un systeme de controled’acces a un batiment, a une porte d’embarquement ou a un ordinateur. Surdes bases d’images fixes, elle est aussi necessaire lorsque les images ne sontpas cadrees sur le visage.

– en indexation d’images : la croissance exponentielle de base de donneesnumeriques a rendu necessaire l’utilisation de la detection de visages, pourdeterminer les images contenant des personnes (ou pas, par exemple si l’oncherche des images de paysages) ou pour la recherche d’images contenantune personne particuliere.

– la segmentation de flux video : la detection de visages fournit des informa-tions utiles pour detecter des cuts -limites des plans de sequences- ou pourcaracteriser un plan, a partir de la taille des visages ont peu determiner si ils’agit d’un gros plan ou d’un plan large.

– en compression video : connaissant la position des visages dans une sequencesd’images, un codage optimal des regions d’interet correspondantes est opere,le reste de la scene pouvant etre compresse avec une moindre qualite.

– en video-conference : une camera motorisee peut alors suivre les deplacements

Page 30: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2 INTRODUCTION

d’un interlocuteur. Les dernieres generations de webcam proposent une op-tion de suivi du visage, integrant une detection de mouvement, un modelede couleur peau et de forme : la webcam n’est pas necessairement motoriseemais un zoom numerique est opere sur le visage du sujet.

– dans le domaine de l’interaction homme-machine, citons la commande par levisage pour l’assistance aux personnes handicapes, ou la perception par unrobot de son environnement.

– la detection du visage peut s’appliquer aux etudes comportementales : coupleesa une reconnaissance de geste, posture, ou a un suivi du regard, elle permet-tra l’automatisation d’etudes sur l’apprentissage de la parole chez un bebeou encore sur les zones d’attention du regard sur une affiche publicitaire.

– en comptage de personnes, notamment pour les mesures d’audiences.– dans les domaines deja accessibles au grand public, outre les webcams stan-

dard, certains jeux videos vont bientot integrer une technologie permettantd’incruster le visage du joueur dans le jeux : l’utilisateur prend une photo deface et une de profil, et 45 secondes plus tard un modele 3D filaire du visageest construit puis sauvegarde dans le jeu.

– les dernieres generations d’appareil photos ont une option de reglage de lamise au point sur les visages.

– la synthese ou la modification d’images sont d’autres exemples d’applicationpotentielle dans le domaine ludique.

Contexte et objectifs de la these La detection de visages dans une imageconsiste a determiner le nombre de visages presents dans la scene, leur position ainsique leur taille. On retrouve les deux grandes classes communes a la reconnaissancede formes : structurelle et globale [HL01, YKA02][1,2]. Les approches structurellescherchent a detecter des primitives du visages (yeux, bouche, nez, ovale du visage)puis a combiner les resultats de ces detections a l’aide des modeles geometriques etradiometriques, notamment via des modeles deformables ou l’analyse de constel-lations. Les approches globales traitent une vignette de l’image en la codant sousla forme d’un vecteur de representation (niveaux de gris, moments, projection,ondelettes . . .). Les deux approches utilisent des bases d’apprentissage pour esti-mer les parametres du classifieur final. Pour les approches globales, ces parametrespeuvent etre des poids (reseau de neurones) ou les termes d’une matrice de cova-riance (classifieur statistique). Il faut alors choisir entre une approche generativeet une approche discriminante. Les approches discriminantes sont confrontees auxproblemes de la definition des non visages. Un modele generatif n’utilise pas decontre-exemples ce qui peut sembler un avantage mais qui diminue en fait l’effica-

[1] E. Hjelmas and B.K. Low. Face detection : A survey computer. Computer Vision andImage Understanding, 83(3) :236–274, 2001.

[2] M.-H. Yang, D.J. Kriegman, and N. Ahuja. Detecting faces in images : A survey. IEEETransactions on Pattern Analysis and Machine Intelligence, 24(1) :34–58, 2002.

Page 31: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

INTRODUCTION 3

cite du classifieur : la generalisation dans un espace de grande dimension (d =400pour des vignettes 20x20) est difficile si on ignore ou se trouvent les vecteurs sus-ceptibles d’etre confondus.

Les difficultes auxquelles font face les systemes de detection de visages sontmultiples [Yan04][3] :

– la pose ou l’orientation du visage : visage de face, rotation dans le plan del’image (visage de profil, incline vers le haut ou le bas) ou hors plan (visageincline a droite ou a gauche).

– les conditions d’aquisition de l’image : l’eclairement de la scene (particuliere-ment les cas de surexposition, d’obscurite, de sources lumineuses multiples oud’ombres portees sur le visage) et les differences entre capteurs (sensibilite,resolution de l’image, et dans le cas des sequences d’images la balance desblancs et le controle automatique du gain).

– l’expression faciale du visage, affectant directement l’apparence du visage.– la presence eventuelle de composantes structurelles sur le visage : barbe,

moustache, lunettes.– les occlusions partielles voire totales du visage, par un objet, une autre per-

sonne ou les mains par exemple.

Du fait de la grande variabilite de la forme apprehendee, la detection de vi-sages sans hypothese a priori est une tache extremement difficile. Les applica-tions de detection de visages se placent souvent dans un cadre simplifie : camerafixe et fond connu, hypotheses fortes sur l’echelle ou l’orientation du visage, fondspecifique (bleu ou vert) pour une extraction facilitee de la silhouette ou encoresources lumineuses speciales (infrarouge proche ou thermique). La localisation duvisage est un probleme associe a la detection de visages ou l’on suppose connu lenombre de visages presents dans l’image, et n’est pas plus aisee sans hypothesesupplementaire.

Lorsque j’ai integre l’equipe PRC, la thematique visage etait nouvelle : l’equipeavait developpee de fortes competences en reseaux connexionnistes [LeC87][4], plu-sieurs approches originales avaient ete validees en reconnaissance de caracteresmanuscrits, tels que les classifieurs neuronaux evolutifs [Sch96][5] ou la cooperationde classifieurs [Pre98][6], ainsi qu’en detection de mouvement et suivi d’objets

[3] M.-H. Yang. Recent advances in face detection. Technical report, IEEE InternationalConference on Pattern Recognition Tutorial, 2004.

[4] Y. LeCun. Modeles Connexionistes de l’Apprentissage. PhD thesis, Universite Pierre etMarie Curie, Paris, France, 1987.

[5] H. Schwenk. Amelioration des classifieurs neuronaux par incorporation de connaissancesexplicites : Application a la reconnaissance de caracteres manuscrits. PhD thesis, UniversitePierre et Marie Curie, Paris, France, 1996.

[6] L. Prevost. Reconnaissance de l’ecrit dynamique : application a l’analyse des expressionsmathematiques. PhD thesis, Universite Pierre et Marie Curie, Paris, France, 1998.

Page 32: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4 INTRODUCTION

[Lac00][7]. Physicien de formation, mon experience en modelisation se resumaita un stage sur la prediction de ressources machines par reseaux de neurones, et entraitement de l’image a un stage de DEA en imagerie medicale sur la mesure devisibilite d’artefacts dans des mammogrammes. Nous nous sommes lance sur ce su-jet difficile, en posant quelques simplifications dont certaines ont ete levees au furet a mesure de l’etude. L’objectif de cette these est la localisation du visage dansdes images fixes ou des sequences d’images : ce probleme suppose que le nombre devisages a localiser est connu a priori, cette connaissance pouvant etre determineea partir du nombre de composantes en mouvement dans une sequence. Dans unpremier temps, la taille des visages etait elle aussi connue et l’aspect temps reeln’est pas considere, concentrant nos recherches sur la partie algorithmique et surune representation efficiente de l’apparence du visage. Notre approche est globaleet consiste a faire cooperer differents modeles du visage : un modele de teinte chair,un modele de la forme ovale du visage ainsi qu’un modele d’apparence connexion-niste. Pour les sequences d’images, notre approche consistait alors a localiser levisage sur chaque image independamment sans utilisation de l’information tempo-relle. Par la suite, nous avons extrapole la methode au cas ou la taille du visage estinconnue, en l’appliquant a plusieurs echelles. Par la suite, nous avons concentrenos efforts sur la poursuite en temps reel de multiples visages dans des sequences :assiste par un detecteur de visages issu de l’etat de l’art, celui de Viola&Jones, unmodele de couleur peau est appris localement puis suivi a l’aide d’une methoderobuste et rapide.

Plan du memoire Nous commencons le chapitre 1 par une revue des approchesglobales de la detection de visages. Nous presentons ensuite en details le detecteurde visages de Viola&Jones, la representation de l’image qu’il utilise ainsi que lamethode d’apprentissage et de classification. Puis, nous decrivons une approche dela localisation du visage s’appuyant sur un modele d’apparence, le Diabolo : troisrepresentations de l’image seront proposees et testees, nous menant au choix d’uncodage particulier de l’orientation du gradient des points de contours.

Au chapitre 2, nous presentons l’etat de l’art des modeles statiques de la couleurpeau ainsi que les espaces colorimetriques utilises dans le domaine de la detectionde la peau. Les modeles statiques sont appris sur une base d’apprentissage et s’ap-pliquent aux images fixes, contrairement aux modeles dynamiques qui peuvent etrere-estimes durant une sequence d’images. Nous discutons, dans une seconde partie,de l’interet de la modelisation de la non peau dans deux espaces colorimetriques,Y CbCr et HSV , l’interet de l’espace HSV y sera souligne. Nous mettons aussien evidence la contribution d’une modelisation de la luminance, souvent mise al’index dans les methodes de detection de la peau, et discutons de la quantification

[7] L. Lacassagne. Detection de mouvement et suivi d’objets en temps reel. PhD thesis,Universite Pierre et Marie Curie, Paris, France, 2000.

Page 33: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

INTRODUCTION 5

de cette information. Dans la troisieme partie de ce chapitre, nous presentons lestravaux que nous avons realises en collaboration avec l’Inserm U494 sur la segmen-tation des levres dans des images haute resolution par une approche colorimetriqueexploitant un systeme d’inferences floues.

Le chapitre 3 est consacre a la fusion d’informations : nous passons en revueles approches de la detection de visages s’appuyant sur une assemblee d’expertsou fusionnant plusieurs representations de l’image. Nous presentons ensuite notreapproche de la localisation du visage combinant la reponse de trois modeles :un modele d’apparence, le Diabolo, un modele de la teinte chair et un modeled’ellipse par transformee de Hough introduit a cette occasion. Dans un premiertemps, la taille du visage est supposee connue : plusieurs methodes de fusion sontproposees et comparees dans cette hypothese. La methode la plus efficiente, uneapproche connexionniste de la combinaison lineaire, est retenue. L’application decette methode de localisation du visage a plusieurs echelles, afin de tenir comptede la taille variable du visage, est comparee aux resultats de la detection de visagesde Viola&Jones. La difference entre localisation d’un visage et detection de visagessera a nouveau soulignee.

Au chapitre 4 nous integrons le detecteur de Viola&Jones dans un systeme depoursuite de visages (multiples) s’appuyant sur une modelisation dynamique dela teinte chair. La segmentation du visage par determination de la composanteconnexe la plus etendue est comparee a l’approche du Camshift, en termes deperformances et de temps de calcul. Nous presentons les reponses apportees adivers scenarios auxquels un tel systeme est confronte, tels que l’apparition ou ladisparition d’une personne, les conditions d’eclairement extremes et les compromisentre performances, robustesse et temps reel.

Le dernier chapitre conclue ce memoire : il synthetise l’ensemble des travauxqui y sont presentes et les enseignements que nous en avons tire dans la perspectivede nos travaux futurs.

Page 34: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006
Page 35: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

Chapitre 1

Un modele d’apparence duvisage : le Diabolo

Sommaire1.1 Approche globale de la detection et de la localisation

du visage : etat de l’art . . . . . . . . . . . . . . . . . . . 61.1.1 Methodes s’appuyant sur la determination d’un sous es-

pace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.1.2 Approches exploitant une representation frequentielle de

l’image . . . . . . . . . . . . . . . . . . . . . . . . . . . 141.1.3 Approches basees sur une selection automatique de filtres

spatiaux . . . . . . . . . . . . . . . . . . . . . . . . . . . 191.1.4 Les approches connexionnistes . . . . . . . . . . . . . . 24

1.2 Presentation du detecteur de Viola&Jones . . . . . . . 301.2.1 Representation de l’image : filtres spatiaux et classifieurs

faibles associes . . . . . . . . . . . . . . . . . . . . . . . 301.2.2 Apprentissage d’une cascade de classifieurs forts . . . . 351.2.3 Classification et arbitrage entre detections multiples . . 40

1.3 Le Diabolo : un modele d’apparence generatif . . . . . 441.3.1 Analyse en Composante Principale, en Composante Non

Lineaire et reseaux Diabolo . . . . . . . . . . . . . . . . 451.3.2 Le reseau Diabolo applique a la localisation de visage . 511.3.3 Choix des entrees et de l’architecture du Diabolo . . . . 531.3.4 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . 60

Page 36: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

6 Un modele d’apparence du visage : le Diabolo

1.1 Approche globale de la detection et de la lo-

calisation du visage : etat de l’art

L’approche holistique de la detection de visages est base sur l’apprentissaged’un modele de visage a partir d’une base d’exemples. Elle emploie des methodescommunes a d’autres problemes de reconnaissance de formes. Ces methodes consi-stent a estimer une densite de probabilite conditionnelle (on parle alors de methodegenerative, la densite de probabilite pouvant etre remplacee par une fonctionrefletant le degre d’appartenance a la classe modelisee, comme par exemple l’er-reur sortie-entree d’un reseau Diabolo) ou une fonction discriminante (methodediscriminante) dans un sous espace, de dimension reduite par rapport a l’espaceimage, afin de determiner un hyperplan separateur des classes visage et non vi-sage. Elle se base generalement sur un codage retinien de l’image : une fenetre,ou retine, de taille fixee parcourt l’image avec un certains pas et la reponse dumodele est calculee sur la vignette correspondante. L’application a des visages detailles differentes est realisee en re-iterant ce procede en reduisant l’image d’unfacteur fQ a chaque iteration. Une approche alternative est d’agrandir la retine etde l’appliquer sur l’image originale.

1.1.1 Methodes s’appuyant sur la determination d’un sousespace

Supposons que l’on cherche a modeliser les visages a partir de vignettes mxncontenant d pixels : soit une base de Nt exemples d’apprentissage x1,x2, . . . ,xNt ∈Rd. On constate generalement qu’un modele de densite de probabilite condition-nelle a la classe visage (par exemple) est d’autant moins efficace que le nombred’entrees d est grand [DHS00][1] : cela peut provenir d’un mauvais choix de modele,par exemple lorsque l’on suppose la distribution des visages Gaussienne, ou alors,le nombre d’exemples d’apprentissage etant fini, que la distribution est estimee demaniere trop imprecise. On peut reduire la dimensionnalite excessive des exemplesen combinant ces entrees. Une combinaison lineaire est avantageuse parce quesimple a implementer et a interpreter. Elle consiste en effet a projeter les donneesde l’espace image Rd a un sous espace Rp de dimension moins elevee (p < d).

Il existe deux approches classiques pour trouver des transformations lineairesefficientes : l’analyse en composante principale qui cherche une projection quirepresente le mieux les donnees au sens des moindres carres, et l’analyse dis-criminante lineaire qui recherche une projection qui separe le plus, au sens desmoindres carres, les differentes classes de la base d’apprentissage.

[1] R.O. Duda, P.E. Hart, and D.G. Stork. Pattern Classification (2nd Edition). Wiley-Interscience, 2000.

Page 37: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.1 Approche globale de la detection et de la localisation duvisage : etat de l’art 7

L’analyse en composante principale ACP est presentee en detail a la section1.3.1, p.45. Elle consiste dans un premier temps a calculer la moyenne m desNt exemples de dimension d, et leur matrice dxd de covariance Σ. La matrice decovariance est ensuite diagonalisee : soit {λi}di=1 l’ensemble des valeurs propres,et {ei}di=1 les vecteurs propres associes. Triant les valeurs propres dans l’ordredecroissant, et ne conservant que les p vecteurs propres unitaires associes auxvaleurs propres les plus elevees, le projete y d’un exemple x quelconque de l’espaceimage Rd sur le sous espace engendre, que nous appelons FS (pour Face Space ouFeature Space) dans la suite, est definie par :

y = ΦTp (x−m) =

p∑i=1

aiei

ΦTp etant la matrice de passage ayant pour colonnes les vecteurs propres ei. Les

coefficients ai sont les composantes principales de x sur cette base de vecteurspropres. La projection y est une reconstruction de l’exemple x dans un espacede dimension plus petite, et l’erreur de reconstruction est definie par la distanceEuclidienne :

ε(x) =‖ (x−m)− y ‖

Sirovich et Kirby [SK87][2] appliquent l’analyse en composante principale aune partie du visage, contenant les yeux et le nez, a des fins de compression desdonnees : une image 128x128 monochrome de cette partie du visage x (d = 16.384)peut etre reconstruite avec une perte d’information ‖ (x − y) ‖ / ‖ x ‖ inferieurea 3% a partir de p = 40 composantes principales. La matrice de covariance estestimee a partir de Nt = 115 exemples, recadres a partir de la position des yeux etdu nez, et normalises lineairement en illumination de maniere a ce qu’un point dereference r0 = (x0, y0) de l’image ait un niveau de gris I0 donne : xnorm = I0

x(r0)x.

Turk & Pentland [TP91b, TP91a][3,4] implementent une reconnaissance de vi-sage par cette analyse : les vecteurs propres correspondant sont appeles les eigen-faces, terme consacre par leur travaux, parce qu’ils ont l’apparence de visages. Lesous espace FS engendre par les vecteurs propres est appele face space, et l’er-reur de reconstruction est appelee Distance From Face Space (DFFS ). La based’exemples est constituee de 16 images monochromes 256x256 (d = 65.536) de vi-sages frontaux, et p = 7 eigenfaces sont conserves. Les exemples sont en pratiqueconstitues d’un visage occupant approximativement un tiers de l’image, et d’un

[2] L. Sirovitch and M. Kirby. Low-dimensional procedure for the characterization of humanfaces. Journal of Optical Society of America, 4(3) :519–524, 1987.

[3] M. Turk and A. Pentland. Face recognition using eigenfaces. In Proceedings of the IEEEConference on Computer Vision and Pattern Recognition, pages 586–591, 1991.

[4] M. Turk and A. Pentland. Eigenfaces for recognition. Journal of Cognitive Neuroscience,3(1) :71–86, 1991.

Page 38: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

8 Un modele d’apparence du visage : le Diabolo

fond variable. Afin de diminuer l’effet du fond, les exemples sont multiplies par unefenetre 2D Gaussienne centree sur le visage. Aucune autre correction particulierede luminosite n’est apportee. Un visage est localise en cherchant le minimum del’erreur de reconstruction, calculee a toutes les positions de l’image et a differentesechelles : l’idee est que la projection d’une image de visage correspond a une imagesimilaire, alors que la projection d’un non visage donnera une image de visage doncune erreur de reconstruction plus elevee.

Moghaddam & Pentland [MP97][5] emploient l’ACP dans un cadre probabilistepour la localisation de visage. La densite de probabilite conditionnelle aux visages(la vraisemblance de x) est, dans un premier temps, modelisee par une Gaussienne :

p(x|visage) =1

(2π)d/2|Σ|1/2e−

12d(x)

ou d(x) = (x−m)T Σ−1(x−m) est le carre de la distance de Mahalanobis. Enpratique, un estimateur de cette distance est utilise :

d(x) =

p∑i=1

y2i

λi+

ε2(x)

ρ

ou ε est l’erreur de reconstruction (DFFS), et le premier terme est appele ”DistanceIn Feature Space” (DIFS ). Le poids ρ est a determiner en minimisant une fonctionde cout J(ρ). La densite de probabilite conditionnelle aux visages est alors estimeepar le produit de deux densites marginales Gaussiennes independantes :

p(x|visage) = pFS(x|visage)pFS(x|visage)

FS designant toujours le sous espace principal, et FS le sous espace supplementairedans l’espace image : FS ⊕ FS = Rd. FS peut ainsi etre vu comme l’espace desnon visages.La fonction de cout J(ρ) est l’entropie relative entre la vraie densite p(x|visage)et son estimation p(x|visage) :

J(ρ) =

∫p(x|visage) log

p(x|visage)

p(x|visage)dx =

1

2

d∑i=p+1

[λi

ρ− 1 + log

ρ

λi

]Le poids optimal ρ est alors calcule par :

∂J

∂ρ= 0⇒ ρ =

1

d− p

d∑i=p+1

λi

[5] B. Moghaddam and A. Pentland. Probabilistic visual learning for object detection. IEEETransactions on Pattern Analysis and Machine Intelligence, 19(7) :696–710, 1997.

Page 39: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.1 Approche globale de la detection et de la localisation duvisage : etat de l’art 9

ce qui revient a estimer les d − p plus petites valeurs propres par leur moyennedans le calcul de la distance de Mahalanobis. La distribution des echantillonsdans l’espace FS peut etre consideree comme Gaussienne si les exemples sontnormalises de la meme maniere : visages de meme orientation, meme taille, aligneset eclaires de la meme maniere, par exemple. Mais lorsque la base d’apprentissagepresente plus de variabilite, cette distribution n’est plus unimodale. La densitepFS(x|visage) est donc modelisee par un melange de Gaussiennes :

pFS(x|visage) = p(y|Θ) =Nc∑i=1

πig(y; µi, Σi)

ou Θ represente les parametres de melange et des Gaussiennes, et g une loi Gaus-sienne de dimension p. Les parametres Θ optimaux sont determines par l’algo-rithme E-M sur la base d’apprentissage. La vraisemblance d’un exemple x estainsi estimee par le produit de deux termes, bases sur deux distance : la distanceau sous espace propre, permettant d’eliminer les non visages d’apparence eloigneedes exemples de visages, et la distance au melange de Gaussiennes, qui permetde delimiter les differents types de visages modelises. Le visage est alors localiseen cherchant le maximum de la vraisemblance p(x|visage), calculee a toutes lespositions de l’image et a differentes echelles. En utilisant p = 10 eigenfaces, 97%des visages sont correctement localises, sur 2000 images de la base FERET.

Sung & Poggio [SP98b][6] utilisent une approche similaire, combinee a un reseaude neurones discriminant. Les vignettes traitees sont de taille 19x19, les pixels debords sont masques : l’espace image est de dimension 283 (19x19=361). Le pre-traitement applique, qui sera repris par nombre d’auteurs par la suite, consisteen une correction de la luminosite par soustraction de la surface modelisant lemieux la luminosite (une fonction lineaire est ajustee au niveau de gris de la vi-gnette). Une egalisation d’histogramme est ensuite operee. Une base d’exemplesde 4.150 visages et une autre contenant autant de non visages sont partitionneesen 6 clusters par une procedure de k-moyennes modifiee (la matrice de covariancede chaque cluster est re-estimee a chaque iteration, et les exemples sont affectes augroupe correspondant a la plus petite distance de Mahalanobis). La distributiondes visages est alors representee par 6 Gaussiennes dans l’espace image, de memepour les non visages, comme le montre la figure 1.1. Une ACP des exemples dechaque cluster est realisee, et une base de p = 75 vecteurs propres est extraite. Unevignette donnee est projetee dans l’espace FS correspondant a chaque cluster, etdeux distances sont calculees pour chaque cluster : l’erreur de reconstruction etla distance de Mahalanobis de la projection au centre du cluster, voir figure 1.2.Une vignette est alors caracterisee par un vecteur de 24 entrees, correspondantsaux couples de distances aux 12 clusters. Un reseau de neurones discriminant est

[6] K-K. Sung and T. Poggio. Example-based learning for view-based human face detection.IEEE Transactions on Pattern Analysis and Machine Intelligence, 20(1) :39–51, 1998.

Page 40: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

10 Un modele d’apparence du visage : le Diabolo

© 1997 IEEE

Fig. 1.1 – Modelisation des visages et des non visages dans l’espace image. Lapremiere ligne illustre le cas des visages, la seconde celui des non visages. De gauchea droite : base d’exemples a partitionner, distribution des exemples dans l’espaceimage (representee en 3D), les 6 Gaussiennes apres la procedure de k-moyennes,et les 6 centres correspondants.

construit, constitue de 24 cellules d’entrees, 24 neurones caches et un neurone desortie : les neurones ont une fonction d’activation sigmoıdale. Le reseau est entrainepar retropropagation de l’erreur. La base d’apprentissage est constituee de 47.316vignettes, dont 4.150 exemples positifs (les visages). Les exemples de non visagessont produits par une procedure de boostrapping, qui sera appliquee par de nom-breux auteurs par la suite. L’apprentissage du classifieur commence avec l’ensembledes exemples de visages et une base reduite de non visages. Des exemples de nonvisages, des images monochromes dont les niveaux de gris sont tires aleatoirement,sont alors appliques au classifieur : les exemples mal classifies (les faux positifs)sont ajoutes a la base d’apprentissage, et la procedure re-iteree, jusqu’a conver-gence du reseau. Une procedure similaire est decrite dans [DSS93][7] ou a chaque

[7] H. Drucker, R. Schapire, and P. Simard. Boosting performance in neural networks. Inter-national Journal of Pattern Recognition and Artificial Intelligence, 7(4) :705–719, 1993.

Page 41: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.1 Approche globale de la detection et de la localisation duvisage : etat de l’art 11

© 1997 IEEE

Fig. 1.2 – Sous espace FS associe a un cluster : �xp est la projection d’une vignette �xsur FS. D1 est la distance de Mahalanobis entre le centre du cluster et �xp. D2 est ladistance euclidienne entre la vignette et sa projection (l’erreur de reconstruction).

iteration un nouveau reseau de neurones est appris sur les exemples mal classifiespar les reseaux construits aux iterations precedentes. Les visages frontaux ayantdes dimensions comprise entre 19x19 a 100x100 (avec un facteur d’agrandissementfQ = 1.2) sont recherches sur une base de 23 images ayant un fond complexe etcontenant 149 visages : 79.9% des visages sont detectes avec 5 faux positifs. Cettebase d’image est la base du MIT, et les performances (i.e. le decompte des vraiset des faux positifs) ont ete mesurees par un operateur humain.

Yang & al [YKA01][8] developpent deux approches de la detection de visagessur des vignettes 20x20 en niveau de gris : une methode generative, s’appuyantsur l’analyse factorielle, et une methode discriminante, l’analyse discriminantelineaire. L’analyse factorielle est similaire a l’analyse en composante principale,a la difference qu’elle cherche a trouver une representation des donnees dans unedimension moindre maximisant la correlation entre les entrees et non la variance.Dans la premiere approche des auteurs, un melange d’analyses factorielles, apprispar l’algorithme E-M, partitionne les exemples en 36 clusters, et opere sur chaquecluster une reduction de dimension de d = 400 a p = 20 facteurs. Les auteursobtiennent des performances un peu moins bonnes que par l’approche basee sur

[8] M-H Yang, D. Kriegman, and N. Ahuja. Face detection using multimodal density models.Computer Vision and Image Understanding, 84(2) :264–284, 2001.

Page 42: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

12 Un modele d’apparence du visage : le Diabolo

l’analyse discriminante lineaire. Dans cette seconde approche, une carte de Koho-nen partitionne les exemples de visages en c1=5x5=25 clusters, au sein desquelsles exemples sont caracterises par une distribution spatiale similaire. Les exemplesde non visages sont aussi partitionnes en c2=25 sous classes. Dans un probleme adeux classes ω1 et ω2, l’analyse discriminante lineaire de Fisher cherche une droitede l’espace image, dirige par un vecteur w qui separe le plus, au sens des moindrescarres, les deux classes. Soient m1 et m2 les moyennes des exemples de ces classes.Les exemples de chaque classe sont representes par leur affixe sur cette droite :

y = wTx

Les projetes des Nt exemples sont regroupes en deux sous ensembles en fonctionde leur classe : Y1 et Y2. L’affixe moyenne du sous ensemble Yi est la projectionde l’exemple moyen de la classe ωi :

mi = wTmi

La distance entre la projection des moyennes est alors :

|m1 − m2| = |wT (m1 −m2)|On cherche a maximiser cette distance relativement aux ecarts type des donnees,pour cela on definit la diffusion des exemples projetes de chaque classe ωi par :

s2i =

∑y∈Yi

(y − mi)2

s21 + s2

1 est appelee la diffusion intra-classe totale des echantillons projetes. L’ana-lyse discriminante de Fisher cherche le vecteur directeur w maximisant le criteresuivant :

J(w) =|m1 − m2|2

s21 + s2

1

Afin d’expliciter J en fonction de w, on introduit les matrices de diffusion intra-classe SW et inter-classe SB. Pour cela, on represente la variance de chaque classeωi par la matrice de diffusion Si, proportionnelle a la matrice de covariance :

Si =∑xi∈ωi

(x−mi)(x−mi)T

La variance intra-classe et la variance inter-classe sont alors representees par lesmatrice de diffusion comme suit :

SW = S1 + S2 SB = (m1 −m2)(m1 −m2)T

On demontre alors [1] que :

J(w) =wTSBw

wTSWw

Page 43: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.1 Approche globale de la detection et de la localisation duvisage : etat de l’art 13

Le vecteur w maximisant J est alors determine en resolvant le probleme aux valeurspropres generalise suivant :

SBw = λSWw

L’analyse discriminante multiple generalise l’analyse discriminante de Fisher auxproblemes a c classes : les donnees sont projetees dans un sous espace de dimensionc−1 separant le plus les classes. La projection d’un exemple x est calculee a partirde la matrice W (d lignes, c− 1 colonnes), a determiner :

y = Wx

Dans [8], c = c1 + c2 classes ωi, de cardinal ni, sont definies par les 25 sous classesde visages et les 25 sous classes de non visages. La matrice de diffusion inter-classeest definie par :

SB =

c∑i=1

ni(mi −m)(mi −m)T

et la matrice de diffusion intra-classe par :

SW =c∑

i=1

∑x∈ωi

(x−mi)(x−mi)T =

c∑i=1

Si

Le critere a maximiser est alors :

J(W ) =W TSBW

W TSW W

et on demontre que la matrice W optimale a pour colonnes les vecteurs propresgeneralises orthonormes de SB et SW , associes aux c − 1 valeurs propres les pluselevees :

W = [w1 w2 . . . wc−1]

L’ensemble des echantillons est alors projete sur le sous espace propre, de dimensionc− 1, et la densite de chaque classe ωi est modelisee par une loi normale N dansce sous espace :

p(y|ωi) = N (µωi, Σωi

)

avec :

µωi= W Tmi Σωi

= 1ni

W T SiW

La detection de visages se fait en reduisant l’image originale d’un facteur fQ = 1.2sur 10 echelles, et une fenetre glissante parcourt chacune des images obtenues. Unevignette donnee x, se projettant sur le sous espace propre en un vecteur y est alorsetiquetee en fonction de la vraisemblance la plus elevee parmi les c classes :

ω∗ = arg maxi=1...c

p(y|ωi)

Page 44: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

14 Un modele d’apparence du visage : le Diabolo

et est classifiee visage si la classe obtenue correspond a l’une des sous classes devisages. Pour mesurer les performances de leur approche, un visage candidat estconsidere comme vrai positif s’il contient la bouche et les yeux. Sur la base detest MIT-20 (base de test du MIT utilisee par Sung & Poggio, moins trois imagescontenant des dessins de visages) composee de 20 images avec un total de 136visages, un taux de detection de 91.5% est obtenue avec un seul faux positif. Surla base de test CMU-125 de 125 images contenant 483 visages, un taux de detectionde 93.6% pour 74 faux positifs est obtenu.

1.1.2 Approches exploitant une representation frequentiellede l’image

La Transformee de Fourier 2D permet de traiter une image dans le domainefrequentiel : les details de l’image, tels que les contours ou le bruit, correspondent ades frequences spatiales elevees, les basses frequences correspondent a l’informationglobale contenue dans l’image. Un visage contient des informations dans diversesgammes de frequences : les traits du visage correspondent aux hautes frequences,le front ou les joues aux basses frequences. L’information spatiale caracterise aussile visage : les traits du visage (yeux, nez, bouche) ont une configuration spatialerigide, les yeux se trouvent generalement entre les joues et le front, la bouche entrele menton et les joues . . . Enfin l’information d’orientation est caracteristique duvisage et des contours de ces traits : l’ovale du visage, par exemple, peut-etregrossierement quantifiee selon trois directions verticale, horizontale et diagonale.La representation espace-frequence de la transformation en ondelettes [Mal89][9] ouplusieurs filtres de Gabor sont ainsi utilisee pour la detection de visages, commeun moyen efficace d’extraire l’information contenue dans les traits du visage.

Schneiderman & Kanade [SK00][10] appliquent la regle de decision Bayesiennepour detecter les visages, en estimant les densites de probabilites conditionnellesaux classes visage et non visage par la technique non parametrique des histo-grammes (voir section 2.1.4, p.90). Une transformee en ondelettes discrete del’image des niveaux de gris sur trois niveaux est operee, voir figure 1.3. Elledecompose l’image selon plusieurs niveaux. Le premier niveau correspond auxfrequences les plus hautes de l’image a l’echelle 1/2. Les niveaux suivants a desfrequences et des resolutions de plus en plus basses. Au premier niveau, l’imageest decomposee en une image d’approximation et 3 sous bandes. L’image d’ap-proximation correspond a l’image originale reduite d’un facteur 2. Les 3 sous

[9] S. Mallat. A theory for multiresolution signal decomposition : the wavelet representation.IEEE Transactions on Pattern Analysis and Machine Intelligence, 11(7) :674–693, 1989.

[10] H. Schneiderman and T. Kanade. A statistical model for 3d object detection applied tofaces and cars. In Proceedings of the IEEE Conference on Computer Vision and PatternRecognition, volume 1, pages 746–751, 2000.

Page 45: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.1 Approche globale de la detection et de la localisation duvisage : etat de l’art 15

bandes contiennent les autres coefficients d’ondelettes et correspondent respec-tivement aux details verticaux, horizontaux et diagonaux de l’image a l’echelle1/2. A chaque niveau une transformee en ondelettes discrete de l’image d’ap-proximation est operee pour obtenir les coefficients d’ondelettes du niveau suivant.Des attributs visuels sont constitues a partir de differentes parties du visage, enselectionnant certains coefficients d’ondelettes. Par exemple, un attribut peut etredefini par un bloc 3x3 de la sous bande H1 pour representer une forme horizontalede haute frequence de faible etendue dans la vignette. Un autre attribut definipar un bloc 2x2 des sous bandes H2 et V2 pour capturer une forme de frequencespatiale intermediaire et de large etendue spatiale. 17 attributs sont ainsi definis,a des positions et sur des sous bandes differentes. Les coefficients d’ondelettes sontquantifies sur 3 niveaux. La regle de decision Bayesienne appliquee est alors definiepar : ∏

x,y∈vignette

∏17k=1 Pk(attributk(x, y), x, y|visage)∏

x,y∈vignette

∏17k=1 Pk(attributk(x, y), x, y|non− visage)

> λ

Les distributions conjointes conditionnelles aux classes visage et non-visage sontestimees par des histogrammes. La base de non-visage sur laquelle est estimeePk(attributk(x, y), x, y|visage) est obtenue par boostrapping, initialise sur 2500exemples negatifs. L’histogramme Pk(attributk(x, y), x, y|visage) est construit apartir d’une base de 2000x400 visages (2000 images originales, a partir de chaqueimage 400 exemples sont synthetises). Deux detecteurs sont en pratique employes,l’un appris sur des visages de face et l’autre sur des visages de profil (rotationhors du plan, selon l’axe y). Pour accelerer les traitements, une recherche grossieredes visages est operee : un rapport de vraisemblance est d’abord calcule a partirdes coefficients de la decomposition de niveau 1, et les vignettes dont l’evaluationpartielle depasse un certain seuil sont decomposees aux niveaux superieurs. Les vi-sages sont recherches a quatres echelles (quatre tailles de visages) dans une imagede dimension 320x240 pixels. Sur la base CMU-125 (125 images, 483 visages), ilsobtiennent un taux de detection de 90.2% pour 110 faux positifs. Dans [SK98][11] lameme approche probabiliste est implementee mais les attributs visuels sont definispar des vecteur propres localises au lieu des coefficients d’ondelettes. Dans cetteversion, seuls les visages de face sont modelises : sur cette base de test, un tauxde detection de 94.4% pour 65 faux positifs est obtenu (le detecteur base sur lesondelettes obtenant toutefois de meilleurs resultats sur les visages de profil).

Garcia et Tziritas [GT99][12] definissent des enveloppes de la couleur peaudelimitees par des plans dans l’espace Y CbCr (deux enveloppes, en fonction de

[11] H. Schneiderman and T. Kanade. Probabilistic modeling of local apperance and spatialrelationship for object recognition. In Proceedings of the IEEE Conference on ComputerVision and Pattern Recognition, volume 1, pages 45–51, 1998.

[12] C. Garcia and G. Tziritas. Face detection using quantized skin colour regions mergingand wavelet packet analysis. IEEE Transactions on Multimedia, 1(3) :264–277, September1999.

Page 46: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

16 Un modele d’apparence du visage : le Diabolo

Imagemonochrome

Traitementsdes lignes

Filtre passe haut

Filtre passe bas

Sous échantillonnage

A1 H1 V1 D1

Décomposition de niveau 1

Approximation

Détails

Traitementsdes colonnes

Image

D1V1H1A1

D2V2H2A2

D3V3H3A3

Décomposition de niveau 3

D3H3V3A3

H2

V2

D2

V1

H1 D1

Représentation de l’image en ondelettes

Arbre d’ondelettes

Fig. 1.3 – Decomposition de niveau 1 : l’image est decomposee en une imaged’approximation et 3 sous bandes. Decomposition de niveau trois : a chaque niveauune transformee en ondelettes discrete de l’image d’approximation est operee pourobtenir les coefficients d’ondelettes du niveau suivant.

Page 47: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.1 Approche globale de la detection et de la localisation duvisage : etat de l’art 17

Y) ou dans l’espace HSV (une enveloppe). Les regions de peau ainsi filtrees sontiterativement fusionnees selon un critere de similarite des couleurs des regions ad-jacentes. Les visages candidats sont ensuite valides par une analyse de sa texture,basee sur la distance de Bhattacharyya de ses moments (i.e. les ecart-types del’image d’approximation et des images de details de la decomposition en paquetd’ondelettes du visage candidat) a ceux d’un prototype moyen. La decompositionen paquets d’ondelettes correspond a une decomposition en ondelettes de l’imaged’approximation et des images de details. Deux prototypes sont construits en fonc-tion de la hauteur des visages, a partir d’une base de 50 exemples. Un prototype estconstruit pour les visages de hauteur superieure a 128 pixels : une decompositionde niveau trois est dans ce cas operee (en apprentissage ou sur un visage can-didat). Pour les visages de hauteur inferieure, un autre prototype est construit,et la decomposition s’arrete au niveau deux. Leur approche est efficiente sur desvisages de taille superieure a 48x80 pixels. Sur une base de 100 images contenant104 visages, cette approche generative (aucun contre exemple n’est utilise durantl’apprentissage) obtient un taux de detection de 94.23% pour 20 faux positifs. Com-parativement, l’approche neuronale de Rowley & al obtient un taux de detectionde 85.57% et 9 faux positifs sur cette base.

Huang & al [HSK05, HSK04][13,14] classifient, a l’aide d’un reseau de neuronespolynomial, les composantes principales d’un vecteur d’entrees obtenu par filtragede l’image avec des filtres de Gabor. La forme fonctionnelle d’un filtre de Gabor2D dans le domaine spatial est donnee par :

g(x, y) = e−x2+y2

2σ2xy cos(u0x + v0y)

ou σxy est l’ecart type de l’enveloppe Gaussienne caracterisant l’etendue spatiale etla bande passante du filtre. Les parametres (u0, v0) definissent la frequence spatialedu cosinus et peuvent s’exprimer en coordonnees polaires par une frequence spatialer0 et une orientation θ comme suit :

r20 = u2

0 + v20 tan θ =

v0

u0

(1.1)

Afin d’extraire l’information de direction contenue dans les traits du visages, desfiltres de Gabor correspondant a quatres orientations sont utilises :

θk =π(k − 1)

4, k = {1, 2, 3, 4}

[13] L-L. Huang, A. Shimizu, and H. Kobatake. Robust face detection using gabor filter features.Pattern Recognition Letters, 26(11) :1641–1649, 2005.

[14] L.-L. Huang, A. Shimizu, and H. Kobatake. Classification-based face detection using gaborfilter features. Proceeding of the 6th IEEE International Conference on Automatic Faceand Gesture Recognition, 00 :397–402, 2004.

Page 48: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

18 Un modele d’apparence du visage : le Diabolo

= 45°= 90°

© 2004 IEEE

Domaine fréquentiel

= 0°= 135°

original Résultat du filtrage de Gabor

Fig. 1.4 – Les 4 filtres de Gabor representes dans le domaine des frequences spa-tiales

La reponse frequentielle de ces filtres est illustree par la figure 1.4, ainsi que lefiltrage d’une image de visage 20x20 par ces 4 filtres. Une vignette 20x20 est filtreepar convolution dans le domaine spatial avec les quatre filtres selon :

O(x, y, r0, θk) = I(x, y)⊗ g(x, y, r0, θk), k = {1, 2, 3, 4}La representation de la vignette sur les filtres de Gabor est sous echantillonnee d’unfacteur 2, et 4 imagettes 10x10 sont obtenues. Dans [HSK04][14], huit pixels de coinssont alors elimines, le vecteur X caracterisant la vignette x est alors la concatena-tion des 4 imagettes de Gabor (moins huit pixels donc) : X est de dimension 368.Dans [HSK05][13], les filtres de Gabor sont complexes dans le domaine spatial, et levecteur caracteristique est constitue de 1600 elements prenant en compte la partiereelle de O, son module et sa phase. Une analyse en composante principale estoperee sur une base de 29.900 exemples de visages 20x20, synthetises a partir de2990 exemples reels. La projection y d’une vignette sur le sous espace propre ob-tenu est alors classifiee par un reseau de neurones polynomial, en integrant l’erreurde reconstruction ε(x) :

f(x) = s(

p∑i=1

wiyi +

p∑i=1

p∑j=1

wijyiyj + w0 + wεε(x))

Page 49: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.1 Approche globale de la detection et de la localisation duvisage : etat de l’art 19

Le reseau de neurones discriminant est appris sur la base de visages precedente,et sur une base de non visages collectee en deux temps. La distance Euclidienneentre une vignette ne contenant pas de visage et le visage moyen resultant del’ACP permet de selectionner 38.834 non-visages proches de la classe visage. Lereseau est entraine une premiere fois, et teste sur des images : 60.000 vignettes denon visages donnant une sortie du reseau superieur a un seuil sont selectionnees.Le reseau est alors appris sur cette base de non visages (ainsi que la base devisages). L’apprentissage se fait par une descente de gradient stochastique de lamoyenne du carre des erreurs. Dans [HSK04][14], l’ACP est testee avec p = 80, 100et 120 vecteurs propres sur un sous ensemble de la base CMU : un meme tauxde detection est obtenue mais un nombre de faux positifs plus faible est obtenueavec p = 100 composantes principales. 109 images de la base CMU contenantun total de 487 visages sont testes : 21 images images de la base CMU originalesont exclus du corpus de test comme ayant ete utilises en apprentissage, ou parcequ’elles contenaient des visages trop petits ou trop grands. Un visage candidat estconsidere comme un vrai positif si il contient les yeux et la bouche d’un visage. Surcette base de test, un taux de detection de 85.4% pour 79 faux positifs est obtenu,avec p = 100 composantes principales. Sur les 23 images contenant 149 visagesde la base MIT utilisee par Sung & Poggio, 84.6% des visages sont correctementdetectes avec un total de 10 fausses alarmes.

1.1.3 Approches basees sur une selection automatique defiltres spatiaux

Le detecteur presente par Viola & Jones [VJ01][15] a constitue un pas impor-tant dans le domaine de la detection de visages pour plusieurs raisons. C’est lepremier detecteur holistique a presenter des capacites de temps reel (voir cha-pitre 4.1.2, p.209) tout en ayant des performances comparables a l’etat de l’art.L’approche qu’il implemente est suffisamment simple pour etre appliquee a ladetection d’autres types d’objet (voitures, traits du visage, mains . . .), et in-terpretee geometriquement. Elle se base sur une selection automatique de filtres2D appliques a l’image monochrome, et a une evaluation iterative de l’importanceaccordee a chaque exemple durant l’apprentissage, operee grace a la procedured’Adaboost. Enfin, une raison supplementaire du succes de ce detecteur est qu’ilest disponible dans OpenCv [Ope][16], de meme que le code des procedures d’ap-prentissage et de test. Nous detaillons cette approche a la section 1.2, car nous

[15] P. Viola and M. Jones. Rapid object detection using a boosted cascade of simple features.In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition,volume 1, pages 511–518, 2001.

[16] OpenCv. Open source computer vision library : http ://source-forge.net/projects/opencvlibrary/.

Page 50: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

20 Un modele d’apparence du visage : le Diabolo

Rotationdans le planautour de z

Rotationhors du planautour de y

y

xz

20 2010 1015 15

Rotationshors du planautour de x

Limitesde détection

Fig. 1.5 – Les trois angles et le repere cartesien definissant la pose du visage.Les visages de la premiere ligne sont correctement detectes par l’approche deViola&Jones, les visages de la seconde ligne, un peu plus inclines, sont manques.

utilisons ce detecteur pour comparer nos resultats en localisation de visage dans lechapitre 3, et comme etape prealable a la poursuite de visages dans le chapitre 4.La figure 1.5 illustre les limites du detecteur en termes d’orientation du visage, dufait qu’il a ete appris sur une base de visage approximativement de face. Nombrede travaux se sont depuis basees sur ce modele d’apparence, nous decrivons dansla presente section les avancees les plus significatives sur cette approche.

Lienhart & Maydt [LM02][17] ont ainsi enrichi l’ensemble des filtres rectangu-laires de Viola&Jones (figure 1.12), avec des filtres de Haar inclines de 45˚(figure1.6). Le taux de faux positifs, pour un taux de detection donne, est diminue de10% par rapport au detecteur utilisant les filtres de base. Ce detecteur est toutefoisplus lent notamment parce qu’il necessite le calcul de deux sommes integrales.

[17] R. Lienhart and J. Maydt. An extended set of haar-like features for rapid object detection.In Proceedings of the IEEE International Conference on Image Processing, pages 900–903,2002.

Page 51: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.1 Approche globale de la detection et de la localisation duvisage : etat de l’art 21

4 Filtres contour 8 Filtres lignes 2 Filtres

centre-périphérie

Fig. 1.6 – Ensemble etendu de filtres de Haar introduit par Lienhardt&Maydt

Dans [LLK03][18] ils etudient l’influence de l’utilisation d’un arbre de decisionremplacant la cascade, et constatent l’amelioration apportee par l’algorithme GentleAdaboost : cet article est decrit plus en details au chapitre 4.2, p.235.

Li&al [LZ04, LZZ+02][19,20] utilisent l’algorithme de ”Floating Search”, intro-duit par Pudil&al [PNK94][21], incorpore par une boucle de retro-action dansla procedure d’Adaboost, donnant le Floatboost pour la selection des filtres. Laprocedure d’Adaboost ajoute iterativement des classifieurs faibles pour donner unclassifieur fort, mais sans verifier que l’ajout de ces classifieurs faibles ne diminuepas le taux d’erreur du classifieur fort. Dans la procedure de Floatboost, lorsquele dernier classifieur faible est ajoute a la somme constituant le classifieur fort,les classifieurs faibles qui ne diminue pas le taux d’erreur du classifieur fort, surla base d’apprentissage, sont elimines de la somme. Cette elimination se fait de

[18] R. Lienhart, L. Liang, and A. Kuranov. A detector tree of boosted classifiers for real-timeobject detection and tracking. In IEEE International Conference on Multimedia & Expo,2003.

[19] S. Z. Li and Z. Zhang. Floatboost learning and statistical face detection. IEEE Transactionon Pattern Analysis and Machine Intelligence, 26(9) :1112–1123, 2004.

[20] S.Z. Li, L. Zhu, Z. Zhang, A. Blake, H. Zhang, and H. Shum. Statistical learning of multi-view face detection. In Proceedings of the 7th European Conference on Computer Vision,volume 4, pages 67–81, 2002.

[21] P. Pudil, J. Novovicova, and J. Kittler. Floating search methods in feature selection.Pattern Recognition Letters, 15(11) :1119–1125, 1994.

Page 52: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

22 Un modele d’apparence du visage : le Diabolo

maniere iterative : le classifieur faible le moins efficace de la somme est elimine tantque cette suppression diminue le taux d’erreur du classifieur fort qui en resulte. Achaque iteration de l’Adaboost, le classifieur faible ajoute est un modele statistique(et non un seuillage), base sur un rapport de vraisemblance, optimise en fonctiondes classifieurs faibles deja incorpores dans la somme. Les differentes orientationsdu visage sont prises en compte par le detecteur (voir figure 1.5). Les rotationshors du plan correspondant a un faible hochement de la tete, de φ = ± 20˚autourde l’axe x, sont pris en compte naturellement par l’approche de Viola&Jones (i.e.leur detection resulte de la variabilite des exemples d’apprentissage). Les rotationsdans le plan de Φ = ± 45˚autour de l’axe z sont prises en compte par le detecteurfinal en appliquant une rotation de ± 30 ˚de l’image de test dans son plan : iciencore, c’est la relative invariance de l’approche de Viola&Jones a l’angle Φ quiest mise a profit, du fait de la variete des exemples d’apprentissage. Les rotationshors du plan autour de l’axe y (i.e. visages de profil) sont traitees en apprenant desdetecteurs de plus en plus specialises sur une classe de rotation, a partir de vuesde profil de -90˚a +90˚ : une cascade de classifieur fort constitue un detecteur, etune pyramide de detecteurs a trois niveaux est construite. Le premier niveau estconstitue d’un detecteur appris sur tous les visages. Le second niveau contient troisdetecteurs appris sur des visages d’angle, autour de l’axe y, respectivement Θ ∈ [-90˚-30 ˚], Θ ∈ [-30˚+30 ˚] et Θ ∈ [+30˚+90 ˚]. Le troisieme niveau est composede 7 detecteurs appris en partititionnant la base de visage en fonction de l’anglede rotation hors du plan du visage Θ en sept groupes. Au niveau deux et trois,lorsqu’une vignette est classifiee non visage par un detecteur, elle est passee audetecteur suivant. Si une vignette 20x20 en entree est classifiee comme visage, elleest inspectee au niveau suivant. Si tous les detecteurs d’un meme niveau rejetentla vignette, elle est classifiee non visage. Si une vignette passe tous les niveaux,le dernier detecteur l’ayant valide donne l’orientation du visage selon l’axe y. Lesexemples de non visages sont selectionnes par une procedure de boostrapping apartir de 100.000 non visages. Les exemples de visages sont synthetises a partir de6.000 visages vues de face et de profil couvrant l’intervalle Θ ∈ [-90˚90˚], commele montre la figure 1.7. Un ensemble de 25.000 visages est genere en appliquantune rotation aleatoire, dans le plan de l’image, des exemples originaux de Φ ∈[-15˚+15˚] autour de z et φ ∈ [-20˚+20˚]. Sur la base CMU-125, leur systemeobtient un taux de detection de 90.2% pour 31 faux positifs, a comparer avec les89.2% de detection et autant de faux positifs pour une cascade apprise sur desvignettes 20x20 selon l’approche de Viola&Jones. Le detecteur de Viola&Jones(24x24) a ete teste, par ces derniers, sur la base MIT entiere de 130 images et507 visages et obtient 88.4% de detection pour 31 faux positifs. La robustesse del’approche est illustree (mais pas quantifiee) sur des images contenant des visagespresentant differentes orientations, le temps de traitement d’une image est toutefoissuperieur a celui du detecteur de Viola&Jones (voir chapitre 4.1.2, p.209).

Page 53: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.1 Approche globale de la detection et de la localisation duvisage : etat de l’art 23

D1

D32 D33D31 D36 D37D34 D35

Visage et sa pose

Non

vis

age

D22 D23D21

Vignette 20x20N

O

O

© 2004 IEEE

O O

N

NNNNNNN

O

NN

OOO OOO

Fig. 1.7 – Exemples de visages d’apprentissage utilises par Li&Zhang, et structurede la pyramide de detecteurs.

Kim & al [KKK05][22] incorporent des detecteurs specialises sur les orienta-tions du visage correspondant a differentes valeurs de l’angle Φ autour de l’axe z(rotation dans le plan) dans une structure pyramidale similaire.

Jones & Viola [JV03][23] traitent le probleme des visages de profil en deuxetapes, utilisant un aiguilleur suivi d’une batterie de detecteurs. Un arbre dedecision appris sur 12 classes d’orientation Θ estime la pose du visage candidat,afin de couvrir l’ensemble des valeurs Θ ∈ [0˚+360˚]. Le deuxieme etage de leursysteme est constitue de 3 detecteurs de visages, chacun etant appris sur une classespecifique d’orientation : Θ ∈ [-15˚+15˚], Θ ∈ [+15˚+45˚], et Θ ∈ [+45˚+75˚].En pivotant de 90˚les filtres rectangulaires chacun de ces detecteurs est re-utilise(a quatre reprise donc) pour couvrir les douze classes d’orientation. Une approchesimilaire (estimation de la pose suivi de detecteurs) est implementee par Whu&al[WAHL04][24].

[22] J-B. Kim, S-C. Kee, and J-Y. Kim. Fast detection of multi-view face and eye basedon cascaded classifier. In Proceedings of the Ninth IAPR Conference on Machine VisionApplications, pages 116–119, 2005.

[23] M. Jones and P. Viola. Fast multi-view face detection. Technical report, Mitsubishi ElectricResearch Laboratories., 2003. Presente en demonstration a Computer Vision and PatternRecognition.

[24] B. Wu, H. Ai, C. Huang, and S. Lao. Fast rotation invariant multi-view face detection based

Page 54: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

24 Un modele d’apparence du visage : le Diabolo

1.1.4 Les approches connexionnistes

Rowley & al [RBK98a][25] utilisent un reseau de neurones discriminant pour ladetection de visage frontaux. Les pre-traitements appliques aux vignettes 20x20sont les memes que ceux presentes par Sung&Poggio [6]. L’architecture du reseauest illustre par la figure 1.8(a) montrant les champs receptifs des neurones caches.Il y a trois types de cellules cachees : quatre cellules sont concentrees sur la vignettedecoupee en quatre regions 10x10, seize cellules sur les blocs 5x5, et six cellules ontpour entrees des bandes 20x5 pixels (se recouvrant partiellement). Chaque type deneurones est ainsi dedie a la modelisation de traits locaux du visage : par exemple,les bandes horizontales contiennent l’information des niveau de gris de la bouche etde la paire d’yeux, tandis que les carres 5x5 contiennent chacun des yeux, le nez ouencore la commissure des levres. En pratique, plusieurs reseaux , contenant deux outrois copies de cette couche cachee, sont construits puis combines selon differentesmethodes comme nous le verrons au chapitre 3. Une base de 15.750 exemples devisages est synthetisee a partir de 1050 visages originaux normalises spatialementen alignant la position des yeux, le nez et la bouche. Une base d’environ 8.000non visages est collectee par une procedure de boostrapping similaire a celle de[SP98b][6]. Sur la base CMU (130 images, 507 visages)1 en combinant deux reseaux(une vignette est classifiee visage si elle l’est par les deux reseaux en meme temps)le taux de detection obtenu est 86.2% pour 23 faux positifs.

Dans [RBK98b][26], la detection de visages est realisee en trois etapes : estima-tion de la pose (angle de rotation dans le plan), rotation dans le plan puis detectionfrontale. La pose du visage est estimee par un reseau de neurones constitue de 400entrees (les niveaux de gris d’une vignette 20x20 corrigee en luminosite, voir figure1.8(b)), 15 neurones caches (d’activation sigmoıdale) et 36 sorties. La sortie sortiei

du reseau desiree pour un visage en entree ayant un angle Φ est cos(Φ − i.10˚).En test, la pose du visage est determinee par le vecteur �u suivant :

�u =( 35∑

i=0

sortiei cos(i.10˚),

35∑i=0

sortiei sin(i.10˚))T

Les 1050 exemples de visages originaux normalises spatialement sont utilises pourgenerer des exemples d’apprentissage avec un angle de rotation dans le plan va-riable. L’angle Φ du visage eventuellement present dans une vignette est estime

1corpus de test qu’ils ont constitues en ajoutant des exemples a la base MIT de Sung&Poggio

on real adaboost. Proceedings of the Sixth IEEE International Conference on AutomaticFace and Gesture Recognition, 00 :79–84, 2004.

[25] H. A. Rowley, S. Baluja, and T. Kanade. Neural network-based face detection. IEEETransactions on Pattern Analysis and Machine Intelligence, 20(1) :23–38, 1998.

[26] H. A. Rowley, S. Baluja, and T. Kanade. Rotation invariant neural network-based facedetection. In Proceedings of the IEEE Conference on Computer Vision and Pattern Re-cognition, volume 1, pages 38–44, 1998.

Page 55: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.1 Approche globale de la detection et de la localisation duvisage : etat de l’art 25

© 1998 IEEE

(a)

(b)

Fig. 1.8 – Vue d’ensemble de l’approche neuronale de Rowley&al : (a) Detectionde visages frontaux, (b) Estimation de la pose du visage candidat, rotation dansle plan de la vignette suivi du detecteur de visages frontaux

par le reseau, puis une rotation dans le plan image de la vignette est operee demaniere a remettre le visage candidat de face, avant d’etre appliquee au detecteurde visages frontaux. Ce detecteur est efficient pour des angles Φ ∈ [-10˚+10˚], etla pose est determinee avec une precision de ± 10% : les deux reseaux sont alorscompatibles. Sur la base CMU (dans laquelle 469 visages sur 507 verifient Φ ∈ [-10˚+10˚]) le taux de detection obtenue est de 76.9% pour 34 faux positifs. Cetteapproche est donc moins efficace dans le cas de visages de face que le detecteur devisage frontaux seul. Toutefois sur une base d’exemples plus variable en terme deposes du visage (”Rotated Test Set” de la base CMU, 50 images, 223 visages dont210 ont une pose |Φ| > 10˚), cette approche obtient 85.7% de detection pour 15faux positifs, contre 13% et 11 fausses alarmes pour le detecteur frontal seul.

L’utilisation de champs receptifs locaux et de poids partagees dans un reseau deneurones discriminant est developpee dans les travaux de LeCun [LeC87][27]. Dans

[27] Y. LeCun. Modeles Connexionistes de l’Apprentissage. PhD thesis, Universite Pierre etMarie Curie, Paris, France, 1987.

Page 56: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

26 Un modele d’apparence du visage : le Diabolo

5

5

Couche d’entrée 20x20 (niveaux de gris)

C1

C21 neurone

22

Poids partagés :mêmes 26 poids

pour chaquechamp récepteur

5 poids partagés

f3

f4

f1

f2

visa

ge?

8x8neurones

16x16neurones

MLPCouches convolutionnelles

f1

f2

f3

f4

Fig. 1.9 – Architecture du reseau de neurones convolutionnel de Vaillant&al

[VML94][28], les auteurs decrivent l’architecture d’un reseau de neurones convo-lutionnel applique a la detection de visages. Comme le montre la figure 1.9, cereseau est compose de trois couches cachees, une couche d’entree correspondant al’image et un neurone de sortie. La premiere couche cachee C1 est constituee de4 feature maps {fi}4i=1 correspondant chacune a 16x16 neurones. Chaque neuroneest connecte a un champ receptif correspondant a un bloc 5x5 pixels de la retine20x20 d’entree : en faisant glisser le champ receptif d’un pas de 1 pixel verticale-ment et horizontalement, on parcourt 16x16 blocs au total. Pour une ”feature map”donnee, les poids sont partages, c’est-a-dire que les 26 poids (5x5 plus un biais) as-socies a chaque neurones sont les memes : une ”feature map” fi est alors le resultatde la convolution de la vignette avec un noyau (i.e. le tableau des poids) apprissur une base d’exemples. Pour chaque couche, 4 fi sont employes (avec des poidsdifferents), chacune modelisant une information de texture differente. Une featuremap fi de la seconde couche C2 est constituee de 8x8 neurones. Chaque neuroneest connecte a un champ recepteur 2x2 de la ”feature map” correspondante dansla couche C1. Les 5 poids (4x4 plus un biais) sont partages dans fi : fi est donc la

[28] R. Vaillant, C. Monrocq, and Y. LeCun. Original approach for the localisation of objectsin images. In IEE Proceedings on Vision, Image, and Signal Processing, volume 141, pages245–250, 1994.

Page 57: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.1 Approche globale de la detection et de la localisation duvisage : etat de l’art 27

convolution de la ”feature map” fi de la couche precedente par un noyau appris.La derniere couche est constituee de 4 neurones, chacun completement connectea la couche C2, les poids (pour chaque neurone, il y en a 8x8x4+1) ne sont paspartagees : cette couche ainsi que le neurone de sortie sont dedies a la classificationa partir de l’information extraite par les couches precedentes). Le nombre de poidsa apprendre est de 1157, beaucoup plus petit que le nombre de connexions quemontre la figure 1.9.

Garcia & Delakis [GD04][29] ont contribues a populariser les reseaux de neuronesconvolutionnels : leur detecteur de visages, le CFF (pour Convolutionnel FaceFinder), obtient un taux de detection de 90.3% pour 8 fausses alarmes sur la basede test CMU, constituant les meilleures performances sur cette base a ce jour. Lesvisages candidats contenant les yeux et la bouche, et dont l’aire est 20% superieurea celle du rectangle de la verite terrain, sont consideres comme vrais positifs. Leurtechnique permet de detecter des visages de taille 32x36 pixels, dans des posescorrespondant a Φ = ±25˚et Θ = ±60˚. La figure 1.10 illustre l’architecturedu reseau convolutionnel qu’ils emploient : en depit de sa complexite, le nombrede poids a apprendre est de 951 pour un total de 124.741 connexions. Ce faiblenombre est du a l’emploi des poids partages et le fait que les neurones de la dernierecouche cachee (notee N1 sur le schema de la figure 1.10) ne sont que partiellementconnectes a la couche precedente, contrairement a l’approche de Vaillant&al, ou lamajeure partie des poids est contenue dans le MLP. 25.212 exemples de visages sontsynthetises a partir de 3.702 images de visages originales : les exemples originauxsont d’abord normalises a la taille 32x36 (en utilisant la position des yeux etde la bouche) et contiennent le visage ainsi qu’une partie du fond qui n’est pasmasquee afin d’apporter une information supplementaire sur l’ovale du visage. Lesexemples sont synthetises en appliquant des transformations geometriques (miroir,rotations) et radiometriques (lissage et reduction de contraste). 25.087 non visagessont collectes par une procedure de boostrapping debutant avec un ensemble initialde 6.422 contre exemples et l’ensemble des visages. Un point interessant des reseauxde neurones convolutionnels est que les ”feature maps” fi de chaque couche peuventetre calculees rapidement en convoluant l’image entiere dans un premier temps,les fi etant alors obtenues en parcourant les images convoluees avec une retine. Ladetection de visages consiste alors a construire une pyramide d’images, en reduisantplusieurs fois l’image de depart d’un facteur fQ = 1.2, et pour chaque echellea calculer les images de convolution sur l’image reduite entiere, puis a classifierchacune des vignettes 32x36 qu’elle contient. En test, aucun pre-traitement n’estrealise sur les vignettes, la variabilite en illumination est prise en compte durantla constitution de la base d’apprentissage.

[29] C. Garcia and M. Delakis. Convolutional face finder : A neural architecture for fast androbust face detection. IEEE Transaction on Pattern Analysis and Machine Intelligence,26(11) :1408–1423, 2004.

Page 58: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

28 Un modele d’apparence du visage : le Diabolo

Feraud & al [FBVC01][30] emploient une approche generative particuliere : unmodele generatif contraint. Le modele est generatif car l’apprentissage consiste areconstruire en sortie un visage. Il est contraint parce que des exemples de nonvisages sont utilises durant l’apprentissage, de maniere astucieuse. Leur approcheconnexionniste est constituee par un reseau de neurones auto-associateur, le Dia-bolo, dont le nombre de sorties est egal au nombre d’entrees. Le reseau est constituede deux couches cachees contenant respectivement 35 et 50 neurones non lineaires.Le pre-traitement d’une vignette x 20x15 pixels consiste en une egalisation d’his-togramme, suivie d’un lissage et de la soustraction du visage moyen de la based’apprentissage : le nombre d’entrees et de sorties du Diabolo est de 300. La fonc-tion de cout minimisee durant l’apprentissage est l’erreur de reconstruction duDiabolo, c’est-a-dire la somme du carre des erreurs entre PNN (x) la sortie desireeet PW (x) la sortie reconstruite par le Diabolo :

CW =

300∑i=1

PW (xi)− PNN(xi)

La sortie desiree PNN (x) est egale a l’entree si l’exemple d’apprentissage est unvisage ; dans le cas d’un exemple de non visage, la sortie desiree est la moyennedes k-plus-proche-voisins {vi}ki=1 ∈ V de l’exemple, ou V designe les visages d’ap-prentissage :

PNN(x) =

{x si x ∈ V

1k

∑ki=1 vi si x /∈ V

En pratique, quatre Diabolos sont appris sur des visages d’orientations differentes :Θ ∈ [0˚20˚], Θ ∈ [20˚40˚], Θ ∈ [40˚60˚], et Θ ∈ [60˚80˚]. Pour chaqueorientation, les exemples de visages sont selectionnes parmi 2000 visages par uneprocedure de boostrapping. Les contre-exemples sont aussi selectionnes par boos-trapping, une collection d’approximativement 2000 non visages par Diabolo estutilisee. Un melange conditionnel de ces modeles est opere : les performancesen detection de visages sont ameliorees, comparees a celle d’un modele generatifcontraint seul, notamment dans le cas de visages de profil. D’autres schemas decombinaison des Diabolos sont testes, comme nous le voyons au chapitre 3. Sur labase CMU, leur approche obtient 86% de reussite pour 8 fausses alarmes.

[30] R. Feraud, O.J. Bernier, J-E. Viallet, and M. Collobert. A fast and accurate face de-tector based on neural networks. IEEE Transactions on Pattern Analalysis and MachineIntelligence, 23(1) :42–53, 2001.

Page 59: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.1 Approche globale de la detection et de la localisation duvisage : etat de l’art 29

© 2004 IEEE

Fig. 1.10 – Architecture du reseau de neurones convolutionnel de Garcia&Delakis

© 2001 IEEE

Fig. 1.11 – Architecture du reseau Diabolo de Feraud&al

Page 60: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

30 Un modele d’apparence du visage : le Diabolo

1.2 Presentation du detecteur de Viola&Jones

Le detecteur de visages utilise, pour comparer nos resultats (chapitre 3) etpour initialiser un systeme de poursuite de visages (chapitre 4), est une versiondu systeme developpe par Viola&Jones [VJ01][15], ameliore par Lienhart&Maydt[LM02][17] et rendue publique dans OpenCv. Il est base sur des filtres rectangulairesdits de Haar, et illustres par la figure 1.12. Un ensemble de plus de 180.000 filtres[VJ01][15], pour une retine de taille mxn=24x24 pixels, est constitue a partir de cesprototypes en multipliant independamment la hauteur et la largeur des rectanglespar un nombre entier, et en comptant les differentes positions de l’image ou cesfiltres peuvent etre centres dans la retine. Le nombre de filtres definissable variecomme m4 ou m = 24, c’est-a-dire le nombre de positions possibles multiplie parle nombre de tailles. Un classifieur statistique est appris sur une base d’imagesmonochromes de visages et de non-visages de taille fixe 24x24 (ou 20x20), parune procedure de boosting adaptative. La selection des filtres rectangulaires misen oeuvre par chacun des classifieurs boostes se fait automatiquement durant l’ap-prentissage. Le schema de la figure 1.15 montre que ce classifieur est compose d’unecascade attentionnelle composee de classifieurs boostes. La detection de visages sefait par une approche basee sur un codage retinien : une fenetre glissante de taille24x24 scanne l’image et chaque sous-image est classifiee visage ou non-visage parla cascade. La fenetre est ensuite agrandie d’un facteur fq, et scanne a nouveaul’image a plus grande echelle, l’image gardant sa resolution initiale : moins devignettes sont alors visees par le classifieur.

1.2.1 Representation de l’image : filtres spatiaux et classi-fieurs faibles associes

La figure 1.13 donne un exemple de vignette sur laquelle est applique un filtrede Haar. Chaque filtre est defini par :

– un ou deux rectangles gris inclus dans un rectangle blanc comme le montrela figure 1.12.

– ses dimensions, largeur l0 et hauteur h0 a la premiere echelle, ou l0 et h0 sontdes multiples entiers des dimensions des filtres rectangulaires de base illustrespar la figure 1.12. La taille lxh du filtre a l’echelle n est alors : l = fn−1

q l0 et

h = fn−1q h0 (la barre indiquant l’arrondi entier le plus proche).

– sa position dans la retine : si elle est definie en (x0, y0) a l’echelle un, elledevient (fn−1

q x0, fn−1q y0) a l’echelle n.

Les filtres sont constitues de deux a trois rectangles : les filtres contours et lesfiltres lignes en ont deux, les filtres diagonales trois. A chaque filtre est associe unclassifieur faible ayant pour entree une imagette et pour sortie la classe, visage ounon-visage, de l’entree ; sa fonction discriminante est definie par l’equation (1.3)

Page 61: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.2 Presentation du detecteur de Viola&Jones 31

-1 2

2 -1

2

-1

2

-1

-1

2

2 -1

-1 2

-1 3 -1

-1

3

-1

Filtres contours Filtres lignes Filtres diagonales

2

-1

Fig. 1.12 – Filtres rectangulaires dits de Haar mis en oeuvre par la cascade avec lespoids ω associes aux rectangles blancs entiers et aux rectangles gris qu’ils incluent

. Un classifieur faible seul est insuffisant pour detecter un visage avec un taux dereussite acceptable. Le boosting permet de combiner des classifieurs faibles pourobtenir un classifieur fort dit booste.

Un classifieur booste est une somme ponderee de classifieurs faibles, sommeconstruite de maniere iterative par une procedure d’Adaboost selectionnant a chaqueiteration le meilleur classifieur faible a ajouter, ainsi que le poids qui lui est as-socie. Plusieurs classifieurs boostes, de complexite croissante, sont mis en cascadeafin d’obtenir un classifieur efficace, tant en terme de vitesse que de performances.Nous detaillons cette procedure d’apprentissage a la section suivante.

Pour chaque filtre, un operateur differentiel est applique entre la portion d’imagesituee sous le rectangle entier et l’image sous le rectangle grise est calcule. La va-leur sj issue du filtre j est ainsi la somme ponderee de deux termes : la somme despixels situes dans le rectangle entier (blanc+noir), indexe par 1 dans la formule(1.2), et la somme des pixels inscrit dans le rectangle gris (indexe par 0).

sj = ωj,1

∑(x,y)∈Rect1

I(x, y) + ωj,0

∑(x,y)∈Rect0

I(x, y) (1.2)

Le rectangle gris se voit affecte un poids inversement proportionnel a l’aire qu’iloccupe dans le rectangle entier. La figure 1.13 illustre le cas d’un filtre constitued’un rectangle gris inscrit dans un rectangle blanc d’aire trois fois plus elevee.

Page 62: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

32 Un modele d’apparence du visage : le Diabolo

,1j

Filtre j définie par sa forme et sa position dans la rétine

Rectangle gris Rect0affecté du poids

Rétine et la vignette qu’elle contient

m=24 pixels

n=24

pix

els

,0 ,13j j

Rectangle blanc Rect1contenant Rect0

et affecté du poidsh

l

Fig. 1.13 – Un filtre rectangulaire est defini par sa forme, sa taille et sa positiondans la retine de recherche

L’equation (1.2) retourne ainsi la difference entre la somme des niveaux de grissitues sous le rectangle gris et la somme des niveaux de gris des deux rectanglesblancs qui lui sont adjacents, en affectant un meme poids moyen a chaque rec-tangle. Une amelioration apportee par Lienhart [LKP02][31] dans OpenCv est lanormalisation de ces poids lorsque la vignette parcourt l’image a une echelle n > 1.En effet, les filtres rectangulaires sont agrandis d’un facteur fn−1

Q , mais la sommedes pixels (de meme que la somme du carre des niveaux de gris comme nous allonsle voir) est calculee en faisant reference a des points de coordonnees entieres d’uneimage integrale. L’arrondi vers l’entier le plus proche est opere pour determinerchacun des quatres points de l’image integrale (et de l’image auxiliaire permettantle calcul de la variance, pour la correction de luminosite decrite plus bas). Il estdemontre dans [LKP02][31] que cette operation d’arrondi a un impact considerablesur les performances du detecteur final. En effet, le rapport entre l’aire du rec-tangle blanc et l’aire du rectangle gris qu’il contient peut alors differer de sa valeura l’echelle n = 1, echelle a laquelle les classifieurs ont ete appris. Les poids dechaque rectangle, pour un filtre donne, sont corriges a l’echelle n de maniere aconserver le meme rapport d’aire qu’a l’echelle 1. De l’ordre de dix fois plus defaux positifs, pour un meme taux de detection, sont obtenus sans cette correction

[31] R. Lienhart, A. Kuranov, and V. Pisarevsky. Empirical analysis of detection cascades ofboosted classifiers for rapid object detection. Technical report, Microprocessor ResearchLab, Intel Labs, 2002.

Page 63: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.2 Presentation du detecteur de Viola&Jones 33

[LKP02].

Un classifieur fj est associe au filtre j. Appele classifieur faible, il est defini parun sur la valeur sj . Il s’agit d’un arbre de decision a deux noeuds terminaux :

fj =

{1 si sj ≥ τj (visage)0 si sj < τj (non− visage)

(1.3)

Un nombre important de classifieurs faibles sont a combiner, et la difference cal-culee par l’equation (1.2) pour chaque filtre et a chaque echelle est consomma-trice en temps de calcul. Viola&Jones utilisent une representation intermediairede l’image, l’image integrale II qui permet de calculer ces valeurs de maniererapide sur l’image monochrome I, en une seule passe.

II(x, y) =∑x′≤x

y′≤y

I(x′, y

′) (1.4)

L’image integrale peut etre calculee en une passe sur l’image I par recurrence, enparcourant chaque ligne de l’image selon les x croissants et en changeant de ligneselon les y croissants. En effet :

I(x, y) =∑x′≤x

I(x′, y)−

∑x′≤x−1

I(x′, y)

or ∑x′≤x

I(x′, y) =

∑x′≤x

y′≤y

I(x′, y

′)

︸ ︷︷ ︸II(x, y)

terme recherche

−∑x′≤x

y′≤y−1

I(x′, y

′)

︸ ︷︷ ︸II(x, y − 1)

precedemment calcule

et ∑x′≤x−1

I(x′, y) =

∑x′≤x−1

y′≤y

I(x′, y

′)

︸ ︷︷ ︸II(x− 1, y)

precedemment calcule

−∑

x′≤x−1

y′≤y−1

I(x′, y

′)

︸ ︷︷ ︸II(x− 1, y − 1)

precedemment calcule

D’ou l’on deduit la formule a appliquer pour calculer l’image integrale :

II(x, y) = I(x, y) + II(x− 1, y) + II(x, y − 1)− II(x− 1, y − 1) (1.5)

en posant II(−1, y) = II(x,−1) = 0, ce qui fait en particulier que l’image integraleest de dimensions (W + 1)x(H + 1) pour une image de taille WxH . La somme

Page 64: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

34 Un modele d’apparence du visage : le Diabolo

Somme(A)=II(x0,y0)

A B

C Rect

x0 x0+w-1

y0

y0+h-1

00

x

y

Somme(AUB)=

II(x0+w-1,y0)

Somme(AUC)=

II(x0,y0+h-1)

Somme(AUBUCURect)=

II(x0,y0+h-1)

Fig. 1.14 – II(x0, y0) est, par definition, la somme des niveaux de gris situes sousle rectangle A. La somme des pixels situes sous le rectangle Rect est la somme deceux situes sous les quatres rectangles moins la somme des pixels sous les rectanglesA et B, moins la somme des pixels sous les rectangles A et C, plus la somme despixels sous le rectangle A

des niveaux de gris des pixels inclus dans un rectangle Rect = (x0, y0, w, h) dedimensions wxh et dont le coin haut gauche est a la position (x, y) se deduit alorsde l’image integrale par quatre operations de lecture de l’image integrale :∑(x, y)∈Rect

I(x, y) = II(x0+w−1, y0+h−1)−II(x0+w−1, y0)+II(x0, y0+h−1)−II(x0, y0)

L’image integrale n’est en particulier calculee qu’une seule fois par image, etun classifieur faible j donne y fait reference pour le calcul de la difference sj enun temps constant quelque soit l’echelle. Tous les vignettes visees par la cascadeen test, de meme que tous les exemples d’apprentissage, sont normalises par lavariance, afin de diminuer la sensibilite du detecteur aux conditions d’eclairement.Soit ainsi Rect la vignette courante (i.e. sa position et ses dimensions wxh), l’ima-gette appliquee en entree de la cascade est celle dont les niveaux de gris sontcorriges par la formule suivante :

I′(x, y) =

I(x, y)− µ

ou µ et σ sont respectivement la moyenne et l’ecart-type des niveaux gris sur lavignette. Le niveau moyen de gris est la somme des pixels dans la vignette divise

Page 65: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.2 Presentation du detecteur de Viola&Jones 35

par son aire. σ en revanche necessite de calculer la somme du carre des niveaux degris :

σ2 =

∑(x,y)∈Rect I(x, y)2

wxh− µ2

Cette somme est calculee par la meme astuce de l’image integrale. La sommeintegrale du carre des niveaux de gris correspondante est obtenue en remplacantle terme I(x, y) par I(x, y)2 dans l’equation (1.5).

1.2.2 Apprentissage d’une cascade de classifieurs forts

Un classifieur plus complexe Fk, dit classifieur booste ou fort, agrege n classi-fieurs faibles :

Fk = sign

(n∑

i=1

cifi − seuil

)(1.6)

La somme ponderee (1.6) des classifieurs faibles est obtenue iterativement parune procedure de boosting decrite au tableau 1.1. A chaque iteration, le seuil dedecision τi d’un classifieur faible fi est appris et un poids ci lui est assigne enfonction de son taux d’erreur sur la base d’apprentissage : plus l’erreur de fi estpetite et plus ci est eleve. La selection du classifieur fi est faite par la procedured’Adaboost (Adaptive boosting [FS96][32]) : tous les classifieurs fk sont en pratiqueappris, et le classifieur faible retenu fi est celui qui produit la plus petite erreur surla base d’apprentissage. Le classifieur ainsi appris est ajoute a la somme (1.6), etle poids de chaque exemple d’apprentissage est mis a jour de maniere a mettre envaleur les exemples mal-classes par la nouvelle somme Fk lors de l’apprentissagedu classifier faible suivant.

On demontre [32] qu’en utilisant un nombre suffisant de classifieurs faibles fi,le taux de detection de Fk peut etre arbitrairement grand avec un taux de fauxpositifs arbitrairement petit. A condition que les classifieurs faibles soient un tantsoit peu meilleurs que le hasard, c’est-a-dire, comme explicite dans le tableau 1.1,qu’ils soient capables de classifier correctement au moins la moitie des exemplesd’apprentissage. Mais le nombre de classifieurs faibles necessaire, et donc le tempsde calcul, seraient alors excessivement eleves. L’idee introduite par Viola et Jones[VJ01][15] est d’implementer une ”cascade attentionnelle” : N classifieurs boostesde complexite croissante sont mis en serie. Ces classifieurs Fk utilisent un nombrede filtres croissant avec k sur le schema de la figure 1.15. L’apprentissage de lacascade se fait en y ajoutant des classifieurs forts de maniere iterative. Pour cefaire, une base de validation, ne contenant pas les exemples de la base d’appren-tissage, est employee. Un classifieur fort est appris selon la procedure de boosting

[32] Y. Freund and R. E. Schapire. Experiments with a new boosting algorithm. In InternationalConference on Machine Learning, pages 148–156, 1996.

Page 66: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

36 Un modele d’apparence du visage : le Diabolo

F0 F1 FN-2 FN-1 Visage

Non-visageVignetted’entrée

Complexité du classifieur Fk

Classifieurs forts

N N N N

Fig. 1.15 – Cascade de classifieurs boostes : les classifieurs les plus simples et lesplus rapides rejettent un maximum de fausses alarmes, les classifieurs plus com-plexes se concentrent alors sur les zones de l’image les plus proche de l’apparenced’un visage

decrite dans le tableau 1.1 : le seuil est choisi de maniere a classifier correctement99.9% des visages et 50% des non-visages de la base de validation. Le nombreT d’iterations est incremente jusqu’a ce que ces taux soient atteints. Le classi-fieur booste est alors agrege en serie aux precedents. Les exemples d’apprentissageclassifies comme visage par tous les etages precedents constituent la base d’ap-prentissage du classifieur fort suivant, dont le seuil et le nombre de classifieursfaibles sont aussi determines sur la base de validation. Par voie de consequence, lesexemples d’apprentissage sont de plus en plus complexes (i.e. les visages et non-visages sont plus similaires) a mesure que l’on avance dans la construction de lacascade : il en resulte un nombre necessaire de classifieurs faibles plus important,avec beaucoup plus de filtres ”diagonales”. Le nombre de classifieurs forts dans lacascade est alors determine par les performances que l’on cherche a obtenir sur labase de validation. En choisissant d’arreter l’apprentissage de chaque Fk lorsqu’ilatteint un taux de detection de 99.9% pour un taux de faux positifs de 50%, pourk = 1 a N , alors un ensemble de N = 25 classifieurs boostes permet d’atteindre,sur la base de validation, un taux de detection de 99.9%25 = 97.5% pour un tauxde faux positifs de l’ordre de 10−8 (50%25).

Le classifieur le plus simple est le premier auquel les vignettes sont mises en

Page 67: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.2 Presentation du detecteur de Viola&Jones 37

0 5 10 15 20 25

916

2732

52

62

72

83

99

115

127135

159

169

181

200

211

Numéro du classifieur boosté

No

mb

re d

e cl

assi

fieu

rs f

aib

les

Fig. 1.16 – Nombre de classifieurs faibles contenus dans chacun des 25 classifieursboostes de la cascade 24x24

(a) (b) (c)

(d) (e) (f)

Fig. 1.17 – Les neufs filtres de Haar du premier classifieur fort F0 de la cascade

Page 68: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

38 Un modele d’apparence du visage : le Diabolo

Soit une base d’apprentissage {(x1, y1), . . . , (xN , yN)} de N = m + l exemplesxi etiquetes yi, m etant le nombre d’exemples negatifs (yi = 0) et l le nombrede positifs (yi = 1).Chaque exemple xi est une image en niveau de gris de taille 24x24corrigee en luminosite : xi ∈ R576 car 24x24=576.

- Initialisation des poids : w1,i = 1m

, 1l

pour yi = 0, 1 respectivement

- Pour t=1, . . . , T :

1. Normaliser les poids : wt,i ← wt,i∑Nk=1 wt,k

2. Apprendre chaque filtre j, le classifieur faible fj qui lui est associede maniere a minimiser l’erreur εj =

∑i wt,i|fj(xi)− yi|

(εj est necessairement inferieur a 1 vu la normalisation des poids, eta 0.5 si le classifieur faible fj est un peu meilleur que le hasard)

3. Selectionner le classifieur faible ft ayant la plus petite erreur εt, etlui affecter un poids αt = ln( 1−εt

εt)

(αt est d’autant plus petit que εt est grand, et est necessairement ≥ 0)

4. Mettre a jour les poids en penalisant les exemples les mieux classifiespar ft :

wt+1,i =

{wt,ie

−αt si ft(xi) = yi (xi correctement classifie)wt,i si ft(xi) �= yi (xi mal classifie)

- Le classifieur booste final est alors defini par :

F(x) =

{1 si

∑Tt=1 αtft(x) ≥ seuil

0 sinon

Tab. 1.1 – L’algorithme d’apprentissage par Adaboost Discret

entree et sert a rejeter les regions les plus simples a discriminer, avant d’appelerles classifieurs suivants, plus complexes, et utilisant des filtres differents. Ainsi,70 a 80% des candidats sont rejetes par les deux premiers classifieurs boostes[BKP05][33], utilisant les filtres les plus simples (contours et lignes) illustres par

[33] G. Bradski, A. Kaehler, and V. Pisarevsky. Learning-based computer vision with Intel’s

Page 69: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.2 Presentation du detecteur de Viola&Jones 39

Fig. 1.18 – Les filtres de Haar du second etage F1 de la cascade

open source computer vision library. Intel Technology Journal, 9(2) :119–130, May 2005.

Page 70: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

40 Un modele d’apparence du visage : le Diabolo

les figures 1.17 et 1.18. La cascade employee ici est constituee de 25 classifieursboostes contenant chacun entre 9 et 211 classifieurs faibles, comme le montre legraphique de la figure 1.16. Le premier etage de la cascade en contient neuf, ilssont illustres par la figure 1.17. Ces filtres sont interpretables physiquement. Lepremier (1.17 a) mesure la difference entre la luminosite d’une region contenantles yeux et celle des regions contenant les sourcils et le nez. Le filtre suivant (1.17b) analyse la difference entre la luminance de la cloison nasale et celle des yeux,tandis que le troisieme compare le nez avec les yeux et le haut de la bouche. Leparallele avec le detecteur de visages de [YH94][34] est notable. Le detecteur deYang&Huang code en effet des regles decrivant des caracteristiques du visage etleur relations. La premiere etape de leur approche est une description sommaire duvisage sur une image de faible resolution : le centre du visage a quatre sous-partiesd’intensite approximativement uniforme ; de meme pour la partie ronde autour del’interieur du visage et la difference de niveau de gris moyen entre ces deux partiesest significative.

1.2.3 Classification et arbitrage entre detections multiples

En pratique, la retine a l’echelle n parcourt une ligne sur max(2, fn−1Q ) de

l’image, et se deplace horizontalement avec un meme pas sauf si la cascade detecteun visage. Dans ce dernier cas la position horizontale suivante n’est pas evalueepar la cascade : voir tableau 1.2. Le pas varie comme l’echelle a laquelle l’imageest parcourue : le visage doit etre centre approximativement dans la retine, commel’etaient les exemples positifs d’apprentissage, pour etre detecte. Ainsi, a plus petiteechelle, un pas trop grand pourrait deplacer le detecteur dans l’image de sorte quele visage soit en trop grande partie en dehors de la retine. A plus grande echelle enrevanche un pas trop petit multiplierait le nombre de vignettes a evaluer, et donc letemps de calcul, pour un gain en precision qui n’a pas de sens etant donne l’etaped’arbitrage entre detections multiples qui est operee par la suite (cet arbitrage estdecrit plus bas).

Le pas avec lequel l’image est parcourue, horizontalement et verticalement,depend en particulier de la complexite de l’image : l’image d’un fond blanc, parexemple, sera parcourue a plus de positions qu’une image contenant un visage,mais sera traitee beaucoup plus rapidement comme ayant peu de chance de passerle premier etage de la cascade. Le nombre total de vignettes appliquees en entreedu detecteur depend donc de la complexite de l’image, mais aussi du nombre etde la taille des visages eventuellement presents dans la scene.

Le tableau 1.3 donne la taille et le nombre de vignettes par echelle pour un

[34] G.Z. Yang and T.S Huang. Human face detection in a complex background. PatternRecognition, 27(1) :53–63, 1994.

Page 71: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.2 Presentation du detecteur de Viola&Jones 41

Soient worigxhorig la taille de la retine a l’echelle 1 (24x24 ou 20x20),et WxH la taille de l’image. On pose facteur = fn−1

Q .

Tant que worigxfacteur < W et horigxfacteur < H :

- Agrandir la taille de la retine, ainsi que celle des filtres de Haar :

wn = worigxfacteur et hn = horigxfacteur

- Poser step = max(2, facteur), ymax = (H−hn

step) et xmax = (W−wn

step)

- Pour y=0, . . . , ymax (par pas de 1) :Y = y.step et xstep = 1- Pour x =0, . . . , xmax par pas de xstep :

X = x.stepAppliquee la vignette de coin haut gauche (X,Y)et de taille wnxhn en entree des deux premiersetages F0 et F1 de la cascade :xstep = 2,et passer la vignette au reste de la cascade sinon xstep = 1

- Incrementer n.

Tab. 1.2 – Approche retinienne du detecteur de visage implemente par OpenCV

facteur fq = 1.2 classique en detection de visages [GD04, FBVC01, RBK98a][29,30,25]. L’image utilisee est une image de la sequence Antonio (AC left.avi) disponiblesur le site de Microsoft Research Cambridge [Cam]. L’image de la figure 1.19 a etereduite d’un facteur 2 avant traitement par le detecteur de maniere a ce que l’imagetraitee ait pour dimensions 160x120 pixels : le nombre d’echelles a parcourir parla retine d’entree du detecteur est alors de neuf.

La figure 1.19 montre de multiples detections du visage : la relative insensibiliteau cadrage de la cascade fait que le visage est detecte plusieurs fois, a des positionset a des echelles voisines les unes des autres. Leur nombre est donc un indice de

Echelle n 1 2 3 4 5 6 7 8 9facteur fn−1

Q 1 1.2 1.44 1.73 2.07 2.49 2.99 3.58 4.3

taille de laretine (wn = hn)

24 29 35 41 50 60 72 86 103

Nombre devignettes

1900 1800 1510 1480 1100 575 273 110 29

Tab. 1.3 – Nombre de vignettes traitees par le detecteur de visage et taille de laretine en fonction de l’echelle pour une image 160x120 et fQ = 1.2

Page 72: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

42 Un modele d’apparence du visage : le Diabolo

Fig. 1.19 – Resultats du detecteur de visage, applique a l’image reduite d’unfacteur 2 de la sequence Antonio

confiance dans la detection : a l’inverse un faux positif est souvent detecte seul.La figure 1.20 (a) donne l’exemple de deux faux positifs detectes a des positionset a des echelles differentes : ces faux positifs sont isoles. A l’inverse, les vraispositifs de la figure 1.20(b) sont nombreux et ont lieu autour du visage : cesdetections multiples sont integrees pour ne retourner qu’une position moyenne.Pour ce faire, l’ensemble des detections est partitionne en sous-ensembles constituesdes rectangles se recouvrant. Pour chaque sous-ensemble un rectangle, moyennede tous les rectangles du sous ensemble, est calcule. Le cardinal de chaque sous-ensemble est note nvoisins. Finalement, les petits rectangles approximativement al’interieur d’un plus grand rectangle sont elimines. Plus precisement ce processusde filtrage exclut un rectangle r1, de coin haut gauche (x1

0, y10) et de coin bas droit

(x11, y

11), si il existe un rectangle moyen r2 de largeur w2 et de coins (x2

0, y20) et

(x21, y

21) tel que :

Coins haut gauche : x10 ≥ x2

0 + 0.2w2 et y10 ≥ y2

0 + 0.2w2

Coins bas droit : x11 ≤ x2

1 + 0.2w2 et y11 ≤ y2

1 + 0.2w2

Un filtrage des faux positifs resultants peut alors etre realise en fixant un seuil deconfiance sur le nombre nvoisins de detections voisines. Un seuil eleve permet defiltrer tous les faux positifs, mais reduit considerablement le taux de detection devisages. Un bon compromis correspond a filtrer les detections moyennant plus dedeux rectangles voisins : nvoisins ≥ 2⇒ visage.

Page 73: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.2 Presentation du detecteur de Viola&Jones 43

Fauxpositifs

Visagemanqué

(a)

Fauxpositif

4 vrais positifs

Rectanglefinal

(b)

Fig. 1.20 – (a) Les faux positifs sont isoles, et le visage, trop incline pour etredetecte, est manque. (b) Un faux positif est isole, tandis que plusieurs vrais positifssont detectes dans un meme voisinage de l’image : le rectangle rouge, moyenne deces detections, constitue la localisation finale du visage.

Page 74: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

44 Un modele d’apparence du visage : le Diabolo

1.3 Le Diabolo : un modele d’apparence generatif

Les premiers modeles de neurones formels ont ete introduits par McCulloch etPitts [MP43][35], et avaient pour fonction d’activation une fonction de seuil binaire.Ils montrerent que des neurones formels simples peuvent realiser des fonctions lo-giques et arithmetiques complexes. L’idee de l’apprentissage de reseaux de neuronesprend naissance avec les travaux du physiologiste Hebb [Heb77][36], qui enonce quedeux neurones synchrones, i.e. actives par un meme stimulus, sont relies par unesynapse de poids fort. Inversement, si les deux neurones sont actives par des sti-mulus differents, la synapse doit inhiber la transmission de l’influx nerveux d’unneurone a l’autre. Une synapse reliant deux neurones a donc un poids qui variedurant l’apprentissage.Rosenblatt [Ros58][37] introduit le modele de reseau de neurones Perceptron, inspiredu systeme visuel. Il s’agit d’un classifieur lineaire ayant pour entrees un vecteur xet pour sortie un scalaire y dont le signe distingue les exemples positifs et negatifs :

y =< w,x > +b

ou w est le vecteur des poids, b un biais, et < ., . > est le produit scalaire. L’ap-prentissage se fait par une modification iterative des poids : ces derniers sontmodifies sur les exemples d’apprentissage mal classes jusqu’a ce qu’un hyperplanseparateur soit trouve (lorsque l’ensemble des exemples mal classes est vide). Lasortie d’un Perceptron est binaire, et n’est en particulier pas derivable. L’apprentis-sage du Perceptron ne converge que si les donnees d’apprentissage sont lineairementseparables.Le reseau Adaline (ADAptive LINear Element) propose par Widrow [WH60][38]

est un modele base sur le Perceptron, mais dont la sortie est lineaire (y et non lesigne de y). L’apprentissage des poids se fait de maniere iterative, en presentantles exemples d’apprentissage successivement et en minimisant la somme du carredes erreurs entre la sortie calculee et la sortie desiree a chaque iteration. L’Adalineminimise donc un critere quadratique, suivant une descente iterative de gradientqui converge vers un minimum local.Minsky et Papert mettent un terme a ce domaine de recherche, dans une critiquesoulignant les limitations des Perceptrons [MP69][39] notamment dans la resolution

[35] W. McCulloch and W. Pitts. A logical calculus of the ideas immanent in nervous activity.Bulletin of Mathematical Biophysics, 7 :115–133, 1943.

[36] D. Hebb. The organization of behavior : A neuropsychological theory. John Wiley & Sons,New York, 1977.

[37] F. Rosenblatt. The perceptron : probabilistic model for information storage and organiza-tion in the brain. Psychological Review, 65 :386–408, 1958.

[38] B. Widrow and M.E. Hoff. Adaptive switching circuits. In IRE WESCON ConventionRecord, pages 96–104, 1960.

[39] M. Minsky and S. Papert. Perceptrons : an Introduction to Computational Geometry. MITPress, 1969.

Page 75: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.3 Le Diabolo : un modele d’apparence generatif 45

de problemes non lineaires.Le sujet connait un regain d’interet avec les travaux de Hopfield [Hop82][40] sur unreseau completement reboucle dont il analyse la dynamique.L’algorithme de retropropagation du gradient de l’erreur du Perceptron Multi-Couche est alors popularise quasi-simultanement par Rumelhart [RC86][41], et Le-Cun [LeC85][42]. L’idee de la retropropagation provient du domaine de l’automa-tique : elle consiste a estimer le gradient d’une fonction de cout en propageant lasortie vers l’entree. Le Perceptron multi-couche est constitue de plusieurs couchesde neurones caches, dont une au moins associe des neurones avec une fonctiond’activation non lineaire. Il permet en consequence de traiter des problemes nonlineaires, et est utilise en classification et en modelisation (automatique, biologie,reconnaissance de caracteres, traitement du signal, approximation de fonctions,finances, . . .).

1.3.1 Analyse en Composante Principale, en ComposanteNon Lineaire et reseaux Diabolo

Soit une base de Nt exemples d’apprentissage x1,x2, . . . ,xNt ∈ Rd. Si l’oncherche a representer au mieux l’ensemble de ces donnees par un seul point x0 deRd , il faut trouver le point qui minimise la fonction de cout quadratique suivante :

J0(x0) =

Nt∑k=1

‖ x0 − xk ‖2

On demontre [1] que le minimum correspond a la moyenne des echantillons :

m =1

Nt

Nt∑k=1

xk

La moyenne m est une representation de dimension zero des exemples, et ne revelepas la variabilite des donnees.

Si on cherche a representer les echantillons sur une droite passant par m, onintroduit un vecteur directeur unitaire e. Un exemple xk est alors represente par

[40] J.J. Hopfield. Neural networks and physical systems with emergent collective computa-tional abilities. In Proceedings of the National Academy of Sciences, volume 79, pages2554–2558, 1982.

[41] D.E. Rumelhart and J.L. Mc Clelland. Parallel Distributed Processing : Exploration in theMicroStructure of Cognition., volume I-II. MIT Press, 1986.

[42] Y. LeCun. Une procedure d’apprentissage pour reseau a seuil asymmetrique (a learningscheme for asymmetric threshold networks). In Proceedings of Cognitiva 85, pages 599–604,Paris, France, 1985.

Page 76: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

46 Un modele d’apparence du visage : le Diabolo

m+ake, ou ak est un coefficient a determiner. On peut trouver un ensemble optimalde coefficients ak pour k = 1 a Nt en minimisant la fonction de cout quadratiquesuivante :

J1(a1, a2, . . . , aNt , e) =Nt∑k=1

‖ (m + ake)− xk ‖2

e etant unitaire, J1 se developpe comme suit :

J1(a1, a2, . . . , aNt , e) =

Nt∑k=1

a2k − 2

Nt∑k=1

akeT (xk −m) +

Nt∑k=1

‖ xk −m ‖2

Chaque coefficient optimal est le zero de la derivee de la fonction de cout parrapport au coefficient :

∂J1

∂ak= 0⇐⇒ ak = eT (xk −m)

Geometriquement, la meilleure representation des exemples sur cette droite estleur projection orthogonale.

Le vecteur directeur e optimal au sens des moindres carres, pour la representationdes donnees, doit alors etre determine. En injectant les coefficients optimaux dansla fonction de cout J1, le probleme consiste a minimiser J1(e). En developpant ceterme, et en introduisant la matrice de covariance Σ des echantillons, on demontre[1] que :

J1(e) = −NteT Σe +

Nt∑k=1

‖ xk −m ‖2︸ ︷︷ ︸

terme independant de e

Il s’agit donc de trouver le maximum du terme eT Σe avec la contrainte ‖ e ‖= 1.Ce qui revient a resoudre le probleme aux valeurs propres suivant :

Σe = λe

e est donc un vecteur propre de la matrice de covariance, et comme

eT Σe = λeTe = λ

le choix optimal est celui du vecteur propre associe a la valeur propre la plus elevee.Ainsi la meilleure representation des donnees, au sens des moindres carres, sur unespace 1D est leur projection sur la droite passant par m et dirigee par le vecteurpropre de la matrice de covariance Σ ayant la plus grande valeur propre.

Enfin on demontre de maniere similaire que la meilleure representation desdonnees dans un espace de dimension p est obtenue par la projection sur le sousespace FS engendre par les p vecteurs propres {ei} de la matrice de covariance

Page 77: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.3 Le Diabolo : un modele d’apparence generatif 47

associes aux p valeurs propres les plus elevees. La matrice de covariance etant reelleet symetrique, ces vecteurs propres sont orthogonaux, et constituent la base devecteurs orthonormes la plus adaptee a la representation des donnees. Un exemplequelconque x est alors represente par la projection y, avec :

y = ΦTp (x−m) =

p∑i=1

aiei

ΦTp etant la matrice de passage ayant pour colonne les vecteurs propres ei. Les

coefficients ai sont les composantes principales de x sur cette base de vecteurspropres. La projection y est une reconstruction de l’exemple x dans un espace dedimension plus petite, et l’erreur de reconstruction ε est definie par la distanceEuclidienne :

ε(x)2 =‖ (x−m)− y ‖2=‖ x−m ‖2 − ‖ y ‖2

Geometriquement, on peut voir l’ensemble des exemples de la base comme unnuage de points de Rd en forme d’hyperellipsoıde, dont les axes principaux sont lesvecteurs propres de la matrice de covariance. L’analyse en composante principaleopere une reduction de dimensionnalite des entrees, en focalisant l’attention sur lesdirections le long desquelles le nuage de points est le plus diffuse, c’est-a-dire lesaxes ou la variance des donnees est maximale. p est la dimension du sous espaceexpliquant le mieux le ”signal”, les d−p dimensions restantes expliquant le ”bruit”.

L’analyse en composante principale peut etre realisee par un reseau de neu-rones auto-associateur a une couche cachee et des fonctions d’activation lineaires[San89, BH89][43,44]. Le nombre d’entrees et de sorties correspond a la dimensiond des exemples d’apprentissage, le nombre de neurones caches est egale a p. Laforme du reseau, la couche cachee est de faible dimension par rapport au nombred’entrees et de sorties, a donnee son nom a ce type de reseau : le Diabolo. L’ap-prentissage se fait par retro-propagation du gradient, et il est non supervise car,pour chaque exemple, la sortie desiree est identique a l’entree [Sch96][45]. Lorsqueles fonctions d’activation sont lineaires, le reseau apprend un modele lineaire desexemples, optimal au sens des moindres carres. La sortie des p neurones cachescorrespond alors aux composantes principales de l’exemple mis en entree du Dia-bolo. Elle represente un codage compact du vecteur d’entree : le reseau opere ainsiune reduction de la dimension. Une application a la compression de visages est

[43] T.D. Sanger. Optimal unsupervised learning in a single-layer linear feedforward neuralnetwork. Neural Networks, 2(6) :459–473, 1989.

[44] P. Baldi and K. Hornik. Neural networks and principal component analysis : Learningfrom examples without local minima. Neural Networks, 2(1) :53–58, 1989.

[45] H. Schwenk. Amelioration des classifieurs neuronaux par incorporation de connaissancesexplicites : Application a la reconnaissance de caracteres manuscrits. PhD thesis, UniversitePierre et Marie Curie, Paris, France, 1996.

Page 78: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

48 Un modele d’apparence du visage : le Diabolo

…1 p

x1

z1

x2

z2

xd

zd

Couche d’entrée

Couche cachée :couche de représentation

Couche de sortie :reconstruction

Poids générateurs

Poids encodeurs

1p

11

dp

1d

11w

1pw

z3

zk

x3 xj

i ijw

1d

zd-1

pdw

1dw

Fig. 1.21 – Architecture du reseau Diabolo : il implemente une compressionspecialisee des donnees car sa couche cachee contient beaucoup moins de cellulesque les entrees ou les sorties.

presentee dans [DC93][46]. Les poids reliant la couche cachee a l’entree du reseausont appeles poids encodeurs [Sch96][45] ; les poids reliant la couche cachee a lacouche de sortie sont appeles poids generateurs car ils reconstruisent l’exemplepresente.

Lorsque la fonction d’activation de la couche cachee est une fonction sigmoıdale,le reseau opere une analyse en composante non lineaire [Kra91][47], la sortie y de lacouche cachee etant alors le mappage (ou la projection non lineaire [1]) de l’entreex dans un sous espace de dimension p :

yi = Gi(x) = s( d∑

j=1

wijxj + bi

c

), i = {1, 2, . . . , p}

ou Gi designe une fonction non lineaire dans le cas general, et dans le cas du Diabolos est une fonction sigmoıdale, wi

k le poids reliant le neurone cache i et l’entree k, et

[46] D. DeMers and G.W. Cottrell. Non-linear dimensionality reduction. In Advances in NeuralInformation Processing Systems 5, pages 580–587, 1993.

[47] M.A. Kramer. Nonlinear prinipal component analysis using autoassociative neural net-works. AIChE journal, 37(2) :233–243, 1991.

Page 79: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.3 Le Diabolo : un modele d’apparence generatif 49

bic le biais de ce neurone. La figure 1.21 illustre l’architecture du Diabolo (les biais

ne sont pas representes). L’argument de la sigmoıde est le potentiel du neuronecache, ou son activation, i pour l’exemple x. La fonction sigmoıde est definie par :

s(x) =1

1 + e−x

La reconstruction z de l’exemple x par le Diabolo est alors composee des delements suivants :

zk =

p∑i=1

αki yi + bk

s , i = {1, 2, . . . , d}

ou αki est le poids reliant la neurone de sortie k au neurone cache i, et bk

s son biais.

Dans l’analyse en composante principale, le choix du nombre p de composantesprincipales se fait sur le spectre de la matrice de covariance : en triant les valeurspropres dans l’ordre decroissant, une difference significative entre des valeurs suc-cessives indique un nombre naturel pour la dimension du sous espace propre. Paranalogie, en augmentant le nombre de neurones caches l’erreur quadratique d’ap-prentissage ne decroit plus de maniere significative a partir d’un certain nombrede neurones indiquant la dimension p la plus consistante.

Pour un modele non lineaire, la fonction de cout J n’est pas quadratique parrapport aux parametres (poids et biais) et la methode des moindres carres ne s’ap-plique donc pas : on a alors recours a une methode iterative pour minimiser J ,la descente de gradient avec pas adaptatif, avec arret par validation croisee. Lapremiere etape consiste a estimer le gradient de la fonction de cout par rapportaux parametres, par retropropagation. La seconde etape consiste a modifier les pa-rametres en fonction du gradient estime : c’est la descente de gradient a proprementparler.

La fonction de cout minimisee lors de l’apprentissage des Diabolo que nousemployons est la somme, sur la base d’apprentissage, du carre des erreurs entrel’entree xn (correspondant a la sortie desiree) et la sortie zn (n = {1, 2, . . . , Nt}) :

J =

Nt∑n=1

d∑k=1

(znk − xn

k)2

on notera en particulier que le calcul de la fonction de cout necessite de reconstruirel’ensemble des exemples de la base d’apprentissage. J depend du poids αk

i parl’intermediaire du neurone de sortie k uniquement :

∂J

∂αki

=

Nt∑n=1

∂J

∂znk

∂znk

∂αki

Page 80: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

50 Un modele d’apparence du visage : le Diabolo

avec

∂J

∂znk

= 2(znk − xn

k) et∂zn

k

∂αki

= yni

Le premier terme correspond a la sensibilite δnk

[1] du neurone lineaire de sortie k,et decrit les variations de l’erreur d’apprentissage J avec son activation. On deduitalors :

∂J

∂αki

=

Nt∑n=1

2(znk − xn

k)yni =

Nt∑n=1

δnk yn

i

Le calcul des derivees partielles de la fonction de cout par rapport aux parametresd’un neurone k de sortie necessite donc d’en calculer la sortie zn

k , pour tous lesexemples d’apprentissage, ainsi que la sortie yn

i des neurones caches i . On demontrede la meme maniere que ∂J/∂bk

s =∑Nt

n=1 2(znk−xn

k), le biais du neurone k servant enpratique a centrer sa fonction d’activation lineaire (il correspond a une connexionentre le neurone de sortie et un neurone cache de sortie yi = 1).

J depend du poids wce, reliant l’entree e et le neurone cache c, par l’intermediaire

des connexions reliant les neurones de sortie a ce neurone cache :

∂J

∂wce

=

Nt∑n=1

d∑k=1

∂J

∂znk

∂znk

∂wce

Pour calculer le second terme de la somme double, explicitons la reconstruction znk

du neurone de sortie k, de l’exemple xn :

znk =

p∑i=1

αki s( d∑

j=1

wijx

nj + bi

c

)+ bk

s

On voit qu’alors :

∂znk

∂wce

= αkcs

′( d∑

j=1

wcjx

nj + bc

c

)xn

e

et donc :∂J

∂wce

=

Nt∑n=1

[ d∑k=1

2(znk − xn

k)αkc

]s′( d∑

j=1

wcjx

nj + bc

c︸ ︷︷ ︸activation

)

︸ ︷︷ ︸sensibilite du neurone cache δn

c

xne

La dependance de J par rapport aux biais des neurones caches se calcule par lameme formule en remplacant le terme xn

e par 1. La sensibilite δnc du neurone cache

c non lineaire depend ainsi de son activation et de la sensibilite δnk du neurone de

sortie k. Finalement :∂J

∂wce

=

Nt∑n=1

δnc xn

e

Page 81: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.3 Le Diabolo : un modele d’apparence generatif 51

On voit ainsi que l’algorithme de retropropagation opere en deux etapes :– une phase de propagation durant laquelle les sorties de tous les neurones et

l’activation des neurones caches sont calcules, de l’entree vers la sortie.– une phase de retropropagation ou sont estimes les gradients partiels, depuis

les neurones de sortie jusqu’aux entree.En notant θ le vecteur des parametres du reseau a l’iteration k, la descente du

gradient est realisee selon :θk+1 = θk − η∇J

ou les composantes du gradient ∇J de la fonction de cout sont estimees par l’algo-rithme de retropropagation. Poids et biais sont donc modifies dans la direction op-posee au gradient de J , c’est-a-dire dans la direction ou la fonction de cout decroitle plus rapidement. η est un pas d’apprentissage adaptatif : a chaque iteration, ηest augmente si l’erreur d’apprentissage J decroit. Si J augmente, η est diminue, etles changements effectues sur les parametres sont annules. Une base de validationcroisee est utilisee : lorsque l’erreur de validation Jvalidation, augmente de plus d’uncertain seuil, l’apprentissage est arrete.

1.3.2 Le reseau Diabolo applique a la localisation de visage

Le reseau Diabolo est entraine uniquement sur des exemples, et n’utilise enparticulier pas de contre-exemple (figure 1.22) : lorsque le reseau est appris surune base de visage, la distance Euclidienne entre l’entree et la sortie reconstruiteconstitue une mesure de la similitude entre cette entree et la classe visage. Nousappelerons par la suite, par abus de langage, erreur de reconstruction du Diabolol’erreur residuelle suivante :

ε(x)2 =1

d

d∑k=1

(zx − xk)2

Une image de non visage appliquee en entree du Diabolo, etant alors mal com-pressee par le reseau, aura une erreur de reconstruction plus elevee que dans le casd’un visage. La figure 1.23 illustre le cas d’un reseau Diabolo prenant pour entreeune vignette en niveau de gris : l’image de reconstruction du Diabolo est une imagede visage, que l’entree corresponde a un visage ou a un non visage. On peut ainsivoir la modelisation du Diabolo comme une procedure de template matching ou levisage de reference (la sortie du Diabolo) est adapte au visage candidat (l’entreedu Diabolo).

L’approche implementee pour l’utilisation du Diabolo est retinienne : l’erreur dereconstruction ε est calculee sur une fenetre de taille fixe mxn parcourant l’imagea toutes ses positions. A chaque position, la vignette contenue dans la fenetre estappliquee en entree du Diabolo et l’erreur de reconstruction est calculee puis sauvee

Page 82: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

52 Un modele d’apparence du visage : le Diabolo

Based’apprentissage

Sortiesdésirées

Fig. 1.22 – Architecture d’un Diabolo : la sortie desiree est egale a l’entree, lecorpus d’apprentissage est constitue d’exemples de visages uniquement (pas decontre-exemple)

dans un tableau, appele DiaboloMap dans la suite, de taille (L−m)x(H −n) pourune image de taille LxH (voir figure 1.25). La localisation x∗ du visage est alorsla position du minimum de l’erreur de reconstruction dans l’image :

x∗ = arg minx

ε(x) (1.7)

Lorsque la taille du visage est inconnue, une pyramide d’image est constituee ensous-echantillonant l’image originale avec un facteur de reduction de 1.2, et letableau DiaboloMap est calcule sur toutes les images de la pyramide.

La base d’apprentissage est constituee d’exemples de visages approximative-ment de face pour 80% d’entre eux, avec des conditions d’eclairement et descouleurs de peau variees : quelques exemples sont illustres par la figure 1.24. 1602images de visages de la base ECU constituent la base d’exemples, divisee en deuxensembles independants : un corpus d’apprentissage et une base de validationcroisee, denombres dans le tableau 1.4.

Corpus Apprentissage Validation croiseeNombre de visages 1602 178

Tab. 1.4 – Nombre d’images de visage utilisees en apprentissage et en validation

L’apprentissage debute par une initialisation des parametres du reseau : des

Page 83: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.3 Le Diabolo : un modele d’apparence generatif 53

VISAGE reconstruit

2 4 6 8 10 12 14

2

4

6

8

10

12

14

16

18

20

VISAGE reconstruit

2 4 6 8 10 12 14

2

4

6

8

10

12

14

16

18

20

VISAGE en entrée

2 4 6 8 10 12 14

2

4

6

8

10

12

14

16

18

20

VISAGE en entrée

2 4 6 8 10 12 14

2

4

6

8

10

12

14

16

18

20

Visage

Non visage

Diabolo

image reconstruite

2 4 6 8 10 12 14

2

4

6

8

10

12

14

16

18

20

image reconstruite

2 4 6 8 10 12 14

2

4

6

8

10

12

14

16

18

20

image originale

2 4 6 8 10 12 14

2

4

6

8

10

12

14

16

18

20

image originale

2 4 6 8 10 12 14

2

4

6

8

10

12

14

16

18

20

Image en entrée Image reconstruite

Fig. 1.23 – Exemple de reconstruction d’images de visage et de non visage par unDiabolo entraine sur des images monochromes.

valeurs aleatoires sont affectees aux poids et biais du reseau. Ces valeurs initialessont comprises dans l’intervalle [-1/d +1/d] pour les connexions liant l’entree ala couche cachee et [-1/p +1/p] pour les parametres reliant la couche cachee a lacouche de sortie, afin de ne pas saturer les neurones non lineaires en debut d’ap-prentissage. Une initialisation differente peut aboutir a des poids differents apresapprentissage et donc a des reseaux differents. Pour une architecture de reseaudonnee (i.e. p donne), plusieurs initialisations doivent etre testees afin d’eviter dechoisir un reseau dont l’apprentissage s’est arrete dans un minimum local de lafonction de cout J different du minimum global.

1.3.3 Choix des entrees et de l’architecture du Diabolo

Le codage des entrees du Diabolo est determinant pour les performances dela modelisation de visages du Diabolo. Trois codages sont presentes dans cettesection : les niveau de gris, le gradient (horizontale et verticale) de l’image, et uncodage quantifiant les orientations du gradient. La figure 1.24 illustre l’ensembledes degres de liberte a optimiser et donne quelques exemples de la base d’appren-

Page 84: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

54 Un modele d’apparence du visage : le Diabolo

tissage. L’architecture du Diabolo, representee en figure 1.21, est definie, pour un

Codages :- Niveau de gris- Gradient- Cosinus

Tailles des vignettes :- 17 x 13- 22 x 17- 27 x 21

Base d’apprentissage :- 1 602 visages de la base ECUBase de cross-validation :- 178 visages de la base ECU

Tests : Rétine glissante à une seule échelle(correspondant à la taille du visage)sur 126 images ne contenant qu’une seule personne

Modèle d’apparence testé : Diabolo

Degrés de liberté :

Fig. 1.24 – Optimisation de l’entree du Diabolo : recapitulatif des manipulations

codage donne des entrees, par son nombre d d’entrees et le nombre p de cellulescachees. Une recherche exhaustive de cette architecture est donc a realiser. Dans unpremier temps nous fixons la taille des entrees, et le meilleur codage est selectionneen consequence. Ensuite, pour le codage precedemment retenu, la taille de la retined’entree du reseau est optimisee sur une base de test.

1.3.3.1 Procedure de test

Les bases d’apprentissage et de validation, constituees d’exemples de visagesuniquement, sont recapitulees au tableau 1.4. La base de validation croisee estconstituee de visages extraits d’images contenant une ou plusieurs personnes :nous selectionnons 126 de ces images, celles ne contenant qu’une seule personne,pour en faire une base d’evaluation du taux de localisation de visages par les Dia-bolos implementes. Cette base contient donc une partie des exemples de validationcroisee (126 visages) mais aussi les exemples de non-visages que constitue le restedes images (i.e. le fond de la scene). Le choix de cette base d’evaluation est au-torise car le choix de l’architecture du reseau et du codage des entrees fait partiede l’apprentissage : une fois trouves ces deux degres de liberte, une base de test

Page 85: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.3 Le Diabolo : un modele d’apparence generatif 55

ne contenant aucune de ces images est utilisee pour quantifier les performancesdu modele d’apparence selectionne. L’evaluation des Diabolos sur ces 126 imagesconsiste a calculer le nombre de visages correctement localises en appliquant laformule (1.7). Une simplification importante du probleme est apportee : on sup-pose connue la taille du visage. L’image testee est alors reduite de maniere a ceque le visage ait la taille mxn de la retine d’entree du Diabolo. La retine parcourtalors l’image a une seule echelle comme le montre la figure 1.25, l’erreur de recons-truction de chaque vignette x est calculee, et la position du minimum du tableauDiaboloMap definie celle de la localisation x∗ du visage :

x∗ = arg maxx

DiaboloMap(x)

réseauDiabolo

… … Erreur dereconstruction+ -

Masqueelliptique

DiaboloMap

Codagedesentrées

Image de test

Fig. 1.25 – Construction du tableau DiaboloMap des erreurs de reconstructionsur l’image : les zones claires correspondent aux erreurs de reconstruction les plusfaibles, les erreurs les plus elevees sont dans les zones les plus sombres

Un visage est considere comme correctement localise si la vignette de l’imagela mieux reconstruite par le Diabolo contient 60% de la verite terrain : ce pointest detaille au chapitre 3.4.1. Le taux de localisation est alors defini par le rapportentre le nombre de visages correctement localise sur le nombre total de visages.

Page 86: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

56 Un modele d’apparence du visage : le Diabolo

… …

Diabolo

Image I en Niveau de gris

Nl

Nc

Normalisationdes donnéesdans [-1;1]

Masqueelliptique

Entr

ées

min2 1

max minn

I II

I I

Fig. 1.26 – Pre-traitement de la vignette appliquee en entree du Diabolo apprissur des images de luminance

1.3.3.2 Modelisation des visages dans divers espaces

Dans la premiere etape de notre analyse, la retine definissant les entrees duDiabolo est de largeur m = 21 et de hauteur n = 27. Le codage des entrees,parmi les trois proposes, maximisant le taux de localisation de visages sur la based’evaluation est choisi, pour cette taille de la retine. Dans la seconde etape, lataille optimale de la retine (la dimension des entrees), pour le codage selectionne,est ensuite choisie parmi trois possibilites : 21x27, 17x22, 13x17.

Le premier codage est inspire par les travaux de Feraud&al [30] : les vignettespresentees au Diabolo contiennent les niveaux de gris de la vignette, etires lineairementdans [-1 1]. Comme le montre la figure 1.26 la vignette est multipliee par unmasque elliptique binaire : les elements du masque a l’interieur de l’ellipse sontegaux a 1, les autres a zero. L’interet est de masquer les bords du visage, conte-nant les pixels du fond de l’image dont on ne veut pas tenir compte car ils serontquelconques en generalisation : seul l’interieur du visage est modelise, le masqueelliptique excluant l’ovale du visage. Le Diabolo a alors 403 entrees : on notera lareduction de dimensionnalite apportee par ce masque (21x27=567).

Les deux autres codages des entrees necessitent l’estimation du gradient. Legradient (Gx, Gy) est estime sur chacune des vignettes par les formules (1.9) et(1.10) utilisant les operateurs de Robert. La vignette I, de taille mxn est d’abord

Page 87: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.3 Le Diabolo : un modele d’apparence generatif 57

Gx

Gy

Image de visageen niveau de gris Ifiltrée

Lissage

Orientation dugradient de contour

sur 36 directions

Fig. 1.27 – Estimation du gradient de l’image

lissee a l’aide d’un filtre D 3x3 pour eliminer le bruit dans l’image :

Ifiltree = I ⊗D D =1

5

⎡⎣ 0 1 0

1 1 10 1 0

⎤⎦ (1.8)

Le gradient horizontal Gx est calcule par la formule (1.9) :

Gx = Ifiltree ⊗ [1 − 1] (1.9)

Le gradient vertical est calcule par la formule (1.10).

Gy = Ifiltree ⊗[

1−1

](1.10)

Le module du gradient en tous points de l’image est definit par :

|G| =√

G2x + G2

y (1.11)

Un exemple est donne, dans le cas d’un visage, par la figure 1.27.

Les images du gradient horizontal et du gradient vertical sont alors etireeslineairement entre -1 et 1, avant d’etre applique a l’entree du Diabolo (figure 1.28) :chaque pixel est caracterise par un couple de valeurs (Gx, Gy) normalisees, et ceuxqui sont a l’interieur du visage sont pris en compte grace au masque elliptique. LeDiabolo a dans ce cas 806 entrees.

Page 88: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

58 Un modele d’apparence du visage : le Diabolo

Gx

Gy

… …

Diabolo

Normalisationdes donnéesdans [-1;1]

conc

aten

atio

n

Fig. 1.28 – Second codage des entrees : le champ de gradient de la vignette.

L’orientation n du gradient des points de contour est alors quantifiee sur N =36 valeurs entieres, en utilisant la formule (1.12) ou la fonction arctan2 est latangente inverse a quatre quadrant illustree par la figure 3.9 et retournant unangle compris entre -π et +π.

n = round

(N

2πarctan2(Gx, Gy)

)modulo N (1.12)

Les contours d’une vignette sont determines en seuillant le module du gradient(formule 1.11). Le seuil est defini relativement au module du gradient obtenuprecedemment, et depend de la vignette visee. Les valeurs du module du gradientdes pixels de la vignette sont tries par ordre croissant, et le seuil est calcule demaniere a ce que 20% des pixels de la vignette soient des points de contour (voirfigure 1.27). Un seuil global sur l’image entiere (visage et contexte) resulteraiten une disparition des contours interieurs au visage, particulierement dans le casd’image dont le fond est structure. En contre-partie, cette methode fait apparaıtredes structures dans une vignette de texture uniforme (les images etant au formatjpeg, une vignette apparaissant uniforme est en realite constituee de pixels de va-leurs differentes, sauf a choisir un voisinage 2x2) : les artefacts ainsi soulignes sonta l’origine de nombreux faux positifs. Ces deux remarques s’appliquent aussi al’operation de normalisation, vignette par vignette et non pas globale a l’image,des exemples dans [-1 1].

Page 89: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.3 Le Diabolo : un modele d’apparence generatif 59

Sous-échantillonage13x17

290

entr

ées

Masque elliptique

Isin

Icos

Orientationdes contours

Fig. 1.29 – Codage s’appuyant sur l’orientation des points de contour de la vignette

Un codage specifique des orientations est applique en entree du Diabolo : chaquepixel de contour est decrit par deux valeurs (Icos, Isin), calculees par les formules(1.13) et (1.14).

Icos(x, y) = cos

(2π

Nn(x, y)

)(1.13)

Isin(x, y) = sin

(2π

Nn(x, y)

)(1.14)

ou n(x, y) est l’orientation du gradient du point de contour, situe a la position(x,y) de la vignette, faisant reference a l’equation (1.12).Le doublet (Icos=0, Isin=0) est alloue aux pixels n’etant pas des points de contour.Le diabolo traitant l’orientation des contours compte alors 806 entrees.

Dans un premier temps il convient d’optimiser l’architecture du Diabolo pourchacun des trois codages. Une recherche exhaustive de l’architecture optimale estrealisee en cherchant le minimum de l’erreur quadratique moyenne de validationdu reseau en fonction du nombre de neurones caches. Pour un nombre de neuronescaches donne, dix initialisations differentes des poids (et autant de reseaux) sontimplementees : le reseau conduisant a la plus petite erreur quadratique moyenne surla base de validation est conserve, pour comparaison avec les autres architectures

Page 90: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

60 Un modele d’apparence du visage : le Diabolo

recherchees. Pour les trois codages, le nombre de neurones caches optimum est del’ordre de 50 : le Diabolo traitant la luminance ayant deux fois moins d’entreesque les autres Diabolos, on en deduit que chaque pixel d’entree necessite deuxfois plus de parametres pour etre compile qu’avec les codages du gradient. Lestrois reseaux resultant de cette recherche sont compares entre eux, utilisant laprocedure de test definit au paragraphe (1.3.3.1). Les resultats reportes au tableau(1.5) donne le taux de localisation de visages des trois Diabolos, soit le nombre devisages localises sur les 126 images testees. On voit sur ce tableau que le codage

Entree Luminance Gradient OrientationTaux de localisation 29% 18% 40%

Tab. 1.5 – Performance en localisation de visages des modeles d’apparence enfonction du codage des entrees, sur la base de validation croisee de 126 images, necontenant qu’un seul visage, de taille connue

des orientations est l’entree de Diabolo la mieux adaptee a la tache de localisationde visage. Nous selectionnons ce codage et examinons alors la taille de retined’entree optimale : trois retines sont testees, avec le protocole expose au paragraphe1.3.3.1, de taille respective 13x17, 17x22 et 21x27. Ces tailles ont ete choisies demaniere a ce que le rapport largeur sur hauteur de la retine soit de l’orde de 0.77,valeur correspondant a l’aspect d’un visage relativement de face. L’optimisationde l’architecture des reseaux se fait prealablement comme decrit precedemment.Le tableau (1.6) presente les taux de localisation obtenue pour chacune des retinesd’entree du Diabolo. La taille optimale de la retine est ainsi de 13x17 pixels.

Taille de la retine 13x17 17x22 21x27Rapport largeur sur hauteur de la retine 0.767 0.773 0.778Nbre d’entree du Diabolo 290 490 806Taux de localisation 57% 54% 40%

Tab. 1.6 – Performances en localisation de visages des modeles d’apparence enfonction du codage des entrees sur la base de validation croisee

Le masque elliptique, masquant les bords d’une vignette alimentant le Diabolo,permet de reduire le nombre d’entrees de 442 (il y a 2x13x17 elements dans lestableaux de Icos et de Isin) a 290. Ce Diabolo a 18 neurones cachees.

1.3.4 Discussion

Dans ce chapitre, nous avons presente le detecteur de Viola&Jones en details.Ce detecteur traite la luminance d’une vignette : chaque filtre calcule une differenceentre des niveaux de gris moyen sur des rectangles connexes, et le classifieur faible

Page 91: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

1.3 Le Diabolo : un modele d’apparence generatif 61

qui lui est associe a un resultat binaire fonction de cette difference. La procedured’Adaboost selectionne iterativement, durant l’apprentissage, les classifieurs faiblesles plus efficaces pour produire une somme ponderee plus efficiente constituant unclassifieur fort : plusieurs classifieurs forts, de complexite croissante, sont com-bines en cascade pour former le detecteur. La detection de visages est realiseeen classifiant une partie des vignettes de l’image, les deux premiers etages de lacascade servant d’heuristiques pour eliminer des positions ne contenant vraisem-blablement pas de visage. Le post-traitement du resultat consiste en un arbitragedes detections multiples : un visage est detecte s’il l’est a au moins nvoisins = 2positions voisines. Cet etape permet de masquer une partie des faux positifs, etproduit la localisation moyenne de chaque visage candidat restant.

Ce detecteur est un exemple d’un modele discriminant car il cherche a modeliserles visages et les non visages. Si des bases d’images de visages existent, la definitiond’un non visage est difficile, voire impossible : il existe 256400 = 23200 vignettes20x20 differentes. Pour pallier ce probleme, la plupart des approches discriminantesutilisent une procedure automatique de selection de contre-exemples significatifs(boostrapping, Adaboost) pour l’apprentissage.

Nous avons ensuite presente un modele d’apparence pour la localisation duvisage : contrairement au detecteur, notre approche utilise la connaissance dunombre de visages a localiser. Ce modele d’apparence, le Diabolo, est un reseaude neurones auto-associateur (le nombre d’entrees est egale au nombre de sorties)appris sur une base de visages, sans utilisation de contre-exemple. Il est entraıne afournir en sortie une image identique a celle mise en entree en realisant une com-pression specialisee car la couche cachee comporte un nombre de cellules nettementinferieur a celui de l’entree ou de la sortie. La procedure de localisation consiste acalculer l’erreur de reconstruction de toutes les vignettes de l’image, et a choisircelle qui est la mieux reconstruite par le Diabolo. Trois representations de l’imageont ete exploitees : la luminance, le champ de gradient et un codage particulier del’orientation des points de contour. La comparaison des performances en localisa-tion de visage de Diabolos traitant ces differentes representations nous a mene achoisir ce dernier.

Notre choix s’est porte sur le Diabolo parce qu’il implemente une approchegenerative : seuls les visages sont modelises. Toutefois, le fait de ne pas utili-ser de contre-exemple diminue les capacites de generalisation du modele car lesexemples susceptibles d’etre confondus n’ont pas ete modelises. Nous presenteronsles resultats de ce modele d’apparence, illustrant cette difficulte, au chapitre 3.

Feraud & al utilisent un melange conditionnel de Diabolo, chacun etant specialisesur une pose du visage traitant une meme representation de l’image, la lumi-nance. Notre approche consiste a combiner des modeles heterogenes du visage :un modele de couleur et un modele d’ellipse collaborent avec le modele d’ap-

Page 92: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

62 Un modele d’apparence du visage : le Diabolo

parence pour determiner la localisation du visage dans une image. Le modeled’apparence que nous avons developpe ne s’appuie par sur le contour ovale duvisage, contrairement a la plupart des approches connexionnistes de la detectionde visage, mais seulement sur les traits internes au visage (yeux, bouche, nez).L’ovale du visage sera modelise par une transformee de Hough Generalisee, quenous presentons au chapitre 3, afin de completer le modele d’apparence. Un modelede la couleur peau est employe afin de renforcer la decision des deux modelesprecedents. Le chapitre 2 s’attachera a presenter les modeles colorimetriques uti-lises en detection/localisation du visage dans une image fixe. La combinaison deces trois modeles sera ensuite developpee au chapitre 3.

Page 93: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

Chapitre 2

Modelisation colorimetrique

Sommaire2.1 Classification de la teinte chair : etat de l’art . . . . . . 66

2.1.1 Les espaces colorimetriques . . . . . . . . . . . . . . . . 672.1.2 Modelisation de la teinte chair . . . . . . . . . . . . . . 862.1.3 Definition explicite de la teinte chair . . . . . . . . . . . 862.1.4 Modeles non-parametriques de la couleur peau . . . . . 902.1.5 Modeles parametriques de la couleur peau . . . . . . . . 952.1.6 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . 97

2.2 Detection de la peau . . . . . . . . . . . . . . . . . . . . 1012.2.1 Apport d’une modelisation de la non-peau . . . . . . . . 1022.2.2 Apport de l’information de luminance . . . . . . . . . . 1112.2.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . 115

2.3 Segmentation des levres par approche colorimetrique 1172.3.1 Analyse colorimetrique . . . . . . . . . . . . . . . . . . . 1182.3.2 Modelisation de la couleur par un systeme d’inferences

floues . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1232.3.3 Modelisation fine des contours de la bouche . . . . . . . 1282.3.4 Resultats experimentaux . . . . . . . . . . . . . . . . . . 1312.3.5 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . 136

Page 94: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

64 Modelisation colorimetrique

Introduction

L’emploi de la couleur par des applications de vision robotique est assez peurepandue au debut des annees 1990 du fait du manque d’algorithme implementantune constance des couleurs, c’est-a-dire une perception stable de la couleur sousdifferentes illuminations et angles de vue [For88][1] comme le fait la vision hu-maine. Du fait aussi que la couleur d’un objet n’est pas une propriete intrinsequea l’identite d’un objet contrairement a sa forme [Bie86][2]. La couleur est pourtantun attribut caracteristique important d’un objet et son usage a connu un essorconsiderable avec les travaux de Swain et Ballard [SB90][3], ou la reconnaissanced’un objet est realisee par comparaison de l’histogramme des valeurs RGB deses pixels a des histogrammes modeles (de differents objets tels que vetements,boites de cereales et de detergents) et sa localisation par retro-projection d’unhistogramme de reference sur l’image. Cette technique de retro-projection est de-puis intensivement utilisee en classification de la teinte chair, notamment dans desespaces colorimetriques differents ou avec des modeles parametriques.

La classification de la teinte chair cherche a determiner si un pixel appartienta la peau d’un sujet ou non. On designe alors le pixel comme etant de couleurpeau (ou de teinte chair), ou de non peau. Les principales difficultes rencontreespar une telle classification sont les differentes teintes possibles de la peau, l’illu-mination de la scene et le fait que les pixels de fond peuvent avoir une couleurproche de celle de la peau. En fonction de l’origine du sujet, la couleur de peauapparaıt avec differentes teintes : blanc, rose, rouge, jaune, marrons ou noir. Ausein d’une meme ethnie la couleur de la peau, aussi appelee complexion, se declinesouvent selon differentes nuances : on dit d’une personne qu’elle a le teint clair,pale, jaunatre, frais, brouille, hale, roux ou brun. Cela est due a la melanine,le pigment responsable de la coloration, chez l’homme, de la peau, des cheveux,et des yeux. Les conditions d’eclairement d’un environnement non controle sontaussi variables en fonction de la luminosite du soleil, par exemple, qui n’est pasla meme au petit matin, en milieu et en fin de journee. Le fait d’allumer unelampe change completement l’illumination ambiante. Plusieurs sources peuventaussi etre presentes, notamment lorsqu’un sujet en interieur est eclaire par unelampe -ou pire, une source telle qu’un neon dont l’intensite n’est pas constantedans le temps- et par la lumiere provenant d’une fenetre. Des zones d’ombre oude surbrillance peuvent apparaıtre sur une partie du corps, et en particulier sur levisage comme nous le verrons dans le chapitre 4. De plus l’illumination n’est pas

[1] D.A. Forsyth. A novel approach to colour constancy. In Proceedings of the Second IEEEInternational Conference on Computer Vision, pages 9–18, 1988.

[2] I. Biederman. Human image understanding : recent research and a theory. In Papers fromthe second workshop Vol. 13 on Human and Machine Vision II, pages 13–57, 1986.

[3] M. Swain and D. Ballard. Indexing via colour histograms. In Proceedings of the ThirdIEEE International Conference on Computer Vision, pages 390–393, 1990.

Page 95: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

65

homogene dans l’espace, c’est-a-dire que la peau apparaıt sous differentes teintesen fonction de sa position dans la scene. Les pixels du fond de l’image peuventaussi avoir une couleur proche de la peau : ce cas ne peut etre resolu par uneclassification de bas niveau (celui du pixel) que dans une certaine mesure. Uneapproche combinant l’exploitation d’une information de plus haut niveau est alorsnecessaire, tenant compte de leur repartition spatiale dans l’image, par exemplelorsque le pixel est isole (i.e. entoure de pixels de couleur non peau), ou faisantappel a d’autres modeles, geometrique ou d’apparence, comme nous le verrons auchapitre 3.

Plusieurs etudes demontrent cependant que la couleur de la peau est en majeurepartie confinee dans un volume restreint de l’espace RGB. Ainsi dans [BM01][4] ilest rapporte que sur une base de 80 millions d’exemples de pixels de teinte chair,900.000 seulement ont des valeurs RGB differentes soit 5.4% des 16.8 millions detriplets RGB possibles (2563) si chaque canal est code sur 8 bits. L’analyse desrapports R/B et R/G y montre que la couleur rouge est predominante dans la teintechair, comme constate dans [JR02a][5]. L’utilisation de la couleur est unanimementreconnue comme permettant des traitements extremement rapides, nous discutonsde ce point au chapitre 4.

Dans ce chapitre, la teinte chair est classifiee a partir d’un modele statique, ap-pris off-line et applique a des images quelconques, sans adaptation. Les meilleuresperformances en generalisation rapportees dans la litterature [PBC05][6], [JR02a][5]

d’un tel modele sont de l’ordre de 85% de vrais positifs pour un taux de faux posi-tifs de 10%. Dans le cas d’un modele dynamique, adapte a la teinte chair au coursd’une sequence d’images, le taux de vrais positifs depasse potentiellement les 90%(voir section 4.3.1, p.252) pour un meme taux de faux positifs.

Nous commencerons par un etat de l’art de la modelisation de la couleur peau,que nous declinons en deux parties : l’une traite des espaces de representation dela couleur les plus employees, l’autre des modeles. Nous presenterons ensuite lesexperiences menees sur deux espaces colorimetriques particulier, HSV et Y CbCr,et discuterons de leurs avantages et inconvenients. Dans une troisieme partie, nouspresenterons les travaux menes en collaboration avec l’Inserm U494 sur la tacheparticuliere qu’est la segmentation des levres, dans le cadre d’un projet cherchanta caracteriser le vieillissement de la peau a partir d’images.

[4] J. Brand and J. S. Mason. Skin probability map and its use in face detection. In Proceedingsof the IEEE International Conference on Image Processing, volume 1, pages 1034–1037,2001.

[5] M. J. Jones and J. M. Rehg. Statistical color models with application to skin detection.International Journal of Computer Vision, 46(1) :81–96, 2002.

[6] S.L. Phung, A. Bouzerdoum, and D. Chai. Skin segmentation using color pixel classifi-cation : Analysis and comparison. IEEE Transactions on Pattern Analysis and MachineIntelligence, 27(1) :148–154, 2005.

Page 96: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

66 Modelisation colorimetrique

2.1 Classification de la teinte chair : etat de l’art

La construction d’un detecteur de teinte chair (au niveau du pixel) soulevedeux problemes : le choix de l’espace colorimetrique et la modelisation de lateinte chair. Le lecteur trouvera deux etudes generales recentes dans [PBC05][6]

et [VSA03][7]. Quelques etudes relativement exhaustives sur les modeles ou lesespaces colorimetriques ont aussi ete menee.

Ainsi, Jones & Rehg [JR02a][5] modelisent la teinte chair par un histogrammea trois dimensions dans RGB et la couleur non peau par un second histogrammepour calculer le rapport de vraisemblance (equation (2.9)), etudiant l’influencede la discretisation des histogrammes ainsi que du nombre d’exemples d’appren-tissage, et comparant cette approche non-parametrique a celle d’un melange deGaussienne. Cette etude est finement completee par celle de Phung & al dans[PBC05] qui y ajoute l’etude de differents espaces colorimetriques ; ces deux ar-ticles ont particulierement influences les travaux sur la couleur presentes dans cechapitre et le chapitre 4.

Hsu & al [HMJ02][8] representent la distribution de la teinte chair dans lesespaces Y CbCr, HSV et Y rg notamment, et illustrent la dependance non-lineairede la chrominance a la luminance.

Brand et Mason [BM00][9] comparent trois methodes de classification dans desespaces differents : seuillage du rapport R/G, seuillage du canal I de YIQ et retro-projection du rapport de vraisemblance de la teinte chair dans RGB [JR99][10]. Ter-rillon & al [TFAS00][11] comparent deux modeles parametriques, une Gaussienneet un melange de Gaussiennes, de la couleur peau dans neuf plans definissant lachrominance, dont les plans H-S, rg normalise et ab.

Shin & al [SCT02][12] etudient l’influence de la representation des couleurs encomparant la separabilite des clusters de pixels de peau et de non-peau sur la base

[7] V. Vezhnevets, V. Sazonov, and A. Andreeva. A survey on pixel-based skin color detectiontechniques. In Proceedings of Graphicon-2003, Moscow, Russia, pages 85–92, 2003.

[8] R-L. Hsu, M.A. Mottaleb, and A.K. Jain. Face detection in color images. IEEE Transac-tions on Pattern Analysis Machine Intelligence, 24(5) :696–706, 2002.

[9] J. Brand and J.S. Mason. A comparative assessment of three approaches to pixel-levelhuman skin-detection. In Proceedings of the 15th International Conference on PatternRecognition, volume 1, pages 5056–5059, 2000.

[10] M.J. Jones and J.M. Rehg. Statistical color models with application to skin detection. InCVPR, volume 1, pages 1274–1280, 1999.

[11] J.-C. Terrillon, H. Fukamachi, S. Akamatsu, and M. N. Shirazi. Comparative performanceof different skin chrominance models and chrominance spaces for the automatic detectionof human faces in color images. In Proceeding of the 4th IEEE International Conferenceon Automatic Face and Gesture Recognition, pages 54–63, 2000.

[12] M. C. Shin, K. I. Chang, and L. V. Tsap. Does colorspace transformation make anydifference on skin detection ? In IEEE Workshop Applications of Computer Vision, pages

Page 97: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.1 Classification de la teinte chair : etat de l’art 67

de quatre metriques (matrices de diffusion et intersections d’histogrammes) surneuf espaces colorimetriques differents, dont RGB, RGB normalise, HSI, Y CbCr,YIQ, YUV et Lab. L’apport de l’information de luminance y est aussi etudiee.

Nous revenons a la fin de cet etat de l’art sur ces differentes etudes compara-tives. Les principaux espaces colorimetriques employes en classification de la teintechair sont presentes, ainsi que les methodes de modelisation de la teinte chair.

2.1.1 Les espaces colorimetriques

Plusieurs espaces colorimetriques sont utilises en detection de teinte chair[PBC05][6], principalement les espaces Y CbCr, HSV, rgb normalise et Lab. Cesespaces sont reputes pour leur separation de l’information de luminance de cellede chrominance, ou pour leur mimetisme de la perception humaine des couleurs[VMP03][13]. La luminance est contenue dans les canaux Y, V et L ou definie parla somme des trois canaux R, G et B dans l’espace rgb. La luminance est l’infor-mation de niveau de gris du pixel : c’est elle qui differencie les differents types decouleur de peau, la couleur d’un sujet de peau noire de celle d’une personne decouleur blanche par exemple. La chrominance est definie par les plans CbCr, HS,ab et rg ou par le seul canal Hue de HSV. Elle contient l’information de teinte dela peau et est relativement robuste a la variance inter-ethnique.

RGB

La theorie trichromatique des couleurs est aussi appelee theorie de Young-Helmholtz. Elle est introduite par Young en 1802 qui postule que l’oeil humainest constitue de trois types de photorecepteur (les cones), chacun particulierementsensible a une longueur d’onde du domaine du visible. Helmholtz la developpe en1850 en categorisant les trois types de cones en fonction de leur sensibilite :

– aux ondes longues, les Cones L, sensibles au rouge (580 nm),– aux ondes moyennes, les Cones M, sensibles au vert (545 nm),– aux ondes courtes, les Cones S, sensibles au bleu (440 nm),

comme le montre la figure 2.1.

L’oeil comporte en effet environ 120 millions de batonnets et 7 millions de cones.Les batonnets sont environs 100 fois plus sensibles a la lumiere que les cones : ils nereagissent qu’a l’intensite lumineuse et servent a la vision nocturne. Les cones sont

275–279, 2002.[13] N. Vandenbroucke, L. Macaire, and J.G. Postaire. Color image segmentation by pixel clas-

sification in an adapted hybrid color space. application to soccer image analysis. ComputerVision and Image Understanding, 90(2) :190–216, 2003.

Page 98: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

68 Modelisation colorimetrique

380 410 465 495 535 580 760

Ecra

n CR

TAb

sorb

ance

nor

mal

isé

Cônes S Cônes M Cônes L

Longueur d’onde en nm

Fig. 2.1 – Reponse spectrale des trois types de cone et de pastille de phosphored’un tube cathodique

moins sensibles a la lumiere (on ne distingue que les formes et non les couleurs dansla penombre), mais distinguent les differentes couleurs. Grace a la superpositionde trois sources colorees (rouge, vert, bleu) a differentes intensites, notre oeil estcapable de distinguer plus de 1500 nuances par couleur, et un total de plusieursmillions de couleurs : le systeme visuel combine la reponse des trois types de cones,donnant lieu a la perception de couleur differentes en fonction de la source. RGB estun espace permettant de definir les couleurs de maniere additive : chaque couleurest un melange de Rouge, de Vert (Green) et de Bleu. Il est applique a l’affichage dela couleur par un ecran cathodique : chaque pixel de l’ecran couleur est constituede trois rectangles electroluminescents emettant une couleur specifique (rouge,vert ou bleu) lorsqu’ils sont soumis a un flux d’electrons : la figure montre lesbandes passantes des pastilles de phosphore d’un ecran CRT (Cathod Ray Display)classique. Le tube cathodique contient trois canons a electrons, un par couleur, etchaque canon ne peut allumer que les points d’une couleur. Les ecrans a cristauxliquides ou plasma codent aussi les couleurs dans cet espace.

Cet espace est etudie dans [PBC05][6], [JR99][10], [BM00][9], [VSA03][7]. C’estl’espace de base a partir duquel les autres espaces colorimetriques de cette sectionsont definis. Swain & al [SB90][3] introduisent l’intersection d’histogramme pour lareconnaissance d’objets et la retro-projection d’histogramme, pour la localisation,dans cet espace.

Page 99: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.1 Classification de la teinte chair : etat de l’art 69

Il est utilise a des fins de detection de visages dans des images fixes parBrand & Mason [BM01][4], ou l’approche structurelle de Yang & Huang [YH94][14]

est amelioree par une etape de segmentation de la peau. Une base consequented’exemples de peau (80 millions) et de non-peau (1.600 millions) est compileedans un tableau contenant le rapport de vraisemblance, calcule a partir de l’his-togramme des exemples de couleur peau et de l’histogramme des pixels de nonpeau, l’espace RGB etant discretise sur 2563 valeurs et affectant a chaque triplet(R,G,B) une probabilite d’etre de couleur peau. Ce modele, appele SPM (SkinProbability Map), occupe une quantite considerable de memoire, il contient plusde 16 millions d’entiers, mais sa retro-projection sur l’image est quasi-instantaneecar chaque triplet constitue l’adresse de sa probabilite dans le SPM. Le seuil dedecision (equation (2.9)) est choisi egale a 50% : les pixels ayant une probabiliteinferieure a 0.5 sont classifies non-peau. Les regions contenant un pourcentage ac-ceptable de teinte chair sont alors inspectees par le detecteur de Yang & Huang.Cette approche en cascade permet de reduire le taux de faux positifs (non-visagesclassifies visage) de 79% a 15%, avec une augmentation, jugee marginale par lesauteurs, du taux de visages manques de 4% a 15%.

Constatant que la peau contient plus de rouge que de vert ou de bleu, ilsappliquent[BM00][9] un seuil au rapport R/B definissant la couleur peau. Une basede test de 6000 images (dont 2000 contiennent des visages) est constituee : lenombre de pixels total de peau et de non-peau n’est pas precise. Mais commeautant d’images, provenant d’une meme base, sont utilises en apprentissage duSPM, on peut dire que la base de test est constituee de l’ordre de 40 millionsd’exemples de peau et de 800 millions de non-peau. Pour un taux de vrais positifsde 95%, le seuillage du ratio R/G donne un taux de faux positifs de 36%, contre 20%pour la classification se basant sur le SPM (cette derniere valeur est en particuliercoherente avec les resultats de [PBC05] qui utilise une base differente). L’utilisationen cascade des ratios R/G, R/B et G/B ramene ce taux a 30%.

Plus recemment, Sigal &al [SSA04][15] initialisent le suivi de la teinte chair enmodelisant la peau et la non-peau dans l’espace RGB par un histogramme ([JR99]).

Mais la forte correlation entre les canaux R, G et B (dans le domaine electro-magnetique, les distributions spectrales du rouge, du vert et du bleu s’intersectent)et le melange des informations de luminance et de chrominance n’en font pas unespace de predilection en detection de la couleur peau.

Pourtant les etudes de [JR99][10] et [PBC05][6] demontrent qu’en terme de clas-sification, c’est l’espace le plus performant, lorsque le nombre d’exemples d’ap-

[14] G.Z. Yang and T.S Huang. Human face detection in a complex background. PatternRecognition, 27(1) :53–63, 1994.

[15] L. Sigal, S. Sclaroff, and V. Athitsos. Skin color-based video segmentation under time-varying illumination. IEEE Transactions on Pattern Analysis and Machine Intelligence,26(7) :862–877, 2004.

Page 100: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

70 Modelisation colorimetrique

prentissage est suffisamment large. Jones et Rehg [JR99] apprennent le rapportde vraisemblance dans RGB, les densites de probabilites de la peau et de la nonpeau etant estimees par l’approche non parametrique des histogrammes, sur 2.5millions d’exemples de peau et 28 millions de non-peau. Ils obtiennent un tauxde vrais positifs de 83% pour un taux de faux positifs de 10%. Un melange deGaussiennes, appris par l’algorithme E-M, modelisant la peau seule dans RGBdonne sensiblement les memes resultats (2% de vrais positifs en moins), mais avecune phase d’apprentissage plus longue. Phung &al [PBC05] utilisent 680.7 millionsd’exemples (116.6 millions de peau et 564.1 millions de non-peau) pour construirele rapport de vraisemblance de la couleur peau dans RGB par la technique deshistogrammes. Ils obtiennent les memes performances que [JR99], et qu’un per-ceptron multi-couche appris sur 30.000 exemples de peau et de non-peau dansRGB.

RGB normalise (ou rgb)

Dans cet espace, la luminance est definie comme la somme des trois canaux R,G et B, et afin d’eliminer la dependance de la couleur a la luma, la normalisationsuivante est appliquee :

r = RR+G+B

g = GR+G+B

b = BR+G+B (2.1)

Le plan r-g, appelee espace chromatique, est en fait celui d’interet : le canal bn’est pas utilise car redondant avec les deux premiers (r + g + b = 1). Un point desingularite existe dans cet espace : lorsque la luminance est nulle, r = g = b = 0.

Parmi les methodes de detection de la peau dans cet espace, on peut citer :– Schwerdt & Crowley [SC00][16] modelisent la peau et la non-peau (definie par

l’histogramme de l’image entiere) par des histogrammes dans le plan r-g, etla couleur peau est poursuivie en utilisant le rapport de vraisemblance.

– Vieux & al [VSC99][17] modelisent la peau uniquement, de la meme maniereque [SC00], a des fins de compression specifique du visage dans une video, ouaussi en video-conference, en transmettant une video focalisee sur le visage.L’information de teinte chair est recherchee de cette maniere dans [CB97][18].

[16] K. Schwerdt and J. L. Crowley. Robust face tracking using color. In Proceedings ofthe Fourth IEEE International Conference on Automatic Face and Gesture Recognition,page 90, Washington, DC, USA, 2000. IEEE Computer Society.

[17] W. Vieux, K. Schwerdt, and J. Crowley. Face tracking and coding for video compression.In Proceedings of the First International Conference on Computer Vision Systems, pages151–160, 1999.

[18] J.L. Crowley and F. Berard. Multi-modal tracking of faces for video communications. InIEEE Conference on Computer Vision and Pattern Recognition, pages 640—645, 1997.

Page 101: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.1 Classification de la teinte chair : etat de l’art 71

– Hadid & al [HPM02][19] detectent les pixels de peau par un seuillage, specifiquea la camera utilisee, dans le plan r − b.

– Soriano &al [SHML00, SMHL03][20,21] utilisent le seuillage precedent pourselectionner les pixels d’apprentissage d’un histogramme modelisant la teintechair dans le plan r−b, et modelisent la non-peau par un histogramme apprissur l’image entiere.

– Yang et Waibel [YWW98, YW96][22,23] modelisent la couleur peau par uneGaussienne dans le plan r − g.

– Oliver &al [OPB97][24] modelisent la peau par un melange de Gaussiennes,dans r-g, appris et mis a jour par l’algorithme E-M.

Cet espace et l’espace HSV sont les plus couramment utilises en poursuite devisages (on notera toutefois la simplicite de la transformation (2.1) comparee a(2.3)).

YCbCr

L’espace colorimetrique Y CbCr a ete introduit en codage d’images pour lavideo. Il permet, dans le cas d’images couleur, de compenser les erreurs de trans-mission de l’information : Y represente en effet l’information de niveau de gristandis que Cb et Cr sont respectivement le bleu moins Y et le rouge moins Y.Connaissant Y, (R−Y ) et (B−Y ), une correction des erreurs de transmission estrealisee et les valeurs de R, G et B deduites.

L’interet de ce codage est aussi d’assurer la compatibilite des nouvelles normesde codage videos avec les anciens televiseurs monochromes. L’information de cou-leur a d’abord ete melangee au signal noir et blanc a des frequences plus elevees.Il s’agit alors d’un signal video composite tel que ceux diffuses par la television

[19] A. Hadid, M. Pietikainen, and B. Martinkauppi. Color-based face detection using skinlocus model and hierarchical filtering. In Proceeding of the 14th International Conferenceon Pattern Recognition, pages 196–200, 2002.

[20] M. Soriano, S. Huovinen, B. Martinkauppi, and M. Laaksonen. Skin detection in videounder changing illumination conditions. In Proceeding of the 15th International Conferenceon Pattern Recognition, pages 839–842, 2000.

[21] M. Soriano, B. Martinkauppi, S. Huovinen, and M. Laaksonen. Adaptive skin color mode-ling using the skin locus for selecting training pixels. Pattern Recognition, 36(3) :681–690,2003.

[22] J. Yang, L. Weier, and A. Waibel. Skin-color modeling and adaptation. In Proceedings ofthe 3 rd Asian Conference on Computer Vision, volume 2, pages 687–694, 1998.

[23] J. Yang and A. Waibel. A real-time face tracker. In Proceedings of the 3rd IEEE Work-shop on Applications of Computer Vision, page 142, Washington, DC, USA, 1996. IEEEComputer Society.

[24] N. Oliver, A. Pentland, and F. Berard. Lafter : Lips and face real time tracker. In Pro-ceedings of the IEEE Conference on Computer Vision and Pattern Recognition, volume 1,pages 123–129, 1997.

Page 102: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

72 Modelisation colorimetrique

analogique dans les normes NTSC, PAL et Secam. Par la suite un format video acomposantes separees est definit par SONY afin d’eliminer les effets de moirage duau recouvrement de la chrominance sur la bande de frequence de la luminance : lesignal video est vehicule par trois cables distincts (Y, U et V), puis par deux (Yet C), la chrominance C etant un signal composite.

La conversion de l’espace RGB a l’espace YCbCr est une transformation affine.Plusieurs definition de cette transformation existe en fonction du logiciel employe.Nous utilisons celle de [Ope, FR98][25,26] rappellee par la formule (2.2).

Y = 0.299R + 0.587G + 0.114BCb = 0.564(B − Y ) + 128Cr = 0.713(R− Y ) + 128

(2.2)

Y CbCr represente en realite une famille d’espaces colorimetriques qui lui sontanalogues : YUV, Y PbPr, Y DbDr et YIQ. La luminance est definie de la mememaniere pour ces espaces : seuls changent les coefficients affectes a la difference(R−Y ) ou (B−Y ) entre le bleu ou le rouge et la luminance pour definir la chromi-nance, excepte pour l’espace YIQ. Y CbCr, souvent abrege par YCC, est le termereserve aux signaux numeriques, les autres ont ete definis pour les besoins de lavideo analogique. Le codage YUV est applique par les normes NTSC et PAL les-quelles transmettent la couleur par modulation d’amplitude d’une sous-porteuse.La chrominance y est definit par U = 0, 492(B − Y ) et V = 0, 877(R − Y ) : cesdeux canaux sont alors amplifie par le recepteur avant affichage. Y DbDr est utilisepar les normes SECAM et PAL-N pour lesquelles la chrominance est vehiculee parmodulation de frequences. Les canaux Db = 1.505(B−Y ) et Dr = −1.902(R−Y )doivent alors etre attenuees par le recepteur lors de la demodulation. La chromi-nance de Y PbPr est definie comme celle de Y CbCr sans le terme d’offset appa-raissant dans la formule (2.2). Dans l’espace YIQ, abandonne par la norme NTSCpour des raisons de cout, les canaux de la chrominance I et Q (respectivementin-phase et quadrature, la chrominance etant transmise par modulation d’ampli-tude en quadrature de phase, a porteuse supprimee) sont definis par des sommesponderes de (R− Y ) et (B − Y ). Citons enfin l’espace YES, bien que n’etant pasun descendant direct des precedents, mais qui est un standard Xerox tres prochede Y CbCr.

Tous ces espaces en depit de leur difference codent la couleur de la mememaniere : un terme de luminance et deux termes de difference de couleur. Cette

[25] OpenCv. Open source computer vision library : http ://source-forge.net/projects/opencvlibrary/.

[26] A. Ford and A. Roberts. Colour space conversions,http ://www.poynton.com/pdfs/coloureq.pdf. http ://www.poynton.com/PDFs/coloureq.pdf,1998.

Page 103: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.1 Classification de la teinte chair : etat de l’art 73

separation explicite en font des espaces tres usites en modelisation de la couleurpeau :

– [BPM05b][27], [CN99][28], [Ahl99][29] detectent la peau par un seuillage rec-tangulaire dans le plan CbCr.

– Girondel & al [GCB06][30], utilisent l’approche precedente dans des systemesde suivi, en adaptant les seuils.

– Seguier [Seg04a][31] modelise la tente chair dans une sequence d’image demaniere adaptative en analysant les histogrammes Cb et Cr sur plusieursimages, retournees par une detection de mouvement et une detection d’el-lipse.

– Wang & Brandstein [WB99][32] definissent la couleur peau par un intervalledonne du canal I de l’espace YIQ.

– Garcia & Tziritas [GT99][33] definissent la localisation de la teinte chair dansl’espace Y CbCr par deux regions (une pour les pixels de luminance Y > 128,une autre pour Y < 128) delimitees par des plans.

– Hu & al [HWSK04][34] partitionnent les valeurs du canal Y en 6 intervalles,et construisent un histogramme de la chrominance Cb − Cr de la couleurpeau pour chaque intervalle. 43 millions d’exemples de peau sont utilises enapprentissage.

– Campadelli & al [CRL05][35] modelisent la couleur peau par un melange dedeux Gaussiennes, appris par E-M, dans le plan PbPr.

[27] R. Belaroussi, L. Prevost, and M. Milgram. Combining model-based classifiers for facelocalization. In Proceedings of the Ninth IAPR Conference on Machine Vision Applications,pages 290–293, 2005.

[28] D. Chai and K.N. Ngan. Face segmentation using skin-color map in videophone applica-tions. IEEE Transactions on Circuits and Systems for Video Technology, 9(4) :551, June1999.

[29] J. Ahlberg. Extraction and Coding of Face Model Parameters. PhD thesis, LicentiateThesis No. 747, Dept. of Electrical Engineering, Linkoping University, Sweden, 1999.

[30] V. Girondel, A. Caplier, and L. Bonnaud. A human body analysis system. EuropeanJournal on Applied Signal Processing - EURASIP-JASP, 18 pages, to appear, 2006.

[31] R. Seguier. Detection de visage adaptative. In COmpression et REpresentation des SignauxAudiovisuels, 2004.

[32] C. Wang and M. Brandstein. Multi-source face tracking with audio and visual data.In Proceedings of IEEE 3rd Workshop on Multimedia Signal Processing, pages 169–174,Copenhagen, Denmark, September 1999.

[33] C. Garcia and G. Tziritas. Face detection using quantized skin colour regions mergingand wavelet packet analysis. IEEE Transactions on Multimedia, 1(3) :264–277, September1999.

[34] M. Hu, S. Worrall, A.H. Sadka, and A. M. Kondoz. Automatic scalable face model designfor 2d model-based video coding. Signal Processing : Image Communication, 19(5) :421–436, May 2004.

[35] P. Campadelli, R.Lanzarotti, and G. Lipori. Face localization in color images with complexbackground. In Proceedings of the IEEE International Workshop on Computer Architecturefor Machine Perception, pages 243–248, 2005.

Page 104: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

74 Modelisation colorimetrique

– Phung & al [PBC02][36] determinent trois clusters Gaussiens dans l’espaceY CbCr, par k-moyennes, modelisant la peau.

– Hsu & al [HMJ02][8] compensent l’effet de la luminosite par une transforma-tion de la luma dans un premier temps puis transforment non-lineairementl’espace Y CbCr et definissent une frontiere elliptique dans le plan de chromi-nance obtenue.

– Menser & Brunig [MB99][37] modelise la teinte chair par une Gaussienne dansle plan CbCr.

– Collobert & al [CFT+96][38] utilisent une table pre-calculee indexant les pixelsde couleur peau dans le plan U-V. Ce modele est re-utilise par Feraud &al[CFT+96][38].

– Saber & Tekalp [ST98][39] modelisent la couleur peau par une Gaussiennedans le plan E-S de l’espace YES.

HSV

Introduit dans les annees 1970 [Smi78][40] pour les besoins de la synthese d’im-ages, le modele HSV (parfois appele HSB, B pour brightness) est souvent utilisedans les applications graphiques a cause de sa similarite avec la perception humainedes couleurs. L’espace colorimetrique HSV correspond a une transformation non-lineaire de l’espace RGB : la couleur y est definie en terme de teinte H (Hueen anglais), de saturation S et de luminance V. Le canal Hue est defini commeun angle compris entre 0 et 360˚, mais est normalise entre 0 et 180˚pour etrestocke dans une image 8 bits. Hue represente la teinte de la couleur c’est-a-dire sanature : pour des valeurs croissantes de H, la teinte passe par le rouge, le jaune,le vert, le cyan, le magenta et revient au rouge (H=180˚) (voir figure 2.2). Lasaturation represente la purete de la couleur : une couleur achrome (i.e. contenantautant de rouge, de vert et de bleu) a une valeur de saturation nulle, tandis qu’un

[36] S.L. Phung, A. Bouzerdoum, and D. Chai. A novel skin color model in ycbcr color spaceand its application to human face detection. In Proceedings of the IEEE InternationalConference on Image Processing, volume 1, pages 289–292, 2002.

[37] B. Menser and M. Brunig. Locating human faces in color images with complex background.In Proceedings of Intelligent Signal Processing and Communications Systems, pages 533–536, 1999.

[38] M. Collobert, R. Feraud, G. Le Tourneur, O. Bernier, J. E. Viallet, Y. Mahieux, andD. Collobert. Listen : A system for locating and tracking individual speakers. Proceedingsof the Second IEEE International Conference on Automatic Face and Gesture Recognition,00 :283, 1996.

[39] E. Saber and A. Tekalp. Frontal-view face detection and facial feature extraction usingcolor, shape and symmetry based cost functions. Pattern Recognition Letters, 19(8) :669–680, 1998.

[40] A. R. Smith. Color gamut transform pairs. SIGGRAPH Computer Graphics, 12(3) :12–19,1978.

Page 105: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.1 Classification de la teinte chair : etat de l’art 75

rouge vif, par exemple, a une saturation elevee (voir figure 2.3). Elle prend desvaleurs comprise entre 0 et 255. La formule 2.3 donne la definition implementeedans [Ope][25]. D’autres definitions de la conversion de RGB a HSV existent dansla litterature [Tra91][41], [JW75][42],[FvDFH96][43].

V = max(R, G, B)

S = 255V −min(R,G,B)V

H = 0 si S = 0, sinon :

H =

⎧⎨⎩

60G−BS

si V = R60B−R

S+ 180 si V = G

60R−GS

+ 240 si V = B

H = H + 360, si H < 0Normalisation : H = H

2⇒ H ∈ [0 180˚]

(2.3)

La representation conique des couleurs (figure 2.2) dans l’espace HSV illustre ladecroissance de la saturation lorsque la luminance decroıt. Cet effet est montre parla figure 2.3 : on y affiche a chaque point du plan H-S la couleur qui lui correspondpour trois niveaux de luminosite. La plupart des segmentations de la peau danscet espace n’utilisent que le plan H-S.

On pourrait s’attendre a une degradation des performances d’une classificationde la teinte chair dans ce plan pour des valeurs de luminance faibles, car en bas ducone il devient difficile de distinguer des couleurs differentes. On notera tous par-ticulierement le point de singularite (S = 0, H = 0) : tous les pixels monochromes(i.e. pour lesquels R=G=B, voir figure 2.3) correspondent au meme point dans leplan H-S !

Dans le cas de la couleur de peau, c’est un avantage permettant de rejeter lespixels peu colores a monochrome, donc de saturation faibles, qui sont generalementdes pixels de fond. En effet, sur 50 images de la base ECU [PBC05] contenant 1.2millions d’exemples de peau et 8.5 millions d’exemples de non-peau :

– 1.5% des exemples de peau ont une valeur de S < 0.05 ∗ 255, et 4% d’entreeux ont une valeur de S < 0.1 ∗ 255,

[41] D. Travis. Effective colour displays : theory and practice. Academic Press, London, 1991.[42] D. Judd and G. Wyszecki. Color in Business, Science, and Industry. John Wiley and

Sons, 1975.[43] James D. Foley, Andries van Dam, Steven K. Feiner, and John F. Hughes. Computer

graphics (2nd ed. in C) : principles and practice. Addison-Wesley Longman PublishingCo., Inc., Boston, MA, USA, 1996.

Page 106: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

76 Modelisation colorimetrique

Fig. 2.2 – Representation conique des couleurs dans HSV

– 11% des exemples de non-peau ont une valeur de S < 0.05 ∗ 255, et 20% ontune valeur de S < 0.1 ∗ 255.

Aussi, dans [Bra98][44], il est preconise de classifier d’office comme non-peau lespixels ayant une valeur de saturation inferieure a un seuil de S = 0.1 ∗ 255.

HSV fait partie d’une famille d’espaces colorimetriques, dont il derive [JW75][42],tels que HSL (L pour lightness) [GW02][45], HSI (I pour intensity), HCI (C pourchroma), HVC ou encore TSD (Tint, Saturation and Darkness). Ces espaces ontete crees dans le meme but : separer l’information de luminance de la couleur etdecrire la couleur selon deux attributs, sa teinte et sa saturation.

Parmi les auteurs operant une segmentation de la peau dans cet espace, onpeut citer :

– Sigal &al [SSA04][15] qui utilisent les troix canaux de HSV dans un systemede suivi de la teinte chair, et modelisent la couleur peau et la non-peau pardes histogrammes.

– Zhu &al [ZYW00][46] segmentent la main en modelisant la peau par uneGaussienne et la non-peau par un melange de Gaussiennes (une pour lapeau et quatre pour la non-peau), appris par un algorithme E-M restreint,

[44] G.R. Bradski. Computer vision face tracking for use in a perceptual user interface. IntelTechnology Journal, Q2 :15, 1998.

[45] R.C. Gonzalez and R.E. Woods. Digital image processing. Second edition, 2002.[46] X. Zhu, J. Yang, and A. Waibel. Segmenting hands of arbitrary color. In Proceedings of

the Fourth IEEE International Conference on Automatic Face and Gesture Recognition,pages 446–453, Washington, DC, USA, 2000. IEEE Computer Society.

Page 107: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.1 Classification de la teinte chair : etat de l’art 77

Luminance = 50%

Satu

ratio

n

0°S=0

S=255

90°45°90° 180°135°

Hue

Luminance = 70%

Satu

ratio

n

Hue

Luminance = 90%

Satu

ratio

n

Hue

Fig. 2.3 – Representation des couleurs dans le plan H-S pour differents niveauxde luminance

Page 108: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

78 Modelisation colorimetrique

dans le plan H-S.– Garcia et Tziritas [GT99][33] quantifie dans un premier temps les couleurs

d’une image de test en 16 couleurs dominantes, par un algorithme de k-moyennes dans le cone HSV. Les regions de teinte chair sont alors celles dontla couleur moyenne du cluster correspondant est inclue dans une portion del’espace HSV, delimitee par une enveloppe (ils utilisent aussi l’espace Y CbCr).

– McKenna &al [MGR98][47] (suivi) modelisent la couleur peau par un melangede Gaussiennes dans le plan H-S, appris par l’algorithme E-M. Un modelestatique est utilise dans la premiere image, et les regions de forte vraisem-blance et de taille suffisante sont regroupees. Dans [MRG99, RMG98][48,49]

le modele de teinte chair est adapte de maniere recursive dans les imagessuivantes.

– Yoo et Oh [YO99][50] modelisent la teinte chair par un histogramme dans leplan H-S de HSI dans un cadre de poursuite du visage : le visage est localisedans la premiere image en utilisant un modele de couleur peau statique,puis il est actualise a chaque nouvelle image par l’histogramme des pixels duvisage precedemment localise.

– Sobottka et Pitas [SP98a, SP96a][51,52] definissent la teinte chair par unefrontiere rectangulaire dans le plan H-S.

– Saxe et Foulds [SF96][53] suivent le visage et les mains par intersection d’his-togrammes dans le plan H-S. Un premier histogramme modele est definie parl’utilisateur, une retine 5x5 parcourt l’image en calculant l’intersection entrel’histogramme modele et celui de la retine. Le visage et les mains sont alorslocalisees et l’histogramme modele mis a jour.

– Bradski [Bra98][44] utilise le canal Hue seul pour implementer l’algorithmedu CamShift (voir chapitre 4).

[47] S. J. McKenna, S. Gong, and Y. Raja. Modelling facial colour and identity with gaussianmixtures. Pattern Recognition, 31(12) :1883–1892, 1998.

[48] S. J. McKenna, Y. Raja, and S. Gong. Tracking colour objects using adaptive mixturemodels. Image Vision Computing, 17(3-4) :225–231, 1999.

[49] Y. Raja, S. J. McKenna, and S. Gong. Tracking and segmenting people in varying lightingconditions using colour. In IEEE International of the Third Conference on Automatic Faceand Gesture Recognition, pages 228–233, 1998.

[50] T.-W. Yoo and I.-S. Oh. A fast algorithm for tracking human faces based on chromatichistograms. Pattern Recognition Letter, 20(10) :967–978, 1999.

[51] K. Sobottka and I. Pitas. A novel method for automatic face segmentation, facial featureextraction and tracking. Signal Processing : Image Communication, 12(3) :263–281, 1998.

[52] K. Sobottka and I. Pitas. Extraction of facial regions and features using color and shapeinformation. In Proceedings of the 13th International Conference on Pattern Recognition,volume 3, 1996.

[53] D. M. Saxe and R. A. Foulds. Toward robust skin identification in video images. InProceedings of the Second IEEE International Conference on Automatic Face and GestureRecognition, pages 379–384, 1996.

Page 109: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.1 Classification de la teinte chair : etat de l’art 79

Lab : espace perceptuellement uniforme

La couleur d’un objet n’est pas une propriete intrinseque mais un phenomenede perception : un objet rouge ne l’est que parcequ’il absorbe toutes les longueursd’ondes de la lumiere qui l’eclaire sauf celles du rouge, qu’il reflechit. Une voi-ture rouge faiblement eclairee peut paraıtre marron : c’est ce que l’on appelle lemetamerisme. La couleur est donc une perception contextuelle de la vision hu-maine. Une representation des couleurs imitant la sensibilite spectrale de la visionhumaine devraıt donc permettre d’obtenir une segmentation de la peau plus per-formante.

La theorie trichromatique n’explique pas certaines observations. Si on concoitqu’un melange de rouge et de jaune donne de l’orange, toutes les combinaisonsde couleurs fondamentales ne sont pas possibles : comment concevoir un bleujaunatre ou un rouge verdatre ? De plus, nous distinguons en general non pas 3,mais 4 couleurs fondamentales : bleu, vert, rouge, et jaune.

Revenons sur la figure 2.1 : les courbes de sensibilite des cones L et M serecouvrent significativement. Pour ameliorer le codage de l’information visuelle,les cones L, M et S sont decorreles de maniere a former des couples de couleursfondamentales, auxquelles un systeme reagit de maniere opposee : bleu / jaune, vert/ rouge, noir / blanc. C’est la theorie des processus opposes de Hering (1878) pourqui la perception des couleurs depend de deux mecanismes chromatique opposes,(rouge-vert et bleu-jaune), et d’un mecanisme achromatique (noir-blanc) sensibleau contraste de luminance. Le principe est qu’a l’excitation de l’un des membresd’un couple correspond l’inhibition de l’autre. L’existence du systeme noir-blancn’est pas etablie, mais les deux premiers sont desormais des faits de la physiologie :des neurones situes au dela de la couche des cones repondent par excitation /inhibition aux couples bleu-jaune et vert-rouge.

La theorie des processus opposes explique pourquoi la couleur jaune est aussibien percue alors que cette couleur active simultanement les cones L et M. Lastimulation de ces deux cones est soustraite, comme le montre la figure 2.4, inhibantla sortie des neurones +/- ce qui active la perception du jaune. Une stimulationd’un cone S excite au contraire la sortie des neurones +/- ce qui inhibe le jaune etactive la perception du bleu.

Ce processus d’excitation/inhibition antagoniste est illustre par les illusionsd’optiques des figures 2.6 et 2.7. Apres avoir fixe l’image des rectangles coloresde la figure 2.6, la contrainte d’inhibition d’une couleur, pour un couple donne,est relachee. Cela a pour effet d’augmenter son activite, relativement a celle dela couleur precedemment sollicitee, et activant sa perception. Cet effet peut aussietre constate pour le couple noir-blanc sur la figure 2.7.

L’espace ”perceptuellement uniforme” CIE-Lab est un modele de representation

Page 110: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

80 Modelisation colorimetrique

S M L

+

Système achromatique

LS M

--

Systèmes chromatiques

S M L

+

Fig. 2.4 – Processus opposes dans la vision des couleurs

des couleurs developpe par le CIE (Commission Internationale de l’Eclairage) en1976, et derivant de l’espace CIE-XYZ. Il vise a uniformiser la perception desdifferences de couleurs, comme le montre la figure 2.5 : les couleurs dans le plana-b sont illustrees pour des luminances croissantes par pas de 20. Les relationsnon-lineaires pour L, a et b ont pour but d’imiter la reponse logarithmique del’oeil : l’oeil detecte 1 point de variation de a ou b pour 5 points de L.

Les couleurs y sont definies selon dans un repere cartesien constitue d’unaxe achromatique noir-blanc et deux axes chromatiques rouge-vert et bleu-jaune,comme suggere par la theorie des processus opposes.

Les equations 2.4 a 2.6 explicitent la transformation de l’espace RGB a l’espaceLab (nous utilisons la definition de [FR98][26]) :

– la luminance est comprise entre 0 (noir) et 100% (blanc),– le canal a represente la gamme des couleurs de l’axe rouge (127) au vert

(-128) en passant par le blanc (0) pour une luminance de 100%,– le canal b represente la gamme de l’axe jaune (127) au bleu (-128) en passant

par le blanc (0) si la luminance vaut 100%.

Cette transformation passe par la definition de l’espace CIE-XYZ :⎛⎝ X

YZ

⎞⎠ =

⎛⎝ 0.433910 0.376220 0.189860

0.212649 0.715169 0.0721820.017756 0.109478 0.872915

⎞⎠

⎛⎝ R/255

G/255B/255

⎞⎠

La luminance est alors definie par :

L =

{116Y 1/3 si Y > 0.008856903.3Y 1/3 sinon

(2.4)

Page 111: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.1 Classification de la teinte chair : etat de l’art 81

Luminance = 50%

Luminance = 70%

Luminance = 90%

Fig. 2.5 – Representation des couleurs dans le plan a-b a differents niveau deluminances

Page 112: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

82 Modelisation colorimetrique

et la chrominance par :

a = 500(f(X)− f(Y )) (2.5)

b = 500(f(X)− f(Z)) (2.6)

avec

f(t) =

{t1/3 si t > 0.0088567.787t + 16/116 sinon

L’uniformite perceptuelle est donc realisee au prix d’une transformation tres com-plexe necessitant plus d’instructions machine.

On compte dans la meme famille d’espace : Luv, Hunter Lab, Lhs et Lhc.

Comaniciu et Meer [CM97][54] segmentent ainsi des images couleurs dans l’es-pace Luv par l’algorithme du Mean-Shift.

Yang et Ahuja [YA98][55] modelisent la distribution de la couleur peau dans leplan u − v de l’espace Luv par une Gaussienne. Un pixel est classifie peau si laprobabilite lui correspondant est superieure a 50%, et une region est considereecomme contenant de la peau si sa proportion de teinte chair depasse les 70%.Les composantes connexes resultantes sont ensuite fusionnees de maniere a obte-nir des regions approximativement elliptiques. Celles ajustees par une ellipse dontle rapport grand axe sur petit axe est superieur a 1.7 sont designes comme vi-sages candidats. Enfin les visages candidats dont l’image binaire de la teinte chaircontient des trous sont classifies visages. Une segmentation des zones homogenes[Ahu96][56], prealable a la segmentation de la peau, est realisee sur l’image en ni-veau de gris, a trois echelles. L’article ne donne pas de resultats quantitatifs maisdes exemples ou les visages sont detectes avec des orientations differentes.

Dans [YA99][57] ils utilisent un melange de deux Gaussiennes, appris par l’al-gorithme d’Expectation-Maximization, pour modeliser la teinte chair dans le planu-v, en justifiant par des tests statistiques le choix d’un melange plutot que d’uneGaussienne seule et le choix du nombre de Gaussiennes.

[54] D. Comaniciu and P. Meer. Analysis of feature spaces : Color image segmentation. InProceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages750–755, 1997.

[55] M-H Yang and N Ahuja. Detecting human faces in color images. In International Confe-rence on Image Processing, volume 1, pages 127–130, 1998.

[56] N. Ahuja. A transform for multiscale image segmentation by integrated edge and regiondetection. IEEE Transactions on Pattern Analysis and Machine Intelligence, 18 :1211–1235, 1996.

[57] M. Yang and N. Ahuja. Gaussian mixture model for human skin color and its applicationin image and video databases. In Proceedings of the SPIE Conference on Storage andRetrieval for Image and Video Databases, pages 458–466, 1999.

Page 113: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.1 Classification de la teinte chair : etat de l’art 83

Schumeyer et Barner [SB98][58] utilisent l’espace Lab pour encoder les mains etle visage avec une meilleures resolution dans des sequences de langage des signes.Les points de l’espace Y CbCr dont la conversion dans le plan a-b correspond a unexemple de peau sont enregistres dans une table, et la classification peau/non-peaud’un pixel de test se fait en attribuant la classe correspondant a ces coordonnees(Y, Cb, Cr) dans la table. Cette astuce permet d’eviter la conversion de Y CbCr

(espace dans lequel sont codes les images dans une sequence au format Mpeg etH.263) a Lab.

Cai et Goshtasby [CG99][59] modelisent la couleur peau par un histogrammedans le plan a-b. Leur base d’apprentissage etant constituee de 2300 exemples depeau. L’histogramme est lisse a l’aide d’un noyau Gaussien. L’histogramme lisseest ensuite retro-projete sur l’image de test : un lissage (Gaussien) fort est ensuiterealise sur l’image des vraisemblances obtenues. Un seuillage adaptatif est opere auvoisinage des maximums locaux de l’image precedemment lissee, et les composantesconnexes trop petites sont eliminees. Les visages candidats sont ensuite valides partemplate matching sur l’image de luminance : trois modeles (templates) de visagesont definis, un de face et deux de profil, chacun etant definis par la moyennede 16 images de visages. Lorsque au moins trois trous sont trouves dans l’imagebinaire issue de la segmentation de la peau, ils sont utilises pour estimer l’angle derotation dans le plan du visage candidat avant l’operation de template matching.Leur systeme detecte 87% des visages avec un taux de faux positifs de 8.7% surune base d’image extraite du web (leur nombre n’est pas precise).

Li & al [LGG00][60] utilisent le meme systeme pour detecter et poursuivre desvisages dans une sequence : les visages sont detectes sur une image sur 30 de lasequence, puis le systeme se focalise sur une zone de recherche centree sur le visagedetecte dans l’image precedente. La detection d’un visage dans une image entiere640x480 prend environ 25 secondes et detecte 90% des visages lorsqu’ils ne sontpas trop petit ; la poursuite (i.e. la detection dans une sous-image) prend 2s.

[58] R. Schumeyer and K. Barner. Color-based classifier for region identification in video. InProceedings of the SPIE Visual Communications Image Processing, volume 3309, pages189–200, 1998.

[59] J. Cai and A. Goshtasby. Detecting human faces in color images. Image Vision Computing,18 :63–75, 1999.

[60] Y. Li, A. Goshtasby, and O. Garcia. Detecting and tracking human faces in videos. InProceedings of the 15th International Conference on Pattern Recognition, volume 1, pages807–810, 2000.

Page 114: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

84 Modelisation colorimetrique

Fig. 2.6 – Fixez le point au centre des 4 rectangles colores pendant 30 secondes,puis visualisez le point isole dans l’image du bas : les couleurs originales sontpermutes, le bleu devient jaune, le rouge devient vert et reciproquement

Page 115: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.1 Classification de la teinte chair : etat de l’art 85

Fig. 2.7 – Fixez l’image 30 secondes puis regarder une page blanche : le drapeaudes USA retrouve ces couleurs originales (le meme resultat peut etre obtenu avecle drapeau du Portugual)

Page 116: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

86 Modelisation colorimetrique

2.1.2 Modelisation de la teinte chair

La modelisation de la teinte chair est une etape preliminaire a sa detection :chaque pixel se voit attribuer une vraisemblance avec laquelle il est de couleurpeau. Une classification Bayesienne au niveau du pixel consiste alors a seuillercette vraisemblance, mais une segmentation de la peau peut aussi utiliser uneinformation de plus haut niveau, avant de binariser les niveaux de vraisemblance.Rappelons que nous n’etudions ici que les modeles statiques de la couleur peau etque les modeles dynamiques sont traites au chapitre 4.

Comme l’indiquent [PBC05][6] et [VSA03][7], on peut denombrer trois grandesclasses de modeles utilises pour la modelisation de la teinte chair : la definitiond’une frontiere explicite dans un espace colorimetrique, les modeles parametriqueset les modeles non-parametriques.

2.1.3 Definition explicite de la teinte chair

Une classification de la teinte chair peut etre directement appliquee dans espacecolorimetrique donne, particulierement lorsque des informations a priori sont dis-ponibles sur la scene, comme dans le cas des images de la base XM2VTS [MMKJ99]ou le fond est bleu. Cela dit meme dans le cas d’un fond plus complexe, une telleapproche peut s’averer payante, comme le montre la figure 2.8.

Une frontiere lineaire par morceaux [BPM05b][27] est definie par un rectangledans le plan CbCr. La signature (2.7) sur Cb et Cr definit les pixels de teinte chair :

Cb ∈ [105 130] et Cr ∈ [135 160] (2.7)

Cette signature a ete reglee de maniere experimentale, comme dans [CN99][28], surdes images contenant des gens et extraites du Web.

La peau etant caracterisee par des informations de chrominance specifiques,ce filtre peut s’appliquer a des sujets d’origines ethniques quelconques comme onpeut le noter sur les figures 2.8 et 2.9. Cette derniere figure illustre les limites dece seuillage, et des modeles statiques de la teinte chair d’une maniere generale.Dans la figure 2.9 (a), le taux de faux negatif est tres bas mais le taux de fauxpositifs est beaucoup trop important pour escompter trouver le visage par uneseule approche basee region. La figure 2.9 (b) represente un cas de figure encoreplus genant : tres peu de pixels de peau sont classifies comme tel, et une approcheen cascade de la localisation du visage ou ce filtre de teinte chair serait le premieretage n’aboutirait pas a une decision correcte.

De plus ces frontieres ne sont pas universelles du fait que la chrominance de lateinte chair dans CbCr est en pratique liee a la luminance Y : [HWSK04][34], par

Page 117: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.1 Classification de la teinte chair : etat de l’art 87

exemple, partitionnent ainsi Y en six et appliquent un modele de teinte chair pourchacun des intervalles obtenus. C’est ce qu’illustre la figure 2.10 representant unememe personne, un meme jour, dans des conditions d’eclairement differentes. Dansla figure 2.10 (a) la peau est correctement classifiee et il reste un certain nombrede faux positifs constitues en composantes connexes suffisament isolees pour etreeliminees, par exemple sur un critere de taille : le visage et le bras peuvent alors etredistingues sur un critere de compacite. La figure 2.10 (b) montre une classificationresultant en un nombre beaucoup trop important de faux negatifs au niveau duvisage : l’illumination du visage a change par rapport a l’image precedente, et lasignature de la peau dans le plan CbCr ne correspond plus aux seuils exhibes.

Ce modele de couleur peau est donc grossier mais simple et rapide : il nousservira de reference. Le tableau (2.1) donne la matrice de confusion obtenue sur lecorpus de test (2.3), page 101. C’est une table de contingence confrontant le resultatde la classification (colonnes) et les classes desirees (lignes) sur les exemples de labase de test. Sur la diagonale, on trouve donc le nombre de pixels bien classees,et hors de la diagonale les elements mal classes. La somme des valeurs sur uneligne donne le nombre d’exemples testes de la classe. Les elements de la matrice(2.1) sont exprimes en pourcentage : la premiere donne la proportion de pixels deteinte chair classes respectivement comme etant de couleur peau (les vrais positifs,premiere colonne) et comme non-peau (faux negatifs). La seconde ligne representela proportion de pixels de non-peau classifies respectivement comme peau (les fauxpositifs) et non-peau (vrais negatifs).

Classe / Classification Peau Non-peauPeau 77% 23%Non-Peau 17% 83%

Tab. 2.1 – Matrice de confusion du classifieur de teinte chair par seuillage rectan-gulaire dans le plan CbCr : la premiere colonne constitue les coordonnees du pointde la courbe COR

Notons que Chai & Ngan [CN99][28] utilisent cette classification dans le planCbCr : apres quelques operations de post-processing (lissage, morphologies, etelimination de vignettes par seuillage de l’ecart-type des niveaux de gris sur unvoisinage 8x8), a des fins de localisation du visage, avec pour application la visio-phonie. Ils localisent correctement 49 visages sur 60, a la vitesse d’une image parµs (sic). Ils utilisent une base de test contenant trois types de peau (blanc, jaune,noir) et 20 images par type de peau.

Ahlberg [Ahl99][29] utilise la meme methode comme pre-filtre : un modele Gaus-sien de la teinte chair dans ce plan est ensuite applique aux pixels filtres. Un seuilsur la distance de Mahalanobis etablit la classification peau/non-peau. Puis levisage est localise par template matching avec un modele de texture du visage.

Page 118: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

88 Modelisation colorimetrique

Fig. 2.8 – Segmentation de la peau par seuillage dans le plan CbCr

(a) (b)

Fig. 2.9 – Segmentation de la peau par seuillage dans le plan CbCr : (a) taux defaux positifs eleve, (b) taux de faux negatifs important,

(a) (b)

Fig. 2.10 – Effet de la luminance sur la segmentation de la peau par seuillage fixedans le plan CbCr

Page 119: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.1 Classification de la teinte chair : etat de l’art 89

[BPM05b] [CN99] [Ahl99]Cb ∈ [105 130] Cb ∈ [77 127] Cb ∈ [94 132]Cr ∈ [135 160] Cr ∈ [133 173] Cr ∈ [139 177]

Tab. 2.2 – Seuils de decision de la classification peau/non-peau pour differentsauteurs

[FFB96][61] utilisent cette approche dans l’espace log-opponent.

Girondel & al [GCB06][30] considerent cette approche pour initialiser un systemede suivi d’une personne et de ses mains.

Wang et Brandstein [WB99][32] utilisent l’espace YIQ et definissent la teintechair par deux bornes sur le canal I : I ∈ ]14, 40[⇒ couleur peau.

Hadid & al [HPM02][19] definissent les frontieres de la couleur peau dans l’es-pace r-b normalise apres une procedure de calibration de la camera, detaillee dans[SAG99][62], par une forme parametree. Dans ce plan et pour cette camera, la cou-leur peau se situe dans une surface majoree par un segment et minoree par lacourbe d’un polynome de degre 5. Les visages candidats sont ensuite valides surdes criteres de formes (l’ellipse ajustee aux contours de la region de peau doit avoirun certain rapport largeur/hauteur), de texture (la variance du canal rouge doitetre suffisante et l’image en niveau de gris doit etre suffisamment symetrique parrapport au grand axe de l’ellipse). Une detection des yeux et des sourcils determinela classe des candidats retenus.

Sobottka et Pitas [SP98a][51] definissent la teinte chair par un seuillage rec-tangulaire dans le plan H-S de HSV. Une ellipse est alors ajustee aux regionssegmentees, et certains sont eliminees en seuillant le rapport entre le nombre depixels dans un trou ou en dehors de l’ellipse et le nombre de pixels dans l’ellipse.Les visages candidats restant sont ensuite valides par une detection des yeux etde la bouche par projection horizontale et verticale des niveaux de gris. La mememethode est appliquee dans [SP96a, SP96b][52,63].

[61] M. M. Fleck, D. A. Forsyth, and C. Bregler. Finding naked people. In Proceedings of the4th European Conference on Computer Vision, volume 2, pages 593–602, 1996.

[62] M. Storring, H. J. Andersen, and E. Granum. Skin colour detection under changing lightingconditions. In 7th International Symposium on Intelligent Robotic Systems, pages 187–195,1999.

[63] K. Sobottka and I. Pitas. Looking for faces and facial features in color images. In PatternRecognition and Image Analysis : Advances in Mathematical Theory and Applications,Russian Academy of Sciences., 1996.

Page 120: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

90 Modelisation colorimetrique

2.1.4 Modeles non-parametriques de la couleur peau

La regle de decision Bayesienne est une methode populaire en reconnaissance deformes [DHS00][64] : on demontre qu’elle est optimale si les densites de probabilitessont connues. Appliquee a un probleme a deux classes ω1 et ω2 elle s’appuie sur lerapport de vraisemblance L :

L(�x) =p(�x|ω1)

p(�x|ω2)(2.8)

ou p(�x|ω1) et p(�x|ω2) sont les fonctions de densite de probabilite conditionnellepour les classes ω1 et ω2 respectivement. Cette regle de decision enonce qu’unexemple �x appartient a la classe ω1 si ce rapport est superieur a un seuil biendefini.

On parle de modele parametrique lorsque les fonctions de densite de probabiliteconditionnelles sont des lois definies a priori (generalement normales ou melangesde lois) dont on determine les parametres par apprentissage (Expectation-Mini-misation ou k-moyenne par exemple). Ces lois compilent les exemples d’apprentis-sage dans leurs parametres. Un modele non-parametrique (histogrammes, noyauxde Parzen [CRM03][65], k-plus-proches-voisins . . .) ne fait quant a lui aucune hy-pothese sur les fonctions de densite de probabilite.

Si on suppose que les exemples de la classe ω2 sont uniformement distribuees,la regle de decision Bayesienne est simplifiee : un exemple �x appartient alors a laclasse ω1 si p(�x|ω1) est superieur a un seuil, sinon il appartient a la classe ω2. Lesdeux classes que l’on cherche a distinguer ici sont la couleur peau et la non-peau.

2.1.4.1 Approche non-parametrique du classifieur Bayesien : modelisationde la peau seule

Un pixel de couleur �x est classifie peau si son rapport de vraisemblance (2.9)est plus grand qu’un seuil τ :

p(�x|peau)

p(�x|non-peau)≥ τ (2.9)

p(�x|peau) et p(�x|non-peau) sont les fonctions de densite de probabilite condition-nelle respectivement de la classe peau et non-peau. τ est le seuil de decision : unevaleur donnee de τ a pour resultat une matrice de confusion (la courbe COR du

[64] R.O. Duda, P.E. Hart, and D.G. Stork. Pattern Classification (2nd Edition). Wiley-Interscience, 2000.

[65] D. Comaniciu, V. Ramesh, and P. Meer. Kernel-based object tracking. IEEE Transactionson Pattern Analysis and Machine Intelligence, 22(5) :564–577, May 2003.

Page 121: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.1 Classification de la teinte chair : etat de l’art 91

classifieur Bayesien est obtenue en faisant varier τ). Considerant la couleur non-peau uniformement distribuee, la regle de decision Bayesienne (2.9) est simplifiee.Un pixel de couleur est alors classifie comme peau si :

p(�x|peau) ≥ τ (2.10)

L’estimation de cette fonction de densite de probabilite conditionnelle se faitpar la technique de l’histogramme. Il s’agit d’une methode non-parametrique carla forme de la fonction a estimer n’est pas pre-definie mais apprise sur une based’exemples.

La plupart des classifications de la teinte chair decrites dans la litterature neprennent pas en compte la luminance. L’explication qui suit se fait sur le plan H-Sde HSV, mais s’applique aussi bien aux autres espaces etudies. Un pixel de couleurest caracterise par ces coordonnees dans le plan H-S : la repartition statistiquede la teinte chair est calculee par l’histogramme a deux dimensions des pixels depeau reserves a l’apprentissage. Un histogramme 2D dans le plan H-S est cree enpartitionnant l’intervalle [0 180˚] des valeurs de Hue et l’intervalle [0 255] desvaleurs de Saturation, chacun en N sous-intervalles (ou cases) d’egale longueur :on obtient alors un tableau de NxN cases, avec en abscisse les N cases quantifiantles valeurs de Hue et en ordonnee la quantification des valeurs de Saturation.Ces populations sont cumulees sur l’ensemble des exemples d’apprentissage puisnormalisees. Le contenu de la case (i, j) de l’histogramme est le nombre de pixelsd’apprentissage dont la couleur appartient au ieme sous-intervalle du canal Hueet au j eme sous-intervalle du canal de Saturation. La frequence de chaque couleurdans le plan H-S ainsi quantifie, c’est-a-dire pour chaque case le rapport de sapopulation sur le nombre total d’exemples, sont normalisees entre 0 et 255 (afin dele contenir dans un tableau d’entiers codes sur 8 bits). Il en resulte une estimationde la densite p(�x|peau) (etiree lineairement sur [0 255]).

La vraisemblance avec laquelle un pixel de couleur de la base de test �x =[H S]T est de couleur peau est alors calculee par une operation de lecture de table,c’est-a-dire que l’on affecte a �x la valeur correspondant a ces coordonnees dansl’histogramme pre-calcule. Cette operation realisee sur tous les pixels de l’image estcommunement appelee retro-projection [SB90][3] de l’histogramme sur l’image1, elleest illustree par la figure 2.11. Dans cette figure, deux exemples (un par colonne)de la distribution des pixels de peau, dans le plan H-S, d’une meme personne dansdes conditions de luminosite differentes sont donnes. La figure 2.11 (a) montrel’image originale. La figure 2.11 (b) represente l’image convertie dans HSV, avecla palette de couleurs de l’espace RGB : la teinte Hue y est affichee dans le canalbleu, la Saturation dans le canal vert et la luminance dans le rouge. Par exemple,les pixels de luminance elevee contiennent beaucoup de rouge, et les pixels vertsont fortement satures.

1bien qu’a l’origine la retro-projection utilisait le rapport de vraisemblance

Page 122: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

92 Modelisation colorimetrique

(a)

(b)

(c)

Histogrammemodélisant

la teinte peaudu sujet(N=40)

0° 90°90° 180°

Hue

Sat

urat

ion

0

255

(d)

Fig. 2.11 – (a) Image originale. (b) Image convertie dans l’espace HSV : le canalrouge represente les valeurs de V, le canal vert celles de S et le canal bleu celui deH. (c) Histogramme 2D dans le plan H-S des pixels de peau. (d) Retroprojectionde l’histogramme (c) sur l’image HSV.

Page 123: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.1 Classification de la teinte chair : etat de l’art 93

L’histogramme H-S des pixels de peau (figure 2.11 (c)) est deduit de la veriteterrain disponible pour chacun de ces exemples : il s’agit dans ce cas de la distri-bution de la couleur du sujet dans le plan H-S. Il est defini par N = 40 cases parcanal pour ces deux exemples. La retroprojection des valeurs de cet histogrammesur l’image HSV produit l’image Ppeau des valeurs de vraisemblance de la couleurpeau pour tous les pixels, et est affichee en figure 2.11 (d) pour ces deux exemples.

On remarquera, sur la figure 2.11 (c), que dans le premier exemple la teintechair a une saturation globalement plus elevee que celle du second exemple, et quela distribution de cette saturation est plus etalee. En revanche, la teinte Hue de lapeau est approximativement localisee autour du rouge (ce sont les valeurs autourdes points Hue=0 ou 180˚) pour les deux exemples. Bradski [Bra98][44] estime ladistribution p(�x|peau) par un histogramme des valeurs de Hue uniquement, carpour lui, la difference entre deux types de couleur de peau (sujets caucasien etafricain par exemple) se trouve dans le canal S. Si cette derniere assertion n’estpas justifiee d’apres notre experience de ce plan chromatique, la teinte chair esteffectivement caracterisee par une information de Hue specifique : les valeurs deHue proches de 0˚ou 180˚correspondent tous simplement a des couleurs melangede rouge et de jaune ou de rose (voir figure 2.3). Voila pourquoi le seuillage definiedans le plan H-S par [SP96a] est efficient ; cela explique aussi pourquoi les regionsadjacentes, dans [GT99][33], sont fusionnees sur un critere de similarite des couleursprenant en principalement compte la composante Hue. Notons aussi que le codedu CamShift livre dans [Ope][25] quantifie le canal Hue sur seulement 16 cases.

Birchfield [Bir98][66] modelise la couleur peau et celle des cheveux par un histo-gramme a 3D (B-G, G-R, B+G+R), et utilise l’intersection d’histogramme poursuivre le visage. Le premier histogramme modele est defini par l’utilisateur.

Parmi les auteurs ne modelisant que la couleur peau par un histogramme, nousavons evoque precedemment [HWSK04][34], [LGG00][60], [CG99][59], [VSC99][17],[CB97][18], [SF96][53].

La meme idee est aussi implementee sous la forme d’une table pre-calculeebinaire ou chaque dimension represente une coordonnee dans un espace couleur[CFT+96][38], [FBVC01][67], ou dans un plan [SB98][58]. Une base d’exemples depixels de peau est alors utilisee pour etiqueter chaque element du tableau.

[66] S. Birchfield. Elliptical head tracking using intensity gradients and color histograms. InProceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages232–237, 1998.

[67] R. Feraud, O.J. Bernier, J-E. Viallet, and M. Collobert. A fast and accurate face de-tector based on neural networks. IEEE Transactions on Pattern Analalysis and MachineIntelligence, 23(1) :42–53, 2001.

Page 124: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

94 Modelisation colorimetrique

(a)

Retroprojection d’un modèle de peau

(b)

Retroprojection d’un modèle de peau et de non-peau

(c)

(d) (e) (f)

Fig. 2.12 – (a) et (d) Images originales. Images des probabilites de teinte chair :(b) et (e) teinte chair modelisee, (c) et (f) peau et non-peau modelisees.

2.1.4.2 Approche non-parametrique du classifieur Bayesien : modelisationde la peau et de la non-peau

Les fonctions de densite de probabilite conditionnelle p(�x|peau) et p(�x|non-peau) sont estimees par un histogramme et le rapport de vraisemblance L estdeduit en calculant le rapport element par element de ces deux histogrammes.L’equation 2.9 est utilisee pour classifier un pixel de couleur, ayant pour effet de :

– valoriser les couleurs de peau peu representees dans la base de non-peau.– penaliser les couleurs presentes en nombre dans la base d’exemple de non-

peau, et peu nombreuses dans la base d’exemples peau.– mais aussi, reduire la vraisemblance des couleurs de peau commune a la base

de non-peau.La figure 2.12 donne deux exemples ou un modele de peau seul ((b) et (e)), etun modele de la peau et de la non-peau ((c) et (f)) sont utilises. L’image (b) desprobabilites de la teinte chair est uniformisee, au niveau des deux visages, parl’utilisation de la non-peau (c). En revanche, le modele de la couleur peau et dela non-peau, si il elimine les jambes du sujet a gauche contrairement au modelede teinte chair (e), il reduit notablement la vraisemblance des pixels du visage destrois sujets.

Dans des images fixes, une base d’exemples de non-peau est utilisee pourestimer p(�x|non-peau) par un histogramme : [PBC05][6], [JR02a][5], [SSA04][15],[BM00][9]. Dans des sequences d’images, la non-peau peut aussi etre definie parl’histogramme de l’ensemble des pixels de l’image, comme precise dans [SB90][3] :[SSA04][15], [SC00][16], [SHML00, SMHL03][20,21], [CB97][18].

Page 125: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.1 Classification de la teinte chair : etat de l’art 95

2.1.5 Modeles parametriques de la couleur peau

Les modeles parametriques exploitent une information a priori sur les fonctionsde densites de probabilite conditionnelle p(�x|peau) et p(�x|non-peau).L’approcheparametrique [Mil93][68] fait l’hypothese qu’il existe une famille de fonction F�λ et

un jeu de parametre �λ0 telle que :

p(�x|peau) = F�λ0(�x) (2.11)

Les parametres �λ0 compilent les informations apportees par les exemples d’ap-prentissage. Les modeles parametriques se distinguent aussi de celles definissantexplicitement la teinte chair en affectant une valeur a p(�x|peau) comprise entre 0et 1 (par exemple) pour un pixel de couleur �x donne.

2.1.5.1 Le modele uni-Gaussien

La distribution de la couleur peau est modelisee par une loi normale dans unespace colorimetrique de dimension d :

p(�x|peau) =1

(2π)d/2det(Σ)1/2exp

{− 1

2(�x− �m)T Σ−1(�x− �m)

}(2.12)

ou �m et Σ sont respectivement la moyenne et la matrice de covariance desexemples de peau en apprentissage A = {�x1 �x2... �xN} :

�m =

N∑k=1

�xk et Σ =1

N

N∑k=1

(�xk − �m)(�xk − �m)T

Ne modelisant que la teinte chair (on suppose p(�x|non-peau) constante pourtout �x), la regle Bayesienne (2.9) se base alors sur la distance de Mahalanobis :

(�x− �m)T Σ−1(�x− �m) ≤ τ (2.13)

Pour une valeur de τ donnee, la frontiere delimitant la couleur peau est une ellipsedans un espace a d = 2D et une ellipsoıde dans un espace a d = 3D.

Rappelons quelques references pour cette methode : [PBC02][36], [YA98, YWW98,YW96][55,22,23], [MB99][37], [ST98][39].

[68] M. Milgram. Reconnaissance des formes, methodes numeriques et connexionnistes. ArmandColin, 1993.

Page 126: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

96 Modelisation colorimetrique

La non-peau peut aussi etre modelisee par une Gaussienne, comme dans [PBC05][6],dans ce cas le regle de decision (2.9) devient :

(�x− �mp)T Σ−1

p (�x− �mp)− (�x− �mp))T Σ−1

p (�x− �mp) ≤ τ (2.14)

ou p indexe la classe peau et p la non-peau.

2.1.5.2 Le melange de Gaussienne

Dans ce cas, la peau et/ou la non-peau sont modelisees par un melange deGaussienne :

p(�x|peau) =

Np∑i=1

ωp,i

(2π)d/2det(Σp,i)1/2exp

{− 1

2(�x− �mp,i)

T Σ−1p,i (�x− �mp,i)

}

p(�x|non-peau) =

Np∑i=1

ωp,i

(2π)d/2det(Σp,i)1/2exp

{− 1

2(�x− �mp,i)

T Σ−1p,i (�x− �mp,i)

}

Les parametres d’un melange de Gaussienne (les poids ω affectes a chaqueGaussienne, leur moyenne �m et matrice de covariance Σ) sont generalement estimespar l’algorithme de maximisation de l’esperance, plus connu sous le nom de E-M pour Expectation-Maximization, qui est un algorithme de maximisation de lavraisemblance.

Parmi les adeptes de cette approche, citons a nouveau : [MRG99, MGR98,RMG98][48,47,49], [YA99][57], [CRL05][35], [OPB97][24].

Page 127: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.1 Classification de la teinte chair : etat de l’art 97

2.1.6 Discussion

Ainsi, plusieurs techniques sont utilisees en detection de la couleur peau, dememe que plusieurs espaces colorimetriques. Les avantages de definir explicitementla localisation de la peau dans un espace colorimetrique sont la simplicite de cetteapproche, et la rapidite de la classification. Le probleme etant alors d’utiliser desfrontieres et un espace colorimetrique adequats.

Les modeles non-parametriques sont theoriquement independants de la formede la distribution a modeliser, et donc de l’espace colorimetrique employe, maisnecessitent une base d’apprentissage importante et suffisamment representative dela classe a modeliser. La rapidite de cette approche est un avantage considerable : laclassification d’un pixel se fait par une operation de lecture d’une table pr-calculee,et donc le temps de calcul necessaire est celui qu’il faut pour trouver a quelle casede l’histogramme le pixel appartient.

Dans les approches parametriques, la forme de la distribution est definie apriori, et le choix de cette forme fonctionnelle doit alors etre justifiee. Cette jus-tification peut se faire par des tests statistiques [YWW98][22], [YA99][57], ou enconstatant une forme elliptique ou non de la distribution de la peau pour em-ployer une Gaussienne seule ou un melange [TFAS00][11], [MGR98][47]. Compare al’approche non-parametrique, ces methodes sont plus lentes : la classification d’unpixel par un modele uni-Gaussien necessite de calculer la distance de Mahalanobis(2.13) ou d’evaluer l’expression (2.14), ou encore (2.15) pour un melange de Gaus-siennes. Notons aussi que la plupart des approches parametriques que nous avonscite n’utilisent pas l’information de luminance.

Terrillon &al [TFAS00][11] comparent plusieurs espaces de chrominances, em-ployant une Gaussienne ou un melange de Gaussiennes, mais le font sur un en-semble de test compose de sujets asiatique ou caucasien. De plus, les performancesde ces modeles sont estimees en termes de separation des distributions modeliseesde la peau et de la non-peau, introduisant plusieurs metriques pouvant amener ades conclusions differentes (cette remarque s’applique particulierement aux travauxde Shin & al dans [SCT02][12]).

Jones & Rehg [JR02a][5] implemente un modele de couleur peau et de non-peau par la technique des histogrammes dans l’espace RGB. La base de test estconsituee de 6.818 images extraites du Web : 2336 contiennent de la peau et 4482 necontiennent que de la non-peau. Leurs principales conclusions sont les suivantes :

– le meilleur choix pour la taille de l’histogramme est 32x32x32, sur trois quan-tifications de l’espace RGB testees (16x16x16, 32x32x32, 256x256x256).

– la modelisation par l’histogramme de vraisemblance donne de meilleurs per-formances qu’un melange de 16 Gaussiennes (8 pour la peau et 8 pour lanon-peau, appris par E-M ).

Page 128: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

98 Modelisation colorimetrique

– augmenter le nombre d’exemples d’apprentissage ameliore les performancesjusqu’a un certain point de convergence : un nombre d’exemples de 80.3millions pour la peau et 854.7 millions pour la non-peau sont juges optimum.

Phung & al [PBC05][6] comparent plusieurs methodes de classification de lateinte chair, sur une base de test de 92.8 millions d’exemples de peau et de564.1 millions de non-peau. La base d’apprentissage, eventuellement utilisee, estconstituee de 116.6 millions de pixels de peau et 564.1 millions de non-peau. Nousrapportons les resultats trouves dans la figure 2.13, extraits2 de [PBC05]. Lesdifferents classifieurs employes sont les suivants :

– les definitions explicites de la couleur de [CN99][28] (fixed-range CbCr), de[GT99][33] (GT plane-set YCbCr) et de [SP96a][52] (fixed-range HS ).

– un classifieur Bayesien ([JR02a][5]) avec un histogramme de taille 256x256x256.– un modele uni-Gaussien de la teinte chair dans le plan CbCr (2D Gaussian

of skin CbCr).– un modele uni-Gaussien de la teinte chair dans l’espace Y CbCr (3D Gaussian

of skin YCbCr).– un modele uni-Gaussien de la peau et de la non-peau dans Y CbCr (3D Gaus-

sian of skin & nonskin YCbCr).– le melange de Gaussiennes de [JR02a][5] modelisant la peau et la non-peau

dans RGB (3D Gaussian of skin & nonskin YCbCr).– un perceptron multi-couche modelisant la peau et la non-peau dans RGB

(MLP RGB).

Les performances d’une classification sont evaluees par la courbe COR : Ca-racteristique Operatoire du Recepteur. Pour un seuil de decision τ donne (equation(2.9)), les resultats de la classification sont evalues en termes de taux de detection(ou taux de vrais positifs) et de taux de fausses alarmes [PBC05][6]. Le taux dedetection est la proportion de pixels de peau correctement classifies, cest-a-dire lerapport entre le nombre de vrais positifs sur le nombre total d’exemples de test dela classe peau. Le taux de fausses alarmes est la proportion de pixels de non-peaude la base de test classifies comme peau, soit le nombre de faux positifs sur lenombre total de pixels de non-peau. La courbe COR est obtenue en calculant cestaux pour des valeurs differentes de τ : quand le seuil de decision augmente, cestaux diminuent.

Les courbes COR de la figure 2.13 permet de conclure que :– la modelisation par un histogramme est plus performante qu’un modele uni-

Gaussien ou un melange de Gaussiennes.– le modele uni-Gaussien de la peau et de la non-peau est plus performant que

le melange de Gaussiennes.– l’information de luminance permet d’augmenter de 10 a 15% le taux de vrais

positifs, avec un modele uni-Gaussien.

2donnees fournies par le Dr Son Lam Phung

Page 129: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.1 Classification de la teinte chair : etat de l’art 99

0 10 20 30 40 50 60 7030

40

50

60

70

80

90

100

False Detection Rate (%)

Co

rrec

t D

etec

tio

n R

ate

(%)

Bayesian (RGB)2D Gaussian of skin (CbCr)3D Gaussian of skin (YCbCr)3D Gaussians of skin & nonskin (YCbCr)3D Gaussian mixture (RGB)MLP (RGB)Fixed−range (CbCr)Fixed−range (HS)GT plane−set (YCbCr)

Fig. 2.13 – Courbes COR de differents classifieurs de teinte chair (extrait de[PBC05])

– la modelisation de la non-peau augmente d’autant le taux de vrais positifs,avec un modele uni-Gaussien.

Dans ce meme article, les espaces RGB, HSV, Y CbCr et Lab sont aussi com-pares. Les courbes COR de deux histogrammes pour chaque espace, respectivementde taille 256x256x256 et 64x64x64, modelisant la peau et la non-peau, montrentsensiblement les memes performances quelque soit l’espace utilise, avec un legeravantage pour l’espace HSV. Cette remarque est en accord avec les conclusions deShin & al [SCT02][12].

La meme experience est menee sur les plan HS, CbCr, rg normalise et ab. Pourun taux de faux positifs de 15% (les points d’abscisse 10% n’apparaissent pas toussur les courbes COR tracees dans cet article), l’occultation de l’information deluminance diminue le taux de vrais positifs de 5% pour l’espace Y CbCr, 8% pourl’espace HSV, 10% pour l’espace rgb normalise et 13% pour Lab. Parmi les espacesn’utilisant que la chrominance, le plan CbCr est donc le plus adapte a la detectionde la teinte chair, suivi par les plans HS et rg.

Enfin, dans les plans de chrominance CbCr et HS, des performances sensible-ment egales sont obtenue avec des histogrammes de taille 256x256, 128x128, 64x64

Page 130: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

100 Modelisation colorimetrique

et 32x32. Les plans rg normalise et ab etant plus sensibles a la quantification dela couleur.

Ces deux etudes, bien qu’assez exhaustives, laissent plusieurs questions en sus-pens :

– si l’approche non-parametrique beneficie naturellement des avantages des es-paces rgb normalise et Lab (i.e. reputes pour la faible variabilite des couleursen fonction du niveau de luminance), le principal interet de l’espace HSV n’apas ete exploite : sa decomposition de la couleur en une teinte et une satu-ration.

– dans le cas d’un modele Gaussien, l’emploi de la luminance ameliore le tauxde vrais positifs de plus de 10%, alors que cette amelioration est moindredans le cas d’un modele non-parametrique. On peut alors se demander aquel point la modelisation de la non-peau est benefique dans le cadre d’uneapproche non-parametrique. D’autant plus que ce modele de non-peau, parune approche parametrique ou non, depend de la base d’apprentissage : nevaut-il pas mieux s’en affranchir ?

– l’apport de l’information de luminance, dans le cas d’images fixes, est sou-ligne par nombre d’auteurs. Mais bon nombre aussi n’utilise pas cette infor-mation : n’y aurait-il pas un juste milieu ? Dans [GT99][33], la couleur estlimitee par deux volumes dans l’espace Y CbCr, separes par le plan Y = 128.Dans [HWSK04][34], une partition de la luminance Y en six intervalles de laluminance et un modele non-parametrique de teinte chair par intervalle estdefini. Dans [PBC02][36], la luminance Y est partitionnee en trois intervalles,et les exemples d’apprentissage constitues en trois clusters determines parl’algorithme des k-moyennes. On peut donc se demander si utiliser un his-togramme 256x256x256 dans l’espace Y CbCr ne revient pas a distribuer descouleurs de meme chrominance sur plusieurs plans. Et donc a diviser d’au-tant la population des cases qu’elles occupent, mettant en valeur des pixelsde couleur plus isoles, ce qui n’arriverait pas en utilisant un histogramme detaille 256x256x3 ou 256x256x6 comme le suggerent ces deux articles.

La prochaine section s’attachera a repondre a ces questions. Deux espaces ysont particulierement etudies, Y CbCr et HSV, parce qu’ils sont les plus utilises endetection de peau sur des images fixes. L’espace rg normalise est principalementemploye en poursuite, tandis que Lab, si son appellation ”d’espace perceptuelle-ment uniforme” est allechante, est moins courant. Nous revenons sur ces espacescolorimetriques au chapitre 4, ou nous etudions le comportement d’un modelenon-parametrique de la teinte chair en fonction de differents types de peau.

Page 131: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.2 Detection de la peau 101

2.2 Detection de la peau

Plusieurs tests de classifieurs sont realises dans cette section. 1050 images de labase ECU [PBC05][6] sont mises a profit pour constituer une base d’apprentissageet de test de ces classifieurs. La repartition des corpus de test et d’apprentissageest decrite dans le tableau 2.3.

Corpus Nombre d’images Pixels de peau Pixels de non-peauApprentissage 500 18.2 million 120.9 millionTest 550 23 million 136.6 million

Tab. 2.3 – Corpus d’apprentissage et de test pour la classification Peau/Non-Peau

Les images reservees au corpus d’apprentissage sont bien entendu distinctes decelles du corpus de test. La base ECU est interessante pour nos travaux car ellecontient la verite-terrain de la couleur peau de maniere tres fine : des exemples ensont presentes dans la figure 2.14.

Fig. 2.14 – Exemples de la base ECU et de sa verite terrain

Page 132: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

102 Modelisation colorimetrique

2.2.1 Apport d’une modelisation de la non-peau

La classification de la teinte chair decrite dans la presente section ne prend pasen compte la luminance : l’effet de la luminance est etudie de maniere independanteau paragraphe suivant, il s’agit ici de quantifier l’interet d’une modelisation de lanon-peau. En effet, la question se pose a l’inspection des deux exemples donnespar la figure 2.12. Un modele non-parametrique de la couleur peau (cas (b) et(e)), et un autre modelisant la peau et de la non-peau (cas (c) et (f)) sont retro-projetes sur l’image de test. Ces modeles sont en pratique des histogrammes detaille 32x32x32 dans l’espace HSV, decomptant les populations de la base d’ap-prentissage presentee en 2.2.

Dans le cas de la figure 2.12(a), p.94, on voit en (b) que la retro-projection dumodele de peau produit une probabilite de couleur peau non uniforme sur le visage.Cela est du au fait que la partie droite du visage est plus eclairee que la moitiegauche, avec pourtant des teintes similaires. Le modele de couleur peau employecodant l’information de luminance, la luminance des pixels situes sur la gaucheest plus fortement representee dans la base d’apprentissage que celle des pixelsde la moitie droite du visage. La figure 2.12(c) montre l’usage supplementaire dumodele de non-peau : dans ce cas les pixels de la moitie droite du visage sontmoins representes dans la base d’exemples de non-peau que ceux de gauche. Lavraisemblance de peau affectee a ces derniers est donc diminuee par rapport auxcouleurs des pixels de droite, mises en valeur.

La figure 2.12(d) est un contre-exemple : les couleurs des pixels du sujet leplus a gauche, par exemple, sont tellement representees dans la base de non-peauque le modele des couleurs peau et non-peau leur affecte une faible probabilited’etre de couleur peau, comme le montre la figure 2.12(f). Tandis que le modele depeau, dont la retro-projection est donnee sur la figure 2.12(e), donne un resultatbeaucoup plus proche de la verite.

Nous comparons d’abord les deux approches non-parametriques cites precedem-ment, dans le plan CbCr. Les performances des deux modeles sont mesurees parleur courbe COR. La meme operation est ensuite realisee dans le plan HS.

La taille des histogrammes est limitee a 32x32, comme le preconise [JR02a], carnotre base d’apprentissage n’est pas aussi large que celle de [PBC05]. Un nombrede cases plus grand aurait pu etre choisi comme nous n’utilisons pas la lumi-nance (et donc nos histogrammes contiennent 32 fois moins d’elements que ceuxde [JR02a]), mais nous etudierons par la suite l’effet de la luminance et garderonsces resultats comme reference. De plus, un histogramme plus large peut produireune fonction de densite bruitee lorsque certaines cases sont vides faute d’exemplespour les remplir. Une manipulation interessante et abondant en ce sens est ainsipresentee dans [PBC05][6] : en sous-echantillonnant le corpus d’apprentissage, on

Page 133: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.2 Detection de la peau 103

Cb

Cr

160

135

105 130

192

128

64 128

Seuillagerectangulaire

Densité de probabilitéconditionnelle de la

classe peau

Fig. 2.15 – Distribution de la teinte chair dans le plan CbCr et seuillage rectan-gulaire definissant la teinte chair propose dans [BPM05b]

montre qu’un histogramme a 256 cases est plus sensible au nombre d’exemplesappris qu’un histogramme a 32 cases. Les auteurs soulignent aussi que le gainen performance, avec une taille d’histogramme plus grande, est faible. Enfin, cechoix est interessant car il permet de lisser l’histogramme de maniere artificielle(lissage + sous-echantillonage). Par exemple, operant une convolution par le filtre[1 1] de l’histogramme 1D a 64 classes d’une base d’exemples B, et ne prenantqu’une classe sur deux du resultat, on obtient un tableau de 32 elements identiquea l’histogramme a 32 cases de la base B.

Deux histogrammes, hp modelisant la peau et hp la non-peau, sont donc construitsa partir de la base d’apprentissage (tableau (2.3)). Le rapport de vraisemblancehratio est alors le rapport, element par element, de ces deux histogrammes :

hratio(Cb, Cr) =

⎧⎪⎪⎨⎪⎪⎩

hp (Cb, Cr)

hp (Cb, Cr)si hp (Cb, Cr) �= 0

hp (Cb, Cr) sinon

Notons que dans le cas ou, hp(Cb, Cr) est nul, [SC00][16] affecte au rapport deshistogrammes une valeur nulle, tandis que [SB90][3] affecte une valeur maximale.

Page 134: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

104 Modelisation colorimetrique

Le choix de [SB90][3] est plus adapte selon nous : rappelons que ces deux auteursmodelisent la non-peau par l’histogramme de l’image entiere, la teinte chair etantmodelisee au prealable, donc de toute facon ces cases de l’histogramme ne sontpas rencontrees lors du processus de retro-projection. Notre approche est assezdifferente, et affecter une valeur nulle peut conduire, pour une image de test,a eliminer un pixel de peau parce qu’il n’est pas represente dans la base de non-peau. Affecter la valeur maximale a une telle case nous menerait, en test, a classifierincorrectement un pixel de non-peau dont la couleur ne se trouve pas dans la basede non-peau utilisee en apprentissage. Notre choix est intermediaire, en gardantpour cette case de l’histogramme le nombre d’occurrences de cette couleur dans labase d’apprentissage.

Inspectons le seuillage que nous avions propose [BPM05b][27] dans le plan CbCr

a la lumiere de la distribution des pixels de peau de la base d’apprentissage. Lafigure 2.15 represente l’histogramme modelisant la teinte chair sous la forme d’uneimage en niveau de gris : plus le niveau de gris est eleve et plus la valeur dehp(Cb, Cr) correspondante est elevee. Un lissage preliminaire a ete opere sur cetteimage pour en faciliter l’analyse. On y voit que la couleur peau est confinee dans unespace restreint du plan. Les seuils que nous avions choisis y sont representes. Lescouleurs de peau les plus representatives y sont incluses, mais le rectangle englobeaussi une partie de la non-peau comme le montre la figure 2.16. Rappelons que leclassifieur ainsi definie a pour resultats un taux de vrais positifs de 77% et en untaux de faux positifs de 17%.

La figure 2.16 (a) est un rappel de la repartition de la teinte chair dans le planCbCr entier, modelisee par l’histogramme hp. On notera que dans [HMJ02][8] unerepartition tout a fait similaire est obtenue, sur une base d’exemples differents.Comme souligne dans [JR02a] et [BM00], le rouge est predominant : en effet,rappelons que, a un terme d’offset pres, le canal Cr est proportionnel a la difference(R − Y ), tandis que le canal Cb est proportionnel a (B − Y ). Le bleu a l’inverseest tres peu represente dans la base d’exemples de peau.

Cette distribution fait aussi apparaıtre la consistance d’une detection de lapeau par seuillage du canal I de l’espace Y IQ [BM00, WB99]. Le plan IQ est eneffet definie par une rotation des axes Cr et Cb de 45˚ : la distribution de la teintechair est alors axee sur le canal I. La distribution des pixels de non-peau dans leplan CbCr, 2.16 (b), presente une forte densite au point de coordonnees (128, 128) :il s’agit des pixels relativement monochromes, pour lesquels Y R G B. Onvoit que cette distribution recouvre en grand partie la distribution de la teintechair, et on peut en deduire que l’utilisation du modele de peau seul a pour effetun grand nombre de faux positifs et de faux negatifs. La modelisation de la peauet de la non-peau resulte en un rapport de vraisemblance plus decalee et etaleevers le rouge que la densite de probabilite conditionnelle de la peau. Se faisant,elle recouvre moins la distribution de la non-peau, comme le refletent les courbes

Page 135: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.2 Detection de la peau 105

(a) Cb

Cr

Cb

Cr

(b)

Cb

Cr

(c)

Fig. 2.16 – Couleurs peau et non-peau dans le plan CbCr : (a) distribution dela teinte chair, (b) distribution de la non-peau, (c) rapport de vraisemblancemodelisant la peau et la non-peau dans ce plan

Page 136: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

106 Modelisation colorimetrique

0 10 20 30 40 50 60 7030

40

50

60

70

80

90

100

Taux de Faux Positifs (%)

Tau

x d

e V

rais

Po

siti

fs (

%)

Bayesien peau (CbCr)Bayesien peau et non−peau (CbCr)Belaroussi05 (Seuillage rectangulaire CbCr)Chai99 (Seuillage rectangulaire CbCr)Garcia99 (Frontière 8 plans YCbCr)Sobottka96 (Seuillage rectangulaire HS)

Fig. 2.17 – Courbes COR du modele de teinte chair (en bleu) et du modele decouleur peau et non-peau (en jaune), dans le plan CbCr

COR de la figure 2.17.

Nous rapportons sur la figure 2.17 les resultats des detecteurs de peau (voirsection 2.1.3, page 86) definis dans [CN99][28] , [GT99][33] (utilisant uniquementles deux clusters dans l’espace Y CbCr), et [SP96a][52] (dans le plan H-S). Notonsque ces resultats sont ceux de [PBC05], et qu’ils ont ete obtenues sur la base ECUmais sur une base de test differente. Cela dit nous obtenons, pour le classifieurmodelisant la peau et la non-peau dans le plan CbCr, une courbe COR sensiblementidentique a celle publiee dans cet article. Notons en particulier que le seuillagerectangulaire de [CN99] etant plus large que celui que employe dans [BPM05b](voir tableau 2.1, p.87), un nombre plus important de pixels de peau sont detectes,mais un nombre plus grand de faux positifs est aussi obtenu.

La courbe COR du classifieur base sur le modele non-parametrique de la teintechair dans le plan Cb-Cr y apparaıt en bleu. On constate qu’elle est tres irreguliere.Par exemple, le seuil de decision est incremente de un (sur 255 valeurs possibles)seulement pour passer du point correspondant a un taux de faux positifs respec-tivement de 29%, a celui d’abscisse 19%, alors que le taux de vrais positifs passede 81% a 78%. Cet effet est du a l’occultation de l’information de luminance : despixels de non-peau ont une une luminance differente de celle de la peau mais laprojection de leur couleur dans le plan de chrominance est tres proche de la chro-

Page 137: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.2 Detection de la peau 107

0 10 20 30 40 50 60 7030

40

50

60

70

80

90

100

Taux de Faux Positifs (%)

Tau

x d

e V

rais

Po

siti

fs (

%)

Bayesien peau (HS)Bayesien peau et non−peau (HS)Belaroussi05 (Seuillage rectangulaire CbCr)Chai99 (Seuillage rectangulaire CbCr)Garcia99 (Frontière 8 plans YCbCr)Sobottka96 (Seuillage rectangulaire HS)

Fig. 2.18 – Courbes COR du classifieur Bayesien modelisant de peau (en bleu) etde celui modelisant la peau et la non-peau (en rouge) dans le plan HS

minance de la peau. Une decrementation du seuil de decision de un point (sur 255)suffit a faire les faire entrer dans la surface de decision definissant la couleur peau.Les performances du classifieur modelisant la peau et la non-peau sont tracees enjaune. Les points marques en rouge correspondent aux points experimentaux : onpasse d’un point au suivant en augmentant le seuil de decision τ de l’equation(2.8). La encore, on voit que d’un seuil a l’autre le taux de faux positifs peutfaire des bonds, bien que le taux de vrais positifs varie aussi en consequence. Lacourbe COR finalement obtenue est ainsi plus reguliere que celle du classifieur nemodelisant que la peau. Mais la sensibilite au seuil de decision persiste, et si onveut implementer une segmentation dans ce plan par un classifieur Bayesien, ilfaut s’attendre a avoir un taux de faux positifs pouvant passer de 10% a 20% pourune difference du rapport de vraisemblance de seulement un sur 255. Il apparaıtde plus que la modelisation de la non-peau dans le plan Cb-Cr est indispensablea l’obtention de performance acceptable en classification de la teinte chair : unclassifieur ne modelisant que la teinte chair dans cet espace est peu efficace avecun taux de detection de seulement 50% pour 10% de fausses alarmes. Les courbesCOR des deux modeles non-parametriques implementes dans le plan HS (voir fi-gure 2.18) sont beaucoup plus lisses. Une analyse prealable de la distribution dela non-peau dans ce plan s’impose, afin de preciser un point important.

La figure 2.19 (a) donne la distribution de la non-peau dans le plan H-S, comme

Page 138: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

108 Modelisation colorimetrique

dans les exemples precedents, elle a ete lissee afin d’en faciliter l’inspection. Lemaximum se trouve dans une case de l’histogramme, celle qui correspond auxpixels de non-peau de coordonnees H ∈ [0 6] et S ∈ [0 8]. Il s’agit des couleursmonochromes, contenues dans la case (0,0) de l’histogramme. Il contient une popu-lation de 5.27 millions d’exemples soit 22% de la base d’apprentissage de non-peau.Sa valeur ecrase la majeure partie des valeurs contenue dans les autres cases del’histogramme, comme le montre la figure 2.19 (b). Dans cette figure, on a mis azero cette case de l’histogramme : la repartition des autres couleurs de non-peauapparaissent plus clairement, et vont contribuer au modele de non-peau. Les cou-leurs correspondantes sont illustrees par la figure (c), pour une valeur arbitrairede la luminance. L’elimination de cette composante du spectre des couleurs denon-peau se justifie particulierement dans l’espace HSV car tres peu d’exemplesde peau se trouve a cet endroit du plan HS (voir figure 2.20) : ne pas l’eliminerreviendrait a amoindrir les capacites de generalisation du modele de non-peau.

La figure 2.20 (a) est l’image de la distribution des pixels de couleur peaudans le plan H-S. Elle correspond a des couleurs melangeant le rouge et le jaune(figure 2.19 (c)), et relativement peu saturees. L’histogramme (b) du rapport devraisemblance correspond a une diffusion de la densite de probabilite conditionnellea la teinte chair vers les saturations plus faibles (voir figure 2.11 pour un exemplede teinte chair de ce type), et vers les teintes melange de rouge et de rose. Lescouleurs de non-peau (figure 2.19 (b)) sont plus largement etendues dans le planH-S que dans le plan Cb-Cr. A l’oppose, les distributions de la peau et de la non-peau s’entrelacent visiblement dans le plan Cb-Cr. De ce fait, la modelisation de lanon-peau dans le plan H-S, compilee dans le rapport de vraisemblance, n’apportequ’une petite amelioration de la classification dans le plan H-S alors que le gainen performance est evident dans l’espace Cb-Cr, comme l’indique les courbes CORdes classifieurs Bayesien dans ces espaces (2.18).

Le classifieur modelisant la non-peau est le plus efficace des deux, toutefois legain en performance est relativement faible par rapport a une modelisation de lacouleur peau seule. Qui plus est, le classifieur Bayesien modelisant la peau dans leplan H-S est tout a fait comparable au classifieur Bayesien la peau et la non-peaudans le plan Cb-Cr.

Or, modeliser la non-peau n’est pas une approche satisfaisante car la couleurnon-peau est difficilement definissable : la distribution des pixels de cette classedepend entierement de la base d’apprentissage utilisee. Modeliser la non peau peuttoutefois etre en atout dans le cas d’un decor fixe et apprenable, par exemple dansla cadre d’un suivi avec camera fixe utilisant une image de reference de la scene sanspersonne. Ce point important ainsi que la regularite de la classification par rapportau seuil de decision nous a mene a privilegier l’espace HSV lorsque l’informationde chrominance est a employer, notamment dans nos travaux de poursuite de lateinte chair, comme nous le verrons au chapitre 4.

Page 139: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.2 Detection de la peau 109

H

S

(a)

case(0,0)

H

S

(b)

H

S

(c)

Fig. 2.19 – (a) Distribution de la non-peau dans le plan HS. (b) Distribution de lanon-peau apres elimination de la case (0,0). (c) Representation des couleurs dansle plan HS, pour une luminance donnee

Page 140: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

110 Modelisation colorimetrique

H

S

(a)

H

S

(b)

Fig. 2.20 – (a) Densite de probabilite conditionnelle de la couleur peau, (b) rapportde vraisemblance, dans le plan HS

Page 141: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.2 Detection de la peau 111

2.2.2 Apport de l’information de luminance

Phung &al [PBC05] concluent donc qu’une modelisation non-parametrique dela couleur peau et de la non-peau par un histogramme 256x256x256, par exemple,donnera globalement, en terme de taux de detection correctes, les memes resultatsquelque soit l’espace colorimetrique utilise. Se basant sur les travaux presentesdans [PBC02, HWSK04][36,34], qui font usage de la base ECU pour determiner unmodele de la couleur peau dans l’espace Y CbCr, nous etudions dans cette sec-tion l’effet de la quantification de la luminance sur les performances d’un modelenon-parametrique de la teinte chair. Dans [PBC02], trois clusters Gaussiens sontconstruit par une procedure de k-moyennes se basant sur la distance de Mahalano-bis. Les valeurs du canal Y sont partitionnees en trois intervalles d’egale longueur,et les exemples d’apprentissage constitues en trois groupes en fonction de leurluminance. Les trois Gaussiennes sont initialisees en calculant la moyenne et lamatrice de covariance de chacun des groupes. Les trois centres des Gaussiennesdetermines par l’algorithme des k-moyennes ont les coordonnees suivantes dansl’espace Y CbCr :

�x1 =

⎛⎝ 75

118143

⎞⎠ �x2 =

⎛⎝ 138

110150

⎞⎠ �x3 =

⎛⎝ 184

111147

⎞⎠

Dans [HWSK04], le canal Y est partitionne en six intervalles inegaux :

Y = [0 60] ∪ [60 90] ∪ [90 135] ∪ [135 200] ∪ [200 230] ∪ [230 255]

Pour chacun de ces intervalles, un histogramme modelisant la teinte chair estappris. La probabilite qu’un pixel de test soit de couleur peau est alors calculee enemployant le modele correspondant a sa luminance.

Il est a noter que cette manipulation reviendrait a construire un histogramme3D dans Y CbCr si la partition de la luminance est composee d’intervalles d’egalesetendue. En effet, une hypothese de base de l’estimation non-parametrique d’unedensite est que la probabilite P qu’un vecteur �x, de densite de probabilite p(�x) (adeterminer), occupe une region R englobant un volume V est :

P =

∫R

p(�x′) d�x′ p(�x)V

si on suppose que �x varie peu dans la region R [DHS00, Pos87][64,69]. La tech-nique des histogrammes precedemment presentee, modelise P par l’effectif re-

[69] J.G. Postaire. De l’image a la decision : analyse des images numeriques et theorie de ladecision. Dunod, 1987.

Page 142: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

112 Modelisation colorimetrique

0 10 20 30 40 50 60 7030

40

50

60

70

80

90

100

Taux de Faux Positifs (%)

Tau

x d

e V

rais

Po

siti

fs (

%)

32x32x3232x32x2032x32x632x32x332x32 (CbCr)

Fig. 2.21 – Courbes COR pour differentes tailles d’histogrammes modelisant lateinte chair dans Y CbCr

latif des exemples appartenant a un hypercube de l’espace colorimetrique (uncarre ou un cube si chaque dimension de l’espace est egalement quantifiee) :P = Noccurence/Ntotal. La distribution p(�x) est donc modelisee par :

p(�x) =Noccurence

NtotalV

L’intervalle [60 90] a une etendue de 30, tandis que celle de l’intervalle [0 60]est de 60 : le volume V d’une case de l’histogramme du premier intervalle est doncde moitie moindre que celui du second intervalle. Dans [HWSK04], il n’est pasfait etat de ces considerations, la normalisation des histogrammes n’utilise que lenombre total d’exemples. Cela a pour effet de donner un poids important a destranches de luminance, telle que celle definie par l’intervalle [0 60], a priori peupeuplee dans la base d’exemples de peau, augmentant potentiellement (les auteursne quantifient pas les performances de ce detecteur de peau) le taux de faux positifs.Les cases des histogrammes employes dans nos etudes ayant un volume uniforme,cette normalisation a ete passee sous silence jusqu’ici.

Utilisant les bases de test et d’apprentissage decrites dans le tableau 2.3, quatreclassifieurs Bayesien, modelisant la peau et la non-peau par un histogramme dansl’espace Y CbCr, sont construits et testes. Les tailles de ces histogrammmes sontrespectivement de 32x32x3 et 32x32x6, comme le suggerent les deux articles pre-

Page 143: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.2 Detection de la peau 113

0 5 10 15 20 25 3070

75

80

85

90

95

100

Taux de Faux Positifs (%)

Tau

x d

e V

rais

Po

siti

fs (

%)

32x32x3232x32x332x32 (CbCr)

Fig. 2.22 – Courbes COR pour trois tailles d’histogrammes (zoom sur la figure2.21)

cites, ainsi que 32x32x20 et 32x32x32 a titre de comparaison et pour mieux cernerl’effet de la quantification de la luminance sur les performances d’une detection dela peau. Les courbes COR de ces classifieurs sont tracees dans la figure 2.21, on yrapporte la courbe COR du classifieur modelisant la peau et la non-peau dans leplan CbCr par un histogramme de taille 32x32, a titre de comparaison.

On obtient bien une amelioration des performances en utilisant l’informationde luminance. Mais les courbes COR des classifieurs exploitant cette informationsont pratiquement confondues, et difficilement distinguable. La figure 2.22 donneun zoom sur les courbes COR pour les histogrammes de taille 32x32x32, 32x32x3et 32x32. On y voit que les classifieurs utilisant la luminance ont des performancessuperieures a celle du classifieur ne modelisant que la chrominance de la teintechair, avec de l’ordre de 5% de vrais positifs en plus pour un taux de faux positifsde 10%. On constate aussi que les classifieurs utilisant la luminance sont beau-coup moins sensibles au seuil de decision que leur homologue detectant la peausur le plan CbCr. Les courbes COR des classifieurs 32x32x32 et 32x32x3 sont pra-tiquement confondues, celle du classifieur 32x32x32 etant toutefois un peu moinssensible au seuil de decision a moins de 15% de faux positifs. Les performances deces classifieurs sont ainsi tout a fait comparable, mais le classifieur 32x32x3 est leplus simple, c’est celui qui contient le moins de cases.

Page 144: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

114 Modelisation colorimetrique

0 5 10 15 20 25 30 35 4070

75

80

85

90

95

100

Taux de Faux Positifs (%)

Tau

x d

e V

rais

Po

siti

fs (

%)

32x32x332x32x2

Fig. 2.23 – Courbes COR des classifieurs quantifiant la luminance sur deux ettrois valeurs

Ils se posent toutefois une derniere question : que se passe-t-il si le canal Y estquantifie sur seulement deux valeurs, comme le suggerent le seuillage definie dans[GT99] ? La figure 2.23 compare la courbe COR du classifieur optimale precdent aun modele de la peau et de la non-peau base sur un histogramme de taille 32x32x2.On voit que quantifier Y sur seulement deux valeurs apporte de meilleurs resultatsqu’une detection de la peau dans le plan de chrominance seule. Les deux dernierspoints de la courbe correspondante montre toutefois une enorme sensibilite auseuil de decision : en decrementant ce seuil de un point seulement, le taux defaux positifs passe de 16% a 36%. Jones et Rehg [JR02a] constataient deja, dansl’espace RGB, en testant des histogrammes de 8, 16, 32, 64, 128 et 256 cases parcanal, que leurs performances convergeaient a partir de 32 cases/canal. Phung &al[PBC05] constatent aussi un faible gain en performance avec des histogrammesplus fins. Nos resultats demontrent que, dans l’espace Y CbCr, la taille optimale del’histogramme est de 32x32x3. Cela revient a classer les couleurs en fonction deleur niveau de gris, une couleur est alors sombre, claire ou tres claire. Ce constatn’a pas ete retrouve dans l’espace HSV , a l’exception du fait que l’information deluminance ameliore la finesse de l’estimation de la densite de la couleur peau.

Page 145: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.2 Detection de la peau 115

2.2.3 Conclusion

Nous avons traite dans ce chapitre les modeles statiques de la couleur peau :ces modeles sont construits a partir d’une base d’apprentissage, et testes sur desimages fixes sans adaptation, au contraire des approches employees en poursuited’objets que nous abordons au chapitre 4.

La couleur de la peau et de la non peau pouvait etre modelisees, par desapproches parametriques ou non parametriques. S’appuyant sur l’etat de l’art,notre choix s’est porte sur une modelisation non parametrique utilisant la techniquede l’histogramme, plus efficace qu’une modelisation parametrique et ne faisant pasd’hypothese sur la forme des densites de probabilite.

L’exploitation de l’information de luminance ameliore notablement l’estimationdes densites, quelque soit l’espace colorimetrique utilise. Nous avons montre quedans l’espace Y CbCr, cette information pouvait etre quantifiee moins finement quel’information de chrominance sans perte notable de performances, en consideranttrois gammes de couleur : sombre, clair et tres clair. Nous avons constate que lamodelisation de la teinte chair dans cet espace colorimetrique est plus sensible auseuil de detection que dans l’espace HSV .

Un autre avantage considerable de l’espace HSV est que la couleur peau peutetre modelise sans utiliser de contre exemples, pour atteindre des performances enclassification equivalentes a celle d’un classifieur modelisant la peau et la non peaudans cet espace. La decomposition de la couleur en une teinte et une saturationdans HSV est ainsi mise a profit par cette approche, approche d’autant plussatisfaisante qu’elle evite le choix d’exemples de non peau.

Dans nos premieres experiences, notre modele de couleur peau consistait en undetecteur defini par un seuillage dans le plan CbCr. Par la suite, nous sommes passesa un modele non parametrique dans l’espace HSV , la densite de la couleur peauetant estimee par un histogramme 32x32x32. Ces deux approches sont exploiteesau chapitre 3, en collaboration avec le modele d’apparence et un modele d’ellipse,pour la localisation du visage.

Dans le cadre d’un systeme de poursuite de visages que nous presentons auchapitre 4, nous modelisons la teinte chair par un histogramme 32x32 dans le planchromatique HS de HSV , les exemples de pixels de peau etant extraits durant lasequence sur le resultat d’un detecteur de visage. La luminance ne sera dans cecas pas directement exploitee : la deformation de la densite de la couleur peau enfonction du niveau moyen de la luminance est prise en compte par une activationperiodique du detecteur, mettant a jour le modele de couleur a suivre.

Dans la prochaine section, nous presentons des travaux menes sur un problemedifferent mais en relation avec la detection de la couleur peau : une segmentation

Page 146: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

116 Modelisation colorimetrique

fine des levres sur des images de haute resolution ne contenant que la bouche. Leprobleme consiste a distinguer la couleur peau et la couleur des levres, ces couleursetant tres similaire, notre approche est de fusionner l’information apportee par lesdeux espaces HSV et Y CbCr, par un systeme d’inferences floues.

Page 147: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.3 Segmentation des levres par approche colorimetrique 117

2.3 Segmentation des levres par approche colo-

rimetrique

Definition de la problematique

Un fabriquant de cosmetiques cherchant a evaluer l’effet de produits de pro-tection solaire sur le vieillissement de la peau a realise une base d’images de vi-sages dans des conditions controlees. L’appareil photographique utilise produit desimages de tres haute resolution : 2000x3000 pixels. Les prises de vues ont lieu dansl’obscurite, le sujet etant eclaire par differentes sources lumineuses : visible (utili-sation de flashes), polarisee, ultra-violet et bleue fluorescente. Le fond est noir etun serre-tete est utilise afin de degager la zone du front. L’acquisition des imagessous ces differentes modalites dure environ 5 secondes, durant lesquelles le mentondu sujet - immobile, de face et la bouche fermee - repose sur un socle afin de mini-miser d’eventuels mouvements de la tete et que la localisation des traits du visagesoit commune aux images prises.

Un projet en collaboration avec le laboratoire de l’Inserm U494 a ete mis enoeuvre. Il comportait, entre autres objectifs, la segmentation fine des levres, afind’etudier la correlation entre l’age d’un sujet et les dimensions de ses levres. Leprotocole d’acquisition facilite la localisation du visage et de ces traits : les travauxpresentes dans cette section ont consiste a determiner les frontieres des deux levressur des images, detoures manuellement par un operateur de l’Inserm, ne contenantque la bouche. Une base d’apprentissage de cinq images est utilisee pour analyserles couleurs de la peau et des levres. Ces exemples sont donnees par la figure 2.24.

Une base de test de 108 images, ne contenant pas les cinq exemples precedents,est constituee d’exemples d’images de bouche, approximativement cadres de lameme maniere. Les images ont une taille moyenne de l’ordre 530x240 pixels.

Fig. 2.24 – Les cinq images utilise pour analyser la couleur de la peau et celle dela bouche

Le probleme est assez different de celui de la detection de la peau. Il s’agit icide distinguer deux teintes tres proches l’une de l’autre, comme nous le montrons

Page 148: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

118 Modelisation colorimetrique

Corpus Nombre d’images Pixels de levre Pixels de peauApprentissage 5 149.300 487.100Test 108 2.95 millions 10.92 millions

Tab. 2.4 – Corpus d’apprentissage et de test pour la classification Levres/Peau

par une analyse colorimetrique. C’est en fait un probleme de localisation : les deuxcouleurs sont presentes, a l’exclusion de toutes autres. Dans ces conditions, on necherche pas une frontiere de decision pouvant s’appliquer a toutes les images detest, mais une frontiere adaptee a chaque image. (Un second probleme, qui n’estpas aborde ici, est de distinguer la levre superieure de la levre inferieure.) Apresune analyse de ces deux couleurs, nous deployons une methode non-parametriquecombinant leur representation dans de deux espaces colorimetriques Y CbCr etHSV .

2.3.1 Analyse colorimetrique

La repartition de la couleur des levres et de la teinte chair est etudiee dans deuxespaces colorimetriques : HSV et Y CbCr. Cette analyse porte sur les cinq imagesd’apprentissage qui ne sont pas re-utilisees en test. La verite terrain est utilisee afinde distinguer les pixels de teinte chair de ceux appartenant aux levres. La figure2.25 illustre l’analyse faıte sur une des images dans l’espace HSV. L’image conte-nant une bouche est convertie dans un espace colorimetrique donne, par exempleHSV. Il en resulte trois tableaux representant les valeurs des canaux H, S et V.Chacun de ces tableaux est etire lineairement afin d’en ramener les valeursdans l’intervalle [−1 1]. Utilisant la verite terrain, deux collections de pixelssont alors constitues : l’ensemble des pixels de la peau et celui des pixels de labouche. Pour les deux collections et pour chaque canal, l’histogramme des valeursdes pixels est calcule.

L’histogramme d’un canal normalise represente l’effectif -ou la population- dechaque case, c’est-a-dire le nombre de pixels dont la valeur appartient a un sous-intervalle donne de [-1 1]. Ces populations sont cumulees sur les cinq imagesd’apprentissage : les histogrammes resultants sont traces en figure 2.26. Les pro-portions relatives, c’est-a-dire pour chaque case le rapport de sa population sur lenombre total d’exemples, y apparaissent en ordonnee et le nombre de pixels utilisesy est indique.

L’analyse de ces histogrammes montre que les distributions de la teinte chair(courbes bleues) et de la couleur des levres (courbes rouges) se recouvrent plusou moins en fonction du canal d’interet. Ce recouvrement et particulierement im-portant pour les canaux de luminance Y et V ainsi que celui de saturation S.Une segmentation des levres basee uniquement sur ces canaux est alors peu pro-

Page 149: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.3 Segmentation des levres par approche colorimetrique 119

Image originale

Conversiondans HSV

Canal H Canal S Canal V

Vérité terrain

Normalisation de chaque canal C dans [-1 1] :

,,

, ,,,

2 1max min

i ji j

x y x yx yx y

CC

C C

1 histogramme par canal2 classes de pixels: peau (bleu) et lèvres (rouge)

-1 10

H

-1 10

S

-1 10

V

Population

Fig. 2.25 – Analyse de la distribution des couleurs peau et levre sur les canaux H,S, et V

metteuse. En revanche ces distributions se recouvrement beaucoup moins sur lescanaux H, Cb et Cr.

Parmi les pixels de levres, 74% ont une valeur de Hue inferieure a −0.9 et24% ont un H superieure a 0.9 : ces domaines de valeur de Hue correspondent aurouge. Une infime partie des pixels de teinte chair ont des valeurs de H superieurea 0.9 (melange de rouge et de jaune) : 75% de ces exemples ont des valeurs deH appartenant a [−0.9 0.9] et 25% verifient H < −0.9 (melange de rouge etde rose). Le recouvrement des distributions des couleurs levre et peau est aussifaible, dans les espaces Cb et Cr. Ainsi, 85% des exemples de teinte chair verifientCb < 0, et 82% ont des valeurs de Cr negatives. Les exemples de couleur levre ontpour 83% des valeurs de Cb > 0 et pour 72% de ces echantillons Cr est positif. Ladifference entre couleur levre et peau et donc plus evidente sur le canal Cb que surle canal Cr : ces deux couleurs contiennent beaucoup de rouge, mais apparemment,les levres contiennent particulierement plus de bleu que la peau. L’utilisation dela chrominance peut etre rendue plus robuste en correlant Cb et Cr. La figure 2.28montre la distribution de la teinte chair et de la teinte des levres dans le planCb-Cr. Il apparaıt que la teinte des levres correspond a des pixels (Cb,Cr) situesdans le premier quadrant du plan Cb-Cr, correspondant donc aux valeurs de Cb

et de Cr elevees, tandis que la teinte chair se localise dans le quadrant III (Sud

Page 150: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

120 Modelisation colorimetrique

-1 -0.5 0 0.5 10

0.05

0.1

0.15

0.2Y

-1 -0.5 0 0.5 10

0.05

0.1

0.15

0.2V

-1 -0.5 0 0.5 10

0.050.1

0.150.2

Cb

-1 -0.5 0 0.5 10

0.2

0.4

0.6

0.8H

-1 -0.5 0 0.5 10

0.05

0.1

0.15

0.2Cr

-1 -0.5 0 0.5 10

0.1

0.2

0.3S

Lèvres : 149 300 pixels

Peau : 487 100 pixelsEchantillons extraits de 5 images

Fig. 2.26 – Repartition des couleurs normalisees de la bouche et de la peau, descinq images d’apprentissage

Ouest, correspondant aux valeurs de Cb et de Cr faibles).

Les canaux de chrominance et de teinte sont donc privilegies pour discrimi-ner la teinte chair de la teinte des levres. L’information de luminance seule estinexploitable a des fins de segmentation de la bouche. Pourtant l’analyse de larepartition des deux couleurs dans le canal Y sur la figure 2.26 montre que lespixels de teinte chair ont un niveau de luminance moyen plus eleve que celui despixels des levres. Cela s’explique par le fait que l’etude dermatologique porte surdes sujets de type Caucasien. Il est possible d’exploiter cette information sur Y acondition de la correler a l’information de chrominance. Des tests experimentauxont montre que l’utilisation conjointe des canaux Y et Cb permet de caracteriserune partie la teinte chair. Pour illustrer cela, les distributions des deux couleursdans l’espace Cb-Y sont modelisees par des histogrammes a deux dimensions avecles valeurs de Cb en ordonnee et celles de Y en abscisse. Sur la figure 2.27 l’inter-valle [−1 1] des valeurs de Cb comme de Y est quantifiee sur N = 20 intervalles.Les deux distributions sont representees en couleur sur une image afin d’en illus-trer l’entrelacement : la teinte chair est en jaune, la couleur des levres en rose.Une partie de la teinte chair est visiblement caracterisee par des pixels dont lescoordonnees (Y,Cb) correspondent a des valeurs de Y elevees et de Cb faibles.

Page 151: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.3 Segmentation des levres par approche colorimetrique 121

Y

Cb

Distribution de la couleur peau

Y

Cb

Distribution de la couleur des lèvres

Y

Cb

Teinte chair en jaune, lèvres en rouge

Fig. 2.27 – Repartition statistique de la teinte chair et de la couleur des levresdans le plan Cb-Y

Page 152: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

122 Modelisation colorimetrique

Cr

CbDistribution de la couleur peau

Distribution de la couleur des lèvres

Cr

Cb

Teinte chair en jaune, lèvres en rouge

Fig. 2.28 – Repartition des deux teintes dans le plan Cb-Cr

Page 153: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.3 Segmentation des levres par approche colorimetrique 123

2.3.2 Modelisation de la couleur par un systeme d’inferences

floues

Un pixel de teinte chair ou de la couleur des levres peut etre caracterise pardes domaines de valeurs recapitulees dans le tableau 2.5 :

Teinte levre Teinte peauY ≥ 0 et Cb ≤ 0

Cr ≥ 0 et Cb ≥ 0 Cr ≤ 0 et Cb ≤ 0|H| ≥ 0.9 |H| ≤ 0.9

Tab. 2.5 – Signatures de la teinte chair et de la teinte levre

La theorie des ensembles flous [Zad73][70] ne delimite pas les classes par desfrontieres precises : l’appartenance a une classe est mesuree par un degre. Lalogique floue se base sur le concept de variable linguistique, dont la valeur estun mot plutot qu’un nombre. Si les mots sont moins precis que les nombres, leurutilisation est plus proche de l’intuition et exploite leur imprecision, en admettantune appartenance partielle a un ensemble, pour realiser des inferences a partir dedonnees imparfaites [Blo03][71].

Dans la proposition floue elementaire “Cb est grand”, Cb est une variable lin-guistique prenant ces valeurs dans l’intervalle [−1 1] et le caractere ”grand” estun ensemble flou de l’univers du discours [−1 1] defini par une fonction d’appar-tenance µCb

grand. Le degre de verite d’une telle proposition est alors defini par unevaleur de [0 1] : c’est le degre d’appartenance de Cb a l’ensemble flou “grand”.

L’analyse colorimetrique de la teinte chair et de la teinte des levres conduit adefinir plusieurs ensembles flous. Les valeurs de Cb et Cr sont ainsi, apres norma-lisation, grandes pour des pixels de teinte levre et petites pour des pixels de teintechair : afin de modeliser au mieux les distributions de ces deux teintes sur la based’apprentissage, les ensembles “grand” et “petit” sont definis par des fonctionsd’appartenance en forme de pi comme le montre la figure 2.29.

La teinte chair correspond a des valeurs absolues de H petite, la couleur levrea de grandes valeurs : les deux ensembles flous correspondant ont des fonctionsd’appartenance trapezoıdales. Les fonctions d’appartenance des ensembles flouspetit et grand pour ce canal sont representees sur la figure 2.30. La teinte chairest aussi caracterisee par de grandes valeurs de Y : la fonction d’appartenance

[70] L.A. Zadeh. Outline of a new approach to the analysis of complex systems and decisionprocess. IEEE Transactions on Systems, Man and Cybernetics, 3 :28–44, 1973.

[71] I. Bloch. Traitement d’images. In B. Bouchon-Meunier and C. Marsala, editors, Traitementde donnees complexes et commande en logique floue, chapter 3, pages 95–152. Hermes,Paris, France, 2003.

Page 154: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

124 Modelisation colorimetrique

Cb

bCpetitµ bC

grandµCb = -0.1

0.8bCpetit Cbµ

0.2bCgrand Cbµ

µ=Degréde vérité

Fig. 2.29 – Fonctions d’appartenance des ensembles petit et grand pour les canauxCb et Cr : une valeur de Cb egale a -0.1 a un degre d’appartenance a l’ensemblegrand de 20%, et a l’ensemble petit de 80%

H

µ=Degréde vérité

Hpetitµ H

grandµ

Fig. 2.30 – Fonctions d’appartenance des ensembles flous partitionnant les valeursde H

Page 155: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.3 Segmentation des levres par approche colorimetrique 125

correspondante est illustree sur la figure 2.31. Ce canal n’est pas utilise pour definirla couleur de la bouche et l’ensemble petit n’est en consequence pas defini.

Soient deux valeurs linguistiques A et B definies par des ensembles flous sur lesunivers de discours X et [0 1] respectivement. Considerons la regle floue suivante :

Si x est A alors y est B

Cette regle floue a pour entree un nombre, la valeur de x, et pour sortie un ensembleflou, a defuzzifier pour en deduire un nombre.

La proposition x est A est l’antecedant (ou la premisse) de la regle : c’est uneinterpretation ayant pour resultat en un nombre compris entre 0 et 1, le degreµA(x) d’appartenance de x a l’ensemble A.

La proposition y est B est la consequence de la regle : c’est un ensemble floudont la fonction d’appartenance depend du degre de verite de l’antecedent, de lafonction d’appartenance de l’ensemble B et de la methode d’implication floue.

L’implication floue est definie, dans nos travaux, par la methode de Mamdani[MA99][72] :

µconsequence = min(µA(x), µB)

L’implication floue est illustree par la figure 2.31 dans le cas de la regle floue siY est grand alors la teinte est celle de la chair. Pour defuzzifier l’ensemble flou,la consequence ainsi determinee, le centre de gravite de la surface situee sous lacourbe de cette fonction d’appartenance est recherche. Son abscisse est un nombrecompris entre 0 et 1, a interpretrer par la suite en fonction de l’application visee.

Les consequences possibles de regles sur les valeurs d’un pixel sont au nombrede deux : le pixel a la couleur de la bouche ou celle de la peau. La sortie couleurdu pixel est une variable linguistique dont la semantique des valeurs teinte boucheet teinte chair est representees par deux ensembles flous dont l’univers du discours(l’espace de reference) est l’intervalle [0 1]. Leur fonction d’appartenance est definiepar une Gaussienne centree respectivement en 0 et 1, comme le montre la figure2.31. L’application aux valeurs d’un pixel d’une regle floue qui apres defuzzificationdonne un nombre proche de 1 conduira a conclure que ce pixel a la teinte deslevres ; un nombre proche de 0 permettra de conclure que le pixel est de teintechair. Un seuil de decision est en particulier a definir a des fins de classification,sa determination est explicitee par la suite.

Une operation logique entre deux propositions floues produit un ensemble flou.La fonction d’appartenance de la conjonction “X est A et Y est B” est definiepar la t-norme min agregeant les deux fonctions d’appartenance : µAetB(x, y) =

[72] E. H. Mamdani and S. Assilian. An experiment in linguistic synthesis with a fuzzy logiccontroller. International Journal of Human-Computer Studies, 51(2) :135–147, 1999.

Page 156: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

126 Modelisation colorimetrique

Chairµ Boucheµ

Y

Ygrandµ

Y=-0.1

consequenceµ

Centre de gravité = 25%

µ=Degréde vérité

Règle floue: si Y est grand alors teinte = chair

Fig. 2.31 – Un pixel de luminance normalisee egale a -0.1 est de valeur grande a18% et est de teinte chair a 25% avec la regle d’implication proposee

min(µA(x), µB(y)). Le degre de verite de la proposition “Cb est grand et Cr estgrand” pour un pixel de coordonnees (Cb,Cr) dans le plan Cb−Cr est ainsi egal amin(µCb

grand(Cb), µCr

grand(Cr)). Ce degre de verite est utilise pour majorer la fonctiond’appartenance de l’ensemble flou teinte bouche dans l’implication de la regle “siCb est grand et Cr est grand alors le pixel est de teinte bouche”.

Une regle floue a pour entree une ou plusieurs valeurs et pour sortie un en-semble flou. Dans le cas ou plusieurs regles sont appliquees, plusieurs sorties sontobtenues : les regles sont evaluees, pour un pixel donne, de maniere independante.Les ensembles flous obtenus sont alors agreges en un dernier ensemble flou. Sa fonc-tion d’appartenance est definie comme le maximum des fonctions d’appartenancedes precedentes sorties. Finalement l’ensemble obtenu est defuzzifie par recherchedu centre de gravite de la surface situee sous sa courbe.

Cinq regles flous constituent le systeme d’inferences visant a discriminer lateinte bouche de la teinte chair :

– si Cb est grand et Cr est grand alors la couleur est de teinte bouche– si Cb est petit et Cr est petit alors la couleur est de teinte peau– si H est grand alors la couleur est de teinte bouche– si H est petit alors la couleur est de teinte peau– si Y est grand et Cb est petit alors la couleur est de teinte peau

Page 157: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.3 Segmentation des levres par approche colorimetrique 127

Système d’inférences floues

Lissage

Seuil=

80% de Dmax

Degré de vérité de la couleur lèvre Maximum = Dmax

Fig. 2.32 – Seuil de decision de la segmentation des levres

Ce systeme d’inferences floues est applique a tous les pixels de l’image testee. Onen deduit un tableau de meme taille que l’image et dont les valeurs sont comprisesentre 0 et 1. Cette valeur donne le degre de verite avec lequel le pixel est de lateinte des levres. Un lissage moyen 10x10 est ensuite realise sur ce tableau, commel’illustre la figure 2.32. Un seuil de decision en est deduit : au dela de ce seuil, le pixelest classifie comme etant de teinte bouche. Ce seuil est fixe a 80% du maximumdu tableau lisse. L’image binaire resultante contient alors plusieurs composantesconnexes : celle dont l’aire est la plus elevee est choisie comme correspondante ala bouche.

Page 158: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

128 Modelisation colorimetrique

2.3.3 Modelisation fine des contours de la bouche

2.3.3.1 Ajustement parametrique de courbe par la methode des moindrescarres

L’ajustement parametrique commence par le choix d’un modele. Ce modele, ap-pele regression, est une fonction y = f(x) ou une forme

(x = X(t), y = Y (t)

)pa-

rametree par des coefficients : polynome, fraction rationnelle, exponentielle, gaus-sienne, cercle, ellipse (voir page 255), etc ... L’ajustement consiste a trouver lescoefficients les mieux adaptes aux donnees a modeliser.Dans le cas d’une regression lineaire par rapport aux coefficients la methodedes moindres carres peut-etre utilisee. Illustrons cette methode dans le cas d’uneregression polynomiale de degre n : on cherche alors a ajuster la fonction

y =n∑

k=0

akxk

a l’ensemble de N points{(xi, yi), i ∈ �1, N�

}constituant les donnees d’apprentis-

sage. Ces points sont alors definis par un terme de regression et un terme d’erreurcorrespondant a la partie non expliquee par le modele : y = y + e. L’erreur dumodele sur le ieme point est defini par ei = yi− yi ou yi =

∑nk=0 akx

ki est la reponse

du modele calculee au point xi. L’estimation des coefficients ak se fait en minimi-sant une fonction de cout du modele : on choisit generalement un cout quadratique,la somme du carre des erreurs donnee par

J =

N∑i=1

e2i =

N∑i=1

(yi − yi)2

Cette fonction de cout s’ecrit dans le cas particulier d’une regression polynomiale

J =N∑

i=1

(yi −n∑

k=0

akxki )

2

ou apparaissent les coefficients a optimiser. On cherche alors le minimum de lafonction de cout J en derivant cette quantite par rapport a chacun des parametres.

∂J

∂aj= 0 ⇐⇒

n∑k=0

ak

N∑i=1

xk+ji =

N∑i=1

yixji , ∀j ∈ �1, n�

La resolution de ce systeme lineaire de n equations, dites normales, a n inconnuesfournit l’estimation des parametres optimaux par les moindres carres. Les residussont, par definition, les erreurs obtenues avec les parametres des moindres carrespour les N exemples d’apprentissage : ri = yi − yi.

Page 159: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.3 Segmentation des levres par approche colorimetrique 129

La formulation matricielle du probleme d’optimisation par les moindres carrespermet d’en expliciter la solution sous une forme simple. Considerons la matriceX suivante dite matrice de l’experience

X =

⎛⎜⎜⎜⎝

xn1 xn−1

1 . . . x1 1xn

2 xn−12 . . . x2 1

......

. . ....

...xn

N xn−1N . . . xN 1

⎞⎟⎟⎟⎠

En definissant les vecteurs des mesures �Y , des parametres �a et des erreurs �e dumodele :

�Y =

⎛⎜⎜⎜⎝

y1

y2...

yN

⎞⎟⎟⎟⎠ �a =

⎛⎜⎜⎜⎝

an

an−1...a0

⎞⎟⎟⎟⎠ �e =

⎛⎜⎜⎜⎝

e1

e2...

eN

⎞⎟⎟⎟⎠

La regression lineaire appliquee aux N exemples d’apprentissage fournit la relation

�Y = X�a + �e

Le cout quadratique J fonction de �a s’ecrit alors

J(�a) = ‖e‖2 =(

�Y −X�a)T

.(

�Y −X�a)

= �Y T .�Y − 2�aXT .�Y + �aTXT .X�a

Le gradient du cout quadratique est obtenu en derivant par rapport a �a :

∂J

∂�a= −2XT �Y + 2XTX�a

et en egalant ce gradient au vecteur nulle, on obtient l’equation normale fournissantl’estimation �amc des moindres carres du vecteur �a :

XTX�amc = X�Y

Si la matrice XTX, de taille (n + 1, n + 1), est inversible, c’est-a-dire si X est derang n + 1 alors l’unique solution des moindres carres est

�amc = (XTX)−1XT �Y .

Lorsque le nombre d’exemples N est beaucoup plus grand que le nombre n + 1 deparametres, la matrice X est presque certainement de rang n + 1 : n + 1 lignes deX parmi les N sont lineairement independantes.

Page 160: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

130 Modelisation colorimetrique

2.3.3.2 Regression lineaire des contours de la bouche

La segmentation de la bouche par une approche colorimetrique determine unecomposante connexe dont les contours approchent ceux de la bouche de maniererelativement imprecise. Cette imprecision est diminuee en modelisant les contoursobtenus par une ou plusieurs courbes parametriques selon l’application visee. Ainsimodeliser les contours de la bouche par une droite ou une ellipse peut s’averer sa-tisfaisant pour une application ou une localisation grossiere de ce trait du visageest suffisante. Pour d’autres applications, telles que la lecture labiale, la reconnais-sance d’expression faciale ou l’animation d’avatar, une modelisation plus fine descontours de la bouche est necessaire. Les contours de la bouche sont alors modelisespar morceaux : certains auteurs approximent ainsi les contours externes des levrespar deux paraboles - une par levre - voire trois - dont deux pour la levre superieure,produisant un ajustement plus fin de l’arc de cupidon - comme illustre en figure2.33.

Fig. 2.33 – Modelisation des contours labiaux par deux et trois paraboles

Les contours exterieurs de la bouche sont divises en deux ensembles de point,les points de contour superieurs et inferieurs, chacun de ces ensembles etant alorsmodelise par un polynome de degre 4. Le choix du degre des polynomes utilisesdepend de la forme de la courbe a modeliser. Les contours de la levre superieurepresentent generalement trois extremums : un maximum au niveau de l’arc de cu-pidon et deux minimums de part et d’autre de cet arc (l’axe des ordonnees estdirige vers le bas dans une image). Un polynome dont la derivee s’annule en troispoints est donc utilise : celui-ci a un degre multiple de quatre. Le choix d’un po-lynome de degre 4 assure que celui-ci n’aura que trois extremums. Considerant lacommissure des levres comme des extremums, on peut utiliser un polynome dedegre 6, mais des tests ont montres que cette hypothese est incorrecte, la commis-sure des levres correspondant en pratique a des points d’inflexion du contour dela levre. La chaıne de points de contours de la levre inferieure peut etre modeliseeen premiere approximation par une parabole. Or cette chaıne ne presente pas unextremum localise en un point mais sur un plateau : ajuster cette chaıne avec unpolynome de degre 4 produit une modelisation plus precise que celle obtenue avecun polynome du second degre.

Page 161: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.3 Segmentation des levres par approche colorimetrique 131

2.3.4 Resultats experimentaux

Afin de quantifier les resultats de la segmentation de la bouche, on definit letaux de recouvrement de la verite terrain par le resultat de la segmentation. Cetaux est defini par le rapport de l’aire de l’intersection entre la bouche segmentee etla verite terrain sur l’aire de leur union (voir figure 2.34). La matrice de confusion

S: Région segmentéeVT: Vérité terrain Aire S VT

Aire S VT

Union des deux régions

Intersection

S VT

S VT

Taux de recouvrement de la vérité-terrain parla bouche segmentée:

Fig. 2.34 – En rouge les contours de la verite terrain, en vert ceux obtenue parune segmentation couleur : celle-ci recouvre 75% de la verite terrain

correspondante est aussi donnee. Deux classes sont a discriminer, celle de la teintechair et celle de la couleur bouche. La matrice de confusion est donc de taille 2x2 :la premiere ligne contient les resultats de la classification des pixels des levres, laseconde ligne donnant la classification des pixels de teinte chair. Les resultats dela classification correspondent aux colonnes : la premiere colonne donne le nombred’exemples classifie comme etant de couleur bouche, la seconde colonne indiquele nombre de pixels classifie comme ayant la teinte chair. La base de test de 108images de bouche (voir tableau 2.4) est utilisee afin de quantifier la qualite dela segmentation. La distribution des taux de recouvrement obtenue est presentesous la forme d’un histogramme (figure 2.35), tandis que la matrice de confusion(tableau 2.6) est cumulee sur l’ensemble des images de test.

Il est a noter que les bon resultats montres par la matrice de confusion 2.6

Page 162: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

132 Modelisation colorimetrique

Classe / Classification Bouche PeauBouche 2.49 millions (84.4%) 458.500 (15.6%)Peau 512.000 (4.7%) 10.4 millions(95.3%)

Tab. 2.6 – Matrice de confusion de la segmentation Bouche/Peau

integrent une information de plus au niveau que celui du pixel : les post-traitements(lissage et ajustement de courbes) realises sur la reponse du systeme d’inferencesfloues calculee a toutes les positions de l’image. C’est pourquoi la distribution destaux de recouvrement de la verite terrain sur l’ensemble des images de test refletemieux les performances en segmentation de la bouche. La figure 2.35 donne lenombre d’images (la population, en ordonnee) en fonction du taux de recouvrementprecedemment defini. Ce taux necessite toutefois une verification supplementaire,car il n’est parfois pas adapte, comme le montre le premier exemple de la figure2.37 ou une mauvaise segmentation a pour resultat un taux de recouvrement de81%, tandis qu’une segmentation correcte (premier exemple de la figure 2.35) nerecouvre que 60% de la verite terrain.

Sur 108 images de test, les levres de 80 images ont ete correctement segmentees,soit un taux de reussite de 74%. Sur les 28 autres images (26% de la base de test),les trois principales causes de defaillance de la segmentation sont illustrees par lestrois exemples de la figure 2.37. Dans le premier exemple de cette figure, l’ombredu nez est portee sur la levre superieure : donc Y n’est plus ”grand” pour les pixelsse trouvant a cette position, augmententant leur degre d’appartenance a la couleurbouche. Dans le second exemple, le visage est trop appuye sur le socle supportantle menton, creant une plissure juste en dessous de la levre inferieure. La luminanceest encore a incriminer, ou plutot les limites de notre approche basee region : lacarte lissee des degres de verite de la teinte bouche n’est pas aberrante compareea la verite. Mais un simple seuillage n’est pas adapte dans ces cas de figure. Ons’en rend compte dans le dernier exemple, ou les pixels de bouche correctementsegmentees ont des degres de verite beaucoup plus eleve que les pixels en bordurede la levre inferieure. Un seuil plus bas permet de delimiter correctement la levreinferieure ... mais un seuil plus eleve produit une mauvaise segmentation de lalevre superieure !

Page 163: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.3 Segmentation des levres par approche colorimetrique 133

0 0.2 0.4 0.6 0.8 10

10

20

30

40

50

Taux de recouvrement de la vérité terrain

Pop

ulat

ion

Fig. 2.35 – Distribution des taux de recouvrement de la verite terrain

Page 164: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

134 Modelisation colorimetrique

Fig. 2.36 – Exemples de segmentation correcte de la bouche avec le taux de re-couvrement de la verite terrain correspondant, et la carte des degres de verite dela teinte bouche lissee

Page 165: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

2.3 Segmentation des levres par approche colorimetrique 135

Fig. 2.37 – Exemples de segmentation incorrecte de la bouche avec la carte desdegres de verite lissee

Page 166: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

136 Modelisation colorimetrique

2.3.5 Conclusions

Dans cette section, nous avons presente une approche colorimetrique de lasegmentation des levres. L’objectif est de delimiter finement le contour des levres,afin d’en extraire des informations geometriques utiles a la caracterisation de l’agedu sujet, une etape dans un projet plus large de quantification du vieillissement dela peau a partir d’images en haute resolution. Nos tests ont porte sur des imagescadrees sur la bouche, ne contenant que les levres et de la peau.

La couleur des levres et la couleur de la peau etant tres similaire, une analysecolorimetrique a ete realisee dans les deux espaces colorimetriques HSV et Y CbCr.Cette analyse a mis en valeur les informations de couleur exploitables pour cettetache :

– la chrominance extraite conjointement de Cr etCb qui refletent la quantitede rouge et de bleu contenue dans la couleur d’un pixel.

– l’information de teinte contenue dans le canal Hue.– la luminance Y utilisee conjointement a Cb.Nous nous sommes appuyes sur un systeme d’inferences floues pour fusion-

ner ces informations conformement aux intuitions apportees par cette analyse. Leresultat de cette approche est un nombre compris entre 0 et 1 refletant la vrai-semblance avec laquelle un pixel est de la couleur des levres. Une segmentationen composantes connexes est alors operee sur l’image resultant du traitement detous les pixels de l’image. La composante connexe la plus vaste est retenue pourrepresenter les levres. Les points de contour des levres superieure et inferieure sontajustes par deux polynomes de degre 4 afin de lisser le resultat de la segmentation.Sur 108 images de test, 74% des levres sont correctement segmentees, resultat tresprometteur etant donne la difficulte de la tache.

Une amelioration de ces resultats pourrait s’appuyer sur un seuillage avechysteresis dans l’etape de segmentation en composante connexe. L’incorporationd’un modele supplementaire tel que l’orientation du gradient de l’image peut aussietre envisagee. Pour l’heure, nos efforts se concentrent sur la determination de lafrontiere inter-levres : des resultats encourageants ont ete obtenus a l’aide d’unsysteme d’inferences floues combinant la luminance et la saturation, mais cetteapproche n’a pas ete jugee suffisamment robuste pour etre presentee ici.

Page 167: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

Chapitre 3

Methodes de fusion pour lalocalisation du visage

Sommaire3.1 Fusion d’information . . . . . . . . . . . . . . . . . . . . 138

3.1.1 Generalites . . . . . . . . . . . . . . . . . . . . . . . . . 1383.1.2 Application a la detection de visage : etat de l’art . . . 140

3.2 Combinaison d’algorithmes pour la localisation du vi-sage : presentation de l’approche . . . . . . . . . . . . . 152

3.2.1 Modele de la peau . . . . . . . . . . . . . . . . . . . . . 1533.2.2 Modelisation de l’ovale du visage par Transformee de

Hough Generalisee . . . . . . . . . . . . . . . . . . . . . 1543.2.3 Presentation generale de la fusion d’experts pour la lo-

calisation du visage . . . . . . . . . . . . . . . . . . . . . 1633.3 Algorithmes de fusion . . . . . . . . . . . . . . . . . . . . 165

3.3.1 Modele Bayesien : approches parametrique et non-para-metrique . . . . . . . . . . . . . . . . . . . . . . . . . . . 166

3.3.2 Systeme d’inferences floues . . . . . . . . . . . . . . . . 1673.3.3 Approches neuronales et somme ponderee . . . . . . . . 172

3.4 Resultats experimentaux . . . . . . . . . . . . . . . . . . 1743.4.1 Mesure de performances sur la base d’images ECU . . . 1743.4.2 Comparaison des methodes de fusion . . . . . . . . . . . 1783.4.3 Analyse de la fusion par somme ponderee . . . . . . . . 1853.4.4 Localisation du visage dans une sequence d’image . . . 1893.4.5 Localisation de plusieurs visages dans une image . . . . 1903.4.6 Localisation du visage a plusieurs echelles : comparaison

avec le detecteur de Viola&Jones . . . . . . . . . . . . . 1913.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . 201

Page 168: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

138 Methodes de fusion pour la localisation du visage

3.1 Fusion d’information

3.1.1 Generalites

La plupart des systemes biologiques exploitent naturellement une combinaisond’informations, tel le cerveau qui s’appuie sur plusieurs sens simultanement pourpercevoir son environnement : la stimulation de ces sens est integree par le cerveauen fonction de sa memoire court terme et de l’experience du sujet, pour obtenirune representation de l’espace. Dans [Wal98][1], Wald definit la fusion de donneescomme le cadre formel de methodes pour la combinaison d’informations issues dedifferentes sources, avec pour objectif d’obtenir une information de ”plus grandequalite”. Cette definition regroupe differents domaines de recherche tels que la fu-sion d’images, de capteurs ou la combinaison d’experts (classifieurs ou modeles),et s’applique a une information de nature variee (signaux et images, primitives,descriptions symboliques, decisions ou modeles). Valet & al [VMB01][2] proposentune etude recente de la fusion d’informations : les domaines d’application y sontpresentes, et les approches sont classees en fonction de leur objectif, leur architec-ture et les outils employees.

Les applications militaires ou de surveillance sont les plus frequentes, tellesque :

– la detection, l’identification et le suivi de cible aerienne, fusionnant l’infor-mation provenant de radars, capteurs infrarouge, sonars . . .

– la detection de mines utilisant des detecteurs de metaux, des cameras infra-rouge ou des GPR (Ground Penetrating Radar, radar dirige vers le sol).

– l’aide a la decision tactique, l’evaluation de la menace ou encore la sur-veillance de champs d’operation, basees sur une connaissance a priori duterrain et de l’ennemi, generalement incertaine et imprecise.

– la reconnaissance de personnes combinant des mesures biometriques diverses(voix, visage, empreintes digitales ou palmaires, iris).

L’observation et la modelisation de la Terre, et de ses changements, integrent dessources oceaniques (provenant de bateau ou de sous marin), atmospheriques, etsismiques, ainsi que des modeles de processus geophysiques. En geoscience, desimages satellitaires et aeriennes sont analysees et interpretees en combinant desimages acquises a des instants differents ou provenant de modalites variees pour la

[1] L. Wald. A european proposal for terms of reference in data fusion. International Archivesof Photogrammetry and Remote Sensing., XXXII(7) :651–654, 1998.

[2] L. Valet, G. Mauris, and P. Bolon. A statistical overview of recent literature in informationfusion. IEEE Magazine on Aeronautics and Electronic Systems, 16(3) :7–14, 2001.

Page 169: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.1 Fusion d’information 139

detection de routes, aeroports, zones montagneuses ou glacieres. Des images d’unememe region et de resolution spatiale differentes sont agregees pour obtenir descartes geographiques de plus haute resolution. Dans le secteur des transports onpeut citer l’exemple du GPS pour la localisation par triangulation, l’aviation civile(controle du trafic, assistance a l’atterrissage) ou la surveillance de la circulationdes autoroutes par reseau de cameras. La navigation temps reel d’un robot peutintegrer plusieurs cameras pour la vision 3D, l’utilisation de lasers ou d’ultrasons.Dans le domaine medical, la modelisation du corps humain ou l’aide au diagnos-tique font aussi appel a la fusion d’informations, notamment en imagerie medicalepour la delimitation de tumeurs a partir de radiographies et d’ultrasons, ou la re-construction 3D de vaisseaux sanguins a partir d’angiographies et d’echographies.Dans l’industrie, le controle de pieces par vision robotique ou la detection auto-matique de pannes sont d’autres exemples d’application.

Le but de la fusion d’informations depend de l’application [VMB01][2] :

– reduction de dimensionnalite : on recherche une representation des donneesplus facile a interpreter ou a sauvegarder.

– classification ou decision, a partir de donnees ayant un faible degre d’abs-traction.

– reduction de l’imperfection des donnees : imprecisions et incertitudes des cap-teurs ou des modeles peuvent etre attenuees en fusionnant des informationsredondantes.

– robustesse : relative au bruit des donnees ou a l’absence d’une source. Unesolution consiste a fixer des domaines de validite pour chaque source avantde les fusionner.

En detection de visages, l’emploi de modeles ou de representations complementairespermet d’augmenter le nombre de vrais positifs et de reduire le nombre de faussesalarmes, l’utilisation d’heuristiques sert generalement a reduire les temps de calculet l’arbitrage entre detections multiples permet d’obtenir une plus grande precisiondes localisations.

Plusieurs architectures de fusion de donnees existent dans la litterature, onpeut les diviser en trois grandes classes [PM98][3] : parallele, serie (ou sequentielle),et hybride (melangeant sequentielle et parallele, avec boucle de retro-action . . .).Dans [VMB01][2], le niveau de fusion d’un systeme est aussi discute, correspondantau degre d’abstraction des entrees et des sorties. Le plus bas niveau, celui dusignal, agrege les sources en une etape, sans traitement. A un niveau intermediaire,des caracteristiques (dimension, aire, compacite, moyenne . . .) de chaque sourced’information sont prealablement extraites avant d’etre agregees. Le haut niveaucorrespond a la combinaison de decisions.

[3] L. Prevost and M. Milgram. Automatic allograph selection and multiple expert classifi-cation for totally unconstrained handwritten character recognition. In Proceedings of the14th International Conference on Pattern Recognition, volume I, pages 381–383, 1998.

Page 170: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

140 Methodes de fusion pour la localisation du visage

Les principaux outils mathematiques employes en fusion d’informations sontconstitues par [sldd03, VMB01][4,2] :

– la theorie des probabilites, qui modelise les densites de probabilites condi-tionnelles aux classes de chaque source, et les fusionne via la formule de Bayespour obtenir la vraisemblance de telle hypothese pour la sortie donnee. Onsuppose dans ce cadre que les sources sont independantes.

– la theorie des fonctions de croyance, qui repose sur la modelisation de lacroyance en un evenement. Elle manipule les classes selon des sous ensemblesplutot que des singletons, et permet de representer l’incertitude, l’imprecision,en meme temps que l’ignorance.

– la theorie des ensembles flous, qui s’appuie sur une appartenance partielle achacune des classes, et constitue une methode de discretisation de donneessymboliques.

– les reseaux de neurones.– d’autre outils plus proche de l’intuition tels que le vote majoritaire, qui est

souvent utilise dans la fusion de decision, la moyenne ou la somme ponderee,le maximum ou encore le produit de mesures provenant de chaque source(niveau intermediaire).

Dans la section suivante, nous presentons les differents approches de fusionappliquees en detection de visages dans une image fixe. Nous y rencontrerons lacombinaison d’experts, declines selon differentes methodes (probabilistes, neuro-nales, somme, ou produit), les ensembles de classifieurs (fusion de haut niveau)combines selon les trois types d’architectures, par produit, vote majoritaire ouarbre de decision, et la combinaison de representations differentes de l’image (fu-sion de bas niveau). Le point commun entre ces approches est qu’elles utilisentune seule image, sur laquelle des algorithmes sont appliques pour extraire desinformations complementaires sur une meme classe d’objet, les visages.

3.1.2 Application a la detection de visage : etat de l’art

3.1.2.1 Combinaison d’experts traitant une meme representation del’image

Rowley & al [RBK98a][5] combinent les sorties de plusieurs reseaux de neuronesappris sur les memes exemples de visages avec des initialisations differentes et unebase de non visages propre a chaque reseau, produit par une procedure de boostrap-ping partant des memes contre-exemples. L’idee est que ces experts ont tendance

[4] I. Bloch (sous la direction de). Fusion d’informations en traitement du signal et des images.Hermes, Paris, France, 2003.

[5] H. A. Rowley, S. Baluja, and T. Kanade. Neural network-based face detection. IEEETransactions on Pattern Analysis and Machine Intelligence, 20(1) :23–38, 1998.

Page 171: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.1 Fusion d’information 141

a detecter les memes visages, mais des faux positifs differents. Plusieurs methodesde combinaison sont testees : le ET logique, deux reseaux doivent detecter un can-didat a la meme position et a la meme echelle pour qu’il soit valide, le OU logiqueentre deux reseaux ou encore le vote majoritaire entre trois detecteurs.

Feraud&al [FBVC01][6] comparent trois approches de fusion de modeles genera-tifs contraints MGC, des Diabolos specialises sur une orientation du visage : unensemble de MGC, un melange conditionnel de MGC et un ensemble conditionnelde MGC. Les exemples de visages employes par chacun de ces Diabolos contraints(i.e. des contre-exemples sont utilises en apprentissage) sont differents : le premierMGC1 est specialise sur les visages de face, le second MGC3 sur les visages deprofil et le troisieme MGC5 sur l’ensemble des visages. L’ensemble de MGC estconstitue par la moyenne des sorties de ces trois experts. Le melange conditionnelest compose des Diabolos appris sur les visages de face et de profil, MGC1 et MGC3

ainsi que d’un reseau porte [JJ91][7] permettant de choisir l’expert le plus adapte.Ce reseau porte est un reseau de neurones de 300 entrees (les vignettes traiteessont de taille 15x20), 25 neurones caches et 1 neurone de sortie. La sortie fW dece reseau estime la probabilite qu’un visage soit de face ou de profil (probabilite1-fW ), et combinent les sorties fMGC1 et fMGC3 des deux MGC :

P (visage|x) = fW (x)fMGC1(x) + (1− fW (x))fMGC3(x)

Les deux MGC sont appris separement dans un premier temps, puis le reseau porteest entraıne a optimiser la sortie du melange P (visage|x) sur une base de visage etde non visage. L’ensemble conditionnel exploite ces deux MGC et un autre reseauporte. Le reseau porte est entraıne sur les visages avec la meme fonction cout quedans le cas du melange conditionnel, et sur les non visages sa sortie desiree estla moyenne des sorties des deux MGC (ensemble des deux experts). Ces modulesetant combines par une approche Bayesienne :

P (visage|x) = P (non visage|x)[fMGC1(x) + fMGC3(x)

]+P (x de face|x)fMGC1(x) + P (x de profil|x)fMGC3(x)

Enfin un dernier reseau Diabolo MG est appris sans contre-exemple, a titre decomparaison. Le tableau 3.1 rapporte les resultats obtenus sur le Set A de la baseCMU (42 images, 164 visages). Le Diabolo appris sans contre-exemple conduit aun grand nombre de faux positifs, comme nous avons pu le constater durant nostravaux (voir section 3.4). La contrainte apportee par l’utilisation de non visagesen apprentissage (MGC5) diminue considerablement le taux de faux positifs. L’en-semble de Diabolo a des performances moins elevees que celle obtenues par les deux

[6] R. Feraud, O.J. Bernier, J-E. Viallet, and M. Collobert. A fast and accurate face de-tector based on neural networks. IEEE Transactions on Pattern Analalysis and MachineIntelligence, 23(1) :42–53, 2001.

[7] R.A. Jacobs and M.I. Jordan. A competitive modular connexionist architecture. In NeuralInformation Processing Systems, volume 3, 1991.

Page 172: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

142 Methodes de fusion pour la localisation du visage

Modele Taux de detectionNombre de

fausses alarmesMG 84% 20000

MGC1 77% 47MGC3 85% 212MGC5 85% 46

Ensemble 74% 24Ensemble conditionnel 82% 26Melange conditionnel 85% 39

Tab. 3.1 – Comparaison entre les differentes approches de Feraud & al sur unebase de 42 images contenant 164 visages.

autres approches de fusion de modeles. Pour determiner la meilleure de ces deuxapproches, les auteurs tracent leur courbe COR et c’est le melange conditionnelqui est le plus performant.

Nous detaillons l’architecture sequentielle du detecteur de Viola&Jones au cha-pitre 1.2 : chaque classifieur fort est un expert de haut niveau (celui de la retine).Chacun de ces experts fusionne lui meme, par une somme ponderee, des classifieursfaibles de niveau intermediaire (celui des filtres rectangulaires) et de meme nature(les classifieurs faibles calculent une difference de niveaux de gris entre plusieursblocs de la vignette), les poids et le choix des classifieurs faibles etant fait automa-tiquement durant l’apprentissage par la procedure d’Adaboost. Dans [VJ01][8], lesclassifieurs forts sont mis en cascade pour donner des capacites de temps reel audetecteur de visage, mais de meilleures performances sont obtenues en combinantla decision de trois cascades, entraınes de maniere similaire, par un vote majori-taire. Ainsi sur la base CMU (130 images, 507 visages), pour 10 fausses alarmesla cascade obtient un taux de detection de 76.1% tandis que ce taux est de 81.1%par vote majoritaire. Li&Zhang [LZ04][9] utilisent une approche hybride pour fu-sionner des experts, les classifieurs forts, de plus en plus specialisees sur les posesde visages correspondant a une rotation hors du plan (autour de l’axe y, visagesde profil). Une vignette suit un chemin descendant dans l’arbre de decision (lapyramide illustree par la figure 1.7), du premier au troisieme niveau, jusqu’a etreclassifiee. Dans [LLK03][10], Lienhart&al utilisent un arbre de decision (architec-

[8] P. Viola and M. Jones. Rapid object detection using a boosted cascade of simple features.In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition,volume 1, pages 511–518, 2001.

[9] S. Z. Li and Z. Zhang. Floatboost learning and statistical face detection. IEEE Transactionon Pattern Analysis and Machine Intelligence, 26(9) :1112–1123, 2004.

[10] R. Lienhart, L. Liang, and A. Kuranov. A detector tree of boosted classifiers for real-timeobject detection and tracking. In IEEE International Conference on Multimedia & Expo,2003.

Page 173: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.1 Fusion d’information 143

Nœud de test :cascade de

classifieurs fort

Nœud debranchement

Visage…

!

!Non visage??Visage

!

!

??

??

!

!

!

Non visage

??

??

Fig. 3.1 – Arbre de decision : chaque noeud de test est constitue d’une cascade declassifieurs forts. Deux exemples de chemins sont illustres, l’un est emprunte parun visage (en rouge), l’autre par un non visage (en bleu).

ture hybride) pour combiner plusieurs cascades de classifieurs forts, chaque cascadeetant entrainee sur une base d’apprentissage differente. Une fois l’arbre construit(voir figure 4.4), plusieurs chemins sont empruntes par la vignette, notamment avecde possibles retours en arriere jusqu’a trouver un chemin de validation. Chaquebranche est constituee d’un noeud de test, materialise par une cascade de clas-sifieurs forts classifiant la vignette, suivi d’un noeud de branchement. Au noeudde branchement, deux branches separent les chemins possibles dans l’arbre a par-tir de ce point. Lorsqu’une vignette passe par ce noeud, elle est dans un premiertemps evaluee par la cascade de l’une des branches : le choix de cette premierebranche est arbitraire. Si la vignette est classifiee non visage, elle rebrousse cheminau noeud de branchement precedent, et emprunte une autre branche. Si elle estclassifiee visage, elle poursuit son chemin a partir du noeud de branchement sui-vant. Si elle est rejetee par toutes les branches issues d’un meme noeud la vignetteest definitivement classifiee non visage. La figure 3.1 illustre un chemin possiblepour une vignette classifiee visage (en rouge) et un chemin pour une vignette denon visage. Nous decrivons la construction et l’apprentissage de cet arbre plus endetails au chapitre 4.2 car nous avons evaluer ses performances dans le cadre duchoix d’un detecteur de visages pour l’initialisation d’un systeme de poursuite devisages.

Page 174: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

144 Methodes de fusion pour la localisation du visage

3.1.2.2 Fusion de representations heterogenes de l’image

Dans [Liu03][11], Liu fusionne differentes representations d’une vignette 16x16pour la detection de visages. Un vecteur caracteristique X est associe a une vignetteen concatenant ses niveaux de gris, ses projections verticale Iv et horizontale Ih

ainsi que sa representation en ondelette de Haar 1D. Appelant I(x, y) le niveau degris du pixel de coordonnee (x, y) d’une vignette x de taille mxn, les projectionsverticale Iv et Ih sont des vecteurs de dimension m et n respectivement, definispar :

Iv =n−1∑y=0

I(x, y) Ih =m−1∑x=0

I(x, y)

La decomposition en ondelette de Haar 1D de x est realisee au niveau zero, c’est-a-dire a l’echelle de la vignette (par rapport au schema de la figure 1.3, p.16,aucun sous echantillonnage n’est realise) : elle produit deux images Hx et Hyrespectivement de taille (m− 1)xn et mx(n− 1).

Hx(x, y) = I(x + 1, y)− I(x, y), pour x ∈ {0, . . . , m− 2}, y ∈ {0, . . . , n− 1}Hy(x, y) = I(x, y + 1)− I(x, y), pour x ∈ {0, . . . , m− 1}, y ∈ {0, . . . , n− 2}

Notons que les equations (1.9) et (1.10) evaluant les gradients horizontal Gx etvertical Gy d’une image sont similaires a ces equations, a la difference que Gx etGy sont de la meme taille que l’image : la derniere ligne et la derniere colonne duchamp de gradient sont calculees en supposant que I(m, y) = I(x, n) = 0 pourtout x et tout y. Notons Hx et Hy la concatenation des colonnes respectivementde Hx et Hy. Le vecteur caracteristique X est alors la concatenation de ces troissources d’information et est de dimension d = 3xmxn=768 :

X = [x Hx Hy Ih Iv]T

Le vecteur caracteristique X a partir duquel la distribution des visages et des nonvisages est estimee est alors obtenu par la normalisation suivante :

X =X− µ

σ

ou µ et σ sont respectivement la moyenne et l’ecart type des elements de X.Une analyse en composante principale des vecteurs caracteristiques de la base desvisages est operee, et le sous espace propre, associe aux p = 10 valeurs propres λi

les plus elevees, est determine. Soit y la projection sur ce sous espace propre d’un

[11] C. Liu. A bayesian discriminating features method for face detection. IEEE Transactionon Pattern Analysis and Machine Intelligence, 25(6) :725–740, 2003.

Page 175: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.1 Fusion d’information 145

exemple X caracterisant une vignette x, rappelons que l’erreur de reconstructionde cet exemple est note ε(x), mais repetons-le, y est la projection de X :

ε(x)2 =‖ X−Mv ‖2 − ‖ y ‖2

ou Mv est la moyenne des vecteurs caracteristiques de la base de visage. La densitede probabilite conditionnelle a la classe visage est alors estimee par une Gaussienne

p(x|visage) ∝ e−d(x)

2 avec :

d(x) =

p∑i=1

y2i

λi+

ε2(x)

ρet ρ =

1

d− p

d∑i=p+1

λi

La densite de probabilite conditionnelle a la classe non visage est modelisee dela meme maniere, mais la base de non visages utilisee pour proceder a l’ACPest choisie en selectionnant des exemples de non visages ”proches” des visages,i.e. ayant une vraisemblance p(x|visage) elevee. La base d’apprentissage de cesmodeles est constituee de 1200 exemples de visages (synthetises en prenant lesimages miroir de 600 visages) et de 4500 non visages. La classification est opereepar une approche Bayesienne : une vignette est classifiee visage si le rapport devraisemblance est superieur a un seuil. Le detecteur est appris sur des visagesfrontaux : afin de pouvoir detecter des visages inclines, la detection de visages estoperee apres rotation de l’image de test d’un angle Φ variant de -20˚a +20˚avecun pas de 5˚. Sur une base de test de 80 images de la base CMU, 221 visagessur 227 sont detectes pour une seule fausse alarme. Liu souligne l’importance del’utilisation d’heuristiques dans l’efficience du detecteur : ces heuristiques sontutilisees avant d’appliquer eventuellement la regle de decision Bayesienne a unevignette, et afin d’eliminer des vignettes proches d’une position ou un visage adeja ete detecte. La vraisemblance p(x|visage) doit etre superieure a un seuilsans quoi la vignette x est consideree comme un non visage et la vraisemblancep(x|non visage) n’est pas calculee : cette heuristique permet au systeme de seconcentrer sur la classification des non visages les plus ”proches” des visages. Uneheuristique importante est illustree par la figure 3.2(a), ou chaque cercle representeune vignette 16x16 : le parcours de l’image par la retine se fait de haut en bas puisde gauche a droite, et on suppose qu’un premier visage est detecte dans la vignettenote Va. Les vignettes a gauche de la vignette Va ainsi que celles situees au dessusont donc ete classifiees non visage. Dans ce cas, le visage le plus vraisemblableest alors recherche parmi les 49 vignettes situees dans le voisinage 7x7 de Va : enpratique, une partie de ces vignettes a deja ete classifiee non visage, et il ne resteplus que les 24 incluses dans la region A delimitee en rouge. La vignette ayantla vraisemblance p(x|visage) la plus elevee est notee V ∗ dans la figure 3.2(a).Afin d’eliminer les detections se recouvrant dans l’image originale, la region Bcorrespondant aux vignettes situees 15 pixels a droite (celle de gauche ont deja eteeliminees), au dessus ou en dessous de V ∗ ne sont pas parcourues par le detecteur,

Page 176: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

146 Methodes de fusion pour la localisation du visage

A B C

16

16

(a)(a) (b)(b)16

31

Va

V*

A

B

( , )

1 ,Ax y AA

I x yN

( , )( , )

1,

A

Ax y AA

I x y

m I x yn

région homogèneA B C Bm m ou m m

Statistiquesdu bloc A

Critère d’exclusion :

Fig. 3.2 – (a) Arbitrage entre detections multiples. Chaque cercle correspond aune vignette dans l’image originale : un visage est detecte a la position Va, le visageayant la vraisemblance la plus elevee dans le voisinage A est la vignette V ∗. Lesvignettes de la region B ne sont pas evaluees. (b) Critere d’exclusion des regionshomogenes.

et sont d’office classifiees non visage. Cette elimination est aussi realisee d’uneechelle a l’autre en reduisant la taille de la region B d’un a deux pixels. L’interetest double : moins de vignettes sont a classifier, et il n’y a pas besoin d’arbitrer entredes detections multiples dans un meme endroit de l’image. Une autre heuristiqueplus simple est aussi utilisee avant de chercher a classifier une vignette : elle consistea inspecter la vignette au niveau des yeux en s’appuyant sur les statistiques destrois regions appelees A,B et C dans la figure 3.2(b). Les moyennes µA, µB, µC desniveaux de gris de chacun de ces blocs sont calculees, puis, pour chaque bloc, lavaleur moyenne des pixels (mA, mB, ou mC) ayant un niveau de gris superieur auniveau de gris moyen du bloc concerne est calculee. Si mA ≤ κmB ou mC ≤ κmB

(κ ∈ [0 1] est un facteur de controle), on considere que les yeux sont absents et lavignette est classifiee non visage.

Page 177: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.1 Fusion d’information 147

3.1.2.3 Fusion d’experts traitant des representations heterogenes

Huang & Shimizu [HS06][12], inspires par les travaux de Liu, construisent troisexperts, des reseaux de neurones polynomiaux ayant pour entree des representationsdifferentes d’une vignette 20x20 pixels. Le premier expert Eb est le reseau de neu-rones polynomial decrit dans [HSK04][13] (voir p.18) s’appuyant sur un vecteurcaracteristique X de d = 368 elements concatenant les 4 representations de Gaborde la vignette. Une analyse en composantes principales de la base des visages pro-jette le vecteur caracteristique dans un sous espace propre de dimension p, et lepoint y obtenu est classifie par le reseau de neurones en fonction de la sortie f(x)deja abordee au chapitre 1.1.2 :

f(x) = s( p∑

i=1

wiyi +

p∑i=1

p∑j=1

wijyiyj + w0 + wεε(x))

Les deux autres experts s’appuient sur la meme approche, projection d’un vecteurcaracteristique par ACP puis classification par un reseau de neurones polyno-mial, mais sur des representations differentes de l’image. L’expert Eg s’appuie surune decomposition directionnelle du champ de gradient de la vignette pre-traitee.Le pre-traitement est celui applique par Sung&Poggio [SP98b][14] : soustractionpar la surface d’intensite ajustee lineairement aux niveau de gris de la vignette,suivie d’une egalisation d’histogramme. Le champ de gradient G = [Ix Iy]

T del’image est ensuite evalue a l’aide d’un filtre de Sobel. Une base de 8 vecteurs{ei}8i=1 decrivant les huit directions du code de Freeman est employee. Un pixelen (x, y) dont le vecteur de gradient G est compris entre deux directions, parexemple e1 et e2, est decompose dans cette base de deux vecteurs (non ortho-gonaux), G = [G1 G2]

T . G1 est assigne a la position (x, y) d’un tableau 20x20representant la direction 1 ; de meme l’element (x, y) d’un tableau representantla direction 2 a pour valeur G2. Cette decomposition directionnelle du champ degradient de la vignette conduit a huit tableaux 20x20. Dans un souci de reductionde dimension, les tableaux correspondant a des directions opposees sont addi-tionnes : quatre tableaux sont obtenus, et reduits a la taille 10x10 par moyennesur un voisinage 2x2. Comme pour la representation utilisant les filtres de Ga-bor, huit pixels de bords de ces tableaux sont masques. Le tableau correspondanta la direction verticale, juge peu stable, est remplace par celui des niveaux degris de la vignette sous-echantillonnee d’un facteur 2. Le vecteur caracteristique

[12] L.-L. Huang and A. Shimizu. A multi-expert approach for robust face detection. PatternRecognition, 39(9) :1695–1703, 2006.

[13] L.-L. Huang, A. Shimizu, and H. Kobatake. Classification-based face detection using gaborfilter features. Proceeding of the 6th IEEE International Conference on Automatic Faceand Gesture Recognition, 00 :397–402, 2004.

[14] K-K. Sung and T. Poggio. Example-based learning for view-based human face detection.IEEE Transactions on Pattern Analysis and Machine Intelligence, 20(1) :39–51, 1998.

Page 178: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

148 Methodes de fusion pour la localisation du visage

4

4

4

4

20

20

9

9

Filtres de Haar 2D

Projectionverticale

19

0

( , )y

Iv I x y

19

0

( , )x

Ih I x yProjectionhorizontale

9

9

Représentationsen ondelettes

2x81 coefficientsd’ondelettes

2x20 éléments

Sous échantillonnage10x10 éléments

17

17

Niveau 0

Fig. 3.3 – Les representations de l’image exploitees par l’expert Eh

classifie (apres analyse en composante principale) par l’expert Eg est obtenu enconcatenant les valeurs de ces quatre tableaux : il est de dimension 368. Le troisiemeexpert Eh s’appuie sur un vecteur caracteristique de dimension 302 concatenantplusieurs representations de la vignette, illustrees par la figure 3.3. 40 elementsde ce vecteur caracteristique proviennent des projections verticale et horizontaledes niveaux de gris, 100 elements sont produits par les niveaux de gris obtenus parsous-echantillonnage de la vignette d’un facteur 2. Enfin les derniers 162 elementsde ce vecteur caracteristique sont les coefficients obtenus par une transformee enondelettes de Haar 2D (voir aussi figure 1.3). Plusieurs methodes de fusion dessorties des trois experts ont ete testees de maniere informelle par les auteurs, tellesque le vote majoritaire (les sorties sont alors prealablement seuillees), le produitdes trois sorties, ou leur somme ponderee, mais les meilleures performances sontobtenues par une simple moyenne. Deux architectures sont proposees par les au-teurs : une architecture parallele et une architecture hybride, illustrees par la figure3.4. La figure 3.4(a) represente l’architecture hybride : un module supplementaireest employe en preambule aux experts. Il calcule la distance Euclidienne entre lavignette appliquee en entree du systeme et un prototype de visage, moyenne desexemples d’apprentissage. Si cette distance est superieure a un seuil, la vignetteest classifiee non visage, sinon le premier expert Eh est appele. Une reponse po-sitive de Eh active l’expert Eg, et la sortie des deux experts est fusionnee : si la

Page 179: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.1 Fusion d’information 149

DistanceEuclidienne Eh Eg Eb

Vignette20x20

DE<T0?

Eh

Eb

fh>T1? fg+fh>T2 ? fg+fh+fb>T3 ?

+ +

Non visage

O

N

Vignette20x20

Visage

O O O

fg+fh+fb>T ?Eg +

N N N

(b)(b)

(a)(a)

VisageO

N

Non visage

Fig. 3.4 – Assemblee d’experts : (a) architecture hybride (b) architecture parallele

somme de deux sorties est superieure a un seuil, la sortie du troisieme expert estfusionnee avec celle des deux premiers experts. Si la somme des trois sorties estsuperieure a un seuil, le visage est classifie visage. Dans le cas de l’architectureparallele, representee en figure 3.4(b), cette derniere regle est la seule utilisee. Unpoint interessant de cet article est que l’arbitrage entre des detections multiplesau voisinage d’un meme visage se fait en choisissant la vignette obtenant le scorele plus elevee apres fusion des trois experts. Une meme base de 29.900 visages,synthetisees a partir de 2900 exemples reels, est utilisee pour apprendre les troisexperts. La base de non visages est differente pour chaque expert et est construitepar une procedure de boostrapping, les experts etant appris independamment. Unconsensus entre les experts est ainsi attendu dans le cas d’une vignette contenantun visage, contrairement au cas d’un non visage, ce qui permet de reduire lesfausses alarmes. Les deux architectures sont testees sur un sous ensemble de 109images de la base CMU contenant au total 487 visages (des images contenant desvisages trop grands ou trop petits, et des images utilisees pour produire les basesde non visages sont exclues). Un meme taux de detection de 88.5% est obtenu,avec 39 faux positifs pour l’architecture hybride et 41 pour la fusion parallele. Ace niveau de fausses alarmes, une detection de visages s’appuyant sur chacun desexperts utilise seul obtient un taux de detections inferieur de 13% (expert Eg)a 17% (expert Eh). Les deux architectures apportent ainsi une amelioration sen-siblement egale des performances des detecteurs de base, toutefois l’architecturehybride permet de reduire le temps de traitement d’une image de maniere signifi-

Page 180: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

150 Methodes de fusion pour la localisation du visage

cative : la distance Euclidienne permet d’eliminer au prealable de l’ordre de 75%des vignettes, et les experts sont actives successivement par ordre decroissant decomplexite. Sur la base MIT de Sung&Poggio (23 images, 149 visages) un taux dedetection de 92% est obtenu pour 0 faux positifs.

Froba & Zink [FZ01][15] combinent une mesure de similarite entre la directiondes points de contour d’une vignette et celle d’un prototype, une Transformeede Hough Generalisee operee sur l’image et un modele d’apparence du visage. Lechamp de gradient (Gx, Gy) de l’image est determine par un operateur de Sobel,et les points de contour de l’image sont definis par seuillage du module |G| dugradient. L’orientation Φ est ensuite evaluee pour tous les points de contour etsymetrisee afin de ne garder que l’information de la direction du gradient :

Φ = |tan(Gx, Gy)|

Le gradient d’un point de contour en (x, y) est alors representee par :

V (x, y) = |G|(x,y)ejΦ(x,y)

V (x, y) etant nul pour les pixels n’etant pas des contours. L’orientation des pointsde contour est ensuite traitee par deux modeles : un modele directionnelle et unmodele d’ellipse. L’information directionnelle est calculee sur une vignette 32x40 :un visage moyen est calcule sur une base de 400 exemples (200 visages alignes etnormalises en taille, ainsi que leur image miroir obtenue par symetrie verticale), etla direction du gradient de ces points de contour est enregistree dans un tableau VM

de taille mxn=32x40. La dissimilarite entre l’orientation VI des points de contourd’une vignette, dont le coin haut gauche est en (x, y), et ce prototype est alorsestimee par une operation de correlation :

CO(x, y) =m−1∑i=0

n−1∑j=0

d(VM(i, j), VI(x + i, y + j))

avec :

d(VM(i, j), VI(x, y)) =

{255 sin(|Φ(x, y)− ΦM (i, j)|) si VM(i, j) et VI(x, y) �= 0255 sinon

Ainsi, d est d’autant plus faible qu’un point de contour de la vignette est similaireau point de contour correspondant dans le prototype. Une valeur faible de CO(x, y)correspond alors a une vignette similaire, en terme de direction, au visage moyen,et donc appartient vraisemblablement a la classe. Le second modele de visage estun modele d’ellipse estime par une Transformee de Hough Generalisee sur l’image

[15] B. Froba and W. Zink. On the combination of different template matching strategies forfast face detection. In Multiple Classifier Systems, pages 418–428, 2001.

Page 181: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.1 Fusion d’information 151

Modèledirectionnel

Non visage

seuilNormalisationp(CO|visage)

Modèled’ellipse

Non visage

seuilNormalisationp(CH|visage)

Non visage

seuil

Modèled’apparence

Non visage

seuilNormalisationp(CC|visage)

Non visage

seuil

visage

Fig. 3.5 – Architecture hybride de la fusion des modeles directionnel, d’ellipse etd’apparence

entiere et ayant pour resultat un tableau d’accumulation CH , de meme taille quel’image. Le modele d’apparence traite la luminance I d’une vignette 20x20, cor-rigee par egalisation d’histogramme. Il est constitue par un reseau de neuroneslineaires SNoW [RYA00][16] appris sur une base de 10.000 exemples de visages et50.000 de non visages, sans procedure de boostrapping. Le tableau resultant duparcours de l’image par ce modele est note CC . Une vignette centree en (x, y) estalors caracterisee par la reponse de trois modeles CC(x, y), CO(x, y), CH(x, y), ouCH(x, y) est le nombre de votes obtenu par le pixel central (x, y), tandis que lesdeux autres elements sont une mesure globale sur la vignette. Une premiere heu-ristique est employee : le resultat de chacun des trois experts doit etre inferieura un seuil predefini pour que la vignette puissent eventuellement etre classifieevisage par la suite, sinon elle est classifiee non visage a cette etape. La distributionconditionnelle a la classe visage de la sortie de chaque expert p(C(x, y)|visage) estalors modelisee par un histogramme appris sur une base d’exemples satisfaisantce premier critere. Ces distributions servent a normaliser la sortie de chaque ex-pert. Deux regles sont comparees pour fusionner la reponse des trois modeles, lamoyenne et le produit des valeurs des densites obtenus pour une vignette x. Lesexperts sont fusionnes deux a deux, comme le montre la figure 3.5, le detecteur devisages ayant une architecture hybride. La reponse normalisee du modele d’ellipse

[16] D.R. Roth, M.H. Yang, and N. Ahuja. A SNoW-based face detector. In Neural InformationProcessing Systems, volume 12, 2000.

Page 182: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

152 Methodes de fusion pour la localisation du visage

MethodeTaux dedetection

Nombre defaux positifs

Modele d’apparence 91.5% 141.489Modele directionnel 97.7% 18.341Modele d’ellipse 96% 92.866Fusion par Moyenne 90.8% 567Fusion par Produit 91% 540

Tab. 3.2 – Performances de l’approche de Froba&Zink. Les performances indivi-duelles des trois experts sont considerablement ameliorees par fusion

et du modele directionnel sont fusionnees en premier, ces modeles etant moinscalculatoires que le modele d’apparence :

c(x) =1

2

∑i=H,O

p(Ci(x)|visage) c(x) =

√ ∏i=H,O

p(Ci(x)|visage)

Un nouveau tableau de similarite COH, constitue des valeurs c calculees sur l’image,est ainsi construit. Une seconde heuristique est utilisee : les valeurs de c inferieurea un seuil correspondent a des non visages. Les valeurs du tableau COH superieurea ce seuil sont ensuite fusionnees avec les valeurs correspondantes du tableau CC,par sommation ou produit. Nous rapportons les resultats obtenus par ce detecteur,sur une base de test de 13.122 images, dans le tableau 3.2. On peut voir que lemodele d’apparence utilise seul se traduit par un nombre considerable de fauxpositifs a un taux detection de 91.5% des visages, du fait que les non visages ontete selectionnes arbitrairement. Les performances individuelles des deux autresmodeles sont meilleures, mais avec un nombre de faux positifs encore trop eleve.La combinaison des trois experts, qu’elle se fasse par somme ou par produit, reduitconsiderablement le nombre de faux positifs pour un taux de detection de 91%.

3.2 Combinaison d’algorithmes pour la localisa-

tion du visage : presentation de l’approche

Au chapitre 1, nous avons presente un modele d’apparence du visage, le reseauDiabolo applique a un codage de l’orientation du gradient des points de contourd’une vignette : cet expert a pour sortie l’erreur de reconstruction de la vignetteappliquee en entree, et le parcours d’une image par ce modele a pour resultat untableau note DiaboloMap (voir figure 1.25). Au chapitre 2, nous discutions desmodeles statiques de la teinte chair et particulierement de deux approches : unedetection ad-hoc de la peau par un seuillage rectangulaire dans le plan Cb-Cr,et un modele non-parametrique de teinte chair dans l’espace HSV . Dans cette

Page 183: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.2 Combinaison d’algorithmes pour la localisation du visage :presentation de l’approche 153

section, nous expliquons la methode utilisee pour passer d’un modele bas niveau(celui du pixel) de la couleur peau a un modele global, permettant la constructiond’un tableau de meme taille que DiaboloMap que nous appellerons SkinMap. Nousintroduisons un modele supplementaire du visage : un modele d’ellipse s’appuyantsur la Transformee de Hough Generalisee. Cette transformee est une approchecumulative realise sur l’image entiere et a pour resultat un accumulateur de memetaille que l’image. Cet accumulateur est parcouru par une vignette et une mesurede vraisemblance du modele d’ellipse est determinee pour chaque vignette : ilen resulte le tableau HoughMap, de meme taille que les precedents. Puis, nouspresentons notre approche pour combiner le resultat de chacun de ces experts.

3.2.1 Modele de la peau

Durant nos travaux, le premier modele de teinte chair que nous avons utilise[BPM05b][17] est un detecteur de peau defini par un seuillage dans le plan Cb−Cr

comme nous l’expliquons au chapitre 2 : un pixel est classifie peau ou non peau, etse voit attribue une valeur binaire. Le second est un modele non parametrique de lacouleur peau [BPM06a, BPM06b][18,19], materialise par un histogramme 32x32x32dans le plan HSV : on attribue a chaque pixel une valeur entiere, comprise entre0 et 255, et proportionnelle a la vraisemblance que ce pixel soit de couleur peau.Dans ce chapitre, le detecteur de peau est utilise dans toutes les experiences oula taille du visage est connu, en particulier la determination des parametres desdifferentes methodes de combinaisons. A la section 3.4.6, on cherche a localiserle visage a plusieurs echelles : dans cette partie (uniquement), le modele non pa-rametrique de la teinte chair remplace le detecteur de peau. Le parametre associeau modele de peau dans la combinaison lineaire, methode que nous avons retenueparmi celles qui ont ete testees, n’a pas ete change en consequence, bien que lemodele non parametrique soit plus efficient que le seuillage. En effet, plutot quede recommencer une recherche exhaustive de la meilleure combinaison entre lesmodeles de base du visage, nous avons prefere capitaliser le travail deja effectue,et mettre a profit la modularite de la fusion par somme ponderee. Ce changementstrategique du modele de teinte chair s’explique par deux raisons : le modele decouleur peau le plus performant est retenu, et ensuite le modele non parametriqueretourne pour un pixel donne une valeur quantifiee sur 256 valeurs entieres, comme

[17] R. Belaroussi, L. Prevost, and M. Milgram. Combining model-based classifiers for facelocalization. In Proceedings of the Ninth IAPR Conference on Machine Vision Applications,pages 290–293, 2005.

[18] R. Belaroussi, L. Prevost, and M. Milgram. Algorithm fusion for face localization. Journalof Advances in Information Fusion, 1(1) :27–38, 2006.

[19] R. Belaroussi, L. Prevost, and M. Milgram. Comparison of different combination strategiesfor face localization. In Proceedings of International Conference on Image Processing,Computer Vision, and Pattern Recognition, pages 414–420, 2006.

Page 184: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

154 Methodes de fusion pour la localisation du visage

1N

SkinMap

SkinMapP(peau,x,y) (histogramme HSV)

105 130 135 160b rC C

Fig. 3.6 – Les elements du tableau SkinMap representent la probabilite de couleurpeau moyenne de chaque vignette x

les deux autres modeles du visage que nous utilisons, tandis que le detecteur depeau retourne une valeur binaire. Dans les deux cas, le tableau SkinMap est obtenupar fenetre glissante, en calculant la valeur moyenne de la probabilite de couleurpeau contenue dans une vignette mxn=13x17, comme le montre la figure 3.6.

3.2.2 Modelisation de l’ovale du visage par Transformee deHough Generalisee

Introduite par Paul Hough et brevetee par IBM en 1962 [Hou62][20], la Trans-formee de Hough etait a l’origine appliquee a la detection de trajectoires de par-ticules dans une chambre a bulle. La methode, decrite a la communaute visionpar Rosenfeld [Ros69][21], exprime la recherche de points alignes par une rechercheequivalente de droites concourantes dans un espace de parametres. La transfor-

[20] P.V.C. Hough. Methods and means for recognizing complex pattens. U.S. Patent 3 069654, December 1962.

[21] A. Rosenfeld. Picture Processing by Computer. Academic Press, 1969.

Page 185: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.2 Combinaison d’algorithmes pour la localisation du visage :presentation de l’approche 155

mation a ete etendue a la detection de courbes parametrees par Duda et Hart[DH72][22] dont la formulation est explicitee dans les paragraphes suivants. Ballard[Bal81][23] generalise la methode au cas de contours d’une forme quelconque.

La Transformee de Hough est depuis un outil classique dans le domaine dela vision artificielle. Le principe de la transformation est d’etablir une projectionentre l’image et l’espace des parametres de la forme recherchee. Elle permet ladetection de droites, de cercles ou d’ellipses, et peut etre appliquee a des objetsplus complexes. Elle est particulierement robuste aux bruits parce que cumulative :il est peu probable que plusieurs points de contour (plus de deux) dus aux bruitsvotent pour un meme point de l’espace des parametres. Elle est aussi robuste auximperfections et manques de la forme recherchee.

3.2.2.1 La Transformee de Hough

La Transformee de Hough Standard est une methode classique de detectionde droites dans une image. Dans un repere cartesien, une droite d’equation y =ax + b peut etre parametree par les coordonnees polaires (ρ0, θ0) de la projectionorthogonale K de l’origine O sur la droite : voir figure 3.7. La representationnormale [DH72][22] de cette droite est :

ρ0 = x cos θ0 + y sin θ0

Le plan (x, y) definit l’espace d’observation, l’espace des parametres (ρ, θ) est ap-pele espace de Hough. Une droite de l’espace d’observation correspond alors a unpoint de l’espace de Hough. Soit un point I = (xI , yI) = ρI(cos θI , sin θI) de l’es-pace d’observation. Les droites D(ρ, θ) passant par I verifient :

ρ = xI cos θ + yI sin θ

soit apres linearisation :ρ = ρI cos(θ − θI)

Ainsi, le point I de l’espace d’observation correspond a une sinusoıde dans l’es-pace de representation. Des points d’une meme droite dans l’espace d’observationcorrespondent a des sinusoıdes qui s’intersectent en un meme point dans l’espacede Hough. Reciproquement, un point de l’espace des parametres correspond a unedroite dans l’espace d’observation. Des points d’une meme sinusoıde dans l’es-pace des parametres correspondent a des droites secantes en un meme point dansl’espace d’observation. Pour detecter les lignes dans une image, une detection de

[22] R.O. Duda and P.E. Hart. Use of the hough transformation to detect lines and curvesin pictures. In Communications of the Association for Computing Machinery, volume 15,pages 11–15, 1972.

[23] D.H. Ballard. Generalizing the hough transform to detect arbitrary shapes. Pattern Re-cognition, 13 :111–122, 1981.

Page 186: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

156 Methodes de fusion pour la localisation du visage

x

y

O

K

0

0

D 1(y=ax+b) D 2

I

D2 D1

Espace d’observation Espace de Hough

I

0tan2

a

0

0sinb

0/ 2

J

J

D1 est à l’intersection des sinusoïdes de I et J1I et J D

0

0

Fig. 3.7 – Dualite entre espace d’observation et espace de Hough

contours est operee au prealable. L’image binaire des points de contour constituel’espace d’observation. L’espace de Hough est materialise par un tableau accumu-lateur dont chaque case represente une droite. La Transformee de Hough Standardconsiste a determiner, pour chaque point de contour, toutes les droites (ρ, θ) pas-sant par ce point, et les points correspondant a ces droites dans l’espace de Houghincrementent l’accumulateur. Les valeurs de l’accumulateur les plus elevees corres-pondent aux droites contenant le plus de points de contour et sont extraites.

Plusieurs variantes de cette transformation existent [SL05, KHXO95][24,25], telleque la Transformee de Hough Probabiliste [KEB91][26], dans laquelle les contourssont selectionnees de maniere aleatoire, ou encore la Transformee de Hough Com-binatoire [BTS90][27], ou chaque couple de points de contour votent pour la droite

[24] J. Song and M.R. Lyu. A hough transform based line recognition method utilizing bothparameter space and image space. Pattern Recognition, 38(4) :539–552, April 2005.

[25] H. Kalviainen, P. Hirvonen, L. Xu, and E. Oja. Probabilistic and non-probabilistic houghtransforms : overview and comparisons. Image and Vision Computing, 13(4) :239–252,1995.

[26] N. Kiryati, Y. Eldar, and A.M. Bruckstein. A probabilistic hough transform. PatternRecognition, 24 :303–316, 1991.

[27] D. Ben-Tzvi and M.B. Sandler. A combinatorial hough transform. Pattern RecognitionLetters, 11(3) :167–174, 1990.

Page 187: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.2 Combinaison d’algorithmes pour la localisation du visage :presentation de l’approche 157

correspondante dans l’accumulateur. L’utilisation de la direction du gradient descontours [OC73, KBS75][28,29] permet de reduire l’ensemble des contours votants,ameliorant la detection et accelerant les traitements.

Le meme principe peut s’appliquer a d’autres types de courbes parametrees.Ainsi la detection d’un cercle necessite de determiner trois parametres [DH72][22] :la position du centre a = (ax, ay) et le rayon r du cercle. L’accumulateur est alorsun tableau a 3 dimensions, axxayxr. Chaque section r de l’accumulateur correspondaux coordonnees des centres de cercles de rayon r, leur contenu est le nombre devotes c’est-a-dire le nombre de points de contour par lesquels ces cercles passent.Pour chaque points x de contour, les cercles (a, r) passant par x incrementent lacase correspondante de l’accumulateur. Un point de contours de l’image projetedans l’espace des parametres a trois dimensions correspond donc a un cone. Unseuillage de l’accumulateur permet alors de determiner le centre et le rayon descercles presents dans l’image. Le nombre de cercles de rayon r passant par un pointde contour etant proportionnel a r, le seuil a appliquer a l’accumulateur est aussiproportionnel a r.

Kimme & al [KBS75][29] emploient la direction du gradient pour determiner lescercles passant par un point de contour. En effet, comme le montre la figure 3.8,si un point de contour x = (x, y) appartient a un cercle C de rayon R dans l’imagedes contours, le gradient �n des niveaux de gris de l’image en ce point est dirigevers le centre de C. La figure 3.8 illustre la section r = R de l’accumulateur : lescarres noirs correspondent aux cases pour lesquelles le point x vote si l’orientationdu gradient n’est pas utilisee. Ce sont les centres des cercles de rayon R passantpar x. Le carre rouge correspond a la case de l’accumulateur pour laquelle le pointx vote en tenant compte de l’orientation de son gradient. Dans l’espace de Hougha 3 dimensions, la representation d’un point de contour est alors reduite a unedroite. Le terme Transformee de Hough Generalisee peut s’appliquer, selonles auteurs, au cas ou l’orientation des contours est utilisee ou bien pour designerla detection d’autres courbes que des droites, il n’y a pas vraiment de consensusdans la litterature [Mai85][30].

Le cas d’une ellipse necessite d’etablir une projection entre l’image et un es-pace de Hough a 5 dimensions : deux pour le centre de l’ellipse, deux pour lalongueur du grand et du petit axe, et un parametre d’orientation. Cette approchen’est pas utilisee car l’espace de parametres est alors trop grand pour obtenir desaccumulations significatives et statistiquement pertinentes. Le temps de calcul et

[28] F. O’Gorman and M.B. Clowes. Finding picture edges through collinearity of feature points.International Journal of Joint Conference on Artificial Intelligence, pages 543–555, 1973.

[29] C. Kimme, D. Ballard, and J. Sklansky. Finding circles by an array of accumulators.Communications of the Association for Computing Machinery, 18(2) :120–122, 1975.

[30] H. Maitre. Un panorama de la transformation de Hough. Traitement du Signal, 2(4) :305–317, 1985.

Page 188: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

158 Methodes de fusion pour la localisation du visage

xn

r = R

ax

ay

Fig. 3.8 – Section r = R de l’accumulateur : le point x est un point de contourde l’image traitee, les noeuds de la grille correspondent aux elements de l’accumu-lateur. Les centres des cercles de rayon R passant par x sont representes par descarres, le carre rouge est le centre vers lequel pointe le gradient

la memoire necessaire a cette operation sont de plus prohibitifs. Le probleme estgeneralement decompose en identifiant d’abord les centres possibles d’ellipses, puisen determinant les trois autres parametres associes.

3.2.2.2 Modelisation de l’ovale du visage par THG

Notre approche consiste a modeliser la forme ovale du visage par une ellipsed’excentricite donnee et dont le grand axe est parallele a l’axe vertical y. Cetteapproche est appropriee pour un visage de face dont les proportions sont connues.Dans cette section, nous presentons la maniere dont les points de contours sontdefinies ainsi que l’orientation du gradient. Une structure simplifiee de la Trans-formation de Hough Generalisee appliquee a la modelisation d’ellipse est ensuitedecrite.

Estimation du champ de gradient de l’image La premiere etape de ladetermination du gradient d’une image monochrome I consiste en un lissage dubruit qu’elle contient. Ce lissage est effectue en convoluant l’image par un masqueD 3x3 et resulte en une image Ifiltree = I⊗D. Le masque a employe est fonction dela taille de l’ellipse que l’on cherche a modeliser : comme on cherche a modeliserun visage de taille 13x17, choix impose par l’entree du Diabolo, nous reprenons lememe masque que celui utilise pour determiner l’entree du Diabolo (voir equation1.8). La determination du gradient de l’image est la meme que celle implementee

Page 189: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.2 Combinaison d’algorithmes pour la localisation du visage :presentation de l’approche 159

pour une vignette mxn appliquee en entree du Diabolo : la difference dans ceparagraphe reside dans la determination des contours, qui est operee de maniereglobale sur l’image monochrome a l’aide d’un seuil fixe. Le champ de gradient estainsi estime en utilisant les operateurs de Robert. La transformee de Hough etantune methode cumulative, la determination des points de contour implementee nenecessite pas de methode particulierement elaboree : la Transformee de Hough Pro-babiliste ne selectionne ainsi qu’une partie de ces points et de maniere aleatoire.Le gradient horizontal Gx est calcule par la formule (1.9) rappelee ci-dessous :

Gx = Ifiltree ⊗ [1 − 1]

Le gradient vertical est calcule par la formule (1.10) :

Gy = Ifiltree ⊗[

1−1

]

Le gradient du pixel a la position (j,i) de l’image est alors defini par (3.1) :

�G(j, i) =

[Gx(j, i)Gy(j, i)

](3.1)

On omet par la suite les indices de position dans l’image pour plus de clarte. Lemodule du gradient |G| est defini en tous points de l’image :

|G| =√

G2x + G2

y (3.2)

Les points de contours de l’image sont alors determines par un seuillage fixe : lespixels dont le module du gradient est superieur au seuil definissent les points decontour de l’image comme illustre par la figure 3.10. L’orientation n du gradientdes points de contours est alors quantifiee sur N valeurs entieres, en utilisant laformule (3.3) ou la fonction arctan2 est la tangente inverse a quatre quadrantsrepresentee en figure 3.9. Cette figure illustre aussi le resultat de la quantificationsur N=8 valeurs (codage des chaınes de contour de Freeman), pour l’exemple, del’orientation des contours d’un octogone de niveau de gris plus eleve que le fondde l’image (le gradient est oriente du niveau de gris le plus bas vers le plus haut).

n = round

(N

2πarctan2(Gx, Gy)

)modulo N (3.3)

Le seuil sur le module du gradient definissant les points de contour est choisi egala 12. Dans la figure 3.10 un exemple est donne : l’image de gauche est celle dumodule du gradient (les pixels de couleurs chaudes sont ceux de module le pluseleve) et l’image de droite est l’image binarisee obtenue avec ce seuil.

Page 190: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

160 Methodes de fusion pour la localisation du visage

0

/2

=arctan2(y,x)

/2

x

y

0

12

4

56

3

7

Contour

Quantification de l’orientation des contours sur 8 valeurs

Fig. 3.9 – Codage de l’orientation du gradient des contours

Module du gradient Points de contour(en blanc)

Seuillage

Fig. 3.10 – Definition des pixels de contour a partir du module du gradient

Page 191: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.2 Combinaison d’algorithmes pour la localisation du visage :presentation de l’approche 161

Seuil sur le module

Nombre de visagescorrectement localisé

sur 168 images

4 6 8 10 12 14 16 18100

120

110

105

115

125

Fig. 3.11 – Le seuil sur le module du gradient definissant les contours optimise laTransformee de Hough Generalisee sur une base d’apprentissage de 168 images

Ce seuil est determine experimentalement sur une base d’apprentissage de 168images ne contenant chacune qu’un seul visage. Pour chaque image et pour plu-sieurs seuils, une Transformee de Hough Generalisee est realisee, de la maniere ex-pliquee au paragraphe suivant, et la position du maximum du tableau HoughMapdefinie la localisation du visage. On evalue alors le nombre de visages correctementlocalises en fonction du seuil definissant les contours. Le graphique de la figure 3.11est celui du nombre de visages localises en fonction du seuil applique.

Structure simplifiee de la Transformee de Hough Generalisee La formeelliptique du visage est modelisee par une Transformee de Hough Generalisee :les visages sont modelises par une ellipse verticale d’excentricite donnee. La dyna-mique des niveaux de gris de l’image est dans un premier temps etiree lineairemententre 0 et 255. Sur la base d’apprentissage de 168 images, cette operation s’estrevelee plus efficace qu’une egalisation d’histogramme en terme de localisation devisage. L’orientation du gradient de l’image est estimee et quantifiee sur N = 36valeurs entieres, les points de contour sont determines par seuillage du moduledu gradient, puis une Transformee de Hough Generalisee est realisee sur l’imagedes orientations du gradient. Dans le cas de la detection d’ellipse, une structure

Page 192: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

162 Methodes de fusion pour la localisation du visage

AccumulateurLa direction des segments

votants est fonction de l’orientation du gradient

Accumulationdes votes

M

Fig. 3.12 – Transformee de Hough Generalisee appliquee au cas d’une ellipse

simplifiee de cette transformation existe, se basant sur les proprietes geometriquesdes ellipses. La methode consiste a accumuler les votes de tous les pixels d’unsegment partant d’un point de contour, ce segment ayant une direction et unelongueur predefinies fonctions de l’orientation du contour : chaque pixel d’un seg-ment incremente les valeurs d’un tableau de vote accumulant le vote de tous lessegments, l’accumulateur (figure 3.12). Le modele d’ellipse est ainsi memorise parN tableaux, chaque tableau contenant le segment correspondant a une orientation.

3.2.2.3 Application a la localisation du visage dans une image fixe

La position du maximum de l’accumulateur correspond a la position dansl’image du point le plus susceptible d’etre le centre d’une ellipse verticale, dontla longueur du petit axe est egale a 13 pixels et celle du grand axe est egale a17 pixels. La figure 3.13 illustre l’accumulateur obtenu dans le cas d’une imageavec un fond complexe. Une recherche de maximums locaux est alors realisee enconvoluant l’accumulateur avec un filtre de type chapeau mexicain et de taillemxn=13x17. Les coefficients le composant sont de valeurs elevees au centre dufiltre, et diminuent au fur et a mesure qu’on s’en eloigne. Les coefficients les pluseloignes sont negatifs, l’objectif etant de donner plus de poids aux votes accumulesau centre de la retine, et a soustraire la contribution des votes peripheriques. Letableau qui resulte de cette convolution est de taille (L-m+1)x(H-n+1) ou L et Hsont respectivement la largeur et la hauteur de l’image. Nous appelons par la suitece tableau HoughMap : on peut definir la localisation du visage par la position dumaximum de ce tableau, qui est le maximum global de l’accumulateur :

x∗ = arg maxx

HoughMap(x)

Page 193: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.2 Combinaison d’algorithmes pour la localisation du visage :presentation de l’approche 163

Orientationdes contours

Estimation dugradient

Accumulateur HoughMap

Chapeaumexicain

13

17

Coefficients négatifs (en noir)

Coefficients positifs

THG

Fig. 3.13 – Les contours et leur orientation sont determines sur l’image mono-chrome. L’accumulateur est le resultat de la Transformee de Hough Generalisee,et le parcours par une retine (chapeau mexicain) 13x17 conduit au tableau Hough-Map

3.2.3 Presentation generale de la fusion d’experts pour la

localisation du visage

Nous utilisons l’information produite par les trois modeles decrits auparavant :le modele d’ellipse, le modele d’apparence et celui de la teinte chair. Les tableauxde reponses de ces modeles, obtenues par le parcours d’une image par une retinede taille fixe, ont ete nommes respectivement HoughMap, DiaboloMap et SkinMap.Lorsqu’un ou plusieurs de ces modeles sont insuffisant pour localiser le visage, lacombinaison des trois sources d’information peut permettre d’assurer cette tache.La combinaison permet aussi une decision correcte lorsque les trois sources sont enconflit. Dans cette optique, les valeurs de chaque tableau sont ajustees lineairementa l’intervalle [-1 1]. Par commodite d’ecriture, nous designons dans ce chapitrepar H , D et C (C pour chair) les valeurs des tableaux normalises : le H utiliseici n’est en particulier pas relie au canal Hue de l’espace colorimetrique HSV.Une vignette xi,j, de taille mxn et centree a la position (i, j) de l’image, est ainsi

caracterisee par un vecteur �Xi,j a trois composantes constituant ses coordonnees

Page 194: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

164 Methodes de fusion pour la localisation du visage

dans l’espace HDC ainsi defini. Nous constituons des bases d’apprentissage devisages et de non-visages a partir de ces valeurs, le ieme exemple d’une base estalors note �X i.

�Xi,j =

⎛⎝ Hi,j

Di,j

Ci,j

⎞⎠ �X i =

⎛⎝ H i

Di

Ci

⎞⎠ (3.4)

Enfin le vecteur caracteristique d’une vignette x quelconque de l’espace HDC estnote �X. Remarquons que deux points de cet espace sont particuliers : les point Aet B dont les coordonnees sont donnees par les formules (3.5).

A =

⎛⎝ 1−1

1

⎞⎠ B =

⎛⎝ −1

1−1

⎞⎠ (3.5)

En effet, H represente la reponse du modele d’ellipse donc H=1 est la valeuraffectee a la vignette de l’image la plus proche du modele d’ellipse. A l’inverse H=-1correspond a la vignette la moins susceptible d’etre le centre de l’ellipse. Rappelonsque le modele d’apparence se base sur l’erreur de reconstruction : plus cette erreurest elevee et moins la vignette reconstruite ressemble a un visage. La vignette aqui est allouee la valeur D=-1 est donc celle ou le modele d’apparence localise levisage. Le modele de teinte chair est different des precedents car plusieurs sous-image peuvent etre caracterise par C=1 ou C=-1 : c’est le cas notamment lorsquede larges zones de l’image ont une probabilite d’etre de couleur peau eleve oufaible. Le tableau C peut aussi etre entierement nul, dans le cas ou tous les pixelsont la meme probabilite d’etre de couleur peau. Cela dit, la ou les vignettes ayantune valeur de C egale a 1 sont celles qui sont le plus proche d’un visage selon cemodele de couleur peau, a l’inverse des vignettes estampillees C=-1. Ainsi le pointA de l’espace HDC represente une vignette ou les trois modeles sont en accordpour y localiser le visage, tandis que le point B correspond a une vignette pourlaquelle les trois modeles excluent comme localisation possible du visage. Nousreviendrons sur ces deux points lors de l’analyse des resultats de fusion entre cestrois experts. Notre systeme de localisation de visage a une architecture parallelecomme le montre la figure 3.14.

Plusieurs algorithmes de fusion des trois modeles sont proposes dans ce cha-pitre : les approches parametrique et non-parametrique du classifieur Bayesiensont utilisees (section (3.3.1)), un systeme d’inference floue est decrit a la section(3.3.2), de meme que l’approche connexioniste a la section (3.3.3). La section (3.4)est dediee a la comparaison de ces methodes.

Les images dont sont extraits les visages d’apprentissage du Diabolo (sec-tion (1.3.3)) sont mises a contribution pour constituer une base d’apprentissaged’exemples et de contre-exemples. Les exemples sont des triplets (H, D, C) cal-cule sur des sous-images contenant des visages, les valeurs des triplets constituant

Page 195: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.3 Algorithmes de fusion 165

FusionMap

Fusi

on

H

D

CLocalisation du visage

=Maximum de la fusion

Fig. 3.14 – Localisation du visage par fusion : vue d’ensemble

Classes Visages Non-visagesNombre d’exemples 19.579 482.783

Tab. 3.3 – Nombre de visages et de non-visages dans la base d’apprentissage

les contre-exemples sont calcules sur des non visages. Le tableau (3.3) donne lacomposition du corpus d’apprentissage.

3.3 Algorithmes de fusion

Dans cette section, nous proposons plusieurs approches de combinaison destrois modeles de base du visage. Chacun des modeles de base du visage a pourresultat un nombre que nous normalisons, pour une image donnee, lineairemententre -1 et +1 refletant la vraisemblance qu’une vignette contienne le seul visagepresent dans l’image. Les methodes employees sont classiques en fusion de donnees ;ces methodes sont discriminantes car elles modelisent les visages et les non visages.Nous presentons dans cette section ces methodes, incluant un classifieur Bayesien,un systeme d’inference floue et des reseaux neuronaux.

Page 196: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

166 Methodes de fusion pour la localisation du visage

3.3.1 Modele Bayesien : approches parametrique et non-

parametrique

Dans le chapitre 2, la regle de decision Bayesienne est utilisee pour construireun detecteur de teinte chair s’appuyant sur un modele de couleur peau statique.Soit une image de test donnee : apres application des modeles de teinte chair,d’ellipse et d’apparence, une vignette x est caracterisee, apres normalisation desreponses des modeles sur toute l’image par un vecteur a trois composantes �X.La regle de decision Bayesienne enonce que cette vignette est classifiee visage sil’inegalite (3.6) est verifiee :

p( �X|visage)

p( �X|non-visage)≥ τ (3.6)

ou p( �X|visage) et p( �X|non-visage) sont les fonctions de densite de probabiliteconditionnelle respectivement pour la classe visage et la classe non-visage. Le seuilde decision τ est generalement estime sur une base d’apprentissage. Cette regleest utilisee si on cherche a detecter les visages. La tache a accomplir etant lalocalisation de visages (le nombre de visages presents dans la scene etant alorsconnu) et non leur detection, aucune estimation de ce seuil n’est realisee. Se placantdans le cas ou un seul visage est present dans l’image, sa position x∗ dans l’imagedoit etre celle qui maximise le rapport de vraisemblance (3.7) :

x∗ = arg maxx

p( �X|visage)

p( �X|non-visage)(3.7)

Les densites de probabilite conditionelle sont estimees de maniere parametrique etnon-parametrique en utilisant la base d’apprentissage (voir tableau (3.3) ).

La methode non-parametrique employee est la technique des histogrammes.Pour chacune des classes visage et non-visage, un histogramme a trois dimensionsdes exemples d’apprentissage est calculee. Du fait du nombre peu eleve d’exemplesde visage disponibles, l’histogramme a un niveau de granularite tres grossier. L’in-tervalle [-1 1] de chaque dimension est partitionne en 5 classes : ces histogrammesse composent alors de 125 cases (53 = 125) et une moyenne de 160 exemples devisage par case est disponible pour l’histogramme estimant la distribution des vi-sage dans l’espace HDC. Pour chaque case, le rapport de vraisemblance est calculepar le rapport des frequences contenues dans les deux histogrammes (visage etnon-visage). L’histogramme qui en resulte, de meme taille, est ajuste a l’inter-valle �0 255� afin de pouvoir etre decrit par un tableau d’entiers codees sur 8bits. Lorsqu’une image de test est traitee, les reponses des trois modeles sont cal-cules a toutes les positions de l’image (voir figure 3.14). Pour chaque vignette, le

point correspondant �X de l’espace HDC est calcule et la case de l’histogramme

Page 197: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.3 Algorithmes de fusion 167

3D modelisant la vraisemblance auquel il appartient est determinee : on en deduitla vraisemblance de la vignette. La retro-projection de l’histogramme sur l’imageentiere est le tableau FusionMap apparaissant a la figure 3.14 et a partir duquella position du visage est decidee.

L’approche parametrique consiste a modeliser la distribution des visages et desnon-visages dans l’espace HDC par une Gaussienne. La localisation du visage x∗

est alors definie par la position de la vignette x ayant le plus grand rapport devraisemblance dont le logarithme, a une constante pres, est donne par la formule(3.8) :

∆(x) =(�X − �µv

)TΣ−1

visage

(�X − �µv

)− (�X − �µnv

)TΣ−1

non-visage

(�X − �µnv

)(3.8)

ou v indexe les visage et nv les non-visages. Les parametres (Σ, µ) des Gaussiennessont la moyenne et la matrice de covariance de chaque classe estimees sur la based’apprentissage. Par exemple, si �X i designe le ieme exemple sur les Nvisages d’ap-prentissage de la classe visage :

�µv =1

Nvisages

Nvisages∑i=1

�X i

Σvisage =1

Nvisages

Nvisages∑i=1

(�X − �µv

)T ( �X − �µv

)La localisation du visage est alors definie par lequation (3.9) suivante :

x∗ = arg maxx

∆(x) (3.9)

et dans le cas particulier ou les non visages ne sont pas modelises, ∆(x) se reduitau premier terme de l’equation (3.8), c’est-a-dire au carre de la distance de Maha-lanobis.

3.3.2 Systeme d’inferences floues

Rappelons qu’une vignette contenant un visage est idealement caracterisee parun grand nombre de vote H issues de la Transformee de Hough Generalisee, unefaible erreur de reconstruction D par le Diabolo et une forte proportion C depixels de peau. Pour compiler ces informations, l’approche classique des ensemblesdefinirait un seuil, par exemple sur H , au-dela duquel H est considere comme grandet petit sinon. L’ensemble Hgrand = {H, |H ≥ seuil} des valeurs de H elevees etHpetit = {H|H < seuil} l’ensemble des petites valeurs de H sont alors separespar cette frontiere bien precise : une valeur de H legerement en dessous du seuilest consideree comme petite, ce qui ne correspond pas a l’intuition. L’approche

Page 198: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

168 Methodes de fusion pour la localisation du visage

la logique floue est plus fexible et coherente avec le langage naturel en admettantune appartenance graduee a chaque classe [Zad73][31]. Elle introduit le degre d’ap-partenance d’une valeur H aux classes grand et petit qui sont alors des ensemblesflous definis par (3.10) :

Hgrand = {H, µgrand(H)} et Hpetit = {H, µpetit(H)} (3.10)

1-1

µgrand

H

µ = degréd’appartenance

H = 0.60

0

1

µpetit(H) = 0.1

µpetit

µgrand(H) = 0.8

Resultats de la fuzzification

10

µvisage

Degré devérité

Degré de support

0.5

0

1

µnon-visageµincertain

Fig. 3.15 – Fonctions d’appartenance des ensembles flous Hgrand et Hpetit (agauche), et des ensembles de sortie visage, non-visage et incertain (a droite)

La figure 3.15 represente les fonctions d’appartenance µgrand et µpetit : unevaleur de H = 0.6 appartient a l’ensemble grand avec un degre de verite de 80%et a l’ensemble flou petit avec un degre de de 10%. C represente la proportionde pixels de couleur peau dans une vignette : comme H, des valeurs elevees deC correspondent a une forte probabilite de presence du visage a cette positionde l’image. La valeur D est celle de l’erreur de reconstruction normalisee de lavignette par le Diabolo : plus elle est petite et plus la vignette est vue comme unvisage par le Diabolo. On definit pour ces trois sources deux ensembles flous grandet petit pour caracteriser l’echelle de leur valeur. Les fonctions d’appartenancedes ces ensembles sont tracees dans le graphique de la figure 3.15 : ce sont desGaussiennes centrees respectivement en -1 et +1.

La fusion des trois sources se fait par un systeme d’inferences floues de typeMamdani [MA99][32], comme nous l’avions vu au chapitre 2.3. Un systeme d’inferencesfloues necessite de :

– fuzzifier les entrees,– formuler un ensemble de regles linguistiques et d’operateurs logiques,– agreger le resultat de plusieurs regles floues.

[31] L.A. Zadeh. Outline of a new approach to the analysis of complex systems and decisionprocess. IEEE Transactions on Systems, Man and Cybernetics, 3 :28–44, 1973.

[32] E. H. Mamdani and S. Assilian. An experiment in linguistic synthesis with a fuzzy logiccontroller. International Journal of Human-Computer Studies, 51(2) :135–147, 1999.

Page 199: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.3 Algorithmes de fusion 169

µhigh(H=0.6)=

0.8

10

µvisage

Degré de vérité

Degré de support

0.5

0

1

Centre de gravité

Defuzzification :µ(visage) = 70%

Fig. 3.16 – Methode d’implication floue de Mamdani

Rappelons aussi que le resultat d’une inference floue a pour entree un nombre,valeur de la variable linguistique utilisee, par exemple H = 0.6, et pour sortie unensemble flou. Considerons l’inference suivante :

si H est grand ALORS la vignette est un visage

La proposition H est grand (la premisse ou l’antecedent de la regle) a pour H = 0.6un degre de verite de 80%, la consequence de la regle est la vignette est un visage, etl’ensemble flou visage est definie par une fonction d’appartenance µvisage. La valeurde l’antecedent, ici 80%, est alors le degre de support de la regle. L’implication alorsa pour resultat un ensemble flou defini, selon la methode de Mamdani, par unefonction d’appartenance, troncation de la fonction µvisage par le degre de support :max(µvisage, 0.8), comme l’illustre la figure 3.16. Cet ensemble flou peut alors etredefuzzifie, par exemple en calculant l’abscisse du centre des masses de la surfacesituee sous la courbe d’appartenance ainsi majoree (en gris sur la figure 3.16), cenombre est alors interprete comme le degre d’appartenance a la classe visage.

Trois ensembles flous definissent les sorties possibles d’une inference floue : celuides visage, des non-visage et l’ensemble incertain modelisant l’indeterminationquant a la classe d’une vignette. Les fonctions d’appartenance de ces ensemblesflous sont des Gaussiennes, centree respectivement en +1, 0 et 0.5 : se referer a lafigure 3.15.

Maintenant considerons la proposition suivante ayant plusieurs premisses :

si H petit OU D grand OU C petit ALORS la vignette est indeterminee

Page 200: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

170 Methodes de fusion pour la localisation du visage

L’operateur flou OU est defini mathematiquement a partir de la t-conorme maxi-mum. Le maximum des trois degres d’appartenance est calcule : ce maximum estalors le degre de support de la regle pour l’ensemble floue incertain.

Fig. 3.17 – Application de l’operateur flou “OU” sur trois entrees

Ainsi dans la figure 3.17, le triplet (HDC) = (0.6 0.8 -0.2) caracterise unevignette donnee : pour chaque source, le degre d’appartenance correspondant dansla premisse est calcule. L’operateur OU retient le plus grand de ces trois degrescomme degre de support de la regle pour borner la fonction d’appartenance del’ensemble incertain. L’operateur ET a deja ete rencontre au chapitre 2.3 ou nousl’avions defini a partir de la t-norme minimum.

Une regle seule menerait a un localisateur peu performant. Plusieurs systemesd’inferences floues ont ete etudies sur la base d’apprentissage et celui amenant auxmeilleurs taux de localisation de visage sur cette base est le suivant :

– si H grand et D petit et C grand alors la vignette est un visage.– si H petit et D grand alors la vignette est un non-visage.– si H petit ou D grand ou C petit alors la vignette est indeterminee.

Le meme poids est alloue a chaque regle, et l’ordre des regles est indifferent car ellessont evaluees en parallele. On notera que le modele de teinte chair n’est pas utilisepar la derniere regle, du fait que ce modele statique induit trop de faux positifset de vrais negatifs : il est moins efficace que les deux autres pour caracteriser unnon-visage.

Le diagramme de la figure 3.18 recapitule l’ensemble des operations des etapesprecedemment decrites. A cette etape du raisonnement, trois ensembles flous sontdetermines : ils sont agreges en un dernier ensemble, dont la fonction d’apparte-nance est le maximum des trois fonctions definissant ces espaces. Cet ensemble estfinalement defuzzifie par recherche du centre des masses, voir figure 3.19.

Page 201: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.3 Algorithmes de fusion 171

D

ET=

min

D S

µ(visage)

µincertain

OU=

max

µ(visage)

µnon-visage

H

Houghpetit

H

Houghpetit

Houghgrand

H SD

Diabolopetit

Diabolopetit

Diabologrand

Chairgrand

Chairpetit

µ(visage)

µvisage

ET=

min

Règle 1

Règle 2

Règle 3

Fig. 3.18 – Diagramme du systeme d’inferences floues

µunknownµface µnon-face

Defuzzification :µ(visage) = 30%

µaggregate

µ(visage)

0 1

Fig. 3.19 – Agregation des ensembles flous de sortie et defuzzification

Page 202: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

172 Methodes de fusion pour la localisation du visage

11

si visageSortie

si non visage

Sortie

H

D

C

Fig. 3.20 – Combinaison des trois modeles avec un perceptron multi-couche

3.3.3 Approches neuronales et somme ponderee

Les modeles connexionnistes ont ete explores : les trois sources normaliseesH, D et C constituent les entrees d’un perceptron multi-couche dont les neuronescaches ont des fonctions d’activation sigmoıdales, et ayant un neurone de sortie afonction d’activation lineaire.

Une partie de la base d’apprentissage (50 images) est reservee a l’evaluationde la meilleure architecture du reseau de neurones : 12 713 exemples de visages et341 316 non-visages sont alors utilises pour l’apprentissage et la validation croisee.Le reseau est appris par descente du gradient avec pas adaptatif et arret parvalidation croisee. La fonction de cout utilisee est la somme, sur l’ensemble desexemples d’apprentissage, du carre de la difference entre la sortie calculee et cellequi est desiree.

Le reseau est appris a des fins de classification : la sortie desiree est egale a 1 sil’entree (H D C) caracterise un visage, et -1 sinon. Apres apprentissage, la sortiedu reseau de neurones est une valeur comprise entre -1 et 1. Le reseau est appliquea toutes les positions de l’image, produisant le tableau FusionMap par l’approcheconnexioniste.

L’architecture optimale du reseau est recherchee de maniere exhaustive en com-parant les taux de localisation de visage sur 50 images, inutilisees durant l’appren-tissage et ne contenant qu’une seule personne. Pour chaque architecture evaluee(i.e. nombre de neurones caches), plusieurs initialisations des poids du reseau sontrealisees. Cette recherche montre que la meilleure architecture du perceptron necontient qu’un seul neurone : celui de la sortie. Le fait d’ajouter jusqu’a troisneurones caches ne diminue pas exceptionnellement le taux de localisation, mais

Page 203: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.3 Algorithmes de fusion 173

l’architecture la plus simple est naturellement choisie. Elle correspond a une sommeponderee des entrees. Le resultat de la fusion des trois sources calculee sur la vi-gnette centree en (x,y) est alors defini par la formule (3.11) :

FusionMapx,y = aHx,y + bDx,y + cCx,y (3.11)

avec a = 0.2280, b = −0.2620 et c = 0.1229. Deux points sont a interpreter dansla formule (3.11) : le signe du coefficient b et la faiblesse du poids c compare auxpoids a et b qui sont du meme ordre de grandeur en valeur absolue. Le poids b estnegatif du fait que la reponse du Diabolo est idealement d’autant plus petite que lavignette correspond a un visage, contrairement aux modeles d’ellipse et de teintechair. Le poids c est de l’ordre de deux fois plus petit que a et b car le modele deteinte chair utilisee en apprentissage (seuillage rectangulaire dans le plan Cb-Cr)est peu elabore.

Page 204: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

174 Methodes de fusion pour la localisation du visage

3.4 Resultats experimentaux

Dans le but de comparer les differentes approches de fusion, la base ECU[PBC05] est utilisee : le taux de localisation des ces methodes sur une base detest de 1353 images couleur qui n’ont pas ete utilisee en l’apprentissage. Chacunedes images ne contient qu’une seule personne, et le rectangle englobant l’interieurdu visage est de taille fixee, egale a celle de la fenetre glissante soit 13x17. La lo-calisation du visage se fait donc a une seule echelle, ce qui correspond a connaıtrela distance entre la personne et la camera. Une fois la methode de combinaisonchoisie, trois sequences d’images, sur lesquelles nous quantifions les performancesde notre approche de la poursuite de visages au chapitre 4, sont testes par cetteapproche. L’application a des images contenant plusieurs visages est presentee etquantifiee : dans ce cas, la localisation de tous les visages devient un probleme deN localisations, N etant connu. Pour le cas des visages de taille quelconque, une re-cherche a plusieurs echelles est operee et comparee aux performances du detecteurde Viola&Jones.

3.4.1 Mesure de performances sur la base d’images ECU

Il est difficile de comparer entre elles les differentes approches de la detectionde visages. D’abord, les bases de test utilisees par differents auteurs sont assezsouvent differentes. Bien que la base CMU et la base MIT soient devenues desstandards dans ce domaine, les auteurs qui les utilisent comme base de test excluentassez souvent une partie de ces images, soit pour des raisons de taille de visagelimitee, soit pour ne pas prendre en compte des dessins de visages. Tres souvent,une base de test supplementaire est employee afin de confirmer les capacites engeneralisation de l’approche propose, et pour eviter l’ecueil de l’optimisation sur labase de test. L’interet d’une base de test telle que la base CMU est qu’elle contientdes images contenant de zero a un grand nombre de visages, situations auquel doitfaire face un detecteur, et qu’elle presente une grande variete de scenes en termesd’illumination, de qualite image et de bruits. Ensuite, il n’existe pas de metriqueuniverselle permettant de dire si un visage est correctement detecte ou pas, commenous allons le voir. De plus, les parametres de la detection ne sont pas les memesd’une approche a l’autre, en particulier le nombre d’echelles a laquelle le visageest recherche, et le nombre de vignettes scannees par le detecteur, qui depend dela taille de la retine utilisee. Enfin, les auteurs ne donnent assez souvent qu’unseul ou quelques points de la courbe COR du detecteur, c’est-a-dire un taux dedetection accompagne d’un nombre (ou un taux) de faux positifs.

Le probleme de la detection de visages correspond a rechercher le nombre devisages presents dans une scene et a les localiser. La localisation du visage estun probleme simplifie, car le nombre de visage est suppose connu : generalement

Page 205: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.4 Resultats experimentaux 175

Vérité terrain "visage"de la base ECU

Fig. 3.21 – Exemples de la base ECU et verite terrain visage correspondante.

il n’y en a qu’un, mais il peut y en avoir plus. Le probleme est simplifie carplutot que de determiner un seuil ou une frontiere separant les visages et les nonvisages de maniere robuste, il suffit de determiner la position du visage la plusvraisemblable selon un modele. Comme on suppose que le nombre de visage estconnu, des images de test ne contenant pas de visage n’auraient pas de sens enlocalisation de visage. Le probleme de la localisation de visage est different de ladetection en terme de performances : un faux positif correspond toujours a unvisage manque en localisation. Notre approche consistant a localiser le visage dansune image en couleur, la base CMU ne peut, en outre, pas etre utilisee car elleest monochrome. Nous comparerons nos resultats a l’etat de l’art en testant ledetecteur de Viola&Jones sur la meme base de test, la base ECU, en essayant,autant que faire se peut, de conserver les memes conditions.

La base ECU de detection de visages et de pixels de peau a ete cree a l’Uni-versite Edith Cowan [PBC05]. Elle contient trois collections d’images qui nous ontete particulierement utiles durant nos travaux de these : 3.000 images originales encouleur, auxquelles correspondent deux verites terrain, celle de la teinte chair quenous avons deja rencontree a la section 2.2 (voir figure 2.14), ainsi que celle desvisages. La verite terrain des visages correspond pour chaque sujet a un detouragerealise par un operateur humain, comme le montre la figure 3.21. On voit sur lesdeux exemples de cette figure qu’il existe une grande part de variabilite dans ladefinition de cette verite. En particulier dans le cas du sujet chauve, comme il n’ya pas de frontiere precise du visage, ce detourage est relativement subjectif. Il estdifficile de definir une metrique permettant de juger de la precision d’une localisa-tion du visage du fait de cette variabilite. Cela explique pourquoi la plupart desarticles en detection ou localisation de visages ne precisent pas la mesure utiliseepour decider si un visage est detecte [RCBM06][33] : un operateur humain se charged’inspecter les visages candidats et, sur un critere subjectif, de decider lesquels sont

[33] Y. Rodriguez, F. Cardinaux, S. Bengio, and J. Mariethoz. Measuring the performance offace localization systems. Image and Vision Computing, 24(8) :882–893, 2006.

Page 206: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

176 Methodes de fusion pour la localisation du visage

raisonnablement centres sur un visage. Cette remarque est aussi valable pour laquantification des resultats en suivi du visage. Lienhart&al [LKP02][34] considerequ’un visage est correctement detecte si la distance Euclidienne entre le centre duvisage et celui de la detection est inferieure a 30% de la largeur du visage, et si lalargeur de la detection est egale a celle du visage a±50% pres. Yang&al [YKA01][35]

considerent une detection comme correcte si elle contient les yeux et la bouche.Hsu&al [HMJ02][36] considerent que le visage est correctement localise si ces yeux,sa bouche (localises par des approches colorimetriques) et l’ellipse delimitant lescontours du visage (determinee par une transformee de Hough) sont determinesavec une ”certaine” tolerance par rapport a la verite terrain. Dans [GD04][37] unecontrainte supplementaire est ajoutee sur la taille de la vignette : un visage candi-dat est considere comme un vrai positif s’il contient les deux yeux, la bouche et sison aire ne depasse pas celle de la verite terrain de plus de 20%. Nous utilisons cecritere dans les resultats presentes a la section 3.4.6 pour definir une localisationcorrecte du visage. Ce critere nous apparaıt raisonnable parce qu’il couvre bienles differents cas de precision obtenue par les differentes approches en detectionou localisation de visages : cette precision correspond a une localisation de la teteentiere, comme dans [MP97, HMJ02][38,36], et peut aller jusqu’a une localisation del’interieur du visage [HS06, Liu03, RBK98a, FBVC01][12,11,5,6], comme le montrequelques exemples choisis dans ces articles et reproduis dans la figure 3.22.

En pratique, c’est l’application a laquelle est destinee le detecteur, ou le locali-sateur, de visages qui permet de juger de la precision de l’approche implementee.Les approches detectant la position des yeux peuvent par exemple utiliser l’erreurrelative definie par Jesorsky&al dans [JKF01][39] :

deye =max(dl, dr)

‖ Cl − Cr ‖ou Cl et Cr designent les coordonnees vraies du centre de l’oeil droit et de l’oeil

[34] R. Lienhart, A. Kuranov, and V. Pisarevsky. Empirical analysis of detection cascades ofboosted classifiers for rapid object detection. Technical report, Microprocessor ResearchLab, Intel Labs, 2002.

[35] M-H Yang, D. Kriegman, and N. Ahuja. Face detection using multimodal density models.Computer Vision and Image Understanding, 84(2) :264–284, 2001.

[36] R-L. Hsu, M.A. Mottaleb, and A.K. Jain. Face detection in color images. IEEE Transac-tions on Pattern Analysis Machine Intelligence, 24(5) :696–706, 2002.

[37] C. Garcia and M. Delakis. Convolutional face finder : A neural architecture for fast androbust face detection. IEEE Transaction on Pattern Analysis and Machine Intelligence,26(11) :1408–1423, 2004.

[38] B. Moghaddam and A. Pentland. Probabilistic visual learning for object detection. IEEETransactions on Pattern Analysis and Machine Intelligence, 19(7) :696–710, 1997.

[39] O. Jesorsky, K.J. Kirchberg, and R. Frischholz. Robust face detection using the hausdorffdistance. In Proceedings of the Third International Conference on Audio- and Video-BasedBiometric Person Authentication, pages 90–95, 2001.

Page 207: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.4 Resultats experimentaux 177

Liu 2003

Hsu 2002

Rowley 1998Moggadham 1997

Feraud 2001

Huang 2006

Fig. 3.22 – Exemples de visages consideres comme correctement detectes (extraitsde quelques articles).

gauche respectivement, dl et dr la distance de chaque oeil detecte a la verite ter-rain correspondante. Notons que si les yeux sont plus petits que le visage, uneimprecision sur leur position subsiste lors de la construction de la verite terrain(notamment dans le cas de regard en biais ou lorsque un oeil est ferme). Dans lecas ou la taille du visage est connue, une mesure de la precision de la localisationde visage peut etre definie par l’aire de l’intersection entre le rectangle englobantla verite terrain et le rectangle localisant le visage. La taille de ces deux rectanglesetant identique, on mesure ainsi la proportion de verite terrain recouverte par lerectangle localisant le visage : plus cette proportion est proche de 100%, et plus levisage localise est proche de la verite terrain. La figure 3.23(a) donne un exempleou l’image originale de la figure 3.21 a ete reduite de maniere a ce que la tailledu visage soit de 13x17 pixels. La figure 3.23(b) donne des exemples limites devignettes contenant 60% de la verite terrain. Nous utilisons un seuil du taux derecouvrement de la verite terrain de 60% pour definir un visage correctement lo-calise. Cette mesure peut sembler imprecise, mais elle est equivalente a celle deLienhart&al [LKP02][34]. Le taux de recouvrement permet de mesurer la precisiondes resultats : nous analyserons aussi la repartition de ces taux de recouvrementsur la base de test, en fonction de la methode employee. En definissant un visagecomme une vignette recouvrant plus de 60% de la verite terrain, dans l’image dela figure 3.23(a), de dimensions 49x53 pixels, il y a (a cette echelle uniquement)111 visages et 1258 non visages

Page 208: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

178 Methodes de fusion pour la localisation du visage

Vérité terrain

(a)(a) (b)(b)

Fig. 3.23 – (a) Image reduite de maniere a ce que le visage soit de taille egale a13x17. (b) Exemples limites de visages correctement localises (taux de recouvre-ment = 60%).

3.4.2 Comparaison des methodes de fusion

Nous avons propose plusieurs methodes de combinaison des trois modeles duvisage :

– un classifieur Bayesien avec des densites conditionnelles estimees par uneapproche parametrique (modeles uni-Gaussien des visages et des non visages)ou l’approche non parametrique des histogrammes.

– un systeme d’inferences floues.– une somme ponderee dont les poids sont appris par descente de gradient.

Avant de comparer les performances en localisation de visage de ces approches,nous considerons tout d’abord le resultat des modules de base, sans fusion. Cesresultats serviront de reference pour les taux de localisation, et permettront demettre en valeur la contribution de la fusion d’algorithmes.

En considerant le modele d’apparence seul, la localisation x∗ du visage estdefinie par la position du minimum de l’erreur de reconstruction sur l’image entiere,car, rappelons le, une vignette contenant un visage devrait etre mieux reconstruitepar le Diabolo qu’une image de non visage. Cette position est celle du minimumdu tableau DiaboloMap, la taille du visage etant supposee connue :

x∗ = arg minx

DiaboloMap(x)

Page 209: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.4 Resultats experimentaux 179

Avec ces considerations, 656 visages sur 1353 sont correctement localises : letaux de localisation du Diabolo est ainsi de 48.5%. Une performance qui laissea desirer et qui s’explique par le pre-traitement d’une vignette appliquee au Dia-bolo. D’abord, les pixels de bord sont masques : le Diabolo est entraine a modeliserl’interieur du visage, et plus precisement l’orientation des points de contour, ceuxdont le module du gradient est le plus elevee, c’est-a-dire les yeux, et la bouche.De meme qu’un detecteur d’yeux et/ou de bouche, ce modele se traduit par denombreuses fausses alarmes sur les zones structurees de l’image [HKK+05][40]. Etle Diabolo ne compilant pas de contre exemple, le modele peine a distinguer uneforme de non visage et un visage. La determination des points de contour, s’ap-puyant sur les 20% de pixels dont le module du gradient est le plus eleve dansune vignette (contrairement a la determination des contours de l’image pour lemodele d’ellipse, qui utilise un seuil fixe), complique aussi la tache du Diabolo.Ce pre-traitement est avantageux dans le cas de visages peu ou non uniformementeclaires, mais il force la detection de contours dans la vignette, faisant apparaıtredes structures dans des regions homogenes. Ainsi, meme si le visage corresponda un minimum local de l’erreur de reconstruction, un ou plusieurs autres mini-mums locaux, de valeur inferieure, peuvent se trouver a des endroits inattendus del’image.

Si le modele d’ellipse est utilise seul pour determiner la localisation du visage, laposition a rechercher est celle pour laquelle le plus de points de contour, determinesde maniere global sur l’image, ont votes. Le visage est alors localise a la positiondu maximum du tableau HoughMap :

x∗ = arg minx

HoughMap(x)

En n’utilisant que le modele d’ellipse, 903 visages sur 1353 sont correctement lo-calises : la Transformee de Hough Generalisee est une approche cumulative plusefficace que le modele d’apparence, avec un taux de localisation de 67%. Les vi-sages manques de la base de test correspondent pour la majeure partie a unelocalisation du visage sur un fond complexe, contenant de nombreux points decontour dont sont issus des votes incrementant l’accumulateur. Dans ce cas, levisage correspond a un maximum local de l’accumulateur HoughMap, different deson maximum global. Le modele d’ellipse souffre aussi d’un inconvenient inversede celui du Diabolo : les points de contour sont determines de maniere globale, parun seuillage fixe sur le module du gradient de l’image, et l’ovale du visage peutetre constituee de pixels de faible module, notamment lorsque l’arriere plan a unniveau de gris proche de la texture du visage : dans ce cas, le visage ne correspondpas a un maximum local du tableau HoughMap.

[40] M. Hamouz, J. Kittler, J.-K. Kamarainen, P. Paalanen, H. Kalviainen, and J. Matas.Feature-based affine-invariant localization of faces. IEEE Transactions on Pattern Analysisand Machine Intelligence, 27(9) :1490–1495, 2005.

Page 210: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

180 Methodes de fusion pour la localisation du visage

A

D H

C Distribution des visages

Fig. 3.24 – Distribution des visages dans l’espace HDC : le point A correspondaux visages correctement modelises par les trois modeles en meme temps

Les performances du modele de teinte chair, s’appuyant sur un detecteur depeau au niveau pixellique, sont donnees par la matrice de confusion du tableau 2.1,p.87. Etant donne qu’un element du tableau SkinMap est la proportion des pixelsclassifies peau dans une vignette, et que des proportions egales peuvent se trouverdans differentes vignettes, plusieurs maxima globaux du tableau SkinMap peuventco-exister. Le visage ne peut donc generalement pas etre localise en utilisant cedetecteur seul.

L’approche Bayesienne employant la technique des histogrammes, modelisantsles visages et les non visages, atteint un taux de localisation de 22%. Cela montreque la distribution des visages et la distribution des non visages sont fortementimbriquees dans l’espace HDC. La figure 3.24 illustre la distribution d’exemples devisage (choisis aleatoirement) dans HDC : chaque point correspond a une vignettecontenant un visage et a pour coordonnees les valeurs de H , D et C calculee surcette vignette. De meme, la figure 3.25 illustre la distribution de points de l’espaceHDC correspondant a des non visages.

En comparaison, l’approche floue est plus efficace avec un taux de localisationde 72% : une amelioration de 5% est donc apportee par rapport a la localisationde visage par Transformee de Hough Generalisee.

La localisation du visage s’appuyant sur un modele Gaussien de la distribu-tion des visages (uniquement) dans HDC obtient un taux de localisation de 22%

Page 211: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.4 Resultats experimentaux 181

B

Distribution des non visages

D H

C

Fig. 3.25 – Distribution des non visages dans l’espace HDC : le point B correspondaux non visages se traduisant par une faible vraisemblance de la classe visage parles trois modeles en meme temps

seulement. Cela veut dire que la Gaussienne unimodale 3D de la classe visage esttrop proche des non visages, au sens de la distance de Mahalanobis (voir figure3.26). Lorsque la reponse de chacun des trois modeles, calculee sur une vignettex, indique qu’il s’agit vraisemblablement d’un visage, le vecteur caracteristique�X = [H D C]T correspondant est proche du point A = [1 − 1 1], dans laregion entouree par un cercle rouge sur la figure 3.24. Au contraire, une vignettex caracterisee par un point de l’espace HDC proche du point B = [−1 1 − 1](region de l’espace HDC entouree en bleu dans la figure 3.25) correspond a unexemple de non visage selon les trois modeles. Ces deux points devraient doncetre correctement classifies, mais ce n’est pas le cas du fait que le centre de laGaussienne modelisant les visages dans HDC se trouve approximativement a unememe distance de Mahalanobis de A et B.

Les resultats sont considerablement ameliores si on utilise une approche dis-criminante modelisant visages et non visages. En effet, en modelisant par uneGaussienne 3D unimodale de la distribution des visages ainsi que la distributiondes non visages, et en utilisant la regle de localisation (3.9), le taux de localisationde visage obtenu est de 84%. La Gaussienne modelisant les non visages est prochedes exemples de non visages, comme le montre la figure 3.26.

Page 212: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

182 Methodes de fusion pour la localisation du visage

Gaussiennemodélisantles visages

Gaussiennemodélisant

les non visages

Distribution des visages et des non visages

Fig. 3.26 – Gaussiennes modelisant les visages et les non visages dans l’espaceHDC

Comparee a toutes ces methodes, l’approche connexionniste de la somme ponde-ree est la plus performante, avec un taux de localisation de 86%. Dans le butde mesurer l’apport de la ponderation pour la localisation de visage, une simplesomme (i.e. les poids associes a chaque modele sont egaux a 1) est implementee.Avec un taux de localisation de 80% cette approche est assez efficace, mais ellel’est moins que celle de la somme ponderee dont les poids sont appris par descentede gradient.

Le taux de localisation est considerablement ameliore par combinaison lineairedes trois modeles, le taux d’erreur est reduit de plus de 50% ; de plus, la precisionde la localisation est aussi accrue. On mesure cette precision grace au taux de re-couvrement de la verite terrain par le rectangle resultat de la localisation : un tauxde 100% correspond a une localisation parfaite, tandis qu’un taux de 0% corres-pond a une localisation hors du visage. La figure 3.27 illustre la repartition de cestaux de recouvrement sur la base de test : on voit que les localisations de visagespar fusion sont beaucoup plus precises que par le modele d’ellipse ou d’apparence.Chaque courbe est specifique a une methode (modele d’apparence, modele d’ellipseet fusion) et represente l’histogramme du taux de recouvrement sur la base de testquantifie par pas de 5%. Le dernier point des trois courbes par exemple, indique

Page 213: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.4 Resultats experimentaux 183

0 10 20 30 40 50 60 70 80 90 1000

100

200

300

400

500

600

700

800

Taux de recouvrement de la vérité terrain (%)

No

mb

re d

’imag

es d

e te

st

Précision de la localisation

DiaboloMap

HoughMap

FusionMap

Visages correctementlocalisés

Fig. 3.27 – Histogramme de la proportion de pixels de verite terrain inclus dans lerectangle resultat de la localisation : la localisation par fusion obtient les meilleuresperformances en terme de nombre de visages correctement localises et de precisionde la localisation.

que le visage est localise avec un taux de recouvrement compris entre 95 et 100%sur environ 700 images de test par fusion lineaire (courbe rouge), sur 350 imagespar le modele d’apparence (en noir) et 200 images par le modele d’ellipse. On voitainsi que bien que le modele d’ellipse obtient un taux de localisation superieurau modele d’apparence, ce dernier est plus precis. Cela explique pourquoi, dansles coefficients de la fusion lineaire, ces deux modeles ont pratiquement le memepoids. Le modele d’apparence produit plusieurs minima locaux de l’erreur de re-construction pour une image donnee, et l’un d’eux localise precisement le visagemais il ne correspond en general pas au minimum global du tableau HoughMap.Le modele d’ellipse est moins incertain, le maximum global du tableau HoughMaplocalise correctement le visage dans plus de cas, mais il le localise de maniere moinsprecise. Ces deux modeles se complementent bien, le modele d’ellipse permettantde reduire l’incertitude du modele d’apparence, l’importance des minima locauxhors du visage de l’erreur de reconstruction etant diminuee apres combinaison,focalisant l’attention du localisateur sur le voisinage du visage, et le modele d’ap-parence permet de preciser la position correcte du visage dans ce voisinage. Lerecouvrement des visages en test par la localisation par fusion lineaire se situeessentiellement a des taux superieurs a 80% (distribution rouge de la figure 3.27).

Page 214: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

184 Methodes de fusion pour la localisation du visage

La queue de cette distribution (i.e. taux de recouvrement compris entre 0 et 5%)indique le nombre de localisations eloignes du visage.

Localisateur Taux de localisationNombre de visages

correctement localisesModele d’apparence

seul48.5% 656

Modele d’ellipseseul

67% 903

Approchenon parametrique

22% 298

Systemed’inferences floues

72% 974

Modele uni-Gaussiendes visages dans HDC

5% 68

Modeles uni-Gaussien(visages et non-visages)

84% 1136

Sommesimple

80% 1082

Sommeponderee

86% 1166

Tab. 3.4 – Taux de localisation des differentes approches sur 1353 images necontenant qu’un seul visage

Le tableau 3.4 recapitule l’ensemble des resultats obtenus par les differentesapproches de fusion : la somme ponderee obtenant les meilleures performances,nous analysons a la section suivante quelques exemples de la base de test, afin demieux apprehender les contributions d’une telle combinaison, et a la section 3.4.6,cette methode de combinaison est utilisee pour la localisation multi-echelles duvisage (i.e. la taille du visage est alors inconnue).

Page 215: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.4 Resultats experimentaux 185

5 10 15 20 25 30 35 40 45

10

20

30

40

50

60

5 10 15 20 25 30 35 40 45

10

20

30

40

50

60

5 10 15 20 25 30 35 40 45

10

20

30

40

50

60

5 10 15 20 25 30 35 40 45

10

20

30

40

50

60

DiaboloMap

HoughMap

SkinMap

FusionMap

Fig. 3.28 – Le modele d’ellipse est ambigu, le modele de teinte chair imprecis,mais les trois sources sont complementaires : la fusion lineaire a pour resultat unelocalisation correcte du visage.

3.4.3 Analyse de la fusion par somme ponderee

Dans ce paragraphe, nous illustrons l’apport de la fusion par combinaisonlineaire sur des cas typiques de la base de test. Il s’agit ici de souligner le com-portement de cette approche en fonction des differents types d’imperfections del’information apportee par chacun des modeles. L’imperfection d’une source d’in-formation peut prendre diverses formes, correspondant a des notions d’incertitude,d’imprecision, d’incompletude, et d’ambiguıte, qui ne trouvent pas de definitionconsensuelle dans la litterature : nous nous appuyons sur les descriptions qu’endonne Bloch dans [sldd03][4]. Lorsque plusieurs sources d’information sont ex-ploitees, elles peuvent etre redondantes, complementaires ou en conflit : nous illus-trons ces notions par quelques cas de figure.

Un premier cas est celui de la figure 3.28 ou le modele de teinte chair estimprecis, et le modele d’ellipse ambigu. L’imprecision concerne le manque d’exac-titude (ou de precision) d’une information qui conduit a une frontiere de decisionvague ou mal definie : le modele de teinte chair filtre une large zone de peau,dans laquelle la localisation du visage peut correspondre a une multitude de posi-

Page 216: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

186 Methodes de fusion pour la localisation du visage

1

-1

DiaboloMap normalisé

position

(a)(a)x*

DiaboloMap

1

-1position

SkinMap normalisé

Peau=23%

(b)(b)x*

SkinMap

HoughMap normalisé

1

-1position

(c)(c)x*

HoughMap (d)(d)FusionMap

Fig. 3.29 – Le modele d’apparence est incertain (a), mais la redondance entre lemodele de teinte chair (b) et le modele d’ellipse (c) permet de determiner unelocalisation correcte du visage par fusion lineaire (d)

tions. L’ambiguıte exprime le caractere equivoque d’une information, sa capacite aconduire a deux interpretations differentes : le modele de teinte chair indique ainsideux positions possibles du visage, de probabilite relativement proche. Dans lafigure 3.28, il s’agit des deux maximums locaux les plus eleves du tableau Hough-Map : bien que le maximum global correspond effectivement a la position reelledu visage, le second maximum (correspondant a une zone claire de l’image en-toure de feuillages) laisse a penser qu’une seconde forme elliptique est presentedans la scene. Ce maximum secondaire est une expression de l’incompletude dumodele d’ellipse : l’incompletude d’une source caracterise l’absence d’informationappportee sur certains aspects de la forme recherchee, comme ici la presence destraits internes du visage. Le caractere incomplet du modele de teinte chair estevident, il ne modelise aucune forme, et il a pour consequence l’ imprecision decette source d’information. La transformee de Hough fournit une information par-tielle qui induit une confusion entre plusieurs objets. On note aussi sur cette figurela relative imprecision du modele de teinte chair, materialisee par des maximumslargement etendus spatialement compares au modele d’apparence : le maximumglobal du tableau DiaboloMap etant beaucoup plus localise. La complementaritedes modeles, exprimant l’apport par chacun d’une information de nature differente,

Page 217: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.4 Resultats experimentaux 187

permet de lever l’ambiguıte resultant du modele d’ellipse. La redondance entre lestrois modeles au voisinage du visage permet de reduire les imprecisions soulignees.La fusion lineaire des reponses des trois modeles a ainsi pour resultat une locali-sation correcte du visage.

Dans le second exemple, figure 3.29, on voit comme la precision du modeled’apparence est obtenue au detriment de sa fiabilite. L’incertitude du modele d’ap-parence caracterise sa fiabilite, c’est-a-dire le degre d’adequation de l’informationextraite avec la forme apprehendee. Dans cet exemple, de nombreux maximums lo-caux du tableau DiaboloMap ont des valeurs relativement proches, ce qu’on illustredans la figure 3.29(a) en representant schematiquement leur distribution spatialea une dimension : le maximum correspondant a la position reelle x∗ du visage aune valeur faible compare aux autres. Dans la figure 3.29(b), on voit que le ta-bleau SkinMap a une valeur maximale egale a 20%, proportion maximale de pixelsclassifies peau que l’on peut trouver dans une vignette de l’image. Le modele deteinte chair n’est pas robuste car trop simple (seuillage dans le plan CbCr). Maisla normalisation des valeurs du tableau dans [-1 1], motivee par l’objectif de loca-lisation du visage, met en valeur ce maximum, comme le montre la figure 3.29(c).L’information provenant du modele d’apparence est en conflit avec les deux autressources d’information, mais elle l’est au voisinage du visage comme dans le reste del’image. Le modele d’ellipse est quant a lui relativement ambigu, mais l’informationapportee par les modeles de teinte chair et d’ellipse est redondante au voisinagedu visage, ce qui augmente les valeurs correspondantes dans le tableau Fusion-Map, et reduit la contribution des maximas secondaires presents dans le tableauHoughMap, voir figure 3.29(d). Cette complementarite permet a la fusion des troisalgorithmes de localiser le visage correctement.

L’exemple de la figure 3.30 illustre le cas ou le modele d’apparence est incertain,et le modele de teinte chair incorrect. La redondance entre la reponse du Diaboloet celle de la THG au niveau du visage permet dans ce cas une localisation correctedu visage. Un second maximum local apparaıt sur le tableau FusionMap : il cor-respond au maximum global du tableau DiaboloMap et a un maximum secondairedu tableau HoughMap de valeur suffisamment faible.

Dans l’exemple de la figure 3.31, le modele d’ellipse est incorrect : voici uncas ou les niveaux de gris des pixels du visage sont plus bas que ceux des pixelsl’entourant. L’information extraite par la THG est en conflit avec celle des deuxautres modeles. Ces derniers en revanche sont complementaires, ce qui permet unelocalisation correcte par la fusion lineaire.

Page 218: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

188 Methodes de fusion pour la localisation du visage

100 200 300 400 500

100

200

300

400

500

600

HoughMap

10 20 30 40 50

10

20

30

40

50

FusionMap

10 20 30 40 50

10

20

30

40

50

DiaboloMap

10 20 30 40 50

10

20

30

40

50

skinMap

10 20 30 40 50

10

20

30

40

50

Fig. 3.30 – La reponse du modele de teinte chair est incorrect, et le modele d’ap-parence incertain mais redondant avec le modele d’ellipse au niveau du visage.

100 200 300 400

100

200

300

400

500

600

HoughMap

5 10 15 20 25

10

20

30

40

FusionMap

5 10 15 20 25

10

20

30

40

DiaboloMap

5 10 15 20 25

10

20

30

40

skinMap

5 10 15 20 25

10

20

30

40

Fig. 3.31 – Le modele d’ellipse n’est pas adapte, mais le modele de teinte chair etle Diabolo se complementent suffisamment pour obtenir une localisation correcte.

Page 219: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.4 Resultats experimentaux 189

Nom de lasequence

Nombre de visages correctement localises

Jamie 40 visages sur 43Ilkay 72 visages sur 80Geoff 24 visages sur 24

Tab. 3.5 – Taux de localisation correctes sur les trois sequences d’images, parcombinaison lineaire

3.4.4 Localisation du visage dans une sequence d’image

L’approche de la localisation par combinaison lineaire est testee sur les sequencesJamie, Ilkay et Geoff disponibles sur le site de Microsoft Research Cambridge[Cam][41]. Plusieurs videos sont disponibles a cette adresse : il s’agit de sequencesacquises avec une webcam [KCB+05][42] produisant des images de dimensions320x240 pixels. Les trois sequences retenues sont composees respectivement de85, 160 et 48 images, mais nous ne traitons qu’une image sur deux : le traitementse faisant image par image, aucune information temporelle n’est utilisee, contrai-rement au cas de la poursuite de visage (voir chapitre 4.3.4) ou toutes les imagesde la sequence sont traitees de maniere a prendre en compte le mouvement reel dusujet et non un mouvement accelere. Dans chacune de ces sequences, la taille duvisage varie suffisamment peu (la distance visage-camera est approximativement lameme au long de la sequence) pour considerer qu’elle est constante : nous la sup-posons connue, et appliquons notre approche de localisation du visage a la bonneechelle. Ces trois sequences correspondent a trois scenarios differents : Jamie faitune presentation au tableau devant la camera et allume une lampe supplementaireau milieu de la sequence surexposant son visage, Ilkay oscille de gauche a droitesur sa chaise son visage apparaissant alors de face ou de profil, tandis que Geoffreyincline la tete a droite et a gauche. Ne disposant pas de la verite terrain, les lo-calisations correctes sont determinees par un operateur humain : la figure 3.32 enillustre quelques exemples. Le tableau 3.5 rapporte les performances du localisateurpar fusion lineaire sur ces sequences : notre approche obtient des performances tressatisfaisantes, en depit de l’environnement difficile de la scene, notamment pourla detection de la teinte chair. Ces resultats ne sont pas directement comparablesa ceux que nous presenterons au chapitre 4.3.4, car nous supposons ici la taille duvisage connue, sa localisation se faisant a une seule echelle. Sur un total de 147images ne contenant qu’un visage, 136 visages ont ete correctement localise soitun taux de localisation de 92%, plus eleve que le taux obtenu sur la base ECU :

[41] Microsoft Research Cambridge. research.microsoft.com/vision/cambridge/i2i/dsweb.htm.i2i : 3D Visual Communication.

[42] V. Kolmogorov, A. Criminisi, A. Blake, G. Cross, and C. Rother. Bi-layer segmentation ofbinocular stereo video. In Proceedings of the IEEE Conference on Computer Vision andPattern Recognition, volume 2, pages 407–414, 2005.

Page 220: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

190 Methodes de fusion pour la localisation du visage

(a)

(b)

(c)

Fig. 3.32 – Localisation mono-echelle du visage sur des sequences d’images parfusion lineaire. (a) Jamie (b) Ilkay (c) Geoff

nous en concluons que les images de la base ECU sont plus complexes que cellesde ces sequences.

3.4.5 Localisation de plusieurs visages dans une image

Dans le cas ou plusieurs visages sont presents dans la scene, lorsque le nombre devisages est inconnu, un detecteur de visage est absolument necessaire : le nombrede visages et leur localisation sont alors recherches. Si le nombre de visages estconnu, ils peuvent toutefois etre localises par notre approche. Le nombre de visagespeut, par exemple etre determine par une autre source d’information tels que lemouvement ou la parole. On se place a nouveau dans le cadre ou la taille desvisages est aussi connue, avec la restriction supplementaire que les visages ontapproximativement les memes dimensions dans l’image. La localisation des Npvisages peut alors etre operee en recherchant les Np maximum locaux du tableauFusionMap les plus eleves :

x∗i = arg max

x/∈{x∗j }j=1...i−1

FusionMap(x)

La combinaison lineaire (equation (3.11)) est testee sur une base de 205 imagescontenant un total de 482 visages, ne faisant bien entendu pas partis des bases

Page 221: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.4 Resultats experimentaux 191

Fig. 3.33 – Localisation de plusieurs visages dans une image : le nombre de sujetsest suppose connu

employees pour instancier les modeles ou pour apprendre les parametres de lacombinaison. 396 visages sur 482 sont correctement localises, soit un taux de loca-lisation de 82%, assez proche de celui obtenue sur la base de test ”mono-visage” :quelques exemples de localisation sont illustres par la figure 3.33.

3.4.6 Localisation du visage a plusieurs echelles : compa-raison avec le detecteur de Viola&Jones

Jusqu’ici, nous supposions connue la taille du visage a localiser. Pour localiserun visage de taille quelconque, une pyramide d’images est construite comme illustrepar la figure 3.34. Cette procedure exhaustive reduit iterativement l’image d’unfacteur fQ, et pour chacune des images reduites (donc de resolution reduite parrapport a l’image originale, contrairement au cas d’une approche ou c’est la retinequi est agrandie) le parcours de la retine mxn=13x17 permet de calculer le tableauFusionMap(x, n) pour chaque echelle n. La localisation du visage, sa position x∗

et sa taille (mfn−1Q )x(nfn−1

Q ), est alors definie par le maximum global le plus eleve

Page 222: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

192 Methodes de fusion pour la localisation du visage

Maximum de FusionMap:- position (x,y)- échelle (w,h)

Pyramided’images

fQ=1.2FusionMap(x,y,s)

fonction de l’échelle

Fig. 3.34 – Localisation multi-echelles du visage : une pyramide d’image estconstruite et le tableau FusionMap est construit pour chacune des echelles. Lalocalisation du visage est definie par la position du maximum local le plus eleveeparmi ces tableaux.

des tableaux FusionMap parmi les echelles n parcourue :

(x∗, n) = arg maxx,n

FusionMap(x, n)

Le facteur de reduction fQ a donc un impact direct sur la qualite de la locali-sation : plus il est eleve et moins la localisation sera precise. Une approche telleque celle de Schneiderman&al [SK98][43] ou le visage est detecte sur 4 echellesdifferentes a pour resultat une localisation bien moins precise des visages detectescomparee a l’approche classique imposant le choix fQ = 1.2. En echange de cetteimprecision, la reduction du nombre d’echelles permet de reduire le nombre devignettes a classifier. Bien que le choix de fQ = 1.2 soit assez repandu en detectionde visages [GD04][37], il n’y a pas vraiment de consensus dans la maniere d’opererune detection (ou une localisation) multi-echelles de visages, ce qui se comprendaisement etant donne qu’il n’y pas non plus de consensus precis sur la definitiond’un visage correctement localise. A vrai dire, la plupart des articles ne detaillentpas ce point important. Pour illustrer la variete des approches de la recherche

[43] H. Schneiderman and T. Kanade. Probabilistic modeling of local apperance and spatialrelationship for object recognition. In Proceedings of the IEEE Conference on ComputerVision and Pattern Recognition, volume 1, pages 45–51, 1998.

Page 223: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.4 Resultats experimentaux 193

de visages a plusieurs echelles, on peut citer [YKA01][35] qui fixe a 10 le nombred’echelles a parcourir lors de la construction de la pyramide. Un autre exemple estla segmentation de l’image en niveau de gris en regions homogenes presentee dans[Ahu96][44] et realisee a trois echelles. Le cas des approches s’appuyant sur unesegmentation prealable de l’image, realisee a l’aide d’un modele colorimetrique esttout a fait a part : chaque region segmentee correspond a un visage candidat, avalider ou non, mais il n’y a pas a proprement parler de recherche multi-echellesqui est operee.

Les images de test de la base ECU ont des dimensions qui varient de l’ordrede 400 a 700 pixels pour la hauteur et 350 a 750 pixels pour la largeur. La tailledes visages dans ces images est aussi assez elevee : pour la plupart des exempleselle excede 50x70 pixels, comme le montre le tableau 3.6. En procedant a unelocalisation multi-echelles du visage avec une retine 13x17 et un facteur d’echellefQ = 1.2, sur une image de dimensions 640x480 (par exemple), le nombre d’echellesa parcourir est de 19. La construction de la pyramide s’arrete a l’echelle ou m oun (largeur et hauteur de la retine) depassent les deux tiers de la largeur et de lahauteur, respectivement, de l’image reduite. Dans la figure 3.35, la taille des visageslocalisable a chaque echelle est illustree : chaque point de la courbe correspond a lahauteur (en ordonnee) et la largeur (en abscisse) du visage a une echelle. Le pointle plus a gauche correspond a la premiere echelle exploree, c’est-a-dire a l’imageoriginale : la taille du visage localisable a cette echelle est de 13x17. L’echellesuivante est obtenue en reduisant l’image d’un facteur fQ = 1.2 la taille reelledes visages localisables par la retine est de 16x20 pixels ; a l’echelle n les visageslocalisables ont la taille (mfn−1

Q )x(nfn−1Q ). On voit sur la figure 3.35 que les 8

premieres echelles correspondent a des visages de taille inferieure a 50x70 pixels.

Afin de limiter le nombre d’echelles a explorer, on limite la taille des visages alocaliser : la taille minimale de visage est fixee a 52x68 pixels. Nous excluons enconsequence les 50 images de test dans lesquelles les visages sont plus petits quecette limite. Cette limite correspond a la taille de la retine multipliee par quatre :la procedure de test consiste alors en une localisation multi-echelles du visage dansune image reduite d’un facteur quatre. Une image de dimensions 640x480 pixelsest ainsi reduite en une image 160x120 de moindre resolution : la figure 3.36(a)indique la taille reelle (i.e. dans l’image originale 640x480) des visages localisablespour chacune des 11 echelles parcourues. Le tableau 3.7 indique le nombre devignettes explorees a chacune de ces echelles (avec la limitation introduite, l’echelle1 correspond a un reduction par quatre de l’image originale) : un total de 43.565vignettes est a analyser par le localisateur. La figure 3.36(b) illustre la repartitiondu nombre d’echelles parcourues par image sur la base de test : la majeure partie

[44] N. Ahuja. A transform for multiscale image segmentation by integrated edge and regiondetection. IEEE Transactions on Pattern Analysis and Machine Intelligence, 18 :1211–1235, 1996.

Page 224: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

194 Methodes de fusion pour la localisation du visage

0 50 100 150 200 250 300 3500

50

100

150

200

250

300

350

400

450

500

Largeur du visage

Hau

teu

r d

u v

isag

e

Tailles de visage localisables par une rétine 13 x17 dans une image 640x480

fQ

=1.2

Fig. 3.35 – Tailles des visages detectables avec une retine 13x17 dans une image640x480

Critere Nombre d’exempleshauteur < 68 et largeur < 52 50hauteur < 96 et largeur < 96 284

Tab. 3.6 – Statistiques sur les tailles de visages de la base de test (1353 imagescontenant un visage chacune).

des images de test necessite l’inspection par notre localisateur de 9 a 11 echellespar image.

Les performances de notre approche de la localisation sont comparees aveccelles du detecteur de Viola&Jones, sur les memes images de test, avec la memeresolution : l’image originale est reduite d’un facteur 4. Ce detecteur ayant pourentree une retine 24x24 pixels, la taille minimale des visages detectables dansl’image d’origine est donc de 96x96 pixels. Le detecteur est teste en consequencesur la partie de la base de test contenant des visages ayant une taille superieure acette limite, afin que la comparaison soit juste. Nous verrons au chapitre 4 que lareduction d’un facteur 4 de l’image originale a pour effet de diminuer de maniereconsequente le nombre de faux positifs produits par la cascade, mais aussi, dansune moindre mesure, son taux de detection (par rapport a une application dudetecteur sur l’image pleine resolution). Cela afin de tester les deux approches, le

Page 225: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.4 Resultats experimentaux 195

50 100 150 200 250 300 35050

100

150

200

250

300

350

400

450

Largeur du visage

Hau

teu

r d

u v

isag

e

Tailles (réelles) des visages localisables par une rétine 13x17 après réduction d’un facteur 4

(a)

6 7 8 9 10 11 12 130

100

200

300

400

500

600

Nombre d’echelles par image

No

mb

re d

’imag

es d

e te

st

Nombre d’echelles parcourues par le localisateur sur la base de test

Fig. 3.36 – (a) Hauteur et largeur des visages localisables dans une image originale640x480 par une recherche multi-echelles avec une retine 13x17 appliquee a l’image160x120 (apres reduction d’un facteur 4). (b) Repartition sur la base de test dunombre d’echelles a parcourir par image.

Page 226: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

196 Methodes de fusion pour la localisation du visage

Echelle 1 2 3 4 5Nombre devignettes

15.552 10.296 6.745 4.332 2.745

Echelle 6 7 8 9 10 11Nombre devignettes

1.728 1.036 588 315 165 63

Tab. 3.7 – Nombre de vignettes parcourus par une retine 13x17 dans une image160x120.

Methode Localisateur par fusion Detecteur de Viola&JonesNombre d’imagesde la base de test

1.303 images 1.069 images

Tab. 3.8 – Bases de test du localisateur et du detecteur : les images ou les visagesont des tailles inferieures a la taille minimale de chacun des systemes sont exclues.Chaque image ne contient qu’un seul visage.

localisateur et le detecteur, sur les memes images. Avec un inconvenient vient unavantage : le nombre d’echelles parcourues par la retine 24x24 de la cascade est,pour une image 160x120, de 9, la derniere echelle du tableau 1.3 correspondant aune taille de visage de 412x412 (la retine d’entree de la cascade est carre). Commenous l’expliquions aussi au chapitre 1.2.3, le nombre de vignettes classifiees parla cascade depend de la complexite de l’image. A l’inspection du tableau 1.3, onse rend compte que les deux premiers classifieurs forts de la cascade permettentd’eliminer un nombre imposant de vignettes : par exemple a l’echelle 1, 1.900vignettes sont classifiees par la cascade alors que dans une image 160x120 il y a13.289 vignettes 24x24 differentes.

Le tableau 3.8 recapitule le nombre d’images sur lesquelles chacune des ap-proches est testee. La difference entre le nombre d’images a tester provient dufait que les deux approches traitent des retines de tailles differentes : cela refleteune premiere difficulte lorsque l’on cherche a comparer deux methodes. La naturedifferente des deux methodes pose une seconde difficulte lors de leur comparaison :la localisation cherche a trouver la position du visage dans l’image, tandis que ladetection cherche le nombre de visages et leur localisation dans l’image, et n’utilisedonc pas l’information du nombre de visages presents dans la scene. Toutefois, ledetecteur de Viola&Jones nous permet de mesurer la difficulte de la base de test,et sert de reference pour notre approche. Les performances du localisateur sontainsi quantifiees par un seul nombre, le taux de localisation qui est le rapport dunombre de visages correctement localises sur les 1.303 visages presents en test. Lenombre de faux positifs n’est pas indique dans le tableau 3.9 car il est egal a 1.303moins le nombre de visages correctement localises. Les performances du detecteur

Page 227: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.4 Resultats experimentaux 197

50 100 150 200 250 300 350 400 45050

100

150

200

250

300

350

400

450

Largeur du visage

Hau

teu

r d

u v

isag

e

Tailles (réelles) de visage localisables par la cascade après réduction d’un facteur4

fQ

=1.2

Fig. 3.37 – Tailles des visages detectables dans une image 640x480 par une re-cherche multi-echelles avec une retine 24x24 operee sur l’image reduite 160x120.

sont mesurees par :– le taux de detection : nombre de visages correctement localises (et donc

detectes) sur les 1.069 visages de la base de test.– le nombre de fausses alarmes, correspondant aux detections n’ayant pas lieu

sur un visage.Un visage est correctement localise si le rectangle resultat de la recherche (detectionou localisation) multi-echelles englobe les yeux et la bouche, et si son aire n’est pasplus elevee que l’aire du rectangle englobant la verite terrain augmentee de 20%.

Ces performances sont indiquees au tableau 3.9 : la combinaison des troismodeles permet de localiser correctement 759 visages sur les 1303 presents en test,soit 58.25% des cas. Le detecteur de Viola&Jones obtient de meilleurs resultatsavec 763 visages correctement detectes sur 1069 soit un taux de detection de71.38% pour 49 faux positifs.

L’approche de Viola&Jones localise (et detecte) ainsi, en moyenne, 13% devisages en plus comparee a notre approche. Il y a deux points importants qui per-mettent d’expliquer l’inferiorite des performances de notre approche. Le premierest que notre approche combine des modeles generatifs de visage. En effet, aucundes trois modeles employe ne cherche a modeliser les non visages : le Diabolo ap-prend un modele de visage, la transformee de Hough Generalisee emploie un modele

Page 228: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

198 Methodes de fusion pour la localisation du visage

ApprocheLocalisateur par

fusion d’algorithmesDetecteur deViola&Jones

Nombre de visagescorrectement localises

759 763

PerformancesTaux de localisation

58.25%

Taux de detection71.38%

Nb de fausses alarmes49

Tab. 3.9 – Performances du localisateur par fusion d’algorithme et du detecteurde Viola&Jones (le nombre d’images de test n’est pas le meme pour les deuxapproches, voir tableau 3.8)

Fig. 3.38 – Cas de figure ou la decision du detecteur de visage est correcte et celledu localisateur est incorrecte : en bleu le resultat du detecteur de visages, en rougecelui du localisateur.

Page 229: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.4 Resultats experimentaux 199

Fig. 3.39 – Imprecision du localisateur (en rouge) en terme d’echelle : la locali-sation est trop etendue spatialement, alors que le detecteur de visage (en bleu)localise correctement le visage.

d’ellipse et le modele de teinte ne modelise pas la non peau. Les non visages nesont finalement appris que par la somme ponderee, lors de la determination descoefficients de cette somme. Au contraire, les classifieurs forts de la cascade 24x24de Viola&Jones sont appris sur des visages et des non visages. La constitution dechacun des classifieurs forts Fk est determinee de maniere incrementale par Ada-boost : un ensemble de classifieurs faibles est appris sur une base de visages etde non visages, et celui qui fait le moins d’erreur sur cette base est ajoute a lasomme Fk. Le poids de chaque exemple d’apprentissage est re-evalue de maniere adonner plus d’importance aux exemples mal-classifies par cette somme, avant l’ap-prentissage puis le choix du meilleur classifieur faible suivant a ajouter. Lorsqu’unclassifieur booste est appris, les exemples d’apprentissage (visages et non visages)qu’il classifie visage constituent la base d’apprentissage du classifieur suivant. Lenombre de classifieurs forts de la cascade est determine sur une base de valida-tion de visages et de non visages non utilises en apprentissage. Ce premier pointrend l’approche de Viola&Jones difficile a surpasser par notre approche : nous enillustrons quelques exemples a la figure 3.38, les rectangles bleus sont le resultatdu detecteur de Viola&Jones, les rectangles rouges sont le resultat de notre ap-proche de la localisation. On notera sur certains exemples, dans cette figure et lessuivantes, que plusieurs rectangles bleus peuvent apparaıtre sur la meme image :dans ce cas l’un des deux, au moins, est une fausse alarme.

Page 230: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

200 Methodes de fusion pour la localisation du visage

Fig. 3.40 – Imprecision du localisateur (en rouge) en terme de position : cas ou levisage est correctement localise par le detecteur de Viola&Jones (en bleu).

L’analyse des resultats du detecteur de Viola&Jones sur les images communesaux deux bases de test, montre qu’il est superieur a notre approche sur un autrepoint important : la precision de la localisation du visage. Les exemples des fi-gures 3.39 et 3.40 illustrent les deux types d’imprecision de notre localisateur :l’imprecision en position et l’imprecision en echelle. En inspectant certains exemplesde la figure 3.39, un operateur humain peut penser que le visage est correctementlocalise par le fusionneur, parce que le rectangle rouge englobe la tete entiere etqu’il est bien centre sur le visage, mais la definition d’une localisation correcte etla verite terrain sont les memes pour les deux approches, et excluent ce genre delocalisation. L’imprecision en echelle du localisateur correspond a une localisationdu visage trop etendue spatialement : la figure 3.39 en illustre quelques exemples.L’imprecision en position correspond au cas ou la localisation a une taille satisfai-sante par rapport a celle du visage, mais decentree : dans ce cas, la bouche ou unvoire deux yeux sont absents du visage candidat, comme le montre les exemplesde la figure 3.40. La precision du detecteur de visage vient de l’arbitrage entreles detections multiples dans un meme voisinage : un rectangle moyen entre cesdetections est calcule, alors que dans notre approche de la localisation, seule lavignette correspond a la position des tableaux FusionMap est exploitee.

Il y aussi toute une collection d’exemples ou notre approche s’avere complemen-taire a celle de Viola&Jones : trois cas de figure ont ete mis en evidence, toujours sur

Page 231: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.5 Conclusion 201

les exemples de test communs aux deux approches. Le cas le plus frequent a deja etesouligne lors de la presentation du detecteur de Viola&Jones, il s’agit des limites dedetection en fonction de la pose du visage : le lecteur est invite a consulter la figure1.5, p. 20. En effet, les exemples de visages utilises a l’apprentissage de la cascadesont frontaux, et le detecteur peine a classifier correctement les visages inclinesou de profil, comme l’illustre la figure 3.41 : les rectangles rouges sont toujours leresultat de la fusion, les rectangles bleus correspondent au detecteur de visages.L’absence de rectangle bleu, dans la plupart des exemples de cette figure et de lafigure 3.42, correspond a un visage manque : le detecteur ne classifie visage aucunevignette (on notera aussi la presence de quelques faux positifs). Le second cas, unpeu moins frequent sur cette base de test mais que nous avons pu verifier sur destests informels, est le cas ou une partie du visage est occulte par un objet commele montrent les exemples de la figure 3.42(a). Les exemples de la figure 3.42(b)illustrent le cas ou le front du sujet ou une partie de l’ovale du visage est recouvertpar ses cheveux, ou un vetement, de niveaux de gris moins eleve : dans ce cas, lacascade rejette le visage, contrairement au localisateur (en rouge). Le dernier casde dysfonctionnement du detecteur de Viola&Jones n’est pas a proprement parlerun cas d’occlusion mais lui est apparente : lorsqu’une partie de l’ovale du visage,celle qui delimite le front, le menton ou les joues, n’est pas suffisamment distinctedu fond, ce qui arrive quand les niveaux de gris situes au voisinage des contoursdu visage ont des valeurs proches de l’interieur du visage, le visage est rejete par ledetecteur. Les classifieurs faibles concentrees sur les contours delimitant le visage demaniere trop floue, notamment dans le cas de sujets caucasien blonds ou couvertspar un bonnet clair comme le montre les exemples de la figure 3.42(c), classifientnon visage la vignette. Le localisateur s’appuyant sur la couleur, et la transformeede Hough etant suffisamment robuste aux contours incomplets, la fusion lineairepermet de localiser le visage correctement.

3.5 Conclusion

Nous proposons une methode de localisation du visage fusionnant la reponse detrois experts : un modele d’apparence, le Diabolo, un modele d’ellipse et un modelede teinte chair. Les donnees fusionnees sont tres heterogenes car elles proviennentd’un modele d’apparence, issu d’une procedure d’apprentissage, et de deux modelesad hoc. Le Diabolo s’appuyant sur les traits internes (yeux, bouche, nez) du visage,est un modele incertain du fait que dans une image un grand nombre de regions necontenant pas de visage sont suffisamment complexes pour presenter des structuressimilaires. D’autant plus que le pre-traitement opere par le modele d’apparencepour determiner les contours sur une vignette met en valeur des contours dontle module est faible compare au module du gradient de l’image entiere. Si l’onsouhaite utiliser ce modele seul, il est necessaire d’utiliser des heuristiques pour

Page 232: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

202 Methodes de fusion pour la localisation du visage

Fig. 3.41 – Cas d’echec du detecteur de visages (en bleu) : la pose des visages esten dehors des limites de la cascade, alors que la fusion lineaire (en rouge) localisecorrectement ces visages.

eliminer des zones de l’image ne contenant pas de contour, ou de modeliser lescontours de l’ovale du visage, comme le font la plupart des approches connexion-nistes de la detection de visage. Notre approche consiste a modeliser l’ovale duvisage par un modele d’ellipse independant du Diabolo, ces deux modeles sontalors complementaires. Ces deux modeles exploitent l’orientation du gradient descontours mais pour le Diabolo les contours sont definis localement, sur chaque vi-gnette qu’il reconstruit, tandis que pour le modele d’ellipse les contours sont definisplus globalement, sur l’image entiere : le modele d’ellipse est alors imprecis que lemodele d’apparence. Le modele de couleur peau est incomplet car il est relatif ala couleur de chaque pixel, la moyenne des vraisemblances sur une vignette etantensuite calculee. Bien que l’on trouve dans la litterature un grand nombre d’ap-proche de la localisation du visage s’appuyant sur une modelisation de la couleurpeau, suivie par une validation des visages candidats relativement aux traits qu’ilscontiennent, cette approche n’est efficace que dans les conditions favorables ou lacouleur de peau du sujet est representee dans la base d’exemples permettant deconstruire le modele de couleur.

Nous avons explore quelques approches classiques de la fusion de donnees : lesmodeles Bayesiens parametrique et non parametrique, les systemes d’inferencesfloues ainsi que les reseaux de neurones. Cette recherche exhaustive nous a conduit

Page 233: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.5 Conclusion 203

(a)

(b)

(c)

Fig. 3.42 – Cas d’echec du detecteur de visages (en bleu) dus a l’occlusion detraits du visage (front, bouche, yeux), ou encore a une difference de niveaux degris insuffisantes entre l’ovale du visage et son voisinage.

a choisir une somme ponderee pour algorithme de fusion : les coefficients de cettesomme sont appris sur une base de visages et de non visages, par une descentede gradient avec pas d’apprentissage adaptatif. Un poids equivalent est affecteaux modeles d’ellipse et d’apparence, bien qu’en terme de localisation de visagesle modele d’ellipse obtienne de meilleures performances : cela est du au fait quele Diabolo est plus precis, l’erreur de reconstruction presentant generalement unminimum local sur une vignette contenant le visage, ce minimum n’etant pasnecessairement global ce qui est a l’origine de l’incertitude de ce modele. Le modelede teinte chair ayant des capacites de generalisation limitee se voit attribuer unpoids moitie moindre.

Nos premieres experiences consistent a localiser le visage a une seule echelle,supposant que la taille du visage est connue. Nous avons demontre que cette ap-proche ameliore considerablement les performances en localisation de visage dechaque expert utilise seul, que ce soit en nombre de visages correctement localisesou en terme de precision de la localisation. Des sequences d’images ont demontreesl’efficience de cette approche lorsque la distance du sujet a la camera est connue,mais cette information n’etant pas toujours disponible, l’approche a ete testee aplusieurs echelles. De l’ordre de 60% des visages sont correctement localises surune base de test de 1303 images ne contenant qu’une seule personne. En compa-

Page 234: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

204 Methodes de fusion pour la localisation du visage

raison, l’une des approches les plus efficaces de l’etat de l’art en detection de visage,detecte en moyenne 13% de visages en plus sans connaissance a priori du nombrede visages presents dans la scene. Nos resultats sont toutefois tres prometteurs carl’approche a ete employee de maniere brute, la fusion etant operee a toutes les po-sitions et a differentes echelles de l’image sans utiliser d’heuristiques pour focaliserl’attention du localisateur. Cette etape de filtrage de regions d’interet est souvent,comme nous l’avons vu dans l’etat de l’art introduisant ce chapitre, prealable a ladetection de visages, parce qu’elle elimine un nombre considerable de non visageset qu’elle diminue d’autant le temps de traitement d’une image.

Plusieurs pistes de recherche sont en perspectives :

– combiner notre localisateur en serie avec les premiers classifieurs forts dudetecteur de visage afin de masquer des regions de non visages et de concen-trer le localisateur sur les regions contenant le plus probablement le visage.Des tests preliminaires ont montres que les 10 premiers etages de la cascaderejettent un nombre considerable de non visages sans eliminer les visagespresentant une pose non frontale. L’idee est donc de remplacer les derniersetages de la cascade, responsables du rejet des visages non frontaux, parnotre localisateur.

– re-iterer notre approche connexionniste de la combinaison lineaire, mais enutilisant pour experts les sorties des classifieurs forts. Cette seconde op-tion devrait apporter des resultats interessants et nous permettre de fairede la detection de visage, sans connaissance a priori du nombre de per-sonnes presentes dans l’image. Dans [BPM05a][45] nous faisions co-operer unlocalisateur d’yeux avec notre localisateur par une approche connexionniste,pour ameliorer le taux de localisation du visage. De cette experience, combi-nant des representations tres heterogenes, on prevoit qu’un travail d’analyseest a realiser afin d’incorporer nos modeles a ces classifieurs, incorporationnecessaire si on veut pouvoir detecter des visages independamment de leurorientation.

– en terme d’architecture, une demarche en serie consistant a aiguiller les vi-gnettes, a l’aide d’un classifieur entraıne a determiner la pose du visage, versun modele d’apparence et d’ellipse specialises sur certaines orientations duvisage (de face, profil, incline) avant la fusion peut permettre d’ameliorer laprecision et l’efficacite de la localisation, comme l’ont montre des recherchespreliminaires.

– le modele de teinte chair est construit sur une base d’exemples melangeantles pixels de couleur peau provenant de differents sujets. Cela constitue unelimitation dans les performances en generalisation de ce modele, car, pourune image a tester et un visage, on peut esperer qu’un modele adapte sera

[45] R. Belaroussi, L. Prevost, and M. Milgram. Classifier combination for face localization incolor images. In Proceedings of the 13th International Conference on Image Analysis andProcessing, pages 1043–1050, 2005.

Page 235: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

3.5 Conclusion 205

meilleur qu’un melange de modeles. Une idee sur laquelle nous travaillonsconsiste a definir plusieurs modeles colorimetriques, chacun etant specialisesur un type de couleur peau, et d’illumination, c’est-a-dire construit sur despixels de peau appartenant a un groupe de personnes. Une transformee deHough Generalisee est alors operee sur l’image Ppeau des probabilites de teintechair issue de chaque modele et le modele conduisant au plus grand nombrede votes dans les accumulateurs resultants est retenue. La combinaison avecle modele d’apparence ayant lieu par la suite afin d’obtenir une meilleureprecision.

Un point faible de notre approche est le temps de calcul necessaire a la loca-lisation du visage dans une image : nous n’avons pas cherche a l’optimiser et ilfaut compter de l’ordre de deux minutes pour traiter une image sur une dizained’echelles. Le detecteur de Viola&Jones est beaucoup plus rapide, et il permet desavoir si un visage est present et de detecter plusieurs visages dans une image.Nous l’avons donc integre dans un systeme de detection et de poursuite de visages,par une approche colorimetrique. Nous presentons ce systeme au chapitre suivant,le choix de l’espace colorimetrique HSV y est justifie et nous comparons deuxmethodes de segmentation s’appuyant sur la couleur.

Page 236: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006
Page 237: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

Chapitre 4

Detection et suivi de visages dansdes sequences d’images

Sommaire4.1 Poursuite du visage . . . . . . . . . . . . . . . . . . . . . 208

4.1.1 Tour d’horizon du suivi de visage dans une sequence . . 2084.1.2 Suivi par detection ou localisation image par image . . . 2094.1.3 Suivi base sur un modele dynamique de la couleur peau 2124.1.4 Suivi s’appuyant sur un modele d’apparence . . . . . . . 2224.1.5 Suivi utilisant un modele de la dynamique du visage . . 2254.1.6 Suivi par combinaison de plusieurs attributs . . . . . . . 2284.1.7 Discussion et presentation de l’approche implementee . 231

4.2 Choix du detecteur de visages . . . . . . . . . . . . . . . 2354.3 Poursuite du visage . . . . . . . . . . . . . . . . . . . . . 241

4.3.1 Choix de l’espace colorimetrique . . . . . . . . . . . . . 2414.3.2 Suivi par segmentation en composantes connexes . . . . 2524.3.3 Suivi de la teinte chair par Camshift couple . . . . . . . 2584.3.4 Comparaison des deux approches sur les sequences Mi-

crosoft . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2624.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . 269

Page 238: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

208 Detection et suivi de visages dans des sequences d’images

4.1 Poursuite du visage

4.1.1 Tour d’horizon du suivi de visage dans une sequence

La poursuite de visages dans une sequence d’images est un sujet en continueldeveloppement : les difficultes auxquelles font face les approches existantes sont lemanque de robustesse du aux changements des conditions d’illumination, aux oc-clusions partielles, aux changements d’echelle du visage ou encore a un deplacementde la camera.

Les approches globales ou structurelles de la detection de visages peuvent s’ap-pliquer image par image pour poursuivre les visages dans une sequence. Mais soitla complexite calculatoire des approches globales, soit le manque de robustesse desapproches structurelles, font qu’ils ne servent generalement que pour initialiser laposition d’une cible (le visage) a suivre.

Lorsque la position initiale du visage est connue, il peut etre poursuivi tout aulong d’une sequence d’image suivant deux grandes approches : l’une est basee surla detection de mouvement, l’autre sur des modeles. Il existe une vaste litteraturesur le sujet de la detection de mouvement, mais elle ne sera pas developpe dansce memoire. La segmentation des zones en mouvement consiste en une detectionde pixels potentiellement en mouvement dans l’image, par difference d’imagesconsecutives ou avec une image de reference par exemple, et a filtrer temporel-lement, en utilisant l’historique du mouvement dans les images precedentes et unmodele dynamique, les pixels les plus probablement en mouvement. Les approchesbasees mouvement sont generalement rapides mais ne verifient pas que les zonespoursuivies correspondent a un visage. Elles sont souvent utilisees en combinaisonavec une approche basee modele ou pour filtrer des zones de recherche de visages.

Les approches basees sur un modele sont les plus courantes en poursuite de vi-sages. Elles utilisent une information de plus haut niveau que celle du mouvement,et sont donc plus robustes, mais peuvent etre gourmandes en temps de calcul, enparticulier les approches convoluant l’image avec un modele d’apparence du visage.Le modele peut etre un modele d’apparence du visage : la repartition spatiale desniveaux de gris, de contours ou des couleurs du visage. Parmi ces methodes, lemodele le plus employe est celui de la couleur peau, pour la rapidite de traitementqui en decoule, et pour la robustesse de cet attribut du visage aux occlusions par-tielles, aux orientations du visage et son invariance d’echelle. Ce modele peut etreemploye au niveau du pixel, en estimant la probabilite que sa couleur soit de teintechair par retro-projection d’un histogramme modele par exemple, ou a un niveauglobal afin d’integrer la repartition spatiale des couleurs du visage par comparai-son de l’histogramme de la cible avec celui d’une cible candidat. Quelque soit lemodele, une etape de segmentation du visage est necessaire, afin d’en determiner

Page 239: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.1 Poursuite du visage 209

la position. Cette etape peut se faire de maniere deterministe, une segmentationspatiale etant alors operee a partir de la derniere position connue de la cible,par seuillage et/ou regroupement des pixels en une region d’interet dans le casd’un modele pixellique, une recherche de maximum exhaustive ou par montee dugradient dans le cas d’un modele global. Elle peut aussi faire appel a un modeledynamique, integrant une prediction de la nouvelle position de la cible, dans ce casune segmentation spatio-temporelle, tenant compte de l’historique des positions dela cible, est effectuee.

Enfin, plusieurs modalites (mouvement, couleur, apparence, contours) peuventetre integrees dans un systeme de poursuite du visage, afin d’en augmenter larobustesse.

4.1.2 Suivi par detection ou localisation image par image

Les methodes de detection de visages sur une image fixe sont exploitables dansun cadre de poursuite, en les appliquant sur chacune des images de la sequence.Generalement, elles sont utilisees en combinaison avec d’autres informations, telleque le mouvement, par exemple, afin d’eliminer les faux positifs detectes sur deszones immobiles. Elles peuvent aussi etre une etape d’initialisation de la position dela cible poursuivie par des methodes plus rapides utilisant l’information temporelle.

Les approches holistiques sont remarquablement robustes et peuvent etre ap-pliquees a la poursuite de visages, image par image, mais leur complexite peutresulter en des temps de calcul assez eleves. Citons ainsi les travaux suivants :

– les reseaux de neurones convolutionnels reportes par Garcia et Delakis dans[GD04][1] permettent de traiter 4 images de taille 384x288 par seconde avecun Pentium III a 1.6 GHz.

– le detecteur de Viola et Jones adapte aux differentes poses du visage de Li& al [LZ04][2] traite une image 320x240 en 200 ms sur un PIII a 700MHz.

– le detecteur de Viola et Jones utilisant un ensemble etendue de filtres rectan-gulaires (cf 1.2) decrit par Lienhart et Maydt dans [LM02] traite 5 imagesde taille 320x240 par seconde sur un PIV a 2 GHz.

– le detecteur originel de Viola et Jones [VJ01][3] traite une image 384x288 en67 ms, sur un PIII a 700 MHz.

[1] C. Garcia and M. Delakis. Convolutional face finder : A neural architecture for fast androbust face detection. IEEE Transaction on Pattern Analysis and Machine Intelligence,26(11) :1408–1423, 2004.

[2] S. Z. Li and Z. Zhang. Floatboost learning and statistical face detection. IEEE Transactionon Pattern Analysis and Machine Intelligence, 26(9) :1112–1123, 2004.

[3] P. Viola and M. Jones. Rapid object detection using a boosted cascade of simple features.In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition,volume 1, pages 511–518, 2001.

Page 240: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

210 Detection et suivi de visages dans des sequences d’images

Auteurs [GD04] [LZ04] [LM02] [VJ01] [SK00] [RBK98a]Image 384x288 320x240 320x240 384x288 320x240 320x240Temps 143 ms 50 ms 143 ms 17 ms 14 s 143 a 286 ms

Tab. 4.1 – Temps moyen de traitement d’une image, interpole pour un Pentium4 cadence a 2.8 GHz

– le classifieur Bayesien de Schneiderman et Kanade [SK00][4] traite une image320x240 en 90s sur un PII a 450 MHz.

– les reseaux de neurones de Rowley &al [RBK98a][5] traitent une image 320x240en 2 a 4 secondes sur un SGI Indigo 2 a 200 MHz .

Dans le tableau 4.1, nous extrapolons ces temps de calcul pour un processeurPentium IV cadence a 2.8 GHz, en les supposant proportionnelles a la frequenced’horloge du processeur employe, et donnons le taux d’images pouvant etre traiteespar seconde. Cette approximation est grossiere, car le temps de calcul ne dependpas que de la frequence d’horloge du processeur. Avec les nouvelles architecturesil faut se mefier de generaliser trop vite, mais globalement le temps de traitementdepend de :

– l’horloge du CPU, et le temps d’acces a la memoire RAM principal,– la taille de la memoire cache : cache instruction et cache donnees,– le type d’operation et la taille des mots : virgule fixe ou flottante, 16/32/64

bits...– l’optimisation du code : certaines librairies specialisees utilisent mieux tel ou

tel processeur,– l’utilisation d’un co-processeur, celui de la carte video par exemple,– l’utilisation de tables pre-calculees qui reduit les temps de calcul,– la taille de la RAM, pour eviter pagination et swap disque, et y faire tenir

de grandes tables pre-calculees.

Ces performances sont donc donnees a titre indicatif, et peuvent etre vues commedes ordres de grandeurs. Elles ne peuvent etre comparees directement pour uneautre raison : certains parametres, influant directement sur le temps de calculet sur la qualite de la detection, ne sont pas les memes. Ces parametres sont lataille de la retine scannant l’image (et donc la taille de visage minimale pouvantetre detecte), le pas de glissement de la retine, le facteur d’agrandissement de laretine ou de sous-echantillonnage de l’image originale pour construire la pyramided’image.

Le detecteur de Viola et Jones est le plus rapide, mais il n’est robuste que dans

[4] H. Schneiderman and T. Kanade. A statistical model for 3d object detection applied tofaces and cars. In Proceedings of the IEEE Conference on Computer Vision and PatternRecognition, volume 1, pages 746–751, 2000.

[5] H. A. Rowley, S. Baluja, and T. Kanade. Neural network-based face detection. IEEETransactions on Pattern Analysis and Machine Intelligence, 20(1) :23–38, 1998.

Page 241: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.1 Poursuite du visage 211

le cas de visages de face, et donne 10% de faux positifs en plus, pour un meme tauxde detection, que le detecteur de Lienhart et Maydt, qui utilise la meme approchemais avec plus de filtres rectangulaires. Le detecteur de Li & al permet de detecterdes visages de profil (rotation autour de l’axe y de ± 90˚), mais est encore limitea des rotations dans le plan de ± 45˚et des rotations autour de l’axe x de ± 20˚.

A titre de comparaison, le suivi implemente par Seguier dans [Seg04b][6] atteintune cadence de traitement de 200 images 320x240 par secondes soit 5 ms/image,et 67 images/s pour le systeme de Froba et Kublbeck [FK02][7] soit 15 ms/image(mais ce dernier n’est robuste que dans le cas de visages de face).

Les approches structurelles sont moins robustes que les approches globales, endetection ou localisation de visages dans des images fixes. Elle necessite l’utilisationd’un pre-filtre, s’appuyant sur la couleur ou le mouvement par exemple, et lesvisages candidats obtenus par cette approche sont valides par un modele de plushaut niveau.

Ainsi, Hu & al [HWSK04][8] localisent le visage via un modele de teinte chairdans Y CbCr (c.f. p.111), puis localisent les yeux, la bouche et le menton afind’implementer une compression specifique du visage dans le codage d’une video.Les sequences sont traitees off-line et le temps de traitement d’une image n’estpas donnee.

Sobottka & Pitas [SP96a][9] localisent le visage dans une image, en filtrant lesvisages candidats produits par un detecteur de peau (seuillage dans le plan H-S),sur des criteres de taille, de forme elliptique et en verifiant la presence des yeux etde la bouche. Ils appliquent leur methode a des sequences traitees off-line.

Les methodes s’appuyant sur une segmentation du visage par approche colo-rimetrique sont les plus rapides mais aussi les moins fiables. Chai et Ngan [CN99][10]

localisent le visage dans une image en segmentant la peau, definie par un seuillagerectangulaire dans le plan CbCr, par diverses operations de post-processing. Ils

[6] R. Seguier. A very fast adaptive face detection system. In International Conference onVisualization, Imaging, and Image Processing, 2004.

[7] B. Froba and C. Kublbeck. Robust face detection at video frame rate based on edge orien-tation features. Proceedings of the Second IEEE International Conference on AutomaticFace and Gesture Recognition, 00 :327–332, 2002.

[8] M. Hu, S. Worrall, A.H. Sadka, and A. M. Kondoz. Automatic scalable face model designfor 2d model-based video coding. Signal Processing : Image Communication, 19(5) :421–436, May 2004.

[9] K. Sobottka and I. Pitas. Extraction of facial regions and features using color and shapeinformation. In Proceedings of the 13th International Conference on Pattern Recognition,volume 3, 1996.

[10] D. Chai and K.N. Ngan. Face segmentation using skin-color map in videophone applica-tions. IEEE Transactions on Circuits and Systems for Video Technology, 9(4) :551, June1999.

Page 242: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

212 Detection et suivi de visages dans des sequences d’images

traitent une image au format CIF (352x288, 4 :1 :1) en une µs (sic), grace aplusieurs sous-echantillonnages successifs de l’image.

Schumeyer & Barner [SB98][11] segmentent la peau, en utilisant une table pre-calculee indexant les pixels de peau dans le plan a-b, et localisent le visage et lesmains, image par image, dans des videos de langage des signes.

Ces methodes utilisent un modele pre-defini de la peau, et n’utilisent pas d’in-formation temporelle : elles tolerent, dans une certaine mesure, les changementsdans l’environnement de la scene filmee.

4.1.3 Suivi base sur un modele dynamique de la couleur

peau

Nombre de systemes de detection de visages frontaux dans une image fixe sontrapportes dans la litterature mais tres peu traitent explicitement le probleme desvisages penches (rotation dans le plan, autour de l’axe z) ou de profil (rotationhors du plan, autour de l’axe x ou y). Un classifieur seul entraıne a detecter unvisage independamment de son orientation est inefficient avec les techniques declassification existantes : le nombre de faux positifs qui en decoulerait serait tropeleve pour qu’un tel detecteur soit utilisable seul. Dans le domaine de la detectionde visages dans des images fixes, la recherche s’oriente vers des systemes a deux outrois etages : un classifieur estime l’orientation du visage eventuellement presentdans la vignette testee, puis un detecteur specialise sur les visages ayant cettepose la classifie comme visage ou non-visage. Un systeme a trois etages estimel’orientation du visage, applique une rotation dans le plan de l’image d’un angleoppose sur cette vignette puis applique un detecteur conventionnel (appris sur desvisages frontaux ou de profil) sur la vignette contenant alors un visage vertical(mais eventuellement de profil) ou un non-visage.

Pour une sequence d’images couleur le probleme est simplifie : la position duvisage et son inclinaison verticale (i.e. angle par rapport a l’axe x) peuvent etrededuites du modele de teinte chair appris sur le visage detecte de face (voir figure4.2). Une ellipse est ajustee aux contours de la composante connexe correspondantle plus a un visage, ou est calculee a partir des moments spatiaux de Ppeau (equation(4.1)), permettant de delimiter avec precision l’ovale du visage et donnant l’anglede rotation dans le plan (i.e. rotation autour de l’axe z) du visage.

Nous discutons des modeles statiques de couleur de peau au chapitre 2 : unmodele de la couleur peau et eventuellement de la non-peau est appris off-line sur

[11] R. Schumeyer and K. Barner. Color-based classifier for region identification in video. InProceedings of the SPIE Visual Communications Image Processing, volume 3309, pages189–200, 1998.

Page 243: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.1 Poursuite du visage 213

une base d’exemples, et applique sur des images de test en calculant une mesure desimilarite entre chaque pixel et le modele. Les pixels sont alors regroupes en fonc-tion de leur similarite au modele et de leur distribution spatiale, soit par seuillagesuivi de post-traitements pour obtenir une ellipse ou un rectangle englobant levisage, soit en estimant une ellipse de confiance sur les valeurs continues de ladistribution spatiale de la similarite.

La similarite utilisee peut etre la probabilite conditionnelle pour la classe peaud’un pixel p(�x|peau) : dans cette notation, �x designe la couleur du pixel situe a laposition (x, y). Elle peut aussi etre le rapport de vraisemblance de la couleur dupixel �x definie par p(�x|peau)/p(�x|non peau). Nous designerons dans la suite Ppeau

la distribution spatiale de cette similarite, c’est-a-dire que :

Ppeau(�x) = Ppeau(x, y) = p(�x|peau) oup(�x|peau)

p(�x|non peau)(4.1)

Les modeles dynamiques de teinte chair utilisent les memes approches que lesmodeles statiques pour estimer une distribution de probabilite, mais la distributionde la teinte chair est actualisee plus ou moins frequemment en utilisant le resultatdes detections precedentes. Le modele adopte se doit moins d’etre general que dansle cas d’un modele statique, mais doit s’adapter au sujet suivi, aux conditionsd’illumination de la scene et a la camera employee. Pour ce faire, le modele estinitialise au prealable par l’utilisateur ou par un detecteur. Les performances de ladetection de peau sont alors optimales pour la scene etudiee, comparees a l’emploid’un modele statique. La difficulte de la poursuite du visage est alors due auxvariations de la distribution de la couleur peau au cours du temps. Il existe plusieurssources de variabilite de la couleur peau au long d’une sequence d’image :

– Dans une experience de poursuite du visage, la luminosite peut varier radica-lement d’un endroit a l’autre de la scene. La non uniformite de l’eclairementpeut se traduire par une ombre portee sur une partie du visage, et dans lecas d’un sujet mobile par une couleur de peau variable avec la position dusujet dans la scene [SMHL03].

– Les couleurs des sources lumineuses sont aussi variables [SSA04], et l’appa-rence de la couleur peau est differente selon la couleur de la source, commel’illustre la figure 4.1 (a). Ainsi dans une piece obscure, un utilisateur devantun moniteur est eclaire par une source bleu ; en allumant une lampe il estsoudainement eclaire par une lumiere blanche.

– Plusieurs sources de lumiere peuvent etre en presence, comme dans le casd’un sujet proche d’une fenetre et eclaire par un neon [SMHL03] : la lumieredu soleil tire les couleurs vers le bleu car elle contient plus de bleu qu’unesource fluorescente [YW96], voir figure 4.1(b).

– Les webcams standards compensent en partie ces effets par une balance desblancs et un controle automatique du gain, mais cela a pour effet de chan-

Page 244: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

214 Detection et suivi de visages dans des sequences d’images

Effectifs

Hue(a)

Effectif

Hue(b)

Fig. 4.1 – Distribution de la teinte chair (visage, cou et bras), sur le canal Huede HSV discretise sur 32 valeurs : la couleur correspondant a chaque classe del’histogramme est represente. (a) Sujet eclaire par un flash : la couleur des bras dusujet tend vers le bleu. (b) Sujet eclaire par la lumiere du soleil et un eclairementexterieur : la lumiere du soleil donne une forte composante de bleu sur une partiedu visage.

ger les valeurs RGB des pixels durant ces phases de calibration, et donc ladistribution de la teinte chair [Seg04b].

– D’une camera a l’autre la qualite des images capturees n’est pas la meme, etla couleur rendue peut etre quantifiee plus ou moins finement.

Pour toutes ces raisons, un modele statique de la teinte chair appris off-line estgeneralement exclu pour une tache de poursuite de visage (le Camshift [Bra98]est une exception notable, en s’accommodant assez bien d’un modele statiqueinitialise par l’utilisateur), et l’utilisation de l’information de luminance proscritepar la plupart des systemes de suivi bases sur la couleur.

La figure 4.1 donne deux exemples de la variabilite de la couleur en fonction dessources d’eclairement. Les histogrammes representes sont ceux de la teinte chairdu sujet, detouree manuellement (verite terrain de la base ECU), sur le canalHue : voir aussi figure 4.6. Plutot que de donner l’echelle des valeurs de Hue, ony represente la couleur associee aux valeurs de Hue correspondantes : H=0˚estrepresente par le rouge, H=90˚par le cyan, par exemple. Dans l’image (a), unephoto est prise avec un flash, ce qui fait qu’une partie des bras contient du bleu.Dans l’image (b), c’est l’eclairage exterieur, la lumiere du soleil sur une partie duvisage, qui etend la distribution de la teinte chair vers le bleu.

Les methodes adoptees pour l’apprentissage et la mise a jour du modele, ainsique pour la segmentation de la zone a suivre, sont contraintes par le temps-reel. Desmodeles parametriques simples sont souvent utilises pour le peu d’espace memoirequ’ils requierent, leur rapidite acceptable d’execution et parce que dans le casde la poursuite, des arguments d’espace et/ou de temps permettent d’eliminernombre des faux positifs inherents aux approches parametriques. L’approche non-

Page 245: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.1 Poursuite du visage 215

parametrique de la retro-projection d’histogramme est aussi tres employee poursa rapidite d’apprentissage et d’execution. Nous detaillons dans ce paragraphe lestechniques usitees pour mettre a jour dynamiquement un modele de couleur peau.La repartition spatiale de la teinte chair peut aussi etre prise en compte, mais dansles approches presentees dans ce paragraphe, un modele est utilise pour affectera chaque pixel une similarite, et une segmentation en regions d’interet est ensuiteeffectuee. Les modeles d’apparence sont bases sur la distance entre un modeleet une vignette entiere, c’est-a-dire d’un ensemble de pixels, et sont traites auparagraphe suivant.

Oliver & al [OPB97][12] modelisent conjointement la couleur peau dans le planchromatique r-g normalise et l’information spatiale. Chaque pixel du visage estcaracterise par un vecteur de dimension 4 : (x, y, r, g). Le visage est alors modelisepar un melange de Gaussiennes appris off-line, dans cet espace de caracteristique aquatre dimensions. Les parametres de melange et des Gaussiennes sont mis a jourdynamiquement par un algorithme E-M incremental. Pour une cible suivie donnee,un filtre de Kalman d’ordre zero modelise la dynamique du centre de gravite, etun autre celle des dimensions de la cible. La cible predite et l’observation sontensuite fusionnees. Ce systeme permet de traiter 25 images par seconde sur unSGI a 200 MHz, et en ajoutant un module de suivi de la bouche, il est utilise pourl’animation d’avatars.

Yang & Waibel [YW96][13] constatent que, dans le plan r-g normalise, la dis-tribution de la teinte chair se deplace en moyenne mais garde une forme similairelors de variations dans les conditions d’illuminations. Ils modelisent la couleur peaupar une Gaussienne dont les parametres (r, g, Σ) sont initialises sur les pixels dela region d’interet dans laquelle le visage a ete localise au prealable. Cette locali-sation initiale se fait en recherchant la couleur peau, via un modele de teinte chairstatique, sur les pixels en mouvement (aucune autre precision n’est donnee dansl’article). Les parametres de la Gaussienne sont modifies dans les images suivantes,par combinaison lineaire des N parametres precedents de la sequence :

rt =

N−1∑i=0

αt−irt−i gt =∑N−1

i=0 βt−igt−i Σt =

N−1∑i=0

γt−iΣt−i

A l’instant t, le visage est recherche dans une region determinee par le deplacementpredit pour chaque pixel de l’image precedente, prediction basee sur sa vitesse (unfiltrage de type Kalman est juge trop gourmand en temps de calcul). Lorsqu’aucun

[12] N. Oliver, A. Pentland, and F. Berard. Lafter : Lips and face real time tracker. In Pro-ceedings of the IEEE Conference on Computer Vision and Pattern Recognition, volume 1,pages 123–129, 1997.

[13] J. Yang and A. Waibel. A real-time face tracker. In Proceedings of the 3rd IEEE Work-shop on Applications of Computer Vision, page 142, Washington, DC, USA, 1996. IEEEComputer Society.

Page 246: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

216 Detection et suivi de visages dans des sequences d’images

visage n’est trouve, la region de recherche est agrandie. Le temps de traitementd’une image depend de la taille de la zone de recherche : la cadence est de 15images/s si le visage est a 50 cm de la camera, 20 images/s si le visage est a 1 m etplus de 30 images/s si le visage est a plus de deux metres, sur une workstation HP-9000. La determination des parametres α, β, γ est explicitee dans [YWW98][14] :elle se fait par maximisation de la vraisemblance.

Raja & al [RMG98][15] modelisent la teinte chair par un melange de Gaus-siennes (voir equation (2.15), p.96) dans le plan H-S. Le nombre de centres et lesparametres de melange sont determines de maniere iterative en utilisant une based’apprentissage et de validation, off-line, par maximisation de la vraisemblance[MGR98][16]. La position du visage mt = (mt

x, mty) dans l’image t est deduite de

celle de l’image precedente mt−1 et de l’image des probabilites de la teinte chairPpeau. La taille du visage est definie par un rectangle dont la taille est estimee apartir de l’ecart type σt = (σx, σy) de l’image des probabilites :

mt =

∑x∈ROI Ppeau(�x)x∑x∈ROI Ppeau(�x)

σt =

√√√√√∑x∈ROI Ppeau(�x)

((x−mt−1)−mt

)2

∑x∈ROI Ppeau(�x)

ou ROI (Region Of Interest) est un rectangle dans l’image t defini par l’agran-dissement d’un facteur 1.5 (en largeur et en hauteur) du rectangle englobant levisage a l’instant t − 1, x designe la position d’un pixel et �x sa couleur. Un seuilest applique l’image Ppeau, afin d’ameliorer la precision de la localisation : les pixelsayant une valeur inferieure a ce seuil sont classifies comme non-peau et ne sont pascomptabilises dans les formules precedentes. Le melange est ensuite mis a jour surles images suivantes. Une premiere estimation des parametres de melange et desGaussiennes est realise a partir de pixels de l’image a l’instant t. Le modele estensuite mis a jour par une somme ponderee de cette estimation, de l’estimationcalculee a l’image t − L, ou L est une constante reglant l’adaptativite du modele[MRG98][17], et des parametres calcules a l’image precedente. Le modele n’est mo-difie qu’a la condition que la somme Lt du logarithme de la vraisemblance des

[14] J. Yang, L. Weier, and A. Waibel. Skin-color modeling and adaptation. In Proceedings ofthe 3 rd Asian Conference on Computer Vision, volume 2, pages 687–694, 1998.

[15] Y. Raja, S. J. McKenna, and S. Gong. Tracking and segmenting people in varying lightingconditions using colour. In IEEE International of the Third Conference on Automatic Faceand Gesture Recognition, pages 228–233, 1998.

[16] S. J. McKenna, S. Gong, and Y. Raja. Modelling facial colour and identity with gaussianmixtures. Pattern Recognition, 31(12) :1883–1892, 1998.

[17] S. J. McKenna, Y. Raja, and S. Gong. Object tracking using adaptive colour mixturemodels. In Procedding of the Third Asian Conference on Computer Vision, volume I,pages 615–622, 1998.

Page 247: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.1 Poursuite du visage 217

pixels detectes comme etant de peau, somme normalisee par l’effectif de ces pixels,ne decroisse pas de maniere soudaine. Un critere de confiance en la localisation es-timee par le modele de couleur peau est donc introduit. Le critere a verifier est lesuivant : Lt doit etre superieure a la mediane des valeurs de Lt−k sur les 30 imagesprecdentes moins une fois et demie l’ecart type de ces 30 valeurs. Leur systemeatteint des cadences de traitement de 15 images/s sur un processeur ayant unefrequence d’horloge de 200 MHz.

Schwerdt et Crowley [SC00][18] soulignent qu’une modelisation de la couleurpeau par un melange de Gaussiennes apporte une amelioration minime de l’imagedes probabilites, avec un cout calculatoire exorbitant lorsque le modele doit etre re-nouvele. De plus, la robustesse obtenue par une mise a jour frequente d’un modelede la teinte chair base sur les histogrammes depasse largement celle provenant d’unmelange statique de Gaussienne. Dans cet article toutefois, le modele n’est pas re-initialise : un modele dynamique de la couleur peau est utilise dans [CB97][19],le modele de teinte chair y est renouvele lorsqu’une confiance suffisante dans undetecteur de clignement des yeux est obtenue. Dans [SC00] un rapport d’histo-grammes modelise la teinte chair et la non-peau dans le plan r-g. L’image des pro-babilites Ppeau a l’instant t, obtenue en retro-projetant le rapport d’histogrammes,est ponderee par une Gaussienne de moyenne mt−1 et de matrice de covarianceΣt−1 definissant la position, la taille et l’orientation du visage precedemment loca-lise. L’ellipse englobant le visage dans l’image t est alors obtenue en calculant laposition de son centre �mt et son etendue spatiale Σt :

�mt =

∑x Ppeau(�x)xN (x,mt−1, Σt−1)∑x Ppeau(�x)N (x,mt−1, Σt−1)

σtij =

∑�x Ppeau(�x) (xi −mt

i)(xj −mtj)N (x,mt−1, Σt−1)∑

�x Ppeau(�x)N (x,mt−1, Σt−1)

avec {i, j} = {x, y} et x =

(xx

xy

).

Un terme de compensation du mouvement entre les instants t et t− 1 est ajoutea la matrice de covariance :

Σt =

(2(σt

xx + (mtx −mt−1

x )2) σtxy

σtxy 2(σt

yy + (mty −mt−1

y )2)

)

Cette approche est plus robuste qu’un regroupement en composante connexe despixels de teinte chair, par seuillage de l’image des probabilites [CB97][19]. Mais elle

[18] K. Schwerdt and J. L. Crowley. Robust face tracking using color. In Proceedings ofthe Fourth IEEE International Conference on Automatic Face and Gesture Recognition,page 90, Washington, DC, USA, 2000. IEEE Computer Society.

[19] J.L. Crowley and F. Berard. Multi-modal tracking of faces for video communications. InIEEE Conference on Computer Vision and Pattern Recognition, pages 640—645, 1997.

Page 248: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

218 Detection et suivi de visages dans des sequences d’images

est aussi plus calculatoire avec un temps de calcul de l’ordre de 70 ms pour uneimage au format QCIF sur un processeur SGI 02, contre 25 ms pour l’approchebasee sur une composante connexe.

Yoo et Oh [YO99][20] modelisent la teinte chair, dans le plan H-S de l’espaceHSI, par un histogramme de taille 32x32. Pour eux, le rapport d’histogrammespermet de renforcer le contraste, entre l’objet recherche et le fond, dans l’imagede la retro-projection du modele, dans le cas ou le fond est uniforme. Mais ilsillustrent le cas de scenes complexes ou des zones du fond ont des probabilites deteinte chair elevees, engendrant la confusion avec la localisation reelle du visage.De plus le temps moyen de traitement d’une image avec un rapport d’histogrammeest plus eleve qu’avec un histogramme modele seul, avec un facteur de plus 1.5entre les deux. Le visage est localise dans la premiere image de la sequence, enretro-projetant un histogramme appris off-line en moyennant la distribution dela teinte chair de 100 visages dans le plan H-S. L’image de la retro-projectionest lissee par un noyau Gaussien, et le resultat est binarise avec un seuil fixe.Les composantes connexes trop petites sont eliminees, et pour chaque composanterestante, l’ellipse la mieux ajustee est evaluee a partir des moments spatiaux dela composante ([SP96a][9]). L’ellipse dont le rapport grand axe sur petit axe est leplus pres du nombre d’or (1 +

√5/2) definie la localisation du visage ; si aucune

ellipse n’a de rapport proche de ce nombre a une tolerance pres, le visage n’est pasdetecte. Le visage est alors suppose garder cette forme dans les images suivantes dela sequence : la taille du visage est fixe, et doit etre relativement de face. Le visageest poursuivi dans les images suivantes en estimant le mouvement du centre del’ellipse : mt+1 = mt +(mt−mt−1). Une recherche du maximum local de la valeurmoyenne de Ppeau des pixels a l’interieur de l’ellipse, est operee en deplacant lecentre de l’ellipse selon une spirale autour du centre predit. L’histogramme modeleest alors remplace par celui des pixels inclus dans l’ellipse ainsi determinee. Surune station de travail Sun SuperSPARC RISC a 60 MHz avec 64 Mb de RAM, ilsatteignent des cadences de traitement de l’ordre de 7 images 160x120 par secondeet 3.5 images 240x180 par seconde. Une idee interessante est developpee dansl’epilogue de cet article pour reduire les temps de traitement : ne traiter qu’uneimage sur k de la sequence. Utilisant une camera capturant 30 images par seconde,ils constatent que le mouvement humain est relativement lent, et poursuivent levisage une fois toutes les k = 5 images sans perte notable de precision.

Soriano & al [SMHL03][21] definissent dans un premier temps le domaine dela teinte chair dans le plan r-g normalise, par une procedure de calibration de la

[20] T.-W. Yoo and I.-S. Oh. A fast algorithm for tracking human faces based on chromatichistograms. Pattern Recognition Letter, 20(10) :967–978, 1999.

[21] M. Soriano, B. Martinkauppi, S. Huovinen, and M. Laaksonen. Adaptive skin color mode-ling using the skin locus for selecting training pixels. Pattern Recognition, 36(3) :681–690,2003.

Page 249: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.1 Poursuite du visage 219

camera [SAG99][22] sous quatres sources lumineuses differentes et deux types depeau (caucasien et asiatique). Ce domaine est, dans le plan r-g normalise, une sur-face delimitee par deux polynomes du second degre gd et gu : si gd(r) < g < gu(r)alors le pixel de chromaticite (r,g) est un pixel de teinte chair. Ce filtre n’estpas utilise directement sur l’image, comme pour la detection de visage decriteimplementee dans [HPM02][23], mais sert a selectionner les pixels a utiliser pourre-evaluer le modele de teinte chair lors de la poursuite. La position initiale duvisage est definie manuellement par l’utilisateur. La teinte chair et la couleur non-peau sont modelisees par un rapport d’histogrammes de taille 64x64, l’histogrammede la couleur non-peau etant definie par celui de l’image entiere. Ils deconseillentl’emploi d’un modele parametrique parce qu’il necessite une metrique, la distancede Mahalanobis, pour calculer la probabilite d’un pixel d’etre de couleur peau et estdonc plus lent. La localisation du visage dans la premiere image de la sequence estdefinie manuellement par l’utilisateur. L’histogramme des pixels dont la chromati-cite tombe dans le domaine de la teinte chair, de la camera prealablement calibree,sert alors de modele de la couleur peau. Le rapport d’histogrammes est retro-projete sur l’image suivante ; l’image des probabilites de la teinte chair Ppeau subitquelques operations de morphologies mathematiques, et un rectangle englobant lacomposante connexe la plus large definit la localisation du visage. L’adaptation dumodele pour l’image suivante commence alors : les pixels de l’image a l’instant tinscrits dans le rectangle englobant et dont la couleur se trouve dans le domaine dela teinte chair sont filtres pour modeliser la couleur peau. Il en resulte le rapportd’histogramme Rt. Le rapport d’histogrammes Rt+1 retro-projete dans l’image del’instant t+1 est alors la moyenne des histogrammes des deux images precedentes :

Rt+1 =(1− α)Rt + αRt−1

max((1− α)Rt + αRt−1)

Le denominateur sert a normaliser les valeurs du rapport d’histogrammes resultantentre 0 et 1. Le parametre α est un parametre controlant la vitesse d’adaptationet est choisi egal a 0.5. Les auteurs soulignent qu’adapter le modele de couleurpeau, en moyennant la distribution de la couleur peau, sur plusieurs localisationsprecedentes (plus que deux) reduit le niveau de confiance que l’on peut avoir enl’information contenue dans le rapport d’histogrammes. Il se peut qu’alors unecouleur se voit attribuer une forte probabilite de teinte chair, alors qu’elle ne faitplus partie des couleurs composants le visage. Cette situation arrive lorsque lacouleur de la peau subit un changement trop rapide dans le temps. L’adaptationdu modele utilisant le domaine de la teinte chair est comparee a une approche

[22] M. Storring, H. J. Andersen, and E. Granum. Skin colour detection under changing lightingconditions. In 7th International Symposium on Intelligent Robotic Systems, pages 187–195,1999.

[23] A. Hadid, M. Pietikainen, and B. Martinkauppi. Color-based face detection using skinlocus model and hierarchical filtering. In Proceeding of the 14th International Conferenceon Pattern Recognition, pages 196–200, 2002.

Page 250: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

220 Detection et suivi de visages dans des sequences d’images

similaire a celle de Yoo et Oh [YO99]. Les pixels utilises pour adapter le modele decouleur peau sont filtres par l’ellipse inscrite dans le rectangle localisant le visage al’image precedente. Cette derniere approche est moins robuste, notamment lorsquele sujet passe par des zones d’ombres, le modele s’adaptant alors a des couleurs dufond de la scene.

Dans [SHML00][24], la region de recherche du visage dans l’image a t + 1 estdefinie en agrandissant d’un certain facteur la taille du rectangle englobant levisage a l’instant t. Un post-traitement de Ppeau un peu different est utilise, maisla mis a jour du modele de teinte chair correspond a son remplacement par lemodele de couleur du visage localise a t avec le meme filtre specifique a la camera.

Girondel & al [GCB06][25] initialise un systeme de suivi d’une personne et deses mains a l’aide d’un seuillage rectangulaire dans le plan Cb−Cr : le visage ainsique les mains sont localises sur des criteres de taille et de position. Puis les seuilssont adaptes de maniere iterative. Dans les image suivantes, le filtre rectangulaireest deplace vers la valeur moyenne des pixels du visage precedemment localise(deplacement d’un pas de un dans chaque direction du plan Cb − Cr) et reduit(d’un meme pas) si il est de taille superieure a 15x15. La detection de la peaudevient stable apres une trentaine d’images (au bout d’une seconde). Le memesysteme de suivi est utilise dans [GBC02, GBC03][26,27].

Le Camshift et le Camshift couple (voir tableaux 4.10 et 4.11) introduits parBradski [Bra98][28] modelisent la teinte chair par un histogramme sur le canalHue de HSV. La position du visage dans la premiere image est definie manuelle-ment. Mais le modele de teinte chair n’est jamais renouvelle. Gracia-Roche & al[GROBH05][29] utilisent une version modifiee du Camshift, et mettent a jour lemodele de teinte chair sur le canal Hue. La region de recherche est definie a partirde la position du visage dans les images precedentes, par un modele dynamiquelineaire du second ordre a acceleration constante, bien que les auteurs precisent

[24] M. Soriano, S. Huovinen, B. Martinkauppi, and M. Laaksonen. Skin detection in videounder changing illumination conditions. In Proceeding of the 15th International Conferenceon Pattern Recognition, pages 839–842, 2000.

[25] V. Girondel, A. Caplier, and L. Bonnaud. A human body analysis system. EuropeanJournal on Applied Signal Processing - EURASIP-JASP, 18 pages, to appear, 2006.

[26] V. Girondel, L. Bonnaud, and A. Caplier. Hands detection and tracking for interactivemultimedia applications. In Proceedings of International Conference on Computer Visionand Graphics, pages 282–287, Zakopane, Poland, 2002.

[27] V. Girondel, L. Bonnaud, and A. Caplier. Hands detection and tracking for interactivemultimedia applications. Archives of Theoretical and Applied Informatics, 2003.

[28] G.R. Bradski. Computer vision face tracking for use in a perceptual user interface. IntelTechnology Journal, Q2 :15, 1998.

[29] J.J. Gracia-Roche, C. Orrite, E. Bernues, and J.E. Herrero. Color distribution tracking forfacial analysis. In Proceedings of the Second Iberian Conference Pattern Recognition andImage Analysis, pages 484–491, 2005.

Page 251: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.1 Poursuite du visage 221

que centrer cette region de recherche sur la position precedente est une approxi-mation valide pour une frequence d’acquisition de la sequence superieure a 15 Hz.Le modele H t+1 est mis a jour en utilisant la distribution Hm des couleurs despixels inclus dans l’ellipse de confiance a 99%, decrite en page 261, estimee sur lesmoments d’inertie des pixels de Ppeau situes dans la region de recherche. Un filtredu second ordre est utilise comme dans [SMHL03][21].

Sigal & al [SSA04][30] modelisent la peau et la non-peau par un histogramme32x32x32 dans l’espace HSV, et modelisent la dynamique de ces histogrammes.L’initialisation de la position du visage se fait en seuillant la retro-projection d’unmodele appris off-line dans l’espace RGB [JR02b][31]. Dans cet article, un modelede Markov du second ordre est employe pour predire l’evolution dynamique dumodele de teinte chair dans l’espace HSV. La dynamique du modele est parametreeen faisant l’hypothese que son evolution se fait de maniere globale, c’est-a-dire quela distribution de la teinte chair n’evolue ou ne se deforme pas de maniere locale :les deformations globales du modele sont supposees affines. Les parametres dumodele dynamique de la distribution de teinte chair sont au nombre de huit :une translation par canal, definie par leur valeur moyenne, un parametre d’echellepar canal, la valeur de l’ecart type, et les deux angles d’Euler de la distribution.Ces angles sont definis entre les vecteurs propres des matrices de covariances desdistributions de la teinte chair aux instants τ + k et τ . Un vecteur d’etat a huitparametres est ainsi constitue :

s = [TH , TS, TV , SH, SS, SV , θ, φ]T

Les dynamiques de la distribution de la couleur peau et de la distribution de lanon peau sont donnees par un modele auto-regressif de Markov :

sn+1 = A0sn−1 + A1sn + (I −A0 − A1)s + Bwn

ou wn modelise un mouvement Brownien de moyenne nulle et de variance unite. Lesparametres du modele de Markov, pour l’image a l’instant t+1, sont estimes sur lesimages τ = t−n−2, reference pour le calcul des angles d’Euler, a t−2. Ce modelepermet de predire un modele, pour chaque classe peau et non peau, H t

p a partir dumodele a l’instant precedent H t−1. Le visage est segmente par post-traitement dePpeau : lissage, seuillage, et choix de la plus grande composante connexe. Ppeau al’instant t est obtenue par retro-projection du rapport d’histogrammes, ou chacundes histogrammes, celui de la peau et de la non peau, a ete adapte dynamiquementa la sequence en utilisant l’histogramme predit H t

p et l’histogramme modele estime

[30] L. Sigal, S. Sclaroff, and V. Athitsos. Skin color-based video segmentation under time-varying illumination. IEEE Transactions on Pattern Analysis and Machine Intelligence,26(7) :862–877, 2004.

[31] Michael J. Jones and James M. Rehg. Statistical color models with application to skindetection. International Journal of Computer Vision, 46(1) :81–96, 2002.

Page 252: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

222 Detection et suivi de visages dans des sequences d’images

a l’image precedente :H t = (1− α)H t−1 + αH t

p

Le parametre α du modele de couleur peau est determine sur trois sequencesd’apprentissage, en mettant a zero le parametre d’adaptation du modele de non-peau. Le parametre d’adaptation optimal est choisie en analysant la courbe CORet la trace de la matrice de confusion sur ces sequences, pour des valeurs croissantesde α : il est egale a 0.8. Fixant cette valeur pour l’adaptation du modele de teintechair, la meme analyse est conduite pour le modele de non-peau mais les deuxmesures de performance de la classification basee sur le modele de non-peau sontpratiquement constantes en fonction de α. α est alors arbitrairement choisie egalea 0.6 pour la non-peau. Le parametre d’adaptation du modele de teinte chair estplus eleve que celui du modele de non-peau car la couleur de la peau varie plus,au long d’une sequence acquise avec une camera fixe, que celle du fond.

4.1.4 Suivi s’appuyant sur un modele d’apparence

Les approches precedentes construisent une image Ppeau, ou chaque pixel del’image a l’instant t se voit attribuer une probabilite de correspondre a un modeledetermine aux instants anterieures. Un modele global attribue a plusieurs sousimages, dont la taille et la position sont choisies de maniere deterministe dans ceparagraphe, une vraisemblance (une distance ou une probabilite) et la vignetteayant la vraisemblance la plus elevee localise le visage. Le modele peut etre unmodele d’apparence actif [HD05, Ahl02], un modele 3D deformable [DD04] ouencore un modele de couleur [CRM03].

Dornaika et Davoine [DD04][32] utilisent le modele 3D filaire Candide employeen synthese d’image et animation graphique. Ce modele est constitue de trianglesdont les sommets correspondent a des amers du visage. Le modele de visage estdonne par les coordonnees (x, y, z) des n sommets. Soit le vecteur �g de dimension3n concatenant ces coordonnees. La variabilite de la forme et l’animation des traitsdu visage est approximee par une relation lineaire :

�g = �g + S�σ︸ ︷︷ ︸�gS

+A�α

ou �g est la forme standard du modele, S�σ modelise la variabilite inter-personne dela forme du visage, et A�α modelise l’animation des traits du visage. �gS est la formestatique du modele de visage. La matrice S contient les parametres de deformationdu modele filaire pour l’adapter au visage d’un sujet : largeur du visage, des yeux,

[32] F. Dornaika and F. Davoine. Online appearance-based face and facial feature tracking. InProceedings of the 17th International Conference on Pattern Recognition, volume 3, pages814–817, 2004.

Page 253: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.1 Poursuite du visage 223

distance inter-yeux, etc. La matrice A definit les animations possibles des traitsdu visage : machoire, levres, commissure des levres et sourcils. Elle est basee surle systeme FACS [EF77][33]. Pour une personne donnee, l’etat b du modele filaireest determine par les parametres 3D de position et d’orientation du visage (troistranslations et trois rotations) et le vecteur �α de controle de l’animation :

b = [θx, θy, θz, tx, ty, tz, αT ]T

Dans une sequence, la position initiale des sommets est supposee connue : la pour-suite du visage et de ses traits consiste alors a determiner bt pour l’image t. Lescoordonnees 3D des sommets sont projetees dans le repere de l’image pour obtenirun modele filaire 2D. La texture du visage modelise par les parametres de b dansune image y est normalisee geometriquement. Cette normalisation est definie enmappant sur une image, de taille donnee, la texture des triangles 2D obtenus, parune transformation affine lineaire par morceaux de �gS :

x(b) =W(y,b)

Le modele d’apparence At utilise a l’image yt de l’instant t est construit a partirde la texture du visage precedemment localise. La vraisemblance d’une observationb donnee est definie par la correlation croisee entre le modele d’apparence et latexture xt(b) =W(yt,b). Le vecteur de parametres optimale b∗ est alors celui quimaximise cette vraisemblance. Le modele d’apparence est alors mis a jour pourl’image suivante :

At = λxt(b∗t) + (1− λ)At

Dans [DD05][34], les auteurs decouplent les parametres de localisation du visage etceux d’animation, ces derniers etant estimes simultanement a la reconnaissance del’expression du visage par un filtrage particulaire, et estiment les parametres 3Dde la pose du visage en 25 ms/image sur un processeur cadence a 3.2 GHz.

Ahlberg [Ahl02][35] implemente un modele d’apparence actif [CET01][36] a l’aidedu modele Candide : dans ce cas, l’analyse en composante principale d’une based’exemples de visage est realisee. Cete analyse porte sur la texture normaliseegeometriquement des exemples d’apprentissage, et conduit a une texture moyennex et un ensemble d’eigenfaces, des textures permettant d’expliquer 95% de la

[33] P. Ekman and W.E. Friesen. Facial Action Coding System. Consulting Pychologist Press,1977.

[34] F. Dornaika and F. Davoine. Simultaneous facial action tracking and expression recognitionusing a particle filter. In Proceedings of the Tenth IEEE International Conference onComputer Vision, pages 1733–1738, 2005.

[35] J. Ahlberg. An active model for facial feature tracking. EURASIP Journal on AppliedSignal Processing, 2002(6) :566–571, 2002.

[36] T.F. Cootes, G.J. Edwards, and C.J. Taylor. Active appearance models. IEEE Transactionson Pattern Analysis and Machine Intelligence, 23(6) :681–685, 2001.

Page 254: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

224 Detection et suivi de visages dans des sequences d’images

variabilite du modele de texture, concatenes dans une matrice X. Une texturex(b) donnee est alors approximee par x(b) avec :

x(b) = x + XXT (x(b)− x)

Le suivi du visage est alors opere en recherchant le minimum du residu r(b) :

r(b) =‖ x(b)− x(b) ‖2

Cette recherche se fait par descente du gradient de r(b), descente initialisee a l’esti-mation de b de l’image precedente. La position initiale du visage dans la sequenceest obtenue en segmentant l’image Ppeau de la distribution spatiale de la teintechair, modelisee par un melange de Gaussiennes appris par E-M. Les parametresinitiaux b sont alors determines par recherche du minimum du residu du modeled’apparence actif sur le visage segmente. L’utilisation d’une base d’apprentissagelimite la precision de la poursuite lors d’une rotation hors du plan du visage (ro-tation autour de x ou de y), compare a [DD05][34] ou aucun modele a priori n’estutilise. Le temps moyen de traitement d’une image, pour une texture normaliseede taille 40x42, est de l’ordre de 70 ms sur une image en niveau de gris, sur unPIII a 500 MHz.

Comaniciu & al [CRM03, CRM00][37,38] utilisent les noyaux de Parzen [DHS00][39]

pour definir un modele d’apparence. Le visage est modelise par un histogramme128x128 dans le plan r-g defini par un noyau K d’Epanechnikov :

K(�x) =

{1− ‖ �x ‖2 si ‖ �x ‖< 1

0 sinon

Le visage est represente dans l’image par une ellipse. La position et la taille initialedu visage sont supposees connues. L’ellipse est normalisee en taille de maniere aetre representee par un cercle de rayon 1. Pour ce faire, les coordonnees des pixelsde l’image sont divises independamment d’un facteur hx et hy respectivement. Soit

alors { �x∗i }i=1...n les positions normalisees des pixels du visage (la cible), suppose

centre en �0. Le noyau est utilise pour construire le modele de teinte chair endonnant plus de poids aux couleurs situees au centre du visage, et en attenuantl’effet des couleurs situees a sa peripherie. Soit b la fonction b : R2 → {1...m} quia un pixel �x∗

i associe l’indice b( �x∗i ) de la classe de l’histogramme correspondant

[37] D. Comaniciu, V. Ramesh, and P. Meer. Kernel-based object tracking. IEEE Transactionson Pattern Analysis and Machine Intelligence, 22(5) :564–577, May 2003.

[38] D. Comaniciu, V. Ramesh, and P. Meer. Real-time tracking of non-rigid objects using meanshift. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition,volume 1, pages 142–149, 2000.

[39] R.O. Duda, P.E. Hart, and D.G. Stork. Pattern Classification (2nd Edition). Wiley-Interscience, 2000.

Page 255: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.1 Poursuite du visage 225

a sa couleur (m=128x128 ici). Le visage est alors modelise par l’histogramme decouleur q = {qu}u=1...m, ou l’effectif de la classe u est calculee par :

qu = C

n∑i=1

K( �x∗i )δ(b( �x∗

i )− u)

avec δ le symbole de Kronecker, et C une constante de normalisation de l’histo-gramme.Notons {�xi}i=1...nh

la position normalisee des pixels d’un visage candidat centreen �y dans l’image courante. La couleur du visage candidat est modelisee par unhistogramme p(y) = {pu}u=1...m 128x128 dans le plan r-g, ou l’effectif de la classeu est calcule, a un facteur de normalisation pres, par :

pu(y) =

n∑i=1

K(�xi − �y

h)δ(b(�xi)− u)

ou le facteur d’echelle h definie la taille du visage candidat.Le visage candidat est donc represente par son histogramme de couleur, et sarepartition spatiale est donc en partie integree par ce modele. La localisationconsiste alors a trouver le visage candidat le plus similaire a la cible en terme decouleurs, par comparaison d’histogrammes [MS91][40]. La metrique utilisee pourcomparer la distribution des couleurs de la cible et du visage candidat est le coef-ficient de Bhattacharyya ρ[p(y), q]. Ce coefficient definit la distance de Bhattacha-ryya entre les deux distributions d(y) =

√1− ρ[p(y), q] :

ρ[p(y), q] =

m∑u=1

√pu(y)qu

Le visage est alors localise en recherchant le maximum local le plus proche duvisage localise a l’image precedente. Cette recherche est faite par une procedure demean shift (voir tableau 4.9, p.260). La taille du visage est determinee en procedanta cette recherche avec trois facteurs d’echelle : celui de l’image precedente hprec eta ± 10% cette valeur. Le facteur d’echelle optimal hopt est celui qui maximise lecoefficient de Bhattacharyya, apres convergence du mean-shift. La taille du visageh est finalement definie par ht = γhopt +(1−γ)ht−1. Sur un processeur a 1 GHz, lesuivi d’objet par cette methode peut traiter 150 images par seconde. La localisationest amelioree en utilisant un filtre de Kalman pour estimer la position initiale dumean shift.

[40] D.H. Ballard M.J. Swain. Color indexing. International Journal of Computer Vision,7(1) :11–32, 1991.

Page 256: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

226 Detection et suivi de visages dans des sequences d’images

4.1.5 Suivi utilisant un modele de la dynamique du visage

Nous avons deja vu certaines approches du suivi utilisant une estimation dumouvement pour predire la region de recherche du visage a l’image suivante, a l’op-pose des approches deterministes recherchant le visage a partir de sa localisationprecedente. Un nombre croissant d’auteurs emploient le filtrage particulaire pourimplementer un suivi d’objet. L’idee est d’appliquer un filtre Bayesien recursif aplusieurs localisations hypothetiques de l’objet, les particules, et de fusionner ceshypotheses en fonction de leur vraisemblance, conditionnellement a l’etat predit.

La cible poursuivie est representee par son etat s a l’instant t. Cet etat peut, parexemple, etre celui d’un rectangle s = (xt, yt, xt, yt, wt, ht) [PHVG02, BMC05][41,42]

ou une ellipse droite s = (xt, yt, xt, yt, wt, ht, wt, ht) [NKMG02, NKMG03][43,44], oud’orientation θ s = (xt, yt, xt, yt, θ, wt, ht, wt, ht) [JSR05][45], modelisant la cible.

Une particule s(n) represente une hypothese sur l’etat de la cible, et est pondereepar une probabilite π(n) de correspondre au modele. Un ensemble de N particulesexplore l’espace d’etat de l’objet a suivre. Les particules sont propagees suivant unmodele de mouvement. Cela peut etre un modele de mouvement au premier ordre[JSR05, NKMG02][45,43] :

st = Ast−1 + ωt−1

ou ωt−1 est une variable aleatoire Gaussienne. Perez & al [PHVG02][41] utilisentun modele dynamique auto-regressif du second ordre :

st+1 = Ast + Bst−1 + ωt−1

La probabilite π(n) d’observation de la particule n est alors calculee, en fonctiondu modele employe. L’etat moyen de l’ensemble des particules est alors calcule,pour constituer le nouvel etat de la cible a l’instant t :

E[s] =

N∑n=1

π(n)s(n)

[41] P. Perez, C. Hue, J. Vermaak, and M. Gangnet. Suivi adaptatif d’objets non rigides base surdes histogrammes de couleur et une selection automatique des parametres. In Proceedingsof 7th European Conference on Computer Vision, volume I, pages 661–675, 2002.

[42] E. Bichot, L. Mascarilla, and P. Courtellemont. Segmentation par analyse du mouvementpour guider le filtrage particulaire. ORASIS Congres Francophone en Vision par Ordina-teur, 2005.

[43] K. Nummiaro, E. Koller-Meier, and L. Van Gool. Object tracking with an adaptive color-based particle filter. In In Symposium for Pattern Recognition of the DAGM, pages 353 –360, 2002.

[44] K. Nummiaro, E. Koller-Meier, and L.J. Van Gool. An adaptive color-based particle filter.Image and Vision Computing, 21(1) :99–110, 2003.

[45] A. Jacquot, P. Sturm, and O. Ruch. Suivi adaptatif d’objets non rigides base sur deshistogrammes de couleur et une selection automatique des parametres. In ORASIS CongresFrancophone en Vision par Ordinateur, 2005.

Page 257: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.1 Poursuite du visage 227

Les particules sont alors re-echantillonnees, pour assurer une evolution correcte del’ensemble de particules : les particules de poids le plus fort sont dupliquees etles moins vraisemblables sont eliminees [LeG03][46]. Le modele employe est alorseventuellement adapte.

Nummiaro & al [NKMG02][43] modelisent ainsi le visage par un histogramme q8x8x8 dans l’espace RGB. Un noyau d’Epanechnikov est utilise lors de la determinationde la distribution des couleurs de la cible ou d’une particule pour diminuer les effetsde bords. La distance d’une particule, dont la distribution des couleurs est p(s(n)),au modele de la cible est donnee par la distance de Bhattacharyya. La probabilited’observation d’une particule est alors donnee par :

π(n) =1√2πσ

e−1−ρ[p(s(n)),q]

2σ2

ou σ sert a normaliser les poids. Le modele de couleur est adapte lorsque la pro-babilite d’observation de l’etat moyen est superieure a un seuil :

qt = (1− α)qt−1 + αp(E[s]) si πE[s] ≥ πT

Le suivi du visage traite une image en 10 a 90 ms avec 100 particules (pour depetits visages).

Dans [NKMG03][44], le modele de couleur est determine a l’avance, et un cer-tains nombre de particules sont initialisees dans les voisinages ou un visage estsusceptible d’apparaıtre. La valeur moyenne et l’ecart type du coefficient de Bhat-tacharyya de ces particules sont calcules pour determiner l’apparition d’un sujet,ou sa disparition. Le filtre particulaire y est aussi compare au suivi par mean shiftde [CRM03][37].

Jacquot & al [JSR05][45] implemente une approche similaire, en affectant despoids selon une fonction exponentielle de la distance de Bhattacharyya :

π(n) = e−βd(n)

Les auteurs adaptent en revanche le modele en utilisant une condition inverse decelle de Nummiaro : l’idee est de ne remettre a jour le modele que lorsqu’il n’est pluscorrect (i.e. lorsque πE[s] ≤ πT ). Ils soulignent qu’adapter le modele lorsque la ciblecandidate est suffisamment similaire a la cible suivie peut se solder en une deriveprogressive de la cible modelisee. Ce faisant, leur approche permet de modeliserle visage meme lorsqu’il change d’apparence notamment lorsque le visage tournele dos a la camera. Afin de conserver davantage l’information spatiale du visage,l’ellipse representant le visage est divisee en quatres quartiers, comme explique

[46] F. LeGland. Filtrage particulaire. In Actes du 19eme Colloque GRETSI sur le Traitementdu Signal et des Images, volume II, pages 1–8, 2003.

Page 258: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

228 Detection et suivi de visages dans des sequences d’images

dans [PHVG02]. La quantification de l’espace RGB, i.e. le nombre de classes del’histogramme modele, est selectionne automatiquement.

Perez & al [PHVG02][41] utilisent un histogramme 10x10x10 dans l’espace HSV.Dans leur approche, ce modele n’est adapte a aucun moment. Une detection devisage est realisee en utilisant un modele de teinte chair appris off-line, et unedetection du mouvement par difference d’images successives. L’etat du visage-cibleest definie par un rectangle de rapport hauteur/largeur donne :

st = (xt, yt, xt−1, yt−1, wt, wt−1)

Le poids affecte aux particules varie selon une loi exponentielle du carre de ladistance de Bhattacharyya. Leur approche permet de suivre des visages 25x25pixels en 50 images/s avec 100 particules sur un PIII a 747 MHz. Dans le cas d’unobjet partitionne en sous-objets R(x) = ∪Rj(x), le poids affecte a une particule estune fonction exponentielle de la somme du carre des distances au modele de chaquesous-partie. Dans le cas ou la camera est fixe et qu’une image de reference du fondpeut etre obtenue, le fond est aussi modelise, et deux distances de Bhattacharyyasont calculees par particules. Le cas du suivi de plusieurs personnes y est aussitraite, et la methode est robuste aux occlusions inter-personnes.

4.1.6 Suivi par combinaison de plusieurs attributs

Plusieurs modalites peuvent etre mises en cooperation pour detecter et pour-suivre le visage, nous en donnons quelques exemples, uniquement bases sur l’image,dans ce paragraphe.

Ainsi, McKenna & al [MGR98, MGC96, MG96][16,47,48] combinent l’informationde mouvement, un modele d’apparence voire un modele de teinte chair. Les visagessont detectes par un reseau de neurones discriminant appris sur des exemples devisages [RBK98a][5]. Le mouvement des points de contour de l’image est suivipar un filtre de Kalman, reduisant l’espace de recherche du ou des visages, eteliminant les faux positifs detectes par le reseau de neurones. Dans [MG96][48],les auteurs appliquent une transformee en ondelette de Gabor pour determiner lapose du visage, apres analyse en composante principale. Un modele de teinte chairremplace le detecteur de visages dans [MGR98][16].

Crowley et Berard [CB97][19] combinent une detection du clignement des yeux,de la teinte chair et un suivi par correlation croisee. Le clignement des yeux est

[47] S. J. McKenna, S. Gong, and J.J. Collins. Face tracking and pose representation. BritishMachine Vision Conference, 2 :755–764, 1996.

[48] S. J. McKenna and S. Gong. Tracking faces. In Proceedings of the Second InternationalConference on Automated Face and Gesture Recognition, Killington, Vermont, October1996.

Page 259: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.1 Poursuite du visage 229

detecte par difference d’image successives : cette difference est seuillee et une re-cherche de composantes connexes est realisee. Les yeux candidats sont selectionnesen fonction de leur hauteur et de leur largeur. Les candidats sont alors regroupespar paires en fonction de leur distance et de leur position verticale. Un visage candi-dat pour chaque paire est alors modelise par un rectangle de taille proportionnellea la distance inter-yeux, et un facteur de confiance lui est affecte. Le modele deteinte chair, un histogramme dans le plan r-g, est re-initialise a chaque fois qu’unclignement des yeux est detecte, evenement ayant lieu en moyenne toutes les 40 se-condes car le clignement doit avoir lieu entre deux images consecutives. L’image dela repartition spatiale Ppeau de la probabilite de teinte chair est calculee par retro-projection de l’histogramme. Le rectangle determine par detection du clignementdes yeux est place au centre de gravite de Ppeau, et un facteur de confiance lui estaffecte en le comparant a une largeur et une hauteur ideale selon une loi normale.La detection d’un clignement des yeux initie aussi une poursuite par correlationcroisee. Le masque de correlation est l’image en niveau de gris d’un oeil candi-dat, au moment ou le clignement des yeux a ete detecte. La region de recherche,dans laquelle la correlation est calculee sur plusieurs voisinages, est determinee enestimant le mouvement du sujet. Un facteur de confiance est affecte a cette pour-suite. Les trois facteurs de confiance sont ensuite combines : tant que le facteur deconfiance associe a la poursuite est eleve, les yeux sont poursuivis par correlation,sinon le modele de teinte chair prend le relais tant qu’aucun clignement n’est anouveau detecte. Cette approche permet de traiter 20 images par secondes sur unprocesseur cadence a 200 MHz.

Birchfield [Bir98][49] combinent un modele d’ellipse et un modele de teinte chair,image par image, et localisent un visage en 30 a 60 ms sur un Pentium Pro 200MHz.Le visage est represente par une ellipse de rapport hauteur/largeur de 1.2 ; la po-sition et la taille initiale du visage est supposee connue. Un visage candidat a laposition (x, y) et de largeur σ est alors defini par l’etat s = (x, y, σ). Plusieurshypotheses d’etats sont considerees, en fonction d’une prediction de la vitesse duvisage. Pour un etat donne, une mesure φg(s) du module moyen du gradient despixels de la peripherie de l’ellipse est calculee. Avant le suivi, un histogrammemodele M de la teinte chair est calcule pour un utilisateur donne. L’espace co-lorimetrique utilise est defini par le triplet (B-G, G-R, B+G+R). L’intersectiond’histogramme [MS91][40] φc(s) entre l’histogramme des couleurs du candidat s etle modele M. Le visage est localise en maximisant la somme de ces deux attributsproprement normalises :

s∗ = arg maxsi

φg(si) + φc(si)

[49] S. Birchfield. Elliptical head tracking using intensity gradients and color histograms. InProceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages232–237, 1998.

Page 260: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

230 Detection et suivi de visages dans des sequences d’images

Seguier [Seg04b, Seg04a][6,50] combine une segmentation de la teinte chair, uneestimation du mouvement et un detecteur d’ellipse. Une detection d’ellipse estrealisee par une Transformee de Hough Floue Generalisee [SGL95, LBCS03][51,52],l’orientation des contours etant quantifiee sur 4 niveaux (horizontale, verticale etdeux orientations diagonales). Les contours extraits a l’instant t−1 sont comparesa ceux de l’instant t par block matching pour mesurer la quantite de mouvementdans l’image, et la detection d’ellipse ne prend en compte que les contours enmouvement afin d’eliminer la contribution des points du fond de la scene. En debutde sequence, l’extraction des contours se fait sur le canal Cr. Lorsque les resultatsde la poursuite et du detecteur d’ellipse sont en accord sur N = 5 images de suite, levisage candidat est alors confirme comme visage. Intervient alors une modelisationde la teinte chair. La signature du visage dans le plan Cb − Cr est determinee demaniere adaptative en analysant les histogrammes des canaux Cb et Cr, sur N = 5detections. Cette signature snew est definie par la moyenne et l’ecart type desvaleurs de Cb et de Cr des pixels du visage localise scurrent = [Cb, Cr, σCb, σCr] etpar la signature precedente sold :

snew = 0.9sold + 0.1scurrent

L’extraction des contours se fait alors sur l’image filtree ou chaque pixel est rem-place par O(Cb,Cr) :

O(Cb, Cr) = 255exp( 1

2α((Cr − Cr)2

σCr+

(Cr − Cr)2

σCb))

ou α est modifie a chaque fois que le nombre Nb de fois ou le visage est confirmedepuis le debut de la sequence est un multiple de N : α = 2.5 − Nb/2N . Cetteapproche permet de detecter et suivre des visages de 40 a 100 pixels de largeur,en 5 ms sur un PIV a 2.6 GHz.

[50] R. Seguier. Detection de visage adaptative. In COmpression et REpresentation des SignauxAudiovisuels, 2004.

[51] R. Seguier, A. Le Glaunec, and B. Loriferne. Human faces detection and tracking in videosequence. In Proceedings of 7th Portuguese Conference on Pattern Recognition, 1995.

[52] C. Leignel, O. Bernier, D. Collobert, and R. Seguier. Transformee de hough elliptique flouerapide. In COmpression et REpresentation des Signaux Audiovisuels, 2003.

Page 261: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.1 Poursuite du visage 231

4.1.7 Discussion et presentation de l’approche implementee

La poursuite de visages dans une sequences d’images souleve ainsi plusieursquestions :

– l’initialisation de la poursuite : elle peut utiliser un detecteur de visages,une localisation dans le cas ou le nombre de personne a suivre est connu, ouencore demander l’assistance de l’utilisateur.

– le choix de la nature du modele poursuivi qui peut etre de couleur ou d’ap-parence.

– la methode de localisation a partir du modele : seuillage, recherche exhaus-tive, descente ou montee de gradient.

– la frequence et la maniere dont le modele est actualise.– dans le cas ou plusieurs modeles sont employes, la methode de fusion.– l’apparition ou la disparition d’un sujet doit aussi etre traitee.– les temps de calcul des differentes phases de la poursuite.

Nous presentons dans ce chapitre une approche de la poursuite de visages dansdes sequences d’images, repondant a ces differents points. L’objet de cette etudeest le developpement d’un systeme de suivi du visage a la fois suffisamment rapidepour pouvoir le faire suivre par un autre processus, la detection des traits du visage[BM06][53], en un temps proche du temps-reel (≥ 15 images/s). Le suivi doit de plusetre autonome, c’est-a-dire detecter puis suivre une cible a suivre lorsqu’un visageentre dans le champ de camera, et abandonner la cible lorsque le sujet quitte lascene. Enfin il doit etre robuste, et capable de poursuivre plusieurs visages, ce quiimplique un compromis avec la contrainte de temps reel. Notre approche essaied’eliminer un maximum de faux positifs lors de l’initialisation des cibles. Lorsde la poursuite, les cibles ne contenant pas suffisamment de pixels, signe que lecandidat poursuivie n’est plus un visage ou que le visage a disparu de la scene,sont abandonnees. L’acquisition des images se fait par une webcam commercialedelivrant des images de taille 320x240 avec un taux de rafraıchissement de 15images par seconde.

La poursuite est initialisee par une detection de visages, activee periodiquementlors de la sequence : une fois toutes les N = 20 images si une cible est dejapoursuivie, N = 2 lorsqu’aucun visage n’est present. Le modele poursuivi estun modele non-parametrique de la teinte chair : pour des raisons de simplicite,de rapidite, mais aussi d’efficacite dans de nombreuses conditions. Le choix del’espace colorimetrique le plus robuste aux differents types de peau a ete fait. Lapoursuite se fait par une recherche deterministe, pour chaque visage detecte, de laregion de l’image Ppeau, repartition spatiale de la probabilite de la couleur peau,contenant le plus probablement la cible. Le visage est represente par une ellipse,

[53] R. Belaroussi and M. Milgram. Face tracking and facial features detection with a webcam.In Proceedings of the 3rd European Conference on Visual Media Production (a paraıtre),2006. Presente en demonstration a European Conference on Computer Vision.

Page 262: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

232 Detection et suivi de visages dans des sequences d’images

Détection d’un visage

Poursuite du visage

180°/ 0°0

Hue

255

89°90°

Saturation

Estimationde la densité

de la teinte chairdu visage

dans le plan H-S

Fig. 4.2 – Detection et poursuite du visage dans une sequence d’images : l’imagedu visage candidat detecte definit la distribution de probabilite de la couleur peau

dont la position, la taille et l’orientation sont determinees a partir de Ppeau. Nouscomparons la segmentation du visage par binarisation de Ppeau et par montee dugradient de Ppeau via une procedure de mean shift.

La methode employee permet de detecter des visages de plus de 48x48 pixels,et de les suivre jusqu’a une taille de l’ordre de 10x10 definissant leur disparition, enun temps moyen de l’ordre de 9 ms sur un PIV cadence a 2.8 GHz. L’initialisationd’une poursuite necessite donc que le sujet soit suffisamment proche de la camera,de l’ordre de 50 cm a 1.5 m pour une detection optimum.

La premiere etape du syteme est la detection de visages dans l’image entierepar une approche holistique. Ce detecteur est active une fois toute les N images(voir figure 4.2). Pour chaque visage detecte un modele de teinte chair est estimelocalement puis poursuivi dans les (N − 1) images suivantes.

La detection de visages est realisee par une cascade de classifieurs forts [VJ01][3].Le detecteur de Viola & Jones est plus robuste aux conditions d’eclairement quele localisateur par fusion lineaire, tres performant compare a l’etat de l’art dansce domaine et surtout tres rapide (de l’ordre de 60 ms par image, pour des imagesde taille 160x120 moitie moindre que celles delivrees par la webcam que nous

Page 263: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.1 Poursuite du visage 233

Visages détectés

Visages manqués

Fig. 4.3 – Limitations du detecteur de visage, en termes d’orientation du visage

utilisons). Il implemente une approche globale de la detection de visage : unefenetre glissante de taille donnee (24x24 par exemple) parcourt l’image a toutesces positions, et chaque vignette couverte par cette retine est classifiee visage ounon-visage par une cascade de classifieur faibles. La retine est alors agrandie d’unfacteur 1.2 et la recherche est re-iteree sur toute l’image. En parcourant toutes lesechelles possibles de l’image, les visages de taille superieure a 25x25 peuvent ainsietre detectes.

Le detecteur utilise pour initialiser une cible a suivre est appris sur une base devisages relativement frontaux : si ce detecteur est robuste aux conditions d’eclaire-ment (particulierement lorsqu’elles sont pauvres) quand l’inclinaison du visage esttrop importante le visage est manque comme le montre la figure 4.3. Elle illustreles limites de detection du detecteur en terme d’orientation du visage : dans uncas le visage est correctement detecte (images de la premiere ligne) et pour uneorientation du visage legerement plus marquee (images de la seconde ligne) levisage est manque.

La teinte chair est modelisee par un histogramme, juge plus rapide qu’unemodelisation parametrique, dans le plan H-S afin de s’affranchir de l’informationde luminance et parce que des tests montrent que cet espace est le plus robuste auxtons de la couleur peau. Nous supposons en particulier la non-peau uniformementdistribuee, de sorte que le modele est independant du fond, et la methode applicabledans diverses scenes.

Un modele de teinte chair est entierement re-initialise lorsqu’un visage estdetecte a la meme position que l’ellipse correspondante : la detection de visage

Page 264: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

234 Detection et suivi de visages dans des sequences d’images

est supposee suffisamment frequente, compare aux temps necessaire a une varia-tion significative de la couleur peau, pour ne pas actualiser le modele a l’aidede la cible suivie. Cela evite aussi de modeliser la couleur d’une zone du fondtrop proche de la teinte chair, un des principaux problemes en poursuite de visage.Notre approche est intermediaire sur ce point entre celles ou le modele n’est jamaisrenouvele [Bra98, PHVG02][28,41] n’est realisee, et celles ou le modele est adaptelorsqu’une confiance suffisante est atteinte [Seg04b, NKMG02, MGR98][6,43,16].

La poursuite de la teinte chair est robuste aux occlusions partielles, mais nousne traitons pas le probleme de l’occultation d’un visage par un autre : lorsque deuxcibles se croisent, celle qui inclue l’autre n’est plus poursuivie. Le sujet correspon-dant est poursuivi a nouveau lorsqu’il est detecte, plus tard dans la sequence. Celaafin d’eliminer un eventuel faux positif, ayant distrait la poursuite, s’etendant surune porte ou un tableau en bois, par exemple, au profit d’un visage passant devant.En revanche, dans le cas ou un visage est detecte a une position incluant une autrecible poursuivie par ailleurs, cette derniere cible est abandonnee, en raison de laprevalence du detecteur de visages sur le modele de couleur.

Les candidats d’aire inferieure a 100 pixels sont aussi elimines : cela corresponda deux interets et un inconvenient. L’inconvenient est que si le sujet se retourne, lacible correspondante est abandonnee. Notre choix est donc d’abandonner la cibleet de tenter de la recuperer par la suite lors d’une detection de visages, ce quipeut etre rapide dans le cas ou aucun autre visage n’est poursuivi. En echangede cette incapacite, le systeme beneficie de deux avantages considerables. D’abordcela permet de prendre en compte une sortie du sujet a n’importe quel endroitdu champ de la camera, notamment si la scene filmee contient une porte ou uncouloir. Ensuite, cela elimine les faux positifs pouvant resulter de petits distracteurs1 souvent presents lorsque le fond est complexe, telle qu’un livre ou un carton surune etagere. Une alternative interessante est donnee dans [JSR05][45], ou le modeleest adapte lorsque l’apparence change suffisamment, permettant ainsi la poursuited’un sujet lorsqu’il est de dos. Nous choisissons de ne pas suivre cette methode,car elle conduit, lorsqu’une personne sort de la scene, a poursuivre un autre objet.

1Comaniciu emploie le terme distracteur, issu de la physiologie, pour definir les regionsconstitues de pixels de non peau de couleur similaire a la teinte chair et pouvant attirer l’attentiondu systeme de poursuite

Page 265: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.2 Choix du detecteur de visages 235

4.2 Choix du detecteur de visages

Quatre detecteurs de visages frontaux, mettant en oeuvre les filtres de la figure1.12,p.31, sont disponibles dans OpenCv [MPDMD05][54]. Ils different dans la taillede la retine d’entree (20x20 ou 24x24), le type des classifieurs faibles (arbres a deuxou trois noeuds terminaux), le type d’apprentissage des classifieurs forts (AdaboostDiscret ou Gentle Adaboost) et la maniere de combiner les classifieurs boostes(cascade ou arbre de decision). Le premier est celui decrit au chapitre 1.2 : c’estune cascade de classifieurs boostes par Adaboost Discret, et dont l’entree est detaille 24x24. Les classifieurs faibles de cette cascade sont des arbres a deux noeudsterminaux. Les trois autres detecteurs ont une retine d’entree de taille 20x20. Lesecond detecteur est une cascade similaire a la precedente, mais dont les classifieursfort sont appris par Gentle Adaboost. Le troisieme est une cascade entraınee parGentle Adaboost et emploi des classifieurs faibles definis par des arbres a troisbranches. Le quatrieme est un arbre de decision, a la place d’une cascade, dont lesclassifieurs fort sont appris par Gentle Adaboost et les classifieurs faibles sont desarbres a deux branches.

L’algorithme du Gentle Adaboost [FHT98][55] est decrit dans le tableau 4.2.L’equation (1.3) definit un arbre de decision a deux branches. Un classifieur faiblefj a trois noeuds terminaux est defini par la determination de deux seuils :

fj =

{+1 si τ 0

j ≤ yj < τ 1j (visage)

−1 sinon (non− visage)(4.2)

L’arbre de decision remplacant la cascade est decrit dans [LLK03][56], et estillustre par la figure 4.4. La construction et l’apprentissage de cet arbre se fait demaniere iterative. Le premier noeud est appris sur la base d’apprentissage complete.Pour chaque noeud, un classifieur fort F est appris de maniere a classifier sesexemples d’apprentissage, exemples specifies par son noeud parent, avec moins de50% de faux positifs et plus de 99.9% de detection : soit N le nombre de classifieursfaibles qu’il agrege. La base des exemples positifs entraınant ce classifieur fort estpartitionnee en p sous-ensembles par un algorithme de k-moyenne. Chacun des psous-ensembles d’exemples positifs entraıne un classifieur fort, les exemples negatifs

[54] I. Martinez-Ponte, X. Desurmont, J. Meessen, and J.-F. Delaigle. Robust human face hidingensuring privacy. In Proceedings of the 6th International Workshop on Image Analysis forMultimedia Interactive Services, 2005.

[55] J. Friedman, T. Hastie, and R. Tibshirani. Additive logistic regression : a statistical viewof boosting. Technical report, Departement of Statistics, Stanford University., 1998.

[56] R. Lienhart, L. Liang, and A. Kuranov. A detector tree of boosted classifiers for real-timeobject detection and tracking. In IEEE International Conference on Multimedia & Expo,2003.

Page 266: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

236 Detection et suivi de visages dans des sequences d’images

Soit une base d’apprentissage {(x1, y1), . . . , (xN , yN)} de N = m + l exemplesxi etiquetes yi, m etant le nombre d’exemples negatifs (yi = 0) et l le nombrede positifs (yi = 1).Chaque exemple xi est une image en niveau de gris de taille 20x20corrigee en luminosite : xi ∈ R400.

- Initialisation des poids : w1,i = 1m

, 1l

pour yi = 0, 1 respectivement

- Pour t=1, . . . , T :

1. Normaliser les poids : wt,i ← wt,i∑Nk=1 wt,k

2. Pour chaque filtre j, ajuster la fonction de regression du classifieur faiblefj qui lui est associe aux exemples d’apprentissage affectes de leur poidswt,i, par la methode des moindres carres ponderes.L’erreur associee a ce filtre est : εj =

∑i wt,i|fj(xi)− yi|

3. Selectionner le classifieur faible ft ayant la plus petite erreur εt.

4. Mettre a jour les poids en penalisant les exemples les mieux classifiespar ft : wt+1,i = wt,ie

−yift(xi)

- Le classifieur booste final est alors defini par :

F(x) =

{1 si

∑Tt=1 ft(x) ≥ seuil

0 sinon

Tab. 4.2 – L’algorithme d’apprentissage par Gentle Adaboost

etant tous ceux entraınant le classifieur F . Si le nombre total de classifieurs faiblescontenus dans les p classifieurs forts ainsi appris est inferieur au nombre N declassifieurs faibles de F , alors le classifieur fort F est elimine, et ce noeud estdivise en p branches. Chacune de ces branches recoit pour corpus d’apprentissagele sous-ensemble correspondant d’exemples positifs et les exemples negatifs filtrespar la cascade situee avant ce noeud. La procedure s’arrete lorsqu’un nombre pre-defini de noeuds est atteint. En classification, la vignette en entree du detecteurcherche un chemin de validation dans l’arbre la menant a etre classifiee commevisage. Pour cela, si elle est rejetee a un noeud par un classifieur fort, elle estappliquee a une autre branche du point de branchement precedent le plus proche.

Page 267: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.2 Choix du detecteur de visages 237

F0 Fn…

F01

F02

F1n1…

F2n2… …

Fpm

Fql

Frt

Visage

……

Fig. 4.4 – Structure du detecteur de visages par arbre de decision de Lienhart&al

Si un chemin de validation est trouve, la vignette est classifiee visage, et non-visagedans le cas contraire.

Chaque image est prealablement reduite d’un facteur 2 et l’image traitee parle detecteur est de taille 160x120. Cette reduction se fait par un filtrage passe-bas de l’image, suivi par un sous-echantillonnage. L’image est convoluee par unfiltre Gaussien de taille 5x5 et d’ecart-type 1.25 dans les deux directions : le filtreavec lequel l’image est convoluee horizontalement puis verticalement est definipar G = 1/16 [ 1 4 6 4 1 ]. Les lignes et les colonnes paires sont ensuiteeliminees. La figure 4.5 donne un exemple de resultat de la reduction sur uneimage de la sequence Antonio. Cette operation a plusieurs consequences :

– le lissage de l’image elimine le bruit qu’elle contient, et auxquels les classi-fieurs faibles sont sensibles car ceux-ci calculent une difference entre deuximages : celles situees sous les rectangles blancs et gris des filtres rectangu-laires. Le taux de faux positifs en est diminue ; le nombre de vrais positifs estaussi affecte, mais dans une moindre mesure car le lissage ne degrade pas l’in-formation ”moyenne” de luminance du visage recherchee par le detecteur, lesdifferences de niveau de gris entre les zones definies par le filtre. La detectionest donc de meilleure qualite.

– le sous-echantillonnage de l’image lissee multiplie par deux la taille mini-male de visage detectable : un classifieur 24x24 applique a l’image reduite160x120 ne detecte pas les visages de taille inferieure a 48x48 dans l’image ori-ginale 320x240. Sans l’operation de sous-echantillonnage, des visages de tailleinferieure a 50x50 pixels sont recherches a 4 echelles supplementaires, pourun facteur d’agrandissement des filtres fQ = 1.2, et peuvent etre detectes jus-qu’a une taille de 24x24 pixels. L’image n’ayant pas ete sous-echantillonnee,les tailles indiquees dans le tableau 4.5 correspondent a la taille des vi-sages detectables dans l’image originale : ces tailles de visages ne sont pasconsiderees par le detecteur lorsque l’image est reduite d’un facteur deux,comme le montrent le tableau 4.4.

– une autre consequence du sous-echantillonnage est que pour des visages de

Page 268: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

238 Detection et suivi de visages dans des sequences d’images

Image originale 320x240 Image réduite 160x120

Fig. 4.5 – Exemple de reduction de l’image d’un facteur 2

Taille del’image traitee

Performances en detectionTemps de traitement

moyen par image160x120 103 vrais positifs, 0 faux positif 60 ms320x240 128 vrais positifs, 14 faux positifs 214 ms

Tab. 4.3 – Performance de la cascade 24x24 sur la sequence Antonio de 200 images,contenant un visage par image, en fonction de la taille de l’image traitee.

taille comprise entre 48x48 et pixels et 86x86, le nombre de vignettes ex-plorees par une cascade 24x24 sur l’image originale (echelles 5 a 8 du tableau4.6) est bien plus grand que sur l’image reduite (echelles 1 a 4 du tableau1.3, voir p.41). Le nombre de faux positifs est donc plus eleve si on ne sous-echantillonne pas l’image, d’autant plus que l’image n’est pas lissee, mais lenombre de vrais positifs est plus bas lorsqu’on applique la cascade a l’imagereduite, puisque moins de vignettes sont classifiees.

– une consequence directe du point precedent est que le temps de traitementd’une image 160x120 est beaucoup plus court que celui d’une image 320x240.Pour une retine d’entree 24x24, dans une image 160x120 le nombre de vi-gnettes scannee par le detecteur est de l’ordre de 8800, voir tableau 1.3,alors que le detecteur parcourt de l’ordre de 45.000 vignettes pour une image320x240.

Ces differents points sont mis en valeur en appliquant la cascade 24x24 ap-prise par Adaboost Discret sur les images originales 320x240 et les images reduites160x120 de la sequence Antonio [57]. Elle contient 200 images de dimensions 320x240pixels, issues d’une webcam, d’une personne assise devant un moniteur suppor-tant la webcam, et en mouvement de va-et-vient horizontal. Le visage est incline(rotation dans le plan jusqu’a ± 90˚) a plusieurs moments de la sequence, du-rant lesquels les detecteurs manquent notablement le visage, et le sujet se deplace

[57] Microsoft Research Cambridge. research.microsoft.com/vision/cambridge/i2i/dsweb.htm.i2i : 3D Visual Communication.

Page 269: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.2 Choix du detecteur de visages 239

Echelle 1 2 3 4 5 6 7 8 9Taille dela retine

24 29 35 41 50 60 72 86 103

Taille de visagesdetectable en 320x240

48 58 70 82 100 120 144 172 206

Tab. 4.4 – Taille de la retine parcourant l’image 160x120 en fonction de l’echelle,pour une cascade 24x24. Taille de visages detectables correspondante dans l’imageoriginale 320x240.

Echelle 1 2 3 4Taille de la retine 24 29 35 41Nombre de vignettes 9230 9032 8420 8360

Tab. 4.5 – La taille de la retine parcourant l’image 320x240 pour les quatrespremieres echelles explorees par une cascade 24x24, avec un facteur d’agrandisse-ment fQ = 1.2. Le nombre de vignettes explorees, dans l’image de la figure 1.19utilisee pour produire le tableau 1.3 (p.41), a chaque echelle y est indique.

Echelle 5 6 7 8 9 10 11 12 13Taille dela retine

50 60 72 86 103 124 149 178 214

Nombrede vignettes

7160 4400 2750 1660 966 498 245 94 20

Tab. 4.6 – Taille de la retine parcourant l’image 320x240 en fonction de l’echelle,pour une cascade 24x24 avec fQ = 1.2 (suite du tableau 4.5). Ce tableau estcomparable avec les tableaux 4.4 et 1.3 car les tailles de visages detectables sontles memes a 5% pres.

approximativement dans un meme plan parallele au plan du capteur : son vi-sage garde une taille a peu pres constante, de l’ordre de 80 pixels de large. Lesdetections multiples sont regroupees en une detection finale, en moyennant les rec-tangles candidats comme nous l’expliquons au chapitre 1.2.3 (p.41). Le tableau 4.3donne le resultat de cette comparaison, en terme de detection (nombre absolu devrais et de faux positifs sur la sequence) et de temps de traitement moyenne sur les200 images, sur un Pentium 4 cadence a 2.8 GHz. Le temps de traitement d’uneimage reduite inclus les temps du lissage et du sous-echantillonnage. En reduisantl’image, le nombre de vrais positifs diminue de 20% en passant de 128 a 103, surles 200 presents dans la sequence. Mais le nombre de faux positifs obtenu gracea cette reduction est nul, et le temps moyen de traitement d’une image 160x120est de l’ordre du tiers de celui d’une image 320x240. Ces deux derniers points sontdesirables pour notre approche du suivi. Un modele de couleur peau est appris surle resultat du detecteur de visage, et un faux positif serait donc poursuivi. Quitte a

Page 270: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

240 Detection et suivi de visages dans des sequences d’images

Entree ClassifieurNb de visages

detectesTemps moyen

par image

24x24CascadeAdaboost Discret

103 60 ms

20x20CascadeGentle Adaboost

66 65 ms

20x20Cascade, Adaboost Discretft a 3 branches

77 61 ms

20x20ArbreGentle Adaboost

31 103 ms

Tab. 4.7 – Performances de detecteur sur 200 images 160x120 de la sequenceAntonio, contenant un visage par image. Tous les faux positifs ont ete elimines,par la procedure d’arbitrage des detections multiples, parcequ’ils etaient isoles.

perdre des vrais positifs, il est important d’eliminer un maximum de faux positifsdurant l’etape de detection des visages. Un traitement rapide durant cette etapeest aussi necessaire, ce pourquoi les visages ne sont recherches qu’une fois toutes lesN images de la sequence lors de la poursuite du visage. Un temps de traitement de60 ms par image est acceptable alors qu’un temps de 214 ms ralenti visiblement lapoursuite durant les phases de detection du visage car la persistance retinienne estde l’ordre de 50 ms. Notre choix s’est donc porte sur ce pre-traitement de l’image.

Le choix du detecteur de visages, parmi les quatre disponibles, est fait surdes criteres de temps et de performances : le nombre de vrais positifs et de fauxpositifs de chaque detecteur, ainsi que le temps de traitement moyen d’une imagesont estimees sur la sequence Antonio. Le tableau 4.7 donne le nombre de visagesdetectes par chacun des classifieurs, sur les 200 presents dans la sequence (un parimage). Le nombre de faux positifs n’est pas indique car apres l’elimination desdetections isoles (nvoisins = 1), il n’y en a aucun quelque soit le detecteur teste.Le choix du detecteur est fait sur une sequence ou la taille du visage corresponda notre application : le visage doit etre suffisamment pres de la camera pour etredetecte, dans un premier temps, puis poursuivi meme lorsque le visage est de tailleinferieure a 48x48 pixels. Dans le cadre d’une application ou les visages doivent etredetectes a une plus grande distance, il faudrait choisir un des classifieurs 20x20.Ainsi, dans [LLK03][56] et [MPDMD05][54], le meilleur detecteur de visage est latroisieme cascade. L’explication se trouve dans [LLK03], qui precise, en apprenantpar Gentle Adaboost et en testant des classifieurs, d’entree 18x18, 20x20, 24x24,28x28 et 32x32, que le meilleur classifieur est celui ayant une retine d’entree de20x20 pixels, pour un nombre de fausses alarmes compris entre 5 et 100. La basede test utilise est la base CMU Frontal Face Test Set [RBK98a][5], contenant 130images et 510 visages frontaux. Mais pour moins de 5 faux positifs, c’est la cascade24x24 qui est la plus performante avec un taux de vrais positifs de l’ordre de

Page 271: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.3 Poursuite du visage 241

10% superieur a celui de la cascade 20x20. Or les courbes COR de cet articlesont construites en faisant varier le seuil sur le nombre nvoisins de detections serecouvrant pour filtrer et fusionner les detections. Bien que la cascade 24x24 quenous utilisons est entrainee par Adaboost Discret, le fait de reduire l’image et deseuiller nvoisins dans la procedure d’arbitrage des detections multiples revient adiminuer le nombre de faux positifs de la meme maniere que ces courbes CORsont construites.

4.3 Poursuite du visage

Les espaces colorimetriques les plus couramment utilises en poursuite du visageseparent la luminance de l’information de chrominance. La chrominance est reputeerepresenter l’information de teinte independamment des conditions d’eclairementde la scene. Aussi, la chrominance est independante - dans une certaine mesure- au type de couleur peau (noire, bronzee, rouge, rose, blanche . . . ) : c’est l’in-formation de luminance qui permet de distinguer une peau blanche d’une peaunoire. La luminance varie en fonction de la luminosite de la scene de meme quela chrominance mais celle-ci varie beaucoup moins vite : n’utiliser que la chromi-nance pour detecter la couleur de la peau permet donc une classification de la peaurobuste aux conditions d’eclairement, a condition de mettre a jour suffisammentfrequemment le modele de teinte chair. Dans cette section nous justifions l’emploidu plan H-S de l’espace HSV pour modeliser la teinte chair, puis nous detaillonsdeux approches de la poursuite et de la segmentation du visage. Les performancesen terme de poursuite et temps de calcul sont presentees a la section suivante.

4.3.1 Choix de l’espace colorimetrique

La figure 2.3 illustre la representation des couleurs dans l’espace HSV : la teinteHue fait varier la couleur du rouge (H=0) en passant par le jaune, le vert, le cyan,le bleu, le magenta (rose) et revient au rouge (H=180˚). Nous representons dansla suite un histogramme 1D de valeurs de Hue par les couleurs correspondantes,cette representation etant plus pratique que de donner l’echelle des valeurs. Laluminance V represente le niveau de gris calcule par V= max( R, G, B ). Cet espacecolorimetrique permet de separer la chrominance, contenu dans les canaux H et S,de la luminance V. D’autres espaces separant la chrominance de la luminance sontetudies dans cette section : rgb normalise, Y CbCr, et Lab. Ces espaces sont moinsefficaces que HSV en terme de classification, et sont plus sensibles a des types decouleur peau differentes, comme le montre les courbes COR ci-dessous.

Une meme technique non parametrique (utilisation d’histogrammes) est utiliseepour quantifier l’effet de l’utilisation de la chrominance de ces espaces pour la

Page 272: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

242 Detection et suivi de visages dans des sequences d’images

tache de segmentation de la teinte chair. Plus precisement, nous avons compareles modeles de teinte chair definis par un histogramme a une dimension sur lecanal Hue seul, ou a deux dimensions dans les plans H − S, r-g, Cb−Cr et a− b(chrominance de l’espace Lab). Les valeurs de chaque canal sont quantifiees sur 32classes, les histogrammes a deux dimensions employes ici sont donc de taille 32x32,et l’histogramme modelisant la couleur peau sur le canal Hue seul est constitue de32 cases.

Un classifieur de couleur peau est generalement appris sur une base d’exempleset teste sur un corpus distinct. Cette approche est adaptee a un modele de couleurpeau statique (voir chapitre 2), a appliquer sur des images fixes non-utilisees pourconstruire le modele de teinte chair. Notre approche de suivi de visage consisteen l’apprentissage d’un modele de teinte chair sur les pixels d’un visage candi-dat resultant d’un detecteur, puis a le suivre dans des conditions variables. Uneprocedure d’apprentissage et de test utilisant des images fixes -ne provenant enparticulier pas d’une sequence- s’approchant le plus de cette procedure de suividans une sequence est illustree par la figure 4.6 dans le cas d’un modele de couleurpeau base sur le canal Hue seul. Nous utilisons la base ECU qui contient la veriteterrain des pixels de couleur peau, illustree en figure 2.14, p.101. Pour une imagedonnee, nous faisons usage de la verite terrain de la teinte peau pour construire lemodele de teinte chair, adapte donc a la couleur peau du ou des sujets presents danscette image, puis nous testons sur l’image entiere les capacites de generalisation duclassifieur base sur ce modele. On se place donc dans un cadre ideal ou les exemplesconstruisant le modele de couleur peau sont parfaitement choisis. Une approchesimilaire est utilisee dans [SHML00][24] pour comparer l’emploi d’un modele deteinte chair seul et d’un modele de peau et de non-peau, et dans [SMHL03][21] oula zone de recherche du visage, sur laquelle le modele de couleur est adapte, estdecale d’un pas variable par rapport a la verite terrain.

Dans ces deux articles, la verite terrain d’une sequence d’images provenantd’une camera est etiquetee manuellement. La base ECU contient des images deresolution variable, de 70 pixels par pouces (faible resolution) a 300 ppp (hauteresolution), au format Jpeg. La resolution des images Jpeg de la webcam que nousutilisons, et celle des sequences Microsoft [Cam][57], est de 96 pixels par pouce.Toutefois, la comparaison que nous effectuons ici est qualitative, et nous suppose-rons que la qualite image differente produite par une webcam ne change rien a lasuperiorite d’un espace colorimetrique sur un autre pour la classification peau/non-peau : aucun des espaces etudies ici n’a ete optimise pour des images de faiblesresolutions. Nous utilisons les images de la base ECU parce qu’elle contient laverite terrain de la couleur peau, verite qui n’est pas disponible pour les sequencesMicrosoft.

Le critere Bayesien enonce qu’un pixel est classe comme un pixel de couleurpeau si le rapport de vraisemblance (equation 2.9) est superieur a un seuil de

Page 273: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.3 Poursuite du visage 243

Type de peauBlanc aRose

JauneRouge a

Marron clairNoir a

Marron fonceNombre d’images 143 66 36 33

Tab. 4.8 – Partition de la base de test/apprentissage en 4 types de teinte chair

decision. L’hypothese est faite dans ce qui suit que la distribution des pixels decouleur non peau est uniforme, le critere Bayesien (2.9) est simplifie. Rappelonsqu’alors un pixel de couleur est classe comme etant de couleur peau si :

p(�x|peau) ≥ τ (4.3)

Un classifieur defini par (4.3) utilise la repartition statistique des pixels de cou-leur peau independamment de la distribution des pixels de couleur non peau.P (�x|peau) est estimee en normalisant l’histogramme des exemples d’apprentissage.L’estimation non-parametrique de la distribution de la teinte chair est preferablelorsque l’on compare plusieurs espaces colorimetriques, car une telle estimationest independante de l’espace codant les couleurs tandis qu’une estimation pa-rametrique pourrait favoriser un espace [PBC05][58]. La teinte chair est ainsi sou-vent caracterisee par des teintes Hue reparties autour des valeurs 0˚(rouge-rose)et 180˚(rouge-jaune) : un modele uni-Gaussien, par exemple, ne serait alors centreque sur un de ces deux modes de la distribution d’une telle teinte chair. La reglede decision (4.3) appliquee a toutes les images de la base pour une valeur donneede τ produit une matrice de confusion : on obtient la courbe COR du classifieuren faisant varier ce seuil. Rappelons que la courbe COR permet de mesurer lesperformances d’un classifieur : l’efficacite de la classification en couleur peau pourun seuil de decision donne est mesuree par le taux de vrais positifs et le taux defaux positifs. Rappelons enfin que le taux de vrais positifs est la proportion depixels de couleur peau correctement classifies (i.e. classifie comme etant de couleurpeau) ; le taux de faux positifs est la proportion de pixels de couleur non peauclassifies comme etant de couleur peau.

Afin de determiner l’effet de l’espace de representation des couleurs sur dessujets de types de couleur differents, une partition subjective de la base de testen 4 types de teinte chair est realisee : le nombre d’exemples de chaque classe estdonne par le tableau 4.8. La figure 4.10 represente des sujets de chacune de cesclasses. On y represente aussi, pour les cinq espaces de chrominance etudiees, leresultat de la retro-projection du modele de teinte chair, construit par la procedureillustree en figure 4.6, dans ces differents espaces.

La modelisation de la couleur peau dans le plan Cb−Cr (figure 4.8 ) est moinsefficace sur les peaux de type noir que sur les autres types de couleur. Les deux

[58] S.L. Phung, A. Bouzerdoum, and D. Chai. Skin segmentation using color pixel classifi-cation : Analysis and comparison. IEEE Transactions on Pattern Analysis and MachineIntelligence, 27(1) :148–154, 2005.

Page 274: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

244 Detection et suivi de visages dans des sequences d’images

Pixels d’apprentissage(vérité terrain)

Apprentissage

89°180° 0°

Hue

Proportions relatives normalisées entre 0 et 255

90°

Modèle de teinte chair

Test

Canal Hue Probabilité de teinte chair

H

ProbabilitéRétroprojection de

l’histogramme modèle sur le canal Hue

Fig. 4.6 – Procedures de test et d’apprentissage. Apprentissage : le modele decouleur peau est appris sur les pixels de couleur peau (connu grace a la veriteterrain). Test : la retro-projection de l’histogramme sur le canal H donne la pro-babilite qu’un pixel ait la couleur peau L’histogramme (1D lorsqu’on ne considereque le canal H) des pixels de couleur peau est normalise par sa valeur maximaleentre les valeurs 0 et 255 : hist = 255/max(hist)*hist. La retro projection de cethistogramme hist sur l’image de test consiste a affecter a chaque pixel la valeur del’histogramme correspondante hist(H) ou H est la valeur de Hue du pixel considere.La carte de probabilite qui en resulte contient donc des valeurs entieres comprisesentre 0 et 255.

Page 275: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.3 Poursuite du visage 245

(a) Cb

Cr Localisation descouleurs de peau

de type noir

Cb

Cr

(b)

Localisation descouleurs de non peaumonochromatiques

Fig. 4.7 – Couleurs peau et non-peau dans le plan CbCr : (a) distribution de lateinte chair, (b) distribution de la non-peau

derniers exemples de la figure 4.10 montrent des sujets de peau noire, et l’avantderniere colonne de chaque exemple est la probabilite de teinte chair deduite dela modelisation des pixels de peau dans le plan Cb − Cr. Sur ces exemples, laprobabilite de peau est du meme ordre pour un nombre important de pixels depeau que celle du fond : le taux de faux positifs necessaire pour obtenir un tauxde vrais positifs de 85% est ainsi de 20%. Les autres types de peau sont mieuxmodelises, sauf le premier exemple (premiere ligne et avant derniere colonne de lafigure 4.10). Sur l’ensemble de la base, et pour un taux de faux positifs de 10% : letaux de vrais positifs est de l’ordre de 70% sur les sujets noirs, 85% pour les sujetsblancs ou rouges, et 90% sur les peaux jaunes. Les peaux noires absorbe plus delumiere que les peaux plus claires, et refletent principalement du rouge, mais avecun faible niveau de luminance, ce qui a pour consequence que les niveaux de rouge,de bleu et de vert sont bas, et tres proche. Ce type de couleur est alors prochedes couleurs monochromes, pour lesquelles R = G = B, et dans le plan Cb − Cr

les couleurs de peau noires sont localises dans un voisinage etroit autour du point(128; 128), voir figure 4.7. Le canal Hue, le plan r-g normalise et le plan Cb − Cr

souffrent du meme probleme.

Le modele de teinte chair dans l’espace perceptuellement uniforme a-b (figure4.8) est un peu moins sensible au type de la peau, compare au modele precedent.Mais il est aussi globalement moins efficace avec un taux de vrais positifs au plusegal a 70% pour un taux de faux positifs de 10%. Cela est illustree par la dernierecolonne de la figure 4.10 : une forte probabilite est affectee aux pixels de peau,quelque soit le type de peau. Mais trop souvent aussi aux pixels de non-peaucomme dans les deux premiers exemples (peau blanche) et le dernier exemple(peau noire), pour lesquelles une segmentation de la peau est compromise.

On compare aussi les plans H-S et r-g, qui sont les plus couramment utilisesen poursuite de visage s’appuyant sur la couleur de la peau. Les courbes COR

Page 276: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

246 Detection et suivi de visages dans des sequences d’images

0 10 20 30 40 50 60 7030

40

50

60

70

80

90

100

Taux de Faux Positifs (%)

Tau

x d

e V

rais

Po

siti

fs (

%)

Courbes COR du classifieur de teinte chair dans le plan Cb−Cr

NoirRouge/BronzéJauneBlanc

0 10 20 30 40 50 60 7030

40

50

60

70

80

90

100

Taux de Faux Positifs (%)

Tau

x d

e V

rais

Po

siti

fs (

%)

Courbes COR du classifieur de teinte chair dans le plan a−b

NoirRouge/BronzéJauneBlanc

Fig. 4.8 – Courbes COR du classifieur de teinte chair dans les plans a-b et Cb-Cr

Page 277: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.3 Poursuite du visage 247

du modele de teinte chair dans le plan H-S et dans le plan r-g normalise sontdessinees en figure 4.9. L’espace chromatique r-g est relativement sensible auxdifferences de type de peau, avec des performances moins elevees dans le cas despeaux noires. Dans ce plan les couleurs monochromes et les teintes de peau noiresont mal separees. Une segmentation de la couleur peau dans ce plan est moinsprometteuse que dans le plan H-S avec 63% (peau noires) a 80% (blancs) de vraispositifs pour un taux de faux positifs egal a 10%.

La figure 4.11 represente les courbes COR des classifieurs utilisant le canal Hueseul et le plan H-S de HSV. Il apparaıt qu’une classification ne tenant compte quedes valeurs de Hue est tres sensible au type de la teinte chair avec des performancesradicalement plus mauvaises dans le cas des peaux noires : pour ce type de peauaucune matrice de confusion n’est definie pour un taux de faux positifs egale a10%. La encore, le probleme est du a une confusion avec les pixels de non peaumonochromes, comme l’illustre le premier exemple de la figure 4.12 (a). Dans cettefigure sont representees les images de la probabilite de la couleur peau modeliseedans le canal Hue seul et dans le plan H−S, ainsi que les distribution des couleurspeau et non peau, sur le canal de Saturation et le canal Hue. On voit qu’un nombreimportant de points du fond de l’image ont la meme teinte Hue que la peau, cettederniere etant essentiellement constituee de rouge. Cela s’explique par la definitionde l’espace HSV, voir la formule (2.3), page 75. Les couleurs monochromes sontcelles qui ont des valeurs de rouge, de vert et de bleu tres proches dans RGB.Elles ont donc des saturations faibles, comme le montre la distribution de la nonpeau sur le canal S pour l’exemple de la figure 4.12 (a). Lorsque la Saturation estnulle, ce qui correspond a une couleur parfaitement monochrome, la teinte Hue estnulle par definition : une telle couleur est alors indiscernable, si le canal Hue estle seul employe, d’une teinte chair de type noire ou marron fonce, essentiellementregroupee autour du point Hue=0. Pour S non nulle et proche de zero, differentesvaleurs de Hue sont possibles, comme la representation conique de l’espace HSVle montre, figure 2.2 page 76, et dans ce cas une partie des pixels de non peau estconfondue avec la peau dans le canal Hue. Le visage contient des couleurs beaucoupplus saturees que le fond, et l’utilisation du canal de Saturation permet de faire ladistinction entre les couleurs monochromes du fond et la peau. Elle permet ausside distinguer une couleur proche de la peau, comme le rouge du tee-shirt accrocheau mur derriere le sujet de la figure 4.12 (b).

Page 278: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

248 Detection et suivi de visages dans des sequences d’images

0 5 10 15 20 25 30 35 4030

40

50

60

70

80

90

100

Taux de Faux Positifs (%)

Tau

x d

e V

rais

Po

siti

fs (

%)

Courbes COR du classifieur de teinte chair dans le plan H−S

NoirRouge/BronzéJauneBlanc

0 5 10 15 20 25 30 35 4030

40

50

60

70

80

90

100

Taux de Faux Positifs (%)

Tau

x d

e V

rais

Po

siti

fs (

%)

Courbes COR du classifieur de teinte chair dans le plan r−g normalisé

NoirRouge/BronzéJauneBlanc

Fig. 4.9 – Courbes COR des classifieurs modelisant la teinte chair dans les plansH-S et rg normalisee

Page 279: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.3 Poursuite du visage 249

Blanc Hue H-S

Blanc Hue H-S

r-g Cb-Cr a-b

r-g Cb-Cr a-b

Jaune Hue H-S

Jaune Hue H-S

r-g Cb-Cr a-b

r-g Cb-Cr a-b

Rouge Hue H-S

Marron clair Hue H-S

r-g Cb-Cr a-b

r-g Cb-Cr a-b

Noir Hue H-S

Noir Hue H-S

r-g Cb-Cr a-b

r-g Cb-Cr a-b

Fig. 4.10 – Retroprojection d’histogrammes modelisant la teinte chair presentedans l’image, dans divers plans de chrominance.

Page 280: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

250 Detection et suivi de visages dans des sequences d’images

0 10 20 30 40 50 60 7030

40

50

60

70

80

90

100

Taux de Faux Positifs (%)

Tau

x d

e V

rais

Po

siti

fs (

%)

Courbes COR du classifieur de teinte chair dans le canal Hue

NoirRouge/BronzéJauneBlanc

0 5 10 15 20 25 30 35 4030

40

50

60

70

80

90

100

Taux de Faux Positifs (%)

Tau

x d

e V

rais

Po

siti

fs (

%)

Courbes COR du classifieur de teinte chair dans le plan H−S

NoirRouge/BronzéJauneBlanc

Fig. 4.11 – Courbes COR du classifieur de teinte chair dans le plan H-S et sur lecanal Hue : l’echelle en abscisse est differente

Page 281: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.3 Poursuite du visage 251

Hue

H

Saturation

0 255

0

S

255

Distributionde la peau

Distribution de la non-peau

H-SH seul

(a)

S

0 255

0

S

255

Hue

H

H-SH seul

Non peau

Peau

Non peau

Peau

(b)

Fig. 4.12 – Interet de la modelisation de la Saturation de la peau

Page 282: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

252 Detection et suivi de visages dans des sequences d’images

Par voie de consequence, la modelisation de la couleur peau dans le plan H-Sest beaucoup moins sensible aux differences de couleur de peau avec -pour un tauxde faux positifs de 10%- un taux de vrais positifs a 93% pour les sujets blancs et90% pour les autres types de peau . Pour une segmentation de la peau dans ceplan H-S, l’impact de la difference de couleur de peau est plus sensible a un tauxde faux positifs de 5% avec 80% de vrais positifs pour les sujets de couleur blancheet 70% pour les autres types de peau. Ces performances sont toutefois meilleuresque celles rencontrees dans les plans CbCr et ab.

Ces considerations nous menent a choisir le plan H-S pour implementer lapoursuite de visage : ce plan est le plus performant des espaces colorimetriquescouramment utilises en segmentation de la couleur peau, si l’on considere qu’il nenecessite pas de modeliser la non peau comme nous le montrions au chapitre 2.2.1,et le moins sensible aux differences de type de peau.

Une amelioration supplementaire est ajoutee a ce modele, afin de prendre encompte le fait que la teinte Hue et la saturation sont mal definies pour des valeursde luminance faible ou eleve. Nous ne modelisons pas les couleurs de saturationtrop faible non plus, considerant que la teinte du visage n’est pas monochrome.Ce filtre supplementaire est utilise dans [Bra98, PHVG02, GROBH05][28,41,29]. Lespixels employes a la construction du modele de teinte chair verifient les contraintessuivantes sur la luminance et la saturation :

20 ≤ V ≤ 250 et 20 ≤ S

avec V et S ∈ [0 255].

4.3.2 Suivi par segmentation en composantes connexes

Le detecteur de visages est active une fois toutes les N images de la sequence.Lorsqu’un visage est detecte, la distribution de sa teinte chair est estimee (figure4.2) ou mise a jour si la detection a lieu sur un visage deja poursuivi. Dans le casou plusieurs visages sont detectes, chacun de ces candidats constitue une cible asuivre. Le choix de N resulte d’un compromis entre temps de calcul et efficiencedu suivi de la couleur peau : plus N est petit et plus le suivi est robuste, commecombinant deux attributs du visage, mais lent. En effet dans ce cas le modelede teinte chair est mis a jour plus souvent, et la zone de recherche du visage estrectifiee par le resultat de la detection du visage. De plus, l’entree d’un nouveauvisage dans la scene est prise en compte plus rapidement. Il faut se rappeler quele detecteur de visage est efficace lorsque le visage est suffisamment frontal : si ala N ieme image un visage est trop incline alors il n’est pas detecte et par voie deconsequence il n’est pas non plus poursuivi. Il peut donc y avoir un certain tempsd’initialisation de la poursuite, qui croıt lorsque N decroıt. Lorsqu’aucun visage

Page 283: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.3 Poursuite du visage 253

Rectangle définit par le détecteur

de visages

Exemples d’apprentissagedu modèle de couleur peau

Fig. 4.13 – Les exemples de couleur peau sont extraits d’une ellipse centree surle visage detecte, et leur distribution dans le plan H-S est enregistre dans l’histo-gramme modele

n’est poursuivi, le detecteur de visage est active sur une image sur deux jusqu’al’initialisation d’une cible a suivre. Ce point ralenti le temps de traitement d’unesequence comparee a un suivi base sur la couleur : durant ces phases de rechercheexhaustive du visage, une image est traitee en moyenne toutes les 30 ms (60 ms/2),avec la cascade 24x24 que nous utilisons. Mais cela permet de prendre en comptel’apparition d’un visage dans la scene tres rapidement, ou de recuperer un visage,dont la signature des couleurs a ete perdue, des que celui-ci est suffisamment frontal(a condition qu’aucune autre cible ne soit poursuivie pendant ce temps).

Comme au paragraphe precedent, le modele de peau est un histogramme 32x32dans le plan H-S. Les exemples d’apprentissage sont extraits du rectangle englobantle visage defini par le detecteur de visage. Ce rectangle pouvant aussi englober unepartie du fond de l’image, les exemples appris par le modele sont ceux inclus dansune ellipse centree sur le rectangle, et dont le grand axe et le petit axe ont pourlongueur la moitie de la hauteur et de la largeur du rectangle, comme le montre lafigure 4.13.

La probabilite de la couleur peau est calculee pour tous les pixels dans uneregion de recherche definie par la position de l’ellipse precedemment ajustee voirfigure 4.14. Cette ellipse est definie a partir de la carte des probabilites des pixelsd’avoir la couleur de la peau, comme nous allons le decrire. La region de recherche

Page 284: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

254 Detection et suivi de visages dans des sequences d’images

est un rectangle centre sur le rectangle englobant le visage dans l’image precedente,dans laquelle est inscrite l’ellipse ajustee, avec une largeur et une hauteur aug-mentee de 40%, voir figure 4.14. Cela permet de poursuivre un visage se deplacantrapidement, jusqu’a ± 20% de la taille du visage par image horizontalement etverticalement. Pour des frequences de traitement superieures a 15 images/s, celacorrespond a des deplacements tres rapides d’un sujet proche de la camera ; lorsquele sujet est eloigne de la camera, des deplacements meme tres rapides se traduisentdans l’image par des vitesses inferieures et la region de recherche est d’autantplus petite. Yang&Waibel [YW96][13] ou Yoo&Oh [YO99][20] definissent la regionde recherche en fonction de la vitesse de deplacement du rectangle englobant levisage, estimee sur les deux positions precedentes. Mais des tests experimentauxeffectues avec une webcam ont montre empiriquement qu’un facteur d’agrandis-sement fixe de la region d’interet permettait une bonne estimation de la positionsuivante du visage. Le probleme est different si les sequences sont acquises a moinsde 15 images/s, dans ce cas des mouvements un peu trop rapide du visage peuventnecessiter, pour etre poursuivis, d’augmenter l’agrandissement de la fenetre derecherche d’un facteur plus important.

L’interet de definir une region de recherche du visage est double. D’abord, ilest raisonnable de limiter les possibilites de la localisation du visage a une zone ouon peut s’attendre a le trouver : cela diminue les fausses pistes que pourrait creerdes objets du fond de la scene de couleur proche de celle de la peau. Ensuite, celadiminue le temps de traitement d’une image, l’operation de conversion de RGB aHSV et la retro-projection du modele de teinte chair n’etant alors realisee que surles pixels de la zone de recherche. Ces operations durent un peu moins de 0.2 µ spar pixel (en moyenne), soit de l’ordre de 2 ms pour traiter une region de taille100x110, 3 ms pour 110x150 pixels, 4 ms pour 120x180 pixels, 6 ms pour 160x230pixels et 7 ms pour 180x230 pixels. Pour traiter l’image entiere, il faut compter13 a 15 ms pour des dimensions de 320x240 pixels. La probabilite de couleur peaudes pixels de cette region est calculee en retro-projetant l’histogramme modelisantla teinte chair.

L’image des probabilites de couleur peau des pixels est dilatee puis lissee.L’element structurant utilise pour la dilatation est un carre de 3 pixels de cote.Cette operation de dilatation est necessaire a cause de la faible qualite des imagesacquise par une webcam : sans elle, le seuillage qui est realise par la suite produitsouvent deux composantes connexes sur le visage, celle du front et celle de la moitiebasse du visage. Le lissage est opere en convoluant l’image par un filtre Gaussiende taille wGxhG et d’ecart-type dependants de la taille du visage dans l’imageprecedente. En pratique la Gaussienne 2D est separee en deux filtres independants(wG = w/3, σx = 0.3(wG/2− 1)+0.8) et (hG = h/3, σy = 0.3(hG/2− 1)+0.8), ouw et h sont respectivement la largeur et la hauteur du rectangle englobant l’ellipsea l’image precedente, et la barre correspond a l’arrondi vers l’entier impair le plus

Page 285: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.3 Poursuite du visage 255

Region derecherche

dilatationlissage

Ellipseajustéesur les

contours

binarisationPlus grandecomposante

connexe

P(peau|x,y)

Rétro-projection del’histogramme modèle

Fig. 4.14 – Vue d’ensemble de la procedure de poursuite de la couleur peau

proche. Les colonnes sont convoluees en premier, puis les lignes. L’operation delissage est necessaire pour harmoniser la texture du resultat de la dilatation, etpour reconnecter des composantes du visage, preparant l’operation de seuillage quisuit. L’avantage du filtre Gaussien est ici que les zones homogenes sont correcte-ment regularisees et conservees. Un lissage par moyenne est trop fort ici, et altereles contours du visage : l’ellipse ajustee apres binarisation n’englobe dans ce casqu’une partie interieure au visage. Le filtre Gaussien depend de la taille attenduedu visage afin de pouvoir traiter des visages de tailles differentes, comme le montrela figure 4.15.

L’image lissee est ensuite binarisee a un seuil, empiriquement trouve, egal a50% de la valeur maximale de l’image lissee. On procede alors a une recherchede composantes connexes et celle d’aire la plus grande est retenue comme cellecorrespondant au visage comme le montre la figure 4.14.

Une ellipse est alors ajustee, par la methode des moindres carres, aux contoursde la composante connexe selectionnee : cette ellipse englobe alors le visage. Commedans [HPM02][23], l’ajustement de l’ellipse aux contours de cette composante connexese fait par la methode des moindres carres decrite par Fitzgibbon & al [FPF99][59].Nous appliquons a la section (2.3.3.1), p.128, la methode des moindres carres aucas d’une regression polynomiale. La formulation du probleme dans le cas d’une

[59] A. W. Fitzgibbon, M. Pilu, and R. B. Fisher. Direct least-squares fitting of ellipses. IEEETransactions on Pattern Analysis and Machine Intelligence, 21(5) :476–480, May 1999.

Page 286: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

256 Detection et suivi de visages dans des sequences d’images

(d)(e)(b)(a)

Deux modèles de teinte chair

différents

Fig. 4.15 – Operations de post-traitement sur deux region de recherche 77x77 et132x132. (a) Image de la probabilite de teinte chair. (b) Dilatation. (c) LissageGaussien. (d) La composante connexe de plus grande aire est en blanc, et l’ellipseajustee a ces contours (en rouge) est en jaune

conique est un peu differente car il s’agit dune forme parametree et non d’unefonction.

Une conique peut etre representee par l’equation suivante :

F (�a, �x) = �a.�x = ax2 + bxy + cy2 + dx + ey + f = 0

ou �a est le vecteur des parametres, et �x represente le point (x, y) du plan cartesien :

�a =(

a b c d e f)T

et �x =(

x2 xy y2 x y 1)T

F (�a, �xi) est la distance algebrique du point (xi, yi) a la conique F (�a, �x) = 0. L’ajus-tement d’une conique a un ensemble de N points �xi peut se faire en minimisant lasomme du carre des distances algebriques de la courbe a ces points :

J(�a) =N∑

i=1

F (�a, �xi)2

Page 287: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.3 Poursuite du visage 257

Fig. 4.16 – La composante connexe a une forme irreguliere du fait de la luminosite :ces contours sont surlignes en rouge, et le resultat de l’ajustement d’ellipse par lesmoindres carres est dessine sur le visage poursuivi

La contrainte b2 − 4ac < 0 sur �a force la conique a etre une ellipse. Comme toutmultiple d’une solution �amc represente la meme conique, cette contrainte peut sere-ecrire 4ac − b2 = 1 [FPF99][59]. C’est une contrainte quadratique, de la forme�aTC�a = 1, ou C est une matrice 6x6, et dans ce cas la minimisation de la fonctionde cout J peut se faire en resolvant le systeme aux valeurs propres generalises, arang deficient suivant :

DTD�a = λC�a

ou la matrice de l’experience D est definie par les N points de contour de lacomposante connexe selectionnee, et C est la matrice de contrainte :

D =

⎛⎜⎜⎜⎝

x21 x1y1 y2

1 x1 y1 1x2

2 x2y2 y22 x2 y2 1

......

......

......

x2N xNyN y2

N xN yN 1

⎞⎟⎟⎟⎠ C =

⎛⎜⎜⎜⎜⎜⎜⎝

0 0 2 0 0 00 −1 0 0 0 02 0 0 0 0 00 0 0 0 0 00 0 0 0 0 00 0 0 0 0 0

⎞⎟⎟⎟⎟⎟⎟⎠

Definissant la matrice de diffusion S = DTD, il existe une et une seule solution duprobleme aux valeurs propres generalisees S�a = λC�a satisfaisant a la contrainte

Page 288: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

258 Detection et suivi de visages dans des sequences d’images

4ac− b2 = 1. Soit �ui un vecteur propre associe a la seule valeur propre generaliseestrictement positive 2 , alors le vecteur de parametres �amc minimisant J(�a) =‖D�a‖2 avec la contrainte �aT C�a = 1 est le vecteur propre

�amc =�ui√

�uiC�ui

La figure 4.16 donne plusieurs exemples d’ajustement d’ellipse : cette methodeest robuste aux difformites de la composante connexe dues aux zones de sur-brillance, a la compression et a la faible resolution des images de la webcam em-ployee.

4.3.3 Suivi de la teinte chair par Camshift couple

Plusieurs problemes peuvent jaillir de l’approche precedente, notamment lorsquedes zones de surbrillance apparaissent sur le front ou une moitie du visage, ouquand une ombre est portee sur les orbites par le haut de la tete. Dans ces cas,l’etape de binarisation peut sur-segmenter le visage en deux moities : il en resultedeux composantes connexes, et seule l’une d’elle est ajustee par une ellipse. Laconsequence est qu’une partie seulement du visage est suivie, et il peut passer uncertain nombre d’images avant que tout le visage ne soit recupere. Pire encore, lacible suivie peut se deplacer vers une zone du fond de l’image ou des habits decouleur trop proche de la teinte chair. Le lissage peut aussi etre problematique,dans le cas ou des distracteurs, des pixels de non peau de couleur similaire a lateinte chair, sont trop proches du visage : dans ce cas, la discontinuite entre uneregion du fond et celle du visage est compromise. Le visage poursuivi est alorsconfondu avec une zone du fond ou des habits du sujet.

Le mean-shift est une approche non-parametrique permettant de detecter lesmodes d’une distribution de probabilite par une procedure recursive convergeantvers le point de stationnarite le plus proche. Cette approche tend a ignorer l’effetdes ”outliers”, compensant l’effet des distracteurs et des bruits de l’image. LeMean-shift a ete introduit par Fukunaga et Hostetler [FH75][60] et generalise parCheng [Che95][61]. Comaniciu & Meer [CM02][62] appliquent le mean shift sur la

2Il est demontre dans [59] que les valeurs propres generalisees du systeme S�a = λC�a, pour Sdefinie positive et C symetrique, sont de meme signe que les valeurs propres de C. Et le spectre dela matrice de contrainte C est { -2, -1, 2, 0, 0, 0} ne contient qu’une valeur strictement positive.

[60] K. Fukunaga and L.D. Hostetler. The estimation of the gradient of a density function.IEEE Transactions on Information Theory, 21 :32–40, 1975.

[61] Y. Cheng. Mean shift, mode seeking, and clustering. IEEE Transactions on PatternAnalysis and Machine Intelligence, 17(17), 1995.

[62] D. Comaniciu and P. Meer. Mean shift : A robust approach toward feature space analysis.

Page 289: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.3 Poursuite du visage 259

distribution conjointe de la position et de la couleur (ou du niveaux de gris) despixels, aux filtrage d’images preservant les discontinuites, et son extension a lasegmentation d’images en regions homogenes.

Les modes a trouver sont les maximas locaux de la distribution spatiale f(�x) =p(peau|x, y) de la probabilite de teinte chair dans l’image. L’approche du Mean-Shift est une procedure iterative consistant a deplacer sur la distribution f unefenetre W , de taille fixe, de sa position �x a la position m(�x) moyenne des pointsde f inclus dans W ponderes par leur valeur de probabilite [Che95][61].

A l’iteration k, W est centree sur le point �xkW , avec f(�xk

W ) = pk. Le barycentredes pixels situes sous la fenetre est calcule :

�xk+1W =

∑�x∈W �xf(�x)∑�x∈W f(�x)

Le mean shift estime le gradient de la distribution f par le vecteur de deplacementsuivant, appele vecteur de mean shift dans [CM02][62] ou plus simplement meanshift dans [FH75][60] :

�∇f(�xkW )

2f(�xkW )

= �xk+1W − �xk

W

La fenetre W est alors centree sur ce barycentre, et la procedure re-iteree jusqu’aconvergence autour d’un point fixe �∇f(�xW ) 0.

Le mean shift est un algorithme robuste [CM02][62] pour trouver les maximad’une distribution de probabilite, ou plus exactement le maxima le plus proche desa position initiale. Toutefois, il necessite de connaıtre la taille de l’objet recherche,qui est definie par l’utilisateur a l’initialisation du mean shift.

L’algorithme du CamShift, Continuously Adaptive Mean Shift, encapsule ce-lui du Mean-Shift dans une boucle faisant varier la taille de la fenetre jusqu’aconvergence. A chaque iteration, le mean shift est applique avec une fenetre detaille donnee. Apres convergence du mean shift, la procedure est re-iteree avec unenouvelle fenetre, centree sur la position trouvee par le mean shift, mais de taillefonction du moment d’ordre zero de la distribution spatiale de la probabilite deteinte chair precedemment calculee par le mean shift.

Le tableau 4.9 recapitule les etapes du mean shift, le tableau 4.10 celles duCamshift. Le Camshift s’applique aux images fixes, ce pourquoi la hauteur de lafenetre est choisie 20% plus grande que sa largeur. Le Camshift couple adapte leCamshift au suivi d’objet : le mean shift est applique a l’image, avec une taille defenetre fixe et jusqu’a convergence, puis la taille de W est modifiee pour l’imagesuivante. Les nouvelles dimensions de W sont definies a partir de l’ellipse deduite

IEEE Transactions on Pattern Analysis and Machine Intelligence, 24(5) :603–619, May2002.

Page 290: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

260 Detection et suivi de visages dans des sequences d’images

Soit I l’image de la probabilite de la couleur peau p(peau|�x),obtenue par retro-projection du modele de la teinte chair.

- Initialiser la fenetre W : position et taille.

- Tant que W est deplacee de plus d’un certain seuil, etque le nombre maximum d’iterations n’est pas atteint :

1. Calculer le barycentre des pixels (x,y) inclus dans lafenetre, ainsi que leur somme (moment d’ordre zero) :

M00 =∑

x,y I(x, y)

M10 =∑

x,y xI(x, y)

M01 =∑

x,y yI(x, y)

}⇒ xc = M10

M00, yc = M01

M00

2. Centrer W sur le barycentre (xc, yc).

Tab. 4.9 – L’algorithme du mean-shift

- Initialiser la fenetre W : position et taille.

- Tant que W est deplacee de plus d’un certain seuil, etque le nombre maximum d’iterations n’est pas atteint :

1. Appliquer le mean shift : retenir (xc, yc) et M00.

2. Centrer W sur (xc, yc) et lui affecter

la largeur w = 2√

M00

256et la hauteur h = 1.2w

Tab. 4.10 – L’algorithme du Camshift

des moments centraux du second ordre de la distribution spatiale de la teintechair, calcules sur la fenetre produite par le mean shift augmentee de ± 5 pixelsverticalement et horizontalement.

Le moment central d’ordre i pour et j pour y est definie par :

µi,j =∑x,y

(x− xc)i(y − yc)

jI(x, y)

Page 291: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.3 Poursuite du visage 261

- Calculer la distribution de probabilite sur une region derecherche plus grande que la fenetre initiale du mean shift.

- Initialiser la fenetre W du mean shift.

- Appliquer le mean shift jusqu’a convergence :soit Wf le rectangle obtenue.

- Augmenter la taille de Wf de ± 5 pixels.Evaluer l’ellipse a partir des moments du second ordre de ladistribution de probabilite situee sous Wf .

- Calculer le rectangle initiale du mean shift pour l’image suivante,et l’agrandir de ± 20% pour definir la region de recherche.

- Re-iterer les etapes precedente pour l’image suivante.

Tab. 4.11 – L’algorithme du Camshift couple

la sommation ayant lieu sur la fenetre agrandie. L’orientation de l’ellipse est donneepar θ :

θ = arctan2( 2µ11, µ20 − µ02 +√

4µ211 + (µ20 − µ02)2 )

ou la fonction arctan2 est la tangente inverse a quatre quadrants illustree parla figure 3.9, p.160. On evalue alors les moments d’inertie principaux de l’ellipse[SP98a, HPM02][63,23], definis par :

Imax =∑x,y

((x− xc)I(x, y) cos θ + (y − yc)I(x, y) sin θ

)2

Imin =∑x,y

((x− xc)I(x, y) sin θ − (y − yc)I(x, y) cos θ

)2

soit :

Imax = µ20 cos2 θ + 2µ11 cos θ sin θ + µ02 sin2 θ

Imin = µ20 sin2 θ − 2µ11 cos θ sin θ + µ02 cos2 θ

d’ou l’on deduit les dimensions du grand axe a et du petit axe b de l’ellipse :

a = 4√

M00Imax b = 4√

M00Imin

Si a < b, ce qui a lieu lorsque l’ellipse fait un angle superieur a 45˚avec l’horizon-tale, ces longueurs sont permutees, et l’angle θ est pris egale a π/2−θ. Le facteur 4correspond a l’ellipse contenant la distribution spatiale de la teinte chair, modelisee

[63] K. Sobottka and I. Pitas. A novel method for automatic face segmentation, facial featureextraction and tracking. Signal Processing : Image Communication, 12(3) :263–281, 1998.

Page 292: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

262 Detection et suivi de visages dans des sequences d’images

par une Gaussienne, avec une confiance de 99%, comme decrit par Gracia-Roche &al [GROBH05][29]. Dans cet article, le Camshift est utilise pour le suivi de visage :la modification apportee a l’algorithme decrit dans le tableau 4.10, est que la taillede la fenetre est modifiee non pas par une fonction du moment spatial d’ordre zeroM00 de la distribution, mais elle est agrandie d’un certain pourcentage a chaqueiteration, jusqu’a convergence. Apres quoi, l’ellipse de confiance a 99% est estimeeet les pixels qu’elle contient servent a re-estimer la distribution de la teinte chairsur le canal Hue.

La hauteur et la largeur de la fenetre initiale du mean shift pour la prochaineimage sont alors deduites par projection des sommets de l’ellipse sur les axes x ety :

w = max( a cos θ, b sin θ ) h = max( a sin θ, b cos θ )

Cette fenetre sert a initialiser la recherche du maximum de la probabilite de lacouleur peau, mais le Camshift couple precise aussi que cette probabilite doitetre calculee sur un voisinage plus etendu de cette fenetre : nous calculons doncp(peau|�x) sur la fenetre agrandie de ± 20% comme pour l’approche composanteconnexe.

Le tableau 4.11 recapitule l’algorithme du Camshift couple tel que nous l’appli-quons. A la section suivante, nous comparons cette approche a celle determinantla plus grande composante connexe decrite a la section precedente : le Camshiftcouple est effectivement plus robuste, mais aussi plus rapide.

4.3.4 Comparaison des deux approches sur les sequences

Microsoft

Dans cette section, nous testons le systeme de detection et de poursuite duvisage selon les deux approches presentees. Nous utilisons pour cela les troissequences Microsoft [Cam][57] que nous avions utilise pour tester l’approche de lo-calisation du visage par combinaison d’algorithme. Dans ces sequences, une seulepersonne est presente, excepte dans la sequence Geoff au cours de laquelle unvisage trop petit pour etre detecte apparaıt.

Le detecteur de visage est applique sur une image sur N = 20 de la sequence, ousur N = 2 lorsqu’aucun visage n’est poursuivi. L’image scannee par le detecteura pour dimensions 160x120 pixels, et est obtenue en reduisant l’image originale320x240 d’un facteur deux. Un modele de teinte chair est appris ou renouvellesur les pixels localises dans une ellipse inscrite dans chaque rectangle resultantdu detecteur de visage. La couleur peau est modelisee par un histogramme 32x32dans le plan H-S de HSV. Dans les tableaux 4.12 a 4.15, le nombre de visagesmanques, de meme que le nombre de faux positifs, n’est indique que si il est non

Page 293: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.3 Poursuite du visage 263

nul. Les performances du detecteur de visages sont donnees en premiere ligne dechaque tableau : le ou les visages sont, dans ce cas, recherchees sur chaque imagede la sequence. Le temps de traitement d’une image est moyenne sur l’ensembledes images de chaque sequence. La seconde ligne correspond aux performancesdu systeme de detection et suivi, par l’approche composante connexe. Le tempsmoyen de traitement d’une image est donne, et decompose en deux temps : letemps moyen de la detection de visage et le temps moyen de la poursuite. Lesperformances de l’approche Camshift couple sont donnees en troisieme ligne. Tousles temps donnes sont arrondis a la demi milliseconde pres. Le processeur utiliseest un Pentium 4 cadence a 2.8 GHz.

Dans la sequence Geoff la detection et le suivi ne pose de probleme a aucunedes approches de poursuite employee. Le detecteur de Viola et Jones, utilise seul,manque simplement un visage sur une image de la sequence, et detecte aussi unfaux positif sur une autre image. Ces bonnes performances sont dues au fait que lesujet n’incline que tres peu la tete, et durant la sequence son visage est principale-ment de face. Le temps moyen de traitement d’une image par ce detecteur est de60 ms, beaucoup plus long qu’une poursuite de la teinte chair. Les deux methodesde poursuite donnent les memes taux de reussite, mais le Camshift couple est plusrapide que la segmentation en composante connexe, avec un temps moyen de trai-tement de 8 ms contre 12.5 ms pour cette derniere approche : voir tableau 4.12.Comme la cible n’est perdue a aucun moment, pour les deux methodes, le nombrede fois ou le detecteur de visages est active est le meme. La detection de visagesa lieu a trois reprises, et le temps de traitement correspondant, moyenne sur les48 images de la sequence, est de 4 ms (de l’ordre de 60 ms x 3 images /48). Lapoursuite du visage par l’approche Camshift est realisee en un temps moyen de 4ms. Elle est donc plus rapide de 4.5 ms, en moyenne, par rapport a l’approche com-posante connexe. Les temps de traitement dependent principalement de la taillede la region de recherche : dans cette sequence, elle varie de 120x150 a 140x160.

La poursuite de la teinte chair par l’approche Camshift consiste en deux etapes :la retro-projection du modele de teinte chair suivi d’un certain nombre d’iterationsdu mean shift. Nous avons constate sur toutes les sequences que la constructionde Ppeau est 4 a 5 fois plus lente que le Camshift, quelque soit la taille de laregion de recherche. L’etape de retro-projection est elle meme constituee de deuxphases : la conversion de l’image RGB dans l’espace HSV suivi de la constructionde Ppeau. La conversion colorimetrique est de l’ordre de 6 fois plus lente que laretro-projection du modele sur l’image HSV obtenue. Dans le cas de l’approchecomposante connexe, la majeure partie du temps de traitement est consacree ala dilatation et au lissage de l’image Ppeau. Nous avons constate, sur l’ensembledes sequences, que ces deux operations prenait de l’ordre de deux a trois fois plusde temps (en fonction de la RAM disponible) que la conversion colorimetrique.Ainsi pour la sequence Geoff, les temps de traitement peuvent etre globalement

Page 294: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

264 Detection et suivi de visages dans des sequences d’images

Approche dela poursuite

PerformancesTemps de traitement

moyen par imageDetection Suivi

Detection du visageimage par image

47 vrais positifs1 faux positif

1 manque60 ms

Composante Connexe 48 vrais positifs12.5 ms

4 ms 8.5 ms

Camshift couple 48 vrais positifs8 ms

4 ms 4 ms

Tab. 4.12 – Performances sur la sequence Geoff contenant 48 images : un visageest detecte des la premiere image, le modele de teinte chair est renouvelle a deuxreprises durant le reste de la sequence.

Approche dela poursuite

ConversionRGB a HSV

Retro-projectiondu modele

Post-traitements :Camshift oubinarisation

Comp. connexe 3 ms 0.5 ms 5 msCamshift couple 3 ms 0.5 ms 0.5 ms

Tab. 4.13 – Decomposition du temps de segmentation du visage dans la sequenceGeoff (temps approximatifs)

decomposes comme indique au tableau 4.13.

Dans la sequence Ilkay, le sujet se deplace sur une chaise de gauche a droite,et le visage est plus difficile a detecter comme apparaissant souvent de profil. Lapoursuite ne pose pas de probleme quelque soit la methode employee, a partirdu moment ou le visage est detecte, le Camshift couple est toutefois plus rapideque l’approche composante connexe. Les douze visages manques indiques dans letableau 4.14 le sont parce qu’aucun visage n’est detecte en debut de sequence :le visage du sujet est vu de profil pendant ce laps de temps. Durant ce debut desequence, lorsque le visage est recherche dans une image sur deux, il est detecte a latreizieme image. Si il avait ete recherche sur toutes les images, jusqu’a etre detecte,il aurait ete localise a la douzieme image, mais le temps moyen de traitement de lasequence eut ete augmente d’environ 6x60 ms/160. Le temps moyen sur la sequencede la detection de visage est ainsi plus long que dans le cas de la sequence Geoff.Le temps de poursuite du visage est en revanche plus petit pour deux raisons.D’abord durant les douze premieres images aucun visage n’est suivi. Ensuite, lataille de la region de recherche est plus petite dans la sequence Ilkay : cette taillevarie de l’ordre de 95x100 a 120x150 pixels au cours de la sequence.

La sequence Jamie montre le plus de difference entre les deux approches de

Page 295: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.3 Poursuite du visage 265

Approche dela poursuite

PerformancesTemps de traitement

moyen par imageDetection Suivi

Detection du visageimage par image

132 vrais positifs28 manques1 faux positif

62 ms

Composante Connexe148 vrais positifs

12 manques11.5 ms

6.5 ms 5 ms

Camshift couple148 vrais positifs

12 manques8.5 ms

6.5 ms 2 ms

Tab. 4.14 – Performances sur la sequence Ilkay contenant 160 images : le premiervisage est detecte a la treizieme image de la sequence, le modele est remis a joura sept reprises par la suite.

poursuite de la teinte chair : voir tableau 4.15. La poursuite utilisant le Camshiftcouple est plus robuste aux conditions extremes, pour le modele de teinte chairemploye, presentes dans cette sequence : le fond est jaune-peau, et le sujet esteclaire par l’arriere en debut de sequence par des neons. On peut voir l’ombreportee sur le visage, sur les deux premiers exemples de la figure 4.17. Dans cettefigure, un rectangle bleu correspond a une detection de visage : le modele decouleur est re-initialise puis applique a l’image. L’ellipse deduite par l’approcheCamshift couple est dessinee en bleu, celle de l’approche composante connexe enrouge et jaune. Les vignettes monochromes situees sur la droite de chaque imagecorrespondent respectivement, pour la vignette du haut a la region de recherche del’image Ppeau, sur laquelle l’ellipse du Camshift est determinee, et pour la vignettedu bas au lissage opere sur cette image, a partir duquel les composantes connexessont etiquetees.

A partir de l’image 31, exemple note Eclairage++ dans la figure 4.17, unesource supplementaire est allumee, eclairant le visage de maniere frontale, le sur-exposant : la luminance des trois quarts du visage est superieur a 250. Or lespixels ayant une telle luminance ne sont pas comptabilises dans le modele de teintchair : ces pixels se voient donc attribuer une probabilite de teinte chair nulle, ceque l’on peut voir sur cette image 31 et les exemples suivants. La binarisation dePpeau resulte en un faux positif dans une region interieure au visage, la bouche oul’oreille sur la figure 4.17, a cause de la discontinuite de Ppeau en depit du post-traitement vigoureux qui lui est applique (dilatation suivie de lissage). Mais si lacontrainte sur la luminance V ≤ 250 est levee, le fond de la scene et le visage ontune teinte trop similaire, et la cible poursuivie s’etend a toute la scene, quelquesoit l’approche utilisee. Et le mean shift trouve la localisation correcte du visagede maniere robuste a cette avarie du modele.

Page 296: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

266 Detection et suivi de visages dans des sequences d’images

Eclairage ++

Fig. 4.17 – Exemples de detection (rectangles bleus) et de suivi du visage sur lasequence Jamie : les ellipses bleus correspondent au Camshift, les ellipses rougeet jaune a l’approche composante connexe. Les vignettes monochromes situeesa droite de chaque image illustrent l’image des probabilites de teinte chair et leresultat de son lissage.

La figure 4.18 montre deux exemples ou le camshift marche parfaitement et au-cune composante connexe, deduite du lissage de Ppeau, n’est suffisamment grandepour etre consideree comme un visage. Dans le cas de la segmentation en compo-sante connexe, la poursuite du visage est abandonnee : le systeme croit detecterune sortie du sujet de la scene. Le detecteur de visage est alors active sur uneimage sur deux de la sequence. 20 des visages manques le sont a cause de cette”disparition” du visage : le visage est tourne vers le tableau durant ces 20 images,et aucune detection de visage n’a lieu. Le Camshift s’adapte impeccablement acette pose du visage, la peau du sujet apparaissant suffisamment. Le temps moyende traitement inclus donc un temps moyen supplementaire de l’ordre de 60 ms x10 images/85=7 ms pour l’approche composante connexe.

La figure 4.19 donne un exemple ou l’ellipse ajustee au contours de la compo-sante connexe filtree localise plus precisement le visage que l’ellipse resultant du

Page 297: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.3 Poursuite du visage 267

Ppeau Ppeau lissé

Disparition : composantes connexes trop petitesaprès binarisation

Fig. 4.18 – Dans ces deux exemples, le Camshift poursuit correctement le visage,mais les composantes connexes etiquetees sont toutes de surface inferieure a lalimite de poursuite : dans ce cas le visage n’est plus poursuivi

Camshift : une region homogene de Ppeau attire le rectangle du mean shift. Maiscette derive ne s’etend pas dans les images suivantes de la sequence, bien que leCamshift impose l’exploration de regions grandissantes : dans ce cas, le criterede convergence du mean shift est verifie des la premiere iteration, la fenetre dumean shift etant ”retenue” par les pixels de vraisemblance elevee situee sur le vi-sage. Cette imprecision constitue un petit desavantage du Camshift par rapporta l’approche composante connexe, et elle est due au modele de teinte chair. Cetinconvenient est negligeable compare au gain en temps de calcul et a la robustesseaux conditions d’illumination apporte par le Camshift. D’autant plus que cet effetest corrige soit par un renouvellement du modele de teinte chair, a la detectionsuivante du visage, soit par la balance automatique des blancs de la camera.

Page 298: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

268 Detection et suivi de visages dans des sequences d’images

Approche dela poursuite

PerformancesTemps de traitement

moyen par imageDetection Suivi

Detection du visageimage par image

61 vrais positifs24 manques

59 ms

Composante Connexe43 vrais positifs20 faux positifs

42 manques

17.5 ms13 ms 4.5 ms

Camshift couple83 vrais positifs

2 manques8.5 ms

5 ms 3.5 ms

Tab. 4.15 – Performances sur la sequence Jamie contenant 85 images : le premiervisage est detecte a la troisieme image de la sequence, le modele est remis a joura trois reprises par la suite.

Camshift

ComposanteConnexe

Dérive du meanshift vers le fond de couleur proche

de la teinte chair

Fig. 4.19 – Un exemple de derive du mean shift vers une zone de distraction : lecamshift ne fait pas s’etendre l’ellipse dans les images suivantes.

Page 299: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.4 Conclusion 269

4.4 Conclusion

Nous avons presente les resultats de notre systeme de suivi sur quelques sequencesafin d’en quantifier les performances. Ces sequences sont representatives de plu-sieurs scenarios :

– les conditions d’illumination qui changent brutalement dans la sequence Ja-mie ont permis de verifier que la distribution de la teinte chair dans le planchromatique H − S est suffisamment stable pour s’accommoder dans unegrande mesure de ce type de variation : l’information de luminance est priseen compte implicitement lors du renouvellement du modele de couleur peau.Les limites sur la luminance des pixels d’apprentissage du modele, ont aussiete une option payante sur cette sequence du moins pour l’approche Camshiftcouple qui s’accommode de ”trous” beant dans Ppeau.

– la sequence Geoff illustre les limites de detection en terme de taille du visage :le sujet situe en arriere plan est trop loin pour etre detecte, et ne peut etresuivi que si il est suffisamment pres de la camera, a au moins 1.5 metresenviron.

– la sequence Ilkay illustre la diminution de la cadence de traitement lorsque ledetecteur tarde a detecter le sujet, mais elle illustre aussi l’interet d’activerle detecteur plus frequemment lorsqu’aucun visage n’est suivi.

– trois gammes de tailles de visage ont ete rencontrees, mettant a l’occasionen valeur une augmentation des temps de calcul pour les visages les plusetendus, c’est-a-dire les plus proches de la camera.

– les differentes poses possibles du visage sont aussi presentes dans cette sequence,montrant l’interet de l’invariance a ce type de deformation de la couleur peau.

– ces sequences ne contiennent qu’un seul visage detectable : nous n’avons doncpas pu demontrer l’efficience de l’approche dans le cas ou plusieurs personnessont presentes dans la scene, ni dans le cas ou une personne en disparaıt. Cesderniers points ont ete verifies lors de nos test en temps reel, prouvant ainsique la poursuite est aussi efficace qu’il y ait zero, une ou plusieurs personnesa suivre.

Le probleme des zones de distractions est en grande partie resolu par plusieursoptions :

– lorsque la cible contient moins de 100 pixels, elle est abandonnee ce quipermet d’eliminer les petits distracteurs, tout en definissant la sortie d’unsujet hors de la scene.

– lorsqu’un visage passe devant un faux positif soit ces deux cibles n’ont pas lameme couleur et le faux positif est elimine par le mecanisme precedent, soitelles ont la meme couleur et elles fusionnent en une seule cible, la poursuitedu visage pouvant alors continuer.

– l’utilisation du mean shift, qui tend a ignorer l’effet des ”outliers”, ajouteune robustesse notable a la poursuite.

Page 300: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

270 Detection et suivi de visages dans des sequences d’images

(a) (b)

Fig. 4.20 – Cas ou un faux positif est poursuivi : (a) la sortie du visage a eu lieuau niveau d’un distracteur. (b) Lorsque le visage sort de la scene, la poursuitecontinue sur les vetements du sujet.

En pratique, ce probleme se pose surtout avec l’approche composante connexe,mais peut aussi arriver avec le mean shift notamment lorsqu’une personne disparaıtde la scene a un endroit contenant un distracteur (figure 4.20(a)) ou lorsque lesvetements du sujet sont eux-memes des distracteurs (figure 4.20(b)). Un autreprobleme qui reste a resoudre dans notre systeme de suivi est le cas d’un faux positifengendre par la detection de visage. Avec toutes les precautions prises (arbitrageentre detections multiples, reduction de l’image), cet effet a ete rencontre durantles periodes estivales, lorsque le soleil eclaire fortement la scene. Une solution aces deux problemes est en cours d’elaboration : elle consiste a verifier la ciblepoursuivie a l’aide du detecteur de visage. Ce detecteur agissant sur les visagesde face, l’angle Φ que fait l’ellipse representant le visage avec l’axe y est utilisepour operer une rotation dans le plan de l’image d’une region d’interet contenantla cible, afin de ramener le visage de face, le detecteur de visage etant applique al’image obtenue. La figure 4.21(a) illustre deux exemples ou cette approche peuts’appliquer, correspondant a une rotation du visage dans le plan autour de l’axe z :le rectangle jaune indique le rectangle resultat de la detection apres rotation de laregion d’interet d’un angle −Φ. La figure 4.21(b) illustre le cas de rotations dansle plan composees d’une rotation hors du plan autour de l’axe x (vue de profil) :la cascade ne detectant pas les visages de profil, la cible n’est pas validee. Cedernier cas de figure pose donc un probleme a la solution proposee. Des experiencespreliminaires ont aussi montre que cette approche etait sensible a l’imprecision surl’angle Phi et demandeuse en temps de calcul. Une idee est d’operer cette etape deverification periodiquement, et de prendre une decision sur la validite de la ciblea partir d’un certain nombre de mesure. On notera sur les exemples de la figure4.21 que l’orientation du visage peut aussi etre determinee par cette approche. Lestraits verts sur les sourcils et la bouche du sujet illustrent au passage le resultatd’une approche cumulative, la Transformee Chinoise, qui a fait l’objet de travaux

Page 301: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

4.4 Conclusion 271

(a)

(b)

Fig. 4.21 – Verification d’une cible poursuivie : le rectangle jaune correspond aune detection du visage apres application d’une rotation de la cible dans le plande l’image d’un angle −Φ determine par l’ellipse. (a) Cas de la rotation du visagedans le plan de l’image. (b) Cas d’une rotation supplementaire hors du plan.

presentes dans [MBP05, BM06][64,53].

Cela etant dit, le systeme presente dans ce chapitre a ete teste a diverses oc-casions, dans des environnements differents et s’est revele au moins aussi effi-cace que les systemes de suivi du visage implementes dans les webcams dernieresgenerations. Ces webcams utilisees en video-conference combinent des informationsde couleur, de mouvement et de formes pour determiner la position du visage. Unzoom numerique est alors operee sur cette region d’interet, de maniere a suivre lapersonne dans ces deplacements dans le champ de la camera. Certaines webcampan-tilt-zoom peuvent meme le suivre dans toute la piece, d’autres proposent desavatars animes (les yeux, la bouche et le nez etant localises) ou l’incrustation delunettes ou d’une moustache dans l’image. Le grand point ou ces logiciels sur-passent notre approche est qu’ils peuvent initialiser la poursuite du visage memelorsqu’il n’est pas de face. Ces systemes sont toutefois assez sensibles aux condi-tions d’eclairement, et un bouton de remise a zero est a actionner par l’utilisateurlorsqu’un echec de la poursuite survient (focalisation sur un distracteur, c.f An-

[64] M. Milgram, R. Belaroussi, and L. Prevost. Multi-stage combination of geometric and colo-rimetric detectors for eyes localization. In Proceedings of the 13th International Conferenceon Image Analysis and Processing, pages 1010–1017, 2005.

Page 302: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

272 Detection et suivi de visages dans des sequences d’images

nexe). On trouve sur internet une profusion de commentaires d’acheteurs ayantutilises ces cameras : l’option suivi du visage est trouve ludique au depart mais estgeneralement abandonnee notamment a cause de la fonction de zoom qui revienten arriere lorsque la cible est perdue puis en avant quand elle est retrouvee (cer-tains consommateurs se plaignant de nausees . . .). Nous avons selectionne quelquesune de ces critiques, fortes interessantes et les avons mises en annexe.Petit morceau choisi pour conclure ce chapitre, extrait du journal de bord d’uninternaute (la suite se trouve en annexe) :

Avatar update : October 10, 2005While testing the QuickCam Orbit MP I had taken the Orbit to my trailer for theweekend. I decided to try the avatar thing again with the same result. Can’t trackmy face. However, a lady acquaintance happened to stop in and sat down on thesofa next to me. All of a sudden the camera found her face from across the roomand I could see red circular areas highlighting her eyes and mouth in the previewwindow. The avatar software had found her without any effort and she was showingas an animated dinosaur in the screen. This almost guarantees that my beard andmustache are the problem. Looks like Logitech has a way to go with this software.Hopefully they will issue an updated version of the software soon. This reminds meof an item in Bill Gates book ’The Road Ahead’. His software designers thoughtthey had their hand writing recognition software working and ran to Gate’s officewith the device. It couldn’t understand a thing Bill wrote. They had forgotten Billwas left handed.

Page 303: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006
Page 304: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006
Page 305: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

Conclusion et Perspectives

Dans ce memoire nous nous sommes interesse a la localisation du visage, dansdes images fixes ou dans des sequences d’images, en couleur : la premiere hy-pothese qui est faite, est que le nombre de visages a localiser est connu a priori.Une seconde hypothese forte a ete dans un premier temps posee sur les dimensionsdu visage, que l’on supposait connue, ce qui revenait a connaıtre la distance ap-proximative entre la personne et la camera. Aucune contrainte temps reel n’a eteimposee. Connaissant le nombre et la taille des visages presents dans une image,nous avons developpe trois modeles generatifs du visage, c’est-a-dire des modelesn’utilisant pas de contre-exemples. Le choix du reseau Diabolo pour modele d’ap-parence du visage a ete fait : notre travail s’est alors concentre sur la recherched’une representation de l’image plus efficiente que les niveaux de gris, ainsi quesur une architecture optimale pour le probleme de la localisation du visage. Notrepremier modele de couleur peau etait en pratique defini par un simple seuillagefixe dans le plan Cb − Cr. Par la suite, l’information de luminance a ete prise encompte dans un modele non parametrique de la couleur peau dans l’espace HSV .Un modele d’ellipse frontale par Transformee de Hough Generalisee a aussi eteimplemente avec une structure simplifiee par l’hypothese de la connaissance dela taille du visage. Chacun de ces modeles, utilise seul, ne permet pas une loca-lisation satisfaisante du visage, que ce soit en terme de precision ou de taux dereussite. Nous avons alors fait cooperer ces differents modeles, et teste differentsoperateurs de fusion : un modele Bayesien, un systeme d’inferences floues et desreseaux de neurones. C’est cette derniere approche qui s’est revelee la plus perfor-mante, et parmi les differentes architectures de reseaux, celle ne contenant aucunneurone cache etait la plus efficiente. La somme ponderee des reponses de cesmodeles, les poids etant appris par retropropagation de l’erreur d’apprentissagesur une base de visages et de non visages, a ainsi permis d’obtenir des resultatssatisfaisants sur une vaste base d’images fixes ainsi que sur des sequences d’images.Ces resultats etaient suffisamment encourageant pour tester l’approche a plusieursechelles, levant la contrainte sur la connaissance de la taille du visage a localiser.Nous avons toutefois limite la taille minimale du visage, afin de ne pas avoir a tropd’echelles a parcourir. Dans la derniere partie de nos travaux, nous nous sommesconfrontes a la question du temps reel. Une approche plus simple et plus rapide a

Page 306: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

274 Conclusion et Perspectives

Approche DiaboloHoughellipse

Fusion

Taux de localisation 48.5% 67% 86%

Tab. 4.16 – Performances de la localisation mono-echelle sur une base de 1353images ne contenant qu’un seul visage

ApprocheLocalisation du visage

par fusion d’algorithmesDetection de visages

(Viola&Jones)

Performances 58.25% des visages localises71.38% des visages detectes

pour 49 faux positifs

Tab. 4.17 – Perfomances du localisateur par fusion et du detecteur de visages

ete implementee : elle consistait a exploiter les resultats d’un detecteur de visagepour apprendre un modele local de la teinte chair dans le plan H−S. La detectionperiodique du detecteur de Viola&Jones permettait de s’affranchir de l’informa-tion de luminance, et d’obtenir un modele de teinte chair dynamique et fiable. Lesperformances du Camshift, compare a une segmentation en composante connexe,ont finalement ete quantifiees.

Notre premier objectif etait donc la localisation du visage connaissant approxi-mativement sa taille. Sur une base de test de 1353 images ne contenant qu’unseul visage, les taux de localisation recapitules au tableau 4.16 ont ete obtenuesrespectivement par le modele d’apparence, le modele d’ellipse et la fusion des troismodeles : La fusion d’algorithmes ameliore ainsi considerablement l’efficacite desexperts individuels, mais aussi la precision de la localisation. Des tests sur dessequences d’images ont demontre que l’approche etait particulierement pertinentedans le cas ou la distance entre la personne et la camera variait peu, notammentdans le cas d’un utilisateur place devant son poste de travail, avec un taux delocalisation de 92% sur l’ensemble des images de ces sequences.

L’approche a ete exploitee a plusieurs echelles, afin de traiter des visages detaille inconnue a priori, mais limite a la taille 52x68 pixels, sur une base detest de 1303 images ne contenant qu’un seul visage. A titre de comparaison, ledetecteur de Viola&Jones a ete teste sur 1069 de ces images correspondant auxvisages de taille superieure a 96x96 pixels. Les resultats obtenus sont recapitulesau tableau 4.17 : le detecteur localise (et detecte) correctement 13% de visagesen plus, en moyenne, que le localisateur par fusion lineaire. Bien que l’approchede Viola&Jones implemente un detecteur de visages, c’est-a-dire que le nombre devisages lui est inconnu, elle obtient des resultats superieurs a notre approche, quiexploite le fait qu’un seul visage soit present dans chaque image. Notre approcheest toutefois interessante car dans les resultats presentes, aucune heuristique n’estutilisee pour masquer des regions de non visages, telles que la distance Euclidienne

Page 307: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

275

a un prototype, un masque base sur la couleur ou un expert plus elabore. Nousn’avons pas pu quantifier la robustesse de notre approche a l’orientation du vi-sage, mais les exemples que nous avons rencontres montrent que notre approcheest moins sensible a ce parametre que le detecteur de Viola&Jones, du fait del’invariance de l’expert modelisant la couleur. Cela dit, l’emploi de modeles d’ap-parence et d’ellipse specifiques aux poses du visage devrait ameliorer notablementnos resultats.

Toutefois, le detecteur de Viola&Jones est beaucoup plus rapide que notrelocalisateur : decision fut alors prise de l’exploiter dans un systeme de poursuitede visages. L’approche du suivi de visages (multiples) bien que plus simple s’estrevelee convaincante : la couleur des visages detectes est apprise dans le plan H−Sde HSV , l’information de luminance etant apportee par l’utilisation periodiquedu detecteur. La robustesse et la rapidite du Camshift ainsi qu’une utilisationparcimonieuse du detecteur de Viola&Jones nous a permis d’atteindre des tempsde calculs moyen de l’ordre de 9 ms par image, l’etat de l’art se situant a 5 ms,ainsi que des performances tres satisfaisantes en poursuite de visages.

Pour la localisation de visage dans une image fixe, nos resultats nous encou-ragent a poursuivre nos travaux sur la fusion d’informations selon deux voies, l’uneportant sur l’architecture et l’autre sur l’incorporation d’experts traitant d’autresrepresentation de l’image. En terme d’architecture, deux approches sont a exploi-ter :

– l’apparence du visage varie principalement en fonction de sa pose, et uneapproche a deux etages est a considerer : determination de la pose du vi-sage suivie de la combinaison de modeles adaptes a cette pose. L’utilisationd’un classifieur d’orientations du visage aiguillant la vignette sur un modeled’apparence et d’ellipse specialise devrait permettre une collaboration plusefficace avec le modele de teinte chair.

– plutot que d’utiliser un modele de teinte chair unique, plusieurs modelescolorimetriques, chacun etant specialise sur un groupe d’images de couleur oud’illumination similaire, peuvent etre employes : chaque modele produit uneimage Ppeau de probabilite de couleur peau. Une autre maniere de combinerle modele d’ellipse et celui de teinte chair est alors d’operer la transformeede Hough sur chacune des images et de choisir le modele colorimetrique leplus adapte en fonction des accumulateurs obtenus.

L’incorporation d’experts supplementaire peut se faire selon deux methodes :

– la premiere consiste a combiner notre localisateur en serie avec les premiersclassifieurs forts du detecteur de visages utilises comme heuristique afin demasquer des regions de non visages et de concentrer le localisateur sur lesregions contenant le plus probablement le visage. L’idee est donc de rempla-cer les derniers etages de la cascade, responsables du rejet des visages nonfrontaux, par notre localisateur.

Page 308: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

276 Conclusion et Perspectives

– la seconde consiste a developper notre approche connexionniste de la com-binaison lineaire, pour fusionner en parallele les experts constitues par lessorties de classifieurs forts, et les modeles que nous avons deja developpes.

En poursuite de visages, les cadences de traitement que nous obtenons sontsuffisamment elevees pour ajouter un module de detection des traits du visage. Lestravaux de notre equipe sur la localisation des yeux par une approche cumulative,la Transformee Chinoise [MBP05][1], ont deja ete adapte a la detection des sourcilset de la bouche en temps reel [BM06][2], et sont en cours d’optimisation. Lorsquele systeme sera juge suffisamment robuste, nous pourrons envisager l’applicationde ses resultats a l’animation d’un modele filaire 3D ainsi qu’a la cooperation avecun systeme de reconnaissance de phonemes pour la lecture labiale.

[1] M. Milgram, R. Belaroussi, and L. Prevost. Multi-stage combination of geometric and colo-rimetric detectors for eyes localization. In Proceedings of the 13th International Conferenceon Image Analysis and Processing, pages 1010–1017, 2005.

[2] R. Belaroussi and M. Milgram. Face tracking and facial features detection with a webcam.In Proceedings of the 3rd European Conference on Visual Media Production (a paraıtre),2006. Presente en demonstration a European Conference on Computer Vision.

Page 309: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006
Page 310: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006
Page 311: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

Annexe

Internet est une source d’information particulierement interessante concernantl’accueil reserve par le public aux dernieres technologies mis a leur disposition.Nous avons selectionner quelques commentaires d’utilisateurs, ainsi qu’un articleplus general sur le sujet de la video-surveillance.

cowboyfrank.net/webcams

Le succes de ce ”blog” d’un retraite americain, qui se definit lui meme commeun cowboy, connait un taux de frequentation de plus de 37000 visiteurs par mois,interesses, au grand depit de son auteur, par la rubrique ”webcam” dans laquelleil passe en revue toute une collection de camera.Morceaux choisis :

(NDLR :A propos de la Logitech Quickcam Fusion) Trying to get the avatarvideo effects working has proven to be a real problem. At this point I have not beenable to get the alinement process working which is neccessary to get the avatarsto function. The program keeps telling me it can’t track my face. This alignmentprocess shows a small window with the live camera image in it and a small red boxwhich you are supposed to center your face in. The instructions say to make sureyour eyes line up with the red dots, but I can’t find any red dots in the window.I thought this tracking problem might be due to my beard, but I had my partner,who has only a mustache, try it, with the same results.

Avatar update : October 10, 2005While testing the QuickCam Orbit MP I had taken the Orbit to my trailer forthe weekend. I decided to try the avatar thing again with the same result. Can’ttrack my face. However, a lady acquaintance happened to stop in and sat downon the sofa next to me. All of a sudden the camera found her face from across theroom and I could see red circular areas highlighting her eyes and mouth in thepreview window. The avatar software had found her without any effort and shewas showing as an animated dinosaur in the screen. This almost guarantees thatmy beard and mustache are the problem. Looks like Logetech has a way to go with

Page 312: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

278 ANNEXE

this software. Hopefully they will issue an updated version of the software soon.This reminds me of an item in Bill Gates book ’The Road Ahead’. His softwaredesigners thought they had their hand writing recognition software working andran to Gate’s office with the device. It couldn’t understand a thing Bill wrote.They had forgotten Bill was left handed.

Another Avatar update May 3, 2006A few days ago I needed to install my Fusion on another computer and couldn’tfind the driver disk so I downloaded the latest software from Logitech’s website. Itappears they have now fixed the Avatar problem, cause the new software found myface and turned me into a dinosaur. Lesson here is if you buy the Fusion, downloadthe latest drivers from the website to get the Avatars working.

The QuickCam Fusion’s auto face tracking seems to work a bit better than theQuickCam Orbit’s. However, the Fusion seems to be constantly readjusting itselfby zooming in and out, occasionally centering on the electric meter on the lampbehind me. But, as soon as I move around a bit, it wakes up and comes back tome.

Logitech QuickCam Orbit, Purchased Febuary 2004, 130$The software that tries to track your face has some serious problems. I suspectpart of this is due to my beard creating a fuzzy bottom to the oval shape of myface. The camera seems to try to center on my forehead most of the time. Thenoccasionally it will, for no apparent reason, slowly wander off and point at theceiling or a table lamp which was totally out of the frame when it started moving.Sometimes I can get it to come back by making a fist in front of the camera and,so to speak, drag the center back to my face. Then, at other times that doesn’twork and I have to turn the face tracking off and use the manual control panel tobring it back to my face. In the long run I have given up even trying to use theauto face tracking, which makes the prime selling feature of this camera useless.

www.01net.com

Pour les inconditionnels de tchate, les fans de gadgets animes et d’emoticonesen tout genre, le logiciel Logitech Video Effect, livre avec la Quickcam Pro 5000,propose des modeles d’avatars qui suivent les mouvements de votre tete... dans unecertaine limite, bien sur Certes, c’est un gadget, mais les amateurs de tchate surmessagerie instantanee sont friands de ce genre d’effets speciaux. Le logiciel VideoEffects, fourni avec ce modele, permet de creer d’amusants avatars (qui suivent lesmouvements de l’utilisateur, a condition de bien rester au milieu du cadre).

Page 313: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

ANNEXE 279

www.informanews.net

Logitech QuickCam Sphere Apres de multiples tests, nous pouvons donnerquelques conclusions. Le ”face tracking” fonctionne bel et bien mais avec quelquesproblemes ... Le champ de vision de la webcam est veritablement impressionnant(60 degres / 180 degres) et permet de suivre le sujet a l’interieur d’une piece, unatout pour les seances de visioconference ! Contrairement au ”face tracking” logi-ciel appliquant un zoom sur l’image, ici il n’y a pas de deformation et celle ci restedonc toujours de bonne qualite. Dernier atout de ce ”face tracking” materiel, lesuivi du sujet et plus adapte et si l’on bouge un objet, la webcam ne reagira pas.

Passons maintenant aux defauts de ce ”face tracking” : il va falloir vous habituera effectuer des mouvements lents, en effet, un mouvement rapide de gauche adroite et hop, la webcam ne vous suit plus et il faut la recadrer manuellement vial’interface pour quelle vous recadre de nouveau. Autre petit souci, les mouvementsde la webcam ne sont pas fluides, cela donne donc des mouvements par accoutsqui peuvent etre parfois genants.

forum.hardware.fr

Logitech QuickCam Fusion Mis a part l’aspect esthetique, les fonctionnalitesmarchent toutes sans pb (si ce n’est qu’il faut faire attention aux sources de lumi-nosite). Les avatars ont fait rire plus d’un de mes correspondants. Le face trackingmarche bien, faut pas etre speed mais ca suit !

www.rue-hardware.com

Quickcam Pro4000 Derniere chose, je ne m’en sers pas mais le tracking duvisage est sympa, peut etre moins performant que sur la 5000 mais ca reste ungadget. En meme temps quand vous etes devant votre ecran, vous bougez pas tantque ca et si vous bougez, c’est par exemple pour aller chercher un truc a boirealors pas besoin de vous suivre a la Loft Story.

J’utlise cette webcam depuis 3 mois. Mes conclusions sont les suivantes : (. . .)9 : le face tracking est parfois un peu surprenant dans sa faculte a s’interesser plusa vos mains ou a votre ventilateur plutot qu’a votre visage (meme chose pour les2 webcams). Ceci dit c’est amusant et ca met un peu d’animation...

Page 314: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

280 ANNEXE

www.ciao.fr

Quickcam Pro4000

Le Face Tracking : Dans tous les modes video, la possibilite d’utilise le Facetracking existe. Cette option permet a la camera de detecter le visage de la personneet par le jeu de zoom automatique et de recadrage de suivre la personne dans sesmouvements (dans la limite de quelques centimetres) c’est bluffant, mais tres viteagacant, quand la camera se prend pour Lelouch et se met a zoomer dans tous lessens ! !

(. . .) pour le chat il existe un fonction pratique : le FACE TRACKING : c’esten fait un suivi de votre visage pendant que vous chattez ; pratique mais un peudonnant la nausee a la longue je trouve personnellement

Le face tracking : permet a la camera de zoomer sur le visage et de recadrerlors de mouvements. Un systeme de fleches permet de modifier quelque peu latrajectoire. Parfois la camera s’emballe un peu et zoom de trop et c’est desagreable.Il suffit de desactiver et reactiver le face tracking. Un peu gadget tout de meme.

Petit plus assez marrant quand on placote : cette camera possede une fonctionzoom debrayable (le face tracking). La camera prends votre visage comme pointde repere & vous suit lorsque vous bougez. Donc zoom, recherche du meilleurangle. Ca surprend un peu au debut mais on s’y habitue , le resultat final estimpressionnant ! Ainsi lorsque vous presentez un objet a l’objectif, il zoome dessus, ce qui permet de les montrer a vos correspondants :) Et pour ceux que ca gene,on debraye la fonction & on n’en parle plus !

Logitech Quickcam Sphere

La fonctionnalite Face Tracking fut un veritable poids dans ma decision : alorsque l’on passe son temps a regler le cadrage des webcams traditionnelles, cettewebcam peut pivoter d’elle meme pour suivre nos mouvements dans une piecetoute entiere, automatiquement ou manuellement, le tout dans une tres bonnequalite d’image grace a diverses technologies Logitech. (. . .) On regrettera cepen-dant quelques aleas avec la fonction Face Tracking : la camera a parfois du mal areconnaitre le visage et a le suivre, mais cela reste globalement tres positif. Autrepetit reproche, les commercants ne soulignent pas assez qu’il s’agit la du modelepremiere generation (la seconde porte la mention MP ou Refresh) et qu’elle neSUPPORTE PAS les avatars en 3D.

Son atout majeur, le virtual tracking ou suivi du visage, pour cela elle est poseesur un pied de 22.85 cm affin de se retrouver a la hauteur des yeux pour obtenirun suivi du visage optimal. La camera est donc motorisee et vous suit lors de vosdeplacements en respectant des angles de 180 sur l’horizontale et de 90 sur laverticale. Lorsque cette option est activee un peut choisir en plus d’activer ou non

Page 315: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

ANNEXE 281

le zoom numerique automatique ( zoom jusqu’a 4 fois ) cela permet a la webcamde recadrer encore mieux votre visage. Cependant il arrive que pour des raisonsde luminosite insuffisante ou meme pour des raisons toujours inexpliquees ( memeapres avoir ecrit a logitech (sic)) l’option virtual tracking bug et que la camera sedirige ailleurs que sur votre visage.

Elle ne quittera plus vos yeux. Pour la mettre d’ailleurs a bonne hauteur deceux-ci, elle est equipee d’un pied d’une vingtaine de centimetres de haut. Cepen-dant, aussi bien concu que peut etre le logiciel, les bugs ne sont pas inexisatnts,mais plutot rares. Il suffit en general lorsqu’elle cadre dans le vide de mettre samain, qu’elle prendra pour le visage, et de rapprocher la main du visage. Elle serefixera sur le visage. L’autre technique etant d’appuyer sur le bouton accueil quila reinitialisera. il est a noter qu’on peut diriger la webcam manuellment, ainsi quele zoom (jusqu’a 300%).

www.lesnumeriques.com

Logitech Quickcam Zoom

Seulement voila, il n’y a aucune indication de la facon dont fonctionne cesysteme, et je voudrais bien savoir si ma webcam fonctionne normalement ou pas.Dans mon cas, elle se contente de zoomer sur une partie de mon visage quand ilse deplace legerement. Et le resultat c’est que ca sert a rien ! Est ce que norma-lement, la webcam suit vraiment votre visage de gauche a droite, comme si elletournait sur elle-meme pour recadrer votre visage. Dans mon cas, le cadrage nebouge pas du tout et la webcam se contente de se balader dans ce cadre fixe, dua sa position. Si je fais expres de me mettre completement a droite ou a gauche, amoitie hors cadre, rien ne se passe. Finalement ca a l’air de fonctionner mais c’estpas tres au point. Ca zoome a tout va, sur ma main, sur mon front, ca revient, carepart, ca saccade...ca suit mais ca zoome trop lol, c’est le bordel. Enfin je croissurtout que c’est pas a quoi je m’attendais vraiment, donc je crois que c’est aussiune petite deception. Mais bon, une webcam reste un gadget donc faut pas troplui en demander.

Le face tracking marche comme promis, moins reactif et avec moins d’amplitudeque sur une Logitech sphere, mais aussi beaucoup moins cher. Ceci dit vu l’apercuque j’en ai avec ma QuickCam Pro4000, je sais que je n’acheterais JAMAIS une”sphere” d’une part parceque rien que d’avoir mis 69 euros dans une webcam(99 a la Fnac ! ...) des jours je me sens c.. (perfectionnisme quand tu nous tiens)mais JAMAIS je ne mettrais plus dans une autre. D’autant que le fameux facetracking est TReS agacant, sa marche, sa fait des ”effets cinema” assez aleatoires...a desactiver donc.

Page 316: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

282 ANNEXE

www.monde-diplomatique.fr

Nouvelles techniques de fichage et de controle : Qui a peur de Big Bro-ther ? Selon la Commission nationale de l’informatique et des libertes, de 22 % a37 % des informations du fichier informatise des infractions constatees de la policefrancaise sont erronees. Neanmoins, un vote du Senat, le 15 juillet, a permis l’as-souplissement des lois de controle des fichiers d’Etat ! Parce qu’elles se presententsous la forme de « mesures indolores », les citoyens ont tendance a accepter lestechniques de « flicage » comme des formalites inevitables. Est-ce raisonnable ?Par Denis DuclosSociologue, directeur de recherches au CNRSJuillet 2004

La ville de Boston, foyer de recherches poussees en videosurveillance, a mis unretentissant coup d’arret a cette politique. Son aeroport (ou avaient embarque dixdes dix-neuf terroristes du 11 septembre 2001) vient de stopper net une experienced’identification par camera : une quarantaine de volontaires n’ont ete reconnus quedans 60 % des cas. Quelque temps auparavant, la police de Tampa (Floride) avaitabandonne une experience comparable. Devant le foisonnement des erreurs (ar-restation d’innocents, non-perception de vrais actes agressifs, non-reconnaissancede visages « fiches »), d’autres systemes ont ainsi ete abandonnes depuis plusieursannees. Comme le dit un responsable d’une association americaine de droits civils :« Il se peut que le concept soit errone et que l’identification faciale ne soit que laversion XXIe siecle du detecteur de mensonges, connu pour sa non-fiabilite, bienque certains de ses defenseurs proclament depuis des decennies qu’il fonctionneraun jour. »

De fait, les parametres de distinction d’un visage (lignes superieures des orbites,zones autour des pommettes, cotes de la bouche, emplacement du nez et des yeux)ne se ramenent pas a des criteres fixes. L’ensemble des traits significatifs sont tropnombreux. Ils changent (avec l’age, les expressions) et peuvent etre modifies. Demultiples parametres font obstacle a un « rendement » acceptable. Probablementde facon insurmontable, meme dans le cas de cobayes consentants. Cela n’empechepas des centaines de municipalites de continuer a acquerir ces couteux dispositifs.

L’efficacite semble resider dans la peur que la menace de ”detection” cree dansle public. Ainsi du systeme ”Basel”, installe par les autorites israeliennes sur uneroute de Gaza : il combine deux technologies incertaines -la geometrisation dela main et celle du visage- pour controler par camera et carte a puce 30 000Palestiniens se rendant chaque jour a leur travail. Car plus est grand le nombred’individus consideres comme suspects, et moins la reconnaissance d’une personneprecise devient possible !

Pour empecher les clients de preter leur carte saisonniere a des amis, le groupe

Page 317: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

ANNEXE 283

Walt Disney cherche egalement a controler les titulaires par la geometrie de deuxdoigts. Cette technologie etant encore moins fiable que celle de la numerisationde la main entiere, il est evident que l’entreprise recherche un effet dissuasif etpreventif non lie a des resultats reels.

Encore plus evident est le propos de la theorie (delirante) du neurologue americainLarry Farwell (coqueluche du FBI et de la CIA), selon laquelle on pourrait desormaisreconnaıtre l’intention d’une personne en lisant les images issues d’un scanning deson activite cerebrale (brain fingerprinting).

On objectera qu’il existe des systemes eprouves, comme les empreintes digi-tales. Mais les specialistes savent bien (ils se gardent de le dire trop haut) qu’ilsne sont pas infaillibles. Pour ne citer que quelques cas, les populations vieillis-santes, certains groupes asiatiques ou encore les travailleurs manuels ne peuventetre correctement « fiches » par ces empreintes. La surveillance ? Un metier !

(. . .)

Ainsi des controles dits ”biometriques”, qui combinent les empreintes digitalesclassiques et l’identification de divers traits (fond de l’oeil, formes de la main). Leuractuelle progression est liee a leur acceptation par le public. Tel le programmeInspass (Immigration and Naturalization Service Passenger Accelerated ServiceSystem), qui permet a des « voyageurs frequents » de ne pas montrer de pieced’identite entre les aeroports internationaux de Los Angeles, Miami, Newark, NewJersey, New York, Washington, Toronto et Vancouver. Ils recoivent une carte oula geometrie de leur main a ete codee et qui sera scannee aux points de controle.Plus de 50 000 personnes sont ainsi identifiees volontairement.

Ce caractere volontaire est une condition du bon fonctionnement technique.Selon un bureau d’expertise specialisee : « Les technologies de scanning facial sontpresque entierement incapables d’identifier des sujets non cooperateurs. » Mais,pour des gens accoutumes a passer les peages d’autoroute par telepaiement etpour les enfants habitues aux jeux video ou l’on ouvre les portes des couloirs endeclenchant des boıtiers de controle virtuel, l’idee que la verification d’identiten’est pas un simple « point de ralentissement », mais un rapport politique d’assu-jettissement ne les effleure pas necessairement.

(. . .)

Page 318: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

284 ANNEXE

Page 319: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

Bibliographie

[Ahl99] J. Ahlberg. Extraction and Coding of Face Model Parameters. PhDthesis, Licentiate Thesis No. 747, Dept. of Electrical Engineering,Linkoping University, Sweden, 1999.

[Ahl02] J. Ahlberg. An active model for facial feature tracking. EURASIPJournal on Applied Signal Processing, 2002(6) :566–571, 2002.

[Ahu96] N. Ahuja. A transform for multiscale image segmentation by inte-grated edge and region detection. IEEE Transactions on PatternAnalysis and Machine Intelligence, 18 :1211–1235, 1996.

[Bal81] D.H. Ballard. Generalizing the hough transform to detect arbitraryshapes. Pattern Recognition, 13 :111–122, 1981.

[BH89] P. Baldi and K. Hornik. Neural networks and principal componentanalysis : Learning from examples without local minima. NeuralNetworks, 2(1) :53–58, 1989.

[Bie86] I. Biederman. Human image understanding : recent research and atheory. In Papers from the second workshop Vol. 13 on Human andMachine Vision II, pages 13–57, 1986.

[Bir98] S. Birchfield. Elliptical head tracking using intensity gradients andcolor histograms. In Proceedings of the IEEE Conference on Com-puter Vision and Pattern Recognition, pages 232–237, 1998.

[BKP05] G. Bradski, A. Kaehler, and V. Pisarevsky. Learning-based com-puter vision with Intel’s open source computer vision library. IntelTechnology Journal, 9(2) :119–130, May 2005.

[Blo03] I. Bloch. Traitement d’images. In B. Bouchon-Meunier and C. Mar-sala, editors, Traitement de donnees complexes et commande en lo-gique floue, chapter 3, pages 95–152. Hermes, Paris, France, 2003.

[BM00] J. Brand and J.S. Mason. A comparative assessment of three ap-proaches to pixel-level human skin-detection. In Proceedings of the15th International Conference on Pattern Recognition, volume 1,pages 5056–5059, 2000.

Page 320: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

286 BIBLIOGRAPHIE

[BM01] J. Brand and J. S. Mason. Skin probability map and its use in facedetection. In Proceedings of the IEEE International Conference onImage Processing, volume 1, pages 1034–1037, 2001.

[BM06] R. Belaroussi and M. Milgram. Face tracking and facial features de-tection with a webcam. In Proceedings of the 3rd European Confe-rence on Visual Media Production (a paraıtre), 2006. Presente endemonstration a European Conference on Computer Vision.

[BMC05] E. Bichot, L. Mascarilla, and P. Courtellemont. Segmentation paranalyse du mouvement pour guider le filtrage particulaire. ORASISCongres Francophone en Vision par Ordinateur, 2005.

[BPM05a] R. Belaroussi, L. Prevost, and M. Milgram. Classifier combinationfor face localization in color images. In Proceedings of the 13th Inter-national Conference on Image Analysis and Processing, pages 1043–1050, 2005.

[BPM05b] R. Belaroussi, L. Prevost, and M. Milgram. Combining model-basedclassifiers for face localization. In Proceedings of the Ninth IAPRConference on Machine Vision Applications, pages 290–293, 2005.

[BPM06a] R. Belaroussi, L. Prevost, and M. Milgram. Algorithm fusion for facelocalization. Journal of Advances in Information Fusion, 1(1) :27–38, 2006.

[BPM06b] R. Belaroussi, L. Prevost, and M. Milgram. Comparison of differentcombination strategies for face localization. In Proceedings of In-ternational Conference on Image Processing, Computer Vision, andPattern Recognition, pages 414–420, 2006.

[Bra98] G.R. Bradski. Computer vision face tracking for use in a perceptualuser interface. Intel Technology Journal, Q2 :15, 1998.

[BTS90] D. Ben-Tzvi and M.B. Sandler. A combinatorial hough transform.Pattern Recognition Letters, 11(3) :167–174, 1990.

[Cam] Microsoft Research Cambridge. re-search.microsoft.com/vision/cambridge/i2i/dsweb.htm. i2i :3D Visual Communication.

[CB97] J.L. Crowley and F. Berard. Multi-modal tracking of faces for vi-deo communications. In IEEE Conference on Computer Vision andPattern Recognition, pages 640—645, 1997.

[CET01] T.F. Cootes, G.J. Edwards, and C.J. Taylor. Active appearancemodels. IEEE Transactions on Pattern Analysis and Machine In-telligence, 23(6) :681–685, 2001.

[CFT+96] M. Collobert, R. Feraud, G. Le Tourneur, O. Bernier, J. E. Viallet,Y. Mahieux, and D. Collobert. Listen : A system for locating and

Page 321: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

BIBLIOGRAPHIE 287

tracking individual speakers. Proceedings of the Second IEEE In-ternational Conference on Automatic Face and Gesture Recognition,00 :283, 1996.

[CG99] J. Cai and A. Goshtasby. Detecting human faces in color images.Image Vision Computing, 18 :63–75, 1999.

[Che95] Y. Cheng. Mean shift, mode seeking, and clustering. IEEE Transac-tions on Pattern Analysis and Machine Intelligence, 17(17), 1995.

[CM97] D. Comaniciu and P. Meer. Analysis of feature spaces : Color imagesegmentation. In Proceedings of the IEEE Conference on ComputerVision and Pattern Recognition, pages 750–755, 1997.

[CM02] D. Comaniciu and P. Meer. Mean shift : A robust approach towardfeature space analysis. IEEE Transactions on Pattern Analysis andMachine Intelligence, 24(5) :603–619, May 2002.

[CN99] D. Chai and K.N. Ngan. Face segmentation using skin-color map invideophone applications. IEEE Transactions on Circuits and Sys-tems for Video Technology, 9(4) :551, June 1999.

[CRL05] P. Campadelli, R.Lanzarotti, and G. Lipori. Face localization incolor images with complex background. In Proceedings of the IEEEInternational Workshop on Computer Architecture for Machine Per-ception, pages 243–248, 2005.

[CRM00] D. Comaniciu, V. Ramesh, and P. Meer. Real-time tracking of non-rigid objects using mean shift. In Proceedings of the IEEE Confe-rence on Computer Vision and Pattern Recognition, volume 1, pages142–149, 2000.

[CRM03] D. Comaniciu, V. Ramesh, and P. Meer. Kernel-based object tra-cking. IEEE Transactions on Pattern Analysis and Machine Intel-ligence, 22(5) :564–577, May 2003.

[DC93] D. DeMers and G.W. Cottrell. Non-linear dimensionality reduction.In Advances in Neural Information Processing Systems 5, pages 580–587, 1993.

[DD04] F. Dornaika and F. Davoine. Online appearance-based face and facialfeature tracking. In Proceedings of the 17th International Conferenceon Pattern Recognition, volume 3, pages 814–817, 2004.

[DD05] F. Dornaika and F. Davoine. Simultaneous facial action tracking andexpression recognition using a particle filter. In Proceedings of theTenth IEEE International Conference on Computer Vision, pages1733–1738, 2005.

[DH72] R.O. Duda and P.E. Hart. Use of the hough transformation to detectlines and curves in pictures. In Communications of the Associationfor Computing Machinery, volume 15, pages 11–15, 1972.

Page 322: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

288 BIBLIOGRAPHIE

[DHS00] R.O. Duda, P.E. Hart, and D.G. Stork. Pattern Classification (2ndEdition). Wiley-Interscience, 2000.

[DSS93] H. Drucker, R. Schapire, and P. Simard. Boosting performance inneural networks. International Journal of Pattern Recognition andArtificial Intelligence, 7(4) :705–719, 1993.

[EF77] P. Ekman and W.E. Friesen. Facial Action Coding System. Consul-ting Pychologist Press, 1977.

[FBVC01] R. Feraud, O.J. Bernier, J-E. Viallet, and M. Collobert. A fast andaccurate face detector based on neural networks. IEEE Transactionson Pattern Analalysis and Machine Intelligence, 23(1) :42–53, 2001.

[FFB96] M. M. Fleck, D. A. Forsyth, and C. Bregler. Finding naked people.In Proceedings of the 4th European Conference on Computer Vision,volume 2, pages 593–602, 1996.

[FH75] K. Fukunaga and L.D. Hostetler. The estimation of the gradientof a density function. IEEE Transactions on Information Theory,21 :32–40, 1975.

[FHT98] J. Friedman, T. Hastie, and R. Tibshirani. Additive logistic regres-sion : a statistical view of boosting. Technical report, Departementof Statistics, Stanford University., 1998.

[FK02] B. Froba and C. Kublbeck. Robust face detection at video framerate based on edge orientation features. Proceedings of the SecondIEEE International Conference on Automatic Face and Gesture Re-cognition, 00 :327–332, 2002.

[For88] D.A. Forsyth. A novel approach to colour constancy. In Proceedingsof the Second IEEE International Conference on Computer Vision,pages 9–18, 1988.

[FPF99] A. W. Fitzgibbon, M. Pilu, and R. B. Fisher. Direct least-squaresfitting of ellipses. IEEE Transactions on Pattern Analysis and Ma-chine Intelligence, 21(5) :476–480, May 1999.

[FR98] A. Ford and A. Roberts. Colour space conver-sions, http ://www.poynton.com/pdfs/coloureq.pdf.http ://www.poynton.com/PDFs/coloureq.pdf, 1998.

[FS96] Y. Freund and R. E. Schapire. Experiments with a new boostingalgorithm. In International Conference on Machine Learning, pages148–156, 1996.

[FvDFH96] James D. Foley, Andries van Dam, Steven K. Feiner, and John F.Hughes. Computer graphics (2nd ed. in C) : principles and practice.Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA,1996.

Page 323: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

BIBLIOGRAPHIE 289

[FZ01] B. Froba and W. Zink. On the combination of different templatematching strategies for fast face detection. In Multiple ClassifierSystems, pages 418–428, 2001.

[GBC02] V. Girondel, L. Bonnaud, and A. Caplier. Hands detection andtracking for interactive multimedia applications. In Proceedings ofInternational Conference on Computer Vision and Graphics, pages282–287, Zakopane, Poland, 2002.

[GBC03] V. Girondel, L. Bonnaud, and A. Caplier. Hands detection and tra-cking for interactive multimedia applications. Archives of Theoreticaland Applied Informatics, 2003.

[GCB06] V. Girondel, A. Caplier, and L. Bonnaud. A human body analysissystem. European Journal on Applied Signal Processing - EURASIP-JASP, 18 pages, to appear, 2006.

[GD04] C. Garcia and M. Delakis. Convolutional face finder : A neuralarchitecture for fast and robust face detection. IEEE Transactionon Pattern Analysis and Machine Intelligence, 26(11) :1408–1423,2004.

[GROBH05] J.J. Gracia-Roche, C. Orrite, E. Bernues, and J.E. Herrero. Colordistribution tracking for facial analysis. In Proceedings of the SecondIberian Conference Pattern Recognition and Image Analysis, pages484–491, 2005.

[GT99] C. Garcia and G. Tziritas. Face detection using quantized skin colourregions merging and wavelet packet analysis. IEEE Transactions onMultimedia, 1(3) :264–277, September 1999.

[GW02] R.C. Gonzalez and R.E. Woods. Digital image processing. Secondedition, 2002.

[HD05] Soumya Hamlaoui and Franck Davoine. Facial action tracking usingparticle filters and active appearance models. In sOc-EUSAI ’05 :Proceedings of the 2005 joint conference on Smart objects and am-bient intelligence, pages 165–169, 2005.

[Heb77] D. Hebb. The organization of behavior : A neuropsychological theory.John Wiley & Sons, New York, 1977.

[HKK+05] M. Hamouz, J. Kittler, J.-K. Kamarainen, P. Paalanen, H. Kalviai-nen, and J. Matas. Feature-based affine-invariant localization offaces. IEEE Transactions on Pattern Analysis and Machine Intelli-gence, 27(9) :1490–1495, 2005.

[HL01] E. Hjelmas and B.K. Low. Face detection : A survey computer.Computer Vision and Image Understanding, 83(3) :236–274, 2001.

[HMJ02] R-L. Hsu, M.A. Mottaleb, and A.K. Jain. Face detection in colorimages. IEEE Transactions on Pattern Analysis Machine Intelli-gence, 24(5) :696–706, 2002.

Page 324: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

290 BIBLIOGRAPHIE

[Hop82] J.J. Hopfield. Neural networks and physical systems with emergentcollective computational abilities. In Proceedings of the NationalAcademy of Sciences, volume 79, pages 2554–2558, 1982.

[Hou62] P.V.C. Hough. Methods and means for recognizing complex pattens.U.S. Patent 3 069 654, December 1962.

[HPM02] A. Hadid, M. Pietikainen, and B. Martinkauppi. Color-based facedetection using skin locus model and hierarchical filtering. In Pro-ceeding of the 14th International Conference on Pattern Recognition,pages 196–200, 2002.

[HS06] L.-L. Huang and A. Shimizu. A multi-expert approach for robustface detection. Pattern Recognition, 39(9) :1695–1703, 2006.

[HSK04] L.-L. Huang, A. Shimizu, and H. Kobatake. Classification-based facedetection using gabor filter features. Proceeding of the 6th IEEE In-ternational Conference on Automatic Face and Gesture Recognition,00 :397–402, 2004.

[HSK05] L-L. Huang, A. Shimizu, and H. Kobatake. Robust face detectionusing gabor filter features. Pattern Recognition Letters, 26(11) :1641–1649, 2005.

[HWSK04] M. Hu, S. Worrall, A.H. Sadka, and A. M. Kondoz. Automaticscalable face model design for 2d model-based video coding. SignalProcessing : Image Communication, 19(5) :421–436, May 2004.

[JJ91] R.A. Jacobs and M.I. Jordan. A competitive modular connexionistarchitecture. In Neural Information Processing Systems, volume 3,1991.

[JKF01] O. Jesorsky, K.J. Kirchberg, and R. Frischholz. Robust face detec-tion using the hausdorff distance. In Proceedings of the Third Inter-national Conference on Audio- and Video-Based Biometric PersonAuthentication, pages 90–95, 2001.

[JR99] M.J. Jones and J.M. Rehg. Statistical color models with applicationto skin detection. In CVPR, volume 1, pages 1274–1280, 1999.

[JR02a] M. J. Jones and J. M. Rehg. Statistical color models with applica-tion to skin detection. International Journal of Computer Vision,46(1) :81–96, 2002.

[JR02b] Michael J. Jones and James M. Rehg. Statistical color models withapplication to skin detection. International Journal of ComputerVision, 46(1) :81–96, 2002.

[JSR05] A. Jacquot, P. Sturm, and O. Ruch. Suivi adaptatif d’objets nonrigides base sur des histogrammes de couleur et une selection au-tomatique des parametres. In ORASIS Congres Francophone enVision par Ordinateur, 2005.

Page 325: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

BIBLIOGRAPHIE 291

[JV03] M. Jones and P. Viola. Fast multi-view face detection. Technicalreport, Mitsubishi Electric Research Laboratories., 2003. Presenteen demonstration a Computer Vision and Pattern Recognition.

[JW75] D. Judd and G. Wyszecki. Color in Business, Science, and Industry.John Wiley and Sons, 1975.

[KBS75] C. Kimme, D. Ballard, and J. Sklansky. Finding circles by an arrayof accumulators. Communications of the Association for ComputingMachinery, 18(2) :120–122, 1975.

[KCB+05] V. Kolmogorov, A. Criminisi, A. Blake, G. Cross, and C. Rother.Bi-layer segmentation of binocular stereo video. In Proceedings ofthe IEEE Conference on Computer Vision and Pattern Recognition,volume 2, pages 407–414, 2005.

[KEB91] N. Kiryati, Y. Eldar, and A.M. Bruckstein. A probabilistic houghtransform. Pattern Recognition, 24 :303–316, 1991.

[KHXO95] H. Kalviainen, P. Hirvonen, L. Xu, and E. Oja. Probabilisticand non-probabilistic hough transforms : overview and comparisons.Image and Vision Computing, 13(4) :239–252, 1995.

[KKK05] J-B. Kim, S-C. Kee, and J-Y. Kim. Fast detection of multi-view faceand eye based on cascaded classifier. In Proceedings of the NinthIAPR Conference on Machine Vision Applications, pages 116–119,2005.

[Kra91] M.A. Kramer. Nonlinear prinipal component analysis using autoas-sociative neural networks. AIChE journal, 37(2) :233–243, 1991.

[Lac00] L. Lacassagne. Detection de mouvement et suivi d’objets en tempsreel. PhD thesis, Universite Pierre et Marie Curie, Paris, France,2000.

[LBCS03] C. Leignel, O. Bernier, D. Collobert, and R. Seguier. Transformeede hough elliptique floue rapide. In COmpression et REpresentationdes Signaux Audiovisuels, 2003.

[LeC85] Y. LeCun. Une procedure d’apprentissage pour reseau a seuil asym-metrique (a learning scheme for asymmetric threshold networks). InProceedings of Cognitiva 85, pages 599–604, Paris, France, 1985.

[LeC87] Y. LeCun. Modeles Connexionistes de l’Apprentissage. PhD thesis,Universite Pierre et Marie Curie, Paris, France, 1987.

[LeG03] F. LeGland. Filtrage particulaire. In Actes du 19eme ColloqueGRETSI sur le Traitement du Signal et des Images, volume II, pages1–8, 2003.

[LGG00] Y. Li, A. Goshtasby, and O. Garcia. Detecting and tracking humanfaces in videos. In Proceedings of the 15th International Conferenceon Pattern Recognition, volume 1, pages 807–810, 2000.

Page 326: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

292 BIBLIOGRAPHIE

[Liu03] C. Liu. A bayesian discriminating features method for face detection.IEEE Transaction on Pattern Analysis and Machine Intelligence,25(6) :725–740, 2003.

[LKP02] R. Lienhart, A. Kuranov, and V. Pisarevsky. Empirical analysis ofdetection cascades of boosted classifiers for rapid object detection.Technical report, Microprocessor Research Lab, Intel Labs, 2002.

[LLK03] R. Lienhart, L. Liang, and A. Kuranov. A detector tree of boos-ted classifiers for real-time object detection and tracking. In IEEEInternational Conference on Multimedia & Expo, 2003.

[LM02] R. Lienhart and J. Maydt. An extended set of haar-like featuresfor rapid object detection. In Proceedings of the IEEE InternationalConference on Image Processing, pages 900–903, 2002.

[LZ04] S. Z. Li and Z. Zhang. Floatboost learning and statistical face de-tection. IEEE Transaction on Pattern Analysis and Machine Intel-ligence, 26(9) :1112–1123, 2004.

[LZZ+02] S.Z. Li, L. Zhu, Z. Zhang, A. Blake, H. Zhang, and H. Shum. Statis-tical learning of multi-view face detection. In Proceedings of the 7thEuropean Conference on Computer Vision, volume 4, pages 67–81,2002.

[MA99] E. H. Mamdani and S. Assilian. An experiment in linguistic synthe-sis with a fuzzy logic controller. International Journal of Human-Computer Studies, 51(2) :135–147, 1999.

[Mai85] H. Maitre. Un panorama de la transformation de Hough. Traitementdu Signal, 2(4) :305–317, 1985.

[Mal89] S. Mallat. A theory for multiresolution signal decomposition : thewavelet representation. IEEE Transactions on Pattern Analysis andMachine Intelligence, 11(7) :674–693, 1989.

[MB99] B. Menser and M. Brunig. Locating human faces in color images withcomplex background. In Proceedings of Intelligent Signal Processingand Communications Systems, pages 533–536, 1999.

[MBP05] M. Milgram, R. Belaroussi, and L. Prevost. Multi-stage combina-tion of geometric and colorimetric detectors for eyes localization. InProceedings of the 13th International Conference on Image Analysisand Processing, pages 1010–1017, 2005.

[MG96] S. J. McKenna and S. Gong. Tracking faces. In Proceedings of theSecond International Conference on Automated Face and GestureRecognition, Killington, Vermont, October 1996.

[MGC96] S. J. McKenna, S. Gong, and J.J. Collins. Face tracking and pose re-presentation. British Machine Vision Conference, 2 :755–764, 1996.

Page 327: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

BIBLIOGRAPHIE 293

[MGR98] S. J. McKenna, S. Gong, and Y. Raja. Modelling facial colour andidentity with gaussian mixtures. Pattern Recognition, 31(12) :1883–1892, 1998.

[Mil93] M. Milgram. Reconnaissance des formes, methodes numeriques etconnexionnistes. Armand Colin, 1993.

[MMKJ99] K. Messer, J. Matas, J. Kittler, and K. Jonsson. XM2VTSDB :The extended M2VTS database. In Proceedings of the Second Inter-national Conference on Audio- and Video-based Biometric PersonAuthentication, pages 72–77, 1999.

[MP43] W. McCulloch and W. Pitts. A logical calculus of the ideas immanentin nervous activity. Bulletin of Mathematical Biophysics, 7 :115–133,1943.

[MP69] M. Minsky and S. Papert. Perceptrons : an Introduction to Compu-tational Geometry. MIT Press, 1969.

[MP97] B. Moghaddam and A. Pentland. Probabilistic visual learning forobject detection. IEEE Transactions on Pattern Analysis and Ma-chine Intelligence, 19(7) :696–710, 1997.

[MPDMD05] I. Martinez-Ponte, X. Desurmont, J. Meessen, and J.-F. Delaigle.Robust human face hiding ensuring privacy. In Proceedings of the6th International Workshop on Image Analysis for Multimedia In-teractive Services, 2005.

[MRG98] S. J. McKenna, Y. Raja, and S. Gong. Object tracking using adap-tive colour mixture models. In Procedding of the Third Asian Confe-rence on Computer Vision, volume I, pages 615–622, 1998.

[MRG99] S. J. McKenna, Y. Raja, and S. Gong. Tracking colour objects usingadaptive mixture models. Image Vision Computing, 17(3-4) :225–231, 1999.

[MS91] D.H. Ballard M.J. Swain. Color indexing. International Journal ofComputer Vision, 7(1) :11–32, 1991.

[NKMG02] K. Nummiaro, E. Koller-Meier, and L. Van Gool. Object trackingwith an adaptive color-based particle filter. In In Symposium forPattern Recognition of the DAGM, pages 353 – 360, 2002.

[NKMG03] K. Nummiaro, E. Koller-Meier, and L.J. Van Gool. An adaptivecolor-based particle filter. Image and Vision Computing, 21(1) :99–110, 2003.

[OC73] F. O’Gorman and M.B. Clowes. Finding picture edges through colli-nearity of feature points. International Journal of Joint Conferenceon Artificial Intelligence, pages 543–555, 1973.

Page 328: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

294 BIBLIOGRAPHIE

[OPB97] N. Oliver, A. Pentland, and F. Berard. Lafter : Lips and face realtime tracker. In Proceedings of the IEEE Conference on ComputerVision and Pattern Recognition, volume 1, pages 123–129, 1997.

[Ope] OpenCv. Open source computer vision library : http ://source-forge.net/projects/opencvlibrary/.

[PBC02] S.L. Phung, A. Bouzerdoum, and D. Chai. A novel skin color modelin ycbcr color space and its application to human face detection. InProceedings of the IEEE International Conference on Image Proces-sing, volume 1, pages 289–292, 2002.

[PBC05] S.L. Phung, A. Bouzerdoum, and D. Chai. Skin segmentation usingcolor pixel classification : Analysis and comparison. IEEE Transac-tions on Pattern Analysis and Machine Intelligence, 27(1) :148–154,2005.

[PHVG02] P. Perez, C. Hue, J. Vermaak, and M. Gangnet. Suivi adaptatifd’objets non rigides base sur des histogrammes de couleur et uneselection automatique des parametres. In Proceedings of 7th Eu-ropean Conference on Computer Vision, volume I, pages 661–675,2002.

[PM98] L. Prevost and M. Milgram. Automatic allograph selection and mul-tiple expert classification for totally unconstrained handwritten cha-racter recognition. In Proceedings of the 14th International Confe-rence on Pattern Recognition, volume I, pages 381–383, 1998.

[PNK94] P. Pudil, J. Novovicova, and J. Kittler. Floating search methodsin feature selection. Pattern Recognition Letters, 15(11) :1119–1125,1994.

[Pos87] J.G. Postaire. De l’image a la decision : analyse des imagesnumeriques et theorie de la decision. Dunod, 1987.

[Pre98] L. Prevost. Reconnaissance de l’ecrit dynamique : application al’analyse des expressions mathematiques. PhD thesis, UniversitePierre et Marie Curie, Paris, France, 1998.

[RBK98a] H. A. Rowley, S. Baluja, and T. Kanade. Neural network-based facedetection. IEEE Transactions on Pattern Analysis and MachineIntelligence, 20(1) :23–38, 1998.

[RBK98b] H. A. Rowley, S. Baluja, and T. Kanade. Rotation invariant neuralnetwork-based face detection. In Proceedings of the IEEE Conferenceon Computer Vision and Pattern Recognition, volume 1, pages 38–44, 1998.

[RC86] D.E. Rumelhart and J.L. Mc Clelland. Parallel Distributed Proces-sing : Exploration in the MicroStructure of Cognition., volume I-II.MIT Press, 1986.

Page 329: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

BIBLIOGRAPHIE 295

[RCBM06] Y. Rodriguez, F. Cardinaux, S. Bengio, and J. Mariethoz. Measu-ring the performance of face localization systems. Image and VisionComputing, 24(8) :882–893, 2006.

[RMG98] Y. Raja, S. J. McKenna, and S. Gong. Tracking and segmentingpeople in varying lighting conditions using colour. In IEEE Inter-national of the Third Conference on Automatic Face and GestureRecognition, pages 228–233, 1998.

[Ros58] F. Rosenblatt. The perceptron : probabilistic model for informationstorage and organization in the brain. Psychological Review, 65 :386–408, 1958.

[Ros69] A. Rosenfeld. Picture Processing by Computer. Academic Press,1969.

[RYA00] D.R. Roth, M.H. Yang, and N. Ahuja. A SNoW-based face detector.In Neural Information Processing Systems, volume 12, 2000.

[SAG99] M. Storring, H. J. Andersen, and E. Granum. Skin colour detectionunder changing lighting conditions. In 7th International Symposiumon Intelligent Robotic Systems, pages 187–195, 1999.

[San89] T.D. Sanger. Optimal unsupervised learning in a single-layer linearfeedforward neural network. Neural Networks, 2(6) :459–473, 1989.

[SB90] M. Swain and D. Ballard. Indexing via colour histograms. In Pro-ceedings of the Third IEEE International Conference on ComputerVision, pages 390–393, 1990.

[SB98] R. Schumeyer and K. Barner. Color-based classifier for region identi-fication in video. In Proceedings of the SPIE Visual CommunicationsImage Processing, volume 3309, pages 189–200, 1998.

[SC00] K. Schwerdt and J. L. Crowley. Robust face tracking using color.In Proceedings of the Fourth IEEE International Conference on Au-tomatic Face and Gesture Recognition, page 90, Washington, DC,USA, 2000. IEEE Computer Society.

[Sch96] H. Schwenk. Amelioration des classifieurs neuronaux par incorpora-tion de connaissances explicites : Application a la reconnaissance decaracteres manuscrits. PhD thesis, Universite Pierre et Marie Curie,Paris, France, 1996.

[SCT02] M. C. Shin, K. I. Chang, and L. V. Tsap. Does colorspace transfor-mation make any difference on skin detection ? In IEEE WorkshopApplications of Computer Vision, pages 275–279, 2002.

[Seg04a] R. Seguier. Detection de visage adaptative. In COmpression etREpresentation des Signaux Audiovisuels, 2004.

Page 330: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

296 BIBLIOGRAPHIE

[Seg04b] R. Seguier. A very fast adaptive face detection system. In Interna-tional Conference on Visualization, Imaging, and Image Processing,2004.

[SF96] D. M. Saxe and R. A. Foulds. Toward robust skin identificationin video images. In Proceedings of the Second IEEE InternationalConference on Automatic Face and Gesture Recognition, pages 379–384, 1996.

[SGL95] R. Seguier, A. Le Glaunec, and B. Loriferne. Human faces detectionand tracking in video sequence. In Proceedings of 7th PortugueseConference on Pattern Recognition, 1995.

[SHML00] M. Soriano, S. Huovinen, B. Martinkauppi, and M. Laaksonen. Skindetection in video under changing illumination conditions. In Pro-ceeding of the 15th International Conference on Pattern Recognition,pages 839–842, 2000.

[SK87] L. Sirovitch and M. Kirby. Low-dimensional procedure for the cha-racterization of human faces. Journal of Optical Society of America,4(3) :519–524, 1987.

[SK98] H. Schneiderman and T. Kanade. Probabilistic modeling of localapperance and spatial relationship for object recognition. In Pro-ceedings of the IEEE Conference on Computer Vision and PatternRecognition, volume 1, pages 45–51, 1998.

[SK00] H. Schneiderman and T. Kanade. A statistical model for 3d objectdetection applied to faces and cars. In Proceedings of the IEEEConference on Computer Vision and Pattern Recognition, volume 1,pages 746–751, 2000.

[SL05] J. Song and M.R. Lyu. A hough transform based line recognitionmethod utilizing both parameter space and image space. PatternRecognition, 38(4) :539–552, April 2005.

[sldd03] I. Bloch (sous la direction de). Fusion d’informations en traitementdu signal et des images. Hermes, Paris, France, 2003.

[SMHL03] M. Soriano, B. Martinkauppi, S. Huovinen, and M. Laaksonen.Adaptive skin color modeling using the skin locus for selecting trai-ning pixels. Pattern Recognition, 36(3) :681–690, 2003.

[Smi78] A. R. Smith. Color gamut transform pairs. SIGGRAPH ComputerGraphics, 12(3) :12–19, 1978.

[SP96a] K. Sobottka and I. Pitas. Extraction of facial regions and featuresusing color and shape information. In Proceedings of the 13th Inter-national Conference on Pattern Recognition, volume 3, 1996.

[SP96b] K. Sobottka and I. Pitas. Looking for faces and facial featuresin color images. In Pattern Recognition and Image Analysis : Ad-

Page 331: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

BIBLIOGRAPHIE 297

vances in Mathematical Theory and Applications, Russian Academyof Sciences., 1996.

[SP98a] K. Sobottka and I. Pitas. A novel method for automatic face seg-mentation, facial feature extraction and tracking. Signal Processing :Image Communication, 12(3) :263–281, 1998.

[SP98b] K-K. Sung and T. Poggio. Example-based learning for view-basedhuman face detection. IEEE Transactions on Pattern Analysis andMachine Intelligence, 20(1) :39–51, 1998.

[SSA04] L. Sigal, S. Sclaroff, and V. Athitsos. Skin color-based video seg-mentation under time-varying illumination. IEEE Transactions onPattern Analysis and Machine Intelligence, 26(7) :862–877, 2004.

[ST98] E. Saber and A. Tekalp. Frontal-view face detection and facial fea-ture extraction using color, shape and symmetry based cost func-tions. Pattern Recognition Letters, 19(8) :669–680, 1998.

[TFAS00] J.-C. Terrillon, H. Fukamachi, S. Akamatsu, and M. N. Shirazi. Com-parative performance of different skin chrominance models and chro-minance spaces for the automatic detection of human faces in colorimages. In Proceeding of the 4th IEEE International Conference onAutomatic Face and Gesture Recognition, pages 54–63, 2000.

[TP91a] M. Turk and A. Pentland. Eigenfaces for recognition. Journal ofCognitive Neuroscience, 3(1) :71–86, 1991.

[TP91b] M. Turk and A. Pentland. Face recognition using eigenfaces. In Pro-ceedings of the IEEE Conference on Computer Vision and PatternRecognition, pages 586–591, 1991.

[Tra91] D. Travis. Effective colour displays : theory and practice. AcademicPress, London, 1991.

[VJ01] P. Viola and M. Jones. Rapid object detection using a boostedcascade of simple features. In Proceedings of the IEEE Conferenceon Computer Vision and Pattern Recognition, volume 1, pages 511–518, 2001.

[VMB01] L. Valet, G. Mauris, and P. Bolon. A statistical overview of recentliterature in information fusion. IEEE Magazine on Aeronautics andElectronic Systems, 16(3) :7–14, 2001.

[VML94] R. Vaillant, C. Monrocq, and Y. LeCun. Original approach for thelocalisation of objects in images. In IEE Proceedings on Vision,Image, and Signal Processing, volume 141, pages 245–250, 1994.

[VMP03] N. Vandenbroucke, L. Macaire, and J.G. Postaire. Color image seg-mentation by pixel classification in an adapted hybrid color space.application to soccer image analysis. Computer Vision and ImageUnderstanding, 90(2) :190–216, 2003.

Page 332: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

298 BIBLIOGRAPHIE

[VSA03] V. Vezhnevets, V. Sazonov, and A. Andreeva. A survey on pixel-based skin color detection techniques. In Proceedings of Graphicon-2003, Moscow, Russia, pages 85–92, 2003.

[VSC99] W. Vieux, K. Schwerdt, and J. Crowley. Face tracking and coding forvideo compression. In Proceedings of the First International Confe-rence on Computer Vision Systems, pages 151–160, 1999.

[WAHL04] B. Wu, H. Ai, C. Huang, and S. Lao. Fast rotation invariant multi-view face detection based on real adaboost. Proceedings of the SixthIEEE International Conference on Automatic Face and Gesture Re-cognition, 00 :79–84, 2004.

[Wal98] L. Wald. A european proposal for terms of reference in data fu-sion. International Archives of Photogrammetry and Remote Sen-sing., XXXII(7) :651–654, 1998.

[WB99] C. Wang and M. Brandstein. Multi-source face tracking with audioand visual data. In Proceedings of IEEE 3rd Workshop on Mul-timedia Signal Processing, pages 169–174, Copenhagen, Denmark,September 1999.

[WH60] B. Widrow and M.E. Hoff. Adaptive switching circuits. In IREWESCON Convention Record, pages 96–104, 1960.

[YA98] M-H Yang and N Ahuja. Detecting human faces in color images.In International Conference on Image Processing, volume 1, pages127–130, 1998.

[YA99] M. Yang and N. Ahuja. Gaussian mixture model for human skin colorand its application in image and video databases. In Proceedings ofthe SPIE Conference on Storage and Retrieval for Image and VideoDatabases, pages 458–466, 1999.

[Yan04] M.-H. Yang. Recent advances in face detection. Technical report,IEEE International Conference on Pattern Recognition Tutorial,2004.

[YH94] G.Z. Yang and T.S Huang. Human face detection in a complexbackground. Pattern Recognition, 27(1) :53–63, 1994.

[YKA01] M-H Yang, D. Kriegman, and N. Ahuja. Face detection using multi-modal density models. Computer Vision and Image Understanding,84(2) :264–284, 2001.

[YKA02] M.-H. Yang, D.J. Kriegman, and N. Ahuja. Detecting faces inimages : A survey. IEEE Transactions on Pattern Analysis andMachine Intelligence, 24(1) :34–58, 2002.

[YO99] T.-W. Yoo and I.-S. Oh. A fast algorithm for tracking humanfaces based on chromatic histograms. Pattern Recognition Letter,20(10) :967–978, 1999.

Page 333: Localisation du visage dans des images et séquences vidéo couleur - Thèse de doctorat Décembre 2006

BIBLIOGRAPHIE 299

[YW96] J. Yang and A. Waibel. A real-time face tracker. In Proceedings ofthe 3rd IEEE Workshop on Applications of Computer Vision, page142, Washington, DC, USA, 1996. IEEE Computer Society.

[YWW98] J. Yang, L. Weier, and A. Waibel. Skin-color modeling and adap-tation. In Proceedings of the 3 rd Asian Conference on ComputerVision, volume 2, pages 687–694, 1998.

[Zad73] L.A. Zadeh. Outline of a new approach to the analysis of complexsystems and decision process. IEEE Transactions on Systems, Manand Cybernetics, 3 :28–44, 1973.

[ZYW00] X. Zhu, J. Yang, and A. Waibel. Segmenting hands of arbitrary co-lor. In Proceedings of the Fourth IEEE International Conference onAutomatic Face and Gesture Recognition, pages 446–453, Washing-ton, DC, USA, 2000. IEEE Computer Society.