Si l’on effectue un saut dans le temps, et que l’on retourne en 1908, devant l’usine de Monsieur Henry Ford, nous pouvons alors assister à la sortie de la première automobile produite en quantité industrielle, la Ford T. Sur ce modèle, pas encore d’ouverture centralisée des portes. D’ailleurs à quoi bon puisqu’il suffit d’enjamber la portière pour rentrer dans le véhicule. Le problème du trousseau de clés toujours égaré ne se posait pas encore : pour lancer le moteur, une bonne manivelle suffit, avec un peu d’huile de coude bien sûr. Ce type de véhicule se prête particulièrement à la ballade, avec sa vitesse de croisière avoisinant les 75 km/heure. La comparaison des voitures du siècle dernier avec celles que nous utilisons aujourd’hui montre clairement les progrès effectués dans le domaine de l’industrie automobile, fruits de travaux en mécanique, automatique, physique, électronique, . . . La barrière entre la science-fiction et la réalité se déplace au gré des innovations technologiques de l’industrie automobile. Si les bienfaits de l’automobile pour notre société sont indiscutables, l’augmentation du trafic routier engendre aussi de bien néfastes conséquences. Les accidents de la route, généralement dus à l’inattention du conducteur ou à une mauvaise infrastructure, et la saturation des réseaux routiers des grandes villes deviennent des problématiques majeures, auxquelles à la fois l’industrie automobile et le secteur public tentent d’apporter des réponses.
Les capteurs pour la navigation
Parmi les différents capteurs existant sur le marché, les systèmes GPS (Global Positionning System) apparaissent naturellement comme des capteurs très intéressants [Cordesses 00, Katsura 03] ; ils permettent en effet d’effectuer une localisation géo-référencée du capteur, par un processus de triangulation d’ondes émises par des satellites. Combinés avec une carte du réseau routier, ils peuvent réaliser une localisation précise d’un véhicule [ElNajjar 03]. Néanmoins, de nombreuses conditions doivent être satisfaites pour que ces systèmes puissent être utilisés efficacement. Ainsi, leur bon fonctionnement passe non seulement par une bonne couverture satellitaire, mais aussi par une topologie adéquate de l’environnement. En effet, ce système reste encore aujourd’hui inopérant si le capteur se situe dans une zone où il ne « voit » pas directement les satellites qui lui permettent de se localiser. La mise en service du système GALILEO permettra d’avoir dans un futur proche plus de satellites à disposition ; de nouveaux protocoles de système GPS s’intéressent au dur problème de la réflexion des ondes sur les bâtiments; certains travaux scientifiques considèrent les problèmes de localisation en environnement urbain et encombré [Cui 03]. Si l’avenir de ce système de localisation semble prometteur, il reste cependant aujourd’hui difficile d’effectuer une localisation correcte et précise si le capteur est situé dans une zone encaissée, comme dans l’exemple typique du « canyon urbain », où la route est encadrée par de hauts bâtiments.
Les capteurs de type laser permettent aisément d’obtenir une carte de profondeur d’un environnement. Le laser est très souvent employé pour les opérations de localisation et de modélisation simultanées dans des environnements intérieurs [Thrun 00, Guivant 01, Victorino 01, Victorino 04]. Il peut aussi être utilisé pour effectuer des reconstructions denses et très précises d’objets ou de bâtiments [Curless 96]. Les systèmes de localisation utilisant un tel capteur sont basés sur l’hypothèse que la structure géométrique de l’environnement dans lequel se situe le système robotique est une information suffisante pour localiser le robot. Or la majeure partie des rues d’une ville possède la même topologie, à savoir une route entourée de bâtiments. Dans ces cas de figure, le laser peut connaître des difficultés pour distinguer une rue d’une autre de manière efficace. Les ambiguïtés sont généralement levées en déplaçant le système robotique, afin que l’évolution de la structure géométrique de la scène durant le mouvement lui permette de mieux caractériser sa position. Cependant, la localisation peut s’avérer délicate si la structure de l’environnement proche n’est pas assez discriminante pour le différencier du reste de la scène, et si cette localisation doit s’effectuer sans mouvement et sans utilisation d’information a priori sur la position courante du système robotique.
Les capteurs de vision sont de plus en plus employés pour réaliser des tâches de déplacement autonome de systèmes robotiques [Chaumette 90, Hutchinson 96, Malis 00, Burschka 01, Blanc 04]. La richesse de l’information contenue dans les images rend les caméras adaptées à une très grande variété d’environnements. De plus, de nombreux systèmes de localisation basés vision ont été proposés et démontrent ainsi l’efficacité de ce capteur [Ulrich 00, Se 02, Wolf 02, Kosecká ˘ 03]. Les caméras catadioptriques, encore appelées caméras omnidirectionnelles, apparaissent particulièrement performantes pour les opérations de navigation de systèmes robotiques [Gaspar 00, Matsumoto 00a, Gaspar 00, Paletta 01, Menegatti 04, Mezouar 04]. L’un des principaux avantages de ces capteurs est qu’ils fournissent une description de 360 degrés de l’environnement. Cette vue panoramique permet de minimiser l’impact de la présence d’éventuels obstacles inconnus, puisqu’ils n’occupent qu’une petite zone dans les images. De nombreux robots mobiles d’intérieur utilisent ce genre de capteurs pour se localiser ou bien se déplacer, la caméra étant généralement située sur le dessus du robot. Si une telle installation est facilement réalisable pour cette classe de robots, elle apparaît en revanche beaucoup plus difficile à mettre en œuvre pour un véhicule de la taille d’une automobile. La seule manière de conserver le champ de vision de ces caméras serait en effet de les percher au dessus du toit de la voiture. Dans une telle position, le capteur ne permettrait alors pas de décrire l’environnement qui se situe au niveau du sol, comme les piétons par exemple. De plus, ce type de capteur reste encore aujourd’hui beaucoup plus fragile et onéreux qu’une caméra classique.
Une description de l’environnement valide pour la localisation et la navigation
Les problèmes de localisation et de navigation ont pendant de très longues années été considérés de manière indépendante par la communauté scientifique. La complexité de chacune de ces deux tâches nécessitait, à raison, de se concentrer sur l’une ou l’autre problématique, avant de pouvoir espérer les enchaîner. Bien que traitées indépendamment, ces deux techniques imposaient un même pré requis, à savoir la connaissance du modèle 3D de l’environnement. Soit ce modèle est connu a priori [Koditschek 87, Thrun 96, Arikan 01, Yuen 02, Dao 03], soit il est reconstruit durant une phase autonome de reconstruction [Victorino 00, Burschka 01, Se 02, Davison 03, Royer 04]. La reconstruction 3D n’est cependant pas une opération triviale et reste encore un axe de recherche scientifique très actif. Bien que les progrès scientifiques, tant sur le formalisme théorique de reconstruction que sur la puissance des ordinateurs, portent à espérer que cette tâche puisse bientôt être traitée « à la volée », la reconstruction 3D n’en reste pas moins un problème ouvert.
L’une des difficultés auxquelles doivent se confronter les techniques basées modèle (reconstruction, localisation ou navigation) vient de la nécessité de traduire l’information initialement obtenue dans l’espace de mesure du capteur vers un repère global tridimensionnel lié à la scène. Pourtant, cette traduction n’est pas impérative pour effectuer des tâches de localisation ou de navigation. Preuve en sont les nombreux travaux opérant directement dans l’espace des mesures des capteurs. Les travaux de reconnaissance d’images permettent, pour une image « inconnue », de détecter automatiquement dans une base d’images celles qui lui sont visuellement proches [Ulrich 00, GonzalesBarbosa 02, Wolf 02, Kosecká ˘ 03, Zhou 03]. Une localisation est donc réalisable directement à partir de prises de vue sans nécessiter une reconstruction de l’environnement. Les approches de navigation par asservissement visuel montrent qu’un schéma de contrôle des mouvements d’un système robotique peut être directement établi à partir de données images [Malis 99, Mezouar 02b, Tahri 04]. Le modèle de la scène n’est donc pas un prérequis impératif. Ces caractéristiques ne sont pas nouvelles, et ont déjà été mises à profit dans de nombreuses applications. Cependant, rares sont les travaux permettant de réaliser conjointement la localisation et la navigation dans un même formalisme. La représentation de l’environnement est donc fortement orientée localisation ou navigation, mais rarement les deux. La plupart des techniques de localisation basée apparence représentent l’environnement par un ensemble de prises de vue [Matsumoto 00b, Wolf 02, Kosecká ˘ 03, Menegatti 04]. L’organisation de cette base consiste généralement à représenter les images dans un espace associé aux descripteurs images utilisés. Si cette représentation est performante pour la localisation, elle ne permet pas de définir le chemin que doit réaliser le système robotique pour atteindre une position. Les techniques de navigation robotique basée vision représentent un environnement par un ensemble de prises de vue à des positions clés de l’environnement. Si ces images permettent de suivre et contrôler l’avancement du système robotique, elles ne lui donnent généralement pas la possibilité de se localiser de manière autonome avant le début de son déplacement.
Localisation quantitative et localisation qualitative
La localisation quantitative et la localisation qualitative se différencient par la précision recherchée. La première consiste à localiser de manière fine le robot, généralement en estimant la pose du robot par rapport à un repère lié au modèle de la scène [Cobzas 01, Wolf 02, Dao 03]. La localisation qualitative effectue « simplement » une mise en relation des informations du capteur avec celles stockées dans la base. Par exemple, ces techniques fournissent les images de la base qui, en terme de contenu visuel, sont proches de la prise de vue fournie par la caméra [Kröse 99, Sim 99, Paletta 01, Menegatti 04]. Puisque les informations visuelles contenues dans une image dépendent de la position de la caméra qui l’a acquise, déterminer les images les plus proches de la base permet d’avoir une information qualitative de la position du robot. Comme nous l’avons déjà signalé, les techniques d’asservissement visuel permettent de contrôler les mouvements d’un système robotique à partir d’images, même si la pose du robot est inconnue [Chaumette 90, Hutchinson 96]. En principe, il n’est donc pas nécessaire de connaître la position précise du robot pour effectuer une tâche de navigation.
Localisation AVANT le mouvement et PENDANT le mouvement
Bien que ces deux localisations nous semblent bien différentes, elles ne sont généralement pas clairement dissociées dans la littérature. Un système robotique doit pouvoir se localiser avant de commencer son déplacement afin justement de définir son plan de navigation. Dans la plupart des techniques de navigation basées vision, cette localisation initiale n’est que très rarement effectuée : la position initiale du robot est en effet souvent supposée connue [Matsumoto 00a, Argyros 01, Cobzas 03, Smith 02]. Naturellement, cette hypothèse est convenable dans de nombreux cas de figure. Cependant, si l’on donne aux systèmes robotiques la capacité d’effectuer cette localisation initiale, ceux-ci ne seront que plus autonomes.
D’un autre coté, de nombreuses méthodes de localisation s’aident du mouvement du robot afin de définir précisément sa position dans l’espace [Burgard 98, Victorino 00, Thrun 00]. La comparaison du modèle global de l’environnement avec le modèle local, déduit des informations du ou des capteurs, ne donne généralement pas qu’une seule position possible pour le robot, et son déplacement permet de lever ces ambiguïtés. Finalement, ces techniques permettent de localiser le robot pendant son déplacement et non pas avant celui-ci. Les techniques proposant de localiser un robot sans qu’il ait à se déplacer sont généralement basées sur une description fine des images fournies par la caméra [Kröse 99, Sim 99, Paletta 01, Menegatti 04]. Cependant, plus la taille de la scène est grande, plus ces méthodes deviennent coûteuses en temps de calcul. Elles semblent donc difficilement utilisables pour la localisation du système robotique durant sa navigation, où le temps de réponse est une contrainte forte.
La localisation initiale du système robotique doit permettre de créer un lien avec la position qu’il doit atteindre. Par ce lien, il est alors possible de délimiter l’environnement local que doit traverser le robot pour atteindre son but. Si le système robotique doit pouvoir se localiser avant son déplacement dans l’ensemble de la scène, durant le déplacement il n’a besoin de connaître son avancement que par rapport au chemin qu’il s’est donné pour atteindre son but.
|
Table des matières
Introduction
1 Fondements théoriques
1.1 Géométrie des caméras
1.1.1 Relation entre l’espace euclidien et l’espace projectif
1.1.2 Modèle sténopé d’une caméra
1.1.3 Géométrie de deux images
1.1.3.1 La géométrie épipolaire
1.1.3.2 Les matrices fondamentales et essentielles
1.1.3.3 Homographie entre deux prises de vue
1.1.3.4 Estimation du mouvement rigide
1.2 Description du contenu d’une prise de vue
1.2.1 Représentation des images
1.2.2 Caractérisation des primitives visuelles
1.2.3 La mise en correspondance
1.2.4 Le suivi de primitives
1.3 Conclusion
2 Représentation d’un environnement de navigation
2.1 État de l’art
2.1.1 Représentation géométrique
2.1.1.1 Projection de l’environnement dans l’espace des configurations
2.1.1.2 Modèle tridimensionnel de la scène
2.1.2 Représentation basée apparence
2.1.2.1 Description par séquences d’images
2.1.2.2 Représentation par lieux
2.1.2.3 Description par vues
2.1.3 Positionnement
2.2 Une mémoire visuelle de l’environnement
2.2.1 Localisation basée apparence
2.2.1.1 La reconnaissance d’images comme outil de localisation
2.2.1.2 Caractérisation locale d’une prise de vue
2.2.1.3 Indexation d’images sur les invariants photométriques
2.2.1.4 Résultats expérimentaux
2.2.2 Structuration de la mémoire visuelle de l’environnement
2.2.2.1 Fonction de coût inter-image
2.2.2.2 Génération de graphes hiérarchiques
2.2.3 Transcription et résolution d’une tâche de navigation
2.2.4 Schémas temporels récapitulatifs
2.2.5 Résultats expérimentaux
2.2.5.1 Recherche de chemin classique
2.2.5.2 Valuation basée sur le mouvement
2.2.5.3 Recherche de chemins avec les graphes hiérarchiques
2.3 Conclusion
3 Mise à jour des amers visibles durant la navigation
3.1 Gestion de l’évolution des amers visibles : état de l’art
3.1.1 Méthodes n’utilisant pas d’amers locaux
3.1.2 Mise à jour basée sur la connaissance du modèle de la scène
3.1.3 Méthodes basées sur la connaissance de la trajectoire des primitives
3.1.4 Positionnement
3.2 Gestion de l’évolution des amers visibles
3.2.1 Reprojection à partir de la matrice d’homographie
3.2.2 Approche proposée : cas d’une scène tri-dimensionnelle
3.2.2.1 Protocole de mise à jour des primitives visibles
3.2.2.2 Estimation de l’épipole et initialisation de la boucle
3.2.3 Cas d’une scène plane
3.2.3.1 Transfert de primitives
3.2.3.2 Schéma de mise à jour des primitives
3.2.4 Résultats expérimentaux
3.2.4.1 Cas d’une scène plane
3.2.4.2 Cas d’une scène tridimensionnelle
3.3 Conclusion
4 Contrôle des mouvements d’un système robotique
Conclusion