Table des mati`eres
1 D´etection et Reconnaissance d’Objets 8
1.1 Vision par ordinateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2 Un peu d’histoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.3 D´efinition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4 Probl´ematique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.5 Repr´esentation d’images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.5.1 M´ethodes de repr´esentation globales . . . . . . . . . . . . . . . . . . 13
1.5.2 M´ethodes de repr´esentation locales . . . . . . . . . . . . . . . . . . . 13
1.6 Classification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.6.1 k plus proches voisins . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.6.2 Arbres de d´ecision . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.6.3 Machines `a vecteurs de support . . . . . . . . . . . . . . . . . . . . . 15
1.6.4 Mod`eles graphiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.6.5 Les mod`eles `a variables latentes d’aspect . . . . . . . . . . . . . . . . 16
1.6.6 R´eseaux de neurones . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.6.7 Boosting : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.7 ´Etat de l’art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2 Conception 26
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.2 Approche 1 : 1-Chebychev . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.2.1 La segmentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.2.2 Repr´esentation de l’image . . . . . . . . . . . . . . . . . . . . . . . . 40
2.2.3 Reconnaissance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.3 Approche Couleur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
2.3.1 Repr´esentation des objets . . . . . . . . . . . . . . . . . . . . . . . . 48
2.3.2 Construction du mod`ele . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.3.3 Appariement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
2.3.4 Localisation des objets . . . . . . . . . . . . . . . . . . . . . . . . . . 50
2.3.5 Localisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
2.3.6 Avantages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
2.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
1
3 Impl´ementation 55
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.2 Environnement de travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.2.1 Environnement logiciel . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.2.2 Environnement mat´eriel . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.3 Pr´esentation de la base d’apprentissage . . . . . . . . . . . . . . . . . . . . 57
3.3.1 Base de donn´ees COIL-100 . . . . . . . . . . . . . . . . . . . . . . . . 57
3.3.2 Base de donn´ees ETH-80 . . . . . . . . . . . . . . . . . . . . . . . . . 58
3.3.3 Acquisition des deux bases . . . . . . . . . . . . . . . . . . . . . . . . 59
3.4 Pr´esentation de l’interface graphique . . . . . . . . . . . . . . . . . . . . . . 59
3.4.1 Premi`ere Approche . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.4.2 Deuxi`eme approche . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
3.4.3 Troisi`eme approche . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
3.5 Apprentissage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
3.5.1 Choix de la fonction du noyau . . . . . . . . . . . . . . . . . . . . . . 68
3.5.2 Principe de l’apprentissage . . . . . . . . . . . . . . . . . . . . . . . . 70
3.6 Exp´erimentations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
3.6.1 Matrice de confusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
3.6.2 Fonction d’efficacit´e du r´ecepteur ROC . . . . . . . . . . . . . . . . . 74
3.6.3 Taux de la reconnaissance des deux bases . . . . . . . . . . . . . . . . 75
3.6.4 Rappel et pr´ecision . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
3.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Bibliographie 87
2
Table des figures
1.1 Exemple d’Objets sp´ecifiques. Gauche : Carl Gauss. Droite : le Taj Mahal. . 9
1.2 Exemple de cat´egories d’objets. . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3 Gauche :Exemple de variabilit´e intra-classe de la cat´egorie chaise. Droite : Cet
objet `a l’apparence ´etrange est une chaise de par sa fonction. . . . . . . . . . 11
1.4 Gauche : Exemple d’occlusion. Droite : Exemple de changement de point de
vue et rotation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.5 Reconnaissance bas´e mod`eles . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.6 A gauche la classification, est simple quel que soit le nombre de voisins.A
droite, revanche tout d´epend du nombre de voisin l’affectation `a une classe est
pond´er´ee par la distance, plus un voisin est ´eloign´e, plus son influence est faible. 14
1.7 Exemple de classification avec arbre de d´ecision. . . . . . . . . . . . . . . . . 15
1.8 Exemple de classification avec AdaBoost. . . . . . . . . . . . . . . . . . . . . 18
1.9 a) L.G.Roberts. b) Sc`ene de blocks. c) Fronti`eres extraites `a l’aide du gradient.
d) Description polyhedral de la sc`ene. e) Sc`ene 3D avec changement de point
de vue. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.10 Repr´esentation des objets par les cylindres g´en´eralis´es. a) Thomas Binford.
b)Image de la gamme d’une poup´ee. c) Cylindres g´en´eralis´es obtenues. . . . 20
1.11 Graphe d’aspects. Deux vues d’un objet, les diff´erentes projections forment un
graphe d’adjacence. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.12 Repr´esentation des objets `a l’aide des geons. . . . . . . . . . . . . . . . . . . 21
1.13 Mod`ele utilis´e par Fischler et Elschlager pour mod´eliser le visage Figure pro-
venant de [1]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.1 Syst`eme de reconnaissance. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.2 R´esultat de segmentation avec DBscan globale. Gauche : Image originale.
Droite : Image segment´ee labellis´ee. . . . . . . . . . . . . . . . . . . . . . . . 30
2.3 R´esultat de segmentation avec DBscan locale en utilisant les niveaux de gris.
Gauche : Image en niveau de gris. Droite : Image labellis´ee, nous obtenons une
sur-segmentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.4 Gauche : Image convertit dans l’´eespace HSV. Droite :R´esultat de segmenta-
tion avec DBscan locale en utilisant la Teinte. . . . . . . . . . . . . . . . . . 32
2.5 Gauche : Rsultat de segmentation avec DBscan locale en utilisant le Teinte.
Droite : Localisation des objets. . . . . . . . . . . . . . . . . . . . . . . . . . 32
3
2.6 Gauche : Image convertit dans l’espace HSV. Milieu :R´esultat de segmentation
avec DBscan locale en utilisant la Teinte. Droite :R´esultat de segmentation
l’objet n’est pas d´etect´e. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.7 Organigramme de la m´ethode. . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.8 Repr´esentation des minimums et maximums locaux sur l’histogramme. . . . 34
2.9 Bas : Extraction des minimums et maximums locaux `a partir de l’histogramme. 35
2.10 Gauche : Image binaris´ee. Droite :Histogramme des niveaux de gris ainsi que
les seuils min et max en rouge. . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.11 Image binaris´ee apr`es ´erosion. . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.12 Image binaris´ee apr`es dilatation puis inversion. . . . . . . . . . . . . . . . . . 37
2.13 Superposition des deux images pr´ec´edentes. . . . . . . . . . . . . . . . . . . 38
2.14 ´Etapes de segmentation d’objets : les r´egions marqu´es en blanc s’´etendent
jusqu’aux fronti`eres des objets. . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.15 R´esultats de la segmentation. -Gauche : fronti`eres des objets. -Milieu :Segmen-
tation des objets. Droite : r´esultat final, extraction des objets. . . . . . . . . 40
2.16 Reconstruction `a diff´erents ordres avec notre calcul des moments ainsi qu’avec
le calcul classique de ceux ci. . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
2.17 L’effet de la rotation sur les descripteurs `a diff´erents ordres. . . . . . . . . . 44
2.18 Influence de l’ordre et la rotation sur le calcul des moments. . . . . . . . . . 46
2.19 R´esultat de segmentation dans une sc`ene r´eelle. Gauche : Image de la sc`ene.
Droite : Image segment´ee, mˆeme si nous arrivons `a extraire les objets du fond,
nous ne pouvons les distinguer. . . . . . . . . . . . . . . . . . . . . . . . . . 47
2.20 Syst`eme de Reconnaissance de la seconde m´ethode. . . . . . . . . . . . . . . 48
2.21 Repr´esentation d’un objet en prenant en compte l’information spatiales de
points d´efinis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
2.22 calcul des points candidats. . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
2.23 2 Superposition des deux axes sur les diff´erents centres possibles, une seule
superposition est correcte. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.1 Objets de la base de donn´ees Columbia Object Image Library. . . . . . . . . 57
3.2 Objets de la base de donn´ees ETH-80. . . . . . . . . . . . . . . . . . . . . . 58
3.3 Acquisition de la base COIL-100. . . . . . . . . . . . . . . . . . . . . . . . . 59
3.4 Interface d’accueil l’application. . . . . . . . . . . . . . . . . . . . . . . . . . 60
3.5 Choix d’une base de donn´ees. . . . . . . . . . . . . . . . . . . . . . . . . . . 60
3.6 Choix de l’image de la sc`ene. . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
3.7 Affichage de l’image de la sc`ene . . . . . . . . . . . . . . . . . . . . . . . . . 61
3.8 Segmentation de l’image. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
3.9 Reconnaissance d’objets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
3.10 Interface d’accueil de la deuxi`eme approche . . . . . . . . . . . . . . . . . . . 64
3.11 Apprentissage d’un objet avec la deuxi`eme m´ethode . . . . . . . . . . . . . . 64
3.12 Reconnaissance des objets avec la deuxi`eme m´ethode . . . . . . . . . . . . . 65
3.13 l’interface d’accueil de la troisi`eme approche. . . . . . . . . . . . . . . . . . . 66
3.14 Le choix entre les deux m´ethodes de SURF . . . . . . . . . . . . . . . . . . . 66
3.15 choix de l’image de la sc`ene et de l’objet `a trouver. . . . . . . . . . . . . . . 67
3.16 R´esultat de la d´etection hors ligne. . . . . . . . . . . . . . . . . . . . . . . . 67
4
3.17 R´esultat de la d´etection en ligne. . . . . . . . . . . . . . . . . . . . . . . . . 68
3.18 Comparaison entre les fonctions de noyau. . . . . . . . . . . . . . . . . . . . 69
3.19 Comparaison des m´ethodes : (a) l’image original en RGB ; (b) l’image original
appliqu´e avec Canny ; (c) l’image reconstruite par la m´ethode classique ;(d)
l’image reconstruite par notre m´ethode. . . . . . . . . . . . . . . . . . . . . 71
3.20 Etude comparative sur les temps d’ex´ecution et l’apprentissage. . . . . . . . 72
3.21 Etude comparative sur la pr´ecision de la reconnaissance avec et sans couleur. 73
3.22 Courbe ROC obtenu pour les dix objets. . . . . . . . . . . . . . . . . . . . . 74
3.23 Etude comparative sur la pr´ecision de la reconnaissance avec les diff´erentes
m´ethodes de calcul. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
3.24 Image de sc`ene r´eelle. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
3.25 ´etude comparative sur la pr´ecision, le rappel et F-Mesure entre la deuxi`eme et
la troisi`eme m´ethode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
3.26 ´etude comparative sur le temps de calcule entre la deuxi`eme et la troisi`eme
m´ethode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
5
Liste des Algorithmes
1 Algorithme de la premi`ere m´ethode. . . . . . . . . . . . . . . . . . . . . . . . 29
2 Proc´edure de Clusterisation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3 Algorithme de la deuxi`eme m´ethode. . . . . . . . . . . . . . . . . . . . . . . . 31
4 Algorithme de Binarisation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5 Algorithme d’extraction de seuils pour la Binarisation. . . . . . . . . . . . . . 36
6 Algorithme de Segmentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
7 Algorithme de la rotation 1-Chebychev. . . . . . . . . . . . . . . . . . . . . . 45
8 Algorithme de la premi`ere m´ethode. . . . . . . . . . . . . . . . . . . . . . . . 49
9 Algorithme de Matching. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
6
Introduction
La vision par ordinateur est une branche de l’intelligence artificielle qui se concentre sur
l’extraction d’information utile contenue dans une image. Durant les derni`eres d´ecennies,
un grand nombre d’approches innovants ont ´et´e d´evelopp´es dans ce but. Ces recherches
ont permis d’atteindre des taux de reconnaissance appr´eciables sur de nombreuses bases
de donn´ees de test. Ces m´ethodes extraient une repr´esentation de l’image sous forme de
descripteurs. Elles utilisent ensuite l’apprentissage automatique (Machine Learning) pour
traiter ces descripteurs et obtenir le r´esultat recherch´e comme, par exemple, la reconnaissance
des objets pr´esents dans l’image.
Nous proposons dans ce m´emoire une ´etude sur le th`eme de la d´etection d’obstacles, il
comportera trois chapitres :
Chapitre 1 : D´etection et reconnaissance d’objets : Ce m´emoire aborde tout d’abord de
mani`ere g´en´erale les th`emes de la vision par ordinateur et de ses domaines d’application. Il
dresse une synth`ese de l’´etat de l’art des syst`emes de d´etection et reconnaissance d’objets
les diff´erents descripteurs d’objets ainsi que diverses m´ethodes de classification. Avant de
s’int´eresser plus en d´etail `a la m´ethode d´evelopp´ee au cours de ce travail de fin d’´etudes.
Chapitre 2 : Conception :Dans la deuxi`eme partie de ce document nous avons d´ecrit
les diff´erentes ´etapes de la mise en œuvre de nos approches d´evelopp´ees, en commen¸cant
par les m´ethodes de segmentation d’objets, nous d´etaillerons par la suite la proc´edure de
la construction des descripteurs bas´e moments de Chebyshev comme premi`ere approche, et
bas´e distribution des couleurs dans l’espace RBGa comme deuxi`eme approche.
Chapitre 3 : Impl´ementation : Nous commen¸cons dans ce dernier chapitre par d´ecrire
l’environnement de travail qui nous a permis d’impl´ementer nos approches. Nous entamons
par la suite la description des diff´erentes interfaces de l’application, puis nous avons expos´e les
r´esultats obtenus par les diff´erentes approches de d´etection, en termes de temps d’ex´ecution
et de taux de reconnaissance , pour donner une id´ee comparative de l’aspect pratique de nos
m´ethodes.
7
Chapitre 1
D´etection et Reconnaissance d’Objets
Sommaire
1.1 Vision par ordinateur . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2 Un peu d’histoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.3 D´efinition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4 Probl´ematique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.5 Repr´esentation d’images . . . . . . . . . . . . . . . . . . . . . . . . 13
1.5.1 M´ethodes de repr´esentation globales . . . . . . . . . . . . . . . . . 13
1.5.2 M´ethodes de repr´esentation locales . . . . . . . . . . . . . . . . . . 13
1.6 Classification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.6.1 k plus proches voisins . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.6.2 Arbres de d´ecision . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.6.3 Machines `a vecteurs de support . . . . . . . . . . . . . . . . . . . . 15
1.6.4 Mod`eles graphiques . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.6.5 Les mod`eles `a variables latentes d’aspect . . . . . . . . . . . . . . . 16
1.6.6 R´eseaux de neurones . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.6.7 Boosting : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.7 ´Etat de l’art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.1 Vision par ordinateur
La discipline qui vise `a automatiser la compr´ehension des images est la Vision par Or-
dinateur. D’autres appellations existent notamment Vison artificielle ou Vision cognitive,
cette branche de l’intelligente artificielle `a pour objectif de permettre aux machines de com-
prendre le contenu des images (ce que la machine voit !). Cette discipline se divise en plusieurs
domaines et application : Reconstruction 3D, Segmentation, Analyse du mouvement, recon-
naissance de formes, traitement d’images. On comprend que les applications sont nombreuses,
8
celles-ci cit´ees le sont `a titre d’exemple, elles ne constituent pas une liste exhaustive mais
donnent une id´ee des objectifs de ce domaine.
1.2 Un peu d’histoire
En 1966 Marvin Minsky chercheur au MIT assigne pour projet, `a un ´etudiant de premier
cycle la tˆache de raccorder une camera `a un ordinateur et que la machine devait ”d´ecrire ce
qu’elle voit”. [2] Tr`es vite l’on s’aper¸coit de la difficult´e du probl`eme.
Pr`es de cinquante ans apr`es et en d´epit des progr`es r´ealis´es les machines ne sont toujours
pas capables d’interpr´eter les images, l’Homme prouve largement sa sup´eriorit´e.
Dans ce Chapitre nous nous int´eressons au probl`eme de l’interpr´etation en particuliers au
sous probl`eme de la d´etection et reconnaissance d’objets.
La plus part des tˆaches li´es `a la vision repose sur la capacit´e `a reconnaitre les objets
et leurs cat´egories. Une vari´et´e d’application fait appel `a la reconnaissance et ce dans de
nombreux domaines d’intelligence artificielle, par exemple la recherche bas´e sur le contenu
d’images, vid´eo mining, d´etection d’objets, assistance `a la conduite.
1.3 D´efinition
Un syst`eme de reconnaissance d’objets est un syst`eme qui permet de retrouver des objets
du monde r´eel `a partir d’une image du monde,`a l’aide des model´es d’objets qui sont connues
a priori.
La communaut´e de Vision consid`ere qu’il y a deux types de reconnaissances d’objets : une
reconnaissance sp´ecifique et une reconnaissance g´en´erale. Dans la reconnaissance sp´ecifique
nous cherchons `a identifier des objets particulier dans une image exemple le portrait de Gauss,
le Taj Mahal, une certaine couverture de revue.
Figure 1.1 – Exemple d’Objets sp´ecifiques. Gauche : Carl Gauss. Droite : le Taj Mahal.
9
En revanche dans la cas de la reconnaissance g´en´erale nous cherchons `a reconnaitre
diff´erentes instances de cat´egorie d’objets, appartenant `a la mˆeme classe conceptuelle, exemple
( bˆatiments, automobiles, personnes... etc).
Figure 1.2 – Exemple de cat´egories d’objets.
Nous nous int´eressons dans ce travail au deuxi`eme type. En particuliers au probl`eme de
D´etection d’objets. La D´etection d’objets est une tˆache tr`es similaire `a la reconnaissance
d’objets, en effet on pourrait voir le probl`eme de la d´etection comme un probl`eme de re-
connaissance dans le sens ou nous cherchons `a distinguer ce qui est objet de ce qui ne l’est
pas (le fond) donc il faut reconnaitre ce qu’est un objet,ses caract´eristiques. On pourrait
d´efinir la D´etection d’objets comme suit : La tˆache de d´eceler dans une image la pr´esence
d’une ou plusieurs cat´egories d’objets. G´en´eralement la tˆache de la DO permet la localisa-
tion approximative sous forme de boite englobante. D’un point de vu segmentation la DO
permettrait de d´elimiter les fronti`eres des objets, de d´eterminer les pixels appartenant `a un
objet et ceux appartenant au fond.
1.4 Probl´ematique
Apprendre `a reconnaitre une unique instance d’objet n’est pas suffisant pour bon nombre
de probl`emes, nous nous int´eressons ici `a la reconnaissance `a l’´echelle de la cat´egorie. Cepen-
dant envisager la reconnaissance de cat´egories pr´esente plusieurs difficult´es. La premi`ere et
celle de la d´efinition et de l’organisation de ces cat´egories. Cette question a re¸cu une atten-
tion consid´erable dans des travaux notamment dans le domaine de la psychologie cognitive
(Brown 1958) [3]. La question du bon d´ecoupage des cat´egories est difficile `a aborder on peut
10
trouver des objets ayant une apparence similaire ou une fonction similaire mais appartenant
`a des classes diff´erentes, et vice versa. Nous supposerons dans notre travail que les cat´egories
sont d´efinies par l’exemple, au moyen de bases d’images.
plusieurs autres facteurs li´es aux variations des objets dans les images contribuent aux
difficult´es.
La plupart des classes d’objets naturels ont des grandes variations au sein de la mˆeme
cat´egorie, et l’apparence de deux objets appartenant `a la mˆeme classe peuvent ˆetre diff´erents.
Souvent les cat´egories sont d´efinies de fa¸con fonctionnelle et non visuels, par exemple un objet
sera class´e comme chaise du moment ou il a pour fonction de permettre de s’assoir disposera
d’un dossier mais il n’a pas forcement quartes pieds ( voir figure 1.3) on parle alors de varia-
tion intra-classe.
Figure 1.3 – Gauche :Exemple de variabilit´e intra-classe de la cat´egorie chaise. Droite : Cet
objet `a l’apparence ´etrange est une chaise de par sa fonction.
Le processus de formation de l’image supprime l’information 3D ce qui a pour cons´equence
tout petit changement dans la position ou la rotation ou du point de vue (view point) de l’ob-
jet par rapport au centre de la camera peut changer l’apparence de l’objet consid´erablement.
Une question connexe `a laquelle il faut faire face et le changement d’´echelle (scaling) une
bonne d´etection devrait ˆetre robuste `a de tels changements.
Souvent les objets peuvent ˆetre partiellement masqu´es et apparaissent g´en´eralement sur
des fonds complexes et vari´es. Un autre probl`eme est le changement d’illumination en ef-
fet l’´eclairage g´en´erale affecte l’apparence d’un objet par exemple un objet en plein soleil ou
dans la nuit n’aura pas la mˆeme apparence.
Ainsi un d´etecteur d’objet robuste doit pallier aux probl`emes li´es `a ces changements d’ap-
parence, et fournir une invariance `a la d´etection.
11
Figure 1.4 – Gauche : Exemple d’occlusion. Droite : Exemple de changement de point de
vue et rotation.
La difficult´e de la d´etection ne r´eside pas seulement dans ces probl`emes `a surmonter,
mais aussi dans la difficult´e d’exploiter certaines informations li´es au contexte `a priori utile,
l’apparence d’un objet peut ˆetre ambigus il semble int´eressant de modifier la classe d’un objet
en relation avec le contexte de la sc`ene.
En plus des difficult´es ´evoqu´es relative `a la robustesse des algorithmes de reconnaissance
rencontre des d´efis notables dans la complexit´e de calcul. Le fait que la moiti´e du cortex
c´er´ebral chez les primates est consacr´e au traitement visuel donne une indication de la charge
de calcul investit dans cette tˆache complexe [4]. Des algorithmes efficaces sont donc n´ecessaire
pour utiliser de riches repr´esentations d’images de grandes dimensions, d’exploiter de grandes
bases de donn´ees d’images, ou ´etendre la reconnaissance `a des milliers de cat´egories d’objets.
Nous pr´esentons un sch´ema r´ecapitulatif d’un syst`eme de reconnaissance voir Figure 1.4.
La mod´elisation est constitu´ee de deux phases : [5]
­ La premi`ere est hors ligne (off line) qui consiste `a repr´esenter les images de la base qui
puissent exister dans la sc`ene et construire ainsi une base de mod`eles.
­ La deuxi`eme est une ´etape en ligne qui est l’´etape de la reconnaissance elle consiste
`a effectuer des transformations spatiales, `a d´eterminer la position d’un objet dans la
sc`ene et surtout `a r´ealiser une mise en correspondance entre les objets de la sc`ene et
les mod`eles de la base d’images construites lors de l’´etape hors ligne.
12
Figure 1.5 – Reconnaissance bas´e mod`eles
1.5 Repr´esentation d’images
La question de la repr´esentation des objets est cruciale il est ´evidement peu judicieux
d’utiliser directement les valeurs des pixels de l’image, qui peuvent ˆetre tr`es diff´erents pour
des images presque identiques, sinon comparer les images pixel `a pixel, lorsque l’objet est
l´eg`erement translat´e, la repr´esentation devient compl`etement diff´erente. Et mˆeme si la mise
en correspondance est parfaite, il suffit de remplacer l’objet presque identique pour que la
valeur des pixels soit enti`erement modifi´ee. La repr´esentation a fait l’objet de beaucoup de
contributions ces derni`eres ann´ees. En effet, plus la repr´esentation est adapt´ee, plus les r`egles
de d´ecision dans cet espace sont faciles `a d´efinir.
Nous distinguons deux types d’approches.Les m´ethodes globales et les m´ethodes locales.
1.5.1 M´ethodes de repr´esentation globales
Historiquement les m´ethodes globales ont ´et´e propos´es en premier, elle calcule une signa-
ture de l’image dans sa globalit´e, `a l’aide de diff´erents descripteurs de surface, p´erim`etre,
descripteur de Fourier, et les moments. En fonction du descripteur ces m´ethodes peuvent
ˆetre robustes aux variations que subit l’objet comme l’illumination, la rotation, le change-
ment d’´echelle mais ne sont pas adapt´ees aux occultations et la pr´esence de fond complexes.
C’est pour pallier `a ces limitations tr`es contraignantes que les m´ethodes locales ont ´et´e pro-
pos´ees.
1.5.2 M´ethodes de repr´esentation locales
Ces m´ethodes consid`erent les images comme ´etant des r´egions d’int´erˆets locales, g´en´eralement
de taille assez faibles par rapport `a la taille de l’image. Elles sont appel´es ”patch” seuls les
r´egions consid´er´ees comme importantes sont utilis´ees ce qui permet de limiter la quantit´e
d’information `a manipuler par leurs nature locale et leur capacit´e `a permettre ais´ement les
appariements entre images. Ces m´ethodes conduisent `a des algorithmes robustes aux trans-
lations, aux changements d’´echelles, aux occultations, et `a la pr´esence d’un fond difficile qui
sont les caract´eristiques classiques des images en conditions r´eelles.
13
1.6 Classification
Les m´ethodes de classification ont pour but d’identifier les classes auxquelles appar-
tiennent des objets `a partir de certains traits descriptifs. La proc´edure de classification est
extraite automatiquement `a partir d’un ensemble d’exemples. Un exemple consiste en la des-
cription d’un cas avec la classification correspondante. Un syst`eme d’apprentissage doit alors,
a partir de cet ensemble d’exemples extraire un mod`ele, il s’agit en effet d’extraire une r`egle
g´en´erale `a partir des donn´ees observ´ees. La proc´edure g´en´er´ee devra classifier correctement
les exemples de l’´echantillon et avoir un bon pouvoir pr´edictif pour classifier correctement
de nouvelles descriptions. Nous introduisons dans les sections suivantes, les concepts de la
classification supervis´ee ainsi que les m´ethodes usuelles utilis´ees en vision par ordinateur.
1.6.1 k plus proches voisins
La m´ethode des K plus proches voisins (Knn K nearest neighbor en anglais) [6] se base sur
une comparaison directe entre le vecteur caract´eristique repr´esentant l’entit´e `a classer (ici un
objet) et les vecteurs caract´eristiques repr´esentant des entit´es de r´ef´erence. La comparaison
consiste en un calcul de distances entre ces entit´es. L’entit´e `a classer est assign´e `a la classe
majoritaire parmi les classes des k entit´es les plus proches au sens de la distance utilis´ee.
Les principaux inconv´enients de cette m´ethode sont le nombre d’op´erations pour classer
une entit´e dans le cas d’une grande base ainsi que sa sensibilit´e au bruit pr´esent dans les
donn´ees d’apprentissage.
Figure 1.6 – A gauche la classification, est simple quel que soit le nombre de voisins.A
droite, revanche tout d´epend du nombre de voisin l’affectation `a une classe est pond´er´ee par
la distance, plus un voisin est ´eloign´e, plus son influence est faible.
1.6.2 Arbres de d´ecision
Le formalisme des arbres de d´ecision permet de classifier un nouvel objet en testant ses
caract´eristiques les unes `a la suite des autres. La classification se fait `a travers une s´equence
de questions dans laquelle chaque question d´epend de la r´eponse `a la question pr´ec´edente.
Cette s´equence de questions est repr´esent´ee par un arbre de d´ecision dont les feuilles ter-
minales repr´esentent les classes. Deux types de valeurs sont possibles discr`etes et continues,
14
selon qu’il s’agisse d’un arbre de classification ou un arbre de r´egression.
La figure 1.6.2 illustre un exemple de classification sur des donn´ees continues `a deux dimen-
sions en utilisant les arbres de d´ecision.
Dans la phase de construction de ce classificateur, les exemples de l’ensemble de l’appren-
tissage sont divis´es r´ecursivement par des tests d´efinis sur des caract´eristiques pour obtenir
des sous-ensembles d’exemples ne contenant que des exemples appartenant tous `a une mˆeme
classe. Les algorithmes existant ( CART ( [7]), ID3 ( [8]), C4.5 ( [9])...) diff´erent essentielle-
ment par leur fa¸con de choisir, `a une ”tape donn´ee et parmi les caract´eristiques disponibles,
la caract´eristique de segmentation et par le crit`ere d’arrˆet.
Figure 1.7 – Exemple de classification avec arbre de d´ecision.
1.6.3 Machines `a vecteurs de support
Les machines `a vecteurs de support, ou Support Vector Machine (SVM) sont des fonc-
tions discriminatives. Intuitivement, les SVM sont bas´es sur deux principes. Le premier est
de maximiser la marge du classifieur, c’est-`a-dire la distance entre la fronti`ere de d´ecision et
les ´echantillons les plus proches. Le deuxi`eme est l’utilisation d’une fonction noyau (kernel
trick) pour travailler dans un espace de repr´esentation o`u les donn´ees dont lin´eairement
s´eparables. Les d´etails math´ematiques peuvent ˆetre trouv´es par exemple dans [10], Les SVM
pr´esentent de bonnes propri´et´es de g´en´eralisation, en effet, ils sont capables de construire des
mod`eles sans sur apprentissage, mˆeme dans le contexte de peu d’exemples d’apprentissage
repr´esent´es par des vecteurs de grande dimension.
1.6.4 Mod`eles graphiques
Les mod`eles graphiques utilisent avantageusement des repr´esentations des distributions
de probabilit´e par des diagrammes. Cela permet de visualiser de fa¸con simple et agr´eable les
structures du mod`eles probabiliste. Cette mod´elisation permet aussi d’avoir un aper¸cu des
15
propri´et´es du mod`ele `a partir du graphe, notamment les propri´et´es d’ind´ependance condi-
tionnelles [10]. Un graphe est constitu´e de nœuds, qui repr´esentent les variables al´eatoires,
et d’arcs qui connectent ces nœuds entre eux. Ce sont des relations probabilistes entre va-
riables. Le graphe capture de fa¸con dont nœuds d´ependent seulement d’un sous ensemble de
variables. Plusieurs types de mod`eles graphiques sont g´en´eralement distingu´es :
­ Les r´eseau bay´esiens ou mod`eles graphiques directs sont tels que le lien ente les nœuds a
une directions particuli`ere, indiqu´ee par des fl`eches et permet de mod´eliser une relations
causale.
­ Une deuxi`eme classe tr`es populaire est celle des champs de Markov (MRF) ou mod`ele
graphique indirect. Les liens n’ont pas de direction, et mod´elisent des contraintes spa-
tiale entre les labels d’´el´ements voisins dans le graphe. Ils s’int´eressent `a la probabilit´e
conjointe des observations et des labels. Ils servent en g´en´eral `a r´egulariser un champs
de labels `a l’´echelle d’une image.
1.6.5 Les mod`eles `a variables latentes d’aspect
Sont des mod`eles `a variables latentes d’un int´erˆet tout particulier. Les deux plus utilis´es
en vision sont les mod`eles pLSA et LDA. Introduits initialement pour la classification de
textes, ces mod`eles sont bas´es sur une repr´esentation en mots visuels. Le mod`ele pLSA [11]
ou Probabilistic Latent Semantic Analysis, introduit par Hofmann suppose que les images
sont d´ecrites par des distributions sur des variables d’aspect, les topics, et que chaque to-
pic poss`ede une probabilit´e de g´en´erer chacun des mots. Les deux ´etant mod´elis´es par des
distributions multinationales. Le mod`ele LDA ou Latent Dirichlet Allocation, introduit par
Blei, Ng et Jordan [?], suppose quant `a lui que ces probabilit´es multinationales sont obtenues
`a l’aide d’un a priori de Dirichlet. Les mod`eles des chapitres 3 et 5 sont des extensions du
mod`ele LDA.
1.6.6 R´eseaux de neurones
Les r´eseaux de neurones sont inspir´es de la structure neurophysiologique du cerveau.
Un neurone formel est l’unit´e ´el´ementaire d’un syst`eme mod´elis´e par un r´eseau de neurones
artificiels. A la r´eception de signaux provenant d’autres neurones du r´eseau, un neurone formel
r´eagit en produisant un signal de sortie qui sera transmis `a d’autres neurones du r´eseau. Le
signal re¸cu est une somme pond´er´ee des signaux provenant de diff´erents neurones. Le signal
de sortie est une fonction de cette somme pond´er´ee :
yj = f(
n
i=1
wijxi)
avec yj la sortie du neurone formel j en question, xi; (i = 1 ::: N) les signaux re¸cus
par le neurone j de la part des neurones i, et wij les poids des interconnexions entre les
neurones i et j. Selon l’application, la fonction f, appel´ee fonction d’activation, est le plus
souvent une fonction identit´e, sigmo¨ıde, tangente hyperbolique ou une fonction lin´eaire par
morceaux. L’apprentissage du classificateur consiste `a faire ´evoluer les poids wij par des
16
m´ethodes d’optimisation non lin´eaires pour minimiser une fonction de coˆut qui constitue une
mesure de l’´ecart entre les r´eponses r´eelles du r´eseau et les r´eponses d´esir´ees.
1.6.7 Boosting :
Le Boosting (Schapire [12]) d´esigne un principe g´en´eral d’apprentissage permettant
d’am´eliorer la pr´ecision d’un algorithme d’apprentissage donn´e. Le principe g´en´eral est de
combiner lin´eairement des r´esultats de classificateurs dits ”faibles” affin de construire un
classificateur ”fort” d’apprentissage `a partir de l’ensemble original et une m´ethode de com-
binaison de classificateurs construits `a partir de chaque nouvel ensemble.
Pour d´efinir sa nouvelle technique de ”Boosting”, Shapire se base sur l’id´ee que tout classifi-
cateur faible capable d’apprendre avec une certaine confiance et une erreur de classification
inf´erieure `a (0.5), peut ˆetre transform´e en un classificateur plus confiant et avec une erreur
de classification aussi petite que d´esir´ee. En d’autres termes, un classificateur faible don-
nant de meilleurs r´esultats qu’un simple pile ou face (50% de risque) peut ˆetre la base pour
construire un ensemble de classificateurs. A chaque it´eration, l’algorithme cherche `a trouver
un classificateur faible qui peut corriger au mieux les erreurs des classificateurs obtenus aux
it´erations pr´ec´edentes. Dans le principe de ”Boosting”, cet objectif est r´ealis´e `a l’aide d’une
pond´eration des donn´ees d’apprentissage. Le premier algorithme d´eriv´e de ce concept est
”AdaBoost”. Dans la section suivante, nous d´ecrivons l’algorithme ”AdaBoost”.
Adaboost :
L’algorithme ”AdaBoost” (Adaptive Boosting), d´evelopp´e par Freund et Schapire (Freund
et Schapire [13]), est un algorithme qui cr´ee imp´erativement une combinaison lin´eaire de
classificateurs de la forme :
H(x) = Signe(
T
t=1
αtht(x))
O`u ht repr´esente un classificateur faible et αt son poids.
”AdaBoost” est un algorithme qui prend en entr´ee, en plus d’un ensemble d’apprentissage,
un second algorithme de classification. A chaque it´eration, ”AdaBoost” appelle le second
algorithme afin d’apprendre un nouveau classificateur qui corrige les erreurs de pr´ediction de
la combinaison lin´eaire courante. Une fois ce nouveau classificateur appris, il est ajout´e dans
la combinaison lin´eaire avec un poids associ´e qui maximise la performance de la nouvelle
combinaison.
La figure 1.6.7 illustre un exemple d’AdaBoost appliqu´e sur des donn´ees en deux dimensions.
17
Figure 1.8 – Exemple de classification avec AdaBoost.
18
1.7 ´Etat de l’art
La reconnaissance d’objets a suscit´e l’int´erˆet de la communaut´e scientifique d´es les pre-
miers pas de la vision par ordinateur. les premiers travaux en reconnaissance `a la fin des
ann´ees 60 ´etaient bas´es sur la g´eom´etrie nous pouvons cit´es quelques travaux fondateurs :
Roberts [14] propose une approche ou l’objet est mod´elis´e en blocks ”block world” en an-
glais,d´efini comme suit : ”Nous supposerons que les objets vus pourraient ˆetre construits avec
des parties avec lesquelles nous sommes familiers. Nous voyons l’objet comme une transfor-
mation en un mod`ele pr´econ¸cu , ou un ensemble de parties pr´econ¸cu ... La seule exigence est
que nous ayant une description compl`ete de la structure tridimensionnelle de chaque mod`ele.”
Ce mod`ele g´eom´etrique en th´eorie fonctionne mais il est bien loin de la pratique de nom-
breuses difficult´es ne peuvent ˆetre abord´es dans ce mod`ele comme pour les objets articul´es
ou en mouvement, les surfaces curvilignes, les occlusions et les formes inconnues, texture
complexe tel que le feuillage, surfaces transparentes ou translucides.
Figure 1.9 – a) L.G.Roberts. b) Sc`ene de blocks. c) Fronti`eres extraites `a l’aide du gradient.
d) Description polyhedral de la sc`ene. e) Sc`ene 3D avec changement de point de vue.
Thomas Binford [14] repr´esente les objets par des cylindres g´en´eralis´es, la m´ethode consiste
en un balayage de l’objet, celui ci est donc repr´esent´e comme une ossature par des cylindres
le long d’un axe.
Le principale avantage de cette m´ethode est la capacit´e `a repr´esenter des objets ayant une
forme curviligne, un exemple de description d’ un objet en utilisant les cylindres g´en´eralis´es,
est montr´e dans la figure suivante.
19
Figure 1.10 – Repr´esentation des objets par les cylindres g´en´eralis´es. a) Thomas Binford.
b)Image de la gamme d’une poup´ee. c) Cylindres g´en´eralis´es obtenues.
Stephen Underwood and Clarence [14] propose une approche bas´e sur les graphes d’aspects
dans lesquels les aspects 2D d’un objet 3D sont collect´es dans des groupes appel´es aspects
sous forme d’un graphe ou chaque nœud repr´esente une vue (aspect) et les arcs repr´esentent
les relations entre les aspects et le passage d’une vue `a une l’autre.
la repr´esentation par graphe d’aspects eu beaucoup de succ`es dans la communaut´e scienti-
fique en effet la notion humaine est bas´e sur l’apparence (view centred representation) plutˆot
qu’une vision bas´ee sur l’objet.
Intuitivement cette repr´esentation semble ad´equate, mais la mod´elisation sous formes de
graphes d’aspects demeure complexe.
Figure 1.11 – Graphe d’aspects. Deux vues d’un objet, les diff´erentes projections forment
un graphe d’adjacence.
20
Biederman [15] introduit cylindres g´en´eralis´ees d´eformables appel´es geons qui a d´emontr´e
que la reconnaissance d’objets peut ˆetre caract´eris´e par l’absence ou la pr´esence de geons
(cˆones) dans la sc`ene 3D. De ce fait le r´ealisme na¨ıf qui ´emerge dans descriptions d’objets
peut refl´eter les m´ecanismes d’un syst`eme par lequel les objets sont identifi´es.
N´eanmoins le mod`ele affronte des limitations pour concr´etiser des entit´es (objets) r´eelles.
Figure 1.12 – Repr´esentation des objets `a l’aide des geons.
Dans les travaux pr´ec´edents les chercheurs ont mis l’accent sur la d´efinition des ´el´ements
primitifs pour mod´eliser les objets. D’autres travaux se sont d’avantage int´eress´e sur la notion
de structure g´eom´etrique des objets (relations g´eom´etrique).
Fischler et Elschlager [1] ont tent´e de formaliser la connaissance d’un objet en le subdi-
visant en plusieurs parties puis en repr´esentant ces parties par un mod`ele en constellation
int´egrant la relation entre les diff´erentes parties et la flexibilit´e qu’elles peuvent avoir.
21
Figure 1.13 – Mod`ele utilis´e par Fischler et Elschlager pour mod´eliser le visage Figure
provenant de [1].
Or la tˆache s’est av´er´e rapidement difficile et les efforts se sont tourn´es vers des images
plus simples ou encore des environnement contrˆol´es. Ainsi durant les ann´ees 80 et le d´ebut
des ann´ees 90, les travaux se sont port´es sur des objets bien centr´es, g´en´eralement avec des
fonds uniformes, tels que les caract`eres et visages [16].
Le probl`eme de ces m´ethodes est que les objets ´etaient souvent repr´esent´es par des images
elles mˆemes (repr´esentation explicite au moyen d’exemple). les mod`eles n’´etaient donc pas
r´esistants aux transformations et variations que peut subir l’image telles que les variations
d’apparence et de point de vue. ou encore sur des fonds complexes. Les m´ethodes par ap-
prentissage ont apport´es des r´eponses `a ces probl`emes, elles permettaient de produire de
classifieurs automatiquement `a partir d’exemples d’apprentissage.
D’autres part, les techniques de descriptions d’images ont progress´e. La description d’une
image ayant fait l’objet d’un travail consid´erable ont permit l’´emergence de m´ethodes au-
jourd’hui classiques.
Agrawal et al [17] : d´eveloppe un syst`eme de d´etection de v´ehicule en se basant sur la les
mod`eles de recherche d’informations ceci en construisant un vocabulaire visuel `a partir de
patchs, Ces patchs sont ensuite regroup´es selon une fonction de similarit´e. Les descripteur
de l’image est construit en faisant une corr´elation entre le dictionnaire visuel et un vecteur
binaire celui ci d´etermine si un mot visuel est pr´esent ou absent dans une image. ´etant
donn´ee un ensemble de donn´ees d’apprentissage marqu´e comme positifs ou n´egatifs chacune
de ces donn´ees est convertit en la repr´esentation d´ecrite ci dessus. Un classfieur SNow (
Sparce Network of Winnows) est utilis´e pour l’apprentissage. Pour la phase de la d´etection
(localisation) les auteurs utilisent la m´ethodes des fenˆetres glissantes ( sliding window) qui
parcourt l’image `a la recherche potentiel d’objets d’int´erˆets.
22
Vijayanarasilhan et Grauman [17] propose une approche originale pour la d´etection d’objet
en effet il propose une m´ethode qui permet d’´eviter l’utilisation des fenˆetres glissantes sachant
que celles ci sont couteuse en temps d’ex´ecution. ´Etant donn´e un ensemble de donn´es d’ap-
prentissage (images) ou chacune d’elle est segment´e au niveau du pixel (man segmentation)
ils entrainent un classifieur pour distinguer les cat´egories d’objets. Pour la d´etection ayant
une nouvelle image il effectuent une sur-segmentation en sous r´egions, puis pour chacune de
ces sous r´egions on extrait les caract´eristiques associ´e et finalement le classifieur renvoie un
score pour chacune des sous r´egions. Un graphe est construit le probl`eme de d´etection est
r´eduit au probl`eme MWCS (trouver un sous graphe fortement connexe en maximisant un
certain score).
Martin et al [18] proposent une m´ethode pour la d´etection et la localisation des fronti`eres
dans les images naturelles en utilisant une combinaisons de caract´eristiques locales aux pixels.
Un classifeiur est utilis´e pour faire l’apprentissage sur des images ground truth, la sorti
du classifeur donne la probabilit´e de la pr´esence d’une fronti`ere `a chaque localisation et
orientation dans l’image. Les auteurs utilisent les discontinuit´es au niveau de la luminance (
oriented energy and gradient), les gradients couleurs, ainsi que les gradient au niveau de la
texture en utilisant la transform´ees d’Hilbert avec un filtre gaussien.
Gao et Fen [19] ont compar´es trois diff´erentes approches pour la d´etection des objets
saillants. La premi`ere m´ethode est bas´ee sur la segmentation en utilisant l’algorithme Jseg
cette algorithme est int´eressant car il ne permet pas seulement de trouver une homog´en´eit´e
dans les couleurs mais aussi il cherche l’homog´en´eit´e de la texture dans une image. Mais cette
approche rencontre des limites car elle produit biens souvent une sur-segmentation des r´egions
d’un objet la seconde m´ethode (grid based method) bas´e grille permet d’´eviter les erreurs
du au processus de segmentation le principe est de partitionner l’image en grille superpos´e
(overlapping grid). Les caract´eristiques Sift sont calcul´ees pour chaque grille, L’avantage
d’une telle m´ethode et contrairement aux m´ethodes bas´e sur le template matching est de ne
pas prendre en consid´eration les portions non significatives des grilles et ce en se concentrant
uniquement sur la forme globale d’un objet. Malgr´e cela cette m´ethode devient inad´equate
lorsque la grille ne couvre pas les objets saillants d’une image. La troisi`eme m´ethode peut
pallier `a ce probl`eme (part based method) bas´ee sur les r´egions ou des parties d’une image.
L’id´ee est construire un dictionnaire de patchs extraits d’une image. Pour une image test
donn´ee il suffit de calculer ces caract´eristiques est de faire un matching avec le mod`ele. Enfin
les auteurs proposent une m´ethode hybride en faisant la combinaison des 3 m´ethodes d´ecrites.
Maaoui et al [20] pr´esentent une approche de reconnaissance d’objets bas´ee sur l’utilisation
des moments de Zernike appliqu´es `a des images couleur, la d´etection est effectu´e en utilisant
une segmentation couleur et l’´etiquetage des composantes connexes et une m´ethode bas´ee
sur les Svm est utilis´ee `a l’´etape de l’apprentissage.
23
Lee et al [21] d´etectent les objet saillants d’une image naturels , il calcule une carte de
saillance en appliquant la m´ethode PCA ( principale component analysis) `a la couleur dans les
espaces RGB et CIE-Lab une clusterisation des distributions des couleur est ils obtiennent
une carte de saillance. la classification objet/fond est obtenue en appliquant une analyse
discriminative lin´eaire ( LDA) pour chaque pixel de l’image test.
Wang et al [22] pr´esentent une nouvelle approche pour la d´etection de cat´egories d’ob-
jets en combinant des descripteurs d’apparence locales et des contraintes contextuelles. Ils
construisent une foret de Hough de patchs afin de d´eterminer les emplacements possibles de
diff´erents objets, enfin il consid`erent des contraintes d’emplacement spatiales entre les objets
dans un espace de vote de Hough afin d’am´eliorer la pr´ecision de la d´etection.
Juang et Chen [23] proposent un syst`eme flou pour la d´etection d’objets en temps r´eel
`a l’aide d’un svm (TFS-SVMPC). Le syst`eme de d´etection consiste en deux ´etapes : La
premi`ere utilise un histogramme globale de couleur de l’objet comme caract´eristique discri-
minative, ici en particuliers les auteurs proposent une m´ethode pour calculer l’histogramme
afin de permette l’impl´ementation en temps r´eel. La seconde ´etape utilise une caract´eristique
g´eom´etriques de d´ependances locales des couleurs des objets comme descripteur pour le mˆeme
classifieur.
Fulkerson et al [24] proposent une m´ethode pour la localisation d’objets, en utilisant les
superpixels plutˆot que les pixels. De la ils construisent un histogramme de caract´eristiques
locales pour chaque superpixel. les CRF (Conditional Random Field) sont utilis´es pour la
phase de reconnaissance.
La plupart des m´ethodes de d´etection d’objets utilisent pour la localisation des objets sur
la technique des fenˆetres glissantes, cette technique consiste en une recherche exhaustive sur
toute l’image, cette m´ethode est particuli`erement couteuses en temps de calcul. Beaucoup
d’avanc´ees dans les m´ethodes sont apparues, en ce sens nous pouvons citer quelques travaux
marquants.
Le d´etecteur de visages de Viola et Jones [25] qui a inspir´e les d´etecteurs de utilis´es dans
les appareils photo num´eriques. Cette m´ethode se base sur une cascade de classifieurs o`u
un descripteur de fenˆetre est ´evalu´e par une s´erie de classifeurs qui peuvent choisir de le
rejeter ou de continuer les traitements. La cascade permet d’acc´el´erer la classification. Une
autre technique int´eressante propos´e par Viola et Jones est celle des images int´egrales cette
technique permet d’acc´el´erer consid´erablement le calcul des caract´eristiques.
Lampert et al [26] ont trait´e le probl`eme sous un angle diff´erent en se basant sur l’algorithme
de S´eparation et ´Evaluation (Branch and Bound). La m´ethode propos´e permet de trouver le
maximum global de la fonction de score tout en examinant un nombre restreint de fenˆetres,
mais cette m´ethode ne permet pas l’utilisation des classifieurs les plus performants, ceci `a
cause des contraintes sur les fonctions de score qui influe sur le choix du classifieur `a utiliser.
24
D’autres travaux se sont int´eress´es `a la repr´esentations des objets, notons les travaux
de Dalal et Triggs [27] ont propos´e un descripteur `a base des histogrammes d’orientations
des gradients (HOG) pour la d´etection de personnes, inspir´e de SIFT. le descripteur est
calcul´e dans une fenˆetre 64*128 la taille du descripteur (histogramme) est de 3870. La phase
d’apprentissage est fait `a l’aide d’un classifieur SVM. La d´etection quant `a elle est effectu´e
via une fenˆetre glissante, chaque fenˆetre calcul le descripteur HOG puis le classifieur retourne
avec quelle confiance cette fenˆetre contient l’objet d’int´erˆet.
D’autres travaux se sont int´eress´ees `a la mod´elisation des objets.
Leibe et al [28] proposent une m´ethode des mod`eles implicites de forme (Implicit shape mo-
del) qui permet de d’apprendre la relation entre les mots visuels et le masque de segmentation
des objets, et sera capable de retrouver dans une nouvelle image.
25
Chapitre 2
Conception
Sommaire
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.2 Approche 1 : 1-Chebychev . . . . . . . . . . . . . . . . . . . . . . . 27
2.2.1 La segmentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.2.2 Repr´esentation de l’image . . . . . . . . . . . . . . . . . . . . . . . 40
2.2.3 Reconnaissance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.3 Approche Couleur . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
2.3.1 Repr´esentation des objets . . . . . . . . . . . . . . . . . . . . . . . 48
2.3.2 Construction du mod`ele . . . . . . . . . . . . . . . . . . . . . . . . 49
2.3.3 Appariement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
2.3.4 Localisation des objets . . . . . . . . . . . . . . . . . . . . . . . . . 50
2.3.5 Localisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
2.3.6 Avantages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
2.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
2.1 Introduction
Comme pr´ecis´e dans le chapitre pr´ec´edent, la d´etection d’objets reste l’un des principaux
sujets de recherche en vision par ordinateur, de part, la complexit´e de la tˆache mais surtout
la capacit´e `a s’adapter `a tout types d’environnement.
L’objectif de notre travail est de permettre `a un ordinateur de d´etecter et de reconnaitre
des objets pr´esents dans une image. Apr`es quelques recherches et apr`es voir pass´e en revue
diff´erentes techniques et m´ethodes existantes pour la d´etection d’objets, nous pr´esentons dans
ce qui suit notre contribution dans cette tˆache.
26
La d´etection d’objets pr´esente beaucoup de difficult´es `a diff´erents niveaux, nous pouvons
les r´esumer dans ce qui suit :
­ La repr´esentation de l’objet : il est n´ecessaire de repr´esenter de mani`ere discriminative
les objets. Nous devons donc concevoir un descripteur robuste aux changements et
diverses variations des objets.
­ Il est important de bien d´efinir les classes d’objets, cherchons-nous des cat´egories d’ob-
jets ou bien des instances ?
­ La mani`ere de faire la correspondance entre un objet (susceptible d’en ˆetre un) et le
mod`ele connu `a priori. (Apprentissage automatique, Template matching,...).
­ La localisation des objets dans une image : ou se trouvent ils ? Comment les extraire ?
(Segmentation, parcours exhaustive,...).
­ La complexit´e des algorithmes existants : comment parvenir `a une reconnaissance en
temps r´eel ?
Toutes ces questions repr´esentent des difficult´es que nous devons surmonter. L’objet de la
suite de ce chapitre est de fournir des r´eponses `a ces questions, nous pr´esentons en d´etails
nos diff´erents algorithmes.
Nous avons con¸cu deux approches diff´erentes pour la d´etection d’objets, nous d´etaillerons
une `a une dans la suite de chapitre.
2.2 Approche 1 : 1-Chebychev
Dans cette approche nous proposons une m´ethode de reconnaissance bas´ee sur l’utilisation
des moments de Tchebychev comme descripteur d’objet. Dans ce qui suit, nous donnerons
plus de d´etails sur le syst`eme con¸cu.
Figure 2.1 – Syst`eme de reconnaissance.
27
2.2.1 La segmentation
La segmentation d’une image est une ´etape cruciale dans la tˆache de la d´etection d’objets.
Nous proposons dans cette section diff´erentes m´ethodes que nous avons con¸cu pour segmenter
les objets et les extraire du fond.
M´ethode 1 : DBscan globale
DBscan est un algorithme de clusterisation de donn´ees bas´ees densit´e (denisity based). La
tˆache de clusterisation consiste au regroupement des donn´ees selon un crit`ere de similarit´e.
DBscan permet de regrouper des points ( Des donn´ees) denses en un seul cluster. Les clusters
obtenues forment des hyper-sph`eres.
DBscan utilise deux param`etres, la distance (epsilon) et MinPts. la distance repr´esente
le rayon ou peut s’´etendre le cluster, MinPts lui repr´esente le nombre de points minimum
pour qu’un ensemble de points soit consid´er´e comme cluster.
L’un des avantages quant `a l’utilisation de cette m´ethode est le fait de ne pas connaitre `a
priori le nombre de clusters, contrairement `a d’autres m´ethodes de clusterisation.
Dans le cas des images, il s’agit de regrouper les pixels proches et ayant une certaine
similarit´e en un cluster, ici nous appliquons DBscan d’une mani`ere diff´erente. Le rayon de
recherche est ´etendu `a toute l’image, nous calculons donc la similarit´e d’un point avec tous les
autres points de l’image. c’est une exploration globale de l’image, ceci permet de regrouper
des points plus ou moins ´eloign´es portant les mˆemes caract´eristiques.
28
Donn´ees : I image. S : seuil de comparaison. MinPts : nombre de pixel minimum
dans un cluster.
R´esultat : Image labellis´ee
Debut
Label=0
pour tout pixel P dans L’image faire
si P est non visit´e alors
marqu´e P comme visit´e
ListePixels< −− genererSimilaire(P, seuil)
si || ListePixels|| < Minpts alors
marquer P comme bruit ;
fin
sinon
/* incrementer le label */
Label< −− Label +1
clusterisation(P, Label,ListePixels)
fin
fin
fin
Fin
Algorithme 1: Algorithme de la premi`ere m´ethode.
La fonction g´en´erer Similaire retourne la liste des points portant les mˆemes caract´eristiques
que celui re¸cu en argument. la fonction clusterisation permet d’´etendre le cluster et de labeliser
chaque ´el´ement du cluster.
Donn´ees : I : P pixel .ListePixels : contient les ´el´ements similaires au pixel P.
R´esultat : cluster labelis´e
Debut
pour chaque ´el´ement e dans ListePixels faire
/* g´en´erer sa liste de points similaire */
ListeSim< −−g´en´ererSimilaire(e,seuil)
si || ListeSim|| > Minpts alors
fusionner(ListeSim,ListePixels)
fin
fin
Fin
Algorithme 2: Proc´edure de Clusterisation.
29
Cette approche s’est av´er´ee efficace en terme de clusterisation, de plus elle est r´esistante
aux changement de gradients et de luminance pr´esents dans l’image, la m´ethode est robuste
aux variations locales de l’image.
Figure 2.2 – R´esultat de segmentation avec DBscan globale. Gauche : Image originale.
Droite : Image segment´ee labellis´ee.
Malgr´e ces avantages la m´ethode est couteuse en temps de calcul car chaque pixel est
compar´e avec l’ensemble des pixels de l’image. Pour pallier `a cette d´eficience nous proposons
une am´elioration `a l’algorithme 1.
M´ethode 2 : DBscan locale
Dans cette m´ethode nous explorons l’image de mani`ere locale et non pas globale. Cette fois
ci les pixels sont compar´es avec leurs voisinages imm´ediats, de mani`ere analogue `a la m´ethode
des composantes connexes. Nous comparons chaque pixel aux pixels adjacents, le rayon de
recherche est fix´e `a 1, contrairement `a la premi`ere, cette m´ethode est rendue sensible aux
changements de gradients, couleurs, et autres variations locales. La m´ethode pourrait mener
`a une sur-segmentation, ceci est dˆu principalement au fait de comparer les niveaux de gris
des pixels.
30
Donn´ees : I image. S : seuil de comparaison. MinPts : nombre de pixel minimum
dans un cluster.
R´esultat : Image labellis´ee
Debut
Label=0
pour tout pixel P dans L’image faire
si P est non visit´e alors
marqu´e P comme visit´e
ListePixels< −− genererSimilaire(P, seuil)
si || ListePixels|| < Minpts alors
marquer P comme bruit ;
fin
sinon
/* incrementer le label */
Label< −− Label +1
clusterisation(P, Label,ListePixels)
fin
fin
fin
Fin
Algorithme 3: Algorithme de la deuxi`eme m´ethode.
La fonction g´en´erer voisins Similaires retourne cette fois ci la liste des points adjacents (8
connexit´e) portant les mˆemes caract´eristiques que celui re¸cu en argument.
Figure 2.3 – R´esultat de segmentation avec DBscan locale en utilisant les niveaux de
gris. Gauche : Image en niveau de gris. Droite : Image labellis´ee, nous obtenons une sur-
segmentation.
31
Pour pallier `a ce probl`eme Nous avons donc alors opt´e pour un changement dans l’espace
des couleurs, nous avons exploit´e l’espace HSV au lieu de travailler avec les niveaux de gris.
Nous avons choisi l’espace HSV car cette repr´esentation des couleurs est plus proche de la
perception humaine. En utilisant cette fois que la composante Hue (Teinte).
Figure 2.4 – Gauche : Image convertit dans l’´eespace HSV. Droite :R´esultat de segmentation
avec DBscan locale en utilisant la Teinte.
Le temps d’ex´ecution de cette m´ethode, contrairement `a la premi`ere, est nettement plus
r´eduit, le temps de r´eponse est instantan´e, ceci est dˆu au fait d’explorer l’image localement,
chaque pixel avec son voisinage. les r´esultats de cette segmentation sont proches de la notion
d’objets car les objets ont plus ou moins les mˆemes caract´eristiques.
Figure 2.5 – Gauche : Rsultat de segmentation avec DBscan locale en utilisant le Teinte.
Droite : Localisation des objets.
N´eanmoins pour des images ayant des objets et des fonds fortement textur´e, la m´ethode
trouve ses limites. voir Figure 2.2.1
32
Figure 2.6 – Gauche : Image convertit dans l’espace HSV. Milieu :R´esultat de segmentation
avec DBscan locale en utilisant la Teinte. Droite :R´esultat de segmentation l’objet n’est pas
d´etect´e.
Nous avons donc par la suite con¸cu une autre m´ethode pour la segmentation.
M´ethode 3
Afin d’apporter une solution aux limitations des algorithmes pr´ec´edents, nous proposons
ici une toute autre approche.
La figure suivante illustre le principe de notre m´ethode. Sch´ema r´ecapitulatif de notre m´ethode :
Figure 2.7 – Organigramme de la m´ethode.
33
Binarisation
L’´etape de la binarisation est une ´etape cl´e dans notre algorithme, le but de cette ´etape
est de permettre l’extraction des objets de leurs fond, il nous faut distinguer les pixels ap-
partenant certainement aux objets et le pixels appartenant au fond.
Le probl`eme qui se pose est celui du choix d’un seuil pour la binarisation, en effet chaque
image `a une distribution de niveau de gris qui lui est propre, comment choisir alors un seuil
et surtout savoir l’adapter `a chaque image ?
Le seuillage n’est pas n´ecessairement une op´eration qui s’effectue manuellement, la valeur
d’un seuil peut ˆetre obtenue de mani`ere automatique.
Notre d´emarche pour faire cela est d’estimer deux seuils `a partir de l’histogramme des
niveaux de gris associ´e `a l’image. Le but est de trouver les meilleurs seuils permettant de
s´eparer deux populations, l’une serait le fond et l’autre les objets.
Le principe est de parcourir l’histogramme des nivaux de gris, en r´ecup´erant les mini-
mums et les maximums locaux significatifs ( une grande variation dans l’histogramme c.`a.d.
un changement brusque dans les fr´equences des valeurs). Enfin parmi eux choisir les meilleurs
seuils qui encadrent la distribution de tel sorte a englober les valeurs qui se r´ep`etent le plus.
Figure 2.8 – Repr´esentation des minimums et maximums locaux sur l’histogramme.
34
Figure 2.9 – Bas : Extraction des minimums et maximums locaux `a partir de l’histogramme.
Donn´ees : I Image I. seuil1, seuil2
R´esultat : Image binaris´ee B.
Debut
pour tout pixel P dans Image faire
si P<seuil1 ou P > seuil2 alors
P< −−255 /* pixel en blanc */
fin
sinon
P< −−0 /* pixel en noir */
fin
fin
Fin
Algorithme 4: Algorithme de Binarisation.
Nous pouvons illustrer par l’exemple suivant voir figure Figure 2.10
Figure 2.10 – Gauche : Image binaris´ee. Droite :Histogramme des niveaux de gris ainsi que
les seuils min et max en rouge.
35
Donn´ees : I Image I.
R´esultat : Seuil seuil1, Seuil seuil2.
Debut
HistoBin : /* vecteur accumulateur de 256 ´el´ements */
ListeMin, ListeMax /* listes contenant respectivement les minimums locaux
(les maximums locaux), initialement vides. */
DiffMin, DiffMax /* listes contenant respectivement les changements de
fr´equences des min locaux (max locaux) */
Vc, Vp /* valeur courante, valeur pr´ec´edente. */
Bool change= faux /* variable utilis´ee pour le changement de signe */
pour toute Vc de HistoBin faire
si Vc−Vp> s1 alors
si change=faux alors
ajouter Vp `a ListeMin
ajouter `a DiffMin (Vc−Vp)
fin
change=vrai
fin
si Vc−Vp < s1 et Vc−Vp >= 0 alors
change= vrai
fin
si Vc−Vp < s2 alors
si change=vrai alors
ajouter Vp `a ListeMax
ajouter `a DiffMax (Vc−Vp)
fin
change=faux
fin
si Vc−Vp <= 0 et Vc−Vp > s2 alors
change=faux
fin
fin
/* extraction des seuils */
/* 1.Parcourir ListeMax extraire la valeur Max celle ci repr´esente la
valeur la plus fr´equente dans l’histogramme. */
/* 2. fractionner ListeMin en deux selon Max L1 et L2 tel que toutes les
valeurs de L1 sont inf´erieur `a Max et inversement toutes les valeurs
de L2 sont sup´erieur `a Max. */
3.pour chaque ´el´ement x de L1 faire
/* eliminer x s’il existe un element y dans ListeMax tel que x > y */
fin
4.seuil1< −− Minimum de L1. 5.pour chaque ´el´ement x de L2 faire
/* eliminer x s’il existe un element y dans ListeMax tel que x < y */
fin
6.seuil2< −− Maximum de L2.
Fin
Algorithme 5: Algorithme d’extraction de seuils pour la Binarisation.
36
Le choix du seuil permet de distinguer les objets du fond mais le r´esultat n’est pas tou-
jours pertinent. L’image binaire obtenue comporte beaucoup de pixels marqu´es en blanc
appartenant aux diff´erentes r´egions de l’image (le fond ´etant inclus).
´Erosion
Pour ´eliminer cela nous allons proc´eder `a une ´erosion de l’image afin de retenir les pixels
appartenant uniquement aux objets. Nous allons donc proc´eder `a l’´erosion de l’image binaire
plusieurs fois.
Figure 2.11 – Image binaris´ee apr`es ´erosion.
Dilatation
Il reste encore quelques pixels n’appartenant pas aux objets d’int´erˆets mais nous ne pou-
vons en ´eliminer d’avantage avec l’´erosion, nous avons alors vu le probl`eme autrement, au
lieu d’isoler les objets nous cherchons `a retrouver le fond, en effet en partant du principe que
ce qui n’appartient pas aux objets appartient forcement au fond.
Pour cela nous appliquons une dilatation sur l’image binaris´ee suivie d’une inversion, la Fi-
gure 1.10 repr´esente cette ´etape.
Le fond dans cette image est marqu´e en gris.
Figure 2.12 – Image binaris´ee apr`es dilatation puis inversion.
37
Nous avons deux images, l’une ´etant l’´erosion de l’image binaire et l’autre la dilatation,
nous proc´edons `a une superposition des deux images `a l’aide d’une simple somme logique,
nous obtenons ainsi une image `a trois niveaux de gris blanc noir et gis moyen comme l’illustre
la Figure 1.12
Figure 2.13 – Superposition des deux images pr´ec´edentes.
A cette ´etape, nous avons une image combin´ee, ce dont nous sommes certains est de la
nature des point marqu´es en gris moyen et blanc , en effet nous sommes savons que les points
en blanc appartiennent aux objets et que les points marqu´es en gris moyen appartiennent au
fond. les r´egions marqu´es en noir sont quant `a elle ”incertaines” celles ci peuvent appartenir
au fond comme aux objets. Il nous faut donc d´eterminer si ces r´egions appartienne bien aux
objets ou bien si elles font partie du fond. Il s’agit donc de trouver les fronti`eres des objets
dans ces r´egions.
La Segmentation
L’id´ee de base de notre algorithme est d’attribuer aux r´egions ”incertaines” un label de
fond ou bien celui d’objet.
Le principe est le suivant, si une r´egion incertaine est entour´ee compl`etement par une r´egion
marqu´e comme fond (gris moyen) et qu’elle ne contient pas de blanc alors certainement cette
r´egion appartient au fond. Par contre si cette r´egion entoure une r´egion marqu´ee comme
objet (blanc) alors une partie de cette r´egion incertaine fait partie de l’objet. De l`a, nous
d´eterminons les fronti`eres des objets car cette r´egion contient forcement les fronti`eres des
objets.
La figure 2.14 illustre le principe de la segmentation.
38
Figure 2.14 – ´Etapes de segmentation d’objets : les r´egions marqu´es en blanc s’´etendent
jusqu’aux fronti`eres des objets.
Donn´ees : I Image I fusion.
R´esultat : Image S segment´ee.
Debut
Mat : matrice bool´eenne de la taille de l’image I.
pour tout p de l’image. faire
si P est marqu´e Noir alors
P< −−gris /* marquer en gris. */
marquer Mat[p]=vrai
fin
fin
pour tout pixel p de l’image fusion faire
si P est marqu´e en Blanc alors
/* ´Etendre le blanc jusqu’aux fronti`eres. */
1. ´Etendre le voisinage de chaque pixel ( 8 pixels voisins). 2.Lors de l’extension,
les fronti`eres repr´esentent les pixels avec les plus hauts gradients dans cette
r´egion.
fin
fin
Fin
Algorithme 6: Algorithme de Segmentation.
La Figure 2.15 illustre les r´esultats de la segmentation.
39
Figure 2.15 – R´esultats de la segmentation. -Gauche : fronti`eres des objets. -Milieu :Seg-
mentation des objets. Droite : r´esultat final, extraction des objets.
2.2.2 Repr´esentation de l’image
Les moments jouent un rˆole tr`es important dans la reconnaissance d’objets. Ce sont des
quantit´es scalaires utilis´ees pour repr´esenter une fonction de mani`ere significative.
Habituellement utilis´ees en statistiques, nous introduisons les moments de Tchebychev comme
descripteur d’objets.
Les moments de Tchebychev ont ´et´e introduit par R Mukundan en 2001 [29] ,les moments
de Tchebychev permettent de d´ecrire une fonction (une distribution de points) de mani`ere
pr´ecise . D’un point de vue math´ematique, il s’agit des diff´erentes projections dans un espace
orthonorm´e, en vision, cela permet de d´ecrire la forme d’une image d’un objet dans le cas de
la reconnaissance.
Les moments de Tchebychev d’ordre p+q , associ´e `a une image de taille N ∗N est donn´ee
par :
40
L’utilisation des moments de Tchebychev pr´esente beaucoup d’avantages compar´e `a l’uti-
lisation d’autres moments. Ceux ci peuvent ˆetre ´enum´er´es comme suit :
­ Les moments de Tchebychev sont orthogonaux : la condition d’orthogonalit´e est v´erifi´ee
(voir chapitre pr´ec´edent) cette propri´et´e permet d’´eliminer la redondance d’information,
car la base polynomiale est orthogonale, cela veut dire que pour un moment donn´e r
une projection repr´esente une partie de l’image.
­ Les moments de Tchebychev sont discrets ce qui permet d’exploiter directement les
points de l’image (coordonn´es), cela permet d’´eliminer les approximations num´eriques.
­ Les moments de Tchebychev sont r´esistants aux variations d’´echelle et de translation.
­ L’utilisation des moments de Tchebychev convient aux images sym´etriques et asym´etriques
contrairement aux moments de Legendre avec des images sym´etriques.
­ Les moments de Tchebychev permettent la reconstruction de l’image originale.
Malgr´e ces avantages, en pratique, le calcul des moments de Tchebychev s’av`ere couteux
en terme de temps. Il est indispensable dans notre probl`eme de se rapprocher le plus de la
notion de temps r´eel sans perdre pour autant de la robustesse et la pr´ecision qu’apporte cette
repr´esentation.
Dans cette optique nous avons propos´e une variante quant `a l’utilisation classique. Plu-
sieurs modifications ont ´et´e apport´ees dans le sens de cette d´emarche.
41
Dans la litt´erature les moments sont calcul´es jusqu’`a un ordre donn´e c’est `a dire que pour
calculer les moments d’ordre n il faut aussi calculer les ordres pr´ec´edents (0, 1, 2, , , , n − 1)
cela est important pour capturer tous les d´etails d’une image `a l’aide des diff´erentes projec-
tions. Mais est il n´ecessaire de calculer tous les ordres pr´ec´edents ? est il n´ecessaire d’avoir
des d´etails sur toutes les projections `a diff´erents ordres ? Pour la reconstruction de l’image
il est ´evidement important d’avoir toutes les projection afin de retrouver le plus fid`element
l’image originale.
Cependant la complexit´e du calcul num´erique des moments est un r´eel obstacle. Nous propo-
sons alors de calculer les moments `a un ordre donn´e sans tenir compte des ordres pr´ec´edents.
ceci revient `a utiliser l’une des projections pour d´ecrire un objet. Nous pourrions nous deman-
der si c’est est bien suffisant ? nous pouvons d´emontrer cela en proc´edant `a une reconstruction
de l’image avec notre m´ethode, `a diff´erents ordres ainsi qu’avec la m´ethode de calcul classique.
Figure 2.16 – Reconstruction `a diff´erents ordres avec notre calcul des moments ainsi qu’avec
le calcul classique de ceux ci.
42
Nous remarquons la chose suivante : plus l’ordre est ´elev´e (jusqu’`a un certain ordre) plus
la reconstruction est pr´ecise.
Il est ´evidement logique que la reconstruction ne permet pas de retrouver l’image originale
dans son int´egralit´e. Cependant, la forme globale reste la mˆeme. Nous obtenons donc une
repr´esentation globale de l’image dans notre cas de l’objet, cela permet donc de repr´esenter
de mani`ere globale la forme de l’objet, cela s’adapte parfaitement `a notre probl`eme. Nous
n’avons pas besoin d’autant de d´etails aussi fins car nous cherchons `a retrouver des cat´egories
d’objets.
De plus, l’avantage notable est la r´eduction de la complexit´e algorithmique, le temps de
calcul des moments est remarquablement plus r´eduit compar´e au calcul classique pour le
mˆeme ordre.
Les moments de Tchebychev sont habituellement utilis´es sur des images en niveau de
gris ou encore sur des image binaire, notre but est de modifier le descripteur afin que nous
puissions int´egrer l’information couleur, ceci permet de distinguer des objets ayant des formes
identiques mais pourtant diff´erents, nous obtenons un niveau plus ´elev´e de pr´ecision. Il s’agit
de rajouter dans le descripteur de nouveaux ´el´ements choisis comme ´etant les param`etres
dans l’espace Rgb.
Une autre modification et am´elioration consiste en l’application des moments de Tcheby-
chev sur des images contours,comme propose Dahmani dans les travaux pr´ec´edents [30] en
introduisant les contours internes pour le calcul des moments. Pour cela nous appliquons le
filtre Canny sur nos images, ceci permet de r´eduire consid´erablement le temps de calcul des
moments, de plus les contours donnent une assez bonne repr´esentation d’un objet, en effet
la forme de l’objet est pr´eserv´ee, nous ne perdons pas l’information sur la forme globale de
celui ci.
Comme mentionn´e auparavant les moments de Tchebychev sont robustes aux changement
d’´echelles, ainsi qu’aux multiples prises de vues, par contre un des majeur probl`eme de ces
moments, est que ces derniers sont sensibles `a la rotation.
En examinant les r´esultats obtenus en appliquant les moments de Tchebychev sur diff´erents
angles de rotation (quatre axes principaux) pour le mˆeme objet, nous avons remarqu´e une
certaine relation dans les nombres (moments) obtenues.
43
Figure 2.17 – L’effet de la rotation sur les descripteurs `a diff´erents ordres.
Nous avons observ´e les points suivants :
­ Nous avons un objet, nous lui appliquons les moments de Tchebychev, ce qui a pour
r´esultat de nous donner un vecteur avec un certain nombre de valeurs, lorsque l’objet
connait une rotation de 180 degr´es, nous avons remarqu´e que les valeurs du vecteur cit´e
sont multipli´ees par −1,
­ Nous avons un objet, nous lui appliquons les moments de Tchebychev, nous obtenons
alors un vecteur avec un certain nombre de valeurs, lorsque l’objet connait une rotation
de 90 degr´es et que l’on applique de nouveau les moments de Tchebychev, nous obte-
nons un vecteur de valeurs. En apparence ces valeurs semble al´eatoires mais en fait elles
ne le sont pas. Nous avons r´eussit `a trouver une r`egle g´en´erale, un algorithme capable
de d´eterminer le signe de chaque valeur du descripteur.
Nous avons remarquer la chose suivante :
L’ordre P intervient dans le changement du signe du vecteur, si P est paire, les valeurs
du vecteur sont les mˆemes, par contre si P est impaire, il y a changement de signe du
vecteur, ce dernier est multipli´e par -1, de plus l’image miroir du vecteur est cr´ee.
Nous avons ´elaborer une formule qui permet de d´efinir cette relation math´ematique.
cette formule est la suivante :
44
La formule (1)
devient alors :
Donn´ees : I image.
R´esultat : d1, d2 ,d3, d4 : Descripteurs des quatre axes de rotation respectivement 0,
90, 180,270 degr´es
Debut
/* Calcul des moments ainsi que les moments avec rotation de 90 degr´es
*/
/* Ordre P+Q */
si P est paire alors
/* m^eme signe de la valeur */
d2[i]= d1[i]
fin
sinon
/* changer le signe */
d2[i]= (-1) * d1[i]
fin
d2= image miroir de d2
/* calcul des descripteurs aux rotations 180 et 270 degr´es
respectivement. */
d3= (-1)* d1
d4= (-1)* d2
Fin
Algorithme 7: Algorithme de la rotation 1-Chebychev.
45
Cette nouvelle formule permet d’obtenir les descripteurs d’un objet lorsque celui ci est
soumis `a une rotation β avec β appartenant `a (90, 180, 270) degr´es.
De cette mani`ere l’utilisation d’un seul quadrant dans le cercle trigonom´etrique nous
suffira pour trouver le descripteur de l’objet pour tous les angles. Puisque l’on peut obtenir
les descripteurs des rotations sur les quatre axes principaux et ce pour n’importe quel angle.
Figure 2.18 – Influence de l’ordre et la rotation sur le calcul des moments.
2.2.3 Reconnaissance
Les moments de Tchebychev calcul´es pr´ec´edemment ainsi que la classe de chaque objet
forment un ensemble d’apprentissage (xi, yi) i = 1..M ou chaque yi appartient `a 1..N si nous
avons N classes diff´erentes. Notre objectif est de construire une fonction f(x) qui estime
les d´ependances entre les exemples xi et les classes yi et qui minimise le risque d’erreur de
classification pour un point x donn´e n’appartenant pas `a la base d’apprentissage.
A l’origine, les SVM ont ´et´e con¸cus essentiellement pour les probl`emes `a 2 classes, o`u la
sortie ne peut avoir que deux valeurs 0 ou 1.
Cette approche a ´et´e modifi´e pour g´erer les tˆaches multi-classes adapt´es `a notre probl`eme
de reconnaissance d’objets. Plusieurs approches permettant d’´etendre cet algorithme aux cas
`a N classes ont ´et´e propos´ees. La m´ethode que nous utilisons dans cette approche, est une
m´ethode dite ”un contre tous” (r´ef).
L’id´ee est donc de construire une fonction qui, en ayant de nouvelles donn´ees, pr´edira
correctement la classe `a laquelle la nouvelle entr´ee appartient. Cela peut ˆetre r´ealis´e en
d´ecomposant le probl`eme de classification multi-classes en de multiples probl`emes de classi-
fication binaires, et puis d’utiliser le principe de vote majoritaire pour pr´edire l’´etiquette (la
sortie).
Le processus est de r´esoudre K diff´erents probl`emes binaires : classifier la ”classe k” contre
46
”le reste des classes” pour k = 1, . . . , K. Tel que K est le nombre d’objets pr´esents dans notre
classe, ainsi chaque classifieur binaire probabiliste not´e Ci permet de donner une probabilit´e
d’appartenance de l’objet de test `a la classe i.
Puis d’attribuer un ´echantillon de test pour la classe qui donne la plus grande valeur
fk(x), ou fk(x) est la solution du k `eme probl`eme.
Critiques Notre m´ethode malgr´e les avantages qu’elle pr´esente et sa robustesse aux va-
riations des objets ( rotation, occlusion, ´echelle), notre m´ethode trouve ses limites avec des
images de sc`enes r´eelles. cela est du aux r´esultats de la segmentation en effet la segmenta-
tions peut ˆetre difficiles dans des sc`enes r´eelles car il est difficile d’extraire et de distinguer
les objets dans ces images.
La figure suivante montre un exemple de segmentation d’une sc`ene r´eelle.
Figure 2.19 – R´esultat de segmentation dans une sc`ene r´eelle. Gauche : Image de la sc`ene.
Droite : Image segment´ee, mˆeme si nous arrivons `a extraire les objets du fond, nous ne
pouvons les distinguer.
2.3 Approche Couleur
Dans l’approche pr´ec´edente la localisation ´etait bas´e sur la segmentation. H´elas les m´ethodes
de segmentations les plus ´elabor´ees ne permettent pas de segmenter des sc`enes complexes.
Nous proposons une autre approche pour la d´etection et la reconnaissance d’objets. Celle ci
est diff´erente de la premi`ere, elle est bas´ee sur la description des objets `a l’aide de l’informa-
tion couleur. Nous d´etaillons dans la suite de ce chapitre le syst`eme de reconnaissance con¸cu,
la figure suivante illustre le syst`eme de reconnaissance.
47
Figure 2.20 – Syst`eme de Reconnaissance de la seconde m´ethode.
2.3.1 Repr´esentation des objets
La repr´esentation d’objets est bas´ee sur l’utilisation de la distributions des couleurs de
l’objet, les couleur associ´es `a un objet sp´ecifique sont uniques. Un fruit, un arbre, un panneaux
routier, une chaise ... etc. Chacun de ces objets `a une certaine distribution des couleurs qui
lui est associ´e. L’opacit´e des objets peut ˆetre aussi une caract´eristique discriminative pour
une instance donn´ee d’un objet. Nous avons d´ecrit un objet `a l’aide des composantes RGBα,
ou alpha est l’information d’opacit´e. le processus du calcul du descripteur est d´ecrit comme
suit :
Normalisation
La normalisation est une ´etape essentielle, les couleurs peuvent varier, le moindre chan-
gement de couleur change donc la d´efinition du descripteur. Pour cela nous proposons la
formule suivante pour normaliser les couleurs.
E(Cx/D) ∗ D + D/2
E d´esigne la partie enti`ere, D repr´esente la quantification utilis´ee, elle d´esigne la limitation
du nombre de couleurs diff´erentes que peu prendre une couleur. cette normalisation permet
`a diff´erentes plages de valeurs d’avoir la mˆeme composante couleur. il s’agit de r´eduire le
nombre de couleur possible.
Signature
Une fois les couleurs extraites, nous proc´edons au calcul des fr´equences d’apparition de
celles ci, non pas de la mani`ere d’un histogramme car la structure d’un dictionnaire est
diff´erentes de celle d’un histogramme et permet de d´efinir autrement les occurrences des
48
couleurs. Le dictionnaire est stock´e sous forme de table de hachage ceci permet l’acc`es directe
aux donn´ees (complexit´e o(1)).
2.3.2 Construction du mod`ele
Cette ´etape permet de construire un mod`ele `a partie d’une base d’image nous calculons
uns signature pour chaque objet de la base de la mani`ere suivante :
Donn´ees : Bg :Image de fond. Fg :Image de la base avec objet.
R´esultat : d3 :Descripteur de l’objet.
Debut
1. Cr´eer les signatures des deux images Fg et Bg, d1 et d2 d´esigne dans l’ordre les
descripteur de Fg et Bg.
pour tout entr´ee C dans d2 faire
si C n’existe pas dans d1 alors
Ajouter C `a d3 avec freq(C)
fin
sinon
/* si la couleur existe v´erifier si fr´equence est sup´erieur `a un
certain seuil. */
si freq(C) dans d2 est >= `a seuil*freq(C) d1 alors
Ajouter C `a d3 avec freq(C)
fin
fin
fin
Fin
Algorithme 8: Algorithme de la premi`ere m´ethode.
Une fois notre mod`ele construit, nous pouvons proc´eder `a la reconnaissance la d´emarche est
diff´erentes de la premi`ere approche ( 1-Chebychev) nous cherchons a reconnaitre les objets du
mod`ele de plus nous n’utilisons pas les techniques d’apprentissage automatique. Il s’agit de
reconnaitre les instances d’objets et non des cat´egories d’objets. Cela dit si le mod`ele contient
assez d’exemples d’instances nous pourrions consid´erer un ensemble d’instances portant le
mˆeme label (la mˆeme cat´egorie) comme formant un sous ensemble d’une cat´egorie.
Dans l’absolue ceci ne mod´elise pas r´eellement la cat´egorie, mais en pratique cela semble
int´eressant et compl´ementaire. la dualit´e entre instances et cat´egories pourrait ˆetre d´epass´ee.
En effet des m´ethodes d’aujourd’hui ne s’int´eresse qu’`a trouver une cat´egorie bien particuli`ere,
exemple : voiture, pi´etons, visages. Et dans le cas des instances les syst`emes ne reconnaissent
qu’un objet particulier `a un instant donn´ee. Nous pr´esentons une forme interm´ediaire aux
deux aspects de la reconnaissance (instance et cat´egorie).
Un autre point important est que cette mani`ere de proc´eder ´elimine le probl`eme de la va-
riabilit´e intercalasse ainsi que le probl`eme de similarit´e interclasse. Le fait d’ˆetre aussi pr´ecis
dans la description d’un instance d’objet ´elimine ces probl`emes par exemple : deux objets ap-
partenant `a la mˆeme cat´egorie pourtant diff´erents obtiennent des descripteurs diff´erents, mais
49
puisqu’ils porte le mˆeme label donc les objets seront retrouv´es, et inversement si deux objets
n’appartiennent pas `a la mˆeme cat´egories peuvent ˆetre similaire et avoir des descripteurs
proches nous pouvons tout de mˆeme les distingu´es.
2.3.3 Appariement
Une fois mod`ele construit nous devons faire la correspondance entre les objets d’une sc`ene
et le mod`ele . Nous expliquons dans ce qui suit notre d´emarche quant au Matching.
Ayant une nouvelle image d’une sc`ene nous proc´edons tout d’abord au calcul de sa si-
gnature de la mˆeme mani`ere d´ecrite pr´ec´edemment. Donc nous calculons les fr´equences des
couleurs normalis´ee de toute la sc`ene, nous obtenons alors un dictionnaire des couleurs de la
sc`ene.
Donn´ees : I :Image de la sc`ene.
R´esultat : L :liste d’objets pr´esents dans la sc`ene.
Debut
Cmp : compteur /* afin de calculer le pourcentage de valeurs existantes.
*/
1. Cr´eer ds la signature de I. /* Charger le fichier descripteur de la base. */
pour tout descripteur d faire
pour tout entr´ee C dans d faire
si C existe dans ds alors
Cmp=Cmp+1 /* incr´ementer */
fin
fin
si Cmp / taille d > seuil alors
L< −− Label(d)
fin
fin
Fin
Algorithme 9: Algorithme de Matching.
2.3.4 Localisation des objets
La localisation des objets est appliqu´ee par la m´ethode des fenˆetres glissante, cette
m´ethode consiste `a parcourir l’image avec une fenˆetre rectangulaire balayant ainsi toute
l’image. La signature de chaque fenˆetre est alors calcul´ee pour d´eterminer la pr´esence des
objets reconnus.
50
Tel qu’est d´efinit notre descripteur, la d´etection et reconnaissances d’objets pr´esente les
avantages suivants :
• Il est robuste `a la rotation, aux changement de point de vue, ainsi qu’aux changement
d’´echelle. Notre syst`eme permet la d´etection d’objet partiellement occult´es ceci est
rendu possible grˆace au seuil utilis´e pour la matching (voir section pr´ec´edente).
• un autre avantage est la rapidit´e du calcul des descripteurs ainsi que la rapidit´e dans
la phase de Mathcing.
La m´ethode cependant rencontre les inconv´enients que nous ´enum´erons comme suit :
• Morphologie : la couleur `a elle seule ne permet pas de retrouver l’objet il est possible
que les couleurs d’un objet se trouve dans la sc`ene alors que l’objet n’y est pas pr´esent,
il faut donc d´efinir une relation spatiales entre les points des objets.
• La localisation des objets avec la m´ethodes des fenˆetres glissantes est couteuse en temps
de calcul.
Nous proposons une am´elioration afin de pallier `a ces probl`emes en int´egrant l’information
spatiales de l’objet. Cette fois ci nous modifions les descripteurs en ajoutant les informations
suivantes :
Nous calculons d’abord le centre de l’image d’apprentissage, puis nous calculons certaines
caract´eristiques de ce centre, ces caract´eristiques sont la couleur et le gradient. Le centre de
l’image d’apprentissage ne repr´esente pas le centre de l’objet mais un point de l’objet.
Le gradient test calcul´e avec le masque suivant :
De plus nous choisissons 8 points,que nous deffinissons comme suit : Nous avons choisis 4
points du contours qui co¨ıncide avec les deux axes de l’image horizontal est vertical passant
par le centre O nous les notons A, B, C, D (list´ee en rouge dans la figure 2.21).
51
Figure 2.21 – Repr´esentation d’un objet en prenant en compte l’information spatiales de
points d´efinis.
Ainsi que les points `a mis distance les long des deux axes a, b, c, d , `a ces points nous
calculons les distances par rapport au centre O ainsi que leurs couleurs nous calculons aussi
un histogramme des normes de gradient des points a, b, c, d le descripteur devient alors :
2.3.5 Localisation
Une fois objet reconnu (pr´esent) dans la sc`ene nous proc´edons `a la localisation de la
mani`ere suivante :
• Chercher tous les points de l’image ayant les mˆemes caract´eristiques (couleur, gradient)
que le centre O.
Figure 2.22 – calcul des points candidats.
52
• Pour d´eterminer les bonnes postions nous utilisant le points suppl´ementaires, ensuite
nous essayons de faire une superposition des 2 axes ( mod`ele de l’objet en constella-
tion ) sur chacun des points candidats extraits pr´ec´edemment toujours en faisant un
appariement en comparent les caract´eristiques calcul´ees pr´ec´edemment.
Figure 2.23 – 2 Superposition des deux axes sur les diff´erents centres possibles, une seule
superposition est correcte.
Il faut n´eanmoins r´egler encore les probl`emes li´es `a l’´echelle ainsi qu’`a la rotation.
L’´echelle : Nous avons proc´ed´e `a une normalisation du vecteur des distances, en multipliant
le vecteur distance par un facteur multiplicatif.
La rotation : Pour r´egler le probl`eme de la rotation, nous avons appliqu´e une rotation au
vecteur des distances car la relation d’ordre entre les points est pr´eserv´ee lors de la rotation.
Ceci pour les quartes angles principaux.
Cette localisation est appliqu´ee `a tous les objets reconnus au pr´ealable. Ce qui la rend
nettement plus rapide, compar´ee `a la m´ethode des fenˆetres glissantes.
2.3.6 Avantages
Le principale avantage de cette approche est la rapidit´e pour des sc`enes complexes et des
images `a haute r´esolution la r´eponse est quasiment instantan´ee.
La localisation des objets est efficace et pr´ecise, ceci revient et ceci sans utiliser de segmen-
tation.
L’approche est robuste aux changement d’´echelle, rotation, ainsi qu’`a l’occlusion.
53
2.4 Conclusion
Dans ce Chapitre, nous avons pr´esent´e en d´etails nos deux approches de d´etection et
reconnaissance d’objets. Le troisi`eme et dernier chapitre sera consacr´e `a la pr´esentation des
r´esultats obtenus qui seront soumis aux crit`eres de temps d’ex´ecution et celui de la pr´ecision
pour valider nos approches.
54
Chapitre 3
Impl´ementation
Sommaire
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.2 Environnement de travail . . . . . . . . . . . . . . . . . . . . . . . . 56
3.2.1 Environnement logiciel . . . . . . . . . . . . . . . . . . . . . . . . 56
3.2.2 Environnement mat´eriel . . . . . . . . . . . . . . . . . . . . . . . . 56
3.3 Pr´esentation de la base d’apprentissage . . . . . . . . . . . . . . 57
3.3.1 Base de donn´ees COIL-100 . . . . . . . . . . . . . . . . . . . . . . 57
3.3.2 Base de donn´ees ETH-80 . . . . . . . . . . . . . . . . . . . . . . . 58
3.3.3 Acquisition des deux bases . . . . . . . . . . . . . . . . . . . . . . 59
3.4 Pr´esentation de l’interface graphique . . . . . . . . . . . . . . . . 59
3.4.1 Premi`ere Approche . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.4.2 Deuxi`eme approche . . . . . . . . . . . . . . . . . . . . . . . . . . 63
3.4.3 Troisi`eme approche . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
3.5 Apprentissage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
3.5.1 Choix de la fonction du noyau . . . . . . . . . . . . . . . . . . . . 68
3.5.2 Principe de l’apprentissage . . . . . . . . . . . . . . . . . . . . . . 70
3.6 Exp´erimentations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
3.6.1 Matrice de confusion . . . . . . . . . . . . . . . . . . . . . . . . . . 73
3.6.2 Fonction d’efficacit´e du r´ecepteur ROC . . . . . . . . . . . . . . . 74
3.6.3 Taux de la reconnaissance des deux bases . . . . . . . . . . . . . . 75
3.6.4 Rappel et pr´ecision . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
3.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
55
3.1 Introduction
Dans ce chapitre, nous allons tout d’abord d´ecrire l’environnement mat´eriel et logiciel de
notre application, nous enchaˆınerons par la suite avec la pr´esentation d´etaill´ee de l’interface
d´evelopp´ee et son fonctionnement, enfin nous terminerons par pr´esenter les r´esultats obtenus
par les tests exp´erimentaux effectu´es.
3.2 Environnement de travail
La structure de l’environnement de d´eveloppement de notre application est structur´ee
comme suit :
3.2.1 Environnement logiciel
Nous avons d´evelopp´e notre application `a l’aide des langages de programmations .NET,
dont nous citons :
• C# : qui est un langage orient´e objet de type s´ecuris´e et ´el´egant qui permet aux
d´eveloppeurs de g´en´erer diverses applications fiables qui s’ex´ecutent sur le .NET Fra-
mework.
• Visual basic : con¸cu par Microsoft `a la fin des ann´ees 1990 [31], le Visual basic est
un des langages de programmation les tr`es utilis´es dans le monde. Les programmes
bien r´edig´es en Visual basic sont rapides et efficaces. Plus flexible, ce langage permet
l’utilisation d’une large gamme d’application scientifique de hautes performances.
Nous avons opt´e pour l’utilisation de ces deux langages car ils s’adaptent tr`es bien au
domaine de traitement d’image.
Nous avons choisi la biblioth`eque EMGU CV comme ´etant la biblioth`eque graphique sur
laquelle nous appliquons nos diff´erents traitements d’images. EMGU est une biblioth`eque
libre sp´ecialis´e dans le domaine de l’imagerie num´erique et le syst`eme de vision par ordina-
teur dans un environnement .NET.
Pour la conception de notre application et son interface graphique, nous avons utilis´e Visuel
studio 2012 version ´etudiant, qui fournit un ´editeur de code avanc´e, des concepteurs d’inter-
faces utilisateur pratiques, un d´eboguer int´egr´e et de nombreux autres outils pour faciliter le
d´eveloppement d’applications bas´ees sur le langage.NET Framework.
3.2.2 Environnement mat´eriel
Nous avons d´evelopp´e notre application sur deux machines qui ont pratiquement les
mˆemes configurations suivantes :
• Microprocesseur Intel Core i7 de fr´equence 2.4 de 4`eme g´en´eration ;
• M´emoire vive RAM 8 Gb ;
• Microsoft Windows 7 version 64 bits.
56
3.3 Pr´esentation de la base d’apprentissage
L’objectif de notre travail est de proposer une nouvelle approche pour la d´etection d’objets
dans une sc`ene. Pour pouvoir r´ealiser cela, il nous a fallu r´ecolter des bases d’images portant
sur le sujet.
Dans cette section, nous d´ecrivons les caract´eristiques des bases de donn´ees utilis´ees ainsi nous
allons pr´esenter quelques exp´eriences dans lesquelles la performance de plusieurs m´ethodes
sont compar´ees et discuter les r´esultats empiriques obtenus.
3.3.1 Base de donn´ees COIL-100
La base de donn´ees sur laquelle nous avons appliqu´e l’algorithme d’apprentissage est
Columbia Object Image Library (COIL) , [32] . Cette base contient 7200 images en couleurs
de 100 objets diff´erents (72 images par objet), o`u les images des objets ont ´et´e prises `a des
intervalles de pose de 5 degr´es. Les images ont aussi ´et´e normalis´ees tel qui le plus grand des
deux dimensions de l’objet (hauteur et largeur) soit ´egale `a 128 x 128 pixels. Les objets ont
une grande vari´et´e de g´eom´etrie complexe et de caract´eristiques diff´erents, la figure ci-dessous
montre les 100 objets de la base prises en vue frontale.
Figure 3.1 – Objets de la base de donn´ees Columbia Object Image Library.
57
3.3.2 Base de donn´ees ETH-80
La base d’images ETH-80 [33] Zurich contient un ensemble d’objets naturels et artificiels
organis´es en huit cat´egories qui sont respectivement : Pomme, tomate, chien, cheval, vache,
voitures, poire et verre. Pour chaque cat´egorie d’objets, dix objets diff´erents sont fournis, o`u
chaque objet est repr´esent´e par 41 images diff´erentes qui sont prises par un multiple point
de vus diff´erents. Cela r´esulte un ensemble de 3280 images.
Figure 3.2 – Objets de la base de donn´ees ETH-80.
58
3.3.3 Acquisition des deux bases
• COIL-100 : Chaque objet a ´et´e plac´e dans une configuration stable `a peu pr`es au centre
d’une plaque tournante, La table tournante a ´et´e tourn´e de 360 degr´es et 72 images ont
´et´e prises par objet (une image chaque 5 d´egr´ees de la rotation).
• ETH-80 : De mˆeme pour cette base d’images, o`u chaque objet a ´et´e plac´e dans une
table tournante, avec l’exception de l’utilisation de plusieurs cam´eras chacune d’elles
prend d’autres images diff´erentes de l’objet.
Figure 3.3 – Acquisition de la base COIL-100.
3.4 Pr´esentation de l’interface graphique
L’application qui permet d’effectuer les diff´erentes tˆaches de la d´etection d’objets est
con¸cue de telle mani`ere `a faciliter l’interaction avec l’utilisateur. Nous avons d´evelopp´e deux
approches dont l’interface et son explication sont pr´esent´ees dans ce qui suit :
3.4.1 Premi`ere Approche
D´etection et reconnaissance d’objets en utilisant les moments de Chebyshev.
• Interface d’accueil
59
Figure 3.4 – Interface d’accueil l’application.
L’interface principale est devis´ee en trois parties, de gauche `a droite nous remarquons
l’ensemble des boutons permettant l’interaction avec l’application ainsi que ses diff´erentes
fonctionnalit´es que nous allons expliquer ult´erieurement. Ensuite, nous affichons les traces
de l’ex´ecution pour donner plus de d´etails sur le processus ainsi que les diff´erent temps de
calculs. La troisi`eme partie permet de visualiser les r´esultats de la d´etection, la segmentation
et la reconnaissance des objets de l’image de la sc`ene.
Avant de commencer, nous devons tout d’abord choisir l’une des bases, COIL-100 ou ETH-
80.
Figure 3.5 – Choix d’une base de donn´ees.
En cliquant sur le bouton ‘Parcourir l’image’, une fenˆetre s’affiche pour choisir l’image de
la sc`ene.
60
Figure 3.6 – Choix de l’image de la sc`ene.
Une fois l’image est charg´ee, on l’affiche dans notre interface comme illustr´ee par la figure
ci-dessous, ainsi on peut commencer le traitement.
Figure 3.7 – Affichage de l’image de la sc`ene
61
La tˆache de la d´etection d’objets est bas´e sur trois ´etapes indispensable : la cr´eation du
descripteur de l’image, la segmentation, la reconnaissance.
Segmentation
Nous commen¸cons par la segmentation en utilisant notre m´ethode de segmentation am´elior´ee
(voir le chapitre II pour plus d’informations), en cliquant sur le bouton Segmentation ,
le r´esultat de la segmentation est affich´e comme suit :
Figure 3.8 – Segmentation de l’image.
Reconnaissance
La prochaine ´etape est la reconnaissance des objets dans la sc`ene apr`es sa segmentation,
Cette ´etape se d´eroule en trois parties qui sont :
• Extraction des objets de la sc`ene ;
• Calcul des descripteurs de chaque objet `a l’aide des moments de Chebyshev ;
• Introduire les descripteurs comme entr´ee dans la fonction de reconnaissance ;
• Phase de reconnaissance des objets qui est fait apr`es l’apprentissage des bases (voir la
deuxi`eme partie de ce chapitre pour plus d’informations sur le processus d’apprentis-
sage).
62
En cliquant sur le bouton Reconnaissance le processus de la reconnaissance des objets
trouv´es commence, en affichant les traces de traitement portant sur le temps de calcul ainsi
que les diff´erents objets reconnus. Chaque objet sera libell´e par une ´etiquette portant la
cat´egorie et le nom de l’objet comme il est montr´e dans la figure suivante :
Figure 3.9 – Reconnaissance d’objets.
3.4.2 Deuxi`eme approche
Reconnaissance et localisation d’objets bas´es sur le descripteur des couleurs `a quatre
dimensions en introduisant l’information de la transparence RGBA :
• Interface d’accueil
63
Figure 3.10 – Interface d’accueil de la deuxi`eme approche
L’interface de la deuxi`eme approche d´evelopp´ee comporte deux parties, la premi`ere est
Apprentissage permet de faire apprendre un ou plusieurs objets `a notre application,
Cette ´etape peut ˆetre r´ealis´ee hors ligne une seule fois en sauvegardant tout objets
possibles. L’apprentissage est r´ealis´e en fournissant l’image de l’objet, et l’image de fond.
Le descripteur est ensuite calcul´e en faisant une soustraction entre les deux signatures des
deux images, qui sera ensuite sauvegard´ee sous le format d’un fichier XML en cliquant sur le
boutant sauvegarder .
Figure 3.11 – Apprentissage d’un objet avec la deuxi`eme m´ethode
64
La deuxi`eme partie de l’application, concerne la localisation et la reconnaissance d’objets,
l’utilisateur doit d’abord choisir l’image de la sc`ene, et en cliquant sur le bouton analyser
le processus de la reconnaissance commence. Aucune m´ethode de segmentation n’est utilis´ee
dans cette approche, la d´etection des objets se d´eroule en deux ´etapes (voir le chapitre deux
pour plus d’informations) qui sont :
• V´erifier si un objet parmi les objets sauvegard´es dans la premi`ere ´etape est pr´esent dans
l’image, en comparant le descripteur de chaque objet avec le descripteur de l’image de
la sc`ene ;
• Localiser les objets qui sont jug´es pr´esent dans l’image de la sc`ene.
Figure 3.12 – Reconnaissance des objets avec la deuxi`eme m´ethode
65
Nous affichons par la suite les objets trouv´ees, ainsi que leurs positions dans l’image de
la sc`ene.
3.4.3 Troisi`eme approche
D´etection et localisations d’objets bas´e sur l’extraction de caract´eristiques visuelles des
images des descripteurs locaux bas´es sur des points d’int´erˆet de l’image (SURF).
• Interface d’accueil
Figure 3.13 – l’interface d’accueil de la troisi`eme approche.
L’interface principale propose de choisir entre deux m´ethodes de d´etections, l’utilisateur
doit par la suite choisir entre les deux m´ethodes hors ligne, ou en ligne. Ces derni`eres fonc-
tionnent de la mˆeme mani`ere concernant l’extraction des points d’int´erˆet :
Figure 3.14 – Le choix entre les deux m´ethodes de SURF
66
La m´ethode hors ligne
L’utilisateur doit fournir une image de la sc`ene, et une image de l’objet `a localiser.
Figure 3.15 – choix de l’image de la sc`ene et de l’objet `a trouver.
L’utilisateur peut ensuite choisir d’afficher ou pas, les points d’int´erˆets des deux images,
ainsi que les lignes de correspondances, et puis de lancer le processus de d´etection en cliquant
sur le bouton Analyser . Le r´esultat est affich´e en cadrant l’objet trouv´e dans la sc`ene
comme suit :
Figure 3.16 – R´esultat de la d´etection hors ligne.
La m´ethode en ligne
Contrairement `a la premi`ere m´ethode, cette approche permet de localiser et traquer l’objet
`a l’aide d’un capteur, dans notre cas c’est la webcam.
L’utilisateur doit rapprocher l’objet vers la cam´era et puis de cliquer sur le bouton Scanner
67
pour commencer la phase d’apprentissage, commencer le processus de la d´etection et le
suivie de l’objet se d´eclenchera alors instantan´ement.
Figure 3.17 – R´esultat de la d´etection en ligne.
3.5 Apprentissage
La d´etection d’objets de diff´erentes classes dans les images pr´esente plusieurs difficult´es.
L’algorithme d’apprentissage doit pouvoir traiter des donn´ees avec des variations inter et
intra-classe. De plus, le temps d’ex´ecution ne doit pas croitre de mani`ere exponentielle avec
le nombre de classes.
Afin d’aboutir `a ce but, nous avons opt´e pour l’utilisation des machines `a vecteurs supports
SVM comme classifieurs.
Nous commencerons la description des r´esultats par la mesure de la pr´ecision de la m´ethode
de classification mise au point dans le cadre de ce travail de fin d’´etudes. Pour effectuer cette
mesure, les Multi-SVMs sont utilis´ees.
3.5.1 Choix de la fonction du noyau
La fonction du noyau permet une transformation de donn´ees de l’espace d’origine vers
l’espace caract´eristique de telle fa¸con que les donn´ees initiales qui sont non lin´eairement
s´eparables (on ne peut pas tracer une ligne s´eparatrice entre les diff´erentes classes) deviennent
s´eparables lin´eairement.
Le choix de la fonction du noyau (kernel) est essentielle dans la phase d’apprentissage
afin d’obtenir des bons r´esultats. Cela d´epend du probl`eme. Seule l’exp´erimentation sur les
68
diff´erentes fonctions kernel peut nous donner une id´ee sur la fonction `a utiliser pour obtenir
les meilleurs r´esultats.
Dans notre projet, nous avons impl´ement´e la m´ethode d’apprentissage Un Contre Tous avec
diff´erentes fonctions de noyau. Dans ce qui suit, nous allons montrer les diff´erents r´esultats
obtenus pour les trois choix des fonctions suivantes :
• La fonction lin´eaire : C’est l’exemple le plus simple de fonction noyau, On se ram`ene
donc au cas d’un classifieur lin´eaire, sans changement d’espace. L’approche par Kernel
trick g´en´eralise ainsi l’approche lin´eaire. Le noyau lin´eaire est parfois employ´e pour
´evaluer la difficult´e d’un probl`eme.
La fonction de noyau est d´efini par :
• Le noyau polynomial : Lea fonction de noyau est d´efini par :
• Le noyau gaussien : Cette formulation est ´equivalente aux r´eseaux de neurones `a bases
radiales avec l’avantage suppl´ementaire que les centres des fonctions `a base radiale (qui
sont les vecteurs supports) sont optimis´es :
La fonction de noyau est d´efini par :
Figure 3.18 – Comparaison entre les fonctions de noyau.
69
Nous remarquons que nous obtiendrons les meilleurs r´esultats avec la fonction de noyaux
Polynomiale, avec un taux de reconnaissance ´egale `a 98.75% `a l’ordre 8 de Chebyshev, contre
94% avec la fonction Gaussien, et 74% avec la fonction lin´eaire. Ces r´esultats peuvent ˆetre
expliqu´es par le fait que les instances de nos donn´ees obtenues par l’application de la fonction
de Chebyshev ne sont pas lin´eairement s´eparables. D’o`u nous avons opt´e pour l’utilisation
de la fonction polynomiale.
3.5.2 Principe de l’apprentissage
Le principe de ces exp´eriences est d’appliquer une technique de validation crois´ee, avec
laquelle on estime la performance du syst`eme en la mesurant sur des exemples n’ayant pas
´et´e utilis´es en cours d’apprentissage :
On commence par deviser notre base de donn´ees d’images en trois parties, la premi`ere nomm´ee
base d’apprentissage contient 75% de l’ensemble de donn´ees, une partie validation contient
10% et la partie des tests contient 15%.
Le processus d’apprentissage est r´ep´et´e pour chacune des images de la base de donn´ees, c’est-
`a-dire 6000 fois pour COIL-100 et 2400 fois pour ETH80. A la fin de cette ´etape, on obtient
une mesure de pr´ecision correspondant au rapport entre le nombre de classifications correctes
et le nombre total de classifications (correctes et erron´ees).
70
3.6 Exp´erimentations
Les r´esultats de ces exp´eriences sont d’abord pr´esent´es sous leur forme brute ci-dessous
puis ils seront discut´es.
Repr´esentation de l’objet avec les moments de Chebyshev
Dans la figure ci-dessous, nous montrons une comparaison entre l’objet r´eel, et l’objet
construit en utilisant la fonction de reconstruction appliqu´e sur la m´ethode de calcul classique
des moments de Chebyshev, et notre m´ethode de calcul am´elior´ee des moments de Chebyshev.
Figure 3.19 – Comparaison des m´ethodes : (a) l’image original en RGB ; (b) l’image ori-
ginal appliqu´e avec Canny ; (c) l’image reconstruite par la m´ethode classique ;(d) l’image
reconstruite par notre m´ethode.
Nous remarquons que l’image reconstruite par notre m´ethode manque un peu de d´etails
qui sont difficiles `a remarquer en la comparant avec l’image reconstruite par la m´ethode clas-
sique, mais elle permet de donner une repr´esentation parfaite de la forme globale de l’objet
tout en r´eduisant le temps de calcul d’une mani`ere remarquable.
Dans ce qui suit, nous montrons un sch´ema comparatif entre les temps d’ex´ecution de la
m´ethode classique, notre am´elioration tout en utilisant l’image en niveau de gris (NVG c’est-
`a-dire toute l’image), et notre am´elioration en utilisant uniquement les contours de l’objet
pour un ordre donn´e.
71
Figure 3.20 – Etude comparative sur les temps d’ex´ecution et l’apprentissage.
Le principal inconv´enient du descripteur Chebyshev classique est qu’il est couteux en temps
d’ex´ecution. Un des atouts du notre descripteur Chebyshev am´elior´e est justement cette ca-
pacit´e `a ˆetre calcul´e tr`es rapidement grˆace `a l’utilisation des contours et de notre m´ethode
de calcul de l’ordre de moment (appliquer le calcul de Chebyshev seulement aux pixels qui
ont la valeur diff´erente de 0 - voir le chapitre pr´ec´edent) tout en gardant un bon taux d’ap-
prentissage.
Dans ce qui suit nous allons mettre en ´evidence l’efficacit´e de notre repr´esentation d’ob-
jets en construisant un descripteur bas´e sur les moments de Chebyshev (premi`ere approche)
en pr´esentant un graphe de comparaison entre la m´ethode de reconnaissance d’objet bas´e sur
Chebyshev seulement, et les deux m´ethodes en ajoutant comme information importante la
couleur dans les deux espaces RGB et HSV au descripteur. La fonction de noyau d’appren-
tissage utilis´ee est la fonction Polynomiale.
72
Figure 3.21 – Etude comparative sur la pr´ecision de la reconnaissance avec et sans couleur.
Nous remarquons que l’ajout de l’information couleur dans l’espace RGB au descripteur de
Chebyshev am´eliore sensiblement la performance de l’apprentissage contrairement `a l’espace
HSV (Hue and Saturation Value). Nous avons donc opt´e pour l’utilisation de cette nouvelle
repr´esentation.
3.6.1 Matrice de confusion
Une erreur souvent commise par les syst`emes de reconnaissance est la confusion entre
classes. Pour ´evaluer quantitativement ces erreurs, nous utilisons les matrices de confusion.
Nous calculons la matrice de confusion qui montre le taux d’erreurs dues au confusions pour
chacune des 10 premi`eres objets, pour un nombre al´eatoire des images (193 images dans notre
cas) repr´esentant les objets. La matrice calcul´ee est la suivante :
73
3.6.2 Fonction d’efficacit´e du r´ecepteur ROC
La courbe ROC (Receiver Operating Characteristic) est un outil d’´evaluation des mod`eles
qui permet de savoir si le mod`ele est globalement significatif [34]. L’utilisation de la courbe
ROC comme un outil de mesure peut ˆetre expliqu´e par le fait que la courbe ROC est :
• Ind´ependant des matrices de coˆuts de mauvaise affectation. Il permet de savoir si un
mod`ele M1 sera toujours meilleur que M2 quelle que soit la matrice de coˆut
• Op´erationnel mˆeme dans le cas des distributions tr`es d´es´equilibr´ees. Sans les effets
pervers de la matrice de confusion li´es `a la n´ecessit´e de r´ealiser une affectation
• R´esultats valables mˆeme si l’´echantillon test n’est pas repr´esentatif. Tirage prospectif
ou tirage r´etrospectif : les indications fournies restent les mˆemes.
• Un outil graphique qui permet de visualiser les performances. Un seul coup d’œil doit
permettre de voir le(s) mod`ele(s) susceptible(s) de nous int´eresser.
En utilisant les r´esultats de la section pr´ec´edente (Matrice des confusions), nous obtien-
drons la courbe de ROC suivante pour les dix premi`eres objets de la base COIL-100 :
Figure 3.22 – Courbe ROC obtenu pour les dix objets.
74
Nous avons tracer la courbe pour chaque objet, puis calculer la surface. Les r´esultats
obtenus montrent l’efficacit´e et la robustesse de notre m´ethode de repr´esentation d’objets
bas´ee sur les moment de Chebyshev.
3.6.3 Taux de la reconnaissance des deux bases
Avec VC : Version Classique de Chebyshev, VA-NVG : Version am´elior´ee en utilisant
les images en niveau de gris, VA-CT : Version am´elior´e en utilisant les contours, VA-CT-
HSV : Version am´elior´ee en utilisant les contours et en rajoutant l’espace des couleurs HSV
comme information, VA-CT-RBG : Version am´elior´ee en utilisant les contours et en rajoutant
l’espace des couleurs RGB comme information.
Les r´esultats que nous discuterons par la suite, sont calcul´es en utilisant les moments de
Chebyshev `a l’ordre 8. La raison principale qui a men´e `a adopter les descripteurs Chebyshev
calcul´e `a cet ordre, est que non seulement le taux d’apprentissage `a atteint son maximum
`a cette ordre, pour chaque ordre inferieure `a l’ordre 10, mais aussi car le temps de calcul
des moments commence `a augmenter `a partir de l’ordre 9 d’une mani`ere remarquable (voir
graphe 18), ce qui nous int´eresse pas car nous visons la notion de temps r´eel.
Le graphe ci-dessous permet de bien repr´esenter la diff´erence entre la pr´ecision de recon-
naissance entre les diff´erentes m´ethodes de calcul des moments de Chebyshev `a l’ordre 8.
75
Figure 3.23 – Etude comparative sur la pr´ecision de la reconnaissance avec les diff´erentes
m´ethodes de calcul.
Nous remarquons que le taux de reconnaissance sur la base ETH-80 a un peu augment´e en
le comparant `a la base COIL-100 (voir tableau 1 et 2 ci-dessus), ceci peut ˆetre expliqu´e par
le fait que la base ETH-80 ne contient pas une diversit´e de cat´egories (8 classes seulement)
mais une vari´et´e inter-cat´egories (plusieurs objets par classe). Par contre, la base COIL-100
contient 100 objets de cat´egories diff´erentes.
La pr´ecision de notre m´ethode d´evelopp´ee sur la base du descripteur Chebyshev est com-
parable aux meilleures m´ethodes d´ecrites dans l’´etat de l’art. Par exemple, C. MAAOUI,
H. LAURENT et B. EMILE [20] ont obtenus un score de 71 % de pr´ecision sur la base de
donn´ees de COIL-100 pour des images en niveau de gris, et 92% de pr´ecision sur les mˆemes
images en couleurs dans l’espace RGB. Quant `a nous, nous avons obtenu une pr´ecision ´egale
`a 98.75% en utilisant notre impl´ementation am´elior´ee de Chebyshev (VA-CT-RBG), et 91%
de pr´ecision en utilisant le calcul de Chebyshev classique (VC).
Leur m´ethode est bas´ee sur un descripteur bas´e sur les moments de Zernike (plus coˆuteux `a
calculer que notre m´ethode) et utilise ´egalement l’´etiquetage des composantes connexes [20].
comparaison entre la deuxi`eme m´ethode bas´ee couleurs, et la troisi`eme m´ethode
bas´ee SURF
3.6.4 Rappel et pr´ecision
Il n’est pas facile d’estimer la qualit´e d’un syst`eme de d´etection d’objets. Une mesure
classique de l’efficacit´e du syst`eme est de mesurer la pr´ecision et le rappel des m´ethodes
impl´ement´es. Ces mesures sont issues du domaine d’´etude de la recherche d’information [35]
76
et se basent sur la notion de document pertinent par rapport `a la recherche. La pr´ecision
est d´efinie comme la proportion des documents pertinents parmi l’ensemble de ceux renvoy´es
par le syst`eme.
Toutefois, dans le cas de d´etection et la reconnaissance d’objets, la notion de document
pertinent reste tr`es subjective. Selon les perceptives, certains estimeront que deux objets
sont semblables lorsqu’elles appartiennent `a la mˆeme cat´egorie d’objets. D’autres seront plus
sensibles aux instances r´eelles de l’objet. C’est pourquoi nous avons adopt´e les deux points
de vus mentionn´es ci-dessus, pour ne pas se limiter `a nos bases de donn´ees seulement.
Si nous notons :
• Vrais positifs (VP) : Objet pr´esent dans la sc`ene, d´etecter l’objet, et le bien reconnaitre
• Vrais n´egatifs (VN) : Aucun de nos objets n’est pr´esent dans la sc`ene , et ne rien
d´etecter
• Faux positifs (FP) : Objet pr´esent dans la sc`ene, d´etecter l’objet, et le mal reconnaitre
• Faux N´egatifs (FN) : Objet pr´esent dans la sc`ene, ne rien d´etecter ne rien reconnaitre
Alors :
Le rappel (R)
Le rappel (R) du test est d´efini comme le pourcentage des objet qui sont bien d´etect´es :
La pr´ecision (P)
La pr´ecision du test est d´efinie comme le pourcentage de la non-pr´esence d’objets et qui
ne sont pas d´etect´es :
F-Mesure (F)
C’est une mesure tenant compte `a la fois du rappel et de la pr´ecision et d´esigne la moyenne
harmonique entre les deux, d´efinie par :
77
En plus de la d´etection d’objets pour un objet, nous avons voulu tester nos m´ethodes
sur des images constituent plusieurs objets n’appartenant `a aucune de nos bases utilis´ees
dans la phase d’apprentissage, nous avons construit 25 images des sc`enes r´eelles de dimen-
sions ´egale `a 500*375 pixels, dont chaque image contient un ensemble d’objets misent aux
diff´erentes transformations g´eom´etriques (rotation, changement d’´echelle, occlusion partiel...)
et `a diverses perturbations (bruit, occultation, etc.).
Notre objectif est d’effectuer une s´erie d’exp´erimentations afin d’´evaluer les performances
en utilisant plutˆot deux grandeurs appel´ees pr´ecision et rappel que les taux de classification.
La figure ci-dessous repr´esente un exemple d’une sc`ene parmi les images que nous avons
cr´eer.
Figure 3.24 – Image de sc`ene r´eelle.
Nous pr´esentons un tableau montrant le nombre d’objets bien d´etect´es et bien reconnus
dans 10 sc`enes que nous avons choisi al´eatoirement, chaque sc`ene contient exactement 4
objets diff´erents.
78
La proc´edure de d´etection suivi pour la deuxi`eme m´ethode ´etait d’essayer de d´etecter
l’ensemble d’objets de notre base une par une, Les r´esultats ainsi sont repr´esent´es dans le
sch´ema ci-dessous :
Figure 3.25 – ´etude comparative sur la pr´ecision, le rappel et F-Mesure entre la deuxi`eme
et la troisi`eme m´ethode.
En examinant les r´esultats obtenus, nous remarquons que les deux m´ethodes sont efficaces
face au transformations g´eom´etriques et perturbations (rotation, changement d’´echelle, oc-
clusion partiel...) L’efficience augment´e de la troisi`eme m´ethode par rapport `a la deuxi`eme
vient avec un coˆut qui est le temps augment´e de calcule, la figure suivante montre la diff´erence
entre les deux :
Figure 3.26 – ´etude comparative sur le temps de calcule entre la deuxi`eme et la troisi`eme
m´ethode.
79
La diff´erence entre les temps d’ex´ecutions peut ˆetre expliqu´ee par le fait d’utiliser les
tables de hachage dans la deuxi`eme m´ethode afin de r´eduire la complexit´e de calcule. La
troisi`eme m´ethode par contre utilise l’extraction des points d’int´erˆet et l’estimation de la
matrice hessienne ce qui est couteux en terme de temps de calcule.
Le tableau suivant illustre les diff´erents r´esultats de d´etection et reconnaissance sur des
images des sc`enes r´eelles avec les diff´erentes approches impl´ement´ees.
80
81
Analyse des r´esultats
Nous avons appliqu´e des transformations g´eom´etriques aux objets pr´esents dans toutes
les images de tests pr´esent´ees dans le tableau ci dessus.
Nous remarquons qu’avec notre m´ethode 1 Chebyshev on a obtenu un tr`es bon r´esultat de
d´etection et de reconnaissance de multiples objets dans une sc`ene, ¸ca confirme la robustesse
de notre m´ethode face `a la rotation, le changement d’´echelle et ¸ca capacit´e `a reconnaitre des
objets qui n’appartiennent `a aucune de nos base sur les quelles nous avons appliqu´e l’appren-
tissage ! D’un autre cot´e, ces r´esultats restent limit´e `a l’efficacit´e de la segmentation, nous
remarquons que les deux sc`ene 1 et 2 (voir tableau ci dessous) sont difficiles `a segmenter,
d’o`u les objets sont difficiles `a d´etect´es en utilisant la m´ethode 1 Chebyshev.
La deuxi`eme m´ethode permet de pallier `a ce probl`eme, en utilisant le technique de Tem-
plate Matching sans avoir besoin de passer pas la phase de segmentation, nous remarquons
que pour les sc`enes r´eelles difficiles `a segmenter cette deuxi`eme m´ethode impl´ement´ee donne
de bons r´esultats de reconnaissance d’objets.
Contrairement a la m´ethode de Chebyshev, le temps des calcule de cette approche reste
instable et varie selon le nombre d’objets appris lors de la phase d’apprentissage. Un autre
d´esavantage de cette m´ethode est sa capacit´e a d´etecter les faux positifs, mais seulement si
deux objets dans notre base ont presque la mˆeme signature.
La troisi`eme m´ethode bas´ee sur le descripteur SURF permet d’´eliminer le dernier probl`eme
de l’approche 2. Bien que la d´etection en utilisant cette m´ethode est performante, elle n’est
pas aptes a r´esoudre le probl`eme de temps de calcule, le temps de calcule de cette m´ethode
contrairement a la premi`ere approche 1 Chybyshev augmente selon le nombre d’objets a
d´etecter dans la sc`ene.
Un autre d´esavantage de la troisi`eme approche est qu’elle ne peut d´etecter qu’une seule
instance d’objet, donc pour des sc`ene ayant plusieurs instances du mˆeme objet, on ne d´etect´e
que l’instance qui a le plus de points d’int´erˆet en commun avec l’objet recherch´e.
Contrairement `a la premi`ere m´ethode, les deuxi`eme (Template Matching) et la troisi`eme
m´ethode (SURF), ne peuvent d´etecter que les instances d’objets, pas des cat´egories d’objet
ceci est due aux descripteurs qui ne sont pas assez repr´esentatifs en ce qui concerne la forme
globale d’objets.
Les trois approches d´evelopp´ees sont robustes `a la rotation, changement d’´echelle et l’oc-
clusion partiel
82
3.7 Conclusion
Nous avons pr´esent´e dans ce chapitre d’une part, les diff´erents outils qui nous ont permis
de mettre en œuvre notre application pour la d´etection d’objets, ainsi qu’une description
d´etaill´ee de nos syst`eme de d´etection et reconnaissance d’objets, avec l’´evaluation de perfor-
mance de chaque phase de processus de reconnaissance. D’autre part, nous avons expos´e les
r´esultats obtenus par les diff´erentes approches de d´etection, en termes de temps d’ex´ecution
et de taux de reconnaissance, pour donner une id´ee comparative de l’aspect pratique de nos
m´ethodes.
Nos syst`emes ont donn´e des bons r´esultats au niveau de la reconnaissance, cela montre
l’efficacit´e des m´ethodes utilis´ees pour l’extraction des primitives et les strat´egies utilis´ees
lors de la phase de la segmentation.
83
Conclusion g´en´erale
L’objectif de ce travail de fin d’´etudes est de proposer une m´ethode de repr´esentation
d’objet sous forme de descripteur afin de cr´eer un syst`eme de d´etection et de reconnaissance
d’objets.
Dans ce cadre, nous avons d´evelopp´e un nouveau descripteur de caract´eristiques ainsi
qu’une technique de segmentation d’objets, que nous avons ensuite int´egr´e dans un syst`eme
complet de d´etection et reconnaissance d’objets, utilisant les SVMs.
La premi`ere ´etape dans cette m´ethode est la segmentation de l’image afin de s´eparer les ob-
jets dans la sc`ene du fond, et pour cela nous avons d´evelopp´e trois m´ethodes de segmentation
ce qui nous a permis d’atteindre notre objectif en impl´ementant un bon algorithme.
La deuxi`eme ´etape est d’extraire les caract´eristiques des objets trouv´es. Pour ce faire,
nous avons introduit les moments de Chebyshev comme ´etant un descripteur repr´esentatif de
l’objet.Nous avons aussi apport´e des am´eliorations qui nous ont permises d’am´eliorer le taux
de pr´ecision et de r´eduire consid´erablement le temps de calcul et ainsi atteindre la notion du
temps r´eel.
Par la suite nous avons proc´ed´e `a la reconnaissance des objets en utilisant les multi-
SVMs, cette ´etape est faite en deux parties, la premi`ere est hors ligne qui s’appuie sur
l’apprentissage automatique sur les deux bases d’images utilis´ees, la deuxi`eme est en ligne
qui est la reconnaissance des objets d´etect´es.
Pour pallier aux probl`emes de la segmentation, une nouvelle approche a ´et´e impl´ement´ee
en utilisant la dispersion des couleurs dans l’espace RGBA comme information caract´erisant
l’objet. La solution ainsi d´evelopp´ee donne de bons r´esultats en terme de reconnaissance
d’objets dans des sc`enes r´eelles difficiles `a segmenter.
Afin d’avoir une id´ee sur l’efficacit´e de nos m´ethodes, nous avons impl´ement´e une troisi`eme
approche pour comparer entre les r´esultats, cette approche est bas´ee sur l’extraction des point
d’int´erˆets en utilisant SURF.
Les exp´eriences r´ealis´ees sur diff´erentes bases de donn´ees d’images ont permis de mettre
en ´evidence un gain consid´erable en pr´ecision, ainsi qu’un grand progr`es en ce qui concerne
la r´eduction du temps de traitement pour chacune des approches.
84
Bibliographie
[1] Elschlager R. Fischler M. The representation and matching of pictorial structures. IEEE
Transactions on Computers., 1973.
[2] An Exemplar Neural Mechanism : The Brain’s Visual Processing System., chapter Ch.
2. 2003.
[3] Brown R. How shall a thing be called. Psychological Review, 1958.
[4] Van Essen DC. Felleman DJ. Distributed hierarchical processing in the primate cerebral
cortex. Cerebral Cortex, 1991.
[5] Cours de Vision par Ordinateur, Master 2 SII, chapter 5. Aouat S, 2014.
[6] Motwani R. Indyk P. Approximate nearest neighbors : towards removing the curse of
dimensionalit.y. Published in : · Proceeding STOC ’98 Proceedings of the thirtieth annual
ACM symposium on Theory of computing Pages 604-613., 1998.
[7] L et al. Breiman. Classification and regression trees. Belmont, Calif. : Wadsworth.,
1984.
[8] J. R. Quinlan. Induction of decision trees. Journal Machine Learning archive Volume
1, 1986.
[9] J. R. Quinlan. C4.5 : Programs for machine learning. Morgan Kaufmann Publishers,,
1993.
[10] C Bishop. Information theory, inference, and learning algorithms. Springer,, 2006.
[11] T. Hofmann. Unsupervised learning by probabilistic latent semantic analysis. Mach.
Learn., 2001.
[12] Schapire. R. E. The strength of weak learnability. Machine Learning., 1990.
[13] Schapire. Y, Freund. et R. E. A decision-theoretic generalization of on-line learning
and an application to boosting. In Proceedings of the Second European Conference on
Computational Learning Theory,, 1995.
[14] Object Recognition in the Geometric Era : a Retrospective. Joseph L. Mundy.
[15] Biederman I. Recognition by components : A theory of human image understanding.
Psychology Review, 1987.
85
[16] Pentland A. Turk M. Face recognition using eigenfaces. CVPR, IEEE computer Sco,
1991.
[17] D Roth. S Agarwal, A Awan. Learning to detect objects in images via a sparse,part-
based representation. European Conference on Computer Vision, 2004.
[18] J Malik. R Martin, C Charless. Learning to detect natural image boundaries using
local brightness, color, and texture cues. IEEE Transactions on Pattern Analysis and
Machine Intelligence, 2004.
[19] J Fan. Y Gao. Automatic function selection for large scale salient object detection. Pro-
ceeding : MULTIMEDIA ’06 Proceedings of the 14th annual ACM international confe-
rence on Multimedia, 2006.
[20] B Emile. C Maaoui, H Laurent. Reconnaissance et d´etection robuste objects couleur.
GRETSI, Groupe d’Etudes du Traitement du Signal et des Images, 2005.
[21] Ju kim. H Lee, Ji Kim. Automatic salient object detection using pricipal component ana-
lysis. 2nd International Conference on Robot Intelligence Technology and Applications,
2014.
[22] T Lu K Chen. L Wang, Y Wu. Multiclass object detection by combining local ap-
pearances and context. Proceeding MM ’11 Proceedings of the 19th ACM international
conference on Multimedia, 2011.
[23] G Chen. C Juang. A ts fuzzy system learned through a support vector machine in prin-
cipal component space for real-time object detection. IEEE Transactions on Industrial
Electronics., 2012.
[24] S Soatto. B Fulkerson, A Vedaldi. Class segmentation and object localisation with
superpixel neighborhoods. Computer Vision, 2009 IEEE 12th International Conference.,
2009.
[25] M Jones. P Viola. Rapid object detection using a boosted cascade of simple features.
Computer Vision and Pattern Recognition, CVPR., 2001.
[26] T Hofmann. H Lampert, B Blaschko. Beyond sliding windows : Object localization by
effiecient subwindow search. Computer Vision and Pattern Recognition, CVPR., 2008.
[27] B Triggs N Dalal. Histogram of oriented gradients for human detection. Computer
Vision and Pattern Recognition, CVPR., 2005.
[28] B Schiele. B Leibe, A Leonardis. An implicit shape model for combined object cate-
gorization and segmentation. Workshop on Statistical Learning in Computer Vision,
ECCV., 2004.
[29] P Lee. R Mukundan, S Ong. Image analysis by tchebichev moments. IEEE Transactions
on image processing., 2001.
86
[30] D Dahmani. Elaboration d’un Syst`eme de Reconnaissance d’Epellation Digitale de la
Langue des Signes. PhD thesis, USTHB, 2014.
[31] MicroSoft. Visual basic. https ://msdn.microsoft.com/fr-fr/library/2x7h1hfk.aspx, 2012.
[32] Nayar. H, Murase et S. Visual learning and recognition of 3-d objects from appearance.
International Journal of Computer Vision., 1995.
[33] by Max Planck Institute for Informatics. Analyzing appearance and
contour based methods for object categorization. https ://www.mpi-
inf.mpg.de/departments/computer-vision-and-multimodal-computing/research/object-
recognition-and-scene-understanding/analyzing-appearance-and-contour-based-
methods-for-object-categorization/, 2014.
[34] Computer Vision and Pattern Recognition (CVPR’03), Madison, Wisconsin,, 2014.
[35] Introduction `a la recherche d’information, chapter 1. UQAM, 2009.
87
R´esum´e
La d´etection d’objets et la reconnaissance est une fonction cl´e pour de nombreuses appli-
cations comme la surveillance vid´eo, les syst`emes de transport robotiques, intelligents, etc.
Ce probl`eme est largement trait´e dans la litt´erature en termes de ce que tente de reproduire
la vision humaine en construisant des mod`eles qui ont des propri´et´es semblables `a des cap-
teurs visuels (cam´eras vid´eo, t´el´em`etre laser, radar) et m´ethodologies. Dans ce contexte, nous
sommes particuli`erement int´eress´es par la d´etection d’objets dans une sc`ene.
Le travail demand´e consiste `a :
• Faire une ´etude bibliographique consacr´ee aux m´ethodes de d´etection d’objets dans une
sc`ene d’interieur.
• ´Etudier et impl´ementer un algorithme de d´etection d’objets.
• Proposer une m´ethode de reconnaissance d’objets dans une sc`ene d’int´erieur.
Abstract
The detection of objects and the recognition is a key function for numerous applications as
the surveillance video, the systems of transportation roboticses, intelligent, etc. This problem
is called extensively in the literature in terms that tent to reproduce the human vision while
constructing the models that have some properties similar to visual sensors (camcorder, laser
telemeter, radar) and methodologies. In this context, we are especially interested by the
detection of objects in a scene.
• To make a bibliographic survey dedicated to the methods of detection of objects in a
interior scene.
• To study and implementation of an algorithm of objects detection .
• To propose a method of objects recognition in a interior scene.
1

Object detection and recognition in digital images

  • 1.
    Table des mati`eres 1D´etection et Reconnaissance d’Objets 8 1.1 Vision par ordinateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 1.2 Un peu d’histoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.3 D´efinition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.4 Probl´ematique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.5 Repr´esentation d’images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 1.5.1 M´ethodes de repr´esentation globales . . . . . . . . . . . . . . . . . . 13 1.5.2 M´ethodes de repr´esentation locales . . . . . . . . . . . . . . . . . . . 13 1.6 Classification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.6.1 k plus proches voisins . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.6.2 Arbres de d´ecision . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.6.3 Machines `a vecteurs de support . . . . . . . . . . . . . . . . . . . . . 15 1.6.4 Mod`eles graphiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 1.6.5 Les mod`eles `a variables latentes d’aspect . . . . . . . . . . . . . . . . 16 1.6.6 R´eseaux de neurones . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 1.6.7 Boosting : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 1.7 ´Etat de l’art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2 Conception 26 2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 2.2 Approche 1 : 1-Chebychev . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 2.2.1 La segmentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 2.2.2 Repr´esentation de l’image . . . . . . . . . . . . . . . . . . . . . . . . 40 2.2.3 Reconnaissance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 2.3 Approche Couleur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 2.3.1 Repr´esentation des objets . . . . . . . . . . . . . . . . . . . . . . . . 48 2.3.2 Construction du mod`ele . . . . . . . . . . . . . . . . . . . . . . . . . 49 2.3.3 Appariement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 2.3.4 Localisation des objets . . . . . . . . . . . . . . . . . . . . . . . . . . 50 2.3.5 Localisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 2.3.6 Avantages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 2.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 1
  • 2.
    3 Impl´ementation 55 3.1Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 3.2 Environnement de travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 3.2.1 Environnement logiciel . . . . . . . . . . . . . . . . . . . . . . . . . . 56 3.2.2 Environnement mat´eriel . . . . . . . . . . . . . . . . . . . . . . . . . 56 3.3 Pr´esentation de la base d’apprentissage . . . . . . . . . . . . . . . . . . . . 57 3.3.1 Base de donn´ees COIL-100 . . . . . . . . . . . . . . . . . . . . . . . . 57 3.3.2 Base de donn´ees ETH-80 . . . . . . . . . . . . . . . . . . . . . . . . . 58 3.3.3 Acquisition des deux bases . . . . . . . . . . . . . . . . . . . . . . . . 59 3.4 Pr´esentation de l’interface graphique . . . . . . . . . . . . . . . . . . . . . . 59 3.4.1 Premi`ere Approche . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 3.4.2 Deuxi`eme approche . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 3.4.3 Troisi`eme approche . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 3.5 Apprentissage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 3.5.1 Choix de la fonction du noyau . . . . . . . . . . . . . . . . . . . . . . 68 3.5.2 Principe de l’apprentissage . . . . . . . . . . . . . . . . . . . . . . . . 70 3.6 Exp´erimentations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 3.6.1 Matrice de confusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 3.6.2 Fonction d’efficacit´e du r´ecepteur ROC . . . . . . . . . . . . . . . . . 74 3.6.3 Taux de la reconnaissance des deux bases . . . . . . . . . . . . . . . . 75 3.6.4 Rappel et pr´ecision . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 3.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 Bibliographie 87 2
  • 3.
    Table des figures 1.1Exemple d’Objets sp´ecifiques. Gauche : Carl Gauss. Droite : le Taj Mahal. . 9 1.2 Exemple de cat´egories d’objets. . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.3 Gauche :Exemple de variabilit´e intra-classe de la cat´egorie chaise. Droite : Cet objet `a l’apparence ´etrange est une chaise de par sa fonction. . . . . . . . . . 11 1.4 Gauche : Exemple d’occlusion. Droite : Exemple de changement de point de vue et rotation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 1.5 Reconnaissance bas´e mod`eles . . . . . . . . . . . . . . . . . . . . . . . . . . 13 1.6 A gauche la classification, est simple quel que soit le nombre de voisins.A droite, revanche tout d´epend du nombre de voisin l’affectation `a une classe est pond´er´ee par la distance, plus un voisin est ´eloign´e, plus son influence est faible. 14 1.7 Exemple de classification avec arbre de d´ecision. . . . . . . . . . . . . . . . . 15 1.8 Exemple de classification avec AdaBoost. . . . . . . . . . . . . . . . . . . . . 18 1.9 a) L.G.Roberts. b) Sc`ene de blocks. c) Fronti`eres extraites `a l’aide du gradient. d) Description polyhedral de la sc`ene. e) Sc`ene 3D avec changement de point de vue. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.10 Repr´esentation des objets par les cylindres g´en´eralis´es. a) Thomas Binford. b)Image de la gamme d’une poup´ee. c) Cylindres g´en´eralis´es obtenues. . . . 20 1.11 Graphe d’aspects. Deux vues d’un objet, les diff´erentes projections forment un graphe d’adjacence. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 1.12 Repr´esentation des objets `a l’aide des geons. . . . . . . . . . . . . . . . . . . 21 1.13 Mod`ele utilis´e par Fischler et Elschlager pour mod´eliser le visage Figure pro- venant de [1]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 2.1 Syst`eme de reconnaissance. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 2.2 R´esultat de segmentation avec DBscan globale. Gauche : Image originale. Droite : Image segment´ee labellis´ee. . . . . . . . . . . . . . . . . . . . . . . . 30 2.3 R´esultat de segmentation avec DBscan locale en utilisant les niveaux de gris. Gauche : Image en niveau de gris. Droite : Image labellis´ee, nous obtenons une sur-segmentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 2.4 Gauche : Image convertit dans l’´eespace HSV. Droite :R´esultat de segmenta- tion avec DBscan locale en utilisant la Teinte. . . . . . . . . . . . . . . . . . 32 2.5 Gauche : Rsultat de segmentation avec DBscan locale en utilisant le Teinte. Droite : Localisation des objets. . . . . . . . . . . . . . . . . . . . . . . . . . 32 3
  • 4.
    2.6 Gauche :Image convertit dans l’espace HSV. Milieu :R´esultat de segmentation avec DBscan locale en utilisant la Teinte. Droite :R´esultat de segmentation l’objet n’est pas d´etect´e. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 2.7 Organigramme de la m´ethode. . . . . . . . . . . . . . . . . . . . . . . . . . . 33 2.8 Repr´esentation des minimums et maximums locaux sur l’histogramme. . . . 34 2.9 Bas : Extraction des minimums et maximums locaux `a partir de l’histogramme. 35 2.10 Gauche : Image binaris´ee. Droite :Histogramme des niveaux de gris ainsi que les seuils min et max en rouge. . . . . . . . . . . . . . . . . . . . . . . . . . . 35 2.11 Image binaris´ee apr`es ´erosion. . . . . . . . . . . . . . . . . . . . . . . . . . . 37 2.12 Image binaris´ee apr`es dilatation puis inversion. . . . . . . . . . . . . . . . . . 37 2.13 Superposition des deux images pr´ec´edentes. . . . . . . . . . . . . . . . . . . 38 2.14 ´Etapes de segmentation d’objets : les r´egions marqu´es en blanc s’´etendent jusqu’aux fronti`eres des objets. . . . . . . . . . . . . . . . . . . . . . . . . . 39 2.15 R´esultats de la segmentation. -Gauche : fronti`eres des objets. -Milieu :Segmen- tation des objets. Droite : r´esultat final, extraction des objets. . . . . . . . . 40 2.16 Reconstruction `a diff´erents ordres avec notre calcul des moments ainsi qu’avec le calcul classique de ceux ci. . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 2.17 L’effet de la rotation sur les descripteurs `a diff´erents ordres. . . . . . . . . . 44 2.18 Influence de l’ordre et la rotation sur le calcul des moments. . . . . . . . . . 46 2.19 R´esultat de segmentation dans une sc`ene r´eelle. Gauche : Image de la sc`ene. Droite : Image segment´ee, mˆeme si nous arrivons `a extraire les objets du fond, nous ne pouvons les distinguer. . . . . . . . . . . . . . . . . . . . . . . . . . 47 2.20 Syst`eme de Reconnaissance de la seconde m´ethode. . . . . . . . . . . . . . . 48 2.21 Repr´esentation d’un objet en prenant en compte l’information spatiales de points d´efinis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 2.22 calcul des points candidats. . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 2.23 2 Superposition des deux axes sur les diff´erents centres possibles, une seule superposition est correcte. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 3.1 Objets de la base de donn´ees Columbia Object Image Library. . . . . . . . . 57 3.2 Objets de la base de donn´ees ETH-80. . . . . . . . . . . . . . . . . . . . . . 58 3.3 Acquisition de la base COIL-100. . . . . . . . . . . . . . . . . . . . . . . . . 59 3.4 Interface d’accueil l’application. . . . . . . . . . . . . . . . . . . . . . . . . . 60 3.5 Choix d’une base de donn´ees. . . . . . . . . . . . . . . . . . . . . . . . . . . 60 3.6 Choix de l’image de la sc`ene. . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 3.7 Affichage de l’image de la sc`ene . . . . . . . . . . . . . . . . . . . . . . . . . 61 3.8 Segmentation de l’image. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 3.9 Reconnaissance d’objets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 3.10 Interface d’accueil de la deuxi`eme approche . . . . . . . . . . . . . . . . . . . 64 3.11 Apprentissage d’un objet avec la deuxi`eme m´ethode . . . . . . . . . . . . . . 64 3.12 Reconnaissance des objets avec la deuxi`eme m´ethode . . . . . . . . . . . . . 65 3.13 l’interface d’accueil de la troisi`eme approche. . . . . . . . . . . . . . . . . . . 66 3.14 Le choix entre les deux m´ethodes de SURF . . . . . . . . . . . . . . . . . . . 66 3.15 choix de l’image de la sc`ene et de l’objet `a trouver. . . . . . . . . . . . . . . 67 3.16 R´esultat de la d´etection hors ligne. . . . . . . . . . . . . . . . . . . . . . . . 67 4
  • 5.
    3.17 R´esultat dela d´etection en ligne. . . . . . . . . . . . . . . . . . . . . . . . . 68 3.18 Comparaison entre les fonctions de noyau. . . . . . . . . . . . . . . . . . . . 69 3.19 Comparaison des m´ethodes : (a) l’image original en RGB ; (b) l’image original appliqu´e avec Canny ; (c) l’image reconstruite par la m´ethode classique ;(d) l’image reconstruite par notre m´ethode. . . . . . . . . . . . . . . . . . . . . 71 3.20 Etude comparative sur les temps d’ex´ecution et l’apprentissage. . . . . . . . 72 3.21 Etude comparative sur la pr´ecision de la reconnaissance avec et sans couleur. 73 3.22 Courbe ROC obtenu pour les dix objets. . . . . . . . . . . . . . . . . . . . . 74 3.23 Etude comparative sur la pr´ecision de la reconnaissance avec les diff´erentes m´ethodes de calcul. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 3.24 Image de sc`ene r´eelle. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 3.25 ´etude comparative sur la pr´ecision, le rappel et F-Mesure entre la deuxi`eme et la troisi`eme m´ethode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 3.26 ´etude comparative sur le temps de calcule entre la deuxi`eme et la troisi`eme m´ethode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 5
  • 6.
    Liste des Algorithmes 1Algorithme de la premi`ere m´ethode. . . . . . . . . . . . . . . . . . . . . . . . 29 2 Proc´edure de Clusterisation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 3 Algorithme de la deuxi`eme m´ethode. . . . . . . . . . . . . . . . . . . . . . . . 31 4 Algorithme de Binarisation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 5 Algorithme d’extraction de seuils pour la Binarisation. . . . . . . . . . . . . . 36 6 Algorithme de Segmentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 7 Algorithme de la rotation 1-Chebychev. . . . . . . . . . . . . . . . . . . . . . 45 8 Algorithme de la premi`ere m´ethode. . . . . . . . . . . . . . . . . . . . . . . . 49 9 Algorithme de Matching. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 6
  • 7.
    Introduction La vision parordinateur est une branche de l’intelligence artificielle qui se concentre sur l’extraction d’information utile contenue dans une image. Durant les derni`eres d´ecennies, un grand nombre d’approches innovants ont ´et´e d´evelopp´es dans ce but. Ces recherches ont permis d’atteindre des taux de reconnaissance appr´eciables sur de nombreuses bases de donn´ees de test. Ces m´ethodes extraient une repr´esentation de l’image sous forme de descripteurs. Elles utilisent ensuite l’apprentissage automatique (Machine Learning) pour traiter ces descripteurs et obtenir le r´esultat recherch´e comme, par exemple, la reconnaissance des objets pr´esents dans l’image. Nous proposons dans ce m´emoire une ´etude sur le th`eme de la d´etection d’obstacles, il comportera trois chapitres : Chapitre 1 : D´etection et reconnaissance d’objets : Ce m´emoire aborde tout d’abord de mani`ere g´en´erale les th`emes de la vision par ordinateur et de ses domaines d’application. Il dresse une synth`ese de l’´etat de l’art des syst`emes de d´etection et reconnaissance d’objets les diff´erents descripteurs d’objets ainsi que diverses m´ethodes de classification. Avant de s’int´eresser plus en d´etail `a la m´ethode d´evelopp´ee au cours de ce travail de fin d’´etudes. Chapitre 2 : Conception :Dans la deuxi`eme partie de ce document nous avons d´ecrit les diff´erentes ´etapes de la mise en œuvre de nos approches d´evelopp´ees, en commen¸cant par les m´ethodes de segmentation d’objets, nous d´etaillerons par la suite la proc´edure de la construction des descripteurs bas´e moments de Chebyshev comme premi`ere approche, et bas´e distribution des couleurs dans l’espace RBGa comme deuxi`eme approche. Chapitre 3 : Impl´ementation : Nous commen¸cons dans ce dernier chapitre par d´ecrire l’environnement de travail qui nous a permis d’impl´ementer nos approches. Nous entamons par la suite la description des diff´erentes interfaces de l’application, puis nous avons expos´e les r´esultats obtenus par les diff´erentes approches de d´etection, en termes de temps d’ex´ecution et de taux de reconnaissance , pour donner une id´ee comparative de l’aspect pratique de nos m´ethodes. 7
  • 8.
    Chapitre 1 D´etection etReconnaissance d’Objets Sommaire 1.1 Vision par ordinateur . . . . . . . . . . . . . . . . . . . . . . . . . . 8 1.2 Un peu d’histoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.3 D´efinition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.4 Probl´ematique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.5 Repr´esentation d’images . . . . . . . . . . . . . . . . . . . . . . . . 13 1.5.1 M´ethodes de repr´esentation globales . . . . . . . . . . . . . . . . . 13 1.5.2 M´ethodes de repr´esentation locales . . . . . . . . . . . . . . . . . . 13 1.6 Classification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.6.1 k plus proches voisins . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.6.2 Arbres de d´ecision . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.6.3 Machines `a vecteurs de support . . . . . . . . . . . . . . . . . . . . 15 1.6.4 Mod`eles graphiques . . . . . . . . . . . . . . . . . . . . . . . . . . 15 1.6.5 Les mod`eles `a variables latentes d’aspect . . . . . . . . . . . . . . . 16 1.6.6 R´eseaux de neurones . . . . . . . . . . . . . . . . . . . . . . . . . . 16 1.6.7 Boosting : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 1.7 ´Etat de l’art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.1 Vision par ordinateur La discipline qui vise `a automatiser la compr´ehension des images est la Vision par Or- dinateur. D’autres appellations existent notamment Vison artificielle ou Vision cognitive, cette branche de l’intelligente artificielle `a pour objectif de permettre aux machines de com- prendre le contenu des images (ce que la machine voit !). Cette discipline se divise en plusieurs domaines et application : Reconstruction 3D, Segmentation, Analyse du mouvement, recon- naissance de formes, traitement d’images. On comprend que les applications sont nombreuses, 8
  • 9.
    celles-ci cit´ees lesont `a titre d’exemple, elles ne constituent pas une liste exhaustive mais donnent une id´ee des objectifs de ce domaine. 1.2 Un peu d’histoire En 1966 Marvin Minsky chercheur au MIT assigne pour projet, `a un ´etudiant de premier cycle la tˆache de raccorder une camera `a un ordinateur et que la machine devait ”d´ecrire ce qu’elle voit”. [2] Tr`es vite l’on s’aper¸coit de la difficult´e du probl`eme. Pr`es de cinquante ans apr`es et en d´epit des progr`es r´ealis´es les machines ne sont toujours pas capables d’interpr´eter les images, l’Homme prouve largement sa sup´eriorit´e. Dans ce Chapitre nous nous int´eressons au probl`eme de l’interpr´etation en particuliers au sous probl`eme de la d´etection et reconnaissance d’objets. La plus part des tˆaches li´es `a la vision repose sur la capacit´e `a reconnaitre les objets et leurs cat´egories. Une vari´et´e d’application fait appel `a la reconnaissance et ce dans de nombreux domaines d’intelligence artificielle, par exemple la recherche bas´e sur le contenu d’images, vid´eo mining, d´etection d’objets, assistance `a la conduite. 1.3 D´efinition Un syst`eme de reconnaissance d’objets est un syst`eme qui permet de retrouver des objets du monde r´eel `a partir d’une image du monde,`a l’aide des model´es d’objets qui sont connues a priori. La communaut´e de Vision consid`ere qu’il y a deux types de reconnaissances d’objets : une reconnaissance sp´ecifique et une reconnaissance g´en´erale. Dans la reconnaissance sp´ecifique nous cherchons `a identifier des objets particulier dans une image exemple le portrait de Gauss, le Taj Mahal, une certaine couverture de revue. Figure 1.1 – Exemple d’Objets sp´ecifiques. Gauche : Carl Gauss. Droite : le Taj Mahal. 9
  • 10.
    En revanche dansla cas de la reconnaissance g´en´erale nous cherchons `a reconnaitre diff´erentes instances de cat´egorie d’objets, appartenant `a la mˆeme classe conceptuelle, exemple ( bˆatiments, automobiles, personnes... etc). Figure 1.2 – Exemple de cat´egories d’objets. Nous nous int´eressons dans ce travail au deuxi`eme type. En particuliers au probl`eme de D´etection d’objets. La D´etection d’objets est une tˆache tr`es similaire `a la reconnaissance d’objets, en effet on pourrait voir le probl`eme de la d´etection comme un probl`eme de re- connaissance dans le sens ou nous cherchons `a distinguer ce qui est objet de ce qui ne l’est pas (le fond) donc il faut reconnaitre ce qu’est un objet,ses caract´eristiques. On pourrait d´efinir la D´etection d’objets comme suit : La tˆache de d´eceler dans une image la pr´esence d’une ou plusieurs cat´egories d’objets. G´en´eralement la tˆache de la DO permet la localisa- tion approximative sous forme de boite englobante. D’un point de vu segmentation la DO permettrait de d´elimiter les fronti`eres des objets, de d´eterminer les pixels appartenant `a un objet et ceux appartenant au fond. 1.4 Probl´ematique Apprendre `a reconnaitre une unique instance d’objet n’est pas suffisant pour bon nombre de probl`emes, nous nous int´eressons ici `a la reconnaissance `a l’´echelle de la cat´egorie. Cepen- dant envisager la reconnaissance de cat´egories pr´esente plusieurs difficult´es. La premi`ere et celle de la d´efinition et de l’organisation de ces cat´egories. Cette question a re¸cu une atten- tion consid´erable dans des travaux notamment dans le domaine de la psychologie cognitive (Brown 1958) [3]. La question du bon d´ecoupage des cat´egories est difficile `a aborder on peut 10
  • 11.
    trouver des objetsayant une apparence similaire ou une fonction similaire mais appartenant `a des classes diff´erentes, et vice versa. Nous supposerons dans notre travail que les cat´egories sont d´efinies par l’exemple, au moyen de bases d’images. plusieurs autres facteurs li´es aux variations des objets dans les images contribuent aux difficult´es. La plupart des classes d’objets naturels ont des grandes variations au sein de la mˆeme cat´egorie, et l’apparence de deux objets appartenant `a la mˆeme classe peuvent ˆetre diff´erents. Souvent les cat´egories sont d´efinies de fa¸con fonctionnelle et non visuels, par exemple un objet sera class´e comme chaise du moment ou il a pour fonction de permettre de s’assoir disposera d’un dossier mais il n’a pas forcement quartes pieds ( voir figure 1.3) on parle alors de varia- tion intra-classe. Figure 1.3 – Gauche :Exemple de variabilit´e intra-classe de la cat´egorie chaise. Droite : Cet objet `a l’apparence ´etrange est une chaise de par sa fonction. Le processus de formation de l’image supprime l’information 3D ce qui a pour cons´equence tout petit changement dans la position ou la rotation ou du point de vue (view point) de l’ob- jet par rapport au centre de la camera peut changer l’apparence de l’objet consid´erablement. Une question connexe `a laquelle il faut faire face et le changement d’´echelle (scaling) une bonne d´etection devrait ˆetre robuste `a de tels changements. Souvent les objets peuvent ˆetre partiellement masqu´es et apparaissent g´en´eralement sur des fonds complexes et vari´es. Un autre probl`eme est le changement d’illumination en ef- fet l’´eclairage g´en´erale affecte l’apparence d’un objet par exemple un objet en plein soleil ou dans la nuit n’aura pas la mˆeme apparence. Ainsi un d´etecteur d’objet robuste doit pallier aux probl`emes li´es `a ces changements d’ap- parence, et fournir une invariance `a la d´etection. 11
  • 12.
    Figure 1.4 –Gauche : Exemple d’occlusion. Droite : Exemple de changement de point de vue et rotation. La difficult´e de la d´etection ne r´eside pas seulement dans ces probl`emes `a surmonter, mais aussi dans la difficult´e d’exploiter certaines informations li´es au contexte `a priori utile, l’apparence d’un objet peut ˆetre ambigus il semble int´eressant de modifier la classe d’un objet en relation avec le contexte de la sc`ene. En plus des difficult´es ´evoqu´es relative `a la robustesse des algorithmes de reconnaissance rencontre des d´efis notables dans la complexit´e de calcul. Le fait que la moiti´e du cortex c´er´ebral chez les primates est consacr´e au traitement visuel donne une indication de la charge de calcul investit dans cette tˆache complexe [4]. Des algorithmes efficaces sont donc n´ecessaire pour utiliser de riches repr´esentations d’images de grandes dimensions, d’exploiter de grandes bases de donn´ees d’images, ou ´etendre la reconnaissance `a des milliers de cat´egories d’objets. Nous pr´esentons un sch´ema r´ecapitulatif d’un syst`eme de reconnaissance voir Figure 1.4. La mod´elisation est constitu´ee de deux phases : [5] ­ La premi`ere est hors ligne (off line) qui consiste `a repr´esenter les images de la base qui puissent exister dans la sc`ene et construire ainsi une base de mod`eles. ­ La deuxi`eme est une ´etape en ligne qui est l’´etape de la reconnaissance elle consiste `a effectuer des transformations spatiales, `a d´eterminer la position d’un objet dans la sc`ene et surtout `a r´ealiser une mise en correspondance entre les objets de la sc`ene et les mod`eles de la base d’images construites lors de l’´etape hors ligne. 12
  • 13.
    Figure 1.5 –Reconnaissance bas´e mod`eles 1.5 Repr´esentation d’images La question de la repr´esentation des objets est cruciale il est ´evidement peu judicieux d’utiliser directement les valeurs des pixels de l’image, qui peuvent ˆetre tr`es diff´erents pour des images presque identiques, sinon comparer les images pixel `a pixel, lorsque l’objet est l´eg`erement translat´e, la repr´esentation devient compl`etement diff´erente. Et mˆeme si la mise en correspondance est parfaite, il suffit de remplacer l’objet presque identique pour que la valeur des pixels soit enti`erement modifi´ee. La repr´esentation a fait l’objet de beaucoup de contributions ces derni`eres ann´ees. En effet, plus la repr´esentation est adapt´ee, plus les r`egles de d´ecision dans cet espace sont faciles `a d´efinir. Nous distinguons deux types d’approches.Les m´ethodes globales et les m´ethodes locales. 1.5.1 M´ethodes de repr´esentation globales Historiquement les m´ethodes globales ont ´et´e propos´es en premier, elle calcule une signa- ture de l’image dans sa globalit´e, `a l’aide de diff´erents descripteurs de surface, p´erim`etre, descripteur de Fourier, et les moments. En fonction du descripteur ces m´ethodes peuvent ˆetre robustes aux variations que subit l’objet comme l’illumination, la rotation, le change- ment d’´echelle mais ne sont pas adapt´ees aux occultations et la pr´esence de fond complexes. C’est pour pallier `a ces limitations tr`es contraignantes que les m´ethodes locales ont ´et´e pro- pos´ees. 1.5.2 M´ethodes de repr´esentation locales Ces m´ethodes consid`erent les images comme ´etant des r´egions d’int´erˆets locales, g´en´eralement de taille assez faibles par rapport `a la taille de l’image. Elles sont appel´es ”patch” seuls les r´egions consid´er´ees comme importantes sont utilis´ees ce qui permet de limiter la quantit´e d’information `a manipuler par leurs nature locale et leur capacit´e `a permettre ais´ement les appariements entre images. Ces m´ethodes conduisent `a des algorithmes robustes aux trans- lations, aux changements d’´echelles, aux occultations, et `a la pr´esence d’un fond difficile qui sont les caract´eristiques classiques des images en conditions r´eelles. 13
  • 14.
    1.6 Classification Les m´ethodesde classification ont pour but d’identifier les classes auxquelles appar- tiennent des objets `a partir de certains traits descriptifs. La proc´edure de classification est extraite automatiquement `a partir d’un ensemble d’exemples. Un exemple consiste en la des- cription d’un cas avec la classification correspondante. Un syst`eme d’apprentissage doit alors, a partir de cet ensemble d’exemples extraire un mod`ele, il s’agit en effet d’extraire une r`egle g´en´erale `a partir des donn´ees observ´ees. La proc´edure g´en´er´ee devra classifier correctement les exemples de l’´echantillon et avoir un bon pouvoir pr´edictif pour classifier correctement de nouvelles descriptions. Nous introduisons dans les sections suivantes, les concepts de la classification supervis´ee ainsi que les m´ethodes usuelles utilis´ees en vision par ordinateur. 1.6.1 k plus proches voisins La m´ethode des K plus proches voisins (Knn K nearest neighbor en anglais) [6] se base sur une comparaison directe entre le vecteur caract´eristique repr´esentant l’entit´e `a classer (ici un objet) et les vecteurs caract´eristiques repr´esentant des entit´es de r´ef´erence. La comparaison consiste en un calcul de distances entre ces entit´es. L’entit´e `a classer est assign´e `a la classe majoritaire parmi les classes des k entit´es les plus proches au sens de la distance utilis´ee. Les principaux inconv´enients de cette m´ethode sont le nombre d’op´erations pour classer une entit´e dans le cas d’une grande base ainsi que sa sensibilit´e au bruit pr´esent dans les donn´ees d’apprentissage. Figure 1.6 – A gauche la classification, est simple quel que soit le nombre de voisins.A droite, revanche tout d´epend du nombre de voisin l’affectation `a une classe est pond´er´ee par la distance, plus un voisin est ´eloign´e, plus son influence est faible. 1.6.2 Arbres de d´ecision Le formalisme des arbres de d´ecision permet de classifier un nouvel objet en testant ses caract´eristiques les unes `a la suite des autres. La classification se fait `a travers une s´equence de questions dans laquelle chaque question d´epend de la r´eponse `a la question pr´ec´edente. Cette s´equence de questions est repr´esent´ee par un arbre de d´ecision dont les feuilles ter- minales repr´esentent les classes. Deux types de valeurs sont possibles discr`etes et continues, 14
  • 15.
    selon qu’il s’agissed’un arbre de classification ou un arbre de r´egression. La figure 1.6.2 illustre un exemple de classification sur des donn´ees continues `a deux dimen- sions en utilisant les arbres de d´ecision. Dans la phase de construction de ce classificateur, les exemples de l’ensemble de l’appren- tissage sont divis´es r´ecursivement par des tests d´efinis sur des caract´eristiques pour obtenir des sous-ensembles d’exemples ne contenant que des exemples appartenant tous `a une mˆeme classe. Les algorithmes existant ( CART ( [7]), ID3 ( [8]), C4.5 ( [9])...) diff´erent essentielle- ment par leur fa¸con de choisir, `a une ”tape donn´ee et parmi les caract´eristiques disponibles, la caract´eristique de segmentation et par le crit`ere d’arrˆet. Figure 1.7 – Exemple de classification avec arbre de d´ecision. 1.6.3 Machines `a vecteurs de support Les machines `a vecteurs de support, ou Support Vector Machine (SVM) sont des fonc- tions discriminatives. Intuitivement, les SVM sont bas´es sur deux principes. Le premier est de maximiser la marge du classifieur, c’est-`a-dire la distance entre la fronti`ere de d´ecision et les ´echantillons les plus proches. Le deuxi`eme est l’utilisation d’une fonction noyau (kernel trick) pour travailler dans un espace de repr´esentation o`u les donn´ees dont lin´eairement s´eparables. Les d´etails math´ematiques peuvent ˆetre trouv´es par exemple dans [10], Les SVM pr´esentent de bonnes propri´et´es de g´en´eralisation, en effet, ils sont capables de construire des mod`eles sans sur apprentissage, mˆeme dans le contexte de peu d’exemples d’apprentissage repr´esent´es par des vecteurs de grande dimension. 1.6.4 Mod`eles graphiques Les mod`eles graphiques utilisent avantageusement des repr´esentations des distributions de probabilit´e par des diagrammes. Cela permet de visualiser de fa¸con simple et agr´eable les structures du mod`eles probabiliste. Cette mod´elisation permet aussi d’avoir un aper¸cu des 15
  • 16.
    propri´et´es du mod`ele`a partir du graphe, notamment les propri´et´es d’ind´ependance condi- tionnelles [10]. Un graphe est constitu´e de nœuds, qui repr´esentent les variables al´eatoires, et d’arcs qui connectent ces nœuds entre eux. Ce sont des relations probabilistes entre va- riables. Le graphe capture de fa¸con dont nœuds d´ependent seulement d’un sous ensemble de variables. Plusieurs types de mod`eles graphiques sont g´en´eralement distingu´es : ­ Les r´eseau bay´esiens ou mod`eles graphiques directs sont tels que le lien ente les nœuds a une directions particuli`ere, indiqu´ee par des fl`eches et permet de mod´eliser une relations causale. ­ Une deuxi`eme classe tr`es populaire est celle des champs de Markov (MRF) ou mod`ele graphique indirect. Les liens n’ont pas de direction, et mod´elisent des contraintes spa- tiale entre les labels d’´el´ements voisins dans le graphe. Ils s’int´eressent `a la probabilit´e conjointe des observations et des labels. Ils servent en g´en´eral `a r´egulariser un champs de labels `a l’´echelle d’une image. 1.6.5 Les mod`eles `a variables latentes d’aspect Sont des mod`eles `a variables latentes d’un int´erˆet tout particulier. Les deux plus utilis´es en vision sont les mod`eles pLSA et LDA. Introduits initialement pour la classification de textes, ces mod`eles sont bas´es sur une repr´esentation en mots visuels. Le mod`ele pLSA [11] ou Probabilistic Latent Semantic Analysis, introduit par Hofmann suppose que les images sont d´ecrites par des distributions sur des variables d’aspect, les topics, et que chaque to- pic poss`ede une probabilit´e de g´en´erer chacun des mots. Les deux ´etant mod´elis´es par des distributions multinationales. Le mod`ele LDA ou Latent Dirichlet Allocation, introduit par Blei, Ng et Jordan [?], suppose quant `a lui que ces probabilit´es multinationales sont obtenues `a l’aide d’un a priori de Dirichlet. Les mod`eles des chapitres 3 et 5 sont des extensions du mod`ele LDA. 1.6.6 R´eseaux de neurones Les r´eseaux de neurones sont inspir´es de la structure neurophysiologique du cerveau. Un neurone formel est l’unit´e ´el´ementaire d’un syst`eme mod´elis´e par un r´eseau de neurones artificiels. A la r´eception de signaux provenant d’autres neurones du r´eseau, un neurone formel r´eagit en produisant un signal de sortie qui sera transmis `a d’autres neurones du r´eseau. Le signal re¸cu est une somme pond´er´ee des signaux provenant de diff´erents neurones. Le signal de sortie est une fonction de cette somme pond´er´ee : yj = f( n i=1 wijxi) avec yj la sortie du neurone formel j en question, xi; (i = 1 ::: N) les signaux re¸cus par le neurone j de la part des neurones i, et wij les poids des interconnexions entre les neurones i et j. Selon l’application, la fonction f, appel´ee fonction d’activation, est le plus souvent une fonction identit´e, sigmo¨ıde, tangente hyperbolique ou une fonction lin´eaire par morceaux. L’apprentissage du classificateur consiste `a faire ´evoluer les poids wij par des 16
  • 17.
    m´ethodes d’optimisation nonlin´eaires pour minimiser une fonction de coˆut qui constitue une mesure de l’´ecart entre les r´eponses r´eelles du r´eseau et les r´eponses d´esir´ees. 1.6.7 Boosting : Le Boosting (Schapire [12]) d´esigne un principe g´en´eral d’apprentissage permettant d’am´eliorer la pr´ecision d’un algorithme d’apprentissage donn´e. Le principe g´en´eral est de combiner lin´eairement des r´esultats de classificateurs dits ”faibles” affin de construire un classificateur ”fort” d’apprentissage `a partir de l’ensemble original et une m´ethode de com- binaison de classificateurs construits `a partir de chaque nouvel ensemble. Pour d´efinir sa nouvelle technique de ”Boosting”, Shapire se base sur l’id´ee que tout classifi- cateur faible capable d’apprendre avec une certaine confiance et une erreur de classification inf´erieure `a (0.5), peut ˆetre transform´e en un classificateur plus confiant et avec une erreur de classification aussi petite que d´esir´ee. En d’autres termes, un classificateur faible don- nant de meilleurs r´esultats qu’un simple pile ou face (50% de risque) peut ˆetre la base pour construire un ensemble de classificateurs. A chaque it´eration, l’algorithme cherche `a trouver un classificateur faible qui peut corriger au mieux les erreurs des classificateurs obtenus aux it´erations pr´ec´edentes. Dans le principe de ”Boosting”, cet objectif est r´ealis´e `a l’aide d’une pond´eration des donn´ees d’apprentissage. Le premier algorithme d´eriv´e de ce concept est ”AdaBoost”. Dans la section suivante, nous d´ecrivons l’algorithme ”AdaBoost”. Adaboost : L’algorithme ”AdaBoost” (Adaptive Boosting), d´evelopp´e par Freund et Schapire (Freund et Schapire [13]), est un algorithme qui cr´ee imp´erativement une combinaison lin´eaire de classificateurs de la forme : H(x) = Signe( T t=1 αtht(x)) O`u ht repr´esente un classificateur faible et αt son poids. ”AdaBoost” est un algorithme qui prend en entr´ee, en plus d’un ensemble d’apprentissage, un second algorithme de classification. A chaque it´eration, ”AdaBoost” appelle le second algorithme afin d’apprendre un nouveau classificateur qui corrige les erreurs de pr´ediction de la combinaison lin´eaire courante. Une fois ce nouveau classificateur appris, il est ajout´e dans la combinaison lin´eaire avec un poids associ´e qui maximise la performance de la nouvelle combinaison. La figure 1.6.7 illustre un exemple d’AdaBoost appliqu´e sur des donn´ees en deux dimensions. 17
  • 18.
    Figure 1.8 –Exemple de classification avec AdaBoost. 18
  • 19.
    1.7 ´Etat del’art La reconnaissance d’objets a suscit´e l’int´erˆet de la communaut´e scientifique d´es les pre- miers pas de la vision par ordinateur. les premiers travaux en reconnaissance `a la fin des ann´ees 60 ´etaient bas´es sur la g´eom´etrie nous pouvons cit´es quelques travaux fondateurs : Roberts [14] propose une approche ou l’objet est mod´elis´e en blocks ”block world” en an- glais,d´efini comme suit : ”Nous supposerons que les objets vus pourraient ˆetre construits avec des parties avec lesquelles nous sommes familiers. Nous voyons l’objet comme une transfor- mation en un mod`ele pr´econ¸cu , ou un ensemble de parties pr´econ¸cu ... La seule exigence est que nous ayant une description compl`ete de la structure tridimensionnelle de chaque mod`ele.” Ce mod`ele g´eom´etrique en th´eorie fonctionne mais il est bien loin de la pratique de nom- breuses difficult´es ne peuvent ˆetre abord´es dans ce mod`ele comme pour les objets articul´es ou en mouvement, les surfaces curvilignes, les occlusions et les formes inconnues, texture complexe tel que le feuillage, surfaces transparentes ou translucides. Figure 1.9 – a) L.G.Roberts. b) Sc`ene de blocks. c) Fronti`eres extraites `a l’aide du gradient. d) Description polyhedral de la sc`ene. e) Sc`ene 3D avec changement de point de vue. Thomas Binford [14] repr´esente les objets par des cylindres g´en´eralis´es, la m´ethode consiste en un balayage de l’objet, celui ci est donc repr´esent´e comme une ossature par des cylindres le long d’un axe. Le principale avantage de cette m´ethode est la capacit´e `a repr´esenter des objets ayant une forme curviligne, un exemple de description d’ un objet en utilisant les cylindres g´en´eralis´es, est montr´e dans la figure suivante. 19
  • 20.
    Figure 1.10 –Repr´esentation des objets par les cylindres g´en´eralis´es. a) Thomas Binford. b)Image de la gamme d’une poup´ee. c) Cylindres g´en´eralis´es obtenues. Stephen Underwood and Clarence [14] propose une approche bas´e sur les graphes d’aspects dans lesquels les aspects 2D d’un objet 3D sont collect´es dans des groupes appel´es aspects sous forme d’un graphe ou chaque nœud repr´esente une vue (aspect) et les arcs repr´esentent les relations entre les aspects et le passage d’une vue `a une l’autre. la repr´esentation par graphe d’aspects eu beaucoup de succ`es dans la communaut´e scienti- fique en effet la notion humaine est bas´e sur l’apparence (view centred representation) plutˆot qu’une vision bas´ee sur l’objet. Intuitivement cette repr´esentation semble ad´equate, mais la mod´elisation sous formes de graphes d’aspects demeure complexe. Figure 1.11 – Graphe d’aspects. Deux vues d’un objet, les diff´erentes projections forment un graphe d’adjacence. 20
  • 21.
    Biederman [15] introduitcylindres g´en´eralis´ees d´eformables appel´es geons qui a d´emontr´e que la reconnaissance d’objets peut ˆetre caract´eris´e par l’absence ou la pr´esence de geons (cˆones) dans la sc`ene 3D. De ce fait le r´ealisme na¨ıf qui ´emerge dans descriptions d’objets peut refl´eter les m´ecanismes d’un syst`eme par lequel les objets sont identifi´es. N´eanmoins le mod`ele affronte des limitations pour concr´etiser des entit´es (objets) r´eelles. Figure 1.12 – Repr´esentation des objets `a l’aide des geons. Dans les travaux pr´ec´edents les chercheurs ont mis l’accent sur la d´efinition des ´el´ements primitifs pour mod´eliser les objets. D’autres travaux se sont d’avantage int´eress´e sur la notion de structure g´eom´etrique des objets (relations g´eom´etrique). Fischler et Elschlager [1] ont tent´e de formaliser la connaissance d’un objet en le subdi- visant en plusieurs parties puis en repr´esentant ces parties par un mod`ele en constellation int´egrant la relation entre les diff´erentes parties et la flexibilit´e qu’elles peuvent avoir. 21
  • 22.
    Figure 1.13 –Mod`ele utilis´e par Fischler et Elschlager pour mod´eliser le visage Figure provenant de [1]. Or la tˆache s’est av´er´e rapidement difficile et les efforts se sont tourn´es vers des images plus simples ou encore des environnement contrˆol´es. Ainsi durant les ann´ees 80 et le d´ebut des ann´ees 90, les travaux se sont port´es sur des objets bien centr´es, g´en´eralement avec des fonds uniformes, tels que les caract`eres et visages [16]. Le probl`eme de ces m´ethodes est que les objets ´etaient souvent repr´esent´es par des images elles mˆemes (repr´esentation explicite au moyen d’exemple). les mod`eles n’´etaient donc pas r´esistants aux transformations et variations que peut subir l’image telles que les variations d’apparence et de point de vue. ou encore sur des fonds complexes. Les m´ethodes par ap- prentissage ont apport´es des r´eponses `a ces probl`emes, elles permettaient de produire de classifieurs automatiquement `a partir d’exemples d’apprentissage. D’autres part, les techniques de descriptions d’images ont progress´e. La description d’une image ayant fait l’objet d’un travail consid´erable ont permit l’´emergence de m´ethodes au- jourd’hui classiques. Agrawal et al [17] : d´eveloppe un syst`eme de d´etection de v´ehicule en se basant sur la les mod`eles de recherche d’informations ceci en construisant un vocabulaire visuel `a partir de patchs, Ces patchs sont ensuite regroup´es selon une fonction de similarit´e. Les descripteur de l’image est construit en faisant une corr´elation entre le dictionnaire visuel et un vecteur binaire celui ci d´etermine si un mot visuel est pr´esent ou absent dans une image. ´etant donn´ee un ensemble de donn´ees d’apprentissage marqu´e comme positifs ou n´egatifs chacune de ces donn´ees est convertit en la repr´esentation d´ecrite ci dessus. Un classfieur SNow ( Sparce Network of Winnows) est utilis´e pour l’apprentissage. Pour la phase de la d´etection (localisation) les auteurs utilisent la m´ethodes des fenˆetres glissantes ( sliding window) qui parcourt l’image `a la recherche potentiel d’objets d’int´erˆets. 22
  • 23.
    Vijayanarasilhan et Grauman[17] propose une approche originale pour la d´etection d’objet en effet il propose une m´ethode qui permet d’´eviter l’utilisation des fenˆetres glissantes sachant que celles ci sont couteuse en temps d’ex´ecution. ´Etant donn´e un ensemble de donn´es d’ap- prentissage (images) ou chacune d’elle est segment´e au niveau du pixel (man segmentation) ils entrainent un classifieur pour distinguer les cat´egories d’objets. Pour la d´etection ayant une nouvelle image il effectuent une sur-segmentation en sous r´egions, puis pour chacune de ces sous r´egions on extrait les caract´eristiques associ´e et finalement le classifieur renvoie un score pour chacune des sous r´egions. Un graphe est construit le probl`eme de d´etection est r´eduit au probl`eme MWCS (trouver un sous graphe fortement connexe en maximisant un certain score). Martin et al [18] proposent une m´ethode pour la d´etection et la localisation des fronti`eres dans les images naturelles en utilisant une combinaisons de caract´eristiques locales aux pixels. Un classifeiur est utilis´e pour faire l’apprentissage sur des images ground truth, la sorti du classifeur donne la probabilit´e de la pr´esence d’une fronti`ere `a chaque localisation et orientation dans l’image. Les auteurs utilisent les discontinuit´es au niveau de la luminance ( oriented energy and gradient), les gradients couleurs, ainsi que les gradient au niveau de la texture en utilisant la transform´ees d’Hilbert avec un filtre gaussien. Gao et Fen [19] ont compar´es trois diff´erentes approches pour la d´etection des objets saillants. La premi`ere m´ethode est bas´ee sur la segmentation en utilisant l’algorithme Jseg cette algorithme est int´eressant car il ne permet pas seulement de trouver une homog´en´eit´e dans les couleurs mais aussi il cherche l’homog´en´eit´e de la texture dans une image. Mais cette approche rencontre des limites car elle produit biens souvent une sur-segmentation des r´egions d’un objet la seconde m´ethode (grid based method) bas´e grille permet d’´eviter les erreurs du au processus de segmentation le principe est de partitionner l’image en grille superpos´e (overlapping grid). Les caract´eristiques Sift sont calcul´ees pour chaque grille, L’avantage d’une telle m´ethode et contrairement aux m´ethodes bas´e sur le template matching est de ne pas prendre en consid´eration les portions non significatives des grilles et ce en se concentrant uniquement sur la forme globale d’un objet. Malgr´e cela cette m´ethode devient inad´equate lorsque la grille ne couvre pas les objets saillants d’une image. La troisi`eme m´ethode peut pallier `a ce probl`eme (part based method) bas´ee sur les r´egions ou des parties d’une image. L’id´ee est construire un dictionnaire de patchs extraits d’une image. Pour une image test donn´ee il suffit de calculer ces caract´eristiques est de faire un matching avec le mod`ele. Enfin les auteurs proposent une m´ethode hybride en faisant la combinaison des 3 m´ethodes d´ecrites. Maaoui et al [20] pr´esentent une approche de reconnaissance d’objets bas´ee sur l’utilisation des moments de Zernike appliqu´es `a des images couleur, la d´etection est effectu´e en utilisant une segmentation couleur et l’´etiquetage des composantes connexes et une m´ethode bas´ee sur les Svm est utilis´ee `a l’´etape de l’apprentissage. 23
  • 24.
    Lee et al[21] d´etectent les objet saillants d’une image naturels , il calcule une carte de saillance en appliquant la m´ethode PCA ( principale component analysis) `a la couleur dans les espaces RGB et CIE-Lab une clusterisation des distributions des couleur est ils obtiennent une carte de saillance. la classification objet/fond est obtenue en appliquant une analyse discriminative lin´eaire ( LDA) pour chaque pixel de l’image test. Wang et al [22] pr´esentent une nouvelle approche pour la d´etection de cat´egories d’ob- jets en combinant des descripteurs d’apparence locales et des contraintes contextuelles. Ils construisent une foret de Hough de patchs afin de d´eterminer les emplacements possibles de diff´erents objets, enfin il consid`erent des contraintes d’emplacement spatiales entre les objets dans un espace de vote de Hough afin d’am´eliorer la pr´ecision de la d´etection. Juang et Chen [23] proposent un syst`eme flou pour la d´etection d’objets en temps r´eel `a l’aide d’un svm (TFS-SVMPC). Le syst`eme de d´etection consiste en deux ´etapes : La premi`ere utilise un histogramme globale de couleur de l’objet comme caract´eristique discri- minative, ici en particuliers les auteurs proposent une m´ethode pour calculer l’histogramme afin de permette l’impl´ementation en temps r´eel. La seconde ´etape utilise une caract´eristique g´eom´etriques de d´ependances locales des couleurs des objets comme descripteur pour le mˆeme classifieur. Fulkerson et al [24] proposent une m´ethode pour la localisation d’objets, en utilisant les superpixels plutˆot que les pixels. De la ils construisent un histogramme de caract´eristiques locales pour chaque superpixel. les CRF (Conditional Random Field) sont utilis´es pour la phase de reconnaissance. La plupart des m´ethodes de d´etection d’objets utilisent pour la localisation des objets sur la technique des fenˆetres glissantes, cette technique consiste en une recherche exhaustive sur toute l’image, cette m´ethode est particuli`erement couteuses en temps de calcul. Beaucoup d’avanc´ees dans les m´ethodes sont apparues, en ce sens nous pouvons citer quelques travaux marquants. Le d´etecteur de visages de Viola et Jones [25] qui a inspir´e les d´etecteurs de utilis´es dans les appareils photo num´eriques. Cette m´ethode se base sur une cascade de classifieurs o`u un descripteur de fenˆetre est ´evalu´e par une s´erie de classifeurs qui peuvent choisir de le rejeter ou de continuer les traitements. La cascade permet d’acc´el´erer la classification. Une autre technique int´eressante propos´e par Viola et Jones est celle des images int´egrales cette technique permet d’acc´el´erer consid´erablement le calcul des caract´eristiques. Lampert et al [26] ont trait´e le probl`eme sous un angle diff´erent en se basant sur l’algorithme de S´eparation et ´Evaluation (Branch and Bound). La m´ethode propos´e permet de trouver le maximum global de la fonction de score tout en examinant un nombre restreint de fenˆetres, mais cette m´ethode ne permet pas l’utilisation des classifieurs les plus performants, ceci `a cause des contraintes sur les fonctions de score qui influe sur le choix du classifieur `a utiliser. 24
  • 25.
    D’autres travaux sesont int´eress´es `a la repr´esentations des objets, notons les travaux de Dalal et Triggs [27] ont propos´e un descripteur `a base des histogrammes d’orientations des gradients (HOG) pour la d´etection de personnes, inspir´e de SIFT. le descripteur est calcul´e dans une fenˆetre 64*128 la taille du descripteur (histogramme) est de 3870. La phase d’apprentissage est fait `a l’aide d’un classifieur SVM. La d´etection quant `a elle est effectu´e via une fenˆetre glissante, chaque fenˆetre calcul le descripteur HOG puis le classifieur retourne avec quelle confiance cette fenˆetre contient l’objet d’int´erˆet. D’autres travaux se sont int´eress´ees `a la mod´elisation des objets. Leibe et al [28] proposent une m´ethode des mod`eles implicites de forme (Implicit shape mo- del) qui permet de d’apprendre la relation entre les mots visuels et le masque de segmentation des objets, et sera capable de retrouver dans une nouvelle image. 25
  • 26.
    Chapitre 2 Conception Sommaire 2.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 2.2 Approche 1 : 1-Chebychev . . . . . . . . . . . . . . . . . . . . . . . 27 2.2.1 La segmentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 2.2.2 Repr´esentation de l’image . . . . . . . . . . . . . . . . . . . . . . . 40 2.2.3 Reconnaissance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 2.3 Approche Couleur . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 2.3.1 Repr´esentation des objets . . . . . . . . . . . . . . . . . . . . . . . 48 2.3.2 Construction du mod`ele . . . . . . . . . . . . . . . . . . . . . . . . 49 2.3.3 Appariement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 2.3.4 Localisation des objets . . . . . . . . . . . . . . . . . . . . . . . . . 50 2.3.5 Localisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 2.3.6 Avantages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 2.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 2.1 Introduction Comme pr´ecis´e dans le chapitre pr´ec´edent, la d´etection d’objets reste l’un des principaux sujets de recherche en vision par ordinateur, de part, la complexit´e de la tˆache mais surtout la capacit´e `a s’adapter `a tout types d’environnement. L’objectif de notre travail est de permettre `a un ordinateur de d´etecter et de reconnaitre des objets pr´esents dans une image. Apr`es quelques recherches et apr`es voir pass´e en revue diff´erentes techniques et m´ethodes existantes pour la d´etection d’objets, nous pr´esentons dans ce qui suit notre contribution dans cette tˆache. 26
  • 27.
    La d´etection d’objetspr´esente beaucoup de difficult´es `a diff´erents niveaux, nous pouvons les r´esumer dans ce qui suit : ­ La repr´esentation de l’objet : il est n´ecessaire de repr´esenter de mani`ere discriminative les objets. Nous devons donc concevoir un descripteur robuste aux changements et diverses variations des objets. ­ Il est important de bien d´efinir les classes d’objets, cherchons-nous des cat´egories d’ob- jets ou bien des instances ? ­ La mani`ere de faire la correspondance entre un objet (susceptible d’en ˆetre un) et le mod`ele connu `a priori. (Apprentissage automatique, Template matching,...). ­ La localisation des objets dans une image : ou se trouvent ils ? Comment les extraire ? (Segmentation, parcours exhaustive,...). ­ La complexit´e des algorithmes existants : comment parvenir `a une reconnaissance en temps r´eel ? Toutes ces questions repr´esentent des difficult´es que nous devons surmonter. L’objet de la suite de ce chapitre est de fournir des r´eponses `a ces questions, nous pr´esentons en d´etails nos diff´erents algorithmes. Nous avons con¸cu deux approches diff´erentes pour la d´etection d’objets, nous d´etaillerons une `a une dans la suite de chapitre. 2.2 Approche 1 : 1-Chebychev Dans cette approche nous proposons une m´ethode de reconnaissance bas´ee sur l’utilisation des moments de Tchebychev comme descripteur d’objet. Dans ce qui suit, nous donnerons plus de d´etails sur le syst`eme con¸cu. Figure 2.1 – Syst`eme de reconnaissance. 27
  • 28.
    2.2.1 La segmentation Lasegmentation d’une image est une ´etape cruciale dans la tˆache de la d´etection d’objets. Nous proposons dans cette section diff´erentes m´ethodes que nous avons con¸cu pour segmenter les objets et les extraire du fond. M´ethode 1 : DBscan globale DBscan est un algorithme de clusterisation de donn´ees bas´ees densit´e (denisity based). La tˆache de clusterisation consiste au regroupement des donn´ees selon un crit`ere de similarit´e. DBscan permet de regrouper des points ( Des donn´ees) denses en un seul cluster. Les clusters obtenues forment des hyper-sph`eres. DBscan utilise deux param`etres, la distance (epsilon) et MinPts. la distance repr´esente le rayon ou peut s’´etendre le cluster, MinPts lui repr´esente le nombre de points minimum pour qu’un ensemble de points soit consid´er´e comme cluster. L’un des avantages quant `a l’utilisation de cette m´ethode est le fait de ne pas connaitre `a priori le nombre de clusters, contrairement `a d’autres m´ethodes de clusterisation. Dans le cas des images, il s’agit de regrouper les pixels proches et ayant une certaine similarit´e en un cluster, ici nous appliquons DBscan d’une mani`ere diff´erente. Le rayon de recherche est ´etendu `a toute l’image, nous calculons donc la similarit´e d’un point avec tous les autres points de l’image. c’est une exploration globale de l’image, ceci permet de regrouper des points plus ou moins ´eloign´es portant les mˆemes caract´eristiques. 28
  • 29.
    Donn´ees : Iimage. S : seuil de comparaison. MinPts : nombre de pixel minimum dans un cluster. R´esultat : Image labellis´ee Debut Label=0 pour tout pixel P dans L’image faire si P est non visit´e alors marqu´e P comme visit´e ListePixels< −− genererSimilaire(P, seuil) si || ListePixels|| < Minpts alors marquer P comme bruit ; fin sinon /* incrementer le label */ Label< −− Label +1 clusterisation(P, Label,ListePixels) fin fin fin Fin Algorithme 1: Algorithme de la premi`ere m´ethode. La fonction g´en´erer Similaire retourne la liste des points portant les mˆemes caract´eristiques que celui re¸cu en argument. la fonction clusterisation permet d’´etendre le cluster et de labeliser chaque ´el´ement du cluster. Donn´ees : I : P pixel .ListePixels : contient les ´el´ements similaires au pixel P. R´esultat : cluster labelis´e Debut pour chaque ´el´ement e dans ListePixels faire /* g´en´erer sa liste de points similaire */ ListeSim< −−g´en´ererSimilaire(e,seuil) si || ListeSim|| > Minpts alors fusionner(ListeSim,ListePixels) fin fin Fin Algorithme 2: Proc´edure de Clusterisation. 29
  • 30.
    Cette approche s’estav´er´ee efficace en terme de clusterisation, de plus elle est r´esistante aux changement de gradients et de luminance pr´esents dans l’image, la m´ethode est robuste aux variations locales de l’image. Figure 2.2 – R´esultat de segmentation avec DBscan globale. Gauche : Image originale. Droite : Image segment´ee labellis´ee. Malgr´e ces avantages la m´ethode est couteuse en temps de calcul car chaque pixel est compar´e avec l’ensemble des pixels de l’image. Pour pallier `a cette d´eficience nous proposons une am´elioration `a l’algorithme 1. M´ethode 2 : DBscan locale Dans cette m´ethode nous explorons l’image de mani`ere locale et non pas globale. Cette fois ci les pixels sont compar´es avec leurs voisinages imm´ediats, de mani`ere analogue `a la m´ethode des composantes connexes. Nous comparons chaque pixel aux pixels adjacents, le rayon de recherche est fix´e `a 1, contrairement `a la premi`ere, cette m´ethode est rendue sensible aux changements de gradients, couleurs, et autres variations locales. La m´ethode pourrait mener `a une sur-segmentation, ceci est dˆu principalement au fait de comparer les niveaux de gris des pixels. 30
  • 31.
    Donn´ees : Iimage. S : seuil de comparaison. MinPts : nombre de pixel minimum dans un cluster. R´esultat : Image labellis´ee Debut Label=0 pour tout pixel P dans L’image faire si P est non visit´e alors marqu´e P comme visit´e ListePixels< −− genererSimilaire(P, seuil) si || ListePixels|| < Minpts alors marquer P comme bruit ; fin sinon /* incrementer le label */ Label< −− Label +1 clusterisation(P, Label,ListePixels) fin fin fin Fin Algorithme 3: Algorithme de la deuxi`eme m´ethode. La fonction g´en´erer voisins Similaires retourne cette fois ci la liste des points adjacents (8 connexit´e) portant les mˆemes caract´eristiques que celui re¸cu en argument. Figure 2.3 – R´esultat de segmentation avec DBscan locale en utilisant les niveaux de gris. Gauche : Image en niveau de gris. Droite : Image labellis´ee, nous obtenons une sur- segmentation. 31
  • 32.
    Pour pallier `ace probl`eme Nous avons donc alors opt´e pour un changement dans l’espace des couleurs, nous avons exploit´e l’espace HSV au lieu de travailler avec les niveaux de gris. Nous avons choisi l’espace HSV car cette repr´esentation des couleurs est plus proche de la perception humaine. En utilisant cette fois que la composante Hue (Teinte). Figure 2.4 – Gauche : Image convertit dans l’´eespace HSV. Droite :R´esultat de segmentation avec DBscan locale en utilisant la Teinte. Le temps d’ex´ecution de cette m´ethode, contrairement `a la premi`ere, est nettement plus r´eduit, le temps de r´eponse est instantan´e, ceci est dˆu au fait d’explorer l’image localement, chaque pixel avec son voisinage. les r´esultats de cette segmentation sont proches de la notion d’objets car les objets ont plus ou moins les mˆemes caract´eristiques. Figure 2.5 – Gauche : Rsultat de segmentation avec DBscan locale en utilisant le Teinte. Droite : Localisation des objets. N´eanmoins pour des images ayant des objets et des fonds fortement textur´e, la m´ethode trouve ses limites. voir Figure 2.2.1 32
  • 33.
    Figure 2.6 –Gauche : Image convertit dans l’espace HSV. Milieu :R´esultat de segmentation avec DBscan locale en utilisant la Teinte. Droite :R´esultat de segmentation l’objet n’est pas d´etect´e. Nous avons donc par la suite con¸cu une autre m´ethode pour la segmentation. M´ethode 3 Afin d’apporter une solution aux limitations des algorithmes pr´ec´edents, nous proposons ici une toute autre approche. La figure suivante illustre le principe de notre m´ethode. Sch´ema r´ecapitulatif de notre m´ethode : Figure 2.7 – Organigramme de la m´ethode. 33
  • 34.
    Binarisation L’´etape de labinarisation est une ´etape cl´e dans notre algorithme, le but de cette ´etape est de permettre l’extraction des objets de leurs fond, il nous faut distinguer les pixels ap- partenant certainement aux objets et le pixels appartenant au fond. Le probl`eme qui se pose est celui du choix d’un seuil pour la binarisation, en effet chaque image `a une distribution de niveau de gris qui lui est propre, comment choisir alors un seuil et surtout savoir l’adapter `a chaque image ? Le seuillage n’est pas n´ecessairement une op´eration qui s’effectue manuellement, la valeur d’un seuil peut ˆetre obtenue de mani`ere automatique. Notre d´emarche pour faire cela est d’estimer deux seuils `a partir de l’histogramme des niveaux de gris associ´e `a l’image. Le but est de trouver les meilleurs seuils permettant de s´eparer deux populations, l’une serait le fond et l’autre les objets. Le principe est de parcourir l’histogramme des nivaux de gris, en r´ecup´erant les mini- mums et les maximums locaux significatifs ( une grande variation dans l’histogramme c.`a.d. un changement brusque dans les fr´equences des valeurs). Enfin parmi eux choisir les meilleurs seuils qui encadrent la distribution de tel sorte a englober les valeurs qui se r´ep`etent le plus. Figure 2.8 – Repr´esentation des minimums et maximums locaux sur l’histogramme. 34
  • 35.
    Figure 2.9 –Bas : Extraction des minimums et maximums locaux `a partir de l’histogramme. Donn´ees : I Image I. seuil1, seuil2 R´esultat : Image binaris´ee B. Debut pour tout pixel P dans Image faire si P<seuil1 ou P > seuil2 alors P< −−255 /* pixel en blanc */ fin sinon P< −−0 /* pixel en noir */ fin fin Fin Algorithme 4: Algorithme de Binarisation. Nous pouvons illustrer par l’exemple suivant voir figure Figure 2.10 Figure 2.10 – Gauche : Image binaris´ee. Droite :Histogramme des niveaux de gris ainsi que les seuils min et max en rouge. 35
  • 36.
    Donn´ees : IImage I. R´esultat : Seuil seuil1, Seuil seuil2. Debut HistoBin : /* vecteur accumulateur de 256 ´el´ements */ ListeMin, ListeMax /* listes contenant respectivement les minimums locaux (les maximums locaux), initialement vides. */ DiffMin, DiffMax /* listes contenant respectivement les changements de fr´equences des min locaux (max locaux) */ Vc, Vp /* valeur courante, valeur pr´ec´edente. */ Bool change= faux /* variable utilis´ee pour le changement de signe */ pour toute Vc de HistoBin faire si Vc−Vp> s1 alors si change=faux alors ajouter Vp `a ListeMin ajouter `a DiffMin (Vc−Vp) fin change=vrai fin si Vc−Vp < s1 et Vc−Vp >= 0 alors change= vrai fin si Vc−Vp < s2 alors si change=vrai alors ajouter Vp `a ListeMax ajouter `a DiffMax (Vc−Vp) fin change=faux fin si Vc−Vp <= 0 et Vc−Vp > s2 alors change=faux fin fin /* extraction des seuils */ /* 1.Parcourir ListeMax extraire la valeur Max celle ci repr´esente la valeur la plus fr´equente dans l’histogramme. */ /* 2. fractionner ListeMin en deux selon Max L1 et L2 tel que toutes les valeurs de L1 sont inf´erieur `a Max et inversement toutes les valeurs de L2 sont sup´erieur `a Max. */ 3.pour chaque ´el´ement x de L1 faire /* eliminer x s’il existe un element y dans ListeMax tel que x > y */ fin 4.seuil1< −− Minimum de L1. 5.pour chaque ´el´ement x de L2 faire /* eliminer x s’il existe un element y dans ListeMax tel que x < y */ fin 6.seuil2< −− Maximum de L2. Fin Algorithme 5: Algorithme d’extraction de seuils pour la Binarisation. 36
  • 37.
    Le choix duseuil permet de distinguer les objets du fond mais le r´esultat n’est pas tou- jours pertinent. L’image binaire obtenue comporte beaucoup de pixels marqu´es en blanc appartenant aux diff´erentes r´egions de l’image (le fond ´etant inclus). ´Erosion Pour ´eliminer cela nous allons proc´eder `a une ´erosion de l’image afin de retenir les pixels appartenant uniquement aux objets. Nous allons donc proc´eder `a l’´erosion de l’image binaire plusieurs fois. Figure 2.11 – Image binaris´ee apr`es ´erosion. Dilatation Il reste encore quelques pixels n’appartenant pas aux objets d’int´erˆets mais nous ne pou- vons en ´eliminer d’avantage avec l’´erosion, nous avons alors vu le probl`eme autrement, au lieu d’isoler les objets nous cherchons `a retrouver le fond, en effet en partant du principe que ce qui n’appartient pas aux objets appartient forcement au fond. Pour cela nous appliquons une dilatation sur l’image binaris´ee suivie d’une inversion, la Fi- gure 1.10 repr´esente cette ´etape. Le fond dans cette image est marqu´e en gris. Figure 2.12 – Image binaris´ee apr`es dilatation puis inversion. 37
  • 38.
    Nous avons deuximages, l’une ´etant l’´erosion de l’image binaire et l’autre la dilatation, nous proc´edons `a une superposition des deux images `a l’aide d’une simple somme logique, nous obtenons ainsi une image `a trois niveaux de gris blanc noir et gis moyen comme l’illustre la Figure 1.12 Figure 2.13 – Superposition des deux images pr´ec´edentes. A cette ´etape, nous avons une image combin´ee, ce dont nous sommes certains est de la nature des point marqu´es en gris moyen et blanc , en effet nous sommes savons que les points en blanc appartiennent aux objets et que les points marqu´es en gris moyen appartiennent au fond. les r´egions marqu´es en noir sont quant `a elle ”incertaines” celles ci peuvent appartenir au fond comme aux objets. Il nous faut donc d´eterminer si ces r´egions appartienne bien aux objets ou bien si elles font partie du fond. Il s’agit donc de trouver les fronti`eres des objets dans ces r´egions. La Segmentation L’id´ee de base de notre algorithme est d’attribuer aux r´egions ”incertaines” un label de fond ou bien celui d’objet. Le principe est le suivant, si une r´egion incertaine est entour´ee compl`etement par une r´egion marqu´e comme fond (gris moyen) et qu’elle ne contient pas de blanc alors certainement cette r´egion appartient au fond. Par contre si cette r´egion entoure une r´egion marqu´ee comme objet (blanc) alors une partie de cette r´egion incertaine fait partie de l’objet. De l`a, nous d´eterminons les fronti`eres des objets car cette r´egion contient forcement les fronti`eres des objets. La figure 2.14 illustre le principe de la segmentation. 38
  • 39.
    Figure 2.14 –´Etapes de segmentation d’objets : les r´egions marqu´es en blanc s’´etendent jusqu’aux fronti`eres des objets. Donn´ees : I Image I fusion. R´esultat : Image S segment´ee. Debut Mat : matrice bool´eenne de la taille de l’image I. pour tout p de l’image. faire si P est marqu´e Noir alors P< −−gris /* marquer en gris. */ marquer Mat[p]=vrai fin fin pour tout pixel p de l’image fusion faire si P est marqu´e en Blanc alors /* ´Etendre le blanc jusqu’aux fronti`eres. */ 1. ´Etendre le voisinage de chaque pixel ( 8 pixels voisins). 2.Lors de l’extension, les fronti`eres repr´esentent les pixels avec les plus hauts gradients dans cette r´egion. fin fin Fin Algorithme 6: Algorithme de Segmentation. La Figure 2.15 illustre les r´esultats de la segmentation. 39
  • 40.
    Figure 2.15 –R´esultats de la segmentation. -Gauche : fronti`eres des objets. -Milieu :Seg- mentation des objets. Droite : r´esultat final, extraction des objets. 2.2.2 Repr´esentation de l’image Les moments jouent un rˆole tr`es important dans la reconnaissance d’objets. Ce sont des quantit´es scalaires utilis´ees pour repr´esenter une fonction de mani`ere significative. Habituellement utilis´ees en statistiques, nous introduisons les moments de Tchebychev comme descripteur d’objets. Les moments de Tchebychev ont ´et´e introduit par R Mukundan en 2001 [29] ,les moments de Tchebychev permettent de d´ecrire une fonction (une distribution de points) de mani`ere pr´ecise . D’un point de vue math´ematique, il s’agit des diff´erentes projections dans un espace orthonorm´e, en vision, cela permet de d´ecrire la forme d’une image d’un objet dans le cas de la reconnaissance. Les moments de Tchebychev d’ordre p+q , associ´e `a une image de taille N ∗N est donn´ee par : 40
  • 41.
    L’utilisation des momentsde Tchebychev pr´esente beaucoup d’avantages compar´e `a l’uti- lisation d’autres moments. Ceux ci peuvent ˆetre ´enum´er´es comme suit : ­ Les moments de Tchebychev sont orthogonaux : la condition d’orthogonalit´e est v´erifi´ee (voir chapitre pr´ec´edent) cette propri´et´e permet d’´eliminer la redondance d’information, car la base polynomiale est orthogonale, cela veut dire que pour un moment donn´e r une projection repr´esente une partie de l’image. ­ Les moments de Tchebychev sont discrets ce qui permet d’exploiter directement les points de l’image (coordonn´es), cela permet d’´eliminer les approximations num´eriques. ­ Les moments de Tchebychev sont r´esistants aux variations d’´echelle et de translation. ­ L’utilisation des moments de Tchebychev convient aux images sym´etriques et asym´etriques contrairement aux moments de Legendre avec des images sym´etriques. ­ Les moments de Tchebychev permettent la reconstruction de l’image originale. Malgr´e ces avantages, en pratique, le calcul des moments de Tchebychev s’av`ere couteux en terme de temps. Il est indispensable dans notre probl`eme de se rapprocher le plus de la notion de temps r´eel sans perdre pour autant de la robustesse et la pr´ecision qu’apporte cette repr´esentation. Dans cette optique nous avons propos´e une variante quant `a l’utilisation classique. Plu- sieurs modifications ont ´et´e apport´ees dans le sens de cette d´emarche. 41
  • 42.
    Dans la litt´eratureles moments sont calcul´es jusqu’`a un ordre donn´e c’est `a dire que pour calculer les moments d’ordre n il faut aussi calculer les ordres pr´ec´edents (0, 1, 2, , , , n − 1) cela est important pour capturer tous les d´etails d’une image `a l’aide des diff´erentes projec- tions. Mais est il n´ecessaire de calculer tous les ordres pr´ec´edents ? est il n´ecessaire d’avoir des d´etails sur toutes les projections `a diff´erents ordres ? Pour la reconstruction de l’image il est ´evidement important d’avoir toutes les projection afin de retrouver le plus fid`element l’image originale. Cependant la complexit´e du calcul num´erique des moments est un r´eel obstacle. Nous propo- sons alors de calculer les moments `a un ordre donn´e sans tenir compte des ordres pr´ec´edents. ceci revient `a utiliser l’une des projections pour d´ecrire un objet. Nous pourrions nous deman- der si c’est est bien suffisant ? nous pouvons d´emontrer cela en proc´edant `a une reconstruction de l’image avec notre m´ethode, `a diff´erents ordres ainsi qu’avec la m´ethode de calcul classique. Figure 2.16 – Reconstruction `a diff´erents ordres avec notre calcul des moments ainsi qu’avec le calcul classique de ceux ci. 42
  • 43.
    Nous remarquons lachose suivante : plus l’ordre est ´elev´e (jusqu’`a un certain ordre) plus la reconstruction est pr´ecise. Il est ´evidement logique que la reconstruction ne permet pas de retrouver l’image originale dans son int´egralit´e. Cependant, la forme globale reste la mˆeme. Nous obtenons donc une repr´esentation globale de l’image dans notre cas de l’objet, cela permet donc de repr´esenter de mani`ere globale la forme de l’objet, cela s’adapte parfaitement `a notre probl`eme. Nous n’avons pas besoin d’autant de d´etails aussi fins car nous cherchons `a retrouver des cat´egories d’objets. De plus, l’avantage notable est la r´eduction de la complexit´e algorithmique, le temps de calcul des moments est remarquablement plus r´eduit compar´e au calcul classique pour le mˆeme ordre. Les moments de Tchebychev sont habituellement utilis´es sur des images en niveau de gris ou encore sur des image binaire, notre but est de modifier le descripteur afin que nous puissions int´egrer l’information couleur, ceci permet de distinguer des objets ayant des formes identiques mais pourtant diff´erents, nous obtenons un niveau plus ´elev´e de pr´ecision. Il s’agit de rajouter dans le descripteur de nouveaux ´el´ements choisis comme ´etant les param`etres dans l’espace Rgb. Une autre modification et am´elioration consiste en l’application des moments de Tcheby- chev sur des images contours,comme propose Dahmani dans les travaux pr´ec´edents [30] en introduisant les contours internes pour le calcul des moments. Pour cela nous appliquons le filtre Canny sur nos images, ceci permet de r´eduire consid´erablement le temps de calcul des moments, de plus les contours donnent une assez bonne repr´esentation d’un objet, en effet la forme de l’objet est pr´eserv´ee, nous ne perdons pas l’information sur la forme globale de celui ci. Comme mentionn´e auparavant les moments de Tchebychev sont robustes aux changement d’´echelles, ainsi qu’aux multiples prises de vues, par contre un des majeur probl`eme de ces moments, est que ces derniers sont sensibles `a la rotation. En examinant les r´esultats obtenus en appliquant les moments de Tchebychev sur diff´erents angles de rotation (quatre axes principaux) pour le mˆeme objet, nous avons remarqu´e une certaine relation dans les nombres (moments) obtenues. 43
  • 44.
    Figure 2.17 –L’effet de la rotation sur les descripteurs `a diff´erents ordres. Nous avons observ´e les points suivants : ­ Nous avons un objet, nous lui appliquons les moments de Tchebychev, ce qui a pour r´esultat de nous donner un vecteur avec un certain nombre de valeurs, lorsque l’objet connait une rotation de 180 degr´es, nous avons remarqu´e que les valeurs du vecteur cit´e sont multipli´ees par −1, ­ Nous avons un objet, nous lui appliquons les moments de Tchebychev, nous obtenons alors un vecteur avec un certain nombre de valeurs, lorsque l’objet connait une rotation de 90 degr´es et que l’on applique de nouveau les moments de Tchebychev, nous obte- nons un vecteur de valeurs. En apparence ces valeurs semble al´eatoires mais en fait elles ne le sont pas. Nous avons r´eussit `a trouver une r`egle g´en´erale, un algorithme capable de d´eterminer le signe de chaque valeur du descripteur. Nous avons remarquer la chose suivante : L’ordre P intervient dans le changement du signe du vecteur, si P est paire, les valeurs du vecteur sont les mˆemes, par contre si P est impaire, il y a changement de signe du vecteur, ce dernier est multipli´e par -1, de plus l’image miroir du vecteur est cr´ee. Nous avons ´elaborer une formule qui permet de d´efinir cette relation math´ematique. cette formule est la suivante : 44
  • 45.
    La formule (1) devientalors : Donn´ees : I image. R´esultat : d1, d2 ,d3, d4 : Descripteurs des quatre axes de rotation respectivement 0, 90, 180,270 degr´es Debut /* Calcul des moments ainsi que les moments avec rotation de 90 degr´es */ /* Ordre P+Q */ si P est paire alors /* m^eme signe de la valeur */ d2[i]= d1[i] fin sinon /* changer le signe */ d2[i]= (-1) * d1[i] fin d2= image miroir de d2 /* calcul des descripteurs aux rotations 180 et 270 degr´es respectivement. */ d3= (-1)* d1 d4= (-1)* d2 Fin Algorithme 7: Algorithme de la rotation 1-Chebychev. 45
  • 46.
    Cette nouvelle formulepermet d’obtenir les descripteurs d’un objet lorsque celui ci est soumis `a une rotation β avec β appartenant `a (90, 180, 270) degr´es. De cette mani`ere l’utilisation d’un seul quadrant dans le cercle trigonom´etrique nous suffira pour trouver le descripteur de l’objet pour tous les angles. Puisque l’on peut obtenir les descripteurs des rotations sur les quatre axes principaux et ce pour n’importe quel angle. Figure 2.18 – Influence de l’ordre et la rotation sur le calcul des moments. 2.2.3 Reconnaissance Les moments de Tchebychev calcul´es pr´ec´edemment ainsi que la classe de chaque objet forment un ensemble d’apprentissage (xi, yi) i = 1..M ou chaque yi appartient `a 1..N si nous avons N classes diff´erentes. Notre objectif est de construire une fonction f(x) qui estime les d´ependances entre les exemples xi et les classes yi et qui minimise le risque d’erreur de classification pour un point x donn´e n’appartenant pas `a la base d’apprentissage. A l’origine, les SVM ont ´et´e con¸cus essentiellement pour les probl`emes `a 2 classes, o`u la sortie ne peut avoir que deux valeurs 0 ou 1. Cette approche a ´et´e modifi´e pour g´erer les tˆaches multi-classes adapt´es `a notre probl`eme de reconnaissance d’objets. Plusieurs approches permettant d’´etendre cet algorithme aux cas `a N classes ont ´et´e propos´ees. La m´ethode que nous utilisons dans cette approche, est une m´ethode dite ”un contre tous” (r´ef). L’id´ee est donc de construire une fonction qui, en ayant de nouvelles donn´ees, pr´edira correctement la classe `a laquelle la nouvelle entr´ee appartient. Cela peut ˆetre r´ealis´e en d´ecomposant le probl`eme de classification multi-classes en de multiples probl`emes de classi- fication binaires, et puis d’utiliser le principe de vote majoritaire pour pr´edire l’´etiquette (la sortie). Le processus est de r´esoudre K diff´erents probl`emes binaires : classifier la ”classe k” contre 46
  • 47.
    ”le reste desclasses” pour k = 1, . . . , K. Tel que K est le nombre d’objets pr´esents dans notre classe, ainsi chaque classifieur binaire probabiliste not´e Ci permet de donner une probabilit´e d’appartenance de l’objet de test `a la classe i. Puis d’attribuer un ´echantillon de test pour la classe qui donne la plus grande valeur fk(x), ou fk(x) est la solution du k `eme probl`eme. Critiques Notre m´ethode malgr´e les avantages qu’elle pr´esente et sa robustesse aux va- riations des objets ( rotation, occlusion, ´echelle), notre m´ethode trouve ses limites avec des images de sc`enes r´eelles. cela est du aux r´esultats de la segmentation en effet la segmenta- tions peut ˆetre difficiles dans des sc`enes r´eelles car il est difficile d’extraire et de distinguer les objets dans ces images. La figure suivante montre un exemple de segmentation d’une sc`ene r´eelle. Figure 2.19 – R´esultat de segmentation dans une sc`ene r´eelle. Gauche : Image de la sc`ene. Droite : Image segment´ee, mˆeme si nous arrivons `a extraire les objets du fond, nous ne pouvons les distinguer. 2.3 Approche Couleur Dans l’approche pr´ec´edente la localisation ´etait bas´e sur la segmentation. H´elas les m´ethodes de segmentations les plus ´elabor´ees ne permettent pas de segmenter des sc`enes complexes. Nous proposons une autre approche pour la d´etection et la reconnaissance d’objets. Celle ci est diff´erente de la premi`ere, elle est bas´ee sur la description des objets `a l’aide de l’informa- tion couleur. Nous d´etaillons dans la suite de ce chapitre le syst`eme de reconnaissance con¸cu, la figure suivante illustre le syst`eme de reconnaissance. 47
  • 48.
    Figure 2.20 –Syst`eme de Reconnaissance de la seconde m´ethode. 2.3.1 Repr´esentation des objets La repr´esentation d’objets est bas´ee sur l’utilisation de la distributions des couleurs de l’objet, les couleur associ´es `a un objet sp´ecifique sont uniques. Un fruit, un arbre, un panneaux routier, une chaise ... etc. Chacun de ces objets `a une certaine distribution des couleurs qui lui est associ´e. L’opacit´e des objets peut ˆetre aussi une caract´eristique discriminative pour une instance donn´ee d’un objet. Nous avons d´ecrit un objet `a l’aide des composantes RGBα, ou alpha est l’information d’opacit´e. le processus du calcul du descripteur est d´ecrit comme suit : Normalisation La normalisation est une ´etape essentielle, les couleurs peuvent varier, le moindre chan- gement de couleur change donc la d´efinition du descripteur. Pour cela nous proposons la formule suivante pour normaliser les couleurs. E(Cx/D) ∗ D + D/2 E d´esigne la partie enti`ere, D repr´esente la quantification utilis´ee, elle d´esigne la limitation du nombre de couleurs diff´erentes que peu prendre une couleur. cette normalisation permet `a diff´erentes plages de valeurs d’avoir la mˆeme composante couleur. il s’agit de r´eduire le nombre de couleur possible. Signature Une fois les couleurs extraites, nous proc´edons au calcul des fr´equences d’apparition de celles ci, non pas de la mani`ere d’un histogramme car la structure d’un dictionnaire est diff´erentes de celle d’un histogramme et permet de d´efinir autrement les occurrences des 48
  • 49.
    couleurs. Le dictionnaireest stock´e sous forme de table de hachage ceci permet l’acc`es directe aux donn´ees (complexit´e o(1)). 2.3.2 Construction du mod`ele Cette ´etape permet de construire un mod`ele `a partie d’une base d’image nous calculons uns signature pour chaque objet de la base de la mani`ere suivante : Donn´ees : Bg :Image de fond. Fg :Image de la base avec objet. R´esultat : d3 :Descripteur de l’objet. Debut 1. Cr´eer les signatures des deux images Fg et Bg, d1 et d2 d´esigne dans l’ordre les descripteur de Fg et Bg. pour tout entr´ee C dans d2 faire si C n’existe pas dans d1 alors Ajouter C `a d3 avec freq(C) fin sinon /* si la couleur existe v´erifier si fr´equence est sup´erieur `a un certain seuil. */ si freq(C) dans d2 est >= `a seuil*freq(C) d1 alors Ajouter C `a d3 avec freq(C) fin fin fin Fin Algorithme 8: Algorithme de la premi`ere m´ethode. Une fois notre mod`ele construit, nous pouvons proc´eder `a la reconnaissance la d´emarche est diff´erentes de la premi`ere approche ( 1-Chebychev) nous cherchons a reconnaitre les objets du mod`ele de plus nous n’utilisons pas les techniques d’apprentissage automatique. Il s’agit de reconnaitre les instances d’objets et non des cat´egories d’objets. Cela dit si le mod`ele contient assez d’exemples d’instances nous pourrions consid´erer un ensemble d’instances portant le mˆeme label (la mˆeme cat´egorie) comme formant un sous ensemble d’une cat´egorie. Dans l’absolue ceci ne mod´elise pas r´eellement la cat´egorie, mais en pratique cela semble int´eressant et compl´ementaire. la dualit´e entre instances et cat´egories pourrait ˆetre d´epass´ee. En effet des m´ethodes d’aujourd’hui ne s’int´eresse qu’`a trouver une cat´egorie bien particuli`ere, exemple : voiture, pi´etons, visages. Et dans le cas des instances les syst`emes ne reconnaissent qu’un objet particulier `a un instant donn´ee. Nous pr´esentons une forme interm´ediaire aux deux aspects de la reconnaissance (instance et cat´egorie). Un autre point important est que cette mani`ere de proc´eder ´elimine le probl`eme de la va- riabilit´e intercalasse ainsi que le probl`eme de similarit´e interclasse. Le fait d’ˆetre aussi pr´ecis dans la description d’un instance d’objet ´elimine ces probl`emes par exemple : deux objets ap- partenant `a la mˆeme cat´egorie pourtant diff´erents obtiennent des descripteurs diff´erents, mais 49
  • 50.
    puisqu’ils porte lemˆeme label donc les objets seront retrouv´es, et inversement si deux objets n’appartiennent pas `a la mˆeme cat´egories peuvent ˆetre similaire et avoir des descripteurs proches nous pouvons tout de mˆeme les distingu´es. 2.3.3 Appariement Une fois mod`ele construit nous devons faire la correspondance entre les objets d’une sc`ene et le mod`ele . Nous expliquons dans ce qui suit notre d´emarche quant au Matching. Ayant une nouvelle image d’une sc`ene nous proc´edons tout d’abord au calcul de sa si- gnature de la mˆeme mani`ere d´ecrite pr´ec´edemment. Donc nous calculons les fr´equences des couleurs normalis´ee de toute la sc`ene, nous obtenons alors un dictionnaire des couleurs de la sc`ene. Donn´ees : I :Image de la sc`ene. R´esultat : L :liste d’objets pr´esents dans la sc`ene. Debut Cmp : compteur /* afin de calculer le pourcentage de valeurs existantes. */ 1. Cr´eer ds la signature de I. /* Charger le fichier descripteur de la base. */ pour tout descripteur d faire pour tout entr´ee C dans d faire si C existe dans ds alors Cmp=Cmp+1 /* incr´ementer */ fin fin si Cmp / taille d > seuil alors L< −− Label(d) fin fin Fin Algorithme 9: Algorithme de Matching. 2.3.4 Localisation des objets La localisation des objets est appliqu´ee par la m´ethode des fenˆetres glissante, cette m´ethode consiste `a parcourir l’image avec une fenˆetre rectangulaire balayant ainsi toute l’image. La signature de chaque fenˆetre est alors calcul´ee pour d´eterminer la pr´esence des objets reconnus. 50
  • 51.
    Tel qu’est d´efinitnotre descripteur, la d´etection et reconnaissances d’objets pr´esente les avantages suivants : • Il est robuste `a la rotation, aux changement de point de vue, ainsi qu’aux changement d’´echelle. Notre syst`eme permet la d´etection d’objet partiellement occult´es ceci est rendu possible grˆace au seuil utilis´e pour la matching (voir section pr´ec´edente). • un autre avantage est la rapidit´e du calcul des descripteurs ainsi que la rapidit´e dans la phase de Mathcing. La m´ethode cependant rencontre les inconv´enients que nous ´enum´erons comme suit : • Morphologie : la couleur `a elle seule ne permet pas de retrouver l’objet il est possible que les couleurs d’un objet se trouve dans la sc`ene alors que l’objet n’y est pas pr´esent, il faut donc d´efinir une relation spatiales entre les points des objets. • La localisation des objets avec la m´ethodes des fenˆetres glissantes est couteuse en temps de calcul. Nous proposons une am´elioration afin de pallier `a ces probl`emes en int´egrant l’information spatiales de l’objet. Cette fois ci nous modifions les descripteurs en ajoutant les informations suivantes : Nous calculons d’abord le centre de l’image d’apprentissage, puis nous calculons certaines caract´eristiques de ce centre, ces caract´eristiques sont la couleur et le gradient. Le centre de l’image d’apprentissage ne repr´esente pas le centre de l’objet mais un point de l’objet. Le gradient test calcul´e avec le masque suivant : De plus nous choisissons 8 points,que nous deffinissons comme suit : Nous avons choisis 4 points du contours qui co¨ıncide avec les deux axes de l’image horizontal est vertical passant par le centre O nous les notons A, B, C, D (list´ee en rouge dans la figure 2.21). 51
  • 52.
    Figure 2.21 –Repr´esentation d’un objet en prenant en compte l’information spatiales de points d´efinis. Ainsi que les points `a mis distance les long des deux axes a, b, c, d , `a ces points nous calculons les distances par rapport au centre O ainsi que leurs couleurs nous calculons aussi un histogramme des normes de gradient des points a, b, c, d le descripteur devient alors : 2.3.5 Localisation Une fois objet reconnu (pr´esent) dans la sc`ene nous proc´edons `a la localisation de la mani`ere suivante : • Chercher tous les points de l’image ayant les mˆemes caract´eristiques (couleur, gradient) que le centre O. Figure 2.22 – calcul des points candidats. 52
  • 53.
    • Pour d´eterminerles bonnes postions nous utilisant le points suppl´ementaires, ensuite nous essayons de faire une superposition des 2 axes ( mod`ele de l’objet en constella- tion ) sur chacun des points candidats extraits pr´ec´edemment toujours en faisant un appariement en comparent les caract´eristiques calcul´ees pr´ec´edemment. Figure 2.23 – 2 Superposition des deux axes sur les diff´erents centres possibles, une seule superposition est correcte. Il faut n´eanmoins r´egler encore les probl`emes li´es `a l’´echelle ainsi qu’`a la rotation. L’´echelle : Nous avons proc´ed´e `a une normalisation du vecteur des distances, en multipliant le vecteur distance par un facteur multiplicatif. La rotation : Pour r´egler le probl`eme de la rotation, nous avons appliqu´e une rotation au vecteur des distances car la relation d’ordre entre les points est pr´eserv´ee lors de la rotation. Ceci pour les quartes angles principaux. Cette localisation est appliqu´ee `a tous les objets reconnus au pr´ealable. Ce qui la rend nettement plus rapide, compar´ee `a la m´ethode des fenˆetres glissantes. 2.3.6 Avantages Le principale avantage de cette approche est la rapidit´e pour des sc`enes complexes et des images `a haute r´esolution la r´eponse est quasiment instantan´ee. La localisation des objets est efficace et pr´ecise, ceci revient et ceci sans utiliser de segmen- tation. L’approche est robuste aux changement d’´echelle, rotation, ainsi qu’`a l’occlusion. 53
  • 54.
    2.4 Conclusion Dans ceChapitre, nous avons pr´esent´e en d´etails nos deux approches de d´etection et reconnaissance d’objets. Le troisi`eme et dernier chapitre sera consacr´e `a la pr´esentation des r´esultats obtenus qui seront soumis aux crit`eres de temps d’ex´ecution et celui de la pr´ecision pour valider nos approches. 54
  • 55.
    Chapitre 3 Impl´ementation Sommaire 3.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 3.2 Environnement de travail . . . . . . . . . . . . . . . . . . . . . . . . 56 3.2.1 Environnement logiciel . . . . . . . . . . . . . . . . . . . . . . . . 56 3.2.2 Environnement mat´eriel . . . . . . . . . . . . . . . . . . . . . . . . 56 3.3 Pr´esentation de la base d’apprentissage . . . . . . . . . . . . . . 57 3.3.1 Base de donn´ees COIL-100 . . . . . . . . . . . . . . . . . . . . . . 57 3.3.2 Base de donn´ees ETH-80 . . . . . . . . . . . . . . . . . . . . . . . 58 3.3.3 Acquisition des deux bases . . . . . . . . . . . . . . . . . . . . . . 59 3.4 Pr´esentation de l’interface graphique . . . . . . . . . . . . . . . . 59 3.4.1 Premi`ere Approche . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 3.4.2 Deuxi`eme approche . . . . . . . . . . . . . . . . . . . . . . . . . . 63 3.4.3 Troisi`eme approche . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 3.5 Apprentissage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 3.5.1 Choix de la fonction du noyau . . . . . . . . . . . . . . . . . . . . 68 3.5.2 Principe de l’apprentissage . . . . . . . . . . . . . . . . . . . . . . 70 3.6 Exp´erimentations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 3.6.1 Matrice de confusion . . . . . . . . . . . . . . . . . . . . . . . . . . 73 3.6.2 Fonction d’efficacit´e du r´ecepteur ROC . . . . . . . . . . . . . . . 74 3.6.3 Taux de la reconnaissance des deux bases . . . . . . . . . . . . . . 75 3.6.4 Rappel et pr´ecision . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 3.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 55
  • 56.
    3.1 Introduction Dans cechapitre, nous allons tout d’abord d´ecrire l’environnement mat´eriel et logiciel de notre application, nous enchaˆınerons par la suite avec la pr´esentation d´etaill´ee de l’interface d´evelopp´ee et son fonctionnement, enfin nous terminerons par pr´esenter les r´esultats obtenus par les tests exp´erimentaux effectu´es. 3.2 Environnement de travail La structure de l’environnement de d´eveloppement de notre application est structur´ee comme suit : 3.2.1 Environnement logiciel Nous avons d´evelopp´e notre application `a l’aide des langages de programmations .NET, dont nous citons : • C# : qui est un langage orient´e objet de type s´ecuris´e et ´el´egant qui permet aux d´eveloppeurs de g´en´erer diverses applications fiables qui s’ex´ecutent sur le .NET Fra- mework. • Visual basic : con¸cu par Microsoft `a la fin des ann´ees 1990 [31], le Visual basic est un des langages de programmation les tr`es utilis´es dans le monde. Les programmes bien r´edig´es en Visual basic sont rapides et efficaces. Plus flexible, ce langage permet l’utilisation d’une large gamme d’application scientifique de hautes performances. Nous avons opt´e pour l’utilisation de ces deux langages car ils s’adaptent tr`es bien au domaine de traitement d’image. Nous avons choisi la biblioth`eque EMGU CV comme ´etant la biblioth`eque graphique sur laquelle nous appliquons nos diff´erents traitements d’images. EMGU est une biblioth`eque libre sp´ecialis´e dans le domaine de l’imagerie num´erique et le syst`eme de vision par ordina- teur dans un environnement .NET. Pour la conception de notre application et son interface graphique, nous avons utilis´e Visuel studio 2012 version ´etudiant, qui fournit un ´editeur de code avanc´e, des concepteurs d’inter- faces utilisateur pratiques, un d´eboguer int´egr´e et de nombreux autres outils pour faciliter le d´eveloppement d’applications bas´ees sur le langage.NET Framework. 3.2.2 Environnement mat´eriel Nous avons d´evelopp´e notre application sur deux machines qui ont pratiquement les mˆemes configurations suivantes : • Microprocesseur Intel Core i7 de fr´equence 2.4 de 4`eme g´en´eration ; • M´emoire vive RAM 8 Gb ; • Microsoft Windows 7 version 64 bits. 56
  • 57.
    3.3 Pr´esentation dela base d’apprentissage L’objectif de notre travail est de proposer une nouvelle approche pour la d´etection d’objets dans une sc`ene. Pour pouvoir r´ealiser cela, il nous a fallu r´ecolter des bases d’images portant sur le sujet. Dans cette section, nous d´ecrivons les caract´eristiques des bases de donn´ees utilis´ees ainsi nous allons pr´esenter quelques exp´eriences dans lesquelles la performance de plusieurs m´ethodes sont compar´ees et discuter les r´esultats empiriques obtenus. 3.3.1 Base de donn´ees COIL-100 La base de donn´ees sur laquelle nous avons appliqu´e l’algorithme d’apprentissage est Columbia Object Image Library (COIL) , [32] . Cette base contient 7200 images en couleurs de 100 objets diff´erents (72 images par objet), o`u les images des objets ont ´et´e prises `a des intervalles de pose de 5 degr´es. Les images ont aussi ´et´e normalis´ees tel qui le plus grand des deux dimensions de l’objet (hauteur et largeur) soit ´egale `a 128 x 128 pixels. Les objets ont une grande vari´et´e de g´eom´etrie complexe et de caract´eristiques diff´erents, la figure ci-dessous montre les 100 objets de la base prises en vue frontale. Figure 3.1 – Objets de la base de donn´ees Columbia Object Image Library. 57
  • 58.
    3.3.2 Base dedonn´ees ETH-80 La base d’images ETH-80 [33] Zurich contient un ensemble d’objets naturels et artificiels organis´es en huit cat´egories qui sont respectivement : Pomme, tomate, chien, cheval, vache, voitures, poire et verre. Pour chaque cat´egorie d’objets, dix objets diff´erents sont fournis, o`u chaque objet est repr´esent´e par 41 images diff´erentes qui sont prises par un multiple point de vus diff´erents. Cela r´esulte un ensemble de 3280 images. Figure 3.2 – Objets de la base de donn´ees ETH-80. 58
  • 59.
    3.3.3 Acquisition desdeux bases • COIL-100 : Chaque objet a ´et´e plac´e dans une configuration stable `a peu pr`es au centre d’une plaque tournante, La table tournante a ´et´e tourn´e de 360 degr´es et 72 images ont ´et´e prises par objet (une image chaque 5 d´egr´ees de la rotation). • ETH-80 : De mˆeme pour cette base d’images, o`u chaque objet a ´et´e plac´e dans une table tournante, avec l’exception de l’utilisation de plusieurs cam´eras chacune d’elles prend d’autres images diff´erentes de l’objet. Figure 3.3 – Acquisition de la base COIL-100. 3.4 Pr´esentation de l’interface graphique L’application qui permet d’effectuer les diff´erentes tˆaches de la d´etection d’objets est con¸cue de telle mani`ere `a faciliter l’interaction avec l’utilisateur. Nous avons d´evelopp´e deux approches dont l’interface et son explication sont pr´esent´ees dans ce qui suit : 3.4.1 Premi`ere Approche D´etection et reconnaissance d’objets en utilisant les moments de Chebyshev. • Interface d’accueil 59
  • 60.
    Figure 3.4 –Interface d’accueil l’application. L’interface principale est devis´ee en trois parties, de gauche `a droite nous remarquons l’ensemble des boutons permettant l’interaction avec l’application ainsi que ses diff´erentes fonctionnalit´es que nous allons expliquer ult´erieurement. Ensuite, nous affichons les traces de l’ex´ecution pour donner plus de d´etails sur le processus ainsi que les diff´erent temps de calculs. La troisi`eme partie permet de visualiser les r´esultats de la d´etection, la segmentation et la reconnaissance des objets de l’image de la sc`ene. Avant de commencer, nous devons tout d’abord choisir l’une des bases, COIL-100 ou ETH- 80. Figure 3.5 – Choix d’une base de donn´ees. En cliquant sur le bouton ‘Parcourir l’image’, une fenˆetre s’affiche pour choisir l’image de la sc`ene. 60
  • 61.
    Figure 3.6 –Choix de l’image de la sc`ene. Une fois l’image est charg´ee, on l’affiche dans notre interface comme illustr´ee par la figure ci-dessous, ainsi on peut commencer le traitement. Figure 3.7 – Affichage de l’image de la sc`ene 61
  • 62.
    La tˆache dela d´etection d’objets est bas´e sur trois ´etapes indispensable : la cr´eation du descripteur de l’image, la segmentation, la reconnaissance. Segmentation Nous commen¸cons par la segmentation en utilisant notre m´ethode de segmentation am´elior´ee (voir le chapitre II pour plus d’informations), en cliquant sur le bouton Segmentation , le r´esultat de la segmentation est affich´e comme suit : Figure 3.8 – Segmentation de l’image. Reconnaissance La prochaine ´etape est la reconnaissance des objets dans la sc`ene apr`es sa segmentation, Cette ´etape se d´eroule en trois parties qui sont : • Extraction des objets de la sc`ene ; • Calcul des descripteurs de chaque objet `a l’aide des moments de Chebyshev ; • Introduire les descripteurs comme entr´ee dans la fonction de reconnaissance ; • Phase de reconnaissance des objets qui est fait apr`es l’apprentissage des bases (voir la deuxi`eme partie de ce chapitre pour plus d’informations sur le processus d’apprentis- sage). 62
  • 63.
    En cliquant surle bouton Reconnaissance le processus de la reconnaissance des objets trouv´es commence, en affichant les traces de traitement portant sur le temps de calcul ainsi que les diff´erents objets reconnus. Chaque objet sera libell´e par une ´etiquette portant la cat´egorie et le nom de l’objet comme il est montr´e dans la figure suivante : Figure 3.9 – Reconnaissance d’objets. 3.4.2 Deuxi`eme approche Reconnaissance et localisation d’objets bas´es sur le descripteur des couleurs `a quatre dimensions en introduisant l’information de la transparence RGBA : • Interface d’accueil 63
  • 64.
    Figure 3.10 –Interface d’accueil de la deuxi`eme approche L’interface de la deuxi`eme approche d´evelopp´ee comporte deux parties, la premi`ere est Apprentissage permet de faire apprendre un ou plusieurs objets `a notre application, Cette ´etape peut ˆetre r´ealis´ee hors ligne une seule fois en sauvegardant tout objets possibles. L’apprentissage est r´ealis´e en fournissant l’image de l’objet, et l’image de fond. Le descripteur est ensuite calcul´e en faisant une soustraction entre les deux signatures des deux images, qui sera ensuite sauvegard´ee sous le format d’un fichier XML en cliquant sur le boutant sauvegarder . Figure 3.11 – Apprentissage d’un objet avec la deuxi`eme m´ethode 64
  • 65.
    La deuxi`eme partiede l’application, concerne la localisation et la reconnaissance d’objets, l’utilisateur doit d’abord choisir l’image de la sc`ene, et en cliquant sur le bouton analyser le processus de la reconnaissance commence. Aucune m´ethode de segmentation n’est utilis´ee dans cette approche, la d´etection des objets se d´eroule en deux ´etapes (voir le chapitre deux pour plus d’informations) qui sont : • V´erifier si un objet parmi les objets sauvegard´es dans la premi`ere ´etape est pr´esent dans l’image, en comparant le descripteur de chaque objet avec le descripteur de l’image de la sc`ene ; • Localiser les objets qui sont jug´es pr´esent dans l’image de la sc`ene. Figure 3.12 – Reconnaissance des objets avec la deuxi`eme m´ethode 65
  • 66.
    Nous affichons parla suite les objets trouv´ees, ainsi que leurs positions dans l’image de la sc`ene. 3.4.3 Troisi`eme approche D´etection et localisations d’objets bas´e sur l’extraction de caract´eristiques visuelles des images des descripteurs locaux bas´es sur des points d’int´erˆet de l’image (SURF). • Interface d’accueil Figure 3.13 – l’interface d’accueil de la troisi`eme approche. L’interface principale propose de choisir entre deux m´ethodes de d´etections, l’utilisateur doit par la suite choisir entre les deux m´ethodes hors ligne, ou en ligne. Ces derni`eres fonc- tionnent de la mˆeme mani`ere concernant l’extraction des points d’int´erˆet : Figure 3.14 – Le choix entre les deux m´ethodes de SURF 66
  • 67.
    La m´ethode horsligne L’utilisateur doit fournir une image de la sc`ene, et une image de l’objet `a localiser. Figure 3.15 – choix de l’image de la sc`ene et de l’objet `a trouver. L’utilisateur peut ensuite choisir d’afficher ou pas, les points d’int´erˆets des deux images, ainsi que les lignes de correspondances, et puis de lancer le processus de d´etection en cliquant sur le bouton Analyser . Le r´esultat est affich´e en cadrant l’objet trouv´e dans la sc`ene comme suit : Figure 3.16 – R´esultat de la d´etection hors ligne. La m´ethode en ligne Contrairement `a la premi`ere m´ethode, cette approche permet de localiser et traquer l’objet `a l’aide d’un capteur, dans notre cas c’est la webcam. L’utilisateur doit rapprocher l’objet vers la cam´era et puis de cliquer sur le bouton Scanner 67
  • 68.
    pour commencer laphase d’apprentissage, commencer le processus de la d´etection et le suivie de l’objet se d´eclenchera alors instantan´ement. Figure 3.17 – R´esultat de la d´etection en ligne. 3.5 Apprentissage La d´etection d’objets de diff´erentes classes dans les images pr´esente plusieurs difficult´es. L’algorithme d’apprentissage doit pouvoir traiter des donn´ees avec des variations inter et intra-classe. De plus, le temps d’ex´ecution ne doit pas croitre de mani`ere exponentielle avec le nombre de classes. Afin d’aboutir `a ce but, nous avons opt´e pour l’utilisation des machines `a vecteurs supports SVM comme classifieurs. Nous commencerons la description des r´esultats par la mesure de la pr´ecision de la m´ethode de classification mise au point dans le cadre de ce travail de fin d’´etudes. Pour effectuer cette mesure, les Multi-SVMs sont utilis´ees. 3.5.1 Choix de la fonction du noyau La fonction du noyau permet une transformation de donn´ees de l’espace d’origine vers l’espace caract´eristique de telle fa¸con que les donn´ees initiales qui sont non lin´eairement s´eparables (on ne peut pas tracer une ligne s´eparatrice entre les diff´erentes classes) deviennent s´eparables lin´eairement. Le choix de la fonction du noyau (kernel) est essentielle dans la phase d’apprentissage afin d’obtenir des bons r´esultats. Cela d´epend du probl`eme. Seule l’exp´erimentation sur les 68
  • 69.
    diff´erentes fonctions kernelpeut nous donner une id´ee sur la fonction `a utiliser pour obtenir les meilleurs r´esultats. Dans notre projet, nous avons impl´ement´e la m´ethode d’apprentissage Un Contre Tous avec diff´erentes fonctions de noyau. Dans ce qui suit, nous allons montrer les diff´erents r´esultats obtenus pour les trois choix des fonctions suivantes : • La fonction lin´eaire : C’est l’exemple le plus simple de fonction noyau, On se ram`ene donc au cas d’un classifieur lin´eaire, sans changement d’espace. L’approche par Kernel trick g´en´eralise ainsi l’approche lin´eaire. Le noyau lin´eaire est parfois employ´e pour ´evaluer la difficult´e d’un probl`eme. La fonction de noyau est d´efini par : • Le noyau polynomial : Lea fonction de noyau est d´efini par : • Le noyau gaussien : Cette formulation est ´equivalente aux r´eseaux de neurones `a bases radiales avec l’avantage suppl´ementaire que les centres des fonctions `a base radiale (qui sont les vecteurs supports) sont optimis´es : La fonction de noyau est d´efini par : Figure 3.18 – Comparaison entre les fonctions de noyau. 69
  • 70.
    Nous remarquons quenous obtiendrons les meilleurs r´esultats avec la fonction de noyaux Polynomiale, avec un taux de reconnaissance ´egale `a 98.75% `a l’ordre 8 de Chebyshev, contre 94% avec la fonction Gaussien, et 74% avec la fonction lin´eaire. Ces r´esultats peuvent ˆetre expliqu´es par le fait que les instances de nos donn´ees obtenues par l’application de la fonction de Chebyshev ne sont pas lin´eairement s´eparables. D’o`u nous avons opt´e pour l’utilisation de la fonction polynomiale. 3.5.2 Principe de l’apprentissage Le principe de ces exp´eriences est d’appliquer une technique de validation crois´ee, avec laquelle on estime la performance du syst`eme en la mesurant sur des exemples n’ayant pas ´et´e utilis´es en cours d’apprentissage : On commence par deviser notre base de donn´ees d’images en trois parties, la premi`ere nomm´ee base d’apprentissage contient 75% de l’ensemble de donn´ees, une partie validation contient 10% et la partie des tests contient 15%. Le processus d’apprentissage est r´ep´et´e pour chacune des images de la base de donn´ees, c’est- `a-dire 6000 fois pour COIL-100 et 2400 fois pour ETH80. A la fin de cette ´etape, on obtient une mesure de pr´ecision correspondant au rapport entre le nombre de classifications correctes et le nombre total de classifications (correctes et erron´ees). 70
  • 71.
    3.6 Exp´erimentations Les r´esultatsde ces exp´eriences sont d’abord pr´esent´es sous leur forme brute ci-dessous puis ils seront discut´es. Repr´esentation de l’objet avec les moments de Chebyshev Dans la figure ci-dessous, nous montrons une comparaison entre l’objet r´eel, et l’objet construit en utilisant la fonction de reconstruction appliqu´e sur la m´ethode de calcul classique des moments de Chebyshev, et notre m´ethode de calcul am´elior´ee des moments de Chebyshev. Figure 3.19 – Comparaison des m´ethodes : (a) l’image original en RGB ; (b) l’image ori- ginal appliqu´e avec Canny ; (c) l’image reconstruite par la m´ethode classique ;(d) l’image reconstruite par notre m´ethode. Nous remarquons que l’image reconstruite par notre m´ethode manque un peu de d´etails qui sont difficiles `a remarquer en la comparant avec l’image reconstruite par la m´ethode clas- sique, mais elle permet de donner une repr´esentation parfaite de la forme globale de l’objet tout en r´eduisant le temps de calcul d’une mani`ere remarquable. Dans ce qui suit, nous montrons un sch´ema comparatif entre les temps d’ex´ecution de la m´ethode classique, notre am´elioration tout en utilisant l’image en niveau de gris (NVG c’est- `a-dire toute l’image), et notre am´elioration en utilisant uniquement les contours de l’objet pour un ordre donn´e. 71
  • 72.
    Figure 3.20 –Etude comparative sur les temps d’ex´ecution et l’apprentissage. Le principal inconv´enient du descripteur Chebyshev classique est qu’il est couteux en temps d’ex´ecution. Un des atouts du notre descripteur Chebyshev am´elior´e est justement cette ca- pacit´e `a ˆetre calcul´e tr`es rapidement grˆace `a l’utilisation des contours et de notre m´ethode de calcul de l’ordre de moment (appliquer le calcul de Chebyshev seulement aux pixels qui ont la valeur diff´erente de 0 - voir le chapitre pr´ec´edent) tout en gardant un bon taux d’ap- prentissage. Dans ce qui suit nous allons mettre en ´evidence l’efficacit´e de notre repr´esentation d’ob- jets en construisant un descripteur bas´e sur les moments de Chebyshev (premi`ere approche) en pr´esentant un graphe de comparaison entre la m´ethode de reconnaissance d’objet bas´e sur Chebyshev seulement, et les deux m´ethodes en ajoutant comme information importante la couleur dans les deux espaces RGB et HSV au descripteur. La fonction de noyau d’appren- tissage utilis´ee est la fonction Polynomiale. 72
  • 73.
    Figure 3.21 –Etude comparative sur la pr´ecision de la reconnaissance avec et sans couleur. Nous remarquons que l’ajout de l’information couleur dans l’espace RGB au descripteur de Chebyshev am´eliore sensiblement la performance de l’apprentissage contrairement `a l’espace HSV (Hue and Saturation Value). Nous avons donc opt´e pour l’utilisation de cette nouvelle repr´esentation. 3.6.1 Matrice de confusion Une erreur souvent commise par les syst`emes de reconnaissance est la confusion entre classes. Pour ´evaluer quantitativement ces erreurs, nous utilisons les matrices de confusion. Nous calculons la matrice de confusion qui montre le taux d’erreurs dues au confusions pour chacune des 10 premi`eres objets, pour un nombre al´eatoire des images (193 images dans notre cas) repr´esentant les objets. La matrice calcul´ee est la suivante : 73
  • 74.
    3.6.2 Fonction d’efficacit´edu r´ecepteur ROC La courbe ROC (Receiver Operating Characteristic) est un outil d’´evaluation des mod`eles qui permet de savoir si le mod`ele est globalement significatif [34]. L’utilisation de la courbe ROC comme un outil de mesure peut ˆetre expliqu´e par le fait que la courbe ROC est : • Ind´ependant des matrices de coˆuts de mauvaise affectation. Il permet de savoir si un mod`ele M1 sera toujours meilleur que M2 quelle que soit la matrice de coˆut • Op´erationnel mˆeme dans le cas des distributions tr`es d´es´equilibr´ees. Sans les effets pervers de la matrice de confusion li´es `a la n´ecessit´e de r´ealiser une affectation • R´esultats valables mˆeme si l’´echantillon test n’est pas repr´esentatif. Tirage prospectif ou tirage r´etrospectif : les indications fournies restent les mˆemes. • Un outil graphique qui permet de visualiser les performances. Un seul coup d’œil doit permettre de voir le(s) mod`ele(s) susceptible(s) de nous int´eresser. En utilisant les r´esultats de la section pr´ec´edente (Matrice des confusions), nous obtien- drons la courbe de ROC suivante pour les dix premi`eres objets de la base COIL-100 : Figure 3.22 – Courbe ROC obtenu pour les dix objets. 74
  • 75.
    Nous avons tracerla courbe pour chaque objet, puis calculer la surface. Les r´esultats obtenus montrent l’efficacit´e et la robustesse de notre m´ethode de repr´esentation d’objets bas´ee sur les moment de Chebyshev. 3.6.3 Taux de la reconnaissance des deux bases Avec VC : Version Classique de Chebyshev, VA-NVG : Version am´elior´ee en utilisant les images en niveau de gris, VA-CT : Version am´elior´e en utilisant les contours, VA-CT- HSV : Version am´elior´ee en utilisant les contours et en rajoutant l’espace des couleurs HSV comme information, VA-CT-RBG : Version am´elior´ee en utilisant les contours et en rajoutant l’espace des couleurs RGB comme information. Les r´esultats que nous discuterons par la suite, sont calcul´es en utilisant les moments de Chebyshev `a l’ordre 8. La raison principale qui a men´e `a adopter les descripteurs Chebyshev calcul´e `a cet ordre, est que non seulement le taux d’apprentissage `a atteint son maximum `a cette ordre, pour chaque ordre inferieure `a l’ordre 10, mais aussi car le temps de calcul des moments commence `a augmenter `a partir de l’ordre 9 d’une mani`ere remarquable (voir graphe 18), ce qui nous int´eresse pas car nous visons la notion de temps r´eel. Le graphe ci-dessous permet de bien repr´esenter la diff´erence entre la pr´ecision de recon- naissance entre les diff´erentes m´ethodes de calcul des moments de Chebyshev `a l’ordre 8. 75
  • 76.
    Figure 3.23 –Etude comparative sur la pr´ecision de la reconnaissance avec les diff´erentes m´ethodes de calcul. Nous remarquons que le taux de reconnaissance sur la base ETH-80 a un peu augment´e en le comparant `a la base COIL-100 (voir tableau 1 et 2 ci-dessus), ceci peut ˆetre expliqu´e par le fait que la base ETH-80 ne contient pas une diversit´e de cat´egories (8 classes seulement) mais une vari´et´e inter-cat´egories (plusieurs objets par classe). Par contre, la base COIL-100 contient 100 objets de cat´egories diff´erentes. La pr´ecision de notre m´ethode d´evelopp´ee sur la base du descripteur Chebyshev est com- parable aux meilleures m´ethodes d´ecrites dans l’´etat de l’art. Par exemple, C. MAAOUI, H. LAURENT et B. EMILE [20] ont obtenus un score de 71 % de pr´ecision sur la base de donn´ees de COIL-100 pour des images en niveau de gris, et 92% de pr´ecision sur les mˆemes images en couleurs dans l’espace RGB. Quant `a nous, nous avons obtenu une pr´ecision ´egale `a 98.75% en utilisant notre impl´ementation am´elior´ee de Chebyshev (VA-CT-RBG), et 91% de pr´ecision en utilisant le calcul de Chebyshev classique (VC). Leur m´ethode est bas´ee sur un descripteur bas´e sur les moments de Zernike (plus coˆuteux `a calculer que notre m´ethode) et utilise ´egalement l’´etiquetage des composantes connexes [20]. comparaison entre la deuxi`eme m´ethode bas´ee couleurs, et la troisi`eme m´ethode bas´ee SURF 3.6.4 Rappel et pr´ecision Il n’est pas facile d’estimer la qualit´e d’un syst`eme de d´etection d’objets. Une mesure classique de l’efficacit´e du syst`eme est de mesurer la pr´ecision et le rappel des m´ethodes impl´ement´es. Ces mesures sont issues du domaine d’´etude de la recherche d’information [35] 76
  • 77.
    et se basentsur la notion de document pertinent par rapport `a la recherche. La pr´ecision est d´efinie comme la proportion des documents pertinents parmi l’ensemble de ceux renvoy´es par le syst`eme. Toutefois, dans le cas de d´etection et la reconnaissance d’objets, la notion de document pertinent reste tr`es subjective. Selon les perceptives, certains estimeront que deux objets sont semblables lorsqu’elles appartiennent `a la mˆeme cat´egorie d’objets. D’autres seront plus sensibles aux instances r´eelles de l’objet. C’est pourquoi nous avons adopt´e les deux points de vus mentionn´es ci-dessus, pour ne pas se limiter `a nos bases de donn´ees seulement. Si nous notons : • Vrais positifs (VP) : Objet pr´esent dans la sc`ene, d´etecter l’objet, et le bien reconnaitre • Vrais n´egatifs (VN) : Aucun de nos objets n’est pr´esent dans la sc`ene , et ne rien d´etecter • Faux positifs (FP) : Objet pr´esent dans la sc`ene, d´etecter l’objet, et le mal reconnaitre • Faux N´egatifs (FN) : Objet pr´esent dans la sc`ene, ne rien d´etecter ne rien reconnaitre Alors : Le rappel (R) Le rappel (R) du test est d´efini comme le pourcentage des objet qui sont bien d´etect´es : La pr´ecision (P) La pr´ecision du test est d´efinie comme le pourcentage de la non-pr´esence d’objets et qui ne sont pas d´etect´es : F-Mesure (F) C’est une mesure tenant compte `a la fois du rappel et de la pr´ecision et d´esigne la moyenne harmonique entre les deux, d´efinie par : 77
  • 78.
    En plus dela d´etection d’objets pour un objet, nous avons voulu tester nos m´ethodes sur des images constituent plusieurs objets n’appartenant `a aucune de nos bases utilis´ees dans la phase d’apprentissage, nous avons construit 25 images des sc`enes r´eelles de dimen- sions ´egale `a 500*375 pixels, dont chaque image contient un ensemble d’objets misent aux diff´erentes transformations g´eom´etriques (rotation, changement d’´echelle, occlusion partiel...) et `a diverses perturbations (bruit, occultation, etc.). Notre objectif est d’effectuer une s´erie d’exp´erimentations afin d’´evaluer les performances en utilisant plutˆot deux grandeurs appel´ees pr´ecision et rappel que les taux de classification. La figure ci-dessous repr´esente un exemple d’une sc`ene parmi les images que nous avons cr´eer. Figure 3.24 – Image de sc`ene r´eelle. Nous pr´esentons un tableau montrant le nombre d’objets bien d´etect´es et bien reconnus dans 10 sc`enes que nous avons choisi al´eatoirement, chaque sc`ene contient exactement 4 objets diff´erents. 78
  • 79.
    La proc´edure ded´etection suivi pour la deuxi`eme m´ethode ´etait d’essayer de d´etecter l’ensemble d’objets de notre base une par une, Les r´esultats ainsi sont repr´esent´es dans le sch´ema ci-dessous : Figure 3.25 – ´etude comparative sur la pr´ecision, le rappel et F-Mesure entre la deuxi`eme et la troisi`eme m´ethode. En examinant les r´esultats obtenus, nous remarquons que les deux m´ethodes sont efficaces face au transformations g´eom´etriques et perturbations (rotation, changement d’´echelle, oc- clusion partiel...) L’efficience augment´e de la troisi`eme m´ethode par rapport `a la deuxi`eme vient avec un coˆut qui est le temps augment´e de calcule, la figure suivante montre la diff´erence entre les deux : Figure 3.26 – ´etude comparative sur le temps de calcule entre la deuxi`eme et la troisi`eme m´ethode. 79
  • 80.
    La diff´erence entreles temps d’ex´ecutions peut ˆetre expliqu´ee par le fait d’utiliser les tables de hachage dans la deuxi`eme m´ethode afin de r´eduire la complexit´e de calcule. La troisi`eme m´ethode par contre utilise l’extraction des points d’int´erˆet et l’estimation de la matrice hessienne ce qui est couteux en terme de temps de calcule. Le tableau suivant illustre les diff´erents r´esultats de d´etection et reconnaissance sur des images des sc`enes r´eelles avec les diff´erentes approches impl´ement´ees. 80
  • 81.
  • 82.
    Analyse des r´esultats Nousavons appliqu´e des transformations g´eom´etriques aux objets pr´esents dans toutes les images de tests pr´esent´ees dans le tableau ci dessus. Nous remarquons qu’avec notre m´ethode 1 Chebyshev on a obtenu un tr`es bon r´esultat de d´etection et de reconnaissance de multiples objets dans une sc`ene, ¸ca confirme la robustesse de notre m´ethode face `a la rotation, le changement d’´echelle et ¸ca capacit´e `a reconnaitre des objets qui n’appartiennent `a aucune de nos base sur les quelles nous avons appliqu´e l’appren- tissage ! D’un autre cot´e, ces r´esultats restent limit´e `a l’efficacit´e de la segmentation, nous remarquons que les deux sc`ene 1 et 2 (voir tableau ci dessous) sont difficiles `a segmenter, d’o`u les objets sont difficiles `a d´etect´es en utilisant la m´ethode 1 Chebyshev. La deuxi`eme m´ethode permet de pallier `a ce probl`eme, en utilisant le technique de Tem- plate Matching sans avoir besoin de passer pas la phase de segmentation, nous remarquons que pour les sc`enes r´eelles difficiles `a segmenter cette deuxi`eme m´ethode impl´ement´ee donne de bons r´esultats de reconnaissance d’objets. Contrairement a la m´ethode de Chebyshev, le temps des calcule de cette approche reste instable et varie selon le nombre d’objets appris lors de la phase d’apprentissage. Un autre d´esavantage de cette m´ethode est sa capacit´e a d´etecter les faux positifs, mais seulement si deux objets dans notre base ont presque la mˆeme signature. La troisi`eme m´ethode bas´ee sur le descripteur SURF permet d’´eliminer le dernier probl`eme de l’approche 2. Bien que la d´etection en utilisant cette m´ethode est performante, elle n’est pas aptes a r´esoudre le probl`eme de temps de calcule, le temps de calcule de cette m´ethode contrairement a la premi`ere approche 1 Chybyshev augmente selon le nombre d’objets a d´etecter dans la sc`ene. Un autre d´esavantage de la troisi`eme approche est qu’elle ne peut d´etecter qu’une seule instance d’objet, donc pour des sc`ene ayant plusieurs instances du mˆeme objet, on ne d´etect´e que l’instance qui a le plus de points d’int´erˆet en commun avec l’objet recherch´e. Contrairement `a la premi`ere m´ethode, les deuxi`eme (Template Matching) et la troisi`eme m´ethode (SURF), ne peuvent d´etecter que les instances d’objets, pas des cat´egories d’objet ceci est due aux descripteurs qui ne sont pas assez repr´esentatifs en ce qui concerne la forme globale d’objets. Les trois approches d´evelopp´ees sont robustes `a la rotation, changement d’´echelle et l’oc- clusion partiel 82
  • 83.
    3.7 Conclusion Nous avonspr´esent´e dans ce chapitre d’une part, les diff´erents outils qui nous ont permis de mettre en œuvre notre application pour la d´etection d’objets, ainsi qu’une description d´etaill´ee de nos syst`eme de d´etection et reconnaissance d’objets, avec l’´evaluation de perfor- mance de chaque phase de processus de reconnaissance. D’autre part, nous avons expos´e les r´esultats obtenus par les diff´erentes approches de d´etection, en termes de temps d’ex´ecution et de taux de reconnaissance, pour donner une id´ee comparative de l’aspect pratique de nos m´ethodes. Nos syst`emes ont donn´e des bons r´esultats au niveau de la reconnaissance, cela montre l’efficacit´e des m´ethodes utilis´ees pour l’extraction des primitives et les strat´egies utilis´ees lors de la phase de la segmentation. 83
  • 84.
    Conclusion g´en´erale L’objectif dece travail de fin d’´etudes est de proposer une m´ethode de repr´esentation d’objet sous forme de descripteur afin de cr´eer un syst`eme de d´etection et de reconnaissance d’objets. Dans ce cadre, nous avons d´evelopp´e un nouveau descripteur de caract´eristiques ainsi qu’une technique de segmentation d’objets, que nous avons ensuite int´egr´e dans un syst`eme complet de d´etection et reconnaissance d’objets, utilisant les SVMs. La premi`ere ´etape dans cette m´ethode est la segmentation de l’image afin de s´eparer les ob- jets dans la sc`ene du fond, et pour cela nous avons d´evelopp´e trois m´ethodes de segmentation ce qui nous a permis d’atteindre notre objectif en impl´ementant un bon algorithme. La deuxi`eme ´etape est d’extraire les caract´eristiques des objets trouv´es. Pour ce faire, nous avons introduit les moments de Chebyshev comme ´etant un descripteur repr´esentatif de l’objet.Nous avons aussi apport´e des am´eliorations qui nous ont permises d’am´eliorer le taux de pr´ecision et de r´eduire consid´erablement le temps de calcul et ainsi atteindre la notion du temps r´eel. Par la suite nous avons proc´ed´e `a la reconnaissance des objets en utilisant les multi- SVMs, cette ´etape est faite en deux parties, la premi`ere est hors ligne qui s’appuie sur l’apprentissage automatique sur les deux bases d’images utilis´ees, la deuxi`eme est en ligne qui est la reconnaissance des objets d´etect´es. Pour pallier aux probl`emes de la segmentation, une nouvelle approche a ´et´e impl´ement´ee en utilisant la dispersion des couleurs dans l’espace RGBA comme information caract´erisant l’objet. La solution ainsi d´evelopp´ee donne de bons r´esultats en terme de reconnaissance d’objets dans des sc`enes r´eelles difficiles `a segmenter. Afin d’avoir une id´ee sur l’efficacit´e de nos m´ethodes, nous avons impl´ement´e une troisi`eme approche pour comparer entre les r´esultats, cette approche est bas´ee sur l’extraction des point d’int´erˆets en utilisant SURF. Les exp´eriences r´ealis´ees sur diff´erentes bases de donn´ees d’images ont permis de mettre en ´evidence un gain consid´erable en pr´ecision, ainsi qu’un grand progr`es en ce qui concerne la r´eduction du temps de traitement pour chacune des approches. 84
  • 85.
    Bibliographie [1] Elschlager R.Fischler M. The representation and matching of pictorial structures. IEEE Transactions on Computers., 1973. [2] An Exemplar Neural Mechanism : The Brain’s Visual Processing System., chapter Ch. 2. 2003. [3] Brown R. How shall a thing be called. Psychological Review, 1958. [4] Van Essen DC. Felleman DJ. Distributed hierarchical processing in the primate cerebral cortex. Cerebral Cortex, 1991. [5] Cours de Vision par Ordinateur, Master 2 SII, chapter 5. Aouat S, 2014. [6] Motwani R. Indyk P. Approximate nearest neighbors : towards removing the curse of dimensionalit.y. Published in : · Proceeding STOC ’98 Proceedings of the thirtieth annual ACM symposium on Theory of computing Pages 604-613., 1998. [7] L et al. Breiman. Classification and regression trees. Belmont, Calif. : Wadsworth., 1984. [8] J. R. Quinlan. Induction of decision trees. Journal Machine Learning archive Volume 1, 1986. [9] J. R. Quinlan. C4.5 : Programs for machine learning. Morgan Kaufmann Publishers,, 1993. [10] C Bishop. Information theory, inference, and learning algorithms. Springer,, 2006. [11] T. Hofmann. Unsupervised learning by probabilistic latent semantic analysis. Mach. Learn., 2001. [12] Schapire. R. E. The strength of weak learnability. Machine Learning., 1990. [13] Schapire. Y, Freund. et R. E. A decision-theoretic generalization of on-line learning and an application to boosting. In Proceedings of the Second European Conference on Computational Learning Theory,, 1995. [14] Object Recognition in the Geometric Era : a Retrospective. Joseph L. Mundy. [15] Biederman I. Recognition by components : A theory of human image understanding. Psychology Review, 1987. 85
  • 86.
    [16] Pentland A.Turk M. Face recognition using eigenfaces. CVPR, IEEE computer Sco, 1991. [17] D Roth. S Agarwal, A Awan. Learning to detect objects in images via a sparse,part- based representation. European Conference on Computer Vision, 2004. [18] J Malik. R Martin, C Charless. Learning to detect natural image boundaries using local brightness, color, and texture cues. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2004. [19] J Fan. Y Gao. Automatic function selection for large scale salient object detection. Pro- ceeding : MULTIMEDIA ’06 Proceedings of the 14th annual ACM international confe- rence on Multimedia, 2006. [20] B Emile. C Maaoui, H Laurent. Reconnaissance et d´etection robuste objects couleur. GRETSI, Groupe d’Etudes du Traitement du Signal et des Images, 2005. [21] Ju kim. H Lee, Ji Kim. Automatic salient object detection using pricipal component ana- lysis. 2nd International Conference on Robot Intelligence Technology and Applications, 2014. [22] T Lu K Chen. L Wang, Y Wu. Multiclass object detection by combining local ap- pearances and context. Proceeding MM ’11 Proceedings of the 19th ACM international conference on Multimedia, 2011. [23] G Chen. C Juang. A ts fuzzy system learned through a support vector machine in prin- cipal component space for real-time object detection. IEEE Transactions on Industrial Electronics., 2012. [24] S Soatto. B Fulkerson, A Vedaldi. Class segmentation and object localisation with superpixel neighborhoods. Computer Vision, 2009 IEEE 12th International Conference., 2009. [25] M Jones. P Viola. Rapid object detection using a boosted cascade of simple features. Computer Vision and Pattern Recognition, CVPR., 2001. [26] T Hofmann. H Lampert, B Blaschko. Beyond sliding windows : Object localization by effiecient subwindow search. Computer Vision and Pattern Recognition, CVPR., 2008. [27] B Triggs N Dalal. Histogram of oriented gradients for human detection. Computer Vision and Pattern Recognition, CVPR., 2005. [28] B Schiele. B Leibe, A Leonardis. An implicit shape model for combined object cate- gorization and segmentation. Workshop on Statistical Learning in Computer Vision, ECCV., 2004. [29] P Lee. R Mukundan, S Ong. Image analysis by tchebichev moments. IEEE Transactions on image processing., 2001. 86
  • 87.
    [30] D Dahmani.Elaboration d’un Syst`eme de Reconnaissance d’Epellation Digitale de la Langue des Signes. PhD thesis, USTHB, 2014. [31] MicroSoft. Visual basic. https ://msdn.microsoft.com/fr-fr/library/2x7h1hfk.aspx, 2012. [32] Nayar. H, Murase et S. Visual learning and recognition of 3-d objects from appearance. International Journal of Computer Vision., 1995. [33] by Max Planck Institute for Informatics. Analyzing appearance and contour based methods for object categorization. https ://www.mpi- inf.mpg.de/departments/computer-vision-and-multimodal-computing/research/object- recognition-and-scene-understanding/analyzing-appearance-and-contour-based- methods-for-object-categorization/, 2014. [34] Computer Vision and Pattern Recognition (CVPR’03), Madison, Wisconsin,, 2014. [35] Introduction `a la recherche d’information, chapter 1. UQAM, 2009. 87
  • 88.
    R´esum´e La d´etection d’objetset la reconnaissance est une fonction cl´e pour de nombreuses appli- cations comme la surveillance vid´eo, les syst`emes de transport robotiques, intelligents, etc. Ce probl`eme est largement trait´e dans la litt´erature en termes de ce que tente de reproduire la vision humaine en construisant des mod`eles qui ont des propri´et´es semblables `a des cap- teurs visuels (cam´eras vid´eo, t´el´em`etre laser, radar) et m´ethodologies. Dans ce contexte, nous sommes particuli`erement int´eress´es par la d´etection d’objets dans une sc`ene. Le travail demand´e consiste `a : • Faire une ´etude bibliographique consacr´ee aux m´ethodes de d´etection d’objets dans une sc`ene d’interieur. • ´Etudier et impl´ementer un algorithme de d´etection d’objets. • Proposer une m´ethode de reconnaissance d’objets dans une sc`ene d’int´erieur. Abstract The detection of objects and the recognition is a key function for numerous applications as the surveillance video, the systems of transportation roboticses, intelligent, etc. This problem is called extensively in the literature in terms that tent to reproduce the human vision while constructing the models that have some properties similar to visual sensors (camcorder, laser telemeter, radar) and methodologies. In this context, we are especially interested by the detection of objects in a scene. • To make a bibliographic survey dedicated to the methods of detection of objects in a interior scene. • To study and implementation of an algorithm of objects detection . • To propose a method of objects recognition in a interior scene.
  • 89.