• Aucun résultat trouvé

Dans cette section, nous présentons des résultats obtenus avec un seul espace de représentation (i.e., les primitives SIFT). Dans l’environnement considéré, cela s’avère particulièrement efficace car les traitements sont réduits du fait de la caractérisation unique des images, et parce que la carte obtenue est cohérente avec la trajectoire suivie par la caméra. Les images considérées ici ont été extraites d’une vidéo durant 247 secondes avec une fréquence d’une image par seconde. Pour l’acquisition, nous avons utilisé une simple caméra monoculaire grand-angle (angle de vue de 120◦), avec gestion automatique de l’exposition. Un

seul espace de représentation (i.e., les primitives SIFT) est pris en compte pour caractériser les images de 320x240 pixels. La figure 7.5 donne un exemple des images composant la séquence. Encore une fois, la caméra était tenue à la main lors des déplacements, et plusieurs cycles ont été réalisés dans sa trajectoire.

FIG. 7.1: Exemples d’images provenant de la séquence d’intérieur : les images sont ordonnées par ordre d’acquisition, suivant le déplacement de la caméra lors de l’expérience.

Afin de démontrer la qualité de notre solution pour le SLAM topologique, les résultats sont présentés sous la forme de la carte obtenue à la fin de l’expérience. Celle-ci est donnée dans la figure 7.2, à côté du plan du bâtiment dans lequel l’acquisition a été effectuée. Pour pouvoir mettre aisément en correspondance les noeuds de la carte avec le plan, un code couleur est mis en place afin d’identifier les différentes zones géographiques de passage de la caméra, comme précédemment.

La partie gauche de la figure 7.2 donne une illustration de la trajectoire de la caméra superposée sur le plan du bâtiment dans lequel a été conduite l’expérience. Le parcours débute par une première boucle dans la zone bleue, avant d’entrer dans la zone magenta. Après cela, la caméra retourne dans la zone bleue et se dirige tout droit vers la zone rouge. Elle revient alors encore une fois dans la zone bleue avant de découvrir la zone verte. Ce trajet se termine à côté du 8ème cercle blanc.

Dans la partie droite de la figure 7.2, la carte topologique correspondant au trajet de la caméra décrit ci-dessus est donnée. Afin d’en faciliter la compréhension, le même code couleur y est employé, permettant

FIG. 7.2: Plan du bâtiment de l’expérience avec la trajectoire de la caméra en superposition (partie gauche de la figure) et carte topologique associée (partie droite de la figure). La disposition du graphe est obtenue grâce à un simple algorithme de relaxation [Kamada and Kawai, 1989]. Les détails concer- nant la trajectoire de la caméra et les détections de fermeture de boucle correspondantes sont donnés dans le texte.

ainsi d’identifier facilement les différentes zones cartographiées. On peut rapidement s’apercevoir que tous les cycles correspondant à un retour de la caméra dans la zone bleue sont correctement détectés, de même que ceux réalisés à l’intérieur de cette zone. Les évènements de détection de fermeture de boucle peuvent être identifiés par la couleur jaune de la trajectoire dans le plan, ainsi que par la coloration jaune des noeuds correspondants dans la carte. Il est important de relever ici que plusieurs évènements de ce genre peuvent être représentés par un seul même noeud. Par exemple, la caméra est passée quatre fois aux alentours du 6ème cercle blanc, provoquant plusieurs détections de fermeture de boucle parmi les noeuds avoisinant : en conséquence, ces noeuds encodent les différents passages de la caméra, et ils sont de ce fait caractérisés par plusieurs images.

Lorsque l’on considère la carte topologique obtenue plus en détails, on peut remarquer qu’il existe un délai entre l’occurrence d’une fermeture de boucle et sa détection. Cela est particulièrement remarquable chaque fois que la caméra retourne dans la zone bleue : le véritable noeud de fermeture de boucle (i.e., le

noeud correspondant au retour effectif de la caméra dans un lieu connu) précède le noeud de fermeture de boucle tel que sélectionné par l’algorithme de SLAM. Par exemple, lorsque la caméra retourne de la zone magenta vers la zone bleue, la transition effective, à côté du 3ème cercle blanc, n’est détectée que trois noeuds plus tard, au niveau du noeud entouré de jaune qui lie les zones magenta et bleue dans la carte. La raison de ce délai a déjà été discutée dans le chapitre 3 de la partie I : il s’agit de la faible réactivité du modèle de probabilité. Cette faible réactivité a pour effet néfaste de rendre certaines situations de fermetures de boucles ambiguës. En effet, quand la caméra est déplacée consécutivement dans plusieurs lieux déjà visités (i.e., “d” dans la figure 7.2), les noeuds qui correspondent aux passages antérieurs de la caméra obtiennent une vraisemblance comparable (i.e., “a”, “b” et “c” dans la figure 7.2). En conséquence, ces pics d’amplitude similaire (voir figure 7.3) empêchent la probabilité a posteriori d’être concentrée de façon non- ambiguë sur une hypothèse en particulier. Toutefois, l’acquisition future de quelques images suffit à lever l’ambiguïté (i.e., lorsque la caméra atteint le noeud de fermeture de boucle qui joint les branches “a”, “b”, “c” et “d” dans la figure 7.2).

FIG. 7.3: Un exemple de vraisemblance ambiguë : cela correspond à une situation où la caméra re-

tourne pour la quatrième fois (“d” dans la figure 7.2) dans un lieu déjà visité. De gauche à droite, les pics correspondent aux passages antérieurs “a”, “b” et “c” de la caméra dans la figure 7.2. L’acquisi- tion de nouvelles images permettra de lever l’ambiguïté.

7.1.1 Performances

Dans les résultats expérimentaux présentés ci-dessus, la totalité des traitements a été réalisée en-ligne et en temps réel : 123s ont été nécessaires pour traiter les 247s de la séquence, avec un Pentium Core2 Duo 2.33GHz et pour des images de taille 320x240 pixels. La figure 7.4 donne l’évolution des temps de calcul par image au cours du temps. On peut notamment remarquer, en comparant cette figure à la figure 7.10, que le temps d’extraction des primitives SIFT dans la séquence intérieur est sensiblement équivalent à ce temps dans la séquence mixte. Ceci est dû au nombre plus important de primitives SIFT extraites dans les images de la séquence d’intérieur (avec la même taille d’image) : c’est grâce à cette multitude de primitives

qu’un seul espace de représentation est suffisant ici, alors que la prise en compte des histogrammes H est indispensable dans la séquence mixte pour obtenir une carte cohérente.

FIG. 7.4: Évolution des temps de traitements par image : la figure donne le temps requis pour extraire

les primitives dans les images (triangles), auquel est ajouté le temps nécessaire à la recherche des mots correspondants dans le vocabulaire (cercles), avec enfin le temps total de traitement par image (carrés). Pour améliorer la lisibilité, les temps de calcul ont été moyennés toutes les 5 images.

TAB. 7.1: Performances.

Longueur #img CPU #SIFT #FB %VP #FA 4m07s 247 2m03s 24156 87 59 0

Le tableau 7.1 recense des informations telles que la longueur de la séquence, le nombre d’images qu’elle contient, le temps CPU requis pour la traiter, la taille du dictionnaire SIFT à la fin de l’expérience (“#SIFT”, en nombre de mots), le nombre de fermetures de boucles (“#FB”, déterminé à la main d’après la trajectoire de la caméra), le taux de vrais positifs (“%VP”, les fermetures de boucles correctement détectées), et le nombre de fausses alarmes (“#FA”, hypothèses erronées qui reçoivent une probabilité élevée mais qui sont écartées par l’algorithme de géométrie multi-vues). On observe un taux de vrais positifs (i.e., 59%) relativement faible comparé aux expériences précédentes (cf. chapitre 3 de la partie I). Comme cela a été exposé plus haut (voir notamment la figure 7.3), certaines fermetures de boucles tardent à être détectées en raison des ambiguïtés introduites par les différents passages de la caméra en un même lieu. Par conséquent, le taux de vrais positifs s’en retrouve dégradé. D’autre part, en dépit de l’important aliasing perceptuel présent dans l’environnement (cf. figure 7.1), on remarque que le nombre de fausses alarmes est nul, ce qui confirme encore une fois la robustesse de notre solution.

FIG. 7.5: Exemples d’images provenant de la séquence mixte : les images sont ordonnées par ordre

d’acquisition, suivant le déplacement de la caméra lors de l’expérience.