Télécharger le fichier pdf d’un mémoire de fin d’études
Détection par des capteurs actifs
Un capteur est dit « actif » s’il produit une énergie envoyée sur la scène ; les obstacles sont détectés par l’énergie réfléchie par leur surface. Un capteur actif possède donc à la fois un émetteur et un récepteur. Nous décrivons rapidement les méthodes fondées sur la télémétrie laser et le radar. Ces deux capteurs actifs sont les plus utilisés sur des véhicules ou sur des robots d’extérieur, parce qu’ils sont robustes aux variations des conditions atmosphériques (pluie, neige) ou à des conditions dégradées d’illumination. Les méthodes visuelles connaissent beaucoup de défaillances dans ces situations. Sur les robots de ser-vice évoluant en milieu intérieur, les capteurs ultrasonores ou infrarouges sont également très souvent exploités pour détecter des obstacles proches pendant les mouvements ; ils sont intégrés sous la forme de ceintures de capteurs disposés tout autour du robot. Depuis quelques années, des proximètres ultra-sons sont également intégrés dans les pare-chocs des véhicules grand public, en tant que capteur de recul. Nous ne détaillerons pas ces méthodes, car généralement, les informations qu’ils fournissent peuvent être peu précises et très pauvres.
Cette section décrit rapidement les méthodes de détection d’objets qui utilisent le télémètre laser et le radar. Il décrit d’abord de façon séparée les stratégies utilisées pour chaque capteur et ensuite des approches qui utilisent les deux capteurs simultanément seront présentées. Une brève conclusion sera présentée à la fin de la section.
Détection par télémètre Laser
La télémétrie laser combine un système électronique pour la mesure ponctuelle de distance à partir d’un faisceau laser réfléchi par l’obstacle, et un mécanisme de déviation du faisceau émis et de balayage pour acquérir des coupes ou des images de distance dans une région d’intérêt quelconque. La lumière réfléchie par un obstacle quelconque se trouvant dans l’axe du tir revient vers le capteur et est perçue par un récepteur ; la distance capteur-obstacle est obtenue de manière classique par le temps de vol d’une impulsion laser, ou par le déphasage d’un signal modulé en amplitude ou en fréquence. Tous les impacts laser sont dans un plan si le balayage est seulement en azimut, ou sont dans l’espace 3D si le balayage est en site et azimut.
L’emploi de la télémétrie laser est très courant sur des véhicules haut de gamme, ou sur des robots de service, car la mesure est rapide, la portée peut être importante (plusieurs centaines de mètres selon le type de télémètres utilisé, et les taux d’échecs (faux négatifs ou faux positifs) très faibles : en figure 2.2, nous présentons les télémètres les plus répandus. Citons par exemple [30] où les auteurs utilisent les mesures acquises par un télémètre laser IBEO pour détecter les objets dans la scène. Ce capteur retourne une image de profondeur haute résolution. Dans [54] le module de détection d’obstacles emploie un filtre d’association probabiliste et des réseaux bayésiens pour estimer la probabilité de détection à l’instant suivant. Lors du DARPA Grand Challenge, de nombreux véhicules étaient équipés du capteur laser Velodyne (figure 2.2c) qui permet d’acquérir des images 3D panoramiques de très grande résolution à 30Hz. Signalons toutefois les difficultés pour traiter de telles images, en particulier du fait des problèmes de calibrage.
Cependant, il arrive fréquemment que les systèmes robotiques soient équipés avec des télémètres la-ser de plus basse résolution, comme dans les travaux de Mendes [76]. Pour ces télémètres, l’information est parfois insuffisante et même de légères vibrations peuvent perturber les mesures. Ces capteurs laser sont donc excellents pour la détection des obstacles, mais leur faible résolution rend difficile l’identifi-cation des objets détectés. Pour pallier ce défaut, de nombreux auteurs ont étudié la fusion des données laser avec l’information visuelle. Par exemple, pour des applications dans la sécurité routière, Labayrade et al. [61] utilisent simultanément deux capteurs 3D qui ont des caractéristiques différentes, la télémétrie laser et la stéréovision.
On trouve surtout dans la littérature, de très nombreux travaux, qui pour différents contextes (na-vigation autonome d’un robot en extérieur et en intérieur, détection de piétons depuis un véhicule in-telligent) proposent de fusionner les données d’un télémètre laser 2D avec un système visuel monocu-laire [18], [55] et [35] ; généralement les données laser sont analysées pour la détection et l’estimation de la profondeur, tandis que les images donnent une meilleure résolution et caractérisation de l’objet, ce qui permet son suivi et son identification.
Détection par radar
Le radar (RAdio Detection And Ranging) consiste à mesurer les ondes radio (ondes millimétriques, 24GHz ou 77GHz) réfléchies par les objets métalliques, en exploitant la théorie de Doppler pour détecter leurs déplacements en fréquence. Le radar peut être exploité pour détecter des objets avec de très grandes portées ; il peut être utilisé en statique (par exemple, détection d’intrusion dans un environnement sen-sible) ou mobile (par exemple, détection d’obstacles depuis un véhicule). Cependant, comme pour les signaux lumineux émis par un télémètre laser, la portée de détection maximale d’une cible réfléchissant des signaux hyperfréquences, dépend de la texture de la cible et de la spécularité, ou angle entre rayon incident et normale à la surface. Concernant les applications Robotique, le radar est resté longtemps peu exploité à cause de son coût, et surtout, de la difficulté pour acquérir un capteur, car cette technologie était principalement réservée aux applications de défense ; cette situation a changé depuis l’introduction du radar dans les véhicules intelligents (en particulier radars vendus par TRW). On voit se multiplier les travaux sur le radar dans la communauté robotique (citons le projet IMPALA en France à Clermont-Ferrand, les travaux de M.D. Adams à Singapour, parmi d’autres).
La résolution angulaire d’un capteur radar est d’une vingtaine de degrés, mais le faisceau du radar, lors de sa propagation, peut détecter plusieurs cibles en même temps dans une région d’intérêt, car tous les échos successifs sont détectés. Cette caractéristique est exploitée dans [67] pour la détection de pié-tons dans un milieu urbain. Le système présenté dans ce travail est constitué de deux capteurs radar de courte portée situés à l’avant d’un véhicule expérimental de Daimler, avec une portée de 30m environ. La difficulté du système est d’identifier les échos renvoyés par des piétons ou par d’autres objets. Pour ce faire, les auteurs proposent une fusion de données entre le radar et des capteurs thermiques ; ces der-niers servent à détecter la radiation thermique émise par les humains. La fusion des données utilise une approche probabiliste, pour construire une grille d’occupation centrée sur la position du robot.
Bien que le radar ne soit pas affecté par la pluie ou la neige, il est très perturbé par des sources d’interférence magnétique. De plus, la facilité avec laquelle un radar détecte un objet à une distance donnée, est directement liée à sa surface équivalente radar (SER). Un véhicule a une SER supérieure à celle d’un piéton (2m2) [63]. La plupart des petits obstacles ont une SER encore plus faible ce qui les rend indétectables. Cet inconvénient rend indispensable l’association d’autres capteurs avec le radar. Le ladar (association laser et radar) a été proposé pendant les années 70 et 80 [73] grâce à sa meilleure vitesse d’opération par rapport aux capteurs de vision. Cependant dans les années 90, l’évolution des systèmes informatiques a rendu possible, l’utilisation des algorithmes de vision en temps réel : à partir de ce moment-là, il a été possible d’intégrer système radar ou ladar avec des systèmes visuels mono ou multi-caméras pour détecter les objets pendant la navigation d’un véhicule intelligent [56]. Citons un autre système de fusion multi-capteurs, le système FADE, développé à l’école de Mines de Paris [57] exploité pour la détection de véhicules sur route depuis des capteurs embarqués sur un véhicule expérimental. Les capteurs utilisés sont une caméra (couleur ou N/B), un radar et des capteurs proprioceptifs pour la géolocalisation du véhicule (vitesse, angle volant). La détection des autres véhicules depuis les images en vision monoculaire est faite en fusionnant les résultats de plusieurs algorithmes qui détectent les ombres portées, les phares, les lignes horizontales et verticales et les symétries locales. Les résultats obtenus par ce système montrent que les véhicules présents sont correctement détectés en milieu urbain, avec un minimum de fausses détections. Cependant ce système est encore loin d’être généralisé pour être appliqué dans des environnements plus complexes comme sur terrain naturel avec végétation, où les objets sont non structurés, donc plus difficiles à caractériser.
Conclusion pour les capteurs actifs
Les technologies laser et radar fournissent des données sensorielles 3D en temps réel, à haute fré-quence ; l’exploitation de telles données rend plus robuste la tâche de détection et de localisation d’objets par un système robotique mobile ou un véhicule intelligent, même dans des environnements complexes comme dans des scènes urbaines ou routières. Par contre, s’il y a plusieurs systèmes autonomes qui, en même temps, utilisent ces capteurs actifs, l’interférence entre eux sera inévitable. Soulignons aussi qu’un système radar a un coût élevé, ce qui doit être considéré avant sa mise en œuvre dans un projet.
D’autre part un télémètre laser plan est fortement perturbé dans ses mesures, par la pente du sol, et par les variations d’attitude du véhicule sur lequel il est monté, en particulier l’angle de roulis (l’angle autour de l’axe Y dans le système de référence du véhicule qui porte le capteur, voir section 5.2.3) qui change dans les phases de freinage ou d’accélération : dans ces situations le plan laser n’est plus parallèle à la route. Ces problèmes ont justifié l’introduction de télémètres multi-plans (citons IBEO ALASKA), encore plus onéreux.
L. Matthies et. al. [74] indiquent que le choix entre radar, télémétrie laser ou vision pour détecter des obstacles dans une scène depuis un véhicule, dépend de la fréquence d’apparition des objets dans l’environnement de navigation et de la vitesse du véhicule qui porte les capteurs. Si la fréquence est faible et les vitesses aussi, il est plus avantageux d’exploiter la vision. Par exemple, les auteurs précisent que l’utilisation d’un système ladar pour un robot d’exploration planétaire, n’est pas nécessaire vu la très faible fréquence d’apparition d’obstacles et vu la faible vitesse du véhicule.
Détection d’objets par capteurs passifs basées sur la vision
Un capteur passif ne fait que recevoir l’énergie naturellement réfléchie par les objets présents dans la scène. Plusieurs capteurs passifs sont utilisés pour la robotique ou pour la surveillance : les capteurs inertiels (détection de vibrations, de mouvement), les capteurs haptiques (contact), mais les plus connus sont les capteurs visuels, donc des caméras CCD ou CMOS [87]. En tant que capteur passif, une caméra mesure l’intensité lumineuse émise par l’environnement sous la forme d’une image digitalisée, ou d’un tableau de pixels.
Un capteur visuel devient actif dès lors qu’on lui associe un projecteur ou illuminateur qui envoie sur la scène un motif lumineux (mouchetis aléatoire, matrice de points laser, profil laser). Par exemple l’image d’une nappe laser projetée au sol permet de détecter les trous, les obstacles ou une marche. Nous pouvons ranger dans cette classe, les caméras 3D à temps de vol optique, aussi appelées Photonic Mixer Devices (PMD) (Swiss Ranger, Canesta. . . ). Ces capteurs visuels actifs sont exploités pour la détection d’obstacles proches, mais pour l’instant, à notre connaissance, ils sont peu exploités sur véhicules. C’est la raison pour laquelle, ils restent très chers (plus de 5000 C pour un Swiss Ranger), mais le tout nouveau Kinect de Microsoft (150 C), pour l’instant exploité pour les jeux interactifs, pourrait changer la donne.
Nous ne présentons ci-dessous que la vision passive, avec les deux configurations principales uti-lisées pour acquérir les images : les capteurs stéréo et monoculaire, ainsi que les différentes manières d’analyser ces images. Nous commencerons par rappeler les concepts fondamentaux de la stéréovision avant de décrire les principales méthodes proposées pour détecter des obstacles mobiles à partir de don-nées sensorielles acquises par stéréovision. Ensuite, nous décrirons l’analyse spatio-temporelle réalisée sur les images monoculaires dans le but de décrire son contenu. Finalement, une brève conclusion à propos des capteurs visuels passifs sera présentée à la fin de cette section.
La stéréo-vision
Les systèmes de stéréovision permettent de calculer par triangulation, la profondeur des objets dans l’espace 3D, grâce à leurs projections dans les plans des deux caméras. La différence des positions dans les deux images, de la projection d’un même point de l’espace 3D, s’appelle la disparité ; la recherche des points correspondants entre ces deux images, permet donc de produire une image de disparité. En supposant que les caméras ont des axes optiques parallèles, comme dans le capteur Bumblebee vendu par la compagnie Point Grey (figure 2.3b), alors la disparité est inversement proportionnelle à la profondeur. Ainsi la disparité est nulle pour un point à l’infini, par exemple un point sur la ligne d’horizon.
La figure 2.3a illustre un montage typique de deux caméras en configuration stéréo, configuration appelée aussi banc stéréo. Si le banc stéréo est calibré, les coordonnées du point 3D correspondant à un pixel apparié de l’image de disparité, peuvent être calculées. On sait que la précision du capteur stéréo est proportionnelle à la profondeur au carré ; de ce fait, la portée utile d’un tel capteur est limitée, typi-quement quelques mètres sur des focales courtes (5m. par exemple pour la détection d’obstacles proches en site urbain), quelques dizaines de m. sur des focales longues (40 ou 50m. max pour la détection d’obs-tacles lointains sur route).
Les approches pour construire l’image de disparité depuis une paire de caméras sont classifiées en méthodes éparses et denses. Dans les méthodes éparses les images droite et gauche sont d’abord pré-traitées pour extraire des indices visuels discriminants (points d’intérêt ou segments). Ce sont ces indices qui sont appariés et reconstruits. Dans le cas des méthodes denses, les pixels sont tous appariés en ex-ploitant une mesure de ressemblance (corrélation par SAD, SSD, ZNCC, distance de Hamming entre code CENSUS). Ces méthodes denses peuvent être optimisées en adoptant une approche pyramidale : les disparités sont d’abord recherchées à faible résolution (images 80 60) avant d’être raffinées en des-cendant la pyramide jusqu’à l’image initiale (640 480 par exemple).
Le problème classique de la vision, est le temps de traitement des images, notamment pour la détec-tion d’obstacles qui requiert une grande réactivité. Plusieurs solutions ont donc été proposées pour dimi-nuer le temps de calcul de l’image de disparité, en particulier en employant les systèmes re-configurables principalement les FPGA (Field Programming Gate Array). L’avantage de l’implémentation d’un algo-rithme sur FPGA, réside en sa capacité d’exécuter plusieurs opérations en parallèle, ce qui accélère considérablement le calcul même pour un processus dense. Des systèmes stéréo sur FPGA commer-cialisés produisent des images de disparité à 30Hz à la résolution VGA ; ils ont des performances très convenables pour traiter des applications en robotique ou pour les transports [66].
Un algorithme de stéréovision basé sur la transformée CENSUS et la mise en correspondance par dis-tance de Hamming, a été développé dans notre équipe sur une architecture FPGA par Ibarra et al. [52]. L’architecture proposée permet de générer une image de disparité dense à 100Hz pour la résolution 640×480 pixels. La figure 2.4c montre l’image de disparité calculée par l’architecture FPGA depuis les images stéréo 2.4a et 2.4b ; en figure 2.4d, l’image de disparité est lissée par un filtre médian ; les zones bruitées sur les bords de ces images sont des artefacts créés par l’algorithme. Les niveaux de gris dans l’image de disparité représentent le niveau de profondeur dans la scène ; les pixels gris les plus clairs désignent les objets les plus proches des caméras ; les plus éloignés sont en noir. La voiture garée dans la scène est notablement identifiable par la disparité. Grâce à cette carte il est possible de connaitre la profondeur des points, ce qui peut permettre de segmenter les objets par leur profondeur. La navigation d’un robot mobile ou d’un véhicule autonome basée sur la vision stéréo, peut donc être effectuée en temps réel, même si les conditions de l’environnement ne sont pas très favorables [52].
Le problème de l’auto-calibration. Le besoin de calibrer un banc stéréo (comme celui montré en figure 2.3a) périodiquement après son montage sur un robot ou un véhicule, est considéré comme un des principaux problèmes liés à la stéréovision ; en effet, la performance d’un banc stéréo (nombre de pixels appariés, nombre de faux appariements, précision de la reconstruction 3D) dépend totalement du calibrage. L’auto-calibrage, c’est-à-dire l’estimation des paramètres du capteur sans exploiter de mires, est toujours un sujet de recherche très étudié, depuis l’article fondateur de O.Faugeras en 1992 [32]. C’est un problème difficile, surtout quand il faut le résoudre en temps réel, donc sans faire appel à des méthodes d’optimisation trop lourdes.
Vu cette limitation, au LAAS il a été proposé dans les travaux de J.Sola [90], une approche limitée de correction du calibrage en considérant connus les paramètres intrinsèques des caméras. L’auteur propose de ré estimer la rotation entre les deux caméras dans la boucle de localisation, sur la base d’amers visuels appris soit au préalable, soit en simultané (cas du SLAM). Cependant, aujourd’hui il est possible de se passer de cette étape, car sur le marché, il existe des bancs stéréo pré calibrés, comme le BumbleBee2 de Point Grey Research©(voir photo en figure 2.3b). Par ailleurs ce système stéréo produit une image de disparité à la résolution VGA à plus de 48Hz ; même si ces images de disparité sont assez imprécises et contiennent quelques artefacts, les grands problèmes de la stéréovision sont bien résolus par ce système. Le bémol identifié pour ce banc stéréo est qu’il continue à être cher, que sa configuration est rigide (base fixe) et surtout que l’utilisateur dépend directement de techniques préprogrammées pour l’obtention de la carte de disparité.
La détection d’objets par stéréo-vision. Citons les nombreux travaux du JPL en Californie sur la détection d’obstacles mobiles depuis un capteur stéréo embarqué sur un robot. Dans certains cas, ils estiment le mouvement propre du robot pour distinguer le mouvement apparent des composantes sta-tiques de la scène de celui des composantes mobiles. Cette estimation est ainsi exploitée pour corriger le flot optique en « retirant » le mouvement du système, comme cela est proposé dans [93]. Dans ce travail, Talukder et al. utilisent des champs denses de disparité stéréo et ils suppriment les petites régions non connectées dans le champ du flot estimé.
D’autre part, si on considère que le banc stéréo est calibré et que sa position sur le robot est connue, alors la détection d’obstacles peut être réalisée par une rectification homographique [101]. La rectifica-tion homographique transforme une des images de la paire stéréo (par exemple, la droite), de manière à ce que le plan de la route soit identique entre image gauche et image droite rectifiée. Une simple diffé-rence entre ces deux images permet alors de discriminer les pixels correspondants à des points 3D qui ne sont pas portés par ce plan. Après que ces pixels associés à des points 3D qui ne sont pas sur la route ont été mis en évidence, les obstacles sont segmentés, puis caractérisés par une analyse de connexité et de similarité. La rectification homographique est appliquée a priori à l’aide d’une calibration préalable du système stéréo et du plan de la route. Cette méthode suppose que la route est plane, ce qui en pratique, la rend inexploitable en milieu naturel.
Par ailleurs, Lefebvre, Ambellouis et Cabestaing [64] proposent une méthode générique de mise en correspondance qui exploite des caractéristiques extraites d’un ensemble de courbes de similarité cal-culées sur des fenêtres 1D. Cette méthode a été appliquée dans le cadre d’une application de détection d’obstacles à l’avant d’un véhicule routier. Les auteurs proposent un procédé assez simple pour segmen-ter une carte de disparité : ils montrent que la détection des obstacles est plus précise qu’avec des cartes des disparités calculées sur des voisinages 2D.
Signalons aussi les approches comparées par V. Lemonde [66] au LAAS-CNRS pour la détection d’obstacles proches (à moins de 5m. par exemple), à partir de la stéréovision : on peut faire sans risque dans ce cas, une hypothèse de route plane.
D’abord l’auteur a exploité le concept de v-disparité, qui permet de détecter les obstacles direc-tement à partir de l’image de disparité. Depuis les travaux de R. Labayrade [61], il est connu que cette approche est très sensible aux erreurs sur l’attitude du capteur vis-à-vis du plan de la route. Puis V. Lemonde a proposé de détecter les obstacles à partir de l’image de points 3D reconstruites à partir de l’image de disparité, simplement par seuillage sur l’élévation de ces points au-dessus du plan de la route. Les points étiquetés Obstacle sont ensuite regroupés en fonction d’un critère de connexité. Finalement, la création d’enveloppes permet de modéliser ces ensembles de points par des parallélépi-pèdes rectangles. Ces boites englobantes permettent d’associer les obstacles détectés d’une image à la suivante, et d’estimer grossièrement leurs dynamiques s’il s’agit d’obstacle mobile.
Dans le cas général d’obstacles détectés sur une route, l’auteur propose une approche très inspirée de la v-disparité, sauf que les cumuls se font dans le domaine 3D, donc successivement sur les coordon-nées X,Y et Z des points de l’image 3D, ce qui rend plus facile le regroupement des points Obstacle en objets disjoints, et ce qui permet également de traiter de manière plus robuste, le cas du dévers de la route ou du roulis non nul du véhicule.
Ces méthodes supposent que la route est plane, ce qui en pratique, les rendent inexploitables pour la navigation sur terrain accidenté en milieu naturel ; dans ce cas, la détection d’obstacles se mue en la construction d’une carte de traversabilité du terrain, à partir d’une carte d’élévation (ou Modèle Numé-rique du Terrain) [62].
Capteur de vision Infrarouge (IR)
Malgré leur faible résolution et le mauvais contraste des images qu’elles fournissent, les caméras infrarouges sont exploitées pour la navigation de véhicules dans des conditions de visibilité difficiles, soit la nuit, soit en cas de mauvaises conditions météo par exemple avec du brouillard ou de la neige. On trouve dans la littérature de nombreux travaux sur la détection d’objets depuis des caméras IR de nuit [73] ou avec de la fumée [36].
La bande de fréquence de l’infrarouge est divisée en 3 : bande I (1-1,7 mm), bande II (3-5 mm) et bande III (8-12 mm). Les caméras IR correspondantes ont différentes capacités et propriétés. Par exemple l’eau absorbe plus ou moins les ondes infrarouges selon la fréquence. En plus, les images infrarouges ne sont pas très texturées, ce qui empêche l’utilisation des techniques traditionnelles pour la détection de texture ou d’indices visuels. Deux images acquises par une caméra infrarouge 1 sont montrées dans la figure 2.5.
En ce qui concerne la navigation d’un véhicule intelligent dans un milieu extérieur inconnu, citons les travaux de Talukder et al. [93] réalisés avec un véhicule expérimental équipé avec une paire de caméras IR qui opèrent dans la bande 3-5 mm. Les algorithmes de stéréovision et du flot optique dense exécutés à partir d’images infrarouges, sont utilisés pour la détection d’objets dynamiques dans l’environnement. Plus récemment, Alonzo Kelly et al. [56] et Larry Matthies et al. [74] ont présenté une synthèse des résultats obtenus en matière de navigation soit sur des terrains naturels couverts de végétations, soit pour l’exploration planétaire. Ils concluent que l’exploitation de capteurs infrarouges est essentielle pour l’ex-ploration de terrain inconnu, notamment pour identifier la nature des obstacles, autre véhicule, buisson ou rocher par exemple.
D’autres applications plus spécifiques de l’imagerie infrarouge ont été présentées en 2008 par L. Gond et al. dans [36] pour la surveillance de foules dans un lieu public (gare du métro). Les auteurs utilisent un capteur infrarouge non refroidi dans la bande 8-12 mm, pour reconnaître des situations d’in-cendies ou d’attaques chimiques. Ils ont analysé l’impact des conditions d’illumination sur la qualité des images acquises par ces capteurs infrarouges : ils précisent que la vision dans cette bande infrarouge est sensible à certains facteurs comme la lumière du soleil sur les objets, la pluie ou la neige. Dans ce contexte de vidéo surveillance, la détection de personnes est faite en appliquant la méthode de sous-traction du fond en deux temps. Après une première soustraction de fond, ils calculent l’offset entre la moyenne des modes du modèle SKDA (Sequential Kernel Density Approximation), et la moyenne des pixels classés comme appartenant au fond. Cet offset est utilisé lors d’une seconde soustraction de fond, pour obtenir une image nettement améliorée.
Les caméras infrarouges présentent donc un intérêt certain pour la détection d’obstacles : leurs coûts encore élevés empêchent leur diffusion massive sur les véhicules grand public, mais ils sont exploités, souvent en fusion avec des caméras dans le visible, dans des applications spécifiques comme la sécurité civile, les transports aériens ou la défense.
Vision mono-caméra
Lorsque qu’on ne dispose que d’une unique caméra, les méthodes de détection d’obstacles se fondent sur la reconnaissance de formes ou sur la vision dynamique. Les systèmes les plus avancés combinent ces deux approches :
— Les modèles peuvent aussi contenir les comportements dynamiques caractéristiques d’une classe d’objets (vitesse min et max, type de trajectoires, parmi d’autres).
— Ces modèles peuvent être partiellement acquis ou mis à jour en ligne.
Dans la suite, il est présenté une synthèses des travaux qui concernent l’analyse de séquences d’images monoculaires afin de détecter des objets statiques et dynamiques. Nous ne prétendons pas être exhaustive mais nous présentons les principales méthodes utilisées dans ce contexte car nos contributions concernent aussi la vision monoculaire. Nous trouvons dans la littérature deux grandes approches : l’approche spa-tiale fondée sur l’extraction d’indices visuels dans une seule image, et l’approche temporelle fondée sur la détection de mouvement sur plusieurs images successives. Les approches spatio-temporelles traitent de la détection et du suivi d’indices visuels.
Approche spatiale pour la détection d’objets.
En ce qui concerne l’analyse spatiale, les indices visuels les plus fréquemment identifiés sur les ob-jets dans une image sont les suivants :
— Texture. La texture des objets sur l’image est caractérisée par des variations locales de luminance. La texture est notamment utilisée depuis le traitement d’images médicales à un niveau microscopique pour la recherche de lésions au niveau cellulaire jusqu’à l’analyse d’images satellites pour analyser la nature des sols en télédétection, en passant par les images acquises depuis des camé-ras embarquées ou fixes [39]. Les indices de texture sont extraits couramment par les matrices de co-occurrence, par la technique de sommes et différences d’histogrammes par les réponses à des filtres de Gabor, etc.
— Couleur. La couleur est possiblement l’indice visuel le plus facile à exploiter dans un image. Il est normalement utilisé pour la détection et l’identification d’objets par des classifieurs para-métriques, de type bayésien, SVM ou AdaBoost. Quelques espaces de couleur utilisées dans la communauté de vision sont le RGB, le RGB-normalisé, le HIS pour Teinte/Intensité/Saturation, le CIE-Lab, le CIE- Luv, l’espace de Ohta I1I2I3… Un résumé des caractéristiques de chacun de ces espaces couleur est présenté dans [78].
— Symétrie horizontale. Cet indice peut être utilisé si la géométrie des objets structurés qu’on re-cherche dans l’environnement est symétrique et connue par avance. Par exemple, dans les travaux de Bertozzi et al. [11], les auteurs exploitent le fait que l’image d’un véhicule observée dans une vue frontale, présente une symétrie suivant un axe vertical. Cette symétrie est généralement esti-mée à partir des contours extraits des images.
Nous avons testé dans nos propres travaux, une approche de classification couleur/texture ; cette méthode peut être considérée comme éparse [78], dans la mesure où elle s’appuie sur une segmentation préalable de l’image en régions uniformes en couleur. Dans ce travail l’image couleur est d’abord calculée à partir de l’image brute acquise par une caméra mono-CCD, par un algorithme de démosaïquage qui effectue des interpolations pour obtenir en chaqhe pixel, les trois composantes de la couleur dans l’espace RGB. L’image RGB doit être bien distribuée en couleur car la technique de segmentation dépend directement de l’illumination et de la qualité de la couleur. Par exemple l’image présentée dans la figure 2.6 2, re-quiert une correction chromatique est . L’image à gauche est en format RGB mais il est notable qu’une dominante jaune prédomine partout dans l’image. L’image à droite est obtenue après correction ; bien qu’elle soit moins illuminée, elle a une meilleure distribution de la couleur, ce qui est requis pour obtenir de bonnes performances dans la segmentation.
Ensuite, l’image couleur corrigée est transformée vers l’espace I1I2I3 proposé par Ohta [79] ; ce n’est pas l’espace optimal, mais c’est une transformation linéaire très rapide à appliquer, par rapport en par-ticulier à la transformation vers CIE-Lab. Une méthode de segmentation trouve les régions connexes sur l’image I1I2I3 qui ont les attributs couleur les plus uniformes en fonction de seuils établis a priori. L’image des régions résultant de la segmentation de l’image 2.6b est montrée sur l’image en haut à gauche de la figure 2.7 et à la même position dans la figure 2.8. Notons que le nombre des régions trou-vées dans l’image est très grand (près de 50 régions). Les couleurs utilisées pour distinguer ces régions, n’ont aucune signification ; elles servent uniquement pour distinguer les régions voisines entre elles. À cette étape, il devient nécessaire d’introduire un autre indice visuel afin de caractériser ces régions. Donc, sur chaque région X segmentée dans l’image, des attributs de texture sont calculés en chaque point de X, et les valeurs moyennes de ces attributs sont associées à la région X. Ces attributs de texture sont com-plétés avec les attributs de couleur déjà calculés dans l’étape de segmentation, afin de former un vecteur qui caractérise les propriétés de chaque région X.
Conclusion sur les capteurs de vision
Dans le contexte de la robotique mobile, nous avons décrit les différentes méthodes proposées en vi-sion pour la détection d’objets et pour la classification des régions segmentées sur les images. D’une part les inconvénients de la stéréovision sont devenus de moins en moins gênants avec les nouveaux disposi-tifs commerciaux pré calibrés : donc ces capteurs sont des candidats très pertinents pour les applications robotiques, mais ils restent encore difficilement acceptables économiquement sur des véhicules grand public. D’autre part utiliser la vision monoculaire reste un challenge pour les applications d’extérieur du fait des conditions d’illumination et d’une excessive variation des caractéristiques de texture.
En recourant à des architectures dédiées embarquables comme les systèmes à base de FPGA (les GPU ne sont pas embarcables pour l’instant), des grandes améliorations dans les temps de traitement sont obtenues, ce qui rend possible de proposer en robotique des algorithmes de vision très consommateurs de puissance de calcul (texture, filtrage particulaire ou stéréovision dense). Cependant le coût et le temps de la conception d’un algorithme sur une architecture dédiée, restent encore plus élevés qu’une conception sur logiciel.
Suivi et estimation de l’état des objets
Les techniques pour le suivi d’objets peuvent être classifiées en deux principaux groupes : le suivi basé sur les propriétés d’apparence, et le suivi basé sur des modèles. La première approche exploite les propriétés 2D d’objets dans l’image comme la géométrie, les bords, la couleur, la texture (déjà dé-crits dans la section précédente) pour estimer l’état et prédire la position suivante de l’objet dans une séquence. La deuxième approche utilise un modèle de l’objet à suivre, comme un modèle CAO, éven-tuellement grossier, ou encore une modélisation de l’apparence sous la forme d’un motif exploité pour faire le suivi et pour estimer le mouvement. En vision monoculaire, l’estimation nécessaire pour le suivi est 2D ; il s’agit de prédire le mouvement apparent de la région ou de la primitive suivie dans l’image. Si la perception est 3D (télémétrie ou stéréo), si en vision monoculaire, est appliquée une approche de type SFM Structure From Motion ou si l’objet suivi est localisé dans l’espace de travail, alors, l’estimation peut se faire en 3D. Dans ce cas, la prédiction du mouvement apparent se fait en exploitant le modèle du capteur, par exemple par projection perspective pour une caméra.
Dans cette section, nous évoquerons tout d’abord les techniques de suivi dans une séquence d’images, fondées sur les propriétés d’apparence des objets : approches exploitant les points d’intérêt, les régions (Mean-Shift), le Flot Optique ou les contours : seules certaines méthodes seront décrites. Nous présen-terons ensuite les méthodes bayésiennes exploitées pour réaliser ce suivi d’une part, et l’estimation du mouvement des objets suivis d’autre part.
Suivi de régions par un modèle statistique d’apparence
Pour commencer, nous décrirons les travaux de suivi d’objets en temps réel fondés sur des proprié-tés visuelles où les distributions statistiques caractérisent la région d’intérêt, projection de l’objet dans l’image. Comaniciu et Meer, dans [20], présentent la méthode MeanShift, capable de détecter, localiser et suivre une cible mobile représentée par un modèle statistique, même si les conditions d’acquisition des images sont défavorables (changements d’échelle, occultations ou bruit). La méthode d’itération de vecteurs Mean-Shift sert à trouver la cible candidate, celle qui est la plus similaire au modèle donné de la cible, en comparant leurs fonctions de densité probabiliste. La similarité est exprimée par une métrique fondée sur le coefficient de Bhattacharya. La minimisation de l’écart entre les fonctions de densité sert à trouver la nouvelle position de la cible dans l’image courante. La robustesse aux changements d’échelle est obtenue en faisant varier la taille de la fenêtre. Le système est aussi rendu robuste aux occultations, en pondérant les couleurs des pixels du centre de la région par rapport à ceux pris sur les bords.
Plus récemment, Han et al [38] proposent une technique d’approximation pour obtenir le noyau (ou kernel) de densité basée sur un mode (maximum local) d’une fonction de densité donnée. La même méthode d’itération de vecteurs Mean-Shift développée dans [20] est utilisée pour converger sur 3 types de points stationnaires : points d’inflexion (saddle), points minima locaux, et points maxima locaux. Cependant, les points maxima locaux sont les plus importants pour simplifier la fonction d’approximation du noyau. Cette méthode itérative non paramétrique est devenue une technique appelée aussi CAMSHIFT (« Continuously Adaptive Mean-Shift ») qui finalement sert à trouver le mode des fonctions de distribution de probabilité d’un objet. La première partie de l’algorithme CAMSHIFT consiste à obtenir le centre et la taille de l’objet à suivre en utilisant une image qui représente la distribution de probabilité de couleur de l’objet. Cette image de probabilité est obtenue à partir d’un modèle d’histogramme couleur déjà connu. La méthode CAMSHIFT est populaire, car intégrée dans la librairie OpenCV [53].
Suivi d’objets basé sur un modèle géométrique
Les techniques de suivi d’objets basées sur un modèle, produisent généralement une solution robuste. La connaissance de la scène, c’est-à-dire l’information 3D implicite, permet au système d’améliorer le comportement du suivi de sorte qu’il est capable de prévoir le mouvement d’un objet caché, de détecter les occultations partielles et de diminuer l’effet des données mises en correspondance de manière erronée (outlier) pendant le suivi.
Comport et al. dans [21] proposent un algorithme pour le suivi d’objets 3D dont le modèle CAO (Conception Assistée par Ordinateur) est connu. Dans ce travail, l’obtention de la position est calculée par une méthode d’optimisation non linéaire appelée Virtual Visual Servoing (ou AVV : Asservissement Visuel Virtuel) : le calcul de la position est considéré comme une tâche itérative exploitant le formalisme de l’asservissement visuel 2D. Cette dernière tâche consiste à réguler dans l’image les indices visuels pendant le suivi pour qu’ils restent attachés au modèle de la cible. Pour ce faire, une loi de contrôle en boucle fermée qui utilise un M-estimateur est mise en œuvre. La combinaison de plusieurs indices visuels (points, lignes, cercles) est possible en fusionnant les matrices d’interaction de chaque indice dans une seule matrice. L’erreur de positionnement des indices visuels est calculée comme la somme des écarts entre chaque primitive extraite de l’image, avec les contours du modèle CAO de l’objet projeté dans l’image. Une hypothèse de base de cette méthode suppose que les contours de l’objet sur l’image peuvent être décrits comme des courbes paramétrées, droites ou quadriques.
L’appariement entre les primitives de l’image et le modèle CAO projeté, exploite l’approche EMD proposée par Bouthemy ; il s’agit d’une approche de corrélation 1D permettant d’associer des points de gradient extraits de l’image avec les arêtes non occultées du modèle de l’objet projetées sur l’image. Les arêtes projetées sont échantillonnées en un ensemble de points pris à une distance donnée en paramètre. En chaque point échantillonné, une recherche unidimensionnelle est faite sur la normale au contour en ce point, pour trouver un point de gradient de l’image ayant les mêmes propriétés photométriques (forme du contour en ce point).
Plus récemment, dans le même cadre de recherche, Dionnet et Marchand ont appliqué cet algorithme de suivi pour réaliser des tâches en asservissement visuel dans l’espace [28]. L’expérimentation est réa-lisée sur l’Eurobot développé par l’ESA ; ce robot, destiné à assister l’homme lors des activités extra véhiculaires dans l’International Space Station (ISS), est constitué de trois bras. L’Eurobot est équipé d’une caméra à la fin de chaque bras et d’un système de stéréo vision à la base : l’algorithme a été adapté pour considérer les informations venant de plusieurs caméras.
Suivi et estimation par des méthodes probabilistes
En matière d’estimation probabiliste, nous décrirons les travaux développés pour le suivi multi-cible. Ces approches, fondées sur la théorie de Bayes, ont été exploitées dans le cadre de plusieurs projets de recherche européen, notamment le projet BACS (Bayesian Approach to Cognitive Systems) auquel par-ticipe l’INRIA Rhônes Alpes (C. Laugier, T. Fraichard et al.). Cette théorie [8] se fonde sur une méthode d’inférence et d’apprentissage probabiliste pour expliquer et comprendre la perception, et pour décider quelles doivent être les actions suivantes d’un système robotique.
Nous décrivons ici plusieurs traitements qui utilisent les approches bayésiennes : suivi sur une grille discrète, prédiction en exploitant différentes représentations des trajectoires et enfin prédiction avec plu-sieurs modèles de mouvement.
Suivi et estimation à partir d’une grille discrète. Dans [103] et [22] sont décrits des travaux qui utilisent des techniques de filtrage Bayésien. Ces travaux présentent un modèle qui est une extension du Filtre d’Occupation Bayésien (BOF en anglais) pour effectuer le suivi d’objets en environnements dy-namiques. Le modèle est centré autour d’une représentation discrète, une grille d’occupation constituée de cellules de taille donnée. En chacune de ces cellules sont stockées une distribution de probabilité de l’occupation de la cellule et une autre distribution sur la vitesse de l’objet qui l’occupe. En plus, chaque cellule est considérée indépendante des autres ; ceci évite de devoir représenter les corrélations ou cova-riances entre les distribution de probabilités afférentes à des cellules voisines, mais cela empêche aussi de faire émerger la notion d’un objet physique.
En ne considérant pas cette notion d’objet, le problème classique de l’association de données entre objets n’a plus de sens ce qui simplifie l’ensemble de la chaîne de traitements. Avec pour but de diminuer le temps de calcul, une nouvelle formulation du BOF est décrite par Tay et al [94] ; à la différence du filtre utilisé dans [103] et [22], ils stockent aussi la distribution de la vélocité de propagation de la cellule occupée.
Cette approche exploite donc une grille 2D discrète d’occupation ; elle est surtout adaptée avec des capteurs télémétriques radar ou laser 2D (balayage dans un plan parallèle au sol). Néanmoins, la nouvelle formulation de Tay et. al. est utilisée pour détecter et suivre des objets dynamiques sur des environne-ments urbains [81], avec fusion des données laser 2D/stéréovision pour calculer les valeurs dans chaque cellule de la grille. Les mesures de distance données par le télémètre laser sont fusionnées avec les mesures de disparité données par le système stéréo. Cela permet de détecter et filtrer les erreurs de la stéréovision d’une part, et de corriger les erreurs sur la taille des objets, erreurs connues des méthodes de stéréovision dense exploitant des fenêtres de corrélation.
Suivi fondé sur des modèles de trajectoire. En matière d’estimation de la trajectoire par des mé-thodes probabilistes, on trouve dans la littérature, des approches d’estimation basées sur la maximisation de la fonction de vraisemblance (en anglais Likelihood Function Maximization). Parmi ces approches citons le travail proposé par D.Vasquez, T.Fraichard et. al [96]. En supposant que les objets mobiles suivent des trajectoires typiques dans l’environnement, les auteurs proposent une technique pour estimer ces trajectoires sur la base de modèles de mouvement typique, dans un environnement structuré avec sol plat.
Pour ce faire, ils proposent un algorithme de classification non supervisée divisé en 2 étapes : une étape d’apprentissage et une étape de prédiction. Dans l’étape d’apprentissage la technique obtient les différentes classes associées à chaque modèle de mouvement typique ainsi que leurs moyennes et leurs écarts-types. Ces classes de mouvement sont liées aux trajectoires courantes des objets mobiles détectés dans l’environnement. Dans l’étape de prédiction, on obtient un écart partiel entre la trajectoire observée et chaque classe apprise. Avec cet écart partiel on estime la vraisemblance (likelihood) que la trajectoire observée appartienne à une certaine classe de trajectoires.
Cependant, cette représentation n’est pas assez flexible et ne permet pas de prendre en compte fa-cilement les incertitudes des observations. Donc dans des travaux plus récents [97], ils ont proposé une représentation stochastique, les Modèles de Markov Cachés (ou HMMs, Hidden Markov Models), basés sur un nombre fini d’états, connectés dans un graphe de transition. A partir de ce modèle HMM, l’état courant d’une cible est estimé à l’instant t et prédit de (t+1) à (t+H) à partir des observations, par des in-férences bayésiennes. La contribution principale dans ces travaux concerne l’Apprentissage Incrémental de la structure du graphe (création/destruction dynamique des états et des transitions inter-états) et des paramètres qui lui sont attachés.
La méthode est validée sur plusieurs jeux d’observations obtenus dans des environnements réels ou simulés. En particulier, la méthode a été évaluée
— en milieu intérieur dans un grand hall ; les objets suivis sont des hommes ; les trajectoires cor-respondent aux chemins suivis par les utilisateurs pour joindre des lieux d’intérêt dans ce hall, portes, panneaux d’affichage, guichets, etc.
— en milieu extérieur, dans un parking ; les objets suivis sont des piétons ou des voitures.
Suivi par la méthode IMM (Interacting Multiple Models). Les modèles de mouvement des objets peuvent être donnés a priori ou appris par une approche géométrique dans un espace continu ou par une approche de type HMM exploitant une représentation discrète. Pour exploiter ces modèles de mouve-ment possibles pour un objet, de nombreuses approches exploitent la méthode IMM, méthode introduite par Bar-Shalom [6].
Le principe de la méthode IMM, a été en particulier exploité dans [15], pour traiter le cas du suivi d’une personne en intérieur par un système de vidéo-surveillance, ou pour suivre des piétons ou des véhicules depuis des capteurs embarqués sur un véhicule. À chaque itération, les probabilités de tous les modèles de mouvement des objets suivis (par exemple, un véhicule suivi peut aller tout droit à vi-tesse constante, peut tourner à droite ou à gauche, peut s’arrêter. . . ), sont ré-évaluées en considérant les possibles transitions entre ces mouvements. Au vu de l’observation courante, toutes les possibilités de transitions sont analysées ; chaque cas est assorti d’un coefficient de vraisemblance ; l’état du véhicule est obtenu en faisant la combinaison linéaire de tous les états potentiels, en pondérant chaque possibilité par sa vraisemblance.
Les IMM modélisent donc l’interaction entre les différents filtres grâce à la Matrice de Transition de Probabilité (Transition Probability Matrix ou TPM). Cette Matrice encode la probabilité de changement du mouvement de l’objet suivi ; en général cette matrice est donnée a priori. Signalons les travaux récents de J. Burlet [14] dans lesquels les TPM sont adaptées ou apprises en ligne automatiquement. Cette adaptation permet d’augmenter significativement l’efficacité du filtrage IMM.
Conclusions sur les méthodes de suivi
De très nombreuses méthodes de suivi existent : nous nous sommes focalisée ici sur les algorithmes génériques, plus que sur les techniques spécifiques à un capteur particulier. En vision monoculaire, nous verrons dans les chapitres suivants que nous exploitons les méthodes classiques de suivi de points d’in-térêt (KLT) et de régions (snakes ou contours actifs).
Il existe un lien fort entre le suivi, l’estimation, la fréquence d’acquisition des données sensorielles et la dynamique des objets perçus : le suivi a d’autant plus besoin d’une prédiction pour être plus ro-buste, que la fréquence est faible et que la dynamique des objets est élevée. Signalons aussi que si l’objet suivi a de nombreuses ruptures de dynamiques (typiquement, le mouvement d’un piéton en milieu ur-bain), alors il conviendra d’exploiter des méthodes multi-hypothèses (filtrage particulaire ou mélange de gaussiennes ou IMM) coûteuses en temps de calcul. Dans tous les cas, il existe un cercle vertueux bien connu : meilleure est la fréquence, meilleur est le suivi ; avec une fréquence très élevée (en vision, au delà de 30Hz), on peut se contenter d’une estimation du mouvement apparent à vitesse constante, très simple à mettre en œuvre par filtrage de Kalman.
De nombreuses méthodes décrites ci-dessus ont été proposées et sont appliquées dans un contexte de vidéo-surveillance : pour les transposer à la surveillance d’environnements dynamiques depuis des capteurs embarqués sur un véhicule ou robot, il faut considérer le lien qui existe entre la localisation du véhicule et l’estimation du mouvement des objets. Dans la section suivante, nous décrirons la technique du SLAMMOT (Simultaneous Localization and Mapping and Moving Objets Tracking) proposée pour distinguer les objets stationnaires des objets dynamiques et pour estimer la position et la vitesse de ces derniers.
Approches de localisation : SLAMMOT
Le SLAMMOT est une technique qui consiste à traiter dans un même système, la cartographie et localisation simultanée (SLAM) d’une part, et la détection et le suivi des objets mobiles et l’estimation de leurs états (identification, position, vitesse,etc.) d’autre part. Le SLAM est exécuté depuis un système mobile équipé de capteurs embarqués, typiquement un robot : il estime à la fois les paramètres liés au modèle de l’environnement, et les paramètres liés à l’état du robot, en particulier sa localisation. Pour ce faire, il intégre en temps réel les observations fournies par les capteurs extéroceptifs (télémétrie laser, caméras, radar) et proprioceptifs (estimation de l’égo-motion par odométrie ou inertiels) embarqués sur le robot mobile. Le résultat du SLAM est donc une carte stochastique qui donne :
— La modélisation des parties statiques de l’environnement,
— et la localisation du/des capteurs ou du robot qui les porte.
Le MOT rajoute à cette carte, l’estimation de l’état des composantes dynamiques de l’environnement. D’un côté, nous trouvons dans la littérature plusieurs approches pour résoudre le problème du SLAM et de l’autre côté les approches pour le MOT ou le DATMO (Detection And Tracking of Mobile Objects). Les méthodes SLAM font l’hypothèse que l’environnement est statique ; si des primitives de la carte sto-chastique construite par le SLAM, sont en fait portées sur un objet mobile, alors la carte sera faussée tant que cet objet sera dans la carte. Dans le cas général d’une exploration en environnement non contrôlé, le SLAM a besoin de prendre en considération que l’environnement ne contient pas uniquement des ob-jets statiques. Donc, il est nécessaire de concevoir une stratégie qui soit capable d’adapter les méthodes SLAM en considérant aussi la détection et le suivi des objets dynamiques de la scène.
Une approche spatio-temporelle, appelée selon le cas Visual SLAM ou Bearing-Only SLAM, a été proposée par Davison [25] pour résoudre le problème du SLAM en utilisant une seule caméra. L’auteur utilise le détecteur de Harris pour initialiser des points d’intérêt qui après seront recherchés de façon ac-tive sur les images successives de la séquence acquise par la caméra. Les points sont initialement connus sous la forme d’un rayon optique dans l’espace. Après, s’ils sont réobservés dans les images suivantes, ils sont reconstruits par triangulation et deviennent des points en 3D qui aideront à la localisation de la caméra. Chaque point est représenté par son apparence, un motif de taille n n autour de sa position dans l’image dans laquelle il a été détecté initialement. L’état du système à l’instant t, est donné par une carte stochastique : cette carte est définie par
— un vecteur stochastique qui regroupe plusieurs sous-vecteurs qui représentent les rayons optiques non encore reconstruits, la position 3D des points reconstruits, et la position et vitesse de la caméra,
— et par une matrice de variance-covariance entre toutes ces variables.
À partir de cet état, chaque observation des primitives visuelles apprises jusqu’à l’instant t, est prédite dans l’image acquise au temps t + 1. La projection d’un rayon ou d’un point 3D, avec son incertitude, forme une zone elliptique dans laquelle le point correspondant doit se trouver si l’état global est cohérent, c’est-à-dire si la position estimée par le SLAM de chaque primitive détectée dans l’environnement, est centrée autour de sa position réelle.
Le SLAM visuel a connu une évolution importante depuis les travaux initiaux de Davison. Les prin-cipales contributions concernent :
— la représentation des rayons optiques (ensemble de particules pour Davison, puis mélanges de gaussiennes (J.Sola [90] et T. Lemaire [65]), puis représentation appelée Inverse Depth Parame-trization par J.Civera et al [19].
— les autres primitives visuelles, en particulier les segments, pour lesquels des paramétrisations des droites porteuses ont aussi été proposées pour les représenter avant qu’ils ne soient connus en 3D.
Nous détaillons les travaux de J. Solà [90] qui, dans une dernière partie de sa thèse, a traité du SLAM dans un environnement dynamique, donc du SLAMMOT. J.Solà est le premier à avoir inclus un rayon optique dans une carte stochastique : quand un point d’intérêt est détecté sur l’image, son incertitude est caractérisée par une fonction de densité de probabilité gaussienne. Une représentation du rayon optique par un mélange de gaussiennes avec des variances croissantes avec la profondeur, permet de représenter ce rayon optique par un cône de vue de manière probabiliste. Dans le cas monoculaire, une approche multi-hypothèses, permet de mettre à jour la carte SLAM sans retard. Ensuite, comme dans les travaux de A.Davison, une approche active (Active Search) pour l’appariement des points a été mise en œuvre ; on utilise les différentes gaussiennes pour rétroprojeter (back projection) un rayon optique en une zone elliptique. Une nouvelle observation du point 3D correspondant à ce rayon, a une probabilité 0,99 de se trouver dans cette zone.
Par ailleurs, dans cette méthode SLAM la détection d’objets mobiles (MOT) a été aussi considérée, mais uniquement pour le cas de la stéréovision, car avec sa représentation des rayons optiques, J.Solà indique que profondeur et vitesse d’un point mobile ne sont pas observables par vision monoculaire. Chaque point extrait de l’image correspond donc à un rayon optique, représenté par N points 3D poten-tiels. Dans le cas stéréo, un rayon conique est construit dans les deux images pour deux points mis en correspondance au temps t. Il sera possible d’observer la profondeur d’un amer si l’intersection entre ces rayons coniques tombe dans la zone d’observabilité de la stéréo, sinon on traite un des points extraits comme dans le cas monoculaire. Donc pour chaque nouveau point observé, on a N hypothèses de pro-fondeur : typiquement 6 ou 7 en monoculaire, une seule si le point est dans la zone d’observabilité de la stéréovision, seulement 2 ou 3 si ce point est en dehors de cette zone. Par ailleurs, ces points 3D poten-tiels peuvent être fixes ou mobiles dans le référentiel du monde. Toutes ces hypothèses sont évaluées à chaque itération, pondérées par un coefficient de vraisemblance ; la carte est mise à jour en fonction de ces coefficients. Donc, les hypothèses les moins probables sont détruites au fur et à mesure, jusqu’à trou-ver une seule solution (position) pour chaque amer fixe, ou (position, vitesse) pour chaque point mobile ainsi reconstruit.
Les performances temps réel de cet algorithme SLAM dépend largement de la taille de la carte et du nombre de points appariés par Active Search à chaque itération. Pour gagner du temps de calcul, seulement un ou deux amers sont rajoutés dans la carte à chaque itération ; l’image est partitionnée en zone rectangulaires de taille identique ; un amer ponctuel (rayon optique initialement, puis point 3D) est créé seulement dans une zone de l’image dans laquelle il n’y a pas d’amers rétroprojetés, et en prenant pour cette zone, le point de Harris le plus discriminant. Dans le cas des points mobiles, on peut avoir une connaissance a priori des zones dans lesquelles ces points peuvent apparaître, par exemple sur la ligne d’horizon de l’image par exemple dans le cas d’images acquises depuis un véhicule.
B.Wang et C.Thorpe [100] ont également proposé une approche SLAMMOT très souvent citée. Au lieu d’une carte stochastique décrivant des amers épars, l’environnement est représenté par une carte discrète composée de cellules de 5cm 5cm, de type grille d’occupation. Un véhicule mobile est équipé avec un télémètre laser à balayage horizontal. L’algorithme de point to point matching par ICP est ex-ploité pour apparier les données sensorielles courantes avec les cellules occupées de la carte des Objets Stationnaires (SO-Map), dans lesquelles ont été fusionnées les données acquises précédemment sur les composantes statiques de l’environnement. Les résultats de cette procédure d’appariement ICP, sont donc intégrés et stockés dans cette carte ; pour chaque cellule, on précise le temps qu’elle a été occupée par les mêmes points stationnaires. Si cette valeur dans une cellule est grande, ça veut dire que la cellule ap-partient à un objet stationnaire. Les points mobiles sont segmentés en fonction de la cohérence de leurs mouvements, et conservés dans des cartes d’Objets Mobiles (MO-Map).
Notons dans ces travaux de B.Wang et C.Thorpe sur le SLAMMOT, une discussion sur deux ap-proches possibles du SLAMMOT. La première consiste à gérer les objets ou primitives dynamiques, directement dans la carte créée et mise à jour par l’approche SLAM. La description de ces objets est généralisée au sens où elle contient la dynamique du mouvement. Les auteurs indiquent qu’une telle approche est trop complexe pour être exécutée en temps réel. La deuxième approche est celle qu’ils ont implémentée avec ces cartes discrètes SO-map et MO-map, dans laquelle les objets dynamiques sont décrits indépendamment de la carte.
Approche proposée
Il est admis dans la littérature qu’il faut représenter séparément le monde statique (que cela soit par une carte discrète ou une carte stochastique) et les objets dynamiques qui s’y déplacent. On néglige les corrélations entre les variables stochastiques qui décrivent leurs états, mais on peut ainsi exécuter la fonction SLAMMOT en temps réel. Signalons aussi ici les travaux de G. Gaté [34] qui définit un cadre conceptuel cohérent pour traiter à la fois de la Détection, du Suivi, du SLAM, du MOT et de l’Identification des objets perçus lors du déplacement d’un capteur dans un environnement dynamique ; mais cette approche très élégante est restée théorique, donc sans validation expérimentale.
|
Table des matières
Table des figures
Perception des environnements dynamiques
1.1 Introduction
1.2 Description du problème
1.2.1 Objectifs
1.2.2 Motivations
1.3 Approche développée
1.3.1 Contributions de la thèse
1.4 Organisation du manuscrit
Contexte : développement des véhicules autonomes
2.1 Introduction
2.2 Détection par des capteurs actifs
2.2.1 Détection par télémètre Laser
2.2.2 Détection par radar
2.2.3 Conclusion pour les capteurs actifs
2.3 Détection d’objets par capteurs passifs basées sur la vision
2.3.1 La stéréo-vision
2.3.2 Capteur de vision Infrarouge (IR)
2.3.3 Vision mono-caméra
2.3.4 Conclusion sur les capteurs de vision
2.4 Suivi et estimation de l’état des objets
2.4.1 Suivi de régions par un modèle statistique d’apparence
2.4.2 Suivi d’objets basé sur un modèle géométrique
2.4.3 Suivi et estimation par des méthodes probabilistes
2.4.4 Conclusions sur les méthodes de suivi
2.5 Approches de localisation : SLAMMOT
2.6 Approche proposée
2.6.1 Notre approche de détection et suivi d’objets dynamiques
2.6.2 Vers l’intégration avec une méthode SLAM.
2.7 Conclusion
Détection d’obstacles mobiles par une approche spatio-temporelle
3.1 Introduction
3.2 Flot optique
3.2.1 Sélection des points d’intérêt
3.2.2 Suivi des points d’intérêt
3.2.3 Modèle de translation et de transformation affine
3.2.4 Le temps de pistage
3.3 Groupement des points mobiles par la méthode a contrario
3.3.1 Description de l’algorithme
3.3.2 L’espace des régions de test dans R4
3.3.3 Évaluation du modèle du fond
3.3.4 Résultats de la méthode de groupement
3.4 Carte de probabilités
3.4.1 Initialisation de la carte
3.4.2 Modèle d’évolution de la carte de probabilités
3.5 Enrichissement du modèle des objets mobiles dans le temps
3.5.1 Description du problème
3.5.2 Règle d’évaluation pour la fusion des objets mobiles
3.5.3 Résultats de la fusion
3.6 Conclusion
Caractérisation et suivi des objets mobiles
4.1 Introduction
4.2 Modèle basé sur des points d’intérêt
4.2.1 La mise en correspondance des points
4.2.2 Mise à jour du modèle de l’objet
4.2.3 Les contraintes du modèle des points
4.3 Modèle basé sur des régions
4.3.1 Caractérisation de la région par un contour actif
4.3.2 Formulation de l’énergie de «snakes»
4.3.3 Mise à jour du modèle de l’objet
4.3.4 Les contraintes du modèle de régions
4.4 Estimation du mouvement des objets mobiles
4.4.1 Le filtre de Kalman
4.4.2 Le modèle à vitesse constante
4.4.3 Résultats de la performance du filtre
4.5 Résultats expérimentaux du suivi des objets mobiles
4.5.1 Détection d’objets rigides.
4.5.2 Détection d’objets non-rigides.
4.6 Conclusions
Intégration de notre approche dans le système de navigation d’un véhicule autonome
5.1 Introduction
5.2 Compensation du mouvement du robot
5.2.1 Différentes approches pour l’estimation du mouvement
5.2.2 Modèle de projection de la caméra
5.2.3 Mouvement de corps rigides
5.2.4 Transformation Perspective Inverse
5.2.5 Estimation des déplacements du robot
5.3 La stratégie globale pour la navigation extérieure
5.3.1 État de l’art du SLAM mono-caméra
5.3.2 Le module de SLAM
5.3.3 Le partage des données et la synchronisation des modules
5.4 Architecture matérielle et logiciel
5.4.1 Le robot d’expérimentation Dala
5.4.2 Description de la plateforme d’intégration robotique Jafar
5.5 Description de l’architecture complète pour la détection et le suivi d’objets
5.5.1 Module klt
5.5.2 Module cluster
5.5.3 Module snake
5.5.4 Module tracker
5.6 Résultats expérimentaux
5.6.1 Résultats de l’approche de compensation du mouvement.
5.6.2 Séquence d’images acquise avec plus de vitesse
5.7 Conclusions
Conclusion et perspectives
6.1 Conclusion Générale
6.2 Perspectives
Bibliographie
Télécharger le rapport complet