Capteur Intelligent pour la Reconnaissance de Visage

Transcription

Capteur Intelligent pour la Reconnaissance de Visage
Ecole Doctorale EDITE
Thèse présentée pour l’obtention du diplôme de
DOCTEUR DE L’INSTITUT NATIONAL DES TELECOMMUNICATIONS
Doctorat délivré conjointement par
L’Institut National des Télécommunications et l’Université Pierre et Marie Curie - Paris 6
Spécialité : Electronique/Informatique
Par
Walid Hizem
Capteur Intelligent pour la Reconnaissance de
Visage
Soutenue le
Mme Alice Caplier
M. Michel Paindavoine
M. Patrick Garda
M. Maurice Milgram
M. Yang Ni
Mme Bernadette Dorizzi
2009
2009 devant le jury composé de :
Rapporteur
Rapporteur
Examinateur
Examinateur
Examinateur
Directeur de thèse
Thèse n°
Résumé
La variation d'illumination est l'un des facteurs les plus inuent sur les performances d'un système de reconnaissance de visage spécialement dans un contexte de
mobilité où l'opérateur n'a pas le contrôle de l'éclairage. Nous présentons dans ce
travail, un nouveau capteur atténuant l'illumination ambiante ; l'image en sortie est
alors plus stable vis-à-vis aux variations de l'éclairage ambiant. Ce capteur se base sur
la réduction de temps de pose pour ne capturer qu'une faible quantité de la lumière
ambiante, et on active durant la période d'exposition un ash délivrant une lumière
en proche infrarouge. L'image de sortie est alors dépendante de l'éclairement du ash.
Une seconde caractéristique de ce capteur, est la délivrance en simultané d'une image
en proche infrarouge et d'une image normale acquise avec la lumière ambiante. En vue
d'une future implémentation de notre approche, nous avons construit une méthode de
détection de points caractéristiques sur les images proche infrarouge. Cet algorithme
repose sur des opérateurs simples qui ont été implémentés. Si on a pu construire une
méthode simple c'est bien grâce à la stabilité des images par rapport à l'illumination.
En utilisant les points caractéristiques détectés et l'image de contours, nous avons
mis en ÷uvre un algorithme de reconnaissance de visage s'inspirant de l'elastic graph
matching pour construire un modèle du visage. Les performances de notre système
sont aussi comparées avec les algorithmes de reconnaissance de visage de base. On
obtient des performances de reconnaissance équivalentes à celles de l'elastic graph
matching classique mais avec un moindre coût dans l'implémentation.
i
Abstract
Illumination variation is one of the factors that has the greatest impact on the
performance of a facial recognition system, especially in a mobility situation where the
operator cannot control lighting. In this work, we present a new sensor that reduces
ambient light ; the resulting image shows greater stability in relation to changes in
ambient light. This sensor relies on a reduction of exposure time, so as to capture
only a small quantity of ambient light, and during the exposure, a ash emitting a
near-infrared light is activated. The resulting image is therefore dependent upon the
luminance of the ash. A second characteristic of this sensor is the simultaneous production of a near-infrared image and a normal image acquired in ambient light. Besides
this new sensor, we also aimed in among this and in view of a future implementation
of our approach, we elaborated a method to detect landmarks in near-infrared images.
This algorithm is based on the use of simple operators that has been implemented.
The stability of the images in relation to the lighting changes allowed us to elaborate
a simple method.
Using the landmarks detected and the edge image, we constructed a face-recognition
algorithm, inspired by elastic graph matching, in order to build a model of the face. We
compared the performance of our system to that of basic face-recognition algorithms,
and achieved recognition levels equal to those of classic elastic graph matching.
iii
Table des matières
Table des matières
v
Table des gures
viii
Liste des tableaux
xi
1 Introduction
1
1.1
Motivations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
1.2
Reconnaissance de visage . . . . . . . . . . . . . . . . . . . . . . .
3
1.3
Objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
1.4
structure de la thèse . . . . . . . . . . . . . . . . . . . . . . . . . .
7
2 État de l'art
2.1
2.2
2.3
9
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
2.1.1
Architecture générale . . . . . . . . . . . . . . . . . . . . . . 10
2.1.2
Challenge techniques . . . . . . . . . . . . . . . . . . . . . . 12
Reconnaissance de visage en temps réel . . . . . . . . . . . . . . . . 12
2.2.1
Reconnaissance de visage par réseaux de neurones . . . . . 13
2.2.2
Reconnaissance de visage par Analyse de composante principale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.2.3
Reconnaissance par correspondance élastique de graphe . . 18
2.2.4
Comparaison des algorithmes . . . . . . . . . . . . . . . . . 21
Capteurs Intelligents . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.3.1
Variables analogiques
. . . . . . . . . . . . . . . . . . . . . 23
2.3.2
Opérateurs analogiques . . . . . . . . . . . . . . . . . . . . 23
2.3.3
Rétines CMOS . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.4
Reconnaissance de visage en Infrarouge . . . . . . . . . . . . . . . . 29
2.5
Conclusion
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
v
vi
TABLE DES MATIÈRES
3 Capture de visage temps réel
3.1
3.2
3.3
3.4
33
Introduction : Système Actuel et problèmes associés . . . . . . . . 33
3.1.1
Capteur CMOS . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.1.2
Les capteurs CCD . . . . . . . . . . . . . . . . . . . . . . . 37
Capteurs d'image dédiés . . . . . . . . . . . . . . . . . . . . . . . . 41
3.2.1
Capteur diérentiel . . . . . . . . . . . . . . . . . . . . . . . 41
3.2.2
Capteur IRVI . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Bases de donnée . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.3.1
Base BIOMET . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.3.2
Base IV2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.3.3
Base IRVI . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Conclusion
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4 Détection des points caractéristiques
55
4.1
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.2
Détection de points caractéristiques dans la littérature . . . . . . . 56
4.3
4.4
4.2.1
Méthode Adaboost . . . . . . . . . . . . . . . . . . . . . . . 56
4.2.2
Modèle de contour actif . . . . . . . . . . . . . . . . . . . . 57
4.2.3
Détection des yeux dans les images infrarouges . . . . . . . 58
Détection de zones de sélection . . . . . . . . . . . . . . . . . . . . 59
4.3.1
Image de contour . . . . . . . . . . . . . . . . . . . . . . . . 59
4.3.2
Présélection des zones du visage
. . . . . . . . . . . . . . . 61
Détection de la bouche . . . . . . . . . . . . . . . . . . . . . . . . . 62
4.4.1
Détection par morphologie mathématique . . . . . . . . . . 62
4.4.2
Détection par la transformée de Hough . . . . . . . . . . . . 64
4.5
Détection du nez . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
4.6
Détection des yeux . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
4.7
Validation sur les bases Infrarouge . . . . . . . . . . . . . . . . . . 67
4.8
4.7.1
Critère de mesure . . . . . . . . . . . . . . . . . . . . . . . . 67
4.7.2
Performances de détection . . . . . . . . . . . . . . . . . . . 68
Détection de points caractéristiques sur les images en visible . . . . 70
4.8.1
4.9
Détection de contour . . . . . . . . . . . . . . . . . . . . . . 71
Conclusion
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
5 Algorithme de Reconnaissance de Visage
5.1
5.2
Élaboration des graphes pour la reconnaissance de visage
75
. . . . . 75
5.1.1
Analyse par morphologie mathématique . . . . . . . . . . . 77
5.1.2
Analyse par les ondelettes de Gabor . . . . . . . . . . . . . 78
La comparaison élastique des graphes - EGM . . . . . . . . . . . . 78
vii
TABLE DES MATIÈRES
5.3
5.4
5.5
5.2.1 Détection des noeuds dans le EGM-CSU . . . . . . . .
5.2.2 Extraction de caractéristiques . . . . . . . . . . . . . .
5.2.3 Comparaison des graphes . . . . . . . . . . . . . . . .
5.2.4 Inuence du nombre des noeuds . . . . . . . . . . . . .
Exploitation de l'image de contour - Algorithme EGM-TMSP
5.3.1 Méthode de mise en correspondance des n÷uds . . . .
Comparaisons et Performances . . . . . . . . . . . . . . . . .
5.4.1 Algorithmes de référence . . . . . . . . . . . . . . . . .
5.4.2 Protocoles de test . . . . . . . . . . . . . . . . . . . .
5.4.3 Expériences et Performances . . . . . . . . . . . . . .
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
79
80
81
82
84
87
88
88
90
92
98
6 Conclusion et perspectives
101
Bibliographie
105
A Liste des Publications
115
B "Active dierential CMOS imaging device for human face recognition" 117
C Near infrared sensing and associated landmark detection for face
recognition
119
Table des gures
1.1
Eet de l'illumination sur les images de visage . . . . . . . . . . . . . .
3
1.2
schéma d'Identication du visage . . . . . . . . . . . . . . . . . . . . .
4
1.3
schéma de vérication du visage . . . . . . . . . . . . . . . . . . . . . .
4
1.4
Courbe ROC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
2.1
Schéma général d'un système de reconnaissance de visage . . . . . . . 10
2.2
Normalisation géométrique du visage . . . . . . . . . . . . . . . . . . . 11
2.3
Schéma global du système de Harvard (Gilbert) [21] . . . . . . . . . . 13
2.4
Composition d'un réseau de neurones . . . . . . . . . . . . . . . . . . . 14
2.5
Réseau de neurones RBF [82] . . . . . . . . . . . . . . . . . . . . . . . 15
2.6
Diérents type de graphe pour l'EGM . . . . . . . . . . . . . . . . . . 18
2.7
Architecture générale du système proposé par Nagel [49] . . . . . . . . 20
2.8
Architecture de Calcule des Jets . . . . . . . . . . . . . . . . . . . . . 21
2.9
Système de reconnaissance de visage temps réel : ux de donnée . . . . 22
2.10 a)paire diérentielle ; b) Miroir de courant [8] . . . . . . . . . . . . . . 24
2.11 Structure d'un réseau capacitif 1D à convolution Gaussienne . . . . . . 25
2.12 Structure d'un réseau capacitif 2D à convolution Gaussienne . . . . . . 26
2.13 Principe d'un photorécepteur à égalisation d'histogramme intégré . . . 28
2.14 Schéma électrique du pixel en mode logarithmique [53] . . . . . . . . . 28
2.15 Spectre électromagnétique . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.16 Sensibilité d'un capteur CCD . . . . . . . . . . . . . . . . . . . . . . . 31
3.1
Architecture générale d'un capteur CMOS . . . . . . . . . . . . . . . . 34
3.2
Structure schématique d'un pixel PPS . . . . . . . . . . . . . . . . . . 35
3.3
Structure du pixel en mode d'intégration du photocourant . . . . . . . 36
3.4
Architecture d'un pixel en mode courant . . . . . . . . . . . . . . . . . 37
viii
TABLE DES FIGURES
ix
3.5
Architecture d'un pixel logarithmique utilisant une photodiode en mode
photocourant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.6
La structure d'une capacité MOS . . . . . . . . . . . . . . . . . . . . . 38
3.7
Stockage des charges dans une capacité MOS . . . . . . . . . . . . . . 39
3.8
Puit et barrière de potentiel dans une capacité MOS . . . . . . . . . . 39
3.9
Architecture générale d'un capteur CCD . . . . . . . . . . . . . . . . . 40
3.10 Transfert de charge avec un CCD à 4 phases . . . . . . . . . . . . . . . 41
3.11 Structure d'un pixel du capteur diérentiel . . . . . . . . . . . . . . . 42
3.12 Structure du capteur diérentielle [55] . . . . . . . . . . . . . . . . . . 43
3.13 Principe de fonctionnement du capteur diérentiel . . . . . . . . . . . 44
3.14 Examples d'images acquises par le capteur diérentiel . . . . . . . . . 44
3.15 Principe de la Caméra CCD Pulsé . . . . . . . . . . . . . . . . . . . . 45
3.16 Architecture fonctionnelle du prototype à base de webcam . . . . . . . 46
3.17 Image de sortie du prototype à base de webcam . . . . . . . . . . . . . 46
3.18 Schéma du module CCD . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.19 Obturation électronique dans un capteur CCD interligne . . . . . . . . 47
3.20 Chronogramme de la réduction du temps d'exposition dans le CCD . . 48
3.21 Chronogramme d'acquisition des trames dans une CCD interligne . . . 48
3.22 Example d'image de la base BIOMET . . . . . . . . . . . . . . . . . . 49
3.23 Eet de saturation dû au port des lunettes dans la Base BIOMET . . 50
3.24 Exemple d'images de la base de donnée IV2 . . . . . . . . . . . . . . . 50
3.25 Environnement d'acquisition de la base VINSI . . . . . . . . . . . . . . 51
3.26 Exemples d'images de la base IRVI et les diérents protocoles . . . . . 52
4.1
Localisation des yeux avec la méthode proposée par Dowdall [16] . . . 58
4.2
Filtrage gaussien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
4.3
Extraction de l'image de contour - a) Filtre de détection de contours
- b) image en proche IR - c) Résultat de la convolution . . . . . . . . . 61
4.4
Sélection des régions entourant les points caractéristiques . . . . . . . 62
4.5
Les opérateurs de morphologie : a) Érosion de la gure A par l'élément
structurant S, b) Dilatation par l'élément S . . . . . . . . . . . . . . . 63
4.6
Détection de la bouche . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
4.7
Modèle du nez . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
4.8
Projection du contour du nez . . . . . . . . . . . . . . . . . . . . . . . 66
4.9
Détection des yeux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.10 Performance de détection sur la base IRVI . . . . . . . . . . . . . . . . 68
4.11 Comparaison de performance de détection de la bouche avec la transformée de Hough et la morphologie mathématique . . . . . . . . . . . 69
x
4.12
4.13
4.14
4.15
5.1
5.2
5.3
5.4
5.5
5.6
5.7
5.8
5.9
5.10
5.11
5.12
5.13
5.14
5.15
5.16
5.17
5.18
TABLE DES FIGURES
Performance de détection sur la base IV2 . . . . . . . . . . . . . . .
Performance de détection des yeux sur la base Biomet . . . . . . . .
Inuence des variations d'éclairage sur l'image de contours . . . . . .
Comparaison de performance de détection sur les images NIR et visible
dans la base IRVI . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. 70
. 71
. 72
. 73
Érosion et dilatation successives avec des éléments structurants circulaires de taille variable sur une image en NIR . . . . . . . . . . . . . . 77
Les diérentes orientations et résolutions des parties réelles des ltres
de Gabor utilisés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Représentation d'un graphe sur une image de la base BANCA . . . . . 81
Exemples d'image de la base BANCA (a) image en haute résolution
contrôlée (b) Dégradée (c) non contrôlée . . . . . . . . . . . . . . . . . 82
Variation du nombre des noeuds dans un graphe : a) 20 noeuds choisis
b) 20 noeuds aléatoirement choisis et c) 15 noeuds aléatoirement choisis 83
Courbes ROC de performance de reconnaissance selon le nombre de
noeud dans un graphe sur la base BANCA - Protocole P . . . . . . . . 84
Positionnement d'une grille sur le visage selon la position des yeux et
de la bouche a) Image de contour, (b) Image en NIR . . . . . . . . . . 86
Sélection des n÷uds dans la méthode de l'Université de Vigo [23] . . . 86
Sélection des noeuds de l'image de contour et inuence d'un changement de pose sur la sélection . . . . . . . . . . . . . . . . . . . . . . . 87
Méthode de correspondance des graphes selon les coordonnées des
noeuds dans la grille originale . . . . . . . . . . . . . . . . . . . . . . . 88
Courbe ROC de l'EGM-CSU sur la base IRVI avec le protocole TS1P1 92
Courbe ROC de l'EGM-CSU sur la base IRVI - protocole TS2PA . . . 93
Courbes ROC des algorithmes LDA, GLDA et EGM-CSU sur la base
IRVI - protocole TS1P1 images NIR . . . . . . . . . . . . . . . . . . . 94
Courbes ROC des algorithmes LDA, GLDA et EGM-CSU sur la base
IRVI - protocole TS1P1 images VI . . . . . . . . . . . . . . . . . . . . 94
Courbes ROC des algorithmes LDA, GLDA et EGM-CSU sur la base
IRVI - protocole TS2P1 (a)images NIR - (b) images VI . . . . . . . . . 95
Courbes ROC des algorithmes LDA, GLDA et EGM-CSU sur la base
IRVI - protocole TS2PA (a)images NIR - (b) images VI . . . . . . . . 99
Courbes ROC des systèmes de reconnaissance EGM-CSU et EGMTMSP avec le protocole TS1P1 . . . . . . . . . . . . . . . . . . . . . . 100
Courbes ROC des systèmes de reconnaissance EGM-CSU et EGMTMSP avec le protocole TS2PA . . . . . . . . . . . . . . . . . . . . . . 100
Liste des tableaux
2.1
2.2
2.3
Ressources consommées sur le FPGA SpartanII pour le RBF . . . . . 15
Résultats d'implémentation d'un RBF sur DSP . . . . . . . . . . . . . 16
Ressources utilisées dans [68] sur un FPGA XC2S300 . . . . . . . . . . 18
5.1
Comparaison des performances de reconnaissance en fonction du nombre
des n÷uds dans un graphe . . . . . . . . . . . . . . . . . . . . . . . . . 84
Performance en EER des diérents algorithmes de reconnaissance sur
la base IRVI et l'intervalle de conance . . . . . . . . . . . . . . . . . 97
Comparaison de performances de reconnaissance des deux algorithmes
de reconnaissances EGM sur la base IRVI et les intervalles de conance 97
5.2
5.3
xi
%,,"%&"$"%6$3'
-"($'5.$3"$
&+$5%$"!
%%$97/)0,1
%,"$!$%%'
2'4!"+%,!)8%%,-'"!"
*":
##)$"%;
"5%<"%$#!
$$%#?"6%>'("
""%$<7
$#%",6$*
5"8*$7!%,$
"5%$!%#&
%"
$#"@8%;
$!=$;
%'($;"6'A;!"
!$6%$"
"&$
"$
$"$B
%$'!
$""7"<$;$7"%$#
!"#*33
%'($!"<$6$!;
;"$$>#%%"6%$$"!;$#%#"%!;"6
$';
$6,"7A$%",
#"8%;'48
C
DST]^_àU
E
E
G
P
P
F
H
I
J
K
L
I
O
J
K
Q
R
J
I
O
M
N
X
X
W
W
V
Z
V
\
[
Y
phlaf^ihr‚_im̀fq^lvàhgir_mw_rlk^rhhv̀mfflaig_rr^kqàfp^ivlhmmm̀g|rshrlf̀w_^tr̀^oj
d^k̀gaifpl̀mrmgnxfqoƒ_ifhrj̀
bmlgi~arhfv‚ilkrr^hfw{cm_t^dwrvgf€eirg_bl^haf̀pawf}^gxqa^ykhhr|fg_lfmiàir^à^rr̀hh_}mgarciszik^ghj̀
^krr̀f^latgiipfkrlj̀
uvpal
zhlrrhkaok^pk̀_Š‡j
€_^h_v^zj
_h‚ràh^l^apkft{imk̀^€lha_tgfh^igwˆqp^pm̀alqfgvhvkk̀ir^r^ha‚wzwgxà^lfri^fsgpj̀
†i__^^tqfj
fqskj
m̀}kgij
‚
arizfhzj̀
}qigkm…j̀
l
vg̀i_^pi^rhhrqwi_fgtai…p^mmq^k̀lkl_{ihafrf_phkàqkpa^iqmr{kfhir_^_à€tgafwàhxtfil^harg
~~„k‰m̀à‡hhqralgmfosgf…pk̀j
p_
thairmkxk̀^lƒfgiaj
ploihr̀j
_ifpqk̀Žll^gagif{^hg̀il^rj
h_^fraiqhk̀mifgqaàrrà^piftl_afà‚^lr‡pztifhasik_k̀^j
r‚f^l‚vj̀
r̀r{gqf‚a€ilh^àramfkk̀p‚|^aligr‹
khgihk̀iwp^alx^ghlir^rfu
gwt^ri_kpj̀
mg_hqak‚|^gj
lx^j̀
xlqhpoŒ_aik^fvp‚_h^qlwri^_f̀tzxj
_jhaŒw™€^f”rgq•p–^k^rk̀h—vqu|zi˜rfanhg^hw^mralikj
phaj
€i^wflha^rro
irpà_j
hl^thgrvkw‚g^ilmwvpe^irbf]haw‘€^à’p̀àthbplƒava‰f^r^kmi‚“
^ƒ_ki^gqrfrzxhaàfpl^l‚bg‰rhm̀kf^iio‘gxpfàŒàprha^qargk̀f_l̀lktvr_j̀
wgipx_^_qhm̀rt‚kg̀l|gm̀hv_^iafqlrp̀g^šj
gpk̀okll̀ri^jaàhalfwv^™gj
ar`xl‹
Ž
p
izp__gg̀sarj
i
i
q
s
f
^
^
h
r
^
afpp̀hitlaàŽkrfŒihhpr_l|a^f̀m̀rtll̀gqikar^pq_h^k̀{g‚ir_hammwfg^^lršgotj
a
w
a
m
à
j
m̀
g
a
‡
l
š
š
…
€
_
_
_
t
p
‘
i
i
i
q
f
f
^
r
h
k̀
h
j
a
‚
m
g
a
j
w
a
l
x
p
p
i
i
f
f
f
f
^
h
^
^
h
k
r
à
j
a
m
g
à
a
g
g
‚
à
l
l
l
x
_
_
t
p
i
q
›
ˆ
f
`
h
^
r
^
^
^
j̀
a
g
à
j
‡
v
o
€
p
p
i
i
i
s
q
r
k̀
r
k
^
r
h
r
h
g
a
w
g
g̀
‡
v
u
t
p
œ
œ

i
q
q
{
f
f
f
h
k
^
h
^
k
h
^
r
h
a
j
w
m
m
g
g
m
m
m̀
a
l
l
_xàŽ
tmlo^hkaij
ig^_vtahir̀k^qj
i€p^{ioa_kgàr^m”›àx`g€_lh_tsfikaj
q‚a_flsig̀m̀g^ixj
{lv‘irfa^€gq_rmpxp^xhlŒimỳifgqv̀gkr_htixfa^qŽrm̀làpgraf_j̀
hr^im̀j
^lràkfqm^pglfpfk_tk̀ig_mhqalfzj
^gmhlàfqari_l^hkgwakhfi‚p_j
rf^lqvqg_iah^u
wak̀qlkj̀
j
gki^k̀v̀_|atkf^ij
lk|s^…j
žŸ ¡¢£¤¥¦§¥¤¢¡¨©¦§¥ª¡ «
ÇÏÓ·Òß¹Ý
¬¹ÏÐÜ
¼ãÒÝÜ
­ÁÑ®¿ÖÒÓÏÈÔ°̄·Ò±ÐÉѲʳ²́ÕÖÝ˵ÛÌ×ͶÎØ·ÓÒ¹̧Ù·ÚÖÛºÔӻϼÜ
ÀßÜ
ÄÕÒ·ÏäÐÂֹѷàÐżÙÂÛÀÓÄÏá·ÝÆּо
ÀÑÖÄÏзâ¹߷ÐÒºÀÜ
½àÐѾ
¿ÓÚÀ̧ÏÐÙÞ¼Áß¿ÝÒÐÂÕ½àÃÙк·ÒÖÂâÓڼϾ
åøàÐæçÕóÑÒÏàâÐèôÖâÓéÑÏõêÛÜ
ëùÒìâÙÒíîÝïÕàíÐìÖêÏâéðÐÕéÒ×ñîßïáíÒÐòÑéöÝÒÙÏáâÛÒÐÙÒß÷Ñô×ÒâÒÓàÐÓÒßÝ
úÙÓÖûüÝýÒÚþÏÕÙôÿàùÖÐÑÐþßÏÕÛâÿÐàÖÙýÜ
Þ
Ù
Ú
Ó
Ú
Ù
Ï
Ï
Ï
Ï
Ï
Ï
Ï
Ï
Ñ
Ñ
Ñ
Ñ
Ö
Ò
à
Ò
Ö
Ò
Õ
à
Ò
â
Ö
Ò
Ò
Õ
Ö
à
Ò
â
Ü
Ô
Ð
Ü
Ô
Ð
Ð
Ô
Ð
Ð
ß
÷
ß
ß
ß
á
Ù
Ú
Ø
Ù
Ï
Ï
Û
Ñ
Ñ
Õ
Ò
â
â
Ö
â
Ö
Õ
à
Ö
â
Ò
×
Ý
Ý
Ð
×
Ý
Ó
ã
Ó
Ù
Ñ
Ö
Ò
â
à
Õ
à
Ò
Ò
à
Ð
Ð
Ü
×
Ý
ß
ô
ä
Þ
Ù
Ó
Ù
Ó
Ø
Ù
Ï
Ï
Û
Ö
Ò
Ö
Ò
Õ
Ò
â
Ò
Ö
â
Ò
×
Ý
Ü
Ô
Ü
Ô
Ð
Ô
Ð
ß
ß
÷
á
àÑÒÐßÝÜ
àäàÚß!ÐóÐÒÒÛâÑÙØàÓ×âÜ
ÐÖÝÏõ×ÔÕÛÏÒâÒßÙäÑÑÝÏàÖÔÕÝÐßâßÚÓÝÙÖÒÏÖÓÑÐÒäâ×ÚàÝàÖÐÔÒÒÏÓÕâÚÑÐàÝÙÜ
×ÒÔÓÓâÐÒÖÏÕÑâÝÒÙÜ
ÝÕÒ×ÖÝÙÏâÕàÛÑÒÝÖàÓÏÐââÛÖäÑÐßÏÕÒÑàÙÐâÙÖßÓÒÒ×Ñá!ßÐÏâÑÝøÖàÔàÝÏÒÜ
ÐâÖÖÑßâàÕÓÏàÒÐßÚÑÒÙÑâÔàÒÏóÐÝÙÓÏÚÑØßÜ
Ö
Ò
Ô
Û
Ð
Ñ
Ý
ÚÒÐøÕÙßøÝÑØâÏÐÙÕßÝÏÑÐÛÕÑÛ×ÝÚ×ÏÕÖÐä Ò
"
#
#
%
.
$
&
'(
)
*
(
)
/
0
(
'.
+,'-
H
=
A
B
A
1
C
7
9
G
G
G
>
F
F
3
2
4
5
6
;
<
@
D
<
@
I
;
@
L
D
?
E
E
J
:
K
8
PZQX\RYSZadjT[PUpY\\VZh]d\f^\d_iàaZjb
M
N_mdYhfOjW
n
k
k
a
a
a
a
a
a
l
[
[
[
[
Y
d
f
d
Y
d
h
f
d
j
Y
d
Y
h
Y
f
d
j
Y
c
Z
b
c
g
Z
Z
Z
c
m
Z
\
\
\
i
i
e
e
q
_
`
_
r
a
a
o
l
l
[
[
Y
Y
d
d
h
d
j
d
Y
d
p
m
Z
b
c
m
m
Z
m
c
p
m
\
\
n
n
s
_
k̀
_
_
ù
a
a
a
a
a
l
l
o
[
[
[
h
d
d
j
d
h
Y
f
d
d
h̀
d
j
m
Z
Z
g
i
i
t
nd\Zci[j\Ymkd\ZhdwhptfYxrhZjyY[jdm€u
a_kƒ\Ymà\jdmdlagoZqj[\\amdZlkZdYohhk̀dfddrb
[pkkY_md[u
[faz‡iZƒb
fYZpZpmddkc_ahavdjYfq[Zmalfkd[dZltj_vfY…
df_r\†
hlsmlan[djh_gYfb
mZhjaf[Ypb
ZmYlmddd[_amoj_afglp\dkh{[ZYp|}d~j_\Y‚l[{\tdYpZka
mfj\lZpdYdYk„pm_r[Ydm^dkjYb
Z[[\adY\yaZdjt
agZ\jdfkZjpfdm_\[aZYmf\idjmp_fdmj[YrpkjYemdakj
ld[matkjW
Ylfikdˆh[b
fmjqafZgmj\[jdmekj[pda[mlj[kfqZpsdfk̀kZj\[akdj[Yh[atfZ_Ykrafb
H
=
A
A
1
7
‰
G
G
G
>
>
F
3
2
4
5
6
;
<
@
D
<
@
I
;
@
L
D
?
Š
E
J
:
K
K
8
‹
aZŽ\jS[TYkdP\Um_VYl[iadŽZkfVp_\‘d’pb
–pPUfd”
P—_‡šdŽ•›
Nm[
Tmf“cZ”
TYšZ[O˜
•[mYab
Œd[Sk̀˜
kYeprmafœb
_pdmZa™[mdj[_klhdiZjYacdj
ld[_mYadZj_\kdmgYZd[khk̀djb
¥
¥
¥
¢
£
§
¢
§
ª
¡
¤
¦
¤
¡
¨
¡
©
¦
¡
«
¬¹́
ž­Ÿ®¯· ¸
¼
¸
¼
½
´
´
´
º
º
º̄
¯
¯
¯
°̄
±
¬
­
·
·
¬
·
­
·
°
±́
°́
·
¬
­
¬
°̧
°̄
­
­
²
µ
¶
®
¶
¶
¶
¶
¹
¶
®
®
®
³́
³
³
³̄
¾
³
»
¿
¼
Á̄
´
¯
­
·
·
¬
±
¬
·
¬
°̧
­
·
·
±
­
°́
¬
°
±
·
®
¶
µ
¹
®
À
¶
¹
¶
®
®
³
¾
»
¯­®´²³®³¬¼Ë·°̧º¬»µ¸Ǣ­Â¹
­±̄³®·°̄±¼´Á­·µ̄·®¬¶¾±º°̄Á¼°̧¶®·´À¯ɭµ̧±¿¶°̄°³º´±́¬¾´Á̄­°̧¸·¹́
·³®±·¶°̧¬´Ã³̄ÂǢ­¯¶°´³̄·Ế¬¬´¸¸Ç´Ȩ̂¯º̄··±Ã¼Á®½Í
­¯´³¶¬¼®¼°̧­°·´®¸º̄¬¬»
µ·±°³̄·°¯´Ì́¶¸Á̄¬³±́º¹
®³·Ì¬¯¬º¸´¾®·»³̄°̧­¹
®·³¹
®®¬¼·°¿®±́­°¯±³·¬¬¶¼°´»®·³­Ì́º̄µ°̧¶º·®¶¬°̄¹
³̧·Á̄µÃ°́´Æ­Å̧®¶¬¬·¯¼³̄ð´°¶·È́
ö²¬Ä
Â
¼
¼
¼
½
¸
¸
¼
¼
Î
´
´
´
Ï
Å
Í
º
º
º̄
¯
¯
¯
·
¬
­
±
¬
±̧
°
¬
·
¬
·
±
°̄
­
·
·
¬
·
±
­
·
­
·
­
·
µ
¶
²
®
®
²
¹
³
¾
³
³̧
Â
¼
¸
Ð
´
´
´
´
Ï
É̄
º
¯
¯
¯
¯
­
·
°
­
·
·
°̧
±
°̄
­
µ¼Î°̧·°·¬¬Ế¶¹
®
¶
®
¹
¶
À́
¶
¹
®
¶
®
¶
³
³
¾
³
Ã
¿
¸
Ê
½
¼
¼
´
Ð̄
º̄
É
¯
¯
¯
­
­
·
¬
·
¬
­
°
°́
¬
°
°́
·
·
·
¬
±
·
¶·°́¬Ǽ®¯»¶´±·­·±®»ÉìÒα·³À­¶°¹
¹
À
®
®
¹
µ
¶
¹
®
®
²
³̧
³
Ì
¿±Ņ̃­³®¾¶¯°°́¹
Ȩ̂
¼
¸
´
´
´
º
º
¯
¯
¯
°
·
¬
¬
±
°
±̄
·
¬
°́
¬
¬
°̧
°́
¶
®
¹
¶
¶
²
¶
À́
®
®
³̄
³
Ì̄
³
¿
¸
½
¼
¼
¼
´
´
´
´
´
É̄
­
°̄
­
¬
·
±
°
·
°̧
·
·
±
°
·
µ
¹
¶
¹
®
µ̄
¶
®
¶
¶
¹́
³
³
Ã
¼
¼
½
´
´
º
¯
¯
¯
°̧
·
·
°
±
­
­
¬
°
±
¬
­
°̄
·
¬
­
¬
®
À̄
®
¶
¹
®
®
®
²
µ
®
³
Ì
³́
³
Ì
Ó
¿
Ò
¼
¸
½
¼
¼
Å̧
´
´
´
É̄
¯
·
°
­
±
·
·
·
¬
·
·
·
®
¹́
®
¶
¶
¶
¹
¶
³̄
³
³
»
Ã
»
¼
½
¸
Ê
¼
´
´
´
´
Ǣ
É
¯
¬
°̄
­
­
­
¬
­
¬
±
·
¬
®
®
¶
¹
¶
®
¶
³̄
³
¾
³
Ë
Ã
Õ
Ế
Ȩ̂
Ô
´
Ǣ
º̄
Ǣ
¯
¬
­
·
·
·
­
¬
°
¬
­
·
·
°̧
·
¬
°
±
·
¶
®
¹
¹
²
®
®
®
¶
²
¶
¹
®
³
Ë
³
¾
³
³́
»
¼­¼µ̧®´·²·°³¯¼Î¬Ó··ÃÃ̄Ø
¼
Ä
´
´
Ȫ
º̄
¯
·±Ế¸³°®®·¬¯·®¶°·µ̧¬±³´·¸¼¬¸½°̄³À·®°²Ê¬³·±±½­¶·­´¸¯¶³±̧º̧¼·µ¬°̄¼¶º̄¶´·º­À̄®¿·°®¶·µ°¼®Ñ±¶µ̧·¶Ì¾³··¬¯¹
·
±
­
·
·
·
¬
¬
¶
µ
®
¹́
³̄
³
Ȩ̂
½
¼
´
É̄
¯
¬
°
±
¬
·
·
°̧
·
¬
­
·
¶
¹
®
¶
²
µ
¶
®
³
¼
¼
½
½
×
Ä
´
´
¯
¬
·
±
°
±
¬
±̧
¬
®
²
®
³
³̄
Ã̄
¼
´
Ȫ
¬
±
­
·
¬
·
·
·
¬
°̄
±
·
¶
µ
¶
®
¹
¶
®
³̄
³
³
»
¸
°
¬
±
±
°
¬
·
¬
±
­
¬
°
¬
°̧
®
µ̧
¶
À̄
®
µ̧
³
Ȩ̂¼´³º¼º̄±́·°¶³¬³̄®Ì´É­±¶®·µ·°²¶¬¬³³¯¯´·¿¬¿°́¼°́°̧ǽ¯³Ȩ̂¬®´··Ã®³Ä
½¶­·±»¹
¼Ȩ́¶¬µ°µ®­®¬³¯·¾³̄³­®®¶·¯Ã
º̄³®µ··´¹
¬¼°̧³·¶À́®·¯¿¹
¬¼µ°°®±̄¬­°́¶±¬²·³́®­Ê̄°°Ã¬¾··±µ®³¶­µ¼®´­³́¬²̄·¶³³́¾½µ̄¸°̧­®³»´¼º¶·Â¬¶¯®®·¸½°´¼³µµ®¶°º¯¶¬´·º̄¾®°±®··¼Ã̄µ°̧½¶Ø
¶¬´Ù
±¶¬®³·µ̄­°̄®°̄¿³´­Ì®¼Ç·°́Ä
·¿®°¬¯³´à
·¸½á·¼â
­³åÈ
°Ü±̧ß´·³Ý®¾È
°́Ã̄Þ
¬×
·Ó®ÜÇ
¶°ã®±ä¯³å´·¶íº̄µ̄°æáµå¼°̄½ç³°ðè­®¶éæÛê´ñè¹
²̄Ñëåܵݳ­ò°̧°è¬ê®¯ë·î¼â
®ì¶±íáè¾°ê·±îµ̄åáé·ï°äµ̄ê®±¸··³¼Þ
®½°̄··Ü¹
Ú±µÎ°̧·°¶¿³̧­®¬°̧·Ã­°×
Û¯·ã²̄äí¶³åÃá°×
·±¯°̄­¹
··ß¶ÝÞ
°Çà
¶·Ð°·ÐÛ±̄°̄­´Ç̄®¬ÄÞ
¶­á¬â
®æèå¼ðç­ºèñ¾®é°̧ë󶳷òäÐåêô¯°̧ëð·í­îê¶å¬¸ï½´í¼³·®¯°̄´³º̼̄½³·®¿°±̧³´Ì·®¶¯Ð·
³¶®Ó°´µ¹
Ú¸ÑÎÝ·°̧¶¿¬°±·³­Ì®Þ
È
´­¼°̄·¸±Ô¶¬­¼·Þ
¯°̧¿ö
°
·ß¬³õ
·¬Ô»Þ
­´·¯º́¼³·¬ÝÈ
°̄Þ
¬
¶Ñõ
µ
¶ö
®Ó­³²¬³́¼º·Â¯®´¬°̧­¹
®¬Ë¸·®¬±­¶·³¼Ý·Þ
¹
¶ö
³Ì°̄¹
³ÃÌμ½·õ
³Ô¶Þ
F AR =
F RR =
÷
ø
ø
ú
ù
û
ü
ý
þ
ÿ
ü
ý
þ
ý
ü
!
#
"
$
$
$
'
(
##
#
&
%
%
)
+
,
*
$
/
0
/
.
.
1
#
&
%
$
/
3
3
2
*
)
/
0
3
3
4
2
6
5
#
%
3#
T0
T0
T0
Courbe ROC
0.5
0.45
0.4
0.35
A
H
A
E
7
?
G
=
9
8
:
;
<
B
F
C
D
@
>
I
I
0
"
)
&
J
&#
&
)
2
J
3
*
#
I
0
&
)
2
I
#
)
I
J
2
*
#
&
.
*
#
I
I
4
K
N
6
R
P
ST
#
LQ
&
M
I3
W
X
W
Z
^
V
V
U
Y
T
U
T
\
\
[
]
O
2
&*&#
L
I
#`*#
_
#
FRR
0.3
0.25
0.2
0.15
EER
0.1
0.05
0
0
0.1
0.2
0.3
FAR
0.1%
0.4
0.5
n
l
h
d
e
f
g
e
g
f
i
j
i
k
e
m
i
o
a
bp}q|crwstd
ƒ
y
z
y
y
…
z
y
u
x
x
€
x
x
~

‚
~
†
p
p
p
p
p
v
w
q
v
{
|
v
|
w
q
q
q
{
|
|
q
|
q
w
q
}
s

s
s


}
s
‡
r
r
r
r
r
„
y
‰
y
‰
z
‰
y
y
x
x
x

p
p
q
q
w
|
w
{
v
w
v
q
v
w
{
|
q
q
|
}
s


}
Œ

‡
Š
r
r
‹
r
Š
Ž
ˆw…
ˆ
t
zqzsq‹p~xp‡
z
z
y
z
…
z
y
xv‡
x
x
x
x
~
p
p
p
q{|wpxywq|{y
q
w
v
|
q
w
|
q
q
|
|
|
q
w
v
|
q
w

}
s

‡
s
}
s


rzq
r
r
r
r
ˆ
‰
y
y
z
y

x
x
x
†
p
p
|
|
{
w
v
{
v
q
w
|
{
q
q
v
|
w
q
{
v
s


}
s

}
Œ
r
r
‹
Ž
ˆ
y
‰
z
z
‰
z
z
z
x
x
x
x
†
~
p
p
p
p
p
|
w
v
|
q
w
v
q
{
v
q
v
q
|



}
s
s
‡

s
Œ
s


r
r
r
r
r
ˆ
z
…
z
z
z

x
x
x
‘
p
p
{
q
|
w
q
v
w
{
q
|
w
v
|
w
|
q
|
{
s
}



s

}
s

‹
r
‹
r
t
ˆ
…
z
xpt{‡
xz–
x
’
x
x
~‹}vqzxrssw•|psxq|‡
p
p
p
p
p
v
|
v
v
q
v
q
w
q
w
q
w
q
w
v
w
v
v
|
v
svv}wzzq{‰yxw~r
‡


‡

‡
Œ
s
s

}
s
Š
z
z

y
“
x
x
x
p
p
q
v
w
q
{
|
v
|
q
q
q
{
|
v
w
{
q
s
Œ

}
s

s

Œ
‡


r
r
r
t
z
z
z
x
†
‚
p
p
p
p
|
w
{
|
q
q
w
q
w
w
q
w
q
{
|
w
v
q
w

‡
}

‡


s
‡
‡
Š
r
”
r
‹
z

z
x
x
x
x
‚
~
~
p
p
p
p
p
q
v
|
v
v
v
q
{
|
|
w
v
Œ
s
‡
}
s
}
s
s
Œ
s

}

r
r
r
ˆ
•
…
z
y
z
z
x
~
p
p
p
p
q
q
q
|
q
q
q
w
|
{
|
w
q
w
q
{
v
q
}
Œ
‡
‡



‡
}
‡

}
s
r
‹
r
t
¡
£
—
¤
›
›
›
š
ž
Ÿ
Ÿ
¢
š
Ÿ
œ
œ


˜w”™

y
z
–
x
x
x
†
~
†
p
p
p
p
q
q
w
q
w
|
v
w
q
q
v
v
q
w
v
q
s
Œ

‡

s

r
‹
„
z
y
y
z
‰

z
y
‰

x
x
x
x
¥
~
~
p
p
p
v
w
{
v
q
|
w
|
w
q
{
|
q
v
{
q
{
q
v
q

}
s
}
s

s
}

s
s
Œ

s

r
r
r
r
ˆ
y
y
y
z
y
z

x
x
¦
x
x
x
†~qxs
~
p~qypx§
p
p
p
q
q
q
|
v
w
v
{
q
q
v
q
w
|
w
v
|
w
w
v
|
q
w
|
‡
s


Œ

s

Œ
‡

‹
r
r
t
ˆ
…
z
y
z
…
y
‰
…
z
x
~
~
†
p
p
p
w
{
|
|
w
w
|
v
q
v
q
v
|
w
q
Œ
s
s
‡
}
}
s
s
‡

s

‡
r
r
‹
r
”
z
z
y
z
’
x
x
x
x
~
~
~
~
p
p
p
p
p
w
q
q
w
q
v
q
w
|
w
w
q
q
w
q
|
v
q
|
w
w
‡
}
s


Œ



}
s

s

r
r
t
•
z
x
x
x
x
p
p
p
p
p
p
v
w
v
w
{
v
q
q
|
w
{
|
{
|

s
‡

s
}
s

}


s
s
}
s

}

r
r
‹
r
r
•
‰y
y
y
‰

x
¨
x
x
†
†
p
p
p
w
q
q
q
{
|
v
q
w
v
{
w
|
q
|
{
q
v
q
w

‡
s



‡



}

s
Œ
r
”
”
r
t
y
‰
z
z
…
z
xqzv}
x{x
xxypŒqsq
x
x
x
x
x
~zzqqwwpv{}
~s•
~
~
p{pqvqw}z
p
p
v
wzsqw
w
q
v
q
v
v
v
|
|
q
sp|wr‡
}
}
s
‡
s

s
‡

‡

}
‡
s
r
r
r
r
r
x
q
{
|
v
w
v
{
q
q
w
v
s


Œ
‹
t
z
y
‰
z
x
x
u
x
©
~
p
p
p
|
w
w
q
q
|
w
q
w
{
v
q
w
v
q
w
{
v
w
q
w
w
q

}
s

s

}
s
‡
Œ


r
r
r
r
ˆ
t
y
z
y

x
x
~
~
†
p
p
p
p
p
w
q
|
v
q
{
|
ª
w
q
v
q
w



s

s
r
‹
r
r
r
‹
z‹wy
‰}qx|x§
y
z
‰
…
z
y
y
x{r|~…szqqyp{pqv‡
x
x
x
x

~
~
p
p
v
|
q
v
v
q
v
q
q
|
v
q
|
q

‡

‡

}
s
‡
}

‡
r
r
Š
”
r
Š
t
y
y
z
‰
z
…
x
’
~
~
~
~
p
p
p
w
q
w
w
|
q
{
v
q
v
v
w
|
w
w
|
q
v
}
s

s
Œ
‡


}


r
‹
r
r
t
•
z
z
y
y
y
‰
x
x
x
~
p
p
p
p
p
{
|
ª
q
v
w
q
q
w
q
q
q
q
|
v
q
}
s

}
s

‡
}

s
‡



r
r
r
r
Š
”
•
§
z
y

z
y
x
«
x
x
~
~
p
p
p
w
q
q
|
{
v
|
q
|
w
v
|
w
q
w
{
q
w
w

}
s
s
Œ


s
r
‹
r
t
…
y
y
z
x
~
p
p
w}
v
|
w
w
v
|
w
{
w
v
q
{
q
w
{
v
|
q
v
q




}
s
}
s
s
s
r
r
‹
r
‹
r
‹
r
zsxwps
z
y
‰
z
x
x
x
p
p
p
p
v
w
q
v
|
w
|
v
{
q
{
v
w
q
w
s
}
s
}
s
}
s
}
s
‡
Œ

r
r
Š
r
t
z

z
z
y
y

x
x
x
x
¬
~

~
~
p
p
p
p
p
p
v
w
q
{
v
q
|
w
v
|
w
|
w
q
w
q
v
q
{
|
q
|
w
{
v
{

}
s




s
s

}

s
r
r
Ž
ˆ
z

z
y
y
«
x
~
~
p
p
q
|
w
{
|
w
q
{
q
{
v
q
{
|
w
|
w
q
q
|
w

}
s


}
s


r
r
r
r
r
t
ˆ
z

y
y
y
z
y
x
x
x
~
~
~
p
p
p
p
p
|
v
q
q
{
|
v
v
v
q
w
v
w
q
v
q
{
q
{
v
w

Œ
s
‡

}
‡
Œ

}
s
r
‹
Š
r
‹
r
Ž
•
y

y
z

z
x{y
’
x
x
x
x
©
p{|s‰‡
p
p
p
p
p
p
v
w
q
{
v
v
|
q
|
q
{
q
v
|
q
v
|
v
q

}
s

}

Œ
s
‡


‹
t
z
‰
z
y
x
¦
x
x
~
~
~
~
~
~
p
p
|~rs{xpqwvyˆ|
qwrs
}|Œwsv|wqtpy
qr{v}wxp|sq}tvqrswr|‡
}‡
zwqvyr
xqŠw†‡
­¼
®
®
°̄
¹́
¹̧
±
²
³́
µ
²
³̧
º
»
³
²
¶
·
À
Ã
Í
À
Î
Ã
À
À
À
Í
Å
Å
Å
Å
È
Ì
Æ
Æ
½
¿
Á
Â
½
Á
Ê
¿
Ê
¿
½
Ê
Â
Á
Ê
Â
½
Á
Ê
½
Á
Â
Ê
½
¿
½
Â
Á
Á
¾
Ä
Ç
¾
¾
Ä
Ç
Ä
Ç
Ç
¾
¾
Ë
Ë
Ë
Ï
Ð
É
Ø
À
À
Î
Ã
Ô
Å
Ó
Õ
×
Ì
ÆÀÆÁÃ
Æ
Æ
¿½Ù½ÏÀÑÑÁÊÁÂÇÅÄ
Â
½
Á
¿
¿
Á
¿
Á
¿
¿
Á
Ä
Ç
Ñ
Ç
Ò
Ä
Ç
¾
Ç
¾
Ä
Ç
Ò
Ç
¾
Ë
Ë
Ë
Ë
Ö
Ù
À
À
À
Í
À
Ã
Í
Î
Å
Ó
Å
Å
Ì
Æ
Æ
Æ
Æ
Æ
Á
¿
Á
Ê
¿
Â
Ê
½
Ê
¿
Á
½
Á
Â
Á
½
Ê
Á
½
Á
Â
½
¿
Ú
¾
¾
Ä
Ç
¾
Ç
Ñ
Ç
Ë
Ë
Ë
Ë
Ï
Ö
É
Í
À
Î
Í
À
Î
Ù
Í
Ã
À
Ù
Ù
Å
Ì
Ì
Æ
Á
¿
½
½
½
¿
¿
¿
½
Ê
Â
Á
¿
Ê
Á
¿
¿
Â
Á
Ò
Ç
Ä
Ç
Ñ
¾
Ú
Ë
Ë
Ë
Ë
É
Ø
À
Î
Í
Î
Ã
Û
Ü
Ý
Û
Å
Å
Å
Å
Å
Æ
Æ
Æ
Æ
Â
½
Á
Ê
¿
Á
Ê
½
Á
½
Â
Ê
Á
Ê
Â
Á
½
Ä
Ç
¾
Ò
Ç
¾
¾
Ä
Ç
Ú
Ä
Ç
¾
Ç
Ë
Ë
Ë
Ë
Ð
Ù
Å
Å
×
Þ
Ì
Æ
Æ
Æ
½
Â
Á
¿
Á
Ê
¿
¿
Á
Ê
¿
½
Ê
ÇÏÂÊʽÁË
ÑÂÄÆÍ
ǽÌÁÇÅ¿½ÁÆÏÂÚÊ˾ÁÄÀÊν½Ä
Ä
Ú
Ä
Ç
¾
Ç
¾
¾
Ë
Ï
Ë
Ë
Ë
Ö
ÀÇÒ
Í
À
Î
À
Ã
Ã
À
Ô
Å
Å
Ó
Å
Õ
Å
Å
Ì
Æ
Æ
Æ
Æ
Æ
¿
½
Â
Á
¿
Á
½
Â
½
½
Â
Á
Á
Á
¿
¿
¾
¾
Ä
Ç
Ç
Ä
Ñ
Ç
Ä
Ç
¾
Ä
¾
Í
À
À
Ù
ß
Å
Û
Ü
Ý
Û
Ì
Ì
Ì
Æ
Æ
Æ
Æ
Æ
Á
Á
Â
¿
Á
Ê
Á
¿
Á
¿
¿
½
½
Á
Ç
Ò
¾
Ñ
Ç
Ò
Ë
Ö
Ã
Ô
Å
Ó
Õ
Æ
Ê
Ñ
Ö
à
À
Í
Ã
À
À
Í
×
Å
Å
Å
Å
Å
á
á
â
Æ
Æ
Æ
Ê
¿
Ê
¿
Â
Á
½
Á
¿
Á
½
½
Â
Ê
Â
¿
Ê
Á
Á
Á
½
Á
Ê
Ê
¿
¾
Ç
¾
Ç
Ä
Ç
¾
¾
¾
Ç
¾
Ç
Ä
Ç
¾
Ë
Ï
Ë
Ë
Ø
À
À
ÄÇÌ¿Á¾ÆÁÇÊ¿ÁÄÇ¿ÄÂÁ¿ËÆ¿ÆÏËãÖ
Chapitre 2
État de l'art
Dans ce chapitre, nous allons donner une vue d'ensemble de l'état de l'art concernant la reconnaissance de visage en temps réel et des algorithmes utilisés dans ce
but. Nous allons aussi voir l'intérêt des rétines électroniques pour l'amélioration des
performances des systèmes temps réel. En eet celles ci permettent une amélioration
de la qualité des données et le traitement de l'information in-situ. Dans le cas de notre
application : la reconnaissance de visage, nous cherchons à éliminer la variable illumination qui joue un rôle important sur les performances d'un système de reconnaissance.
L'acquisition active, où la capture d'image se fait à l'aide d'une source de lumière
contrôlée, est une solution qui permet de s'aranchir de ces eets. Nous présentons
dans la section 2.4, les diérents travaux faits sur les capteurs et les algorithmes en
proche infrarouge.
2.1 Introduction
Les recherches sur la reconnaissance de visage ont commencé au début des années 70. Elles ont connu un essor récemment pour des raisons sécuritaires. On note en
eet un intérêt croissant de la part des états et des industriels pour ce domaine de recherche qui s'est manifesté par l'introduction de l'image de visage numérisée dans les
documents ociels tels que le passeport et une probable carte d'identité biométrique.
Diérentes bases de donnée de visage ont été collectées an de tester les performances
des algorithmes de reconnaissance et des compétitions à l'échelle mondiale sont organisées chaque année pour évaluer les avancées réalisées dans ce domaine. Citons
en particulier FRGC et MBGC en 2008 organisées par le NIST. Mais la biométrie de
reconnaissance de visage connaît des challenges techniques assez importants du fait
9
10
CHAPITRE 2. ÉTAT DE L'ART
que le visage est sujet à de multiples variations liées soit aux conditions d'acquisition
(problème d'illumination) soit aux poses et à l'expression.
2.1.1 Architecture générale
Un système de reconnaissance de visage peut être considéré comme composé de
4 parties (gure 2.1) [42] :
Figure 2.1: Schéma général d'un système de reconnaissance de visage
Capture : C'est la première étape dans le processus. C'est aussi l'acquisition
des informations et leurs transfert vers l'unité de traitement. Elle est une étape
très importante dans les systèmes de reconnaissance. En eet, avoir des images
de bonne qualité en référence améliore les performances de reconnaissance. Il
faut réussir à capter l'information pertinente sans bruit. Il existe plusieurs types
de capteurs pour l'acquisition du visage qui se classe selon leur mode de fonctionnement, leurs domaine de sensibilité spectrale et leur mode d'acquisition.
On trouve sur le marché les capteurs classiques d'image à 2D tels que : les CCD
(Couple charged device) ou CMOS pour capturer des images dans le spectre
visible et/ou proche-infrarouge, ou les capteurs thermiques qui permettent une
acquisition dans l'infrarouge. Il existe des capteurs qui nous donnent une image
avec l'information 3D, cela se fait par des scanners 3D, où la mesure de la
profondeur est réalisée grâce à un rayon laser balayant la scène ou par stéréo
vision. Chaque type de capteur présente des avantages et des inconvénients.
Dans la reconnaissance de visage on peut utiliser les capteur 3D par exemple
pour s'aranchir des problèmes de pose. Mais leur prix excessif ne permet pas
une utilisation à grande échelle. Les capteurs en proche infrarouge sont utilisés
pour éliminer les problèmes de l'illumination. Nous allons nous intéresser dans
ce travail à ce dernier cas.
Détection du visage : Après avoir capturé la scène contenant un visage, la
deuxième étape consiste à l'extraire de l'image. Cela peut se faire par détection de la couleur de la peau, ou par des méthodes détectant les diérentes
caractéristiques du visage par des descripteurs locaux (adaboost). Cette étape
est autant plus délicate autant que l'image acquises contient plusieurs objets
2.1. INTRODUCTION
11
de visage ou un fond non uniforme qui crée une texture perturbant la bonne
segmentation du visage. Cette étape est dépendante de la qualité des images
acquise. Après la segmentation du visage, on peut ltrer ou améliorer la qualité
par des pré-traitements qui sont appliqués au visage extrait. On peut eectuer
des normalisations géométrique et photométrique. Ces pré-traitements sont nécessaires pour éliminer ou limiter les variations de pose ou d'illumination. Un
pré-traitement photométrique tend à uniformiser l'éclairage dans une image et
ainsi minimiser l'inuence de l'illumination. Cela peut être eectué soit par des
méthodes simples telle que l'égalisation d'histogramme, une correction gamma
ou par des méthodes plus complexes tel que le lissage anisotropique [25] ou la
méthode retinex. Une normalisation géométrique est un ajustement du visage
pour qu'il ait une dimension donnée et qu'il soit horizontal. La taille du visage
est généralement donnée par la distance inter-oculaire. La gure 2.2 montre la
normalisation géométrique.
Figure 2.2: Normalisation géométrique du visage
Tous ces pré-traitements tendent à éliminer les variations de formes du visage
(rotation, taille) et à avoir une image uniformément éclairée. Ainsi, l'image du
visage ressemble à une image acquise dans de bonnes conditions, comparable à
celles de l'image de référence. On diminuera donc les chances d'un faux rejet.
Extraction de caractéristiques : le but est d'extraire les caractéristiques du
visage qui peuvent le rendre à la fois diérent de celui des autres personnes et
robuste aux variations de la personne elle-même. C'est l'information nécessaire
pour que le visage d'une personne ne ressemble pas à celui d'une autre personne et en même temps qu'il ressemble à lui-même dans d'autres conditions
d'acquisition. Au début des travaux sur la reconnaissance de visage [12][22],
on a estimé qu'une représentation du visage devait passer par l'utilisation de la
12
CHAPITRE 2. ÉTAT DE L'ART
bouche, des yeux, du nez, de leurs positions relatives et de leurs géométrie. Mais
cette procédure a montré ses limites [15]. Il faut alors une analyse plus poussée
du visage pour trouver d'autres caractéristiques. Dans certaines méthodes, on
n'utilise d'ailleurs que la détection des yeux pour normaliser le visage et on fait
ensuite une étude globale du visage (algorithme type ACP, LDA, etc.)
Comparaison des caractéristiques : selon les caractéristiques extraites précédemment, les algorithmes de comparaison dièrent. On trouve dans la littérature
plusieurs approches : calcul de distance, calcul de similarité. D'autres méthodes
se basent sur la classication des caractéristiques par un seul classieur (SVM,
classieur baysien, etc.) ou par plusieurs (Adaboost).
2.1.2 Challenge techniques
La problématique de la reconnaissance de visage est celle des variations intraclasse. En eet, les variations d'illumination, de pose ou d'expression détériorent les
performances d'un algorithme de reconnaissance. Le visage d'une personne X peut
ressembler plus à celui d'une personne Y qu'à lui-même si l'on change les conditions d'acquisition. Ces eets sont surtout notables dans un contexte de mobilité
où on n'a pas de contrôle sur l'environnement de l'acquisition. Pour cela, on essaie
de trouver une bonne méthode qui permette de s'aranchir de ces diérentes variations. Les algorithmes de normalisation photométrique permettent d'atténuer l'eet
de l'illumination. Ils ont permis ainsi d'améliorer considérablement les performances de
reconnaissance [85] dans certains cas précis acquis en lumière visible. Une seconde voie
consiste à utiliser l'acquisition active. Elle permet aussi d'éliminer ces variations d'illuminations et ainsi améliorer les performances du système sans augmenter la complexité
algorithmique. Cela permet une meilleure intégration de l'algorithme sur composant
programmable et ainsi d'eectuer la reconnaissance en temps réel avec une consommation d'énergie raisonnable.
Nous allons présenter dans ce qui suit quelques algorithmes de reconnaissance du visage qui ont été implémentés sur des composants programmables. Ces architectures
peuvent alors nous donner des performances de reconnaissance en temps réel.
2.2 Reconnaissance de visage en temps réel
Les industriels et les laboratoires de recherche se sont intéressés aux applications
de la reconnaissance de visage sur des terminaux mobiles. L'aspect ergonomique de
l'usage de cette biométrie attire les industriels pour sécuriser les sessions de travail ou
pour la personnalisation des appareils mobiles. La rme OKI a été la première à intégrer un système de reconnaissance de visage dans les appareils téléphoniques comme
2.2. RECONNAISSANCE DE VISAGE EN TEMPS RÉEL
13
une alternative au code PIN à travers leur système "Face Sensing Engine" [1]. L'intégration des algorithmes de reconnaissance est fait sur des composants programmables
standards tels que les DSP (Digital Signal Processor), FPGA (Field Programmable
Gate Array), ASIC (Application-Specic Integrated Circuit), etc. Les premiers travaux
d'intégration d'algorithmes de reconnaissance de visage datent du début des années
90 à l'université de Harvard [21]. Les auteurs ont conçu un circuit pour accomplir
la tâche de comparaison (une corrélation dans ce cas). Le système se compose d'un
IBM PC 80486/DX2, d'un extracteur de trames vidéo et de leur circuit de corrélation. Cela leur a permis de gagner en ressource du processeur et en temps de calcul.
L'architecture du système est présentée en gure 2.3.
Figure 2.3: Schéma global du système de Harvard (Gilbert) [21]
Cette première tentative montre l'ecacité de concevoir un circuit dédié pour
améliorer le temps de calcul de l'algorithme de reconnaissance. C'est dans cet esprit
que nous avons mis en valeur les prochains travaux. Nous allons présenter dans ce qui
suit quelques algorithmes qui ont été implémentés sur des circuits VLSI.
2.2.1 Reconnaissance de visage par réseaux de neurones
Les réseaux de neurones est un modèle de calcul qui date des années 40. C'est
une technique inspirée des réseaux de neurones biologiques pour exécuter des tâches
calculatoires. Elle a la particularité de s'adapter, d'apprendre, de généraliser pour
classer les données en entrée. Un réseau de neurones se compose essentiellement
de [35] :
Un ensemble de cellules de calcul, appelées aussi neurones. Chaque neurone
possède un état d'activation mesuré à sa sortie yk .
14
CHAPITRE 2. ÉTAT DE L'ART
Un ensemble de connections entre les neurones. Chaque liaison est caractérisée
par un poids wjk reliant l'unité j avec l'unité k .
La loi de propagation du réseau : l'eet de l'entrée active sk d'un neurone sur
les diérents neurones.
La méthode de collecte de l'information (règles d'apprentissage).
La fonction Fk réalisée par la cellule.
Une entrée externe qui peut être considérée comme un décalage θk
La gure 2.4 montre ces diérents caractéristiques.
Figure 2.4: Composition d'un réseau de neurones
Plusieurs types de réseaux de neurones existent dans la littérature, nous allons nous
intéresser au réseau RBF (Radial Basis Function). Selon Howell et Buxton [29], le RBF
donne de meilleurs résultats d'identication de visage que les autres types de réseaux
de neurones. l'architecture d'un réseau RBF est présentée en gure 2.5. Il se compose
d'une couche d'entrée, une cachée et une de sortie. La couche d'entrée se compose
de N cellules pour un vecteur correspondant à l'image d'entrée composée de N pixels.
Toutes les cellules de la couche d'entrée sont connectées aux I neurones de la couche
cachée qui eux même sont connectés à ceux de la couche de sortie. Chaque noeud de
la couche cachée donne en sortie un signal proportionnel à la distance entre l'entrée
et le centre correspondant de la cellule ci . La distance euclidienne est généralement
la plus utilisée (d((x))). La fonction d'activation du neurone est une gaussienne :
Fk = exp−d(x)
2 /σ 2
i
Les paramètres d'apprentissage du réseau sont alors : les centres ci , la taille de la
fonction σi et les poids des connections. Pour chaque personne, on construit à partir
d'un ensemble d'images un réseau qui lui correspond. Il est clair que dans ce cas, les
images d'entraînement doivent contenir les diérentes variations d'illuminations, de
15
2.2. RECONNAISSANCE DE VISAGE EN TEMPS RÉEL
Figure 2.5: Réseau de neurones RBF [82]
Nombre de slices utilisé
Pourcentage utilisé
Nombre de bloc RAM utilisé
Pourcentage des bloc RAM utilisé
827
27%
16
100%
Table 2.1: Ressources consommées sur le FPGA SpartanII pour le RBF
poses et d'expression. Un problème peut se poser si on a peu d'images d'entraînement
de la personne.
Ce réseau a été implémenté et testé sur plusieurs composants programmables
(DSP, FPGA et ZISC) [82] [62][63]. Dans [82], les auteurs ont implémenté le réseau
sur un FPAGA Xilinx SpartanII-300 qui contient 3072 slices (unité logique de base
dans un FPGA qui possède 4 entrées et une sortie et peut simuler une fonction logique
complexe), 16 blocs mémoire de 512 octets. La couche cachée du réseau contient 15
cellules, et le vecteur d'entrée est de taille 320. Le tableau 2.1 montre les ressources
consommées pour l'implémentation de ce réseau. La fréquence d'horloge du FPGA est
de 50MHz. Cela permet un traitement de 14 images par seconde avec une performance
de bonne reconnaissance de 92% sur 1796 images de visage.
Dans [82], les auteurs ont testé aussi l'implémentation d'un RBF sur un DSP de
Texas Instrument. Ils ont choisi le TMS320C6201B : un DSP à calcul en virgule xe
avec une fréquence d'horloge de 200MHz. Ce DSP est capable de traiter 8 opérations
en un cycle d'horloge. Le tableau 2.2 montre les résultats de cette implémentation
avec un code en C et une implémentation optimisée en assembleur.
Une autre implémentation de ce type de réseau a été étudiée dans [33] où les
auteurs ont développé un processeur dédié. Le système proposé est composé d'une
caméra CMOS d'une résolution 640×480 et d'un processeur SIMD (Single Instruction
16
CHAPITRE 2. ÉTAT DE L'ART
langage
Extraction des vecteurs d'entrées
Calcule de distance
Fonction Gaussienne + Décision
Vitesse de traitement
C
4.14 ms
211 ms
67ms
3.5 images/sec
Assembleur
1.8 ms
144 ms
4.8 images/sec
Table 2.2: Résultats d'implémentation d'un RBF sur DSP
Multiple Data). La taille des images en entrées du réseau, après normalisation, est de
64 × 72. Avec cette architecture, ils ont pu atteindre une vitesse de reconnaissance de
4.2ms avec un taux de reconnaissance de 90% avec un taux de fausse acceptation de
1%
2.2.2 Reconnaissance de visage par Analyse de composante principale
C'est l'algorithme de référence de la reconnaissance de visage. C'est une méthode
de réduction d'espace connue aussi sous le nom de transformée de Karhunen-Loeve
ou PCA (Principal Component Analysis). Elle a été utilisée par Turk et Pentland dans
[75], où la notion de "eigenface" a été introduite pour exprimer les diérents vecteurs
propres de la base d'images de visage de la PCA. En eet, on peut considérer que
les images de visage de dimension N × N pixels ne forment qu'un sous ensemble
de l'espace des images de dimension N × N . Il est alors intéressant de chercher une
représentation d'un visage dans cet sous ensemble appelé espace des visages. Cet
espace est construit à partir d'un ensemble d'image de visage constituant la base
d'apprentissage. La PCA a pour objectif de maximiser la variance entre les données.
Cela revient à maximiser la variance entre les "diérents visages". Pour un ensemble
de N images, X = {x1 , x2 , ..., xN } est l'ensemble des images exemples, l'analyse par
composante principale est une décomposition en éléments propres de la matrice de
covariance C de ces données d'apprentissage.
N
C=
1 X
(xi − x)(xi − x)T
N −1
i=1
Où x est la valeur moyenne de X :
x=
N
1 X
xi
N
i=1
Si xi est un vecteur de dimension M . On aura alors M vecteurs propres (eigenvectors)
{v1 , v2 , ..., vM } de dimension M et M valeurs propres {λ1 , λ2 , ..., λM }. Ces vecteurs
2.2. RECONNAISSANCE DE VISAGE EN TEMPS RÉEL
17
propres forment une base orthogonale en résolvant l'équation :
Cv = λv
où C est la matrice de covariance et v est un vecteur et λ un scalaire.
Les valeurs propres {λ1 , λ2 , ..., λM } représentent le taux de variation le long de l'axe
du vecteur propre associé. Dès lors, on pourra éliminer les vecteurs propres les moins
importants sans perte conséquente d'information. On dénit alors la proportion P de
la variance contenue dans les Q premiers éléments de l'ensemble des vecteurs propres
choisis :
PQ
q=1 λq
P = PM
i=1 λi
où Q < M . La projection d'une image I , Ω dans cet espace de visage est donnée
par :
ωi = (I − x)T vi
où ωi est la composante selon l'axe vi .
La classication des données est ensuite fournie par un calcul de distance (distance
euclidienne par exemple) ou par des moyens plus élaborés tel que le SVM (Support
Vector Machines). Cette approche PCA est assez dépendante de l'espace de visage
choisi. En eet, plus la base d'apprentissage est grande et intègre des variations d'illumination, de pose et d'expression mieux on peut présenter les visages dans cet espace.
On trouve dans la littérature des essais d'implémentation de cette approche.
Dans [38], les auteurs ont intégré la PCA avec un SVM comme classieur. L'intégration s'est faite sur DSP de Texas Instrument (TMS320C6711). C'est un processeur à
calcul en virgule ottante qui peut être cadencé à une horloge de 200MHz. Les images
sont acquises avec un capteur CCD classique. Le temps de vérication atteint varie
entre 50ms et 90ms.
Dans [68], les auteurs ont construit un espace de transformée en ondelette discrète
(ondelettes de Daubechies) des visages. Cela permet d'améliorer les performances de
la reconnaissance. En eet, une analyse en ondelette du visage permet d'en extraire
les informations pertinentes. Ensuite la PCA réduit les redondances de l'analyse. Le
classieur choisi dans ce cas était une distance euclidienne. L'intégration de cette
méthode a été eectuée sur un FPGA Spartan-II d'une taille de 300K portes. Les
ressources utilisés pour leur système sont présentées dans le tableau 2.3
Ces performances permettent un fonctionnement avec une fréquence de 25Mhz de
12.5 trames par seconde. Les auteurs indiquent que pour une vitesse plus importante,
l'utilisation d'un FPGA plus récent permet de doubler la vitesse de traitement.
18
CHAPITRE 2. ÉTAT DE L'ART
fonction
Contrôleur SDRAM
2-D DWT
PCA
Classieur
Total
Memoire
2
2
2
1
7 (56%)
Slice
247
175
202
275
1274(42%)
FFs
196
223
380
450
1543 (25%)
Fréquence (MHz)
83
113.3
131.5
104.1
50
Table 2.3: Ressources utilisées dans [68] sur un FPGA XC2S300
2.2.3 Reconnaissance par correspondance élastique de graphe
Les approches les plus utilisées en reconnaissance de visage en temps réel sont les
algorithmes à approche locale. Ces algorithmes se basent sur la comparaison de caractéristiques locales du visage. Un de ces algorithmes est la correspondance élastique
de graphes ou le "Elastic Graph Matching" (EGM). Cet algorithme est inspiré du
"Dynamic Link Architecture" (DLA) [37]. L'EGM représente le visage par un graphe
étiqueté. Un graphe est composé d'un ensemble de noeuds connectés entre eux par des
contours. Chaque noeud peut correspondre à un point caractéristique du visage [81]
(gure 2.6-a)) ou à un noeud d'une grille superposée sur le visage [34] [18] (gure 2.6b)). Il est caractérisé par son nom ou sa position et par un vecteur qui contient l'analyse
locale de son voisinage. Cela permet d'avoir une information locale à travers les noeuds
et une information globale par leurs inter-connections. Chaque noeuds comporte des
caractéristiques locales du voisinage du noeud. Celle ci peut être determinée par une
analyse par ltres de Gabor ou par une série d'opérations morphologiques. Le résultat
de cette analyse est enregistré dans un vecteur appelé Jet. Les jets et les positions
relatives des noeuds constituent un modèle du visage.
Figure 2.6: Diérents type de graphe pour l'EGM
Une des méthodes d'analyse pyramidale (sur diérentes échelles) est l'analyse par
2.2. RECONNAISSANCE DE VISAGE EN TEMPS RÉEL
19
un banc de ltre de Gabor. En changeant la taille et les orientations des ltres, nous
obtenons une analyse multi-résolution du voisinage du noeud. Duc et al. ont choisi
une analyse sur 3 résolutions et 8 orientations [18]. Dans la méthode proposée par
l'Université de South California (USC) [9], les auteurs utilisent une analyse avec des
ltres de Gabor avec 5 résolutions et 8 orientations. La seconde approche d'analyse
multirésolution est celle qui utilise la morphologie mathématique. Elle est constitué
d'une série d'érosions et de dilatations par un élément circulaire de taille variable. Pour
un noeud x dans une image f et un élément structurant circulaire gσ :



(f ⊕ gσ )(x) if σ > 0,


(f Fgσ )(x) = f (x)
if σ = 0,



(f ª g )(x) if σ < 0.
|σ|
où ⊕ est l'opérateur de dilatation et ª est l'opérateur érosion. Dans [34], les auteurs
ont construit une grille de taille 8 × 8. Chaque noeud x est caractérisé par un jet de
taille 19 : j(x)=((f Fg9 )(x), ..., f (x), ..., (f Fg−9 )(x)). Pour comparer deux graphes
(ou deux images : une de référence et une de test), on calcule la similarité entre les
jets :
Sj (j(xri ), j(xti )) = kj(xri ) − j(xti )k
La comparaison de deux images est une correspondance entre les deux graphes. La
première étape est le calcul de similarité entre les noeuds qui est un produit scalaire
normalisé de deux jets :
J I .J M
S(J I , J M ) =
kJ I k.kJ M k
où J I (resp. J M ) est le jet de l'image de test (resp. de l'image de référence).
La correspondance de deux graphes se fait en deux temps [37]. En premier lieu,
une comparaison rigide qui calcule la similarité entre les deux graphes sans déplacement des noeuds (Sjets ). Puis une comparaison élastique qui tend à retrouver les
meilleures correspondances entre les noeuds. Mais, ce déplacement est pénalisé par la
déformation de la grille et ensuite par les modications de distance entre les segments
reliant les noeuds (Sseg ). Le coût total de ces deux opérations est la similarité entre
deux graphes (i relatif à l'image de test et r de référence) est :
Stotal = Sjets + λSseg =
X
i∈N
X −→ −→
Jit .Jir
+λ
(∆tij − ∆rij )
t
r
kJi kkJi k
(i,j)∈E
où λ est un facteur d'élasticité, N (resp. E ) est l'ensemble des noeuds (resp. des
−→
segments reliant les noeuds) dans le graphe et ∆ij est le segment reliant les noeuds
20
CHAPITRE 2. ÉTAT DE L'ART
i et j :
−→ −
→
∆ij = →
xj − −
xi
Plusieurs travaux ont été menés pour intégrer cet algorithme de reconnaissance
de visage. Son analyse locale des points caractéristiques attire l'intérêt par rapport
à l'aspect intégration et aussi la robustesse de l'algorithme face à des changements
de poses ou d'expressions. Les tests d'intégration de cet algorithme ont été faits sur
plusieurs composants, nous allons citer ici quelques travaux eectués. Les composants
cibles utilisés sont soit des FPGA soit des ASIC. On utilise le langage descriptif VHDL
(VHSIC Hardware Description Language) en vue d'utiliser une architecture MIMD
(Multiple Instruction Multiple Data). Cela permet d'avoir des temps de calcul courts
et un traitement en temps réel.
Dans [49], les auteurs ont intégré cet algorithme sur plusieurs processeurs. Leur
système se compose d'une caméra CMOS classique d'une résolution de 320 × 240,
d'une RAM partagée entre les diérents processeurs, une unité de calcul dédiée à la
morphologie, une seconde pour la tache de correspondance et un processeur maître
pour gérer ces diérents composants. Le schéma global est présenté en gure 2.7.
Figure 2.7: Architecture générale du système proposé par Nagel [49]
Dans [60], une architecture de l'EGM avec une analyse multi-résolution avec les
ltres de Gabor a été implémentée. Les auteurs ont utilisé une architecture qui ressemble à celle proposée par USC à savoir un ensemble de 5 résolutions et 8 orientations.
Mais, ils ont diminué le nombre de points caractéristiques. Ils ne s'intéressent qu'à 7
points féodaux : les centres des yeux, le centre du nez et 4 points sur les bords de la
bouche. L'architecture en pipeline pour le calcul des jets est présentée en gure 2.8 a
2.2. RECONNAISSANCE DE VISAGE EN TEMPS RÉEL
21
été implémentée sur un FPGA VirtexII de Xilinx. Cette Architecture fonctionne avec
Figure 2.8: Architecture de Calcule des Jets
une fréquence de 100MHz ce qui permet de travailler avec un taux d'image de 70
trames par seconde et cela en n'utilisant que 7 points caractéristiques et en intégrant
10 unités de traitement des ltres de Gabor. Les ltres de Gabor sont enregistrés sur
12bites dans des RAM. Le calcul des ltres se fait au préalable sur MATLAB pour
déterminer la bonne précision du format à virgule xe.
Une autre architecture a été proposée dans [50], où l'on partage le calcul entre
FPGA et microprocesseur d'un ordinateur. Le schéma global est présenté en gure 2.9.
Les auteurs ont exploité l'architecture de calcul parallèle du FPGA pour faire la correspondance (Matching) et ainsi améliorer le temps de calcul. Avec un PC équipé d'un
processeur Pentium M de fréquence 1GHz et un FPGA ALTERA cadencé à 48MHz,
toute la chaîne de reconnaissance s'exécute en 1ms.
2.2.4 Comparaison des algorithmes
Les algorithmes de reconnaissance précédemment décrits ne sont pas tous équivalents. En eet, outre le fait qu'ils se basent sur des approches d'analyse diérentes,
leurs performances de reconnaissance et leur robustesse face aux variations sont différentes. Il faut noter que les tests mentionnés dans les diérentes publications citées
[82][33][38] sont évalués sur des bases privées, généralement de faible taille. La reconnaissance par réseau de neurones a été testée sur un base de 8 vidéos, mais validé
22
CHAPITRE 2. ÉTAT DE L'ART
Figure 2.9: Système de reconnaissance de visage temps réel : ux de donnée
préalablement sur la base Olivetti Att - ORL. C'est une base qui se compose de 40
personnes et chaque personne possède 10 images. Avec un modèle construit avec 5
images on obtient un taux de reconnaissance de 97.1%. Plusieurs publications ont
critiqué la sensibilité de cette méthode par rapport aux variations d'illumination et de
pose si le modèle d'apprentissage ne contient pas susamment d'images variées. Le
second algorithme qui est l'analyse par composante principale est un algorithme considéré comme l'approche de base (baseline). Elle fut bien utilisée au début mais a vite
montré ses limites vis à vis de l'illumination. La présentation de l'espace des visages
utilisée est aussi une limitation de la méthode. En eet, on ne cherche qu'à renforcer
la diérence entre les personnes[61]. Cela donne des faux rejets assez importants lors
de changements d'illumination ou de pose. Durant la compétition de FRGC (Face Recognition Grand Challenge), il est utilisé comme algorithme de référence pour toute
comparaison. Mais, on peut choisir aussi la LDA (Linear Discriminant Analysis) ou
la ICA (Independent Component Analysis) comme algorithme de base. L'approche de
comparaison élastique des graphes a été testée sur une base plus importante XM2VTS
[48]. L'auteur montre que, sur cette base de 295 personnes, en utilisant l'analyse morphologique, on obtient un taux de EER de 13%, alors qu'en utilisant l'analyse de
Gabor, on obtient un taux bien plus faible de 5%. Cela montre l'ecacité de l'analyse
de Gabor et son intérêt.
2.3 Capteurs Intelligents
Les algorithmes de reconnaissance de visage sont assez complexes. Ils demandent
beaucoup de ressources tant en mémoires ou qu'en unités de traitement. Cela se traduit aussi par une consommation d'énergie assez importante. Pour cela, nous allons
améliorer la qualité d'acquisition et ajouter des traitements dans le capteur pour al-
2.3. CAPTEURS INTELLIGENTS
23
léger le traitement par la suite. Il vaut mieux "Analyser l'image là où elle est acquise
pour n'en retenir et en transmettre qu'un extrait pertinent pour la tâche de vision en
cours" [8]. C'est le principe des rétines CMOS ou des capteurs intelligents. L'emploi
du terme rétine est une analogie au terme rétine biologique. En eet, de nombreux
traitements implémentés dans un capteur sont inspirés des rétines naturelles (biologiques) qui associent capture avec traitement de l'information à travers les structures
neuronales.
2.3.1 Variables analogiques
Le traitement in-situ des signaux issus de la phototransduction nous amène à nous
conformer à leur caractère continuellement variable que ce soit en amplitude ou en
temps. Cela nous conduit vers une approche analogique de leur exploitation. Sur un
circuit VLSI CMOS, plusieurs grandeurs physiques peuvent représenter l'information.
Chacune possède les caractéristiques suivantes [8] :
Tension : On peut les distribuer sur les câbles ou les mémoriser dans des capacités facilement. Elles sont principalement utilisées pour commander les transistors
MOS (à eet de champs) et bipolaire.
Courant : Issu des transistors, il est facile de l'additionner par la loi de noeuds
grâce à la conservation de la charge. Il tient aussi un rôle important dans les
techniques en mode courant.
Charges : C'est le résultat de l'intégration temporelle dans le temps du courant,
ou du stockage d'une tension dans une capacité. On peut facilement transporter
les charges grâce aux techniques CCD, ou les additionner, soustraire par des
techniques de capacités commutées.
2.3.2 Opérateurs analogiques
Opérateurs locaux
Ce sont les opérateurs qui se trouvent au sein du pixel. En eet, on peut utiliser
ces opérateurs pour amplier, par compensation ou par association de transistors pour
eectuer des opérations simples.
Au sein du transistor : En utilisant la caractéristique courant-tension exponentielle du
transistor saturé en faible inversion, on peut eectuer une compression logarithmique
des photocourants.
Compensation : Plusieurs composants et opérateurs analogiques nécessitent un réglage
individuel. Il est alors utile de compenser les dispersions en mémorisant ces réglages au
sein du pixel sous forme de charges. Association : En associant des transistors, on peut
avoir des fonctions très utiles. La paire diérentielle en gure 2.10 a) divise le courant
24
CHAPITRE 2. ÉTAT DE L'ART
I0 en deux courants I1 et I2 en fonction de la diérence de tension ∆V . La diérence
de courant ∆I = I2 − I1 peut s'exprimer comme le produit de I0 f (∆V ) où f est
une fonction sigmoïde. Si les transistors sont identiques, f est impaire et sa partie
centrale est approximativement linéaire, on peut exploiter le schéma pour eectuer
des opérations de multiplication. Le miroir de courant en gure 2.10 a) duplique le
courant Iin en Iout . En combinant les deux schémas, on peut avoir directement la
diérence ∆I .
Figure 2.10: a)paire diérentielle ; b) Miroir de courant [8]
Opérateurs collectifs
La vision par ordinateur met en oeuvre un nombre important de données reliées
entre elles. L'analyse de ces données nécessite des opérateurs à plusieurs entrées.
Alors que le traitement numérique ne possède que des opérateurs à faible nombre
d'entrées, le traitement analogique possède des dispositions naturelles à combiner un
grand nombre de données simultanément. C'est le calcul collectif. On met en oeuvre
des équations physiques pour résoudre des problèmes électroniques. On présente dans
la section suivante quelques types de rétines intégrant ces traitements collectifs
2.3.3 Rétines CMOS
Il existe en imagerie plusieurs applications des rétines CMOS. Les améliorations
qu'elles apportent sur la qualité d'image et sur l'extraction de l'information utile réduisent la complexité algorithmique du traitement et par suite la consommation du
2.3. CAPTEURS INTELLIGENTS
25
processeur. Parmi ces rétines, on en trouve qui eectuent un traitement spatial ou un
traitement spatio-temporel.
Extraction de caractéristiques
L'extraction de caractéristiques est l'une des tâches les plus importantes dans la
vision articielle. D. Marr [45] montra que les ltres gaussiens sont bien adaptés à
l'extraction des primitives dans une image. En eet, un ltre Gaussien possède le
gabarit passe-bas spatial le plus raide possible qui n'introduit pas des oscillations
dans l'image ltrée. Cette propriété du ltre Gaussien permet une analyse d'image
sur diérentes échelles spatio-fréquentielles an de mettre évidence les informations
pertinentes. Plusieurs approches ont été étudiées pour implémenter le ltrage gaussien
dans les rétines. Les premières mettaient en oeuvre un réseau de résistance. Mais pour
obtenir un noyau gaussien, il faut un réseau réseau négatif ce qui perturbe la stabilité
du système. Une autre approche consiste à implementer un réseau RC dynamique
dont la variance dépend de la constante de temps du réseau et du temps. La faible
constante de temps de ces réseaux pose un problème de numérisation après. Une
solution proposée par Y. Ni [54] est d'utiliser un réseau de capacité résolvant l'équation
de propagation de la chaleur. La structure de ce réseau à 1D est présentée en gure
2.11. Pendant la première phase, les capacités Cb sont court-circuitées. Elles sont ainsi
déchargées. Durant la seconde phase, ces capacités (Cb ) sont reliées aux capacités
Cd formant ainsi un réseau modélisant une convolution gaussienne. L'équation de
Figure 2.11: Structure d'un réseau capacitif 1D à convolution Gaussienne
conservation de la charge dans un noeud n est :
Cd Vn (t + 1) + Cb (Vn (t + 1) − Vn−1 (t + 1)) + Cb (Vn (t + 1) − Vn+1 (t + 1)) = Vn (t)Cd
26
CHAPITRE 2. ÉTAT DE L'ART
Ce qui nous donne :
(Vn+1 (t + 1) + Vn+1 (t + 1) − 2Vn (t + 1)) =
Cd
(Vn (t + 1) − Vn (t))
Cb
Cette expression peut être simplier par :
∂2V
Cd ∂V
=
∂x2
Cb ∂t
Cette équation est de la même forme que l'équation de propagation de la chaleur dont
la solution est sous la forme :
r
2tCb
V (x, t) = V (x, 0) ⊗ G(n, σ =
)
Cd
où ⊗ est l'opérateur convolution, et G est la fonction gaussienne dénie par :
G(n, σ) =
1
−x2
exp( 2 )
σ
4σ
On peut généraliser cette approche en 2D avec le schéma suivant : Pour réaliser un
Figure 2.12: Structure d'un réseau capacitif 2D à convolution Gaussienne
ltrage DoG qui s'assimile au traitement biologique des rétines [45], il faut soustraire
le résultat de deux ltres gaussien. Cela peut se faire soit par échantillonnage du
réseau capacitif en deux itérations diérentes et soustraire les deux échatillons ou par
construction de deux réseaux capacitifs diérents et soustraire leurs réponses.
Une autre approche se base sur les opérations inter-pixel de soustraction ou d'addition pour détecter les contours [74], ou pour extraire le contraste dans une image
2.3. CAPTEURS INTELLIGENTS
27
[65] par limitation du temps d'intégration d'un pixel selon la valeur du photocourant
de ses voisins. Des calculs spaciaux peuvent aussi être eectués sur la matrice comme
les moyennes, les rotations, les ltres de déformation. Cela est mis en oeuvre grâce
à l'intégration de processeur de type SIMD (Single Instruction Multiple Data) qui
traite l'image de manière parallèle [59]. Toutefois cette dernière méthode présente
l'inconvénient de la nécessité d'un circuit de pilotage important pour les séquences
d'instruction.
Adaptation aux conditions lumineuses
Ces rétines peuvent s'adapter aux conditions d'illumination pour donner une meilleure
image. Cette adaptation peut se faire de deux manières : soit par changement du temps
d'intégration des pixels, soit par compression du photocourant par capture logarithmique.
T. Hamamoto a proposé un capteur d'image CMOS où le temps d'exposition de
chaque pixel est contrôlé [26]. Le temps d'intégration se fait ligne par ligne.
En traitement d'image, nous savons que l'égalisation d'histogramme est une méthode
de restauration de contraste, quand la scène est mal éclairée. La rétine à égalisation
d'histogramme réalisée par Y.Ni [56] montre l'adaptabilité de la méthode pour l'acquisition d'une image dans une large plage dynamique. Le principe de la rétine est
présenté en gure 2.13. Les sorties des photorécepteurs primaires (photorécepteur en
mode d'intégration) (P(i,j)) sont comparées avec le signal de référence rampe. Les
sorties des comparateurs contrôlent le générateur de courant constant et également
l'échantillonneur - bloqueur à l'entrée de la mémoire analogique. La rampe provoque le
basculement successif des comparateurs, et l'ordre de basculement est lié à l'amplitude
des signaux appliqués. Les générateurs de courant constant des cellules commutées
sont connectés sur la même ligne. Par conséquent sur cette ligne on construit un
histogramme cumulé des pixels commutés de l'image concernée. Instantanément ce
signal d'histogramme cumulé en courant, est converti en tension distribuée à nouveau
à tous les pixels. Le basculement du comparateur échantillonne ce signal, le mémorise
dans la mémoire analogique locale. La simultanéité entre la construction d'un histogramme cumulé et l'échantillonnage de cet histogramme forme une image de sortie
régularisée dans la mémoire analogique.
La capture en mode logarithmique exploite la relation de nature exponentielle
entre le courant drain ID d'un transistor MOS et la tension grille/source VGS en
régime sous-seuil. L'inconvénient de ce type de capteur était le rapport signal/bruit
assez faible dû à l'amplitude assez faible du signal photoéléctrique dans des scènes
normales. Les travaux de K. Matou [46], ont permis d'éliminer ces bruits causés par les
transistors de lecture et de reset en générant une référence noire au sein du pixel. Cela
28
CHAPITRE 2. ÉTAT DE L'ART
Figure 2.13: Principe d'un photorécepteur à égalisation d'histogramme intégré
a pu être réalisé grâce au fonctionnement en mode photovoltaïque de la photodiode
qui élimine le transistor de conversion et ainsi une des sources principales de bruit
spatial xe. La sortie de la photodiode est donnée par :
VS = Vt ln(
Iph + Is
)
Is
L'architecture du pixel est présentée en gure 2.14.
Figure 2.14: Schéma électrique du pixel en mode logarithmique [53]
Les rétines CMOS peuvent être d'une grande ecacité dans le traitement d'image,
vu la qualité de l'image acquise et la préservation de l'information utile. Nous allons
voir par la suite un exemple d'amélioration des acquisitions par la vision active. La
capture d'image est alors faite en proche infrarouge pour s'aranchir des eets de
l'illumination.
2.4. RECONNAISSANCE DE VISAGE EN INFRAROUGE
29
2.4 Reconnaissance de visage en Infrarouge
La luminosité est l'un des problèmes les plus contraignants pour les algorithmes
de reconnaissance de visage [4]. Le changement de condition d'éclairage détériore les
performances des systèmes de reconnaissance. L'amélioration de la qualité d'image
acquise est une des solutions proposées. En se basant sur les rétines électroniques,
nous pouvons nous aranchir des eets indésirables des changements d'illumination.
Nous allons nous intéresser dans ce qui suit aux acquisitions actives comme moyen
d'éliminer l'illumination ambiante.
Figure 2.15: Spectre électromagnétique
La lumière visible occupe une petite partie du spectre électromagnétique (gure 2.15). Le spectre visible occupe la bande de longueur d'onde entre 0.4µm et
0.7µm au dessous de 0.4µm commence le domaine de l'ultraviolet et au delà de
0.7µm c'est le domaine de l'infrarouge (IR). Celui ci peut être divisé en 3 : proche
infrarouge de 0.4µm à 2.5µm, IR moyen entre 2.5µm et 25µm et IR lointain entre
25µm et 50µm. La capture des ondes en proche infrarouge peut se faire par les capteurs d'images classiques : les caméras CCD ou CMOS. En eet, le Silicium restes
sensible à ces longueurs d'onde. Mais plus on s'éloigne du domaine visible moins on
capte les ondes infrarouges. Le proche infrarouge est rééchi par la peau au niveau
de l'épiderme alors que le visible est rééchi à la surface de la peau. Une image en
30
CHAPITRE 2. ÉTAT DE L'ART
proche infrarouge contient alors moins de texture de la peau que les images en lumière
visible. L'acquisition de l'IR moyen et lointain (infrarouge thermique) est faite par des
capteurs thermiques. Les cellules photo-sensibles à ces longueurs d'onde ne sont plus
à base de Silicium mais d'un mélange de métaux tel que le mercure-cadmium-telluride
(capteur HgCdTe) ou Indium Gallium Arsenide (InGaAs). La capture thermique est
une acquisition passive : on capte les ondes générées par la scène. Les images en infrarouge thermique ne sont pas inuencées par l'éclairage, mais plutôt par la température
des corps. Ce type de capture est utilisé pour la vision nocturne.
Le corps humain émet des ondes en IR moyen et lointain. Certains chercheurs ont
voulu exploiter cette caractéristique pour s'aranchir des conditions d'illumination et
faire de la reconnaissance de visage avec des images thermiques. Mais, il faut noter
que les lunettes forment un obstacle pour les ondes thermiques. Wider et al [79] montrèrent que, dans le cas où il y a des variations d'illumination, les performances des
algorithmes de reconnaissance sur images thermiques sont plus robustes que celles
sur des images en visible. Mais, quand on a une variation temporelle, les images thermiques sont moins stables et les performances des algorithmes chutent [13]. Les tests
de comparaison entre les images visibles et thermiques ont été multiples et eectués
sur plusieurs scénarios d'acquisition. A l'université Notre Dame [14], on a acquis une
base de donnée comprenant 240 sujets qui ne portent pas de lunettes. Ces acquisitions
ont été réalisées à l'intérieur. Socolinsky et Selinger [72] ont acquis une base donnée
dans un contexte opérationnel avec des images à l'extérieur et à l'intérieur. La base
de donnée contient 385 sujets. Les taux de reconnaissance se dégradent quand on
compare les images à l'intérieur à celles acquises en extérieur. Mais les tests avec des
images thermiques donnent de meilleures performances que les tests faits avec les
images en visible. Pour cela, des travaux de fusion des performances des images en
visible et en thermique pour améliorer les taux de reconnaissance ont été eectués [10]
et cela a donné une amélioration de 30% par rapport aux performances de l'algorithme
avec des images visible. L'algorithme utilisé pour les deux types d'images est l'analyse
par composante continue avec le calcul de la distance de Mahalanobis entre vecteurs
projetés. Les vecteurs de la base sont adaptés à chaque type d'image.
Ces travaux montrent bien la stabilité des images thermiques vis-à-vis des changements d'illumination. Mais, les capteurs thermiques sont bien plus chers, et consomment
beaucoup d'énergie. Nous nous sommes intéressés à l'acquisition en proche infrarouge,
où l'utilisation des capteurs d'image classiques est possible. La gure 2.16 montre la
sensibilité d'un capteur CCD.
La lumière proche infrarouge a été utilisée en premier par Li et Liao [39], pour la
détection des yeux. Le procédé de capture se base sur le système de vision nocturne de
SONY (NightShot), mais ce principe ne fonctionne qu'en faible illumination. Dowdall
2.4. RECONNAISSANCE DE VISAGE EN INFRAROUGE
31
Figure 2.16: Sensibilité d'un capteur CCD
et al. [16] ont conçu un système d'acquisition qui se compose de trois caméras : deux
thermiques (InGaAs) et une caméra classique. La diérence de la réectance de la
peau dans les diérents domaines a permis la détection du visage. En eet, la peau
rééchit bien les ondes de longueur inférieure à 1.4µm, mais absorbe les ondes qui
ont une longueur d'onde supérieure à cette valeur. Une diérence entre les deux ux
permet de détecter les visages. Les auteurs ont appliqué ce principe pour compter le
nombre de passagers dans un véhicule, ou détecter les "faux visages" (les photos). Et
par des opérations de projections, ils ont pu faire la détection des yeux grâce à cette
diérence de réexion.
Stan et al. [41], ont conçu un système d'acquisition en proche infrarouge qui se
base sur des caméras CCD classiques. Leur principe est d'éliminer la lumière ambiante
par un ltre qui coupe la lumière visible (400nm-700nm) et d'ajouter des LED infrarouges qui émettent une lumière de longueur d'onde 850nm. Ainsi la lumière acquise
est majoritairement celle émise par les LEDs. Le système d'acquisition se compose
alors d'un capteur, d'un ltre et d'une carte de conversion A/N. Les images acquises
ont une résolution de 640×480. Les auteurs montrent dans ce travail, que les images
acquises en proche infrarouge contiennent toutes les informations nécessaires pour
caractériser un visage. Une transformation monotone est appliquée sur les images acquises, puis ils eectuent un algorithme d'extraction de caractéristiques : LBP (Local
Binary Pattern) qui leur donne une représentation invariante à l'illumination.
32
CHAPITRE 2. ÉTAT DE L'ART
Zou [86] a utilisé la diérentiation entre deux acquisitions pour éliminer la lumière
ambiante. On acquiert deux images : une classique, puis une seconde avec un éclairage
en infrarouge additionnel. Le circuit de contrôle de gain automatique du CCD a été
désactivé pour ne pas atténuer l'illumination additionnelle du ash proche infrarouge.
Ce circuit atténue le signal de sortie en présence d'une forte illumination. En cas
de faiblesse de l'éclairage ambiant, il tend à amplier le signal de sortie du capteur.
Désactiver ce circuit (AGC - Automatic Control Gain) permet alors d'avoir le vrai
niveau du signal et ainsi la vraie quantité de lumière captée. La diérence entre les
deux images est ensuite eectuée sur ordinateur. On note le temps important entre
l'acquisition des deux images qui fait apparaître un ou dû au mouvement dans la
scène. Un traitement est alors eectué par la suite pour le supprimer. Avec ce capteur,
Zou a acquis une base de donnée de visage composée de 40 sujets en deux sessions.
Pendant chaque session l'acquisition contient des variations d'illuminations avec un
éclairage additionnel à droite, à gauche, en haut et de bas. L'auteur a exploité la
réexion des IR sur la pupille pour pouvoir construire un système de détection des
yeux basé sur l'algorithme SVM. L'algorithme de vérication des visages utilisé par la
suite est celui de FisherFace avec une base d'apprentissage composée des images de
visage de XM2VTS. Ces travaux n'ont pas fait l'objet d'une intégration, mais ce sont
quie se rapprochent le plus de ceux qui sont présenté dans cette thèse.
2.5 Conclusion
Dans ce chapitre, nous avons présenté l'architecture générale des systèmes de reconnaissance de visage, les diérentes étapes d'enregistrement, de normalisation et
de comparaison des caractéristiques extraites. Nous avons présenté uniquement les
travaux dans lesquels l'intégration d'algorithme de reconnaissance de visage sur composant programmable a été réalisée. Il faut noter que la modalité du visage est sujette
à beaucoup de variations liées soit aux conditions d'acquisition soit aux variations temporelles qui détériorent considérablement les performances de reconnaissance. Améliorer la qualité de l'acquisition peut alors améliorer les performances d'un système de
reconnaissance. C'est pourquoi nous avons présenté aussi les rétines électroniques qui
peuvent donner une solution à l'élimination de certaines variations liées à l'acquisition,
comme celles liées à la variation d'illumination. Nous allons nous intéresser dans ce qui
suit à la description des capteurs que nous avons réalisés pour éliminer l'illumination
ambiante.
Chapitre 3
Capture de visage temps réel
On a vu que l'illumination est un des facteurs les plus inuents sur les performances
d'un système de reconnaissance de visage. Plusieurs pré-traitements sont eectués
sur les images acquises pour éliminer l'eet de l'illumination. Ces algorithmes dont la
complexité augmente avec l'amélioration qu'ils peuvent apporter sont assez diciles
à intégrer sur SoC. Nous proposons des solutions intégrées dans le capteur pour avoir
des images indépendantes de l'illumination ambiante.
3.1 Introduction : Système Actuel et problèmes associés
Les capteurs d'images se basent sur l'eet photoélectrique découvert en 1887
par le physicien Hertz. Les photons captés génèrent des paires électrons-trous dans
le semi-conducteur. La méthode de collection de ces électrons et de leur transfert
au sein de ma matrice dière selon le type de capteurs. On trouve deux familles de
capteur : les imageurs CMOS et les imageurs CCD. Le capteur CCD était le capteur
le plus répandu sur le marché des imageurs jusqu'aux début de cette décennie. Il se
caractérise par le grand rapport signal sur bruit et la qualité des images acquises.
Le capteur CMOS malgré son apparition assez précoce en 1963 [67], n'a connu de
succès commercial que récemment grâce à la forte densité d'intégration qui a permis
la réduction de la taille des pixels et l'augmentation du rapport signal sur bruit. Il a
l'avantage d'avoir un faible coût de fabrication et une consommation réduite. Nous
présenterons ici ces deux familles de capteurs.
33
34
CHAPITRE 3. CAPTURE DE VISAGE TEMPS RÉEL
3.1.1 Capteur CMOS
Comme tous les imageurs, le capteur CMOS est basé sur le principe de conversion
photon-électron. Les charges seront collectées par un champ électrique pour former
une image électronique. Mais, la collecte et le transfert de ces charges est direct via un
bus et un système d'adressage/décodage. L'architecture générale d'un capteur CMOS
est présentée en gure 3.1.
Figure 3.1: Architecture générale d'un capteur CMOS
La cellule photosensible peut diérer d'un capteur à autre, on peut trouver des
diodes à jonction, des "photogate", ou des photoMOS, etc.
Capteur d'image CMOS à pixel passif - PPS
Le premier pixel passif a été suggéré par G. Weckler en 1967 à Fairchild [78] où
il a utilisé une jonction PN fonctionnant en mode intégration pour capter le ux de
photons. Les paires d'électron-trou générées par les photons incidents sont séparées par
un champs électrique dans une jonction. Les électrons sont collectés vers une capacité
de jonction Cj . La lecture directe de cette charge donne une image électronique. Un
transistor d'accès est ajouté pour la lecture des diérents pixels de la matrice et le
transfert de la tension Vout sur le bus analogique comme le montre la gure 3.2.
Mais cette architecture soure de la capacité parasite du bus de lecture. Cela génère
beaucoup de bruit KTC et réduit le signal vidéo. Une solution proposée par [36] [57]
est d'intégrer un amplicateur par colonne. Cet amplicateur de charge est placée à
la n de chaque bus colonne de la matrice. Cette solution a permis d'améliorer la
rapport signal sur bruit des imageurs CMOS en diminuant le bruit de commutation
(KTC)
3.1. INTRODUCTION : SYSTÈME ACTUEL ET PROBLÈMES ASSOCIÉS
35
Figure 3.2: Structure schématique d'un pixel PPS
Capteur d'images CMOS à pixel actif - APS
Ce sont les capteurs CMOS les plus répandus. On compte plusieurs structures,
qui dièrent par leur mode de transfert des charges collectées par la photodiode.
On trouve plusieurs modes de fonctionnement. On cite ici le mode d'intégration du
photocourant, le mode courant et le mode logarithmique.
Mode d'intégration Courant : La structure élémentaire d'un pixel est montrée en
gure 3.3. Le pixel est composé d'un transistor de reset T1 , d'un transistor du signal
T2 et d'un transistor de signal T3 . Le fonctionnement du pixel est :
1. La photodiode est initialisée par le transistor T1 . Après cette initialisation, la
tension sur la photodiode est de Vrst . La tension aux bornes de Cj est xée à
la même valeur.
2. La photodiode intègre les charges photoélectriques pendant le temps d'exposition. La tension sur la photodiode chute selon la charge accumulée. En eet,
sous l'action de Iph la capacité Cj se décharge progressivement. Cela entraine
une décroissance de la tension Vd :
Vd (Texp ) = Vrst −
1
Cj
Z
Texp
0
Iph (t)dt
Pour connaitre la tension équivalente à la quantité de charge accumulée durant
le temps d'exposition il faut faire la diérence entre Vrst et Vd (Texp ). Pour une
lumière statique cela nous donne :
∆Vd = Vrst − Vd (Texp ) =
Iph Texp
Cj
3. La tension de la photodiode est lue via les transistors T2 et T3 . Le transistor T3
a pour rôle de sélectionner le pixel pour le transmettre sur le bus.
36
CHAPITRE 3. CAPTURE DE VISAGE TEMPS RÉEL
La diérence avec le pixel PPS est la présence des transistor T2 et T4 qui font fonction
d'amplicateur suiveur de tension. On voit que dans cette architecture la capacité Cbus
n'agit pas sur la photodiode.
La photodiode joue ici deux rôles : Elle collecte des charges photoélectriques et
convertit la charge en tension. Pour maintenir une bonne sensibilité du capteur, il
faut diminuer la capacité sur la photodiode. Une technologie CMOS très ne permet
une bonne sensibilité et un facteur de remplissage important. Actuellement le taux de
remplissage est entre 25% et 50%, cela reste similaire à un capteur CCD à transfert
interligne.
Figure 3.3: Structure du pixel en mode d'intégration du photocourant
Mode courant : Dans ce mode, au lieu de convertir la charge accumulée en tension,
nous allons l'exploiter sous forme de courant. Ce mode est moins utilisé que le mode
d'intégration. Il est utilisé lorsqu'on a un besoin de lecture en continu de l'information. Cette architecture nécessite un convoyeur de courant ou un miroir de courant
qui permettent de transmettre le photocourant. Compte tenu du faible courant, ces
structures ont une grande impédance d'entrée et amplient le signal d'entrée. L'architecture d'un pixel à base d'un miroir simple composé de transistors P est présentée
en gure 3.4.
Cependant ce mode demande beaucoup d'attention lors de la conception à cause
de la faiblesse du photocourant qui atteint quelques picoampères pour une scène à
éclairage ambiant de bureau. Les structures d'amplications réduisent dans ce cas le
taux de remplissage et le bruit spatial xe est compliqué à supprimer.
3.1. INTRODUCTION : SYSTÈME ACTUEL ET PROBLÈMES ASSOCIÉS
37
Figure 3.4: Architecture d'un pixel en mode courant
Mode logarithmique : Dans ce mode de fonctionnement, on exploite la relation exponentielle qui existe entre le courant drain Id d'un transistor MOS et la tension
grille/source VGS . Cela permet d'avoir une grande dynamique allant jusqu'à 120dB ,
s'approchant ainsi de la dynamique de l'oeil humain. La structure du pixel logarithmique la plus utilisée est montrée en gure 3.5. Dans ce schéma, le transistor M 1
opère dans la région de faible inversion. Le courant de drain Id est le photocourant. En
utilisation normale ce courant est de quelques nA. La relation entre Id et la tension
VGS est :
VGS
V
− DS
Id = Is e κVt (1 − e Vt )
Dans un transistor CMOS, le courant de fermeture Iof f n'est pas négligeable dans des
applications à courant faible. Le courant dans le drain est alors : IDA = ID + Iof f .
V
− DS
Quand la tension VGS >> VT , (1 − e Vt ) ∼
= 1. Dans ce cas, la tension VGS du
transistor M1 s'écrit en fonction du courant photoélectrique Iph :
VGS (Iph ) = κVt log(
Iph + Iobs − Iof f
)
Is
Où κ est le facteur de l'eet du substrat et il varie entre 1 et 2 en fonction des
paramètres du procédé, Iobs est le courant d'obscurité de la photodiode et Is =
−
Vth
2
κVt est le courant du canal risiduel pour une tension V
µn Cdep W
G = κVS et
L Vt e
VD >> VS [64].
La tension VD se calcule suivant :
VD (Iph ) = VDD − κVt log(
Iph + Iobs − Iof f
)
Is
3.1.2 Les capteurs CCD
Le capteur CCD se base sur les travaux réalisés dans les années soixante-dix au
sein des laboratoires Bell par les ingénieurs W. Boyles, G. Smith et G.G. Amlio [11].
38
CHAPITRE 3. CAPTURE DE VISAGE TEMPS RÉEL
Figure 3.5: Architecture d'un pixel logarithmique utilisant une photodiode en
mode photocourant
Au début, ces travaux ont été utilisés pour réaliser les lignes à retard, des ltres
analogiques, etc. Mais ce concept a rapidement évolué vers des applications d'imagerie.
Le premier capteur CCD a vu le jour dans les laboratoires Fairchild Electronics en 1974.
Ce capteur avait une résolution de 100 × 100 pixels.
Un capteur CCD se compose d'une zone photosensible connecté à une capacité
MOS. La capacité MOS est la cellule de base d'un CCD (gure 3.6). Elle est composée
de d'une électrode grille M, d'un substrat semi-conducteur de type P relié à la masse
et d'une couche isolante SiO2.
Figure 3.6: La structure d'une capacité MOS
Quand on applique une tension à la grille Vg supérieure à une tension de seuil
(Vth ), cela crée un champ électrique qui repousse les charges libres du substrat et
forme ainsi sous l'isolant une région de déplétion (appelée zone de charge d'espace
ZCE). La profondeur de la ZCE est contrôlée par la tension Vg (gure 3.7).
Si on met une deuxième capacité MOS à côté de la première telle que leurs zones
de déplétion peuvent se toucher, nous pouvons ainsi transférer les charges accumulées
de la première capacité à la seconde en créant des puits de potentiel successifs. L'ap-
3.1. INTRODUCTION : SYSTÈME ACTUEL ET PROBLÈMES ASSOCIÉS
39
Figure 3.7: Stockage des charges dans une capacité MOS
plication de voltage adéquat permet de créer des puits de potentiel qui permettent de
piéger les charges accumulées. La gure 3.8 montre ce principe.
Figure 3.8: Puit et barrière de potentiel dans une capacité MOS
La diculté de ce système est la lecture de l'ensemble des cellules du capteur. Pour
cela, on utilise le dispositif CCD. La structure du CCD est montrée en gure 3.9. Elle
est formée d'une série de registres à décalage qui forment des colonnes et une ligne.
Cela permet le déplacement des charges accumulées après la période d'exposition.
Le transfert des charges dans une matrice CCD se fait en deux phases :
1. Décalage vertical : cette phase charge la ligne vers le bas de l'image dans la
matrice vers la seconde phase.
2. Décalage horizontal : durant cette étape, les charges sont décalées dans le sens
de la ligne vers le détecteur de charge, pixel par pixel.
40
CHAPITRE 3. CAPTURE DE VISAGE TEMPS RÉEL
Figure 3.9: Architecture générale d'un capteur CCD
Ce transfert de charge est contrôlé par une horloge à phases multiples. Le nombre
de phases varie selon le type de CCD. Le capteur à 4 phases (4φ) est le type le plus
répondu. Dans ce cas, à chaque pixel correspond 4 capacités. Si un haut voltage est
appliqué sur une de ces capacités une zone de déplétion se crée sous celle-ci, une
tension faible appliquée sur les capacités environnantes permet la formation d'une
barrière de potentiel. Le timing de la gure 3.10 décrit les diérentes étapes de ce
transfert. On maintient les phases φ1 et φ2 à un niveau haut et φ3, φ4 à un niveau bas.
La zone de déplétion créée permet la collecte des charges du pixel Pn. Si on change
la polarité des phases φ1 et φ3 (φ1 niveau bas et φ3 au niveau haut) la charge du
pixel va se déplacer sous les capacités correspondantes à φ2 et φ3. On change après la
polarité de φ2 et de φ4, ainsi la charge progresse sous les capacités correspondantes à
φ3 et à φ4. Ce processus est répété jusqu'à ce que les charges soient sous les capacités
du pixel Pn+1 complétant ainsi un cycle de transfert.
Le détecteur de charge convertit la quantité de charge en une tension selon un
facteur de conversion constant. Cette tension est la sortie du capteur CCD. On trouve
3 architectures principales des CCD :
1. transfert de trame progressif
2. transfert de trame parallèle - série
3. transfert de trame interligne
3.2. CAPTEURS D'IMAGE DÉDIÉS
41
Figure 3.10: Transfert de charge avec un CCD à 4 phases
3.2 Capteurs d'image dédiés
Pour améliorer les performances des systèmes de reconnaissance de visage, nous
nous sommes intéressés au procédés permettant de limiter l'inuence de l'illumination.
L'acquisition active est la solution idéale pour avoir une image riche en information sur
la texture et qui peut être indépendante de l'illumination. En eet, la vision passive telle
que celle correspondant à un capteur thermique n'est pas ecace en cas de variation
temporelle. Nous présenterons deux capteurs qui éliminent l'illumination ambiante
avec deux méthode diérentes. Le premier capteur que nous avons utilisé a été conçu
dans notre laboratoire par Prof. Yang Ni [55]. Ce capteur intègre dans la matrice une
fonction diérentielle qui permet l'élimination de la lumière ambiante. Le deuxième
capteur se base sur un capteur CCD qui délivre une image en proche-infrarouge et une
seconde en visible simultanément. Ce second capteur diminue l'eet de l'illumination
par la réduction du temps d'exposition.
3.2.1 Capteur diérentiel
La vision active est l'acquisition d'une image avec une source de lumière contrôlée.
Le capteur diérentiel, présenté ici, supprime l'illumination ambiante pour n'acquérir
que la lumière contrôlée. Pour cela, le capteur acquiert deux photos successives la
première avec une source de lumière contrôlée et la seconde sans source de lumière
42
CHAPITRE 3. CAPTURE DE VISAGE TEMPS RÉEL
additionnelle. En eectuant la diérence entre ces deux images, nous éliminerons de
l'image tous les objets éclairés seulement par la lumière ambiante. Nous avons choisie
une source de lumière émettant en proche infrarouge pour ne pas gêner l'utilisateur.
La diérence entre deux images acquises dans deux conditions d'éclairages peut
se faire de deux manières possibles : soit hors du capteur soit dans le capteur. La
première possibilité bien que simple à synthétiser présente un inconvénient majeur,
à cause des changements spatio-temporelle qui peuvent apparaître durant les deux
acquisitions successives. En eet, le temps entre l'acquisition des deux scènes peut
être important vu les opérations eectuées de numérisation et de transmission de
l'image. Un changement spatial peut alors se produire ce qui causerait un ou lors de
la diérentiation. La deuxième solution est d'eectuer la soustraction au sein même
du capteur. Cette opération se fait donc analogiquement. Le premier capteur dédié à
cette tâche est réalisé par Miura [47]. L'auteur a intégré dans le capteur deux cellules
mémoire analogique dans chaque pixel. L'opération de diérence se fait sur la colonne
lors du chargement de l'image. Cette approche a permis une bonne suppression de la
lumière ambiante, mais la présence de deux mémoires au sein du pixel, nous donne un
pixel de taille importante (47.5µm2 × 47.5µm2 avec une technologie de 0.6µm). Le
capteur diérentiel développé par Prof. Yang Ni possède une seule mémoire analogique
au sein du pixel. Le pixel est présenté en gure 3.11. Il comporte une photodiode
et une cellule mémoire analogique (MA). La capture de l'image commence par une
initialisation du pixel (Prec) puis un transfert de la charge accumulée (Samp) dans
la mémoire MA. Deux modes de capture sont possibles dans ce capteur à travers les
Figure 3.11: Structure d'un pixel du capteur diérentiel
diérents signaux de contrôle :
1. Toute la matrice est initialisée au même instant et transmise dans la mémoire.
2. L'image est acquise ligne par ligne. Chaque ligne sélectionnée sera initialisée, et
les charges capturées transmises vers un buer.
Ce double fonctionnement nous permettra l'acquisition diérentielle avec un taux de
3.2. CAPTEURS D'IMAGE DÉDIÉS
43
transfert d'image assez important. La structure globale du capteur est donnée en
gure 3.12.
Figure 3.12: Structure du capteur diérentielle [55]
En bas du capteur se trouvent deux buers ligne (LB1 et LB2). Une ligne sélectionnée de la matrice peut être chargée dans un de ces buers. Les signaux RD1 et
RD2 permettent la sélection de ces buers. La sortie de ces lignes buers est l'entrée du bloc diérentiel. Un convertisseur analogique/numérique parallèle à 8bites est
également intégré dans le capteur.
La gure 3.13 montre la séquence de fonctionnement du capteur. En premier lieu,
toute la matrice est exposée avec éclairage ambiant plus celui en proche infra-rouge. Le
temps d'exposition de la matrice est de 50µs. Ce temps est assez pour ne pas causer
de saturation dans les pixels. Le ash en proche infrarouge est synchronisé avec la
période d'intégration. Cela permet de réduire la consommation électrique et d'avoir
un meilleur rendement. En seconde étape, on active séquentiellement l'exposition des
lignes de la matrice. Chaque ligne est chargée dans un buer (LB1) et dans LB2 on
charge la ligne capturée durant la première étape. La diérentiation des deux lignes
nous donne une ligne qui est indépendante de l'illumination ambiante s'il n'y a pas de
changement de scène ou d'éclairage. La taille de la matrice est de 160 × 120 réalisée
44
CHAPITRE 3. CAPTURE DE VISAGE TEMPS RÉEL
Figure 3.13: Principe de fonctionnement du capteur diérentiel
avec une technologie CMOS de 0.5µm. La taille du pixel est de 12µm et un taux de
remplissage de 20%.
Initialement, La caméra était reliée à un ordianteur par une liaison prallèle. Mais vu les
limites de transmission du port et l'apparition d'images saccadées, nous avons conçu
une interface UBS-1 pour l'acquisition des images. Avec ce protocole on peut acquérir
8images/s. Des images acquises avec ce capteur sont présentées en gure 3.14.
Figure 3.14: Examples d'images acquises par le capteur diérentiel
3.2.2 Capteur IRVI
Le premier capteur avec lequel j'ai fait des expériences et que nous venons de
décrire dans la section précédente est un capteur CMOS dédié à la suppression de la
lumière ambiante. Son architecture est unique. Le second capteur que j'ai développé
dans le cadre de ce doctorat se base sur un capteur CCD. On a essayé d'exploiter la
qualité des images issues d'un capteur CCD pour avoir une image plus propre (faible
bruit spatial xe). Pour cela, on a exploité au début une webcam à base de capteur
CCD SONY pour tester notre approche. Nous présentons en premier lieu le principe
3.2. CAPTEURS D'IMAGE DÉDIÉS
45
de fonctionnement puis le capteur.
Principe
Le principe de fonctionnement du capteur est illustré en gure 3.15. Pour réduire l'inuence de la lumière ambiante, nous devons en acquérir la moindre quantité
possible. Et pour pouvoir constituer une image, nous devons ajouter une source d'illumination puissante durant ce faible temps d'acquisition.
Ainsi, le faible temps d'acquisition nous a permis de diminuer l'inuence de la lu-
Figure 3.15: Principe de la Caméra CCD Pulsé
mière ambiante. L'ajout du ash puissant synchronisé avec la période d'exposition du
capteur permet de générer une image qui ne met en évidence que les objets éclairés
par le ash. L'avantage de cette méthode est l'utilisation d'un capteur classique, disponible sur le marché, et une réduction de la consommation électrique du ash par
rapport à une utilisation continue de celui-ci . Pour valider ce principe, on a exploité
une webcam (LOGITECH 4000) à base d'un capteur CCD SONY (ICX098BQ [3]). Le
driver de la webcam nous permet de réduire le temps d'exposition. Nous avons alors
extrait les signaux du shutter électronique et de synchronisation du driver d'horloges
du CCD. Ces signaux permettent le contrôle du ash. La synchronisation du ash
avec la période d'acquisition permet un meilleur rendement des diodes et de passer à
travers un courant important (dans notres cas le courant direct au bornes de chaque
diode est de 1A environ). Ainsi nous avons un meilleur éclairement de la scène. La
gure 3.16 montre l'architecture de ce prototype. Les images issues de ce capteur
(gure 3.17) nous permettent de valider notre approche.
L'utilisation d'une webcam nous a permis de valider notre approche pour l'atténuation
des eets de variations de la lumière ambiante. Mais nous n'avons pas un contrôle de
la durée d'exposition qui se fait à travers le driver de la caméra. Nous avons développé
un second capteur à base d'un module CCD Noir/Blanc. Le module se compose de :
46
CHAPITRE 3. CAPTURE DE VISAGE TEMPS RÉEL
Figure 3.16: Architecture fonctionnelle du prototype à base de webcam
Figure 3.17: Image de sortie du prototype à base de webcam
Le capteur CCD : un capteur CCD interligne d'une résolution de 500x582pixel
Le vertical CCD driver : son but est d'adapter les signaux TTL pour contrôler
les horloges de transfert de charge dans la matrice CCD.
Timing & Synchro generator : ils sont Générés les horloges de transfert de
charges (niveaux TTL)
CCD processor : Il sert à réguler le temps d'exposition, le temps de décharge
du CCD pour une meilleure qualité de l'image.
Le schéma de ce module est présenté en gure 3.18 :
Le signal d'initialisation des photodiodes dans le capteur est le signal Xsub. En
eet, l'initialisation des photodiodes dans un capteur CCD interligne se fait par l'intermédiaire d'un transistor commandé par le signal Xsub, qui décharge la cellule
photosensible. Le schéma d'un pixel est présenté en gure 3.19. Et le signal déclenchant le début de transfert de ligne des charges est le signal Xsg. Ces deux signaux
sont extraits au niveau de l'entrée du driver de l'horloge verticale où les signaux sont
au niveau TTL. Nous avons aiguillé ces signaux du générateur des signaux de synchronisation vers un microcontrôleur ATMEL (série ATMEGA) dans lequel nous avons
généré des pulsations "reset" pour réduire le temps d'exposition à une valeur de 50µs.
La gure 3.20 montre la modication apportée pour changer le temps d'exposition.
3.2. CAPTEURS D'IMAGE DÉDIÉS
47
Figure 3.18: Schéma du module CCD
Durant le temps d'exposition, nous activons les LEDs infrarouge pulsées. Le rapport
cyclique de fonctionnement des diodes est de 50µs/40ms = 1.25 10−3 . Ce faible
rapport pourrait permettre une alimentation de l'ensemble sur des piles électriques.
Cela conviendrait donc pour des applications mobile de reconnaissance de visage. Le
signal de contrôl du ash est généré par le microcontrôleur. Il active un MOSFET qui
permet le déclenchement du ash. Nous avons aussi désactivé le contrôle automatique
de gain pour ne pas amplier le signal et augmenter le bruit qui peut être introduit
par la lumière ambiante.
Figure 3.19: Obturation électronique dans un capteur CCD interligne
L'image issue de ce capteur, dans ce mode de fonctionnement, nous génère une
image en proche infrarouge qui ressemble à l'image issue de notre prototype décrit
précédemment. Nous avons exploité la caractéristique du capteur CCD interligne pour
acquérir une image constituée de deux trames diérentes : une en proche infrarouge
avec la méthode de réduction du temps d'exposition et une seconde en visible en
laissant la boucle d'acquisition (gure 3.18). Le mode d'acquisition d'un capteur CCD
interligne est la suivante : Au début on expose les lignes paires et durant les séries
48
CHAPITRE 3. CAPTURE DE VISAGE TEMPS RÉEL
Figure 3.20: Chronogramme de la réduction du temps d'exposition dans le CCD
de décalage des charges, on expose les lignes impaires. Après que toute les charges
des lignes paires ont été transmises, on commence le décalage des lignes impaires et
on expose les pixels des lignes paires et ainsi de suite. Le chronogramme de l'acquisition est présenté en gure 3.21. Dans ce schéma, les pulsations en rouge du signal
Vsub sont celles ajoutées par le microcontrôleur pour réduire le temps d'exposition
et acquérir ainsi une image en proche infrarouge.
Figure 3.21: Chronogramme d'acquisition des trames dans une CCD interligne
L'image qu'on a en sortie du capteur est une image contenant deux trames entrelacées une en visible et la seconde en proche infrarouge. On peut facilement séparer
les deux trames et par interpolation on reconstitue deux images d'une résolution VGA.
3.3 Bases de donnée
Avec ces capteurs à disposition, nous avons mené diérentes campagnes d'acquisition pour évaluer l'amélioration que peuvent apporter les capteurs dédiés à la
suppression de la lumière ambiante.
3.3.1 Base BIOMET
La base BIOMET est une base biométrique qui contient 5 diérentes modalités :
la voix, le visage, la main, l'empreinte digitale et la signature [20] . Pour le visage,
plusieurs caméras ont été utilisées : une caméra classique à base d'un CCD SONY
3.3. BASES DE DONNÉE
49
pour l'acquisition audio-vidéo. Un système d'acquisition en 3D est aussi exploité dans
cette base de donnée. Il se base sur une lumière structurée. La projection d'une série
de lignes de diérentes couleurs sur une surface sert comme référence dans l'image
obtenue. Chaque ligne est dénie par sa couleur et sa position. Par triangulation
(caméra, projecteur), on peut dénir ainsi la 3ème dimension. La troisième caméra
utilisée dans cette base est la caméra diérentielle décrite dans la section 3.2.1, nous
l'appellerons DiCam.
Pour les acquisitions de BIOMET, nous avons utilisé un illuminateur proche infrarouge émettant une longueur d'onde de 850µm. Il contient 24 LEDs pulsées et
contrôlées par un transistor MOSFET.
Durant ces acquisitions, le sujet se tient à une distance de 50cm de la caméra.
On acquiert 10 images par personne à raison d'une image par seconde. Durant les
acquisitions le sujet bouge lentement la tête. La base de donnée contient 85 personnes.
La gure 3.22 montre un échantillon d'images de la base. Les personnes portant des
lunettes les ont gardées. Nous avons constaté que les lunettes causent des réexions
importantes de la lumière des LEDs et ainsi des saturations dans l'image (gure 3.23).
Nous avons séparé ces images de la base, pour créer une sous base ne contenant pas
de telle saturation.
Figure 3.22: Example d'image de la base BIOMET
3.3.2 Base IV2
Durant la compagne d'acquisition du projet IV2 [66], nous avons installé le capteur
IRVI dans la cabine d'acquisition. Le capteur était équipé d'une lentille à grand angle
ce qui a induit un eet sheye sur les images acquises. Le sheye est une distorsion de
50
CHAPITRE 3. CAPTURE DE VISAGE TEMPS RÉEL
Figure 3.23: Eet de saturation dû au port des lunettes dans la Base BIOMET
l'image introduite par une lentille à grand angle pour avoir un angle de vu important
(180). Les acquisitions se sont déroulées dans une cabine où des projecteurs avaient été
installés deux derrière, un à gauche et un à droite du sujet. Un système automatique
contrôle l'allumage et l'extinction de ces derniers. La personne se tient devant la
caméra à une distance de 50cm et enlevant ses lunettes si elle en porte.
La base contient 50 personnes. Pour chacune nous disposons d'une vidéo de 40
secondes. Les vidéos contiennent les images en lumière visible et en proche infrarouge
entrelacées. Les vidéos ont une résolution de 640×480 avec un débit de 30 images par
seconde. Chaque 10 secondes, nous changeons la conguration de l'éclairage. Durant
les 10 premières secondes, les quatre projecteurs sont allumés. Puis on les éteint,
ensuite on allume successivement les projecteurs à droite et à gauche de la caméra.
La gure 3.24 montre un exemple d'image de la base de donnée.
Figure 3.24: Exemple d'images de la base de donnée IV2
3.3.3 Base IRVI
Vu les déformations présentes dans les images de la base IV2, nous avons changé
la lentille du capteur IRVI. Pour des convenances de distance et de taille du visage
3.3. BASES DE DONNÉE
51
dans l'image, nous avons opté pour une lentille d'une distance focale de 6mm. Les
acquisitions se sont déroulées dans un bureau, près d'une fenêtre qui est à gauche
de la caméra. Un éclairage d'appoint se trouve à droite de la caméra. il s'agit d'une
lampe de bureau d'une puissance de 40W. La personne se tient en face de la caméra.
Les personnes ont été invitées à enlever leur lunettes avant l'acquisition pour éviter
les problèmes de réexion. La gure 3.25 montre l'environnement des acquisitions.
Figure 3.25: Environnement d'acquisition de la base VINSI
Cette Base de visage contient 60 personnes. Chaque personne possède deux sessions (S1 et S2) acquises à deux/trois semaines d'intervalle. Durant chaque session,
nous avons trois protocoles d'enregistrement avec des illuminations variables. Le premier protocole (P1)est acquis avec un éclairage de bureau ambiant. Les stores durant
ce protocole sont fermés pour diminuer l'inuence de la lumière venant de l'extérieur.
Pour le second protocole (P2), on ajoute un éclairage d'appoint illuminant le coté
gauche du visage. Le dernier protocole (P3) peut être assimilé à une acquisition en extérieur. En eet, l'acquisition près d'une fenêtre met en jeu la lumière du jour. Chaque
protocole correspond à une acquisition d'une vidéo de 30 secondes. On n'a sauvegardé
qu'une image toutes les 10 secondes. Un logiciel d'acquisition sépare les deux images
entrelacées visible et proche infrarouge. Pour chaque protocole, nous avons ainsi 10
images en proche infrarouge et autant en lumière visible . Les personnes peuvent bouger ou changer de position durant les acquisitions. Un changement de pose peut alors
apparaître entre les images d'une même session. La gure 3.26 montre les diérents
protocoles de la base. Cette gure montre l'inuence de la lumière du jour sur les
images en visible à travers le troisième protocole. Nous pourrons aussi noter la stabilité des images IR lorsque les conditions d'illumination varient.
Durant les acquisitions du troisième protocole, nous avons remarqué des limitations
du capteur IRVI quand la lumière extérieure est importante. En eet, un fort éclairage
ambient ne peut plus être négligé devant la lumière du ash. La gure montre l'eet
52
CHAPITRE 3. CAPTURE DE VISAGE TEMPS RÉEL
Figure 3.26: Exemples d'images de la base IRVI et les diérents protocoles
d'un fort éclairage du soleil bien qu'atténué par la réduction du temps de pose sur
l'image. Ce fort éclairement peut être éliminé par un procédé d'acquisition diérentiel
si on n'atteint pas la saturation durant les deux acquisitions.
Nous avons annoté manuellement 4 points caractéristiques : les deux centres des
yeux, le centre bas du nez et le centre de la bouche. Pour les tests de reconnaissance,
nous avons choisi les cinq premières images de la première session, premier protocole
(S1P1) comme des images de référence. Les images des autres protocoles et cinq
images de S1P1 sont considérées comme images de test. Pour chaque personne nous
avons ainsi 5 images de référence et 30 images de test. Chaque image est de taille
640 × 480.
3.4 Conclusion
L'illumination est un des facteurs les plus importants dans l'acquisition des images.
Elle inue sur la qualité des images : la présence de saturation réduit l'information
dans une image. Nous avons présenté dans ce chapitre, deux capteurs permettant
l'atténuation, voir l'élimination de la lumière ambiante. Le premier capteur présenté
est un capteur CMOS qui intègre une fonction de diérentiation. Le second capteur est
à base de la technologie CCD ce qui donne au capteur une meilleur qualité d'image
grâce au faible bruit spatial xe présent dans cette technologie. Il se base sur la
réduction du temps d'acquisition pour acquérir moins de lumière ambiante et l'ajout
d'un ash composé d'une quarantaine de LED pulsées en proche infrarouge synchrone
avec la période d'acquisition. Nous avons ensuite décrit les diérentes bases de données
3.4. CONCLUSION
53
acquises pour pouvoir valider notre approche visant à améliorer les performances des
systèmes de reconnaissance en présence de variations d'illumination. En ne mettant
en jeu que des opérateurs intégrable sur SoC ou sur CMOS, nous avons construit un
algorithme potentiellement intégrable sur SoC. La description de cet algorithme fera
l'objet des chapitres suivants.
Chapitre 4
Détection des points
caractéristiques
Ce chapitre est une présentation de la méthode de détection des points caractéristiques sur les images infrarouges issues des capteurs développés au sein de notre
laboratoire. Nous nous sommes intéressés à la mise au point d'une méthode simple et
ecace pouvant être intégrée par la suite aisément sur des composants programmables
ou dans le capteur lui même.
4.1 Introduction
Une des étapes les plus importantes dans le processus de reconnaissance de visage
est la détection de points caractéristiques. Cette étape est indépendante de l'algorithme de vérication utilisé. En eet, la reconnaissance de visage en 2D requiert dans
tous les cas une bonne détection des yeux pour xer la taille du visage. La distance
entre les yeux est considérée comme référence pour déterminer la taille et l'orientation du visage et par suite normaliser celui-ci. Certains algorithmes sont plus sensibles
que d'autres à la bonne détection des yeux. L'algorithme utilisant la projection par
"sherface", par exemple, demande une détection au pixel près [66]. Cette sensibilité est due à la transformation de l'image en un vecteur de taille xe, ce qui laisse
moins de souplesse après pour la correction de position. Par contre, les algorithmes
se basant sur une analyse locale (tel que l'EGM) autour des points singuliers sont
moins sensibles à une bonne détection, vu que l'algorithme ane sa recherche des
points par la suite [9]. Les points caractéristiques ont aussi été utilisés pour faire de la
reconnaissance de visage en utilisant leurs positions, leurs formes [12]. On peut dénir
55
56
CHAPITRE 4. DÉTECTION DES POINTS CARACTÉRISTIQUES
"un point caractéristique comme étant le point particulier qui trouve son correspondant dans l'inter et l'intraclasse" [17]. Les points caractéristiques peuvent être des
points dénis par l'anatomie du visage ou des points dénis mathématiquement ou
des pseudo-points caractéristiques [69]. Les points caractéristiques extraits de l'anatomie du visage sont les plus importants vu l'information qu'ils contiennent par rapport
à la taille et la texture du visage. Ces points nécessitent une détection par des techniques de machine de vision. Les points mathématiques sont plus simples à détecter.
Ils sont déterminés par des propriétés mathématiques tel que le maximum de gradient
dans le visage ou d'autres propriétés géométriques. Les pseudo-points caractéristiques
sont des points situés entre les points dénis par l'anatomie et ceux dénis par des
propriétés mathématiques.
4.2 Détection de points caractéristiques dans la littérature
On trouve dans la littérature plusieurs approches pour la détection de points caractéristiques. On citera ici une partie d'entre eux. Cette liste est non restrictive, mais
nous essayons d'illustrer les principales approches que l'on peut trouver dans la littérature. Nous pouvons classer ces algorithmes en deux classes : une première qui se
base sur une analyse statistique du visage et une seconde qui se base sur l'analyse
locale s'appuyant sur une étude anthropométrique du visage.
4.2.1 Méthode Adaboost
L'une des méthodes les plus utilisées dans la littérature est la détection du visage et
des points caractéristiques par boosting. La variante la plus utilisée est celle proposée
par Viola et Jones [76] et elle se base sur le "boosting" adaptatif (adaboost). Cette
méthode est une combinaison de plusieurs classieurs simples pour créer un classieur
plus performant, cela se traduit par une combinaison linéaire des classieurs :
f (x) =
T
X
αt ht (x)
t=1
où αt est le poids correspondant au classieur ht . Ces paramètres sont appris itérativement durant l'étape d'apprentissage. A chaque itération, le poids des hypothèses
classiées incorrectement augmente alors que le poids des bons classieurs diminue.
Cela permet de se concentrer sur les exemples les plus durs à classier. La méthode
adaboost utilise des classieurs simples dérivés des ondelettes de Haar.
4.2. DÉTECTION DE POINTS CARACTÉRISTIQUES DANS LA LITTÉRATURE
57
4.2.2 Modèle de contour actif
La seconde méthode que nous citerons ici est une méthode beaucoup utilisée dans
la compression vidéo et la détection d'expression du visage. Cette méthode a été développée pour extraire des objets caractéristiques complexes et non-rigides, comme
l'oeil ou les lèvres. Au départ, un modèle de contour actif [28] [87] [83] doit être placé
près de l'objet caractéristique à localiser dans l'image. Le modèle de contour actif va
par la suite interagir avec les propriétés de l'image locale et se déformer lentement
pour prendre la forme de l'objet caractéristique à extraire. Il y a trois types de modèle
de contour actif.
Le contour actif, aussi appelé "snake", est utilisé pour trouver le contour d'un objet
caractéristique. Pour cela, on doit initialiser le contour actif autour de l'objet caractéristique à localiser. Le contour actif se concentre ensuite sur les bords proches et
prend pas à pas la forme de l'objet caractéristique. Le but du contour actif est de
minimiser une fonction énergie :
Esnake = Eint + Eext
où Eint et Eext sont respectivement l'énergie interne et externe. L'énergie interne
dépend des propriétés intrinsèques du contour actif et dénit l'évolution naturelle de
celui-ci. L'évolution naturelle d'un contour actif est typiquement de se rétrécir et de
se dilater. L'énergie externe agit contre l'énergie interne et permet au contour actif
de se comporter contre son évolution naturelle. C'est ce qui permet au contour actif
d'entourer le bord de l'objet caractéristique.
Les masques déformables (deformable template) sont une évolution des contours actifs. Ils incorporent de l'information globale sur l'objet caractéristique à localiser. Un
masque déformable est un contour déni par n paramètres. Ce contour permet de
modéliser des formes typiques que l'objet caractéristique peut prendre. Par exemple,
pour modéliser l'oeil on peut prendre diérentes ellipses. Si on pose le masque déformable près de l'objet caractéristique, alors le masque (contour paramétré) va changer
les valeurs de ses paramètres (va se déformer) pour converger vers le contour optimal
de l'objet caractéristique. De nouveau, le but est de minimiser une fonction énergie.
Le PDM (Point distributed model) est une description paramétrique compacte de la
forme de l'objet caractéristique à localiser sur la base de statistiques. Lors du PDM,
le contour est discrétisé en un nombre de points labellisés. Le déplacement de ces
points est calculé à l'aide d'images exemples sur l'objet caractéristique à localiser en
utilisant une PCA. De telle façon, on aboutit à un modèle linéaire exible. Le modèle consiste en la valeur moyenne de tous les points et des composantes principales
pour chaque point. Pour localiser l'objet caractéristique, le modèle du contour moyen
("mean shape model"), étant constitué des valeurs moyennes des points, est placé
58
CHAPITRE 4. DÉTECTION DES POINTS CARACTÉRISTIQUES
près de l'objet caractéristique. Ensuite, une stratégie, utilisant l'intensité locale de
l'image, est utilisée pour déplacer chaque point du modèle vers le point sur le contour
de l'objet caractéristique. Pendant la déformation, la forme peut seulement changer
son apparence d'une façon qui coïncide avec l'information modélisée.
4.2.3 Détection des yeux dans les images infrarouges
Les images infrarouges ont montré une bonne robustesse vis à vis des variations de
l'illumination [41]. Cela a permis le développement de plusieurs techniques robustes
de détection de points caractéristiques appliquées aux images en proche infrarouge.
Nous citons les travaux de Dowdall [16] qui exploraient la diérence de réexion de
la peau dans la basse bande du proche infrarouge et de la haute bande en proche
infrarouge pour détecter et localiser les yeux. En eet, les yeux apparaissent noirs
alors que la peau est plutôt claire sous un éclairage en basse bande proche IR alors
que dans la bande supérieure du proche IR, les sourcils apparaissent assez claire (car
ils rééchissent mieux ces longueurs d'onde). Par des projections horizontales des deux
images et la détection des maxima et minima du résultat, l'auteur arrive à marquer la
position des yeux. La gure 4.1 montre un exemple de cette projection. L'inconvénient
majeur de cette méthode est qu'elle soure de l'inuence de l'arrière plan.
Figure 4.1: Localisation des yeux avec la méthode proposée par Dowdall [16]
Dans [86], une nouvelle approche a été développée pour la détection des yeux. Les
images acquises par le capteur, décrit dans le paragraphe 2.4, présentent des eets
ressemblant aux yeux rouges dans la photographie. En eet au fait de la diérence
d'illumination et parce que le temps entre deux poses assez long, la pupille n'a pas
le temps de s'adapter à l'intensité de lumière émise et reste ainsi dilatée. Cet eet
crée des pupilles brillantes. L'application d'un ltre de contour (Canny dans ce cas)
crée des petits cercles ou des demi cercles dans le centre de l'oeil (pupille). L'auteur a
4.3. DÉTECTION DE ZONES DE SÉLECTION
59
utilisé une nouvelle méthode de suivi du contours (chaincode) pour détecter les demicercles. Pour chaque point du contour, il crée un code de suivi des points voisins. Celui
correspondant à un demi cercle étant unique, on peut extraire dès lors les points et
par suite les contours correspondant à des cercles ou demi-cercle. Mais cette méthode
détecte également toutes les courbures ressemblant à des cercles. En explorant la
symétrie du visage et un minimum de distance inter-oculaire, Zou sélectionne ainsi
les contours circulaires candidats pour être ceux de la pupille. On ane ensuite le
résultat de recherche par classication de l'histogramme du voisinage des points ainsi
obtenus par la méthode SVM. La classication des centres des yeux est indépendante.
On crée un modèle correspondant à l'oeil droit et un second pour l'oeil gauche. Si
le système construit fait défaut pour diverses raisons telles que le clignotement des
yeux, on applique alors la méthode de détection basée sur les classieurs de Harr
le Floatboost. Ainsi, on a deux méthode de détection en cascade pour améliorer les
performances de détection.
4.3 Détection de zones de sélection
Les images en proche-infrarouge présentent une stabilité vis à vis de l'illumination. On remarque aussi un bon degré de contraste dans ces images. Donc, l'image
de contour en proche infrarouge est plus stable qu'en visible. Nous avons exploité
ce fait pour sélectionner les zones de l'image pouvant contenir des points caractéristiques [27]. Nous allons nous intéresser à la détection de quatre points : les yeux, le
centre du nez et le centre de la bouche. Nous avons construit notre méthode de détection pour qu'elle soit intégrable sur le capteur. Dans ce but, nous avons utilisé des
opérations simples et élémentaires telles que la projection qui n'est qu'une sommation
de pixels, ou le gradient qui est calculé comme une diérence. Dans [40], on montre
que la fonction de projection est bien adaptée pour les images infrarouges et pour
la détection du visage. Nous allons utiliser cette opération pour détecter des zones
d'intérêt pouvant contenir les yeux, le nez ou la bouche.
4.3.1 Image de contour
L'image de contour du visage a été utilisée dans les algorithmes de reconnaissance
du visage [30][58]. En eet, les contours sont considérés comme des éléments intéressants pour diérencier les individus car ils sont aussi des points caractéristiques
de l'anatomie du visage. Donc les points que nous avons choisis de rechercher se
trouvent sur cette image de contour. L'image de contour présente aussi l'avantage
d'être binaire et donc nécessitant moins d'espace mémoire.
60
CHAPITRE 4. DÉTECTION DES POINTS CARACTÉRISTIQUES
(a)
(b)
Figure 4.2: Filtrage gaussien (a) image initiale (b) image après ltrage gaussien
Pour l'extraction de l'image de contour, plusieurs méthodes peuvent être utilisées.
On trouve dans la littérature une série de détecteurs tel le gradient, le détecteur de
Sobel, Canny[32]. Nous voulons une image de contours grossière ne contenant pas
tous les petits détails du visage. Le détecteur de Canny, bien que performant pour
les images visibles, nous donne un nombre important de contours qui peuvent être
considérés comme du bruit. Nous cherchons à construire une image de contour ne
contenant que les principaux éléments anatomiques du visage à savoir les yeux, les
sourcils, le nez et la bouche [43]. Nous avons opté pour un ltre s'inspirant du ltre
de Sobel mais dans les 8 directions montrées dans la gure 4.3-a) et de taille plus
importante. Pour éliminer les petits contours nous avons procédé, en premier lieu, à
un ltrage gaussien. La gure 4.2 montre l'image originale et l'image ltrée. L'image
de contour et le ltre utilisé sont présentés en gure 4.3. Une opération de seuillage
est aussi faite pour accentuer les contours. L'image résultante est une image qui
ressemble aux images croquis du visage (sketch images) qui ne présentent que les
traits caractérisant la personne c'est à dire ses yeux, sourcils, la forme du nez et la
bouche. On notera que les sourcils ne sont pas toujours détectable et cela est du soit
à leur ne épaisseur (surtout chez les femmes) ou à la mauvaise réexion des poils à
la lumière proche infrarouge.
Cette méthode d'extraction des contours présente l'avantage d'être simple : un ltrage gaussien suivi d'un ltre avec un masque de taille 9×9 et un seuillage. Toutes ces
opérations ont été intégrées et validées sur capteur par diérents auteurs [52][77][5].
4.3. DÉTECTION DE ZONES DE SÉLECTION
61
Figure 4.3: Extraction de l'image de contour - a) Filtre de détection de contours
- b) image en proche IR - c) Résultat de la convolution
4.3.2 Présélection des zones du visage
Une projection horizontale de l'image de contour présente des maximums au niveau
des ordonnées des points caractéristiques recherchés. En eet, ces points se trouvent
sur des contours de direction horizontale. Pour une image I(x, y) la fonction projection
est dénie comme suit :
n
X
H(y) =
I(i, y)
i=1
Où n est le nombre de colonnes dans l'image. La recherche des ordonnées des points
caractéristiques est liée à la bonne détection des maximums locaux dans la courbe de
projection. Pour cela nous avons procédé comme suit :
1. Calcul du Laplacien de H1 = ∇H
2. Recherche du maximum M de H
3. Annulation des points autour de M jusqu'au changement de signe de H1
4. Répéter de l'étape 2 jusqu'à atteinte du nombre de maximums recherchés correspondant aux nombres des points particuliers.
Pour prendre en considération les aléas, par exemple le port de boucles d'oreille
rééchissantes, au lieu de rechercher trois maximums locaux (correspondants aux
yeux, nez et bouche) nous avons recherché cinq maximums parmi lesquels nous allons,
par la suite, sélectionner les plus adéquats. Ces ordonnées trouvées correspondent à
des zones de pré-sélection pouvant contenir des points caractéristiques du visage. La
gure 4.4 montre la fonction projection et la détection de ces zones contenant les
points caractéristiques.
62
CHAPITRE 4. DÉTECTION DES POINTS CARACTÉRISTIQUES
Figure 4.4: Sélection des régions entourant les points caractéristiques
4.4 Détection de la bouche
L'un des éléments du visage ayant la forme la plus simple, en l'absence d'expression, est la bouche. Elle est toujours présentée sous forme d'une ligne dans l'image
de contour. Nous allons chercher une ligne qui se trouve dans une des zones de présélection (gure 4.4). Nous restreignons notre recherche aux zones les plus basses : la
bouche se trouve en bas du visage.
4.4.1 Détection par morphologie mathématique
Dans le but de pouvoir intégrer facilement notre approche, nous nous sommes
basés sur une méthode simple et qui a déjà été implémentée sur divers supports :
FPGA, DSP, ASIC, MOS [48]. Notre méthode ne se base que sur deux traitements :
l'un qui est une opération morphologique et l'autre une projection.
La morphologie mathématique est une technique largement utilisée dans le traitement d'image pour diérents buts : segmentation, ltrage, analyse de texture, etc [73].
Elle permet d'extraire les structures intéressantes en parcourant l'image à l'aide d'un
élément de forme connue appelé élément structurant. Le choix de cet élément est
fonction de la forme recherchée dans l'image. Les deux opérateurs morphologiques
de base sont : l'érosion et la dilatation. Ces transformations sont utilisées pour dénir d'autres opérateurs morphologiques tels que l'ouverture, la fermeture. Pour une
image binaire I et un élément structurant S , on dénit les deux principaux opérateurs
morphologiques comme suit :
4.4. DÉTECTION DE LA BOUCHE
63
L'érosion : ES (I) = {~x|S~x ⊂ I} où S~x est l'élément structurant translaté de ~x.
L'érosion répond donc à la question est-ce que l'élément structurant est inclu
dans l'objet de l'image. Cet opérateur élimine les objets de taille inférieure à
l'élément structurant. La gure 4.5-a) montre le résultat B de l'érosion d'une
forme A par l'élément structurant S. L'élément S se déplace le long de l'objet
A. Durant ce déplacement si S n'est pas inclue dans A, le point n'est retenue
dans le résultat de l'érosion B.
La dilatation : ES (I) = {~x|(S~x ∩ I) 6= ∅}. La dilatation est l'opération duale de
l'érosion. Elle répond au critère est-ce que l'élément structurant heurte l'objet.
Elle augmente ainsi la taille des objets de l'image. La gure 4.5-b) montre le
résultat B de la dilatation d'une forme A par l'élément structurant S.
Figure 4.5: Les opérateurs de morphologie : a) Érosion de la gure A par l'élé-
ment structurant S, b) Dilatation par l'élément S
L'intérêt d'utiliser la morphologie est que c'est une approche basée sur un traitement
de voisinage. Donc il s'agit de comparer le voisinage d'un pixel avec un élément de
forme xe. Cela peut être facilement implémenté dans un composant de type FPGA ou
ASIC. De plus, la transformation morphologique n'est pas appliquée sur toute l'image,
mais sur les zones de l'image précédemment sélectionnées.
On s'est xé un voisinage autour des maximums dénis dans le paragraphe 4.3.2
pour l'analyse et la recherche de la bouche. Pour éviter les possibles discontinuités
dans les contours nous avons eectué une ouverture avec un élément structurant de
forme circulaire et de rayon 1 pixel. Pour trouver la droite la plus longue qui peut
représenter la bouche, nous avons procédé à une érosion par un élément structurant
de taille 2 × 20. Une projection par la suite, nous permet de déterminer quelle serait
la zone contenant la plus longue droite. La gure 4.6 montre les diérentes étapes
de cette détection. Pour trouver le centre de la bouche, nous avons supposé que ce
dernier devrait être le barycentre de cette zone. En eet, grâce à la symétrie du visage,
le centre de la bouche est au milieu du visage et ainsi au barycentre de la zone la
contenant.
64
CHAPITRE 4. DÉTECTION DES POINTS CARACTÉRISTIQUES
Figure 4.6: Détection de la bouche
4.4.2 Détection par la transformée de Hough
Nous avons étudié aussi l'application d'une approche se basant sur les modèles
paramétriques. La plus connue est la transformée de Hough. Elle est devenue durant
ces dernières décennies la méthode la plus utilisée dans le domaine de la vision articielle. Elle peut être appliquée pour détecter diverses formes de contours : droite,
cercle et ellipse. Elle est aussi robuste par rapport aux discontinuités du contours. La
méthode requiert d'abord l'extraction des contours de l'image par un ltre de Sobel
ou Canny. Puis, on doit réaliser la transformation des contours C(x, y) en :
ρ = xcosθ + ysinθ
où θ est l'angle variant entre −π/2 et π/2. Ainsi chaque courbe ρ(θ) représente
un point. Des points de la même droite sur l'image de contours correspondent à
des courbes ayant un point d'intersection. Ainsi le point de maximum d'intersection
correspond à la droite la plus longue dans le contour[2]. L'inconvénient de cette transformée est qu'elle est moins facile à implémenter sur "chips" vu sa complexité que
les méthodes basées sur la morphologie, mais en réduisant la taille de l'image ou de
la zone à analyser on arrive à implémenter plus facilement la détection de ligne. Dans
notre cas, l'analyse de Hough est eectuée uniquement sur les zones pré-sélectionnées
par maximums de projections horizontales de l'images de contour.
65
4.5. DÉTECTION DU NEZ
4.5 Détection du nez
Le nez est un organe qui se caractérise par sa forme xe par rapport aux mouvements de la tête. Les petites rotations et les expressions faciales ne changent pas la
forme du nez. Cela fait du centre du nez un point stable et facilement détectable [24].
Il est utilisé principalement dans la reconnaissance et la segmentation du visage en
3D ainsi que dans le suivi du visage dans un ux vidéo. Notre deuxième point caractéristique recherché est alors le centre du nez. Notre démarche vise en premier lieu à
détecter le nez ou la région du nez puis de préciser le centre du bas du nez.
Le bas du nez est un contour horizontal. Nous allons chercher dans les zones de
présélection se trouvant au dessus de la bouche, précédemment détectée, une forme
qui ressemble à un nez. La forme du nez est modélisée en gure 4.7. Notre recherche
est limitée aux zones au dessus de la bouche et de taille inférieure à la taille de
la bouche. Cela revient à corréler cette image type sur l'ensemble de ces zones. La
corrélation est limitée dans ce cas à une faible surface de l'image ce qui permet un
gain en temps de calcul. En eet la taille de notre modèle est de 8 × 60 pixels. En
utilisant les projections verticales, nous pourrons ainsi limiter les bords du nez.
Figure 4.7: Modèle du nez
Le bas du nez a la particularité d'avoir une partie verticale limitant son contour.
Pour déterminer le centre du nez, nous avons eectué une projection horizontale (selon
l'axe des ordonnées) et le milieu des deux plus grands gradients correspond au milieu
du nez. La gure 4.8 montre la projection du contour du nez et le gradient de la
projection.
4.6 Détection des yeux
La détection des yeux, ou des centres des yeux, est l'une des étapes les plus importantes dans le processus de reconnaissance. En eet, la taille du visage est dénie par
la distance intra-oculaire, l'orientation par l'alignement des yeux. Puisque la détection
des yeux va permettre de normaliser ensuite les images ce qui est indispensable avant
tout algorithme de mise en correspondance. Pour cela, on trouve dans la littérature
plusieurs méthodes de détection des yeux. De l'ecacité de ces méthodes dépend
la performance de l'algorithme de reconnaissance. Plusieurs approches ont été utilisées pour détecter la position des yeux. Ces approches peuvent être classées en trois
catégories [84] [86] :
66
CHAPITRE 4. DÉTECTION DES POINTS CARACTÉRISTIQUES
Nez détecté
2
4
6
8
10
20
30
40
50
60
20
30
40
50
60
8
6
projection
gradient
4
2
0
−2
10
Figure 4.8: Projection du contour du nez
Approche basée sur l'apparence : Cette méthode détecte les yeux en se basant
sur l'intensité lumineuse de l'oeil. Dans [19], on utilise la projection du niveau
de gris pour détecter les yeux.
Approche basée sur les modèles : Cette approche construit un modèle (template) déformable de l'oeil qui est mis en comparaison avec l'oeil de l'image de
test.
Approche basée sur les traits de l'oeil : On s'intéresse dans cette méthode aux
traits caractéristiques des yeux tel que les coins des yeux. Dans [71], les auteurs
ont mis en place un algorithme de détection se basant sur deux ltrages : un
ltrage de Gabor pour la détection de l'oeil et un second non linéaire pour la
détection des coins des yeux.
Pour des contraintes d'intégration et comme précédemment pour la détection de
la bouche et du nez, nous avons construit une méthode se basant sur des opérations
élémentaires de traitement d'image et qui ont été intégrées dans la littérature. Avec
l'opération de pré-sélection que nous avons mise en place, on a une idée de la zone
où peut se trouver les yeux : en eet les yeux ne peuvent être qu'au dessus du nez.
Aussi, nous avons remarqué que les yeux sont les seules éléments du contour qui ont
une forme circulaire. Une opération morphologique d'ouverture dans les zones présélectionnées avec un élément structurant circulaire permettra de mettre en évidence
l'emplacement des yeux. La taille de l'élément structurant a été choisie empiriquement.
4.7. VALIDATION SUR LES BASES INFRAROUGE
67
Dans nos expériences, nous avons choisi un élément circulaire de rayon 4 pixels. Une
projection horizontale des zones après ouverture permet de détecter l'ordonnée des
yeux. Les centres des yeux sont ensuite déterminés par détection des barycentres des
objets les plus important. Il faut noter que notre détection tend a marquer les yeux
plus que détecter le centre exact des yeux (centre de la pupille). La gure 4.9 montre
ces opérations successives.
Figure 4.9: Détection des yeux
4.7 Validation sur les bases Infrarouge
4.7.1 Critère de mesure
Pour la validation de nos approches sur la détection des diérents points particulier du visages, nous avons testé la performance de détection des diérents points
caractéristiques sur les bases décrites dans le chapitre 2. Nous rappelons que ces bases
ont été étiquetées à la mains. Nous nous sommes basés pour mesurer les erreurs de
localisation sur la mesure proposée par Jesorsky et al. [31]. C'est la première mesure proposée, à notre connaissance, pour évaluer les performances de détection des
yeux. Elle compare l'erreur de localisation des centres de chaque oeil à la distance
intra-oculaire et donc à la taille du visage :
dyeux =
max(eg , ed )
k Cg − Cd k
où eg et ed représentent la distance euclidienne entre le centre réel de l'oeil gauche,
respectivement droit, et le centre détecté. k Cg − Cd k est la distance intra-oculaire
réelle mesurée par un opérateur. Jesorsky montre dans [31] que si dyeux < 0.25. La
68
CHAPITRE 4. DÉTECTION DES POINTS CARACTÉRISTIQUES
détection des yeux peut être considérée comme bonne. Cette valeur correspond à la
moitié de la taille d'un oeil.
Ainsi de la même manière nous avons dénie la mesure d'erreur de détection de
la bouche :
ebouche
dbouche =
k Cg − Cd k
où ebouche est la distance euclidienne entre le centre de la bouche détecté et celui
marqué par l'utilisateur. Bien que cette mesure soit proposée pour l'évaluation de
la détection des yeux, nous l'avons utilisée pour la détection des diérents points
caractéristiques car elle met en valeur l'erreur de détection en distance euclidienne par
rapport à la taille du visage dans l'image.
La mesure d'erreur du nez est :
dnez =
enez
k Cg − Cd k
où enez est la distance euclidienne entre le centre du nez détecté et le centre réel.
4.7.2 Performances de détection
Validation sur la base IRVI
Pour cette base de donnée composée d'une soixantaine de personnes où nous
avons étiqueté à la main les diérents centres de la bouche, du nez et des yeux et
nous avons tracé en gure 4.10 les histogrammes des performances de détection.
Figure 4.10: Performance de détection sur la base IRVI
69
4.7. VALIDATION SUR LES BASES INFRAROUGE
Nous voyons que notre méthode détection réalise un taux de bonnes détections de
98% pour dyeux = 0.25. Pour la bouche, à dbouche = 0.2 on a 90% de bonne détection.
Les erreurs de détection de la bouche sont majoritairement dues aux expressions telles
que le fait d'avoir la bouche ouverte. Pour le nez les performances sont de 85%
de bonne détection pour dnez = 0.3. En eet, les rotations selon l'axe horizontal
modient un peu la forme du nez (apparition des narines).
La détection de la bouche a aussi été étudiée par la transformé de Hough. On a
pourra ainsi réduire les erreurs de détections induites par une discontinuité du contour
relatif à la bouche. La gure 4.11 montre l'amélioration apportée par la transformé
de Hough sur celle de la morphologie.
dbouche
100
par morphologie
par Hough
90
80
70
60
50
40
30
20
10
0
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
Figure 4.11: Comparaison de performance de détection de la bouche avec la
transformée de Hough et la morphologie mathématique
L'amélioration apportée par la transformé de Hough est assez nette surtout pour
les petites distances d'erreur. En eet avec cette méthode on peut déterminer avec
précision le centre du segment horizontal le plus long ce qui nous donne plus de
précision de détection. A partir d'une erreur de détection de 0.3 les deux méthodes
sont presque équivalente. Par la suite nous allons utiliser la transformé de Hough pour
détecter la bouche dans le reste du travail de la thèse.
Validation sur la base IV2
Cette base de donnée acquise durant la compagne d'acquisition de IV2( voir section
3.3.2) présente des distortions optiques (lentilles shereye) dues à l'angle de la lentille.
Pour cette base, nous avons à disposition les coordonnées des yeux, du centre de la
bouche et du nez.
Pour dyeux = 0.25, on arrive à détecter à 90% de bonnes positions des yeux. Cette
performance reste élevée, mais pas autant qu'avec les images de la base IRVI. Cela
70
CHAPITRE 4. DÉTECTION DES POINTS CARACTÉRISTIQUES
deye
100
80
60
40
20
0
0
0.1
0.2
0.3
0.4
0.5
dnose
100
80
80
60
60
40
40
20
20
0
0.2
0.4
0.7
dmouth
100
0
0.6
0.6
0.8
1
0
0
0.2
0.4
0.6
0.8
Figure 4.12: Performance de détection sur la base IV2
est peut être du à la déformation du visage par la lentille.
Validation sur la base Biomet
Cette base a été acquise avec la caméra diérentielle durant l'acquisition de BIOMET (voir paragraphe 3.3.1). Pour ces données il n'y a de disponible que les coordonnées des yeux. De ce fait, nous n'avons appliqué que l'algorithme de détection des
yeux. Et pour cette base, nous avons aussi éliminé les personnes qui portent des lunettes. En eet, les verres rééchissent la lumière infrarouge issue du ash de manière
importante, ce qui sature la région des yeux. L'histogramme de mesure de l'erreur de
détection est présenté en gure 4.13.
Malgré la faible taille des images (120×160) notre algorithme reste stable et donne
des performances du même ordre de grandeur que sur les bases précédentes (90% pour
dyeux = 0.25).
4.8 Détection de points caractéristiques sur les images
en visible
Le capteur IRVI que nous avons développé nous fournit en sortie un ux d'images
visible et proche infra-rouge. Nous avons essayé dès lors d'utiliser notre méthode de
détection sur les images en visible pour vérier si ce mode de détection de points
4.8. DÉTECTION DE POINTS CARACTÉRISTIQUES SUR LES IMAGES EN
VISIBLE
71
deye
100
90
80
70
60
50
40
30
20
10
0
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
Figure 4.13: Performance de détection des yeux sur la base Biomet
caractéristiques serait applicable sur des images VI ou bien s'il n'est adapté qu'aux
images IR.
4.8.1 Détection de contour
En utilisant les mêmes procédures décrites que celles dans le paragraphe 4.3.1
sur les images en visible, nous remarquons une forte diérence entre les contours
obtenus en proche infrarouge et en visible quand on a une variation d'illumination. La
gure 4.14 montre une image en proche infrarouge et son équivalente en visible du
troisième protocole d'acquisition où on a un éclairage extérieur de prol. On remarque
la détérioration de l'image de contours en lumière visible par ce changement d'éclairage
qui rend sombre une partie de l'image. On voit dans cette gure la disparition des
contours de l'oeil droit à cause du manque de lumière sur cette partie de l'image. En
eet le capteur en fonctionnement normal tends à réduire le temps d'exposition pour
ne pas saturer l'image. Ainsi les parties moins éclairées sont sombres.
La détérioration des performances de détection est remarquable sur les quatre
points détectés. Nous avons une chute de 40% sur la détection du centre des yeux (gure 4.15) en appliquant notre approche sur les images visible pour avoir une détection
de 0.2. La performance détection des yeux a chuté fortement à cause de l'éclairage
de prol qui occulte une des partie du visage. Mais vu que le nez et la bouche sont au
centre du visage, leurs performances de détections ne chutent pas énormément. Pour
le nez et pour une erreur de détection de 0.5 en NIR le taux de détection correct est
72
CHAPITRE 4. DÉTECTION DES POINTS CARACTÉRISTIQUES
Image NIR
Image Visible
Image de contour NIR
Image de contour Visible
Figure 4.14: Inuence des variations d'éclairage sur l'image de contours à gauche
image NIR, à droite image VI correspondante
de 96% en NIR alors qu'en visible ce taux est de 88%.
4.9 Conclusion
Dans ce chapitre, nous nous sommes intéressés à la détection des points caractéristiques du visage. Ces points, et leurs voisinages nous donnent des informations utiles
(texture et position), nécessaires pour la reconnaissance de visage. Nous nous sommes
restreints à n'utiliser que des méthodes simples par leur construction pour pouvoir les
intégrer. Tous les opérateurs utilisés ont d'ailleurs été intégrés dans divers travaux
disponibles dans la littérature. Grâce à la stabilité des images acquises en infrarouge
vis à vis de l'illumination, nous avons pu simplier les algorithmes de détection par
rapport aux approches classiquement utilisées sur des images en lumière visible. En
eet, les images de contour extraites des images en lumière visible ne sont pas aussi
stables et présentent des saturations qui modient les contours du visage. Nous avons
73
4.9. CONCLUSION
d
yeux
100
80
60
40
NIR
Visible
20
0
0
0.1
0.2
0.3
0.4
0.5
dnez
100
80
80
60
60
40
40
20
20
0
0.5
0.7
dbouche
100
0
0.6
1
1.5
0
0
0.2
0.4
0.6
0.8
1
Figure 4.15: Comparaison de performance de détection sur les images NIR et
visible dans la base IRVI (en haut détection des yeux : dyeux , en bas à gauche
détection du ney : dnez , en bas à droite détection de la bouche : dbouche
aussi montré la stabilité et la robustesse de notre approche vis à vis des diérents
systèmes d'acquisition développés dans notre équipe. Nous allons dans la suite de
ce travail, nous intéresser à la reconnaissance de visage en lumière infrarouge. Nous
avons opté pour une approche se basant sur les points caractéristiques et une analyse
locale du visage. Cela nous permettra de nous compenser des mauvaises localisations
des points caractéristiques. Le chapitre suivant décrira notre nouvelle méthode adaptée aux images infrarouges pour la reconnaissance de visage et les performances de
reconnaissance sur la base enregistrée par le capteur IRVI décrite dans le paragraphe
3.3.3.
Chapitre 5
Algorithme de Reconnaissance
de Visage
Dans ce chapitre nous allons présenter un algorithme de reconnaissance adapté
aux images proche infrarouge issues de notre capteur. Cette méthode s'inspire de
l'algorithme de comparaison élastique des graphes connu sous le nom Elastic Graph
Matching (EGM). Dans le but de pouvoir intégrer par la suite ce système de reconnaissance de visage, nous nous sommes contraints à utiliser une approche locale qui est
plus adaptée pour un SoC et une intégration sur le capteur qu'une méthode globales
à base d'apprentissage. Nous allons en premier lieu détailler l'algorithme EGM original
et quelques approches développées dans la littérature qui s'inspirent de la méthode
des graphes. Les performances de reconnaissance de cet algorithme sont étudiées tout
d'abord sur une base publique BANCA [6] ensuite nous allons les valider sur la base
IRVI acquise dans notre laboratoire. En suite nous allons présenter notre nouvelle approche qui se base sur la détection de contours et de points caractéristiques présentée
précédemment. Nous allons par la suite comparer notre approche avec diérentes méthodes de base pour la reconnaissance de visage, dont l'EGM précédemment cités et
des méthodes globales développées dans notre laboratoire.
5.1 Élaboration des graphes pour la reconnaissance de
visage
Les approches locales ont été les premières à être exploitées pour la reconnaissance de visage. Dans les premiers travaux réalisés, ces études ont consisté à mesurer
75
76
CHAPITRE 5. ALGORITHME DE RECONNAISSANCE DE VISAGE
les diérentes distances anthropométriques du visage pour trouver une caractéristique
unique à chaque personne, mais on s'est rendu compte que cette approche ne permettait pas d'obtenir un bon élément diérenciateur entre les individus. Certaines
distances sont même constantes entre les personnes. Ainsi cette approche ne donne
pas de bonnes performances de reconnaissance. La conclusion c'est qu'il faut donc
analyser le visage localement mais sans omettre le caractère global de l'analyse. L'approche des graphes est une solution proposée par Lades [37] en 1992. Un graphe est
constitué d'un ensemble de n÷uds reliés entre eux par des lignes/contours (Edge).
Les n÷uds peuvent être des points particuliers de l'objet (du visage dans notre cas)
ou des points d'une grille virtuelle déposée sur l'objet. Pour une meilleure modélisation par graphe, il est conseillé d'avoir des n÷uds qui possèdent des caractéristiques
diérentes les unes des autres. Mais ils doivent être stables dans diérentes situations
d'acquisition. Outre leurs positions, les n÷uds contiennent aussi une analyse de leurs
voisinages. Cela peut être une analyse statistique du voisinage, du contour, du moment, de la forme, ou une transformation du voisinage d'un autre espace (transformée
de Fourier, transformée DCT, ...). L'information sur le voisinage est représentée dans
un vecteur appelé Jet. Cette information peut être générée par plusieurs méthodes
d'analyse, on citera les plus utilisées :
Analyse de la forme par morphologie mathématique : dans cette approche le
vecteur Jet contient l'information sur la forme du voisinage par une succession
d'érosions et de dilatations. Cette méthode bien que simple est assez dépendante
de la pose, de l'illumination et de la taille de l'image d'origine.
Analyse de la texture par transformée en cosinus discrète : protant du fait
que cette transformée est très utilisée pour la compression d'image (JPEG) et
de sa maturité en terme d'implémentation, on peut construire le vecteur Jet
en faisant varier la taille du noyau de la transformée. Cette méthode est aussi
performante que l'analyse avec les ltres de Gabor [51]. Mais, elle soure d'une
complexité de calcul importante au niveau de l'étape de calcul de la variance
locale.
Analyse de la texture par transformée de Gabor : C'est l'approche la plus utilisée
en ce moment. Elle se base sur l'utilisation d'un banc de ltres de Gabor en
variant les orientations et les résolutions. Ainsi le voisinage de chaque noeud est
convolué par ces diérents ltres.
Nous présentons ici, en détail, les deux approches les plus utilisées dans la littérature.
La première se base sur des traitements morphologiques et la deuxième sur l'analyse
par ondelettes de Gabor.
5.1. ÉLABORATION DES GRAPHES POUR LA RECONNAISSANCE DE VISAGE
77
5.1.1 Analyse par morphologie mathématique
Cette méthode a été utilisée par Kotropoulos [34], pour extraire les diérentes
informations de forme dans le voisinage des noeuds. On eectue une série d'érosions
et de dilatations par des éléments structurants de forme circulaire. Leurs tailles varient
de 3 × 3 à 19 × 19. La gure 5.1 montre un exemple du résultat de successions
d'opérations morphologique sur une image en NIR où la première image est l'érosion
de l'image d'origine par l'élément de la taille la plus grande et la dernière image est
la dilatation de l'image d'origine par cet élément.
Figure 5.1: Érosion et dilatation successives avec des éléments structurants cir-
culaires de taille variable sur une image en NIR. De haut en bas de gauche à
droite Érosion par un élément structurant de taille décroissante (E9 -> E2), puis
Dilatation par un élément structurant de taille croissante (D2 -> D9)
Dans ces images, on remarque que la pupille est de plus en plus brillante au fur et
à mesure que l'on réalise des dilations. En eet, la tâche qui correcpond à la reexion
de la lumière sur la pupille qui est de forme circulaire s'agrandit avec la dilatation par
un élément circulaire. On pourrait exploiter ce fait pour une détection des yeux tel
que l'as proposé Zou dans sa thèse [86].
78
CHAPITRE 5. ALGORITHME DE RECONNAISSANCE DE VISAGE
Une grille rigide est ensuite placée sur le visage. Ses points constituent l'ensemble
des noeuds du graphe. Le jet est composé des valeurs des pixels des images érodées
et dilatées. Un jet se compose dès lors de :
J(x, y) = {D9 (x, y); . . . ; D1 (x, y); I(x, y); E1 (x, y); . . . ; E9 (x, y)}
où Dn (x, y) (respectivement En (x, y)) est la valeur de l'image érodée (respectivement
dilatée) par l'élément de rang n au pixel (x, y), et I(x, y) est la valeur du pixel dans
l'image d'origine. Cette approche bien que relativement simple présente de faibles
performances comparées à celles données par une analyse de Gabor. Dans [48], on
étudie cette diérence qui est de l'ordre de 30% sur des tests faits sur la base XM2VTS.
5.1.2 Analyse par les ondelettes de Gabor
Une alternative à l'usage de la morphologie mathématique est l'application d'une
transformée d'ondelette. Les ondelettes de Gabor sont connues comme le moyen d'analyse espace-fréquence qui minimise l'incertitude de Heisenberg à savoir si on est précis
dans l'analyse de l'information dans l'espace du pixel on le sera moins dans l'espace
fréquentiel et vice versa. Cette caractéristique fait des ondelettes de Gabor un moyen
puissant pour l'analyse de la texture. Elles ont été développées au début pour l'analyse
des signaux à une dimension. Leurs expression générale est :
2
W (t, t0 , ω) = e−σ(t−t0 ) e−iω(t−t0 )
où ω est la fréquence et i2 = −1. Cette cette ondelette est en fait une gaussienne
modulée par une fonction sinusoïdale. La généralisation de cette fonction en 2D donne
une fonction gaussienne à deux dimensions modulée par une harmonique. Les ondelettes de Gabor 2D ont la caractéristique d'être modulable par diérents paramètres
qui contrôlent leurs orientations, fréquences, phases, tailles et aspects. L'équation
générale d'une ondelette de Gabor en 2D est :
W (x, y, θ, λ, ϕ, σ, γ) = e−
x02 +γ 2 y 02
2σ 2
x0
ei( λ +ϕ)
(5.1)
où x0 = xcosθ + ysinθ et y 0 = −xsinθ + ycosθ. Il y a donc 5 paramètres qui
contrôlent l'analyse par ondelette. Ce jeu de paramètres permet dès lors une analyse
complète de la texture d'une région de l'image. La gure 5.2 montre les diérentes
orientations et résolutions des parties réelles des ondelettes de Gabor en 2D.
5.2 La comparaison élastique des graphes - EGM
L'algorithme de référence utilisant les graphes est celui proposé par Wiskott et
al. [81] et qui sera noté EGM-CSU. Cet algorithme se base sur la détection des
5.2. LA COMPARAISON ÉLASTIQUE DES GRAPHES - EGM
79
Figure 5.2: Les diérentes orientations et résolutions des parties réelles des ltres
de Gabor utilisés
points caractéristiques du visage qui constitueront les noeuds du graphe. Nous allons
voir dans ce paragraphe la méthode employée pour former un graphe représentant
le visage et l'approche de comparaison des graphes tel que proposée par [81]. Nous
avons aussi réalisé des expériences avec cet algorithme de base. Ainsi nous avons
étudié l'inuence du nombre des noeuds dans la méthode sur les performances de
reconnaissance sur une base publique BANCA [6].
5.2.1 Détection des noeuds dans le EGM-CSU
La première étape de l'algorithme est la détection des points caractéristiques. Ils
sont au nombre de 25. Ces points sont communs à tous les visages, mais leur forme
peut changer d'une personne à une autre comme le nez, les yeux, la bouche. Les
points sont dénis précisément de manière à minimiser l'erreur de leur localisation.
Par exemple pour le nez, on précise bien le centre bas du nez, ou l'extrémité gauche
80
CHAPITRE 5. ALGORITHME DE RECONNAISSANCE DE VISAGE
du nez, etc.
Pour pouvoir bien localiser les noeuds du graphe, une étape d'apprentissage est
nécessaire. L'opérateur marque manuellement sur une cinquantaine d'images normalisées ces diérents points. On crée par la suite un modèle de chaque point basé sur
sa position géométrique dans le visage et sur l'analyse fréquentielle obtenue par les
ltres de Gabor. La détection de ces diérents points se fait sur le reste des images
de la base en deux étapes :
1. Localisation grossière du point : Grâce à la position moyenne de chaque noeud
par rapport à la position des yeux, déterminée durant l'étape d'apprentissage,
nous déterminons la position du point dans la nouvelle image normalisée. On
a donc besoin de connaître la position des yeux au préalable et de normaliser
l'image avant de détecter les diérents noeuds.
2. Anage de la détection : La position trouvée précédemment n'est qu'une estimation de la région pouvant contenir le noeud recherché. Il faut donc aner
la position du point. En utilisant l'analyse par les ltres de Gabor, nous allons
chercher le point dans le voisinage du point initial qui est le plus similaire au
vecteur Jet extrait lors de l'apprentissage. La mesure de la similitude du vecteur
Jet qui est composé des diérents modules de la réponse des ltres de Gabor,
se fait selon la formule suivante :
PN
0
j=1 aj aj cos(φj − φ0j )
0
(5.2)
Sφ (J, J ) = qP
PN 02
N
2
j=1 aj
j=1 aj
où N est le nombre de composantes du vecteur Jet, aj (respectivement a0j ) est
l'amplitude de la j ième composante du vecteur jet J (respectivement J 0 ) et
φj (respectivement φ0j ) est la phase de la j ième composante du vecteur jet J
(respectivement J 0 ). Ce score varie donc entre -1 et 1 et il est maximal quand
les deux phases et amplitudes sont similaires.
5.2.2 Extraction de caractéristiques et paramètres des ondelettes de
Gabor dans l'approche CSU
Après la détection des diérents n÷uds du graphe, la seconde étape dans l'algorithme de comparaison des graphes est l'extraction des caractéristiques locales. Dans
l'approche EGM-CSU, le vecteur caractéristique se compose des modules du résultat
de la convolution des voisinages des n÷uds par des ltres de Gabor. Pour nos tests sur
la base IRVI et Banca, nous avons appliqué les paramètres par défaut du programme
de l'université CSU. Ces paramètres ont été proposés par Wiskott de manière à avoir
une meilleure analyse locale [80]. De l'équation 5.1, on a choisi le jeu de variables
suivant pour construire le vecteur Jet :
5.2. LA COMPARAISON ÉLASTIQUE DES GRAPHES - EGM
81
θ spécie l'orientation du ltre. On a utilisé dans ce cas 8 orientations :
{0, π/8, π/4, 3π/3, π/2, 5π/8, 3π/4, 7π/8}
λ spécie la longueur d'onde et donc la fréquence de la sinusoïde. Cette variable
√
√
peut prendre 5 valeurs comprises entre 4 et 16 : {4, 4 2, 8, 8 2, 16}
ϕ spécie la phase de la sinusoïde. Elle vaut 0 ou π/2 selon que l'on veut la
partie réelle ou imaginaire.
σ spécie la variance de la gaussienne (sa taille). Elle est proportionnelle à la
longueur d'onde de la sinusoïde. Dans notre cas σ = λ.
γ spécie l'aspect de la gaussienne. Ici les gaussiennes sont de forme circulaire :
γ = 1.
Ainsi le vecteur Jet utilisé est composé des 40 modules de la réponse des diérents
ltres de Gabor.
5.2.3 Comparaison des graphes
Après la détection des 25 points caractéristiques du visage et la construction des
Jets au niveau de chaque noeud, on dénit une série de liens (contours du graphe)
qui relient les noeuds. Dans la méthode proposée par Wiskott, ils sont au nombre
de 50. Ainsi le graphe caractéristique du visage est composé de 25 noeuds et de 50
segments. La gure 5.3 montre une image de la base BANCA et le graphe associé.
Figure 5.3: Représentation d'un graphe sur une image de la base BANCA
La comparaison de graphes se fait par calcul de similarité entre les Jets selon
l'équation 5.2. Pour modéliser le déplacement des noeuds et ainsi le changement dans
l'ensemble des contours entre image de référence et image de test, l'auteur a associé
un Jet à chaque segment. Ce Jet est l'analyse de Gabor du milieu du segment. Ainsi,
on a en tout 80 Jets pour chaque image de visage. La similitude entre deux graphes
82
CHAPITRE 5. ALGORITHME DE RECONNAISSANCE DE VISAGE
Figure 5.4: Exemples d'image de la base BANCA (a) image en haute résolution
contrôlée (b) Dégradée (c) non contrôlée
est la moyenne de similitude des jets correspondants :
80
S(G, G0 ) =
1 X
Sφ (Jj , Jj0 )
80
(5.3)
j=1
5.2.4 Inuence du nombre des noeuds
Le choix d'avoir un graphe composé de 25 points n'était pas expliqué dans la
littérature. Nous avons choisi de modier le graphe, déni dans l'algorithme proposé,
en diminuant le nombre de n÷uds pour évaluer l'eet sur les performances de reconnaissance de l'algorithme sur une base publique :BANCA.
Base de donnée visage BANCA
Cette base de données contient deux modalités : la voix et le visage. On y trouve
deux types d'acquisition : une en haute dénition et une seconde en dégradé. Les
personnes sont enregistrées selon trois protocoles : contrôlé, dégradé et non contrôlé.
La gure 5.4 montre une image d'une personne acquise selon les trois protocoles. La
base contient 12 sessions. 208 personnes ont été enregistrées dans cette base à parité
égale homme-femme. Mais, les données disponibles correspondent à 52 personnes :
26 hommes et 26 femmes.
Plusieurs combinaisons de test sont possibles sur cette base par permutations des
diérentes sessions. Nous nous sommes intéressés dans ce travail au protocole de
comparaison Test Commun (Pooled Test : P). Dans celui ci, on considère que les
images de référence sont issues d'une session contrôlée (S1) et les images de tests
sont issues du reste de la base. La base est divisée en deux groupes : g1 et g2. Chaque
groupe contient 13 hommes et 13 femmes.
5.2. LA COMPARAISON ÉLASTIQUE DES GRAPHES - EGM
83
Inuence du nombre des n÷uds
Pour étudier l'inuence du nombre des n÷uds sur les performances de reconnaissance, on a éliminé, en premier lieu 5 noeuds que nous avons choisis par rapport à
leur signication anthropométrique. Nous avons pensé que l'élimination par exemple
du sommet de la tête n'aurait pas d'inuence sur le taux d'erreur. Nous avons aussi
éliminé les contours associés à ces n÷uds. Le nombre total de jet dans le graphe, dans
ce cas, est de 52 (nombre des n÷uds et des segments). Ce test sera noté 20C dans la
suite du texte. La gure 5.5 a) montre le graphe associé aux 20 noeuds restants. Dans
un second temps, nous avons omis aléatoirement 5 noeuds du graphe initial et les
segments reliés à ces derniers. Ce cas nous a généré un graphe composé de 56 jets. Ce
test est noté par 20 dans la suite. La gure 5.5 b) représente ce graphe. La dernière
conguration de graphe eectuée est avec 15 n÷uds aléatoirement omis. Le nombre
de Jets est de 33 dans ce cas. La gure 5.5 c) montre le graphe avec 15 n÷uds.
Le protocole de test que nous avons appliqué sur cette base est le protocole P
déni dans le paragraphe précédent. Les images de référence dans ce protocole sont
choisies dans la session contrôlée et dans la session non contrôlée (images de webcam).
Les images de test sont issues du reste de la base.
Figure 5.5: Variation du nombre des noeuds dans un graphe : a) 20 noeuds
choisis b) 20 noeuds aléatoirement choisis et c) 15 noeuds aléatoirement choisis
Le tableau 5.1 montre les résultats associés aux diérents nombres de n÷uds dans
un graphe. On voit dans un premier temps que les scores de reconnaissance sont du
même ordre de grandeur. L'écart de performances entre un graphe composé de 15
noeuds et un de 25 n÷uds est assez faible : dans le protocole de test g1 avec un
graphe de 25 points on a 25.5% de HTER alors qu'avec 15 noeuds on a 25.8%. Cela
peut être dû à la taille des ltres de Gabor utilisés (les plus grands ont une taille
de 128). En eet, avec une taille des images de 140 × 140 le ltre de taille 128
permet de presque réaliser une analyse globale sur toute l'image. Pour deux n÷uds
proches, la réponse de ce ltre de ce ltre de taille 128 serait similaire. Aussi la
méthode de calcul de similarité donne le même poids aux diérents Jets, or les ltres
84
CHAPITRE 5. ALGORITHME DE RECONNAISSANCE DE VISAGE
de grande taille donnent une réponse assez grande en module par rapport aux ltres
de petites tailles. Ce qui explique le même ordre de grandeurs des performances de
reconnaissance, indépendamment du nombre de n÷uds. Nous remarquons aussi que
le choix des n÷uds par notre stratégie anthropomorphique n'est pas très inuent sur
les performances de reconnaissance.
Protocole de test
Nbr de noeud dans le graphe
HTER (%)
25
25.5
20C
25
g1
20
21.8
15
25.8
25
22.9
20C
26.2
g2
20
23.3
15
26.5
Table 5.1: Comparaison des performances de reconnaissance en fonction du
nombre des n÷uds dans un graphe
BANCA − g1
BANCA − g2
100
100
15 N
20 N
20C N
25 N
90
80
70
70
60
60
FRR (%)
FRR (%)
80
50
50
40
40
30
30
20
20
10
10
0
0
20
40
60
FAR(%)
80
100
15 N
20 N
20C N
25 N
90
0
0
20
40
60
FAR (%)
80
100
Figure 5.6: Courbes ROC de performance de reconnaissance selon le nombre de
noeud dans un graphe sur la base BANCA - Protocole P
De ces essais nous pouvons conclure que pour avoir des bons taux de reconnaissance, il faut avoir au moins 20 points, ce qui correspond à 35 Jets dans un graphe.
Nous allons exploiter ce résultat lorsque nous allons construire le graphe par une nouvelle méthode, nous prenons garde à avoir au moins 35 Jets. Nous allons présenter
dans la suite notre méthode qui utilise l'image de contour pour extraire les n÷uds.
5.3 Exploitation de l'image de contour - Algorithme
EGM-TMSP
Lorsque nous étudions l'image des contours obtenue par la méthode décrite dans
la section 4.3.1, nous voyons que la majorité des points caractéristiques utilisés dans
l'approche proposée par Wiskott se trouvent sur ces contours (les yeux, les points du
nez : coins et centre, etc.). Nous allons exploiter ce fait pour construire notre graphe.
5.3. EXPLOITATION DE L'IMAGE DE CONTOUR - ALGORITHME EGM-TMSP
85
Récemment des travaux de l'université de Vigo [23] se sont orientés vers l'exploitation
des arêtes (ridges) et des vallées (valleys) pour construire l'ensemble de noeuds.
Dans ce travail, à partir d'une image classique, on extrait les diérents contours par
un ltre de Sobel. Ce ltre génère beaucoup de contours fermés et cette méthode
d'extraction de contour soure d'une sensibilité à l'illumination. Ainsi, les contours
changent d'aspect selon l'éclairage. Un pré-traitement pour atténuer ces eets est
alors nécessaire. Les auteurs utilisent, ensuite, une grille dense (le nombre de points
est supérieur à 100) couvrant l'image. Cette grille sert pour échantillonner leur image
de contours. Tous les points de la grille sont alors déplacés pour être sur l'image de
contour. Chaque noeud de la grille correspond à un seul et unique point du contour.
Un système de ag est alors aecté pour avoir cette unique correspondance entre la
grille et les contours. On procède alors par une analyse par des ltres de Gabor sur
chaque noeud.
Notre approche s'inspire de la méthode de Vigo mais prend en compte explicitement notre méthode d'extraction de contours telle que dénie dans le paragraphe
4.3.1. Travaillant sur des images NIR, notre contour sera stable aux variations d'illumination comme montré précédemment. De plus les contours obtenus sont diérents
de ceux obtenus par la méthode de Vigo ; ils contiennent les bords du nez, la bouche
c'est à dire les caractéristiques naturelles du visage. On donc a utilisé une grille pour
échantillonner l'image de contours générée par les images NIR comme décrite dans
le paragraphe 4.3.1. Une question que l'on peut se poser est de savoir si ona besoin
d'autant de noeuds que dans la littérature (Vigo, CSU) ? Notre analyse sur le nombre
de noeuds montre qu'un nombre aussi élevé (80 Jets comme dans la méthode EGMCSU) n'est pas nécessaire, mais il faut dans ce cas bien positionner la grille. Nous
basons sur nos travaux eectués dans le chapitre 4, nous avons choisi de recadrer en
premier lieu la grille sur la partie du visage limitée par les yeux et la bouche (voir
gure 5.7) et non de la poser sur l'image complète comme dans l'article [23]. La grille
est positionnée selon la position des yeux et de la bouche. Cela nous permet d'éviter
un calcul de recadrage des grilles durant les comparaisons. Cela nous permet aussi
de n'avoir que des points signiants par la suite. La gure 5.7 montre un exemple de
positionnement adapté à la position des yeux et de la bouche pour l'image de contour
(a) et son équivalent sur l'images NIR (b).
On remarque qu'avec cette méthode, certains noeuds de la grille n'appartiennent
pas à l'image de contour. Ces points se trouvent donc dans une région continue où
il n'y a pas de changement de texture. Nous avons éliminé les points de la grille
n'ayant pas dans leurs voisinages un contour. Cette opération nous permet de réduire
le nombre des noeuds sans pour autant perdre de l'information pertinente. Les points
restants sont alors déplacés vers le point du contour le plus proche et ayant la valeur
86
CHAPITRE 5. ALGORITHME DE RECONNAISSANCE DE VISAGE
Figure 5.7: Positionnement d'une grille sur le visage selon la position des yeux
et de la bouche a) Image de contour, (b) Image en NIR
Figure 5.8: Sélection des n÷uds dans la méthode de l'Université de Vigo [23] :
Images à gauche présentent le visage en lumière visible de la même personne, les
images au centre sont les images des vallées extraits et les images à droites sont
les n÷uds sélectionnés pour le graphe de chaque visage
la plus importante dans l'image de contours. Ce point est alors marqué comme "pris",
et aucun autre noeud ne sera aecté à ce point. Cela nous permet d'éviter d'avoir le
cas de deux noeuds superposés. De plus nous avons limité la taille du voisinage d'un
noeud de telle sorte que les voisinages n'aient pas de partie commune entre eux. Le
résultat de cette sélection des points du contour est montré en gure 5.9. Dans cette
gure, on remarque que le changement de pose n'aecte pas beaucoup la position des
noeuds ni leur nombre : dans les deux images on en compte 64.
Après avoir sélectionné un ensemble de points de l'image de contour, nous appliquerons l'analyse de Gabor au voisinage de chaque point de cet ensemble. Chaque
noeud est représenté par un vecteur jet constitué par les modules des réponses des
ltres décrits précédemment. Ainsi une image de visage est maintenant modélisée par
ce graphe. Pour comparer deux graphes nous allons mettre en correspondance les
diérents noeuds selon la méthode décrite dans la section suivante.
5.3. EXPLOITATION DE L'IMAGE DE CONTOUR - ALGORITHME EGM-TMSP
87
Figure 5.9: Sélection des noeuds de l'image de contour et inuence d'un chan-
gement de pose sur la sélection
5.3.1 Méthode de mise en correspondance des n÷uds
La mise en correspondance des noeuds est la dernière étape avant le calcul de
similarité entre deux graphes. La méthode CSU n'a pas ce problème de mise en correspondance vu que chaque noeud possède une signication physique bien dénie.
Ce problème s'est posé avec la méthode proposée par l'université de Vigo [23]. Pour
cela, ils ont étudié la ressemblance de la forme du voisinage de chaque noeud. Cela
peut se faire par une étude de l'histogramme local, par ltrage DoG ou par gradient.
Cette méthode est aussi utilisée dans l'algorithme SIFT (Scale-invariant feature transform) [44]. Ainsi, on calcule l'histogramme local de chaque point du graphe de l'image
de référence et on le compare à ceux des points du graphe de test. Cet algorithme
nécessite donc la mémorisation des jets et de l'histogramme local de chaque noeud
de l'image de référence. Le calcul de mis en correspondance est coûteux dans cette
méthode vue le nombre de noeuds qui constituent le graphe et la méthode de comparaison des n÷uds utilisée.
Dans notre cas, pour limiter l'utilisation de mémoire (données enregistrées en référence), nous fabriquons un procédé plus simple en utilisant les données déjà disponibles
c'est à dire les jets et la grille. La comparaison directe des jets n'a pas donné un bon
résultat de correspondance. Nous avons alors étiqueté les n÷uds de la grille initialement ajustée sur le visage. Leurs coordonnées initiales dans la grille sont mémorisées
avec le jet associé. La correspondance se fait alors avec les noeuds de même coordonnée ou avec ses voisins s'il en existe. Dans le cas contraire où le n÷ud n'a pas son
correspondant de même coordonnée et ses voisins sont déjà mis en correspondance,
le noeud n'est pas pris en compte pour le calcul de similarité. La gure 5.10 montre
la correspondance entre les noeuds des graphes de deux images.
La similarité entre deux graphes est alors calculée avec les jets des noeuds mis en
88
CHAPITRE 5. ALGORITHME DE RECONNAISSANCE DE VISAGE
correspondance. Nous avons utilisé le calcul de similitude tel que décrit dans l'équation 5.2. Cependant, nous avons calculé séparément, les similarités des éléments du
vecteur jet correspondant à des ltres de même taille : on calcule tout d'abord la similarité des diérentes réponses des ltres de même taille, puis on moyenne le tout. En
eet, le fait que les réponses des ltres de grande taille soient plus grandes que celles
des ltres de petite taille tend à atténuer l'inuence des ltres de petites résolutions.
Figure 5.10: Méthode de correspondance des graphes selon les coordonnées des
noeuds dans la grille originale, les traits continus présentent une mise en correspondance entre noeuds de mêmes coordonnées, les traits discontinus sont une
correspondance entre noeuds possible vu qu'ils sont voisins et n'ont pas de noeuds
correspondants
5.4 Comparaisons et Performances
Pour évaluer notre nouvel algorithme, nous avons mis en place un protocole de
test sur la base IRVI. Nous avons aussi comparé les performances de reconnaissance
de l'algorithme proposé avec l'algorithme original proposé par l'université CSU et avec
deux algorithmes de référence basés sur une approche globale : le LDA et un autre
algorithme plus performant combinant l'analyse de Gabor et une classication LDA
développé dans notre laboratoire [61]. Nous décrivons, brièvement, en premier lieu, ces
deux algorithmes de référence. Puis, nous présenterons les performances respectives
de toutes les méthodes.
5.4.1 Algorithmes de référence
Les algorithmes décrits dans la suite sont des algorithmes connus [61]. Ils nous
servent de base de comparaison avec notre approche.
5.4. COMPARAISONS ET PERFORMANCES
89
Analyse linéaire discriminante (LDA)
Cette méthode se classe parmi les approches globales de reconnaissance. Dans
ce type d'approches on cherche à modéliser un espace de visages construit à partir
d'une base de donnée d'apprentissage. Puis on représente le visage dans cet espace
P
de dimension réduite, par rapport à l'espace des images 2D, Φ par x = ni=1 αi Vi où
x est le vecteur de l'image dans l'espace initial et (Vi ) sont les vecteurs propres de
l'espace réduit. L'intérêt de cet algorithme est de déterminer les axes qui accentuent
la diérence entre les classes. La procédure tend ainsi à réduire les diérences au
sein d'une même classe. Ainsi on rassemble les éléments d'une même classe tout en
diérenciant les classes [7]. Pour cela, on dénit deux mesures : la première est la
mesure de dispersion intra-classe (within-classe scatter matrix) dénit par :
Nj
c X
X
Sw =
(xji − µj )(xji − µj )T
j=1 i=1
où xji est le ime composant de la classe j , µj est la moyenne de la classe j , c est
le nombre de classes et Nj le nombre d'échantillon de la classe j . La deuxième mesure
est la mesure de dispersion inter-classe (Between-class scatter matrix) dénie par :
Sb =
c
X
(µj − µ)(µj − µ)T
j=1
où µ est la moyenne de tout les échantillons. Pour maximiser la ressemblance
intra-classe en minimisant l'inter-classe, nous cherchons la matrice de transformation
W qui maximise le critère suivant :
J(W ) =
W T Sb W
W T Sw W
Dans ce travail, cet espace réduit est construit avec des images issues de la base de
données FRGC (Face Recognition Grand Challenge). Cette base représente mieux les
images en visible. Vu la non-disponibilité d'assez de données en proche infrarouge,
nous avons utilisé cette même base pour représenter les données NIR même si cela
n'est pas optimal.
Analyse linéaire discriminante des coecients de Gabor - GLDA
Cette seconde approche est bien plus complexe que la précédente, mais elle a
montré son ecacité dans les compétitions menées par le NIST et dans les expériences
comparatives menées dans [61]. Dans cet algorithme, le visage est modélisé par les
résultats d'analyse de Gabor de l'image. On a utilisé dans ce cas 16 ltres avec 4
90
CHAPITRE 5. ALGORITHME DE RECONNAISSANCE DE VISAGE
orientations et 4 résolutions. Ainsi la représentation de l'image I est IGs,o = I ⊗ Gs,o
où Gs,o constitue l'ensemble des ltres de Gabor obtenus en variant l'orientation o et
la taille s et ⊗ est l'opérateur de convolution.
L'algorithme combine l'utilisation de la phase et du module pour construire un modèle
plus robuste. En eet, l'analyse de Gabor donne une valeur complexe, cette valeur peut
avoir sa partie réelle et imaginaire proche de zéro. Cela crée une forme indéterminée
lors du calcul du module et de la phase. Pour résoudre ce problème, les points qui
ont des valeurs en dessous d'un seuil seront omis. Le vecteur composé des diérentes
analyses de Gabor constituera l'entrée du classieur LDA.
5.4.2 Protocoles de test
Pour tester les performances de reconnaissance apportées par les images NIR avec
les variations d'illumination nous avons conduit une série de tests sur la base IRVI. La
base décrite dans le paragraphe 3.3.3, contient 60 personnes acquises en 2 sessions,
chaque session contient 3 protocoles d'acquisition qui mettent en jeu la variation de
l'illumination. Pour chaque personne, nous avons choisi 5 images de référence issues
du protocole 1 de la 1ère session (S1P1) décrit dans le paragraphe 3.3.3. Les images
de test sont elles issues des autres protocoles et session. Pour chaque protocole d'acquisition on extrait 5 images de test. Chaque personne a ainsi 5 images de référence
et 30 images de test (5 images de S1P1, 5 de S2P1, etc.). Nous avons testé les algorithmes au sein de la première session avec le premier protocole (éclairage contrôlée)
ce test est nommé TS1P1. Pour une personne donnée, on compare durant ce protocole de test 5 images de S1P1 avec 5 autres images de S1P1. Pour déterminer le score
client de ce test, on ne retient que le maximum des ces comparaisons. Pour chaque
personne cliente, les tests imposteurs sont la comparaison des images de référence
du client avec les images de tests (5 images pour chaque imposteur) de 10 autres
personnes. Dans ce protocole nous eectuons alors 300 comparaisons intra-classe et
3000 comparaisons interclasse.
Le deuxième protocole de test vise à vérier la stabilité intersession avec même condition d'éclairage. Le temps d'acquisition entres les deux images des deux session est de
quelques semaines (environ 3 semaines). Il s'agit de comparer les images de référence
de S1P1 avec les images de test de S2P1 avec le même protocole de test que précédemment. Ce protocole de test sera noté TS2P1. On a dans ce test 270 comparaisons
intra-classes et 2700 inter-classe.
Le troisième protocole de test est une comparaison inter-session avec les diérents
protocoles de variation d'illuminations. Ainsi l'ensemble des images de référence de la
personne est comparé avec ses propres images de test issues des diérents protocoles
d'acquisition de la base. Pour les comparaisons imposteurs, on compare les images de
91
5.4. COMPARAISONS ET PERFORMANCES
références avec celles de 10 autres personnes avec les diérents protocoles et sessions.
Ce test nommé TS2PA comporte une comparaison entre S1P1 et S1P2, S1P3, S2P1,
S2P2 et S2P3. Durant ce protocole, on teste la robustesse des algorithmes par rapport
aux illuminations et par rapport aux variations dans le temps. Ce test comporte un
nombre de comparaison assez élevé par rapport aux tests précédents. En eet, on a
1650 comparaisons intra-classe et 15500 inter-classe.
Intervalle de conance
La base IRVI construite avec le capteur développé est considérée comme un base de
faible taille. De plus le nombre de comparaison intra-classe (1650 comparaisons client
pour TS2PA) est bien inférieur à celui inter-classe (15500 comparaisons imposteurs
pour TS2PA). Il y a un rapport de 100 entre eux. Le nombre de comparaison étant
assez faible, les résultats sont donc soumis à une marge d'erreur qu'il est important
d'indiquer par rapport à la généralisation qui peut être attendue des modèles testés.
Nous allons donc calculer l'intervalle de conance de nos taux d'erreurs. Cette mesure
paramétrique, nous permet d'évaluer dans quel intervalle peut varier notre mesure
d'erreur et ainsi nous permettre d'encadrer les performances si on eectue des tests
sur une base de taille plus importante.
Nous estimerons les taux d'erreur F AR(τ ) et F RR(τ ) pour une valeur du seuil donnée
τ par la fonction de répartition empirique pour les deux classes client et imposteur.
On considère Fc , respectivement Fi , la fonction de répartition client, respectivement
imposteur :
Z τ
Z ∞
F AR(τ ) = 1 − Fi (τ ) = 1 −
fi (x)dx =
fi (x)dx
−∞
τ
Z
F RR(τ ) = Fc (τ ) =
τ
−∞
fc (x)dx
où fi et fc sont les densités de probabilités des clients et des imposteurs. Sur une base
contenant Nc scores client et Ni scores imposteur, on estime les taux d'erreurs par :
Ni
1 X
[
1(xj > τ )
F AR(τ ) = 1 − F̂i (τ ) =
Ni
j=1
Ni
1 X
F[
RR(τ ) = F̂c (τ ) =
1(xj ≤ τ )
Nc
j=1
On introduit une variable aléatoire Z binomiale de probabilité p = Fc (τ ) pour Nc
tirages. La distribution de probabilité de cette variable est :
P (Z = z) = CzNc Fc (τ )z (1 − Fc (τ )Nc −z , z = 0, . . . , Nc
92
CHAPITRE 5. ALGORITHME DE RECONNAISSANCE DE VISAGE
TS1P1 − EGM−CSU
5
NIR
VI
4.5
4
3.5
FRR (%)
3
2.5
2
1.5
1
0.5
0
0
1
2
3
4
5
FAR (%)
Figure 5.11: Courbe ROC de l'EGM-CSU sur la base IRVI avec le protocole
TS1P1
L'espérance de la variable Z est E(Z) = Nc Fc (τ ) et son espérance est σ 2 =
Nc Fc (τ )(1 − Fc (τ )). Si Nc tend vers l'inni alors la variable Z tend vers une variable normale. F̂c (τ ) est la moyenne d'une loi normale d'une variance :
s
σ̂c (τ ) =
F̂c (τ )(1 − F̂c (τ ))
Nc
L'intervalle de conance est donc déterminé par les percentiles de la distribution
normale. Pour calculer alors l'intervalle de conance à 90% pour F̂c (τ ) correspondant
à un percentile à 90% centré sur la loi normale :
Fc (τ ) ∈ [F̂c (τ ) − 1.645σ̂c (τ ), F̂c (τ ) + 1.645σ̂c (τ )]
On calcule de même l'intervalle de conance de Fi (τ ).
5.4.3 Expériences et Performances
Performances des algorithmes standards
Dans un premier temps, nous avons testé l'algorithme de l'EGM-CSU sur notre
base IRVI et sur les images NIR et visible. Nous avons annoté manuellement sur 50
images en NIR les diérents points caractéristiques. Ces images sont issues des diérents protocoles d'illumination pour avoir un modèle qui tient compte des variations
d'illumination surtout pour les images en visible. Nous avons d'abord expérimenté le
protocole TS1P1. Le résultat est montré dans la courbe ROC de la gure 5.11.
93
5.4. COMPARAISONS ET PERFORMANCES
Les performances de reconnaissance, exprimées en EER, sont de 0.76% pour les
images NIR et de 1.44% pour les images en visible pour l'expérience TS1P1. En observant la courbe ROC du test TS1P1, on voit que, pour tout point de fonctionnement,
la reconnaissance avec des images NIR est meilleure que celle en VI. Cela peut être
dû à une meilleure détection des n÷uds avec les images NIR. Mais ces performances
restent dans le même ordre de grandeur. En eet dans le premier protocole de test,
on contrôle l'illumination ce qui met à égalité les deux types d'image. Nous allons
tester aussi la robustesse de l'algorithme aux eets d'illumination durant le troisième
protocole TS2PA. Il faut noter que le nombre de tests dans ce cas est 5 fois supérieur
au premier vu qu'on y intègre tous les protocoles d'acquisition de la base. La gure
5.12 est la courbe ROC de ce test. On y obtient un taux de EER égal à 5.44% pour
les images NIR et 19.33% pour les images en visible.
TS2PA − EGM
Visible
NIR
20
FRR (%)
15
10
5
0
0
5
10
15
20
FAR (%)
Figure 5.12: Courbe ROC de l'EGM-CSU sur la base IRVI - protocole TS2PA
On peut conclure de la courbe 5.12, l'apport de l'utilisation de l'infrarouge quand
on a des variations importantes de l'illumination. En eet, il y a un écart relatif de
30% dans les performances de reconnaissance entre les deux types d'images avec
cet algorithme à approche locale. On conclut donc que les changements dans les
caractéristiques dûs aux variations d'illumination détériorent les performances de reconnaissance.
Pour valider la robustesse des images en infrarouge, nous avons eectué d'autres
tests avec des algorithmes à approche globale. Ces algorithmes ont été décrit précédemment dans le paragraphe 5.4.1. Ainsi nous avons eectué la même série de tests
avec la LDA et l'analyse de Gabor par LDA (GLDA). Les gures présentées ci après
sont les résultats obtenus avec les diérents protocoles de test sur la base IRVI.
94
CHAPITRE 5. ALGORITHME DE RECONNAISSANCE DE VISAGE
Dans la gure 5.13, nous présentons les résultats par des courbes ROC des trois
algorithmes sur les images en NIR avec le protocole de test TS1P1. La gure 5.14
compare les performances de reconnaissances de TS1P1 sur les images en visible.
TS1P1 − NIR
5
GLDA
LDA
EGM − CSU
4.5
4
3.5
FRR(%)
3
2.5
2
1.5
1
0.5
0
0
1
2
3
4
5
FAR(%)
Figure 5.13: Courbes ROC des algorithmes LDA, GLDA et EGM-CSU sur la
base IRVI - protocole TS1P1 images NIR
TS1P1 − VI
5
EGM − CSU
LDA
GLDA
4.5
4
3.5
3
2.5
2
1.5
1
0.5
0
0
1
2
3
4
5
Figure 5.14: Courbes ROC des algorithmes LDA, GLDA et EGM-CSU sur la
base IRVI - protocole TS1P1 images VI
Pour ce protocole de test TS1P1, on vérie bien les bonnes performances de
l'algorithme GLDA pour les deux types d'images. Cet algorithme a donné en eet
de bons taux de reconnaissance dans l'étude comparative sur la base BANCA [66].
Aussi les images en NIR donnent de meilleurs résultats de reconnaissance sauf avec
95
5.4. COMPARAISONS ET PERFORMANCES
l'algorithme LDA où ils sont légèrement moins bons. Nous avons eectué les deux
protocoles de test TS2P1 et TS2PA sur les images NIR et VI. Nous avons présenté
les résultats de ces tests dans la gure 5.15 pour le protocole TS2P1 et dans la gure
5.16 pour TS2PA.
TS2P1 − NIR
10
GLDA
LDA
EGM − CSU
9
8
7
FRR(%)
6
5
4
3
2
1
0
0
1
2
3
4
5
FAR(%)
6
7
8
9
10
(a)
TS2P1 − VI
40
GLDA
LDA
EGM − CSU
35
30
FRR(%)
25
20
15
10
5
0
0
5
10
15
20
FAR(%)
25
30
35
40
(b)
Figure 5.15: Courbes ROC des algorithmes LDA, GLDA et EGM-CSU sur la
base IRVI - protocole TS2P1 (a)images NIR - (b) images VI
Dans les deux protocoles de test, on note que les meilleures performances sont
96
CHAPITRE 5. ALGORITHME DE RECONNAISSANCE DE VISAGE
réalisées par l'algorithme GLDA cela pour les images NIR et visible. Cela montre
la robustesse de cet algorithme qui fait une analyse de toute l'image du visage. Le
EGM-CSU donne des taux d'EER plus faible que la LDA. Cela montre qu'une analyse
locale par les ltres de Gabor est toujours meilleure qu'une analyse des niveaux de
gris des pixels. La diérence des taux d'erreur dans le proche infrarouge entre les
deux protocoles assiciés à deux sessions diérentes TS2P1 et TS1P1 est dûe à des
variations de pose (rotations autour de l'axe parallèle au plan focal de la caméra) et
aussi au manque de généralisation à cause de la petite taille de la base de donnée qui
induit un faible nombre de comparaisons.
Sur le graphique 5.16 (b), on voit que la courbe de l'EGM-CSU est au dessous
de celle du GLDA pour les faibles valeurs de FAR. Mais cette situation s'inverse en
augmentant le FAR. Cela montre une robustesse de l'approche locale face aux fausses
acceptations dans les cas extrêmes de sécurité.
Le tableau 5.2 donne les valeurs comparées à l'EER des diérents algorithmes suivant les diérents protocoles. Dans ce tableau, on note la stabilité des images NIR par
rapport à l'illumination et cela pour les 3 algorithmes. Notre méthode d'acquisition
permet ainsi d'obtenir des images qui fournissent des taux de vérications similaires,
quelques soient les conditions d'illumination, et cela sans ajouter des pré-traitements
à l'image, source de calcul supplémentaire. En eet, aucune des images en NIR n'ont
subi de prétraitement alors que les images en VI ont été égalisées. Au point de fonctionnement EER, l'algorithme EGM-CSU donne des performances de reconnaissance
se situant entre les deux autres algorithmes, le LDA et le GLDA l'algorithme de classication des réponses des ltres de Gabor par LDA qui est le plus performant des
trois, même en considérant les intervalles de conance. En eet, les intervalles de
conance sont aussi dépendante des valeurs des performances : plus les valeurs sont
faibles plus l'intervalle est faible ce qui limite la plage de variation de l'EER dans
le cas de l'approche GLDA. Mais, cet algorithme demande plus de calcul. En eet,
chaque pixel de l'image est analysé par le banc des ltres, et ensuite la classication
est eectuée par une projection (multiplications de vecteur). Mais lorsqu'on compare
les performances de reconnaissance des trois algorithmes sur les images NIR avec les
intervalles de conance associés, nous remarquons que les approches LDA et EGMCSU sont à peu près équivalentes pour nos protocoles de test. Sur le protocole de
test TS2PA, où on a plus de comparaisons (environ 3000 en intra) les intervalles de
conance se chevauchent ce qui donne une équivalence entre les deux approches. On
vérie cela sur la gure 5.18 (a) où les courbes sont presque superposées. Alors que
sur les images visibles, on remarque de meilleures performances de reconnaissance de
l'EGM-CSU qui sont pratiquement équivalentes à celle du GLDA. Cela nous montre
qu'une approche locale est aussi meilleure qu'une approche globale.
97
5.4. COMPARAISONS ET PERFORMANCES
EER % /
Intervalle de Conance
LDA
GLDA
EGM
TS1P1
NIR
VI
0.96
0.77
[0.9 ;1.1] [0.7 ;0.9]
0.01
0.08
[0 ;0.02]
[0 ;0.1]
0.76
1.44
[0.6 ;0.9]
[1 ;1.8]
TS2P1
NIR
4.80
[4,2 ;5.5]
1.08
[0.9 ;1.2]
4.46
[4 ;4.9]
VI
21.7
[20.8 ;22.5]
12.2
[12.1 ;12.3]
15.5
[14.9 ;16.1]
TS2PA
NIR
6.04
[5.5 ; 6.9]
3.59
[2.7 ;4.4]
5.44
[4.3 ;6.5]
Table 5.2: Performance en EER des diérents algorithmes de reconnaissance sur
la base IRVI et l'intervalle de conance
Performances de l'EGM-TMSP
Après avoir comparé les diérentes performances de reconnaissance des algorithmes standards, nous allons comparer notre approche développée dans ce chapitre avec l'EGM-CSU. Les similarités entre les deux approches sont multiples : ce
sont toutes les deux des approches locales qui se basent sur l'analyse de Gabor et
la construction d'un graphe. Cela nous donne une idée sur les performances attendues du nouvel algorithme à savoir des taux d'erreur équivalents. Les gures 5.17 et
5.18 présentent les courbes ROC des deux systèmes de reconnaissance. Le tableau 5.3
résume leurs performances de reconnaissance.
EER (%) /
Intervalle de Conance
EGM-CSU
EGM-TMSP
TS1P1
TS2PA
0.76
[0.6 ;0.9]
0.5
[0.4 ;0.6]
5.44
[4.3 ;6.5]
5.3
[4 ;6.6]
Table 5.3: Comparaison de performances de reconnaissance des deux algorithmes
de reconnaissances EGM sur la base IRVI et les intervalles de conance
Ces résultats montrent que notre méthode est bien équivalente à celle de l'EGMCSU à l'EER. Le domaine de variation des EER des deux algorithmes sont presque
les mêmes. Sur la gure 5.17 pour protocole TS1P1, on remarque aussi que l'erreur
FAR à faible FRR est moins importante pour EGM-TMSP par rapport à EGM-CSU
cela veut dire que les deux systèmes n'ont pas exactement le même comportement
pour tous les points de fonctionnement. Ceci dit, notre approche EGM-TMSP a le
grand avantage d'utiliser des opérateurs arithmétiques simples, mis à part l'extraction
des jets. Cette dernière tâche peut être exécutée sur une unité de calcul externe.
L'algorithme original demande en plus une phase d'apprentissage et une annotation
manuelle des données d'apprentissage des noeuds du graphe. L'avantage de notre
VI
28.43
[27.5 ;29.5]
20.85
[17.5 ;21.1]
19.34
[17.4 ;21.1]
98
CHAPITRE 5. ALGORITHME DE RECONNAISSANCE DE VISAGE
approche est qu'elle demande moins de calculs car elle se base sur un échantillonnage
adéquat de l'image de contour pour extraire un graphe robuste.
5.5 Conclusion
On a présenté dans ce chapitre l'approche locale la plus utilisée pour la reconnaissance de visage : la comparaison élastique des graphes. Nous avons exploité cette
approche ainsi que des approches globales (LDA,GLDA) pour montrer en premier lieu
la robustesse de notre méthode d'acquisition en proche infrarouge vis à vis des variations de l'illumination. Pour cela, nous avons comparé les performances de ces divers
algorithmes en visible et en proche infrarouge sur divers protocoles. Dans tous les cas,
on note une nette amélioration des performances en NIR par rapport au visible sur des
protocoles avec des images non contrôlées. Il faut noter que la petite taille de notre
base de donnée ne permet pas de comparer nement les algorithmes sur le protocole
contrôlé mono session TS1P1. Par contre, malgré cela, l'écart de performance entre
tous les algorithmes fonctionnant sur TS2PA entre VI et NIR est tellement important
que l'apport de l'acquisition en proche infrarouge en condition d'illumination variable
ne peut être mis en doute par la petite taille de la base.
Les approches de traitement local ont l'avantage de pouvoir être intégrées sur
SoC, cela nous a guidé pour développer une nouvelle approche locale adaptée aux
images proche infrarouges acquises par ce capteur. La stabilité de l'image de contours
par rapport aux variations d'éclairage, est un point essentiel pour la bonne détection
des points caractéristiques et cela nous a permis ensuite de construire un graphe
correspondant au visage. Notre méthode est proche de l'approche EGM-CSU et elle
est équivalente en performance de reconnaissance. De plus elle possède l'avantage
considérable d'être construite sur des opérateurs qui peuvent été intégrés sur SoC.
L'association entre des opérateurs sur le capteur et sur le SoC réduirait le temps de
calcul et l'utilisation de mémoire. Ces deux facteurs contribuent à la réduction de
la consommation électrique qui est un avantage considérable dans un contexte de
mobilité. Nous estimons que ce nouvel algorithme pourra intégré par la suite.
99
5.5. CONCLUSION
TS2PA − NIR
30
EGM − CSU
LDA
GLDA
25
FRR(%)
20
15
10
5
0
0
5
10
15
FAR(%)
20
25
30
(a)
TS2PA − VI
40
35
30
FRR (%)
25
20
15
10
EGM − CSU
GLDA
LDA
5
0
0
5
10
15
20
FAR (%)
25
30
35
40
(b)
Figure 5.16: Courbes ROC des algorithmes LDA, GLDA et EGM-CSU sur la
base IRVI - protocole TS2PA (a)images NIR - (b) images VI
100
CHAPITRE 5. ALGORITHME DE RECONNAISSANCE DE VISAGE
Protocole TS1P1
5
EGM − TMSP
EGM − CSU
4.5
4
3.5
FRR (%)
3
2.5
2
1.5
1
0.5
0
0
1
2
3
4
5
FAR (%)
Figure 5.17: Courbes ROC des systèmes de reconnaissance EGM-CSU et EGMTMSP avec le protocole TS1P1
Protocole TS2PA
30
EGM −CSU
EGM − TMSP
25
FRR (%)
20
15
10
5
0
0
5
10
15
FAR (%)
20
25
30
Figure 5.18: Courbes ROC des systèmes de reconnaissance EGM-CSU et EGMTMSP avec le protocole TS2PA
Chapitre 6
Conclusion et perspectives
Dans cette thèse, nous avons utilisé et conçu plusieurs capteurs pour la suppression
de l'illumination ambiante. Vu l'importance de la qualité des images dans l'amélioration des performances de reconnaissance, nous avons conçu de nouveaux capteurs avec
un soucis d'amélioration de la qualité d'images qui fournissent des images invariantes
par rapport à l'éclairage. Nous avons utilisé pour ce fait l'illumination active avec deux
méthodes d'acquisition : la première avec un capteur CMOS diérentiel, la seconde,
et qui présente notre apport personnel dans ce travail de thèse, une acquisition avec
réduction du temps d'exposition et un ash synchrone à la période d'acquisition. Ce
procédé utilisé avec une caméra CCD permet d'avoir des images de bonne qualité en
proche infrarouge et à moindre coût. Nous avons alors exploité la nature du capteur
pour acquérir deux trames diérentes. Nous obtenons ainsi deux informations simultanées : la première issue de la lumière visible, la seconde de la lumière issue du ash.
La présence de ces deux informations visible et proche infrarouge simultanément nous
permet d'évaluer l'apport de l'illumination active pour la suppression de la lumière ambiante par rapport au visible. Pour cela, nous avons mené une compagne d'acquisition
pour avoir une base de donnée de visage avec cette caméra (de 60 personnes).
Exploitant le bon niveau de contraste dans les images en proche infrarouge issues
du capteur développé, nous avons conçu une nouvelle méthode de détection des points
caractéristiques du visage. Nous avons extrait les contours du visage en utilisant un
ltre de même forme que le ltre DoG implémenté dans la littérature dans un imageur.
L'image de contour comprend des éléments caractéristiques du visage à savoir, les
yeux, le nez et la bouche. Nous avons alors extrait 5 points particuliers de cette
image et cela en n'utilisant uniquement des opérateurs qui ont été implémentés.
Notre approche utilise uniquement une projection avec des traitements sur des petites
101
102
CHAPITRE 6. CONCLUSION ET PERSPECTIVES
zones de l'image pour limiter les ressources de calcul. Pour évaluer les performances
de notre approche, nous l'avons testée sur les bases de données de visage acquise en
proche infrarouge à notre disposition. Nous avons obtenue de bonnes performances
de détection comparable à celles des méthodes présentes dans la littérature.
Une dernière contribution de ce travail de thèse concerne la mise au point une nouvelle approche de reconnaissance de visage. Cette approche locale se base sur l'image
de contour et elle s'inspire de l'algorithme de comparaison élastique des graphes. Nous
avons exploité le fait que l'image de contour obtenue contient les points particuliers
du visage pour extraire des points de ce contour en utilisant une grille judicieusement
placée sur le visage. Elle est, en eet, placée selon les positions des yeux et de la
bouche et couvre ainsi tout le visage. La grille est utilisée comme un élément permettant d'échantillonner l'image et de construire l'ensemble des noeuds du graphe.
Le voisinage des points extraits est analysé par un banc de ltres de Gabor. L'ensemble des points associés à l'analyse de Gabor constitue le graphe du visage. Nous
avons adapté le calcul de comparaison des graphes classiques à notre méthode pour
réduire le nombre de comparaisons entre les noeuds. Nous avons comparé les performances de notre méthode avec celles de l'algorithme original EGM-CSU, et trouvé
des résultats équivalents en terme de EER. Ce résultat était assez prévisible vu les
ressemblances entre les deux méthodes et l'utilisation du même outil d'analyse locale.
Cependant, notre approche est mieux adaptée pour une implémentation future. En
eet, notre algorithme ne demande pas d'étape d'apprentissage pour déterminer la
position moyenne des points caractéristiques. Cette dernière technique est en eet
aussi complexe que la comparaison de deux graphes.
Les perspectives de cette thèse sont en premier lieu la validation de notre algorithme de reconnaissance sur composants programmables. En eet, notre algorithme
est conçu pour une implémentation partagée entre le capteur et un composant programmable. Outre l'acquisition diérentielle ou par réduction de temps de pose qui
sont les premières opérations eectuées dans l'imageur, nous estimons que les opérations de détection de contours et de projection peuvent être implémentées sur le
capteur. En eet, le ltrage DoG est un moyen pour extraire les contours. Ce ltre
peut être implémenté par un réseau RC ou un réseau capacitif tel décrit dans le
2ème chapitre. Le deuxième opérande qui peut facilement être intégré dans le capteur
est la fonction de projection qui n'est qu'une sommation sur une même ligne. Cette
opération si elle est eectuée numériquement demandera plusieurs cycles d'opération
d'addition, alors qu'en analogique, en exploitant la loi des noeuds, on arrive à faire
la sommation instantanément avec des variables courant. Le traitement analogique
peut ainsi nous faire gagner en temps de traitement et nous économise en ressource
de calcul ultérieurement.
103
La sortie du capteur peut être l'image de contour avec la projection de celle-ci
sur l'axe horizontal. La sortie serait transmise à une unité de calcul qui peut être
soit un FPGA, un DSP ou un ARM, tout dépend des performances que l'en veut
atteindre. Cela nous permettra d'extraire les points caractéristiques du visage et ainsi
d'avoir les coordonnées des diérents points de la grille qui seront retenues. Si le
temps de traitement est assez court nous pouvons acquérir une nouvelle image sur
laquelle nous allons appliquer les ltres de Gabor autour des points ainsi trouvés. En
eet si le temps d'extraction de ces points est négligeable par rapport à un éventuel
déplacement du client nous pouvons nous passer de l'enregistrement de l'image est
ainsi économiser en mémoire du système. Dans le cas où le temps d'extraction est
assez grand, nous procédons à l'enregistrement d'une image en proche infrarouge.
Cette image serait transmise directement vers l'unité de calcul pour la formation
des jets. Nous pouvons optimiser l'enregistrement de l'image en ne conservant que
le voisinage des points caractéristiques qui forment le graphe. En eet, l'analyse de
Gabor est locale et ne s'applique que sur le voisinage des points extraits. Les ltres
de Gabor peuvent être enregistrés sur des blocs mémoires présents à l'intérieur d'un
FPGA ce qui peut réduire considérablement le temps d'accès mémoire ou dans une
mémoire externe dans le cas d'une implémentation sur DSP ou ARM. La comparaison
des graphes peut s'eectuer ensuite sur l'unité de calcul après avoir lu et chargé le
graphe référence. Cette architecture sommaire de notre approche est ainsi divisée entre
le capteur qui eectue en plus de la capture diérentielle ou avec ash synchronisé,
l'extraction de primitives et la projection. L'unité de calcul permet l'extraction des
points caractéristiques, l'analyse par les ltres de Gabor et la tâche de comparaison
des graphes.
Une autre perspective de ce travail concerne la fusion de données issues des 2
types d'image soit au niveau des scores soit des caractéristiques extraites. En eet,
grâce à la double capture en proche infrarouge et en visible, nous pouvons étudier avec
plus de détails la complémentarité des deux images et la diérence de nature dans les
caractéristiques locales. Nous pouvons explorer une fusion des caractéristiques pour
améliorer les performances de reconnaissance et ainsi bénécier de l'apport de chaque
image. La diérence de réectance de la peau dans les deux spectres peut donner une
réponse diérente aux ltres de Gabor.
Une fusion des scores de reconnaissances issues d'algorithmes avec diérents approches globales et locales pourrait aussi permettre de proter des avantages de
chaque méthode et ainsi améliorer les performances de reconnaissance.
Une autre perspective concerne le fait d'utiliser ce principe d'acquisition sur d'autres
modalités. L'acquisition de l'iris se fait aussi en proche infrarouge. Nous pouvons alors
exploiter cette caméra pour cette modalité, mais nous devons alors changer l'optique
104
CHAPITRE 6. CONCLUSION ET PERSPECTIVES
et la disposition des illuminateurs pour ne pas endommager l'oeil. Une autre modalité
qui commence à être exploitée dans les pays asiatiques est la reconnaissance par les
veines de la main. Cette modalité est bien acceptée car elle ne nécessite pas de contact,
et est dicile à falsier Son acquisition se fait aussi dans le proche infrarouge. En effet les ondes pénètrent l'épiderme et sont rééchis par les vaisseaux sanguins. Notre
procédé d'acquisition serait alors idéal pour capter les veines de la main. De même
que l'on peut étudier la complémentarité entre une image du visage dans les deux
spectres, on pourra dès lors étudier la complémentarité entre la paume de la main
(empreinte palmaire) à travers l'image en visible et les veines de la main à travers
l'image en proche infrarouge.
Bibliographie
[1]
http ://www.oki.com/jp/FSC/ics/en/.
[2]
http ://www.tsi.enst.fr/tsi/enseignement/ressources/mti/ellipses/Hough.html.
[3]
Datasheet
icx098bq.
con/english/img/sony01/a6809927.pdf.
[4]
Yael Adini, Yael Moses, and Shimon Ullman. Face recognition : The problem of compensating for changes in illumination direction. IEEE Transactions on Pattern Analysis
and Machine Intelligence, 19(7) :721732, 1997.
[5]
O. Aubreton, B. Bellach, L. F. C. Voon, B. Lamalle, P. Gorria, and G. Cathébras. Retina
for pattern matching in standard 0.6-mu m complementary metal oxide semiconductor
technology. Journal of Electronic Imaging, 13(3) :559569, 2004.
[6]
E. Bailly-Baillière, S. Bengio, F. Bimbot, M. Hamouz, J. Kittler, J. Mariéthoz, J. Matas,
K. Messer, V. Popovici, F. Porée, B. Ruiz, and J.-P. Thiran. The banca database and
evaluation protocol. In AVBPA, pages 625638, 2003.
[7]
P.N. Belhumeur, J.P. Hespanha, and D.J. Kriegman. Eigenfaces vs. sherfaces : Recognition using class specic linear projection. In Proc. of the 4th European Conference on
Computer Vision, ECCV'96, pages 4558, Cambridge, UK, April 1996.
[8]
Thierry M. Bernard. Rétines articielles : Quelle intelligence au sein du pixel ? Calculateurs parallèles, 9(1) :77108, 1997.
[9]
D.S. Bolme. Elastic bunch graph matching, 2003. Thesis for the Master of Science
Degree ; Colorado State University.
http
://www.sony.co.jp/
semi-
[10] K.W. Bowyer, K.I. Chang, P.J. Flynn, and C. Xin. Face recognition using 2-d, 3d, and infrared : Is multimodal better than multisample ? Proceedings of the IEEE,
94(11) :20002012, 2006.
[11] W. S. Boyle and G.E. Smith. Charge-coupled semiconductor devices. Bell Systems
Technical Journal, 49 :587593, 1970.
[12] R. Brunelli and T. Poggio. Face recognition : Features versus templates. IEEE Transactions on Pattern Analysis and Machine Intelligence, 15(10) :10421052, 1993.
105
106
BIBLIOGRAPHIE
[13] H.F. Chen, P.N. Belhumeur, and D.W. Jacobs. In search of illumination invariants.
Computer Vision and Pattern Recognition, 2000. Proceedings. IEEE Conference on,
1 :254261, 2000.
[14] Xin Chen, Patrick J. Flynn, and Kevin W. Bowyer. Ir and visible light face recognition.
Computer Vision and Image Understanding, 99(3) :332358, 2005.
[15] I.J. Cox, J. Ghosn, and P.N. Yianilos. Feature-based face recognition using mixturedistance. Computer Vision and Pattern Recognition, 1996. Proceedings CVPR '96,
1996 IEEE Computer Society Conference on, pages 209216, Jun 1996.
[16] J. Dowdall, I.T. Pavlidis, and G.N. Bebis. Face detection in the near-ir spectrum. IVC,
21(7) :565578, July 2003.
[17] I.L. Dreden and K.V. Mardia. Statistical Shape Analysis. John Wiley, New York, 1998.
[18] B. Duc, S. Fischer, and J. Bigun. Face authentication with gabor information on deformable graphs. Image Processing, IEEE Transactions on, 8(4) :504516, Apr 1999.
[19] G. C. Feng and P. C. Yuen. Variance projection function and its application to eye
detection for human face recognition. Pattern Recogn. Lett., 19(9), 1998.
[20] S. Garcia-Salicetti, C. Beumier, G. Chollet, B. Dorizzi, J. Leroux les Jardins, J. Lunter,
Y. Ni, and D. Petrovska-Delacrétaz. Biomet : A multimodal person authentication
database including face, voice, ngerprint, hand and signature modalities. In AVBPA,
pages 845853, 2003.
[21] J.M. Gilbert and W. Yang. A real-time face recognition system using custom vlsi hardware. Computer Architectures for Machine Perception, 1993. Proceedings, pages 5866,
Dec 1993.
[22] A.J. Goldstein, L.D. Harmon, and A.B. Lesk. Identication of human faces. Proceedings
of the IEEE, 59(5) :748760, May 1971.
[23] D. Gonzalez-Jimenez and J.L. Alba-Castro. Shape-driven gabor jets for face description and authentication. Information Forensics and Security, IEEE Transactions on,
2(4) :769780, Dec. 2007.
[24] D.O. Gorodnichy. On importance of nose for face tracking. Automatic Face and Gesture
Recognition, 2002. Proceedings. Fifth IEEE International Conference on, pages 181186,
May 2002.
[25] R. Gross and V. Brajovic. An image preprocessing algorithm for illumination invariant
face recognition. In 4th International Conference on Audio- and Video-Based Biometric
Person Authentication (AVBPA). Springer, June 2003.
[26] T. Hamamoto and K. Aizawa. A computational image sensor with adaptive pixel-based
integration time. Solid-State Circuits, IEEE Journal of, 36(4) :580585, Apr 2001.
[27] W. Hizem, Y. Ni, and B. Dorizzi. Near infrared sensing and associated landmark detection for face recognition. Journal of Electronic Imaging, 17(1) :011005, 2008.
BIBLIOGRAPHIE
107
[28] Erik Hjelmåsa and Boon Kee Low. Face dectection : A survey. Computer Vision and
Image Understanding, 83 :236274, September 2001.
[29] A. J. Howell and H. Buxton. Learning identity with radial basis function networks.
Neurocomputing, 20 :1534, Aug 1998.
[30] D.P. Huttenlocher, G.A. Klanderman, and W.A. Rucklidge. Comparing images using the
hausdor distance. IEEE Transactions on Pattern Analysis and Machine Intelligence,
15(9) :850863, 1993.
[31] O. Jesorsky, K.J Kirchberg, and R.W Frisholz. Robust face detection using the hausdor
distance. Int'l Conf. Audio- and video-Based Biometric Person Authentication, pages
9095, 2001.
[32] Bernd Jähne. Practical Handbook on Image Processing for Scientic Applications. CRC
Press, 1997.
[33] R. Kleihorst, H. Broers, A. Abbo, H. Ebrahimmalek, H. Fatemi, and H. Corporaal. An
simdvliw smart camera architecture for real-time face recognition. In In Proceedings of
ProRISC 2003, pages 17, 2003.
[34] C. Kotropoulos, A. Tefas, and I. Pitas. Morphological elastic graph matching applied
to frontal face authentication under optimal and real conditions. In ICMCS '99 : Proceedings of the IEEE International Conference on Multimedia Computing and Systems
Volume II-Volume 2, pages 934938, 1999.
[35] B. Kröse and P. van der Smagt. An Introduction to neural network. The University of
Amsterdam, 1996.
[36] M. Kyomasu. A new mos imager using photodiode as current source. Solid-State
Circuits, IEEE Journal of, 26(8) :11161122, Aug 1991.
[37] M. Lades, J. C. Vorbruggen, J. Buhmann, J. Lange, C. von der Malsburg, R. P. Wurtz,
and W. Konen. Distortion invariant object recognition in the dynamic link architecture.
IEEE Trans. Comput., 42(3) :300311, 1993.
[38] Seong-Whan Lee, Sang-Woong Lee, and Ho-Choul Jung. Audio- and Video-Based Biometric Person Authentication, chapter Real-Time Implementation of Face Recognition
Algorithms on DSP Chip, pages 294301. Springer, 2003.
[39] D. Y. Li and W.H. Liao. Facial feature detection in near-infrared images. In Proc. Fifth
Int'l Conf. Computer Vision, Pattern Recognition and Image Processing, pages 2630,
Sept 2003.
[40] D.Y. Li and W.H. Liao. Facial feature detection in near-infrared images. In International
Conference on computer vision , Pattern Recogntion and Image Processsing, pages 26
30, 2003.
[41] Stan Z. Li, RuFeng Chu, ShengCai Liao, and Lun Zhang. Illumination invariant face
recognition using near-infrared images. IEEE Transactions on Pattern Analysis and
Machine Intelligence, 29(4) :627639, 2007.
108
BIBLIOGRAPHIE
[42] S.Z. LI and A.K. Jain. Handbook of Face Recognition. Springer, 2005.
[43] Y. Li and H. Kobatake. Extraction of facial sketch image based on morphological
processing. icip, 3 :316, 1997.
[44] D. Lowe. Distinctive image features from scaleinvariant key-points. International Journal
for Compute rVision, 2 :91–110, 2004.
[45] D. Marr. Vision : A Computational Investigation into the Human Representation and
Processing of Visual Information. W. H. Freeman and Co., 1982.
[46] K. Matou and Y. Ni. Precise fpn compensation circuit for cmos aps [imager]. Electronics
Letters, 38(19) :10781079, Sep 2002.
[47] H. Miura, H. Ishiwata, Y. Lida, Y. Matunaga, S. Numazaki, A. Morisita, N. Umeki,
and M. Doi. A 100 frame/s cmos active pixel sensor for 3d-gesture recognition system.
Solid-State Circuits Conference, 1999. Digest of Technical Papers. ISSCC. 1999 IEEE
International, pages 142143, 1999.
[48] Jean-Luc Nagel. Algorithms and VLSI Architectures for Low-Power Mobile Face Verication. PhD thesis, Institut de Microtechnique - Université de Neuchâtel, juin 2005.
[49] Jean-Luc Nagel, Patrick Stadelmann, Michael Ansorge, and Fausto Pellandini. A lowpower vlsi architecture for face verication using elastic graph matching. In European
Signal Processing Conference, volume 3, pages 577580, 2004.
[50] T. Nakano and T. Morie. A digital lsi architecture of elastic graph matching and
its fpga implementation. Neural Networks, 2005. IJCNN '05. Proceedings. 2005 IEEE
International Joint Conference on, 2 :689694, July-4 Aug. 2005.
[51] I. Ng, T. Tan, and J. Kittler. On local linear transform and gabor lter representation
of texture. Pattern Recognition, 1992. Vol.III. Conference C : Image, Speech and Signal
Analysis, Proceedings., 11th IAPR International Conference on, pages 627631, Aug-3
Sep 1992.
[52] Y. Ni. Smart image sensing in cmos technology. Circuits, Devices and Systems, IEE
Proceedings, 152(5) :547555, Oct. 2005.
[53] Y. Ni and K. Matou. A cmos log image sensor with on-chip fpn compensation. SolidState Circuits Conference, 2001. ESSCIRC 2001. Proceedings of the 27th European,
pages 101104, Sept. 2001.
[54] Y. Ni, Yi min Zhu, B. Arion, and F. Devos. Yet another analog 2d gaussian convolver.
Circuits and Systems, 1993., ISCAS '93, 1993 IEEE International Symposium on, pages
192195, May 1993.
[55] Y. Ni and Xie-Long Yan. Cmos active dierential imaging device with single in-pixel
analog memory. Proceeding of ISSCC02, pages 359362, 2002.
[56] Yang Ni, F. Devos, M. Boujrad, and Jian Hong Guan. Histogram-equalization-based
adaptive image sensor for real-time vision. Solid-State Circuits, IEEE Journal of,
32(7) :10271036, Jul 1997.
BIBLIOGRAPHIE
109
[57] T. Ozaki, H. Kinugasa, and T. Nishida. A low-noise line-amplied mos imaging devices.
Electron Devices, IEEE Transactions on, 38(5) :969975, May 1991.
[58] Vivek E. P and N. Sudha. Robust hausdor distance measure for face recognition.
Pattern Recogn., 40(2) :431442, 2007.
[59] F. Paillet, D. Mercier, T.M. Bernard, and E. Senn. Low power issues in a digital programmable articial retina. Low-Power Design, 1999. Proceedings. IEEE Alessandro
Volta Memorial Workshop on, pages 153161, Mar 1999.
[60] E. Painkras and C. Charoensak. A vlsi architecture for gabor ltering in face processing
applications. Intelligent Signal Processing and Communication Systems, 2005. ISPACS
2005. Proceedings of 2005 International Symposium on, pages 437440, Dec 2005.
[61] D. Petrovska-Delacrètaz, G. Chollet, and B. Dorizzi. Guide to Biometric Reference
Systems and Performance Evaluation. Springer, 2009.
[62] L. Pierrefeu, J. Jay, and C. Barat. Auto-adjustable method for gaussian width optimization on rbf neural network. application to face authentication on a mono-chip
system. IEEE Industrial Electronics, IECON 2006 - 32nd Annual Conference on, pages
34813485, Nov. 2006.
[63] A. Pérez-Uribe and E. Sanchez. Fpga implementation of an adaptable-size neural network. In ICANN 96 : Proceedings of the 1996 International Conference on Articial
Neural Networks, pages 383388, London, UK, 1996. Springer-Verlag.
[64] Behzad Razavi. Design of Analog CMOS Integrated Circuits. McGRAW-HILL, 2001.
[65] P.-F. Ruedi, P. Heim, F. Kaess, E. Grenet, F. Heitger, P.-Y. Burgi, S. Gyger, and P. Nussbaum. A 128x128 pixel 120-db dynamic-range vision-sensor chip for image contrast and
orientation extraction. Solid-State Circuits, IEEE Journal of, 38(12) :23252333, Dec.
2003.
[66] M. Sadeghi, J. Kittler, A. Kostin, and K. Messer. A comparative study of automatic
face verication algorithms on the banca database. In AVBPA, pages 3543, 2003.
[67] F. Wanlass Fairchild Semiconductor. Low stand-by power complementary eld eect
circuitry. U.S. Patent 3,356,858, 1963.
[68] N. Shams, I. Hosseini, M.S. Sadri, and E. Azarnasab. Low cost fpga-based highly
accurate face recognition system using combined wavelets with subspace methods. In
ICIP06, pages 20772080, 2006.
[69] J. Shi, A. Samal, and D. Marx. How eective are landmarks and their geometry for face
recognition ? Comput. Vis. Image Underst., 102(2) :117133, 2006.
[70] Terence Sim, Simon Baker, and Maan Bsat. The cmu pose, illumination, and expression
database. IEEE Transactions on Pattern Analysis and Machine Intelligence, 25(12) :1615
1618, December 2003.
[71] Saad A. Sirohey and Azriel Rosenfeld. Eye detection in a face image using linear and
nonlinear lters. Pattern Recognition, 34 :13671391, 2001.
110
BIBLIOGRAPHIE
[72] D.A. Socolinsky and A. Selinger. Thermal face recognition in an operational scenario.
Computer Vision and Pattern Recognition, 2004. CVPR 2004. Proceedings of the 2004
IEEE Computer Society Conference on, 2 :II1012II1019, June-2 July 2004.
[73] Pierre Soille. Morphological Image Analysis, Principles and Applications. SpringerVerlag, 1999.
[74] M. Tabet and R. Hornsey. Cmos image sensor camera with focal plane edge detection.
Electrical and Computer Engineering, 2001. Canadian Conference on, 2 :11291133,
2001.
[75] M.A. Turk and A.P. Pentland. Face recognition using eigenfaces. Computer Vision and
Pattern Recognition, 1991. Proceedings CVPR '91., IEEE Computer Society Conference
on, pages 586591, Jun 1991.
[76] Paul A. Viola and Michael J. Jones. Robust real-time face detection. International
Journal of Computer Vision, 57(2) :137154, 2004.
[77] L. F. C. L. Voon, G. Cathebras, B. Lamalle, P. Gorria, B.Bellach, and O.Aubreton. 100x 100-pixel cmos retina for real-time binary pattern matching. Optical Engineering,
41 :924925, may 2002.
[78] G.P. Weckler. Operation of p-n junction photodetectors in a photon ux integrating
mode. Solid-State Circuits, IEEE Journal of, 2(3) :6573, Sep 1967.
[79] J. Wilder, P.J. Phillips, Cunhong Jiang, and S. Wiener. Comparison of visible and
infra-red imagery for face recognition. Automatic Face and Gesture Recognition, 1996.,
Proceedings of the Second International Conference on, pages 182187, Oct 1996.
[80] L. Wiskott, N. Kruger J.-M. Fellous, and C. von der Malsburg. Face recognition by
elastic bunch graph matching. Tech. Report 96-08, Ruhr-Universitat Bochum, April
1996.
[81] Laurenz Wiskott, Jean-Marc Fellous, Norbert Krüger, and Christopher von der Malsburg.
Face recognition by elastic bunch graph matching. IEEE Trans. Pattern Anal. Mach.
Intell., 19(7) :775779, 1997.
[82] Fan Yang and M. Paindavoine. Implementation of an rbf neural network on embedded systems : real-time face tracking and identity verication. Neural Networks, IEEE
Transactions on, 14(5) :11621175, Sept. 2003.
[83] Alan L. Yuille, Peter W. Hallinan, and David S. Cohen. Feature extraction from faces
using deformable templates. Int. J. Comput. Vision, 8(2) :99111, 1992.
[84] Z. Zhu and Q. Ji. Robust real-time eye detection and tracking under variable lighting
conditions and various face orientations. Comput. Vis. Image Underst., 98(1) :124154,
2005.
[85] X. Zou, J. Kittler, and K. Messer. Illumination invariant face recognition : A survey. Biometrics : Theory, Applications, and Systems, 2007. BTAS 2007. First IEEE International
Conference on, pages 18, Sept. 2007.
BIBLIOGRAPHIE
111
[86] Xin Zou. Illumination Invariant Face Recognition Based in Active Near-Infrared Dierential Imaging. PhD thesis, University of surrey, march 2007.
[87] F. Zuo and P. H. N. de With. Facial feature extraction by a cascade of model-based
algorithms. Image Commun., 23(3) :194211, 2008.
Appendices
113
Annexe A
Liste des Publications
Articles de Journaux :
Yang Ni, E. Krichen, W. Hizem, S. Garcia-Salicetti and B. Dorizzi, "Active differential CMOS imaging device for human face recognition", Signal Processing
Letters, IEEE , vol.13, no.4, pp. 220-223, April 2006.
Walid Hizem, Yang Ni and Bernadette Dorizzi, "Near infrared sensing and associated landmark detection for face recognition", J. Electron. Imaging 17, 011005
(2008).
Conférences Internationale :
Walid Hizem, Emine Krichen, Yang Ni, Bernadette Dorizzi and Sonia GarciaSalicetti, "Specic Sensors for Face Recognition". International Conference on
Biometrics ICB 2006. p 47-54.
Colloques Nationaux :
Walid Hizem, Yang Ni, Emine Krichen, "Ambient Light Suppression Camera for
Human Face Recogntion", Colloque Read05 Rétines électroniques, Asic-FPGA
et DSP pour la vision et le traitement d'images en temps réel. p 21-23, Juin
2005.
B. Dorizzi, S. Garcia-Salicetti, W. Hizem, L. Allano et Y. Ni, "Capture infrarouge et fusion multimodale de scores dans le projet VINSI : Vérication d'Identité Numérique Sécurisée Itinérante", Workshop Interdisciplinaire sur la sécurité
globale, Janvier 2008.
115
Annexe B
"Active dierential CMOS
imaging device for human face
recognition"
[1] Yang Ni, E. Krichen, W. Hizem, S. Garcia-Salicetti and B. Dorizzi, Active
dierential CMOS imaging device for human face recognition", Signal Processing Letters, IEEE , vol.13, no.4, pp. 220-223, April 2006.
117
220
IEEE SIGNAL PROCESSING LETTERS, VOL. 13, NO. 4, APRIL 2006
Active Differential CMOS Imaging Device
for Human Face Recognition
Yang Ni, Emine Krichen, Walid Hizem, Sonia Garcia-Salicetti, and Bernadette Dorizzi
Abstract—This letter describes an original CMOS imaging
system dedicated to human face recognition. The main interest
of this work is to provide ambient light invariant images and
facilitate segmentation of the face from the background. This
system has been implemented in a specially designed CMOS smart
image sensor with only one analog memory per pixel. This simple
pixel design gives the possibility to incorporate this functionality
into classic low-cost CMOS image sensors. One of its possible applications is face recognition, since the human face appearance is
dramatically dependent on illumination conditions. A first indoor
experience with different illumination conditions shows that a
simple correlation-based verification algorithm on face images of
25 people of the INT database gives promising results.
To cope with this problem, another approach relies in the
combination of a specific sensor with a dedicated algorithm.
Such a sensor can remove or considerably reduce the image dependency on ambient illumination, leading to a more reliable
recognition system.
This consideration is the main motivation of this work. We
present here a complete face verification system with a smart
CMOS imaging device combined with a computationally light
correlation-based algorithm. This system has been tested on a
database of 25 individuals, acquired with this imaging device
and a normal CCD camera.
Index Terms—CMOS sensor, correlation, differential imaging,
face recognition.
II. SMART CMOS IMAGE SENSOR
I. INTRODUCTION
H
UMAN face recognition is a complex computer vision
problem. In the visible/near-infrared spectrum, an image
is formed by the reflection of ambient light sources. This reflected image formation makes the visual aspects of a human
face dramatically dependent on lighting conditions. Indeed, the
same human face can have very different visual aspects under
different illumination source configurations, which makes face
verification very difficult. However, research on face recognition offers numerous possible solutions. First, geometric feature-based methods [1], [2] are insensitive to a certain extent
to variations in illumination since they are based on measures
between facial features (e.g., eyes, nose, mouth); the problem
with these methods is the precision of the detection of such features, which is far from being straightforward, particularly in
bad illumination conditions. Also, statistical methods like principal component analysis [3], Fisherfaces [4], and independent
component analysis [5] emerged as an alternative to a certain
variability of facial appearance. Such methods, despite success
in certain conditions, have the drawback of being reliable only
when the face references used by the system and the face test
images present similar illumination conditions; for this reason,
some studies have proposed to model illumination effects [6].
Manuscript received May 3, 2005; revised October 19, 2005. This work was
supported by the GET (Groupe des Ecoles de Télécommunications) and the
French government under the Bio_MUL project. The associate editor coordinating the review of this manuscript and approving it for publication was Dr.
Mauro Barni.
The authors are with the Institut National des Télécommunication, 91160
Evry, France (e-mail: [email protected]; [email protected];
[email protected]; [email protected]; [email protected]).
Digital Object Identifier 10.1109/LSP.2005.863661
Our proposal is based on an active differential imaging principle. Indeed, in the presence of ambient light, one of the solutions is to use an artificial light source attached to the imaging
system, of greater intensity than the ambient light to diminish
the effect of the latter (using a synchronized flash bulb is one
example). This solution is the simplest one, but the associated
power consumption is a big issue because in an outdoor configuration, the ambient light level can be very high. Another alternative is to use a differential imaging method. In this case,
two images are captured: one image with the artificial light on
and the other one with the artificial light off. The output image
is obtained from the difference between these two images. This
way, all the stationary objects illuminated by the light sources
will be removed. This solution is very interesting because the
ambient light suppression is based only on the spatiotemporal
stationarity of the light. In order to verify this condition, the differential process needs to be much faster than the possible spatiotemporal change during the double-image shooting. Therefore, a specially designed sensor that can give the differentiated
images directly is highly preferable. Besides, we think that this
special image sensor should be compatible with the usual physical constraints, such as optic size and power consumption imposed on a classic image sensor.
The first smart sensor with this purpose has been designed by
Toshiba [8]; it has the advantage of optimizing the time interval
between the images ON and OFF (the differentiation is done
during the readout phase by a differential amplifier) but results
in a large pixel pitch (50 um) that gives not only low spatial
resolution (64 64 pixels) but also an optical size problem.
We propose a very simple active differential image sensing,
carried out totally on-chip, without any other component. The
basic idea is the following. In the first phase, we capture the
“ON” image by setting the pixel array in parallel mode (all
pixels take the image at the same time), and the captured image
is stored in the analog memory. Then, in the second phase, we
1070-9908/$20.00 © 2006 IEEE
NI et al.: ACTIVE DIFFERENTIAL CMOS IMAGING DEVICE FOR HUMAN FACE RECOGNITION
221
Fig. 3.
Fig. 1.
Samples of normalized faces.
Structure of the pixel.
Fig. 4. Segmentation and preprocessing (size normalization, grey-level
normalization, smoothing).
Fig. 2.
Active differential imaging system.
capture the “OFF” image, during the differential image readout
phase. The sensor has a special pixel design (see Fig. 1). Each
pixel has a photodiode and an analog memory cell. Image capture begins with a photodetector’s reset (Prec) and terminates
with a charge transfer (Samp) into the analog memory (MA in
Fig. 1). During the first phase (“ON” image capture), we expose
the whole matrix of pixels to ambient light with an infrared flash.
In the second phase (OFF image capture), in order to have the
differential operation at the same time as the read-out phase, we
expose, only to ambient light, the matrix line by line. Right after
the first phase, we load the line to be exposed in a line buffer
(LB1). Then, we expose this line of pixels (phase 2), and we
load it in a second buffer (LB2). Finally, we calculate the difference of the two lines.
The designed prototype sensor chip has a resolution limited
to 160 120 pixels. A flash ADC with 8-bit resolution has been
incorporated on the same chip that gives a readout speed greater
than 10 MHz [9]. A prototype camera system has been realized
with an interface to PC for image capturing and storing (see
Fig. 2).
III. ASSOCIATED FACE VERIFICATION ALGORITHM
A. Face Segmentation and Verification
The first step is to extract the face from the original image.
Our approach consists of taking advantage of the fact that the
background is much darker than the area of the face. Segmentation of the face is carried out through a binarization process that
involves the use of
1) adaptive threshold;
2) object labeling following the hierarchical connected components method;
3) simple face test;
4) face extraction step.
Our face test (step 3) is based on the size of each object detected. We consider each connex component; if its size is in the
range of an acceptable face size, the object is labeled as a face;
otherwise, we may make a closing to concatenate the object,
considered as small, to other small neighboring objects (to concatenate the object, considered as small, to other small neighboring objects) if the object size is less than a minimum associated threshold. This is the case in particular when the face is segmented in two parts due to the presence of a beard or of a differently colored headband on the upper face. We can also perform
opening (to separate the object, considered as large, from other
large neighboring objects) when the object size is greater than
a maximum associated threshold. The segmentation process is
shown in Fig. 4.
Before performing recognition, we must normalize the images; this step is very important independently of the algorithm
involved later [7]. In general, normalization relies on eyes’ localization, but this may not be feasible in our case because of
people wearing glasses. For this reason, the only possible normalization is on face size. We chose the 100 70 pixels normalized format and applied a histogram equalization to a normalized image, to perform grey-level normalization. We also applied Gaussian smoothing to the face image as a preprocessing
before performing correlation-based algorithms. Fig. 3 shows
examples of resulting normalized and preprocessed face images.
B. Recognition Process and Results
The verification process is done by computing the Euclidian
distance between a reference image template (template) and a
test image. As the grey-level corresponding to the background
is known, during distance computation, pixels from the background are not taken into account. The resulting Euclidean distance between a reference image and a test image is compared
to a decision threshold. If the distance is lower than a threshold,
the claimed identity is accepted; if not, it is rejected.
222
IEEE SIGNAL PROCESSING LETTERS, VOL. 13, NO. 4, APRIL 2006
TABLE I
DIFFERENT TEST SCENARIO USING INT DATABASE
Fig. 5. Samples of the INT database for the same person. (Top) Images from
the four sessions for the DiffCam. (Bottom) Images from the normal CCD
camera.
For experimental evaluation purposes, we have registered
face images using the prototype camera described above, in
the framework of a multisession and multicamera database
called the INT database. To study the resistance of the whole
system (sensor and algorithm) to illumination effects on faces,
a 25-person database of faces has been constructed with two
cameras: the active differential imaging device (DiffCam) and
a normal CCD camera (Normal CCD). There are four sessions
representing different illumination conditions. The first session
is taken indoors with ambient daylight and artificial light; this
session is denoted “Normal Light.” The second session is taken
indoors with very few ambient light (no artificial light, little
daylight); this session is denoted “No Light.” The third session
is taken indoors in the same ambient light conditions as those of
the first session but, in addition, with an artificial light source (a
desk lamp) in front of the face; this session is denoted “Frontal
Light.” Finally, in the fourth session, the artificial light source
was moved to the right side of the face; this session is denoted
“Side Light.” Images from all sessions are shown in Fig. 5.
In each session, we have taken ten images per person and per
camera. Thus, 40 images per person and per camera are available. The DiffCam image resolution is 160 120, and the CCD
camera image resolution is 320 280. Frontal face images are
captured at 50 cm from each device. Small rotations of faces
were tolerated during acquisition as well as a limited variation
of expressions. Also, anyone could wear glasses, regardless of
whether spot reflections obscured the eyes.
In our experiments, we have chosen five images of each
person as reference images and five others as test images.
We consider six test scenarios in which reference and test
images were acquired in different illumination conditions.
Table I shows the results obtained in each scenario for each
type of sensor. Results are expressed in terms of equal error
rates (EERs), the point in which the false acceptance (FA)
rate is equal to the false rejection (FR) rate [10]. Such a point
corresponds to a specific value of the decision threshold.
Each test scenario is defined by a couple of illumination conditions, respectively, reference and test image acquisition conditions denoted in Table I as “Reference condition vs. Test condition.”
As shown in Table I, we notice that the DiffCam outperforms
in all cases the normal CCD camera. Despite the limitation of
this experiment (25 persons), the gap between the performances
of the two cameras is significant.
Fig. 6.
DET curve for the test scenario “normal light vs. facial light.”
As the EER represents only one “working point” (a given
value of a ratio of FA and FR) in a biometric system, in order
to compare more precisely the two sensors, we have plotted the
DET curve [11] (see Fig. 6). In such curve, the FA is plotted
against the FR. Again, the DiffCam clearly outperforms the
CCD camera at any “working point.”
IV. CONCLUSION
In this letter, we have described a complete face recognition
system based on an original CMOS image sensor and a computationally low-cost algorithm. The smart CMOS sensor in this
system gives very stable face images, invariant under most environmental conditions. First, verification experiments carried
out on face images under various illumination conditions were
performed with several protocols. Because this imaging device
provides uniformly dark backgrounds and a stable illumination
of the face independently of surrounding lighting conditions, we
intentionally used a very simple matching (verification) method,
namely, pixel-level correlation, and measured its resistance to
important illumination variability.
NI et al.: ACTIVE DIFFERENTIAL CMOS IMAGING DEVICE FOR HUMAN FACE RECOGNITION
Our experiments show that the DiffCam coupled with the
pixel-level correlation algorithm has a good performance, even
in the presence of strong illumination variability, and outperforms clearly the normal CCD camera coupled with the same
recognition algorithm. Such a system is particularly suited for
face verification on mobile platforms like smart phones, since
the mobility context involves a great variability of lighting conditions and complex backgrounds and also a strong hardware
performance limitation. Our intimate conviction is that this prototype system has great room for improvement, especially by
increasing sensor resolution and frame rate.
REFERENCES
[1] R. Brunelli and T. Poggio, “Face recognition: Features vs. templates,”
IEEE Trans. Pattern Anal. Mach. Intell., vol. 15, no. 10, pp. 1042–1053,
Oct. 1993.
[2] S. Li and J. Lu, “Face recognition using nearest feature line,” IEEE
Trans. Neural Netw., vol. 10, no. 2, pp. 439–443, Mar. 1999.
223
[3] M. A. Turk and A. P. Pentland, “Face recognition using eigenfaces,” in
Proc. IEEE Conf. Computer Vision Pattern Recognition, Jun. 1991, pp.
586–591.
[4] J. Li, S. Zhou, and C. Shekhar, “A comparison of subspace analysis for
face recognition,” in Proc. IEEE Int. Conf. Acoustics, Speech, Signal
Processing, vol. 3, Apr. 2003, pp. 121–124.
[5] M. S. Bartlett, J. R. Movellan, and T. J. Sejnowski, “Face recognition by
independent component analysis,” IEEE Trans. Neural Netw., vol. 13,
no. 6, pp. 1450–1464, Nov. 2002.
[6] A. Georghiades, P. N. Belhumeur, and D. J. Kriegman, “From few to
many: Illumination cone models for face recognition under variable
lighting and pose,” IEEE Trans. Pattern Anal. Mach. Intell., vol. 23, no.
6, pp. 643–660, Jun. 2001.
[7] Colorado State University. Evaluation of Face Recognition Algorithms.
[Online]http://www.cs.colostate.edu/evalfacerec/.
[8] H. Miura, H. Ishiwata, Y. Lida, Y. Matunaga, S. Numazaki, A. Morista,
N. Umeki, and M. Doi, “A 100 frame/s CMOS active pixel sensor for
3D-gesture recognition system,” in IEEE Int. Solid-State Circuits Conf.,
1999, pp. 142–143.
[9] Y. Ni and X. L. Yan, “CMOS active differential imaging device with
single in-pixel analog memory,” in Proc. IEEE Eur. Solid-State Circuits
Conf., Sep. 2002, pp. 359–362.
[10] S. J. Raudys and A. K. Jain, “Small sample size effects in statistical
pattern recognition: Recommendations for practitioners,” IEEE Trans.
Pattern Anal. Mach. Intell., vol. 13, no. 3, pp. 252–264, Mar. 1991.
[11] A. Martin, G. Doddington, T. Kamm, M. Ordowski, and M. Przybocki.
The DET Curve in Assessment of Detection Task Performance. [Online]http://www.nist.gov/speech/publications/papersrc/det.doc.
Annexe C
Near infrared sensing and
associated landmark detection
for face recognition
[2] Walid Hizem, Yang Ni and Bernadette Dorizzi, "Near infrared sensing
and associated landmark detection for face recognition", J. Electron. Imaging
17, 011005 (2008).
119
Near Infrared Sensing and Associated Landmark Detection
for Face Recognition
Walid Hizem, Yang Ni and Bernadette Dorizzi
INT\GET, 9 Rue Charles Fourier, Evry, France;
{Walid.Hizem, Yang.Ni, Bernadette.Dorizzi}@int-edu.eu
ABSTRACT
We present, in this work, a new system of Near-Infrared capture that aims to eliminate ambient light effects. We
designed this sensor to be integrated into the mobile platform VINSI. One of the originalities of this sensor is
that we can acquire two images at the same time: one in infrared and the other in visible light. We developed a
novel method for landmark detection of sufficiently low complexity so that it can be implemented on our mobile
platform. We tested this method on three different near-infrared face databases, and we observed stability in
the precision of localization over these databases associated to performance comparable to the state of the art.
Keywords: Near-Infrared sensing, Landmark Detection, illumination suppression
1. INTRODUCTION
The illumination problem is one of the limitations in face recognition, especially in an outdoor environment.
In (1 ), the influence of the illumination - in the uncontrolled session in FRGC (Face Recognition Grand Challenge)
- on the performance of the algorithms can be easily observed as the performance decreases by a factor of 1.6
between the controlled and uncontrolled cases. There are two solutions to tackle this problem. The first and most
commonly used one is to eliminate analytically the illumination effect (2 )(3 )(4 ). However, the performance of
these algorithms depends on the quality of the original image and the conditions of illumination. The analytical
approach has also the disadvantage of being complex and time consuming. These algorithms are therefore not
suitable for mobile devices where the processing capacities and memory are limited. The other direction (active
approach) is to design active imaging techniques to obtain face images captured under consistent illumination
conditions. The VINSI (Vérification d’Identité Numérique Sécurisé Itinérante) project aims at designing and
implementing a mobile device for biometric identity verification through face and fingerprints. This device could
be used to verify the identity of travellers carrying a biometric visa or passport. In this context of mobility and
high illumination variations, active approaches are recommended. We therefore designed a new sensor capable
of acquiring simultaneously a normal-light image and an image in near infrared, thus allowing us to suppress the
influence of the ambient light. The accurate finding of landmark position (like position of the eyes, the nose,
the mouth) is an important process for image normalization (scale, pose and face expressions), and it is an a
priori treatment before any face verification procedure. Landmarks can be well detected on Near InfraRed (NIR)
images while their determination is more difficult in saturated normal lightened images because some part of
the face could be undetectable. By acquiring both images at the same time, we can detect the facial landmarks
in the NIR image and subsequently position them on the normal light image. We propose in this paper a new
scheme for accurate landmark detection on NIR images which we validate on several different databases acquired
in our laboratory. One of the characteristics of thes scheme is its ability to be integrated in the sensor itself.
Our paper is divided into four sections. After a brief recall of the state of the art in Near Infrared sensing,
we describe in more details the architecture and design of our VINSI sensor. A description of our landmark
detection method, suitable for mobile devices, is presented in the third section. Finally, we validate our approach
on different near-infrared face databases at our disposal.
2. NEAR INFRARED SENSORS
Active sensing consists of eliminating ambient light during the acquisition of the image. In this process, the
acquired image depends on an additional and controlled light and therefore requires a dedicated sensor. In this
paper we will focus on infrared sensors for ambient lighting suppression. These sensors use the near infrared
lighting to illuminate the scene instead of the ambient light. Much recent research (5 )(6 ) has been done on this
type of image, but using different sensor architectures. The most robust architecture relies on the differential
acquisition. It is assumed that the ambient light is a DC component, so it can be suppressed by using a differential
process. Two images are then acquired; one with ambient light and the second one with a near infrared light (7 )
and then a subtraction is performed between the two images. The resulting image is in near infrared. The
disadvantage of this method is that the subtraction is done outside the sensor, which slows the acquisition flow
and in consequence a motion problem can appear. In (8 ) we have shown that the differential operation can be
done in the sensor. The idea is to do the subtraction analogically in the sensor. With this procedure we have
improved the ambient light suppression resulting in a faster sensor than the method subtracting the two images
outside the sensor. Another method uses a visible cut filter in the front of the camera (9 )(10 ) and adds a near
infrared illumination. This solution is optimized for indoor acquisitions or dark environmental conditions but
not in situations where ambient light contains too much Near Infrared (sunlight) in which the long acquisition
time does not allow any attenuation of ambient light.
In our laboratory, we developed another ambient light suppression sensor based on a CCD sensor with a
pulsed flash (11 ) as a preliminary step forwards the actual VINSI sensor presented in 3. In this approach, we
have shortened the acquisition time and we have used a synchronized flash. This sensor is based on a modified
Logitech QuickCam Pro 4000 webcam equipped with a CCD sensor and the exposure time was controlled by
the software of the webcam. The resolution of this camera is 640 × 480. This solution presents the advantage of
being built on a standard sensor similar to the differential sensor, but the acquisition time is set by software and
then can’t be set freely. We developed then a new sensor (VINSI infrared sensor) that can achieve an acquisition
in infrared with programmable acquisition time and in ambient light with a small delay time (20ms).
3. VINSI INFRARED SENSOR
This new sensor can therefore acquire successively images in ambient and in infrared light. The acquisition is
nearly simultaneous: indeed the delay time is only 20ms. We combined the video acquisition protocol and the
FlashCam principle to perform the dual acquisition. The output of our sensor is an image composed of two
frames, the odd one being the visible image and the even one, the near infrared image. During the acquisition of
the visible image, the Timing and synchro generator component fix the acquisition time. The integration time
of the CCD sensor is set by the lapse of time between the last reset signal of the substrate (Vxsub) and the
transfert signal (Vxsg). During the odd frame, we use the same principle as in the FlashCam. We modify the
reset signal Vxsub by adding extra ones before the charge transfer from the CCD matrix to the charge lecture
circuit (Vxsg). By this way, we are reducing the exposure time of the pixels (fig.1). During this time, we activate
the flash through the Vled signal. We settled the exposure time in the odd frame to 50µs. This exposure time
is short enough to suppress the ambient light and long enough to have a good image quality in the near infrared
spectrum.
Figure 1. Acquisition Principle
The VINSI infrared sensor is a Black and White CCD of 500 × 582 (TV resolution) pixels. The architecture
of the module is shown in figure. 2. The module is composed of the CCD, a Samsung component, controlled
via the vertical CCD driver with a Timing and synchro generator. We use the outputs of this component to
control the acquisition mode and timing. We add to the CCD module a Video Sync Separator LM1881 and
an ATMEGA32 microcontroller. To have a good image quality in infrared, we designed a flash composed of 40
LEDS surrounding the lens of the camera (2). We choose a powerful LEDS that can be pulsed and can emit an
infrared light of 880nm. In order to get optimized images, the subject must stand at 50cm from the camera.
Figure 2. Architecture of the VINSI Module
This distance depends on the radiant intensity and on the optic used in the prototype. After the acquisition
phase, we extract the frames from the video and separate the odd and even lines from each frame. A linear
interpolation allows the production of 2 images: one in near infrared and a second in visible light. We see in
figure.3 that the ambient light has no effect on the near infrared image. The suppression of the ambient light is
therefore very efficient.
Figure 3. Image subsampling from the VINSI sensor
4. LANDMARKS DETECTION
During the development of the sensor described above, we noticed the remarkable image stability across illumination variation. We therefore know that the landmark detection performed on these images will be of equal
quality, independently of the illumination conditions, contrary to what occurs in the case of normal light images.
Moreover, we developed a landmark detection algorithm suitable for this type of images with the constraint of
an easy integration on the chip. This does not allow us the use of statistical models, neither of high complexity
methods. Taking into account that the characteristics of the near infrared images is their high contrast which
facilitates the edge detection, we first apply a height-direction edge filter (figure 4). The resulting image accen-
Figure 4. Edge detection in Infrared images
tuates the edges of the face and the landmarks (namely eyes, nose, mouth). We have noticed that a horizontal
projection allows us to detect the ordinate of the landmarks (5 )(10 ). The maxima of the projection coincide with
the eyes, the nose, the mouth, the chin and the nostrils. Therefore, we are going to analyze the area of those
maxima to find out the position of the landmarks at interest (namely the eyes, the nose and the mouth which
are the most stable and common landmarks. The same processing has been done on the visible images. Due to
Figure 5. Samples of acquired images and corresponding edge detection
the sensitivity of the edges to the illumination, the edge image doesn’t contain enough information to be treated
as the infrared image. Indeed, we can see in figure 6 that due to the illumination problem, we can’t get the right
part of the face in the edge image.
Figure 6. visible and infrared edge image
Detection of the mouth: The analysis of the three bottom pre-selected areas (by the horizontal projection)
will lead us to the ordinate of the mouth. The mouth is present in the area where we can find the longest
horizontal line. We apply an opening operation in the pre-selected region with a line structuring element to
highlight the line elements. The longest line is selected by a horizontal projection. After that we calculate the
barycentre of that line to fix the centre of the mouth.
Detection of the nose: The nose is selected from the zones which were pre-selected during the horizontal
projection. The nose is indeed located just above the mouth. So, we analyze the upper areas of the mouth where
we can find the model of the nose (presented in figure 7). Using a vertical projection, we will find two important
gradients relative to the nose vertical borders.
Figure 7. Model of the nose
Detection of the eyes: The eyes are selected from the upper pre-selected zones, just above the nose. Erosion
with a round structuring element in those areas will allow to select the two bigger area. Depending on their size
we will know whether the zone contains or not the eyes. The centre of each eye is obtained by calculating the
barycentre of the two main objects in that zone.
5. EXPERIMENTATIONS
In order to validate and test our method and the robustness of the VINSI sensor, we have acquired two databases
called IV2 and INT-VINSI. We also tested our algorithm on images acquired with other infrared sensors in order
to study its stability relative to the different NIR datasets. In this context, we have tested our method on the
Differential sensor (DiffCam(8 )) using the BIOMET infrared database (12 ) .
5.1 Databases Description :
Infrared IV2 face database: We took advantage of a recent acquisition campaign in our institute to acquire this
infrared face database using a first version of our sensor. This sensor was equipped with a wide angle lens (fisheye
lens), and that led to hemispherical images. The acquisition took place in an indoor environment. We built
a booth with a system designed to control the illumination composed of four halogen lamps: two behind the
subject, one at his right and the last one at his left. There are 50 people in this database. For each person, we
have at our disposal a video of 40 seconds. The resolution of those videos is 640x480. Every ten seconds we
change the illumination conditions: all the four lamps are on, all the four lamps are off, left illumination and
right illumination. We have extracted 10 images from videos from which we separate the odd and even frames
in order to get the infrared image and the visible one. Some samples of this data base are shown in figure. 8.
Note that none of the subjects wear glasses.
Figure 8. Samples of the visible light images in the IV 2 database
INT-VINSI face database: This database contains a set of 25 persons acquired in two sessions over several
weeks. Each session contains three videos of ten seconds recorded using the VINSI infrared sensor. Three different
illumination conditions are considered for each video. The difference with the previous database lies in the lens
used in the sensor (6mm); we also modified the flash to a more powerful one. The first session corresponds to
an ambient office lighting. In the second session we illuminate the face with a light source directed to the left.
The last one is taken near an open window. The face is illuminated laterally from the right. The intensity of
the illumination depends on the daytime and on the weather. Some samples of this database are illustrated in
figure 9.
BIOMET: This NIR face database was acquired during the BIOMET acquisition campaign (12 ) with the
differential sensor(8 ). The resolution of the images is 160x120 i.e: lower than in the two previous databases. We
have excluded from our tests people who wear glasses, in order to avoid the problem of reflection.
Figure 9. Sample of the INT-VINSI database
5.2 Performance:
The criteria that we use for landmark detection evaluation is the one originally proposed by Jesorsky and al.(13 ).
This criterion is based on the intraocular distance as follows:
deye =
max(dl , dr )
k Cl − Cr k
Where Cl , Cr are the real centre of the left(respectively right eye) and dl , dr are the distances between the
detected eye left (respectively right) centre and the real left (respectively right) eye coordinate. Note that the
real centre positions are detected manually and can be subject to some error.
To measure the performance of the nose and mouth detection, we used the same principle as for deye :
dnose =
dn
kCl −Cr k ,
where dn is the distance between the detected position of the nose and the one manually
determined.
dmouth =
dm
kCl −Cr k ,
where dm is the distance between the detected position of the mouth and the one manually
determined.
In (14 ), it was established experimentally that in order to perform a good verification, the deye localization
precision has to be lower than 0.05. In other work(13 ), it is shown that for an eye localization accuracy of 0.25,
the centre of the eye can still be detected inside the eye region. The results of the tests on the IV2 database are
shown in figure 10.
Our method has a ratio of 75% of good eye localization at factor of 0.05 on the IV2 database. The performance
of our method on the INT-VINSI database is shown in figure 11.
On this database the precision of the eye localization is better than on the IV2 database. Indeed, even if
we use the same capture method, images in INT-VINSI are of better quality (no hemispherical distortion and
deye
100
80
60
40
20
0
0
0.1
0.2
0.3
0.4
0.5
d
100
80
80
60
60
40
40
20
20
0
0.2
0.4
0.6
0.7
mouth
100
0
0.6
d
nose
0.8
1
0
0
0.2
0.4
0.6
0.8
Figure 10. Cumulative histograms of deye , dmouth and dnose (IV 2 )
Figure 11. Cumulative histograms of deye , dmouth and dnose (INT-VINSI)
availability of a better flash). We notice that we have a ratio of 80% for deye = 0.05. The performance on the
BIOMET database is shown in figure 12.
Figure 12. Cumulative histograms of deye (BIOMET)
We just measured the error of the eye localization for BIOMET, because we do not have at our disposal the
mouth and the nose position. We reach a localization rate of 80% for deye =0.1 in this database. This is less good
than the previous results, because of the limited size of the face in the images (the average size is 50 × 70pixels).
6. CONCLUSION
In this work we presented a new sensor for ambient light suppression. This sensor is to be imbedded in the VINSI
mobile platform to control the identity of citizens who hold biometric passports. This new sensor is capable of
acquiring two images at the same time: the first one is taken in visible light; the second in near-infrared. We
also developed a method of landmark detection which we tested on near infrared images acquired with different
types of sensors. The best result, in terms of precision of the localization, was found on the images acquired with
our new VINSI sensor, which was to be expected because they have the best quality. However, our experiments
show that this method can be used on different types of infra-red images and with sufficiently good results.
Better performance could eventually be obtained with learning-based methods (such SVM in(15 )), but these
methods can not be simply implemented on a mobile device having limited resources; for these reasons we did
not considered them.
Our future works will aim to use these NIR landmarks to provide eye localization on the associated visible
image for further processing. Another direction concerns the realization of a verification algorithm for NIR
images suitable for analogical architecture.
ACKNOWLEDGMENTS
This work has been founded by the French project VINSI (Vérification d’identité Numérique Sécurisé Itinérante)
REFERENCES
1. P. Phillips and Al., “Overview of the face recognition grand challenge,” Conference on Computer Vision
and Pattern Recognition 1, pp. 947 – 954, 2005.
2. S. Shan and Al., “Illumination normalization for robust face recognition against varying lighting conditions,”
IEEE International Workshop on Analysis and Modeling of Faces and Gestures , pp. 157–164, 2003.
3. D. Jobson, Z. Rahman, and G. Woodell, “A multiscale retinex for bridging the gap between color images
and the human observation of scenes,” IEEE Transactions on Image Processing 6, pp. 965–976, 1997.
4. X. Xie and K. Lam, “An efficient illumination normalization method for face recognition,” Pattern Recognition Letters 27, 2005.
5. J. Dowdall, I. Pavlidis, and G. Bebis, “Face detection in the near-ir spectrum,” Image and Vision Computing 21, pp. 565–579, 2003.
6. D. Li and W. Liao, “Facial feature detection in near infrared images,” Proc. Fifth Int’l Conf. Cumputer
vision Pattern Recognition and Image Processing , pp. 26–30, 2003.
7. X. Zou, J. Kittler, and K. Messer, “Ambient illumination variation removal by active near-ir imaging,”
Proceedings of IAPR International Conference on Biometric , pp. 19–25, 2006.
8. Y. NI and X.-L. YAN, “Cmos active differential imaging device with single in-pixel analog memory,” Proceeding of ISSCC02 , pp. 359–362, 2002.
9. S. Z. Li and Al., “Illumination invariant face recognition using near-infrared images,” IEEE Transactions
on Pattern Analysis and Machine Intelligence 29(4), pp. 627–639, 2007.
10. W.-H. Liao and D.-Y. Li, “Homomorphic processing techniques for near-infrared images,” Proceedings of
Acoustics, Speech, and Signal Processing. (ICASSP ’03) 3, pp. III– 461–4, 2003.
11. W. Hizem and Al., “Specific sensors for face recognition,” Int’l Conf. Audio- and video-Based Biometric
Person Authentication , pp. 47–54, 2006.
12. S. Garcia-Salicetti and Al., “Biomet : A multimodal person authentication database including face, voice,
fingerprint, hand and signature modalities,” AVBPA Proceedings 2688, p. 1056, 2003.
13. O. Jesorsky, K. Kirchberg, and R. Frisholz, “Robust face detection using the hausdorff distance,” Int’l Conf.
Audio- and video-Based Biometric Person Authentication , pp. 90–95, 2001.
14. M. Sadeghi, J. Kittler, A. Kostin, and K. Messer, “A comparative study of automatic face verification
algorithms on the banca database,” Proc. Fourth Int’l Conf. Audio- and Video-Based Biometric Person
Authentication , pp. 35–43, 2003.
15. X. Zou, J. Kittler, and K. Messer, “Accurate face localisation for faces under active near-ir illumination,”
Proceedings of the 7th Int’l Conference on Automatic Face and Gesture Recognition (FGR’06) , pp. 369–374,
2006.
List of Figures
1
Acquisition Principle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
2
Architecture of the VINSI Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
3
Image subsampling from the VINSI sensor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
4
Edge detection in Infrared images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5
5
Samples of acquired images and corresponding edge detection . . . . . . . . . . . . . . . . . . . .
5
6
visible and infrared edge image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
7
Model of the nose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
8
Samples of the visible light images in the IV 2 database . . . . . . . . . . . . . . . . . . . . . . .
7
9
Sample of the INT-VINSI database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
10
Cumulative histograms of deye , dmouth and dnose (IV 2 ) . . . . . . . . . . . . . . . . . . . . . . .
9
11
Cumulative histograms of deye , dmouth and dnose (INT-VINSI) . . . . . . . . . . . . . . . . . . .
9
12
Cumulative histograms of deye (BIOMET) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9