• Aucun résultat trouvé

Méthodes basées sur la connaissance de la trajectoire des primitives

2.2 Une mémoire visuelle de l’environnement

3.1.3 Méthodes basées sur la connaissance de la trajectoire des primitives

Dans certaines approches, la trajectoire que devront suivre les primitives durant la naviga- tion est directement stockée dans la représentation de l’environnement [Hager 98b, Argyros 01, Gaspar 00, Burschka 01]. Si la route planifiée est bien réalisée, le système robotique connaît ap- proximativement à un instant donné les primitives qui sont susceptibles de rentrer dans le champ de vision de la caméra.

80 3.1 Gestion de l’évolution des amers visibles : état de l’art

Dans [Rasmussen 96, Hager 98b, Burschka 01], les trajectoires des primitives sont décom- posées en séquences. Les transitions entre les séquences correspondent à des apparitions ou des disparitions de primitives dans le champ de vision de la caméra. Dans [Argyros 01], un « cycle de vie » est associée à chaque primitive détectée avec une caméra panoramique. Ce cycle de vie décrit le moment de son apparition et celui de sa disparition. Chaque fin de cycle constitue alors une position que devra atteindre le système robotique durant la navigation.

Cependant, le système robotique ne parvient pas toujours à suivre exactement la trajectoire prédéfinie. Le point d’intérêt peut donc apparaître à une autre position dans l’image. Hager [Hager 98b] effectue cette estimation en calculant les matrices fondamentales entre la vue cou- rante et deux images de la séquence apprise. La position du point dans l’image courante est alors déduite par l’intersection des deux lignes épipolaires respectives à chacune des matrices fonda- mentales. Le choix des images de référence dans la base n’est pas détaillé, et aucune solution n’est proposée lorsque la matrice fondamentale est dégénérée.

Dans [Argyros 01], la mise à jour des primitives ne s’effectue que lorsque le robot atteint (dans le plan) l’une des positions intermédiaires. L’erreur de localisation vient du fait que le système n’a pas alors nécessairement la même pose que celle associée à l’image de référence. En effet, l’orientation de la caméra panoramique n’est pas contrôlée lors de la navigation. Un décalage horizontal entre la position supposée et la position réelle peut donc être constatée. L’estimation de l’orientation de la caméra, à partir des positions courantes et sauvegardées des primitives déjà visibles permet d’estimer ce décalage, et de localiser les nouveaux amers.

Notons que les trajectoires des primitives ne sont pas toujours connues suite à une phase d’ap- prentissage. Par exemple dans [Mezouar 02c], ces positions sont estimées par une méthode de planification de trajectoires, à partir d’une série de positions clés que le robot est censé atteindre. Un ensemble d’amers est associé au mouvement entre deux positions clés. La mise à jour des amers visuel n’est effectuée qu’une fois ces positions intermédiaires atteintes.

3.1.4 Positionnement

De manière générale, les approches utilisant des amers locaux sont fondées sur au moins l’une des hypothèses suivantes :

– le modèle tridimensionnel de la scène est connu. La localisation du système par rapport à un repère global permet par reprojection de la scène dans l’espace du capteur de détecter l’apparition de nouveaux amers ;

– la trajectoire des amers durant toute la navigation est connue. Ces trajectoires sont 3D : à

chaque pas de temps est associée une position de ces amers. En particulier, l’instant (et donc les positions) de disparition et d’apparition est une information que connaît le système ; – le robot converge successivement vers des positions intermédiaires clés. Les amers sont

donc associés à un déplacement entre deux positions du chemin. Lorsque le système robo- tique a atteint une de ces positions intermédiaires, la localisation des nouveaux amers est relativement aisée, puisque l’image fournie par la caméra est quasiment identique à celle associée à la position clé.

La première hypothèse impose de connaître le modèle de la scène, de manière a priori ou suite à une phase de reconstruction. La représentation interne de l’environnement de navigation proposée dans ce manuscrit ne contient pas cette information.

La deuxième approche contraint le robot à ne pouvoir se déplaçer qu’en ré-exécutant des trajectoires préalablement apprises. Cette approche est contraignante puisque le robot se voit dans l’incapacité de s’éloigner de cette trajectoire s’il veut pouvoir détecter la rentrée de nouveaux amers dans le champ de vision.

Supposer que le robot parviendra toujours à converger vers chacune des différentes positions intermédiaires est une contrainte forte imposée à la tâche de navigation. Par exemple, l’apparition de nouveaux obstacles dans l’environnement depuis la phase d’apprentissage peut rendre impos- sible d’atteindre exactement chacune de ces positions clés. Enfin, cette hypothèse (tout comme la précédente) contraint les mouvements possibles du système robotique alors qu’il apparaît logique de lui laisser le plus de liberté d’action afin de pouvoir s’adapter au mieux aux éventuelles évolutions qu’a pu connaître l’environnement de navigation depuis la phase d’apprentissage.

L’approche que nous proposons repose sur l’utilisation du chemin d’images obtenu par la phase de localisation du robot dans l’environnement (présentée dans le chapitre précédent). Les primitives en correspondance entre les différentes vues de ce chemin constituent les amers que nous cherchons à localiser lorsque ceux-ci rentrent dans le champ de vision de la caméra.

Nous ne supposons pas connaître le modèle 3D de la scène. La localisation du système

robotique revient à situer l’image courante de la caméra par rapport aux différentes vues du chemin, en fonction des primitives en commun.

Le schéma de mise à jour des amers est constitué des étapes suivantes (voir la figure 3.1) : – suivi de primitives : puisque certaines primitives étaient déjà visibles dans l’image précé-

dente de la caméra, celles-ci sont suivies pour connaître leur position dans la nouvelle image acquise. Nous utiliserons l’algorithmeKLTpour réaliser ce suivi ;

– localisation topologique : la position du système robotique dans l’environnement de navi- gation n’est pas calculée de manière explicite. La localisation effectuée consiste à détermi- ner les matrices d’homographie entre la vue courante de la caméra et les différentes vues du chemin avec lesquelles elle partage des primitives ;

– transfert d’images : ces matrices permettent ensuite de projeter depuis le chemin vers l’image courante les primitives qui n’étaient pas visibles (ou considérées comme telles) dans la vue précédente de la caméra ;

– insertion des nouveaux amers : l’apparition de nouveaux amers est alors constatée si cer- taines de ces projections sont dans le champ de vision de la caméra.

Acquisition image Localisation topologique Suivi de Insertion des nouveaux amers Transfert d’images primitives