8
Odométrie Visuelle Monoculaire en Environnement Sous-Marin Maxime Ferrera 1,2 Julien Moras 1 Pauline Trouvé-Peloux 1 Vincent Creuze 2 1 ONERA - The French Aerospace Lab 2 LIRMM - Université de Montpellier / CNRS [email protected] Résumé En robotique, l’utilisation d’une caméra pour se localiser est très classique. Toutefois, dans le contexte de la robo- tique sous-marine, les dégradations visuelles dues au mi- lieu rendent très difficile l’exploitation d’une caméra. De ce fait, la majorité des méthodes de localisation se basent sur des capteurs proprioceptifs ou des outils acoustiques. Bien que les problématiques d’odométrie visuelle et de SLAM visuel aient fait l’objet de nombreux travaux en en- vironnement terrestre ou aérien, les algorithmes de l’état de l’art ne donnent pas de résultats satisfaisants en envi- ronnement sous-marin. Dans cet article, nous nous intéres- sons au problème d’ego-localisation en milieu sous-marin à partir de données visuelles et nous proposons une nou- velle méthode d’odométrie visuelle à partir d’un système de vision monoculaire. L’application principale de ce tra- vail est la localisation de robots télé-opérés utilisés dans des missions archéologiques mais la méthode développée peut être utilisée pour d’autres applications tant qu’une in- formation visuelle est disponible. Mots Clef Odométrie visuelle, robotique sous-marine, vision mono- culaire. Abstract In robotics, localization from a camera is very classical. However, in the context of underwater robotics, the visual degradations induced by the medium properties make very difficult the use of cameras. Hence, most localization me- thods are based on proprioceptive sensors or acoustic po- sitioning. On the other hand, visual odometry and visual SLAM have been exhaustively studied for aerial or terres- trial applications. However, the state-of-the-art algorithms tend to fail underwater. In this paper we tackle the problem of underwater visual localization and propose a new mono- cular visual odometry method dedicated to the underwater environment. The main application of this work is the lo- calization of Remotely Operated Vehicles (ROV) used for archaeology surveys but the developed system can be used in any other applications, as long as visual information is available. Keywords Visual Odometry, Underwater Robotics, Monocular vision. 1 Introduction Une localisation précise est critique dans la majorité des opérations robotiques sous-marines, tout particulièrement dans des cas de navigation en environnement encombré (rochers, épaves, installations offshore). Le signal GPS, principal moyen de localisation en extérieur, n’étant pas disponible sous l’eau, la plupart des approches actuelles reposent sur l’utilisation de capteurs propioceptifs tels que les centrales inertielles à gyroscopes à fibre optique, les DVLs (Doppler Velocity Logs) et les capteurs de pression. Ces capteurs sont généralement fusionnés dans un EKF (Extended Kalaman Filter) pour estimer les déplacements du véhicule. Pour limiter l’inévitable dérive temporelle liée à l’intégration de mesures bruitées, les dispositifs ci-dessus sont complétés par des systèmes de positionnement acous- tique, tels que les USBL (Ultra Short Baseline), peu précis, mais ne dérivant pas dans le temps. Toutefois, ces méthodes requièrent des capteurs pesants et coûteux, souvent inadap- tés aux très petits robots sous-marins. Dans le travail présenté ici, nous nous intéressons au dé- veloppement d’une méthode de localisation sous-marine précise à partir d’un ensemble minimal de capteurs bas- coûts. Le but est d’en équiper de petits (moins de 30kg) robots sous-marins télé-opérés (ROV - Remotely Operated Vehicle) afin, d’une part, d’aider à la navigation lors d’ex- plorations ou de fouilles archéologiques et, d’autre part, de permettre dans des travaux futurs d’établir des cartogra- phies fines des sites archéologiques. Les ROV étant sys- tématiquement équipés d’une caméra pour permettre leur télé-opération, nous avons décidé de développer une mé- thode de localisation basé uniquement sur cette caméra. L’estimation des déplacements d’un robot sous-marin à partir de données visuelles est un défi complexe du fait de nombreuses dégradations visuelles. La littérature est peu fournie au sujet de telles méthodes dans le domaine de la robotique sous-marine en comparaison avec les méthodes aériennes ou terrestres. En effet, les méthodes d’odomé- trie visuelle (VO- Visual Odometry) et de SLAM visuel (Si- multaneous Localization And Mapping) ont été fortement

Odométrie Visuelle Monoculaire en Environnement Sous-Marin · 2018. 6. 13. · tion sous-marine, nous proposons ici une méthode de VO uniquement basée sur les données provenant

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Odométrie Visuelle Monoculaire en Environnement Sous-Marin · 2018. 6. 13. · tion sous-marine, nous proposons ici une méthode de VO uniquement basée sur les données provenant

Odométrie Visuelle Monoculaire en Environnement Sous-Marin

Maxime Ferrera1,2 Julien Moras1 Pauline Trouvé-Peloux1 Vincent Creuze2

1 ONERA - The French Aerospace Lab2 LIRMM - Université de Montpellier / CNRS

[email protected]

RésuméEn robotique, l’utilisation d’une caméra pour se localiserest très classique. Toutefois, dans le contexte de la robo-tique sous-marine, les dégradations visuelles dues au mi-lieu rendent très difficile l’exploitation d’une caméra. Dece fait, la majorité des méthodes de localisation se basentsur des capteurs proprioceptifs ou des outils acoustiques.Bien que les problématiques d’odométrie visuelle et deSLAM visuel aient fait l’objet de nombreux travaux en en-vironnement terrestre ou aérien, les algorithmes de l’étatde l’art ne donnent pas de résultats satisfaisants en envi-ronnement sous-marin. Dans cet article, nous nous intéres-sons au problème d’ego-localisation en milieu sous-marinà partir de données visuelles et nous proposons une nou-velle méthode d’odométrie visuelle à partir d’un systèmede vision monoculaire. L’application principale de ce tra-vail est la localisation de robots télé-opérés utilisés dansdes missions archéologiques mais la méthode développéepeut être utilisée pour d’autres applications tant qu’une in-formation visuelle est disponible.

Mots ClefOdométrie visuelle, robotique sous-marine, vision mono-culaire.

AbstractIn robotics, localization from a camera is very classical.However, in the context of underwater robotics, the visualdegradations induced by the medium properties make verydifficult the use of cameras. Hence, most localization me-thods are based on proprioceptive sensors or acoustic po-sitioning. On the other hand, visual odometry and visualSLAM have been exhaustively studied for aerial or terres-trial applications. However, the state-of-the-art algorithmstend to fail underwater. In this paper we tackle the problemof underwater visual localization and propose a new mono-cular visual odometry method dedicated to the underwaterenvironment. The main application of this work is the lo-calization of Remotely Operated Vehicles (ROV) used forarchaeology surveys but the developed system can be usedin any other applications, as long as visual information isavailable.

KeywordsVisual Odometry, Underwater Robotics, Monocular vision.

1 IntroductionUne localisation précise est critique dans la majorité desopérations robotiques sous-marines, tout particulièrementdans des cas de navigation en environnement encombré(rochers, épaves, installations offshore). Le signal GPS,principal moyen de localisation en extérieur, n’étant pasdisponible sous l’eau, la plupart des approches actuellesreposent sur l’utilisation de capteurs propioceptifs tels queles centrales inertielles à gyroscopes à fibre optique, lesDVLs (Doppler Velocity Logs) et les capteurs de pression.Ces capteurs sont généralement fusionnés dans un EKF(Extended Kalaman Filter) pour estimer les déplacementsdu véhicule. Pour limiter l’inévitable dérive temporelle liéeà l’intégration de mesures bruitées, les dispositifs ci-dessussont complétés par des systèmes de positionnement acous-tique, tels que les USBL (Ultra Short Baseline), peu précis,mais ne dérivant pas dans le temps. Toutefois, ces méthodesrequièrent des capteurs pesants et coûteux, souvent inadap-tés aux très petits robots sous-marins.Dans le travail présenté ici, nous nous intéressons au dé-veloppement d’une méthode de localisation sous-marineprécise à partir d’un ensemble minimal de capteurs bas-coûts. Le but est d’en équiper de petits (moins de 30kg)robots sous-marins télé-opérés (ROV - Remotely OperatedVehicle) afin, d’une part, d’aider à la navigation lors d’ex-plorations ou de fouilles archéologiques et, d’autre part, depermettre dans des travaux futurs d’établir des cartogra-phies fines des sites archéologiques. Les ROV étant sys-tématiquement équipés d’une caméra pour permettre leurtélé-opération, nous avons décidé de développer une mé-thode de localisation basé uniquement sur cette caméra.L’estimation des déplacements d’un robot sous-marin àpartir de données visuelles est un défi complexe du fait denombreuses dégradations visuelles. La littérature est peufournie au sujet de telles méthodes dans le domaine de larobotique sous-marine en comparaison avec les méthodesaériennes ou terrestres. En effet, les méthodes d’odomé-trie visuelle (VO- Visual Odometry) et de SLAM visuel (Si-multaneous Localization And Mapping) ont été fortement

Page 2: Odométrie Visuelle Monoculaire en Environnement Sous-Marin · 2018. 6. 13. · tion sous-marine, nous proposons ici une méthode de VO uniquement basée sur les données provenant

étudiées dans les domaines aériens et terrestres et ont at-teint une certaine maturité [4]. Il est à noter que les ap-proches de SLAM diffèrent de celles de VO du fait que lespremières maintiennent une carte globale réutilisable, per-mettant de détecter des fermetures de boucles lors de l’ob-servation répétée d’une zone déjà cartographiée. En envi-ronnement sous-marin, la localisation à partir de donnéesvisuelles est toujours un problème ouvert et l’applicationdirecte des méthodes de l’état de l’art en VO et SLAM nedonnent pas de résultats satisfaisants [34, 25]. Cela est prin-cipalement dû aux perturbations visuelles intrinsèques à cemilieu. En effet, le fort taux d’absorption et la diffusiondue à la turbidité de l’eau limitent la perception visuelle àquelques mètres et rendent indispensable la présence d’unsystème d’éclairage artificiel en eaux profondes. La fauneest également une cause de perturbation car l’éclairage pro-duit par le robot attire les animaux marins et ces derniers seretrouvent dans le champs de vision de la caméra, entraî-nant des occultations temporaires. Devant ces difficultés,beaucoup de travaux [24, 26] se sont intéressés à l’analysede données sonar. Cependant, l’information délivrée par unsonar n’est pas aussi riche qu’une image optique et restetrès difficile à analyser en raison du fort niveau de bruit etde la faible résolution.Cet article présente un nouvel algorithme de VO monocu-laire, robuste aux dégradations optiques évoquées précé-demment. La première contribution est une comparaisonquantitative des performances de différentes méthodes desuivi de points d’intérêt appliquées à des séquences vidéossous-marines. Cette évaluation est présentée dans la sec-tion 3 et nous montrons que le suivi de points par flot op-tique est plus efficace que les méthodes classiques baséessur le calcul de descripteurs. Ensuite, dans la section 4,nous présentons de façon détaillée l’algorithme de VO pro-posé. A l’instar des méthodes de SLAM visuel de l’état del’art, nous avons choisi de développer une approche baséeimages-clés, reposant sur de fréquentes optimisations de latrajectoire par ajustement de faisceaux, afin de minimiserla dérive. Cet algorithme est construit autour d’un suivi despoints d’intérêt par flot optique, rendu robuste aux occul-tations temporaires grâce à un mécanisme de recherche etrécupération des points perdus récemment. Enfin, dans lasection 5, nous présentons les résultats obtenus sur des sé-quences sous-marines simulées et réelles. Afin d’évalueraussi l’efficacité de notre algorithme dans un contexte plusclassique, nous présentons également les résultats obtenussur les séquences urbaines du dataset KITTI [12]. La mé-thode que nous proposons permet d’obtenir de meilleursperformances que les algorithmes de l’état de l’art lors-qu’elle est appliquée aux séquences sous-marines, tandisqu’elle fonctionne avec une précision comparable sur desdonnées terrestres.

2 État de l’artEustice et al. [10] ont été parmi les premiers à présenter uneméthode de localisation sous-marine tirant partie d’une in-

formation visuelle. Ils utilisent un EIF (Extented Informa-tion Filter) pour traiter les mesures provenant de capteursde navigation et y insèrent des contraintes visuelles grâceaux appariements 2D-2D de points d’intéret sur des imagesmonoculaires avec de faibles recouvrements. Ici, seule lapose relative entre les images est estimée. L’informationvisuelle ne fournit donc pas la pose complète, mais uni-quement cinq des six degrés de liberté.Plus proche de nos travaux et plus récemment, des ap-proches stéréo exploitant des images prises à haute ca-dence (10-20hz) ont été proposées pour estimer les dé-placements de véhicules sous-marins. Dans [8], des pointsd’intérêt sont appariés dans les paires stéréo afin de calcu-ler un nuage de points 3D, puis les poses de la caméra sontestimées par alignement des nuages de points successifs.L’estimation des déplacements par alignement de nuagesde points en fait une méthode exclusivement stéréo.Malgré l’avantage des systèmes de stéréovision en termesd’estimation 3D, embarquer une seule caméra à bord d’unrobot sous-marin est beaucoup plus pratique d’un point devue matériel. De surcroît, développer un algorithme de VOmonoculaire permet de le porter sur n’importe quel typede véhicule sous-marin, tant que celui-ci est équipé d’unecaméra ou peut emporter une caméra additionnelle. Mêmesi les systèmes monoculaires ont une ambiguïté d’échelle,il est possible de déterminer le facteur d’échelle à partird’autres capteurs tels qu’une IMU (Inertial MeasurmentUnit) ou un capteur de pression.Des méthodes monoculaires utilisant une caméra à hautecadence (10-20 hz) ont été étudiées par [30, 3]. Les dépla-cements visuels estimés sont fusionnés avec les mesuresd’une IMU et d’un capteur de pression dans un EKF. Plusrécemment, [7] a présenté une méthode qui ne repose passur un EKF mais qui estime de façon itérative les déplace-ments de la caméra par intégration de mesures de flot op-tique corrigées par une IMU et un capteur de profondeur.Tandis que la majorité des systèmes sous-marins de VO oude SLAM reposent sur des filtres (EKF-EIF), en SLAM aé-rien et terrestre les approches filtrées ont été délaissées auprofit d’approches plus précises basées sur des images-clésavec ajustement de faisceaux [31]. PTAM [14] et [21] ontété les premiers capables de tirer partie de l’ajustement defaisceaux en temps-réel. L’algorithme ORB-SLAM [22] aamélioré l’approche de PTAM en y ajoutant un mécanismede fermeture de boucle permettant, lors d’un passage au ni-veau d’une scène déjà cartographiée, de réduire fortementla dérive accumulée. À la suite de ces systèmes purementvisuels, des systèmes de couplage vision-inertiel ont étérécemment développés [18, 19] et présentent des perfor-mances supérieures. Toutefois, ces approches sont toutesconstruites sur des méthodes précises de VO ou de SLAMvisuel, démontrant le besoin d’avoir en premier lieu unebonne localisation visuelle.Ajouter d’autres capteurs bas-coûts n’améliorera pas la lo-calisation des ROV sans une méthode de VO précise. Dece fait, à l’opposé de la majorité des approches de localisa-

Page 3: Odométrie Visuelle Monoculaire en Environnement Sous-Marin · 2018. 6. 13. · tion sous-marine, nous proposons ici une méthode de VO uniquement basée sur les données provenant

FIGURE 1 – Images utilisées pour évaluer les méthodes de suivi de points d’intérêt. (a) Images extraites de [6]. (b) Images acquises durantune campagne archéologique sur une épave antique (profondeur : 500 mètres, Corse, France) - Crédit : DRASSM, Ministère de la Culture.

FIGURE 2 – Évaluation des méthodes de suivi de points d’in-térêt sur les images Fig.1 (a) (suivi image-à-image). Les figures(a) et (b) illustrent respectivement le nombre de points d’intérêtdétectés et suivis par différents détecteurs de la littérature. Les fi-gures (c) et (d) illustrent les résultats en utilisant uniquement ledétecteur de Harris (certaines courbes sont confondues avec celledu KLT).

tion sous-marine, nous proposons ici une méthode de VOuniquement basée sur les données provenant d’une caméramonoculaire et nous montrons que notre méthode fonc-tionne mieux que les méthodes monoculaires de la litté-rature sur des images sous-marines, tout en fonctionnantaussi bien sur des images terrestres.

3 Évaluation des méthodes de suivide points d’intérêt

Les méthodes de l’état de l’art en SLAM visuel ont été va-lidées pour des applications terrestres et aériennes. Toute-fois, nos tests sur des images sous-marines, avec les im-plémentations open-source de ces algorithmes, nous ontmenés à la même conclusion que [34] : seul ORB-SLAMest capable de fournir des résultats corrects, à conditionque les séquences vidéos ne soient pas trop dégradées. Laprincipale raison de la mise en échec de ces algorithmes

FIGURE 3 – Évaluation des méthodes de suivi de points d’intérêtsur les images Fig.1 (b). (suivi multi-images) Les figures (a) et (b)illustrent respectivement le nombre de points d’intérêt détectés etsuivis par différents détecteurs de la littérature. Les figures (c) et(d) illustrent les résultats en utilisant uniquement le détecteur deHarris.

tient au manque d’efficacité de leurs méthodes de suivide points sur les images sous-marines. Comme expliquédans l’introduction, dans les images sous-marines, la tur-bidité est la principale source de perturbation. De plus,les scènes sous-marines fournissent peu de points d’inté-rêt discriminants, et présentent souvent une répétition demotifs très similaires (algues, grains de sable). Afin dedévelopper un système de VO robuste aux dégradationssous-marines, nous avons donc comparé diverses combi-naisons de détecteurs-descripteurs de la littérature avec laméthode du KLT (Kanade-Lucas-Tomasi), basée sur uneimplémentation pyramidale de l’estimation du flot optique[35]. Toutes les images utilisées pour cette évaluation ontété transformées en images en niveaux de gris de taille640x480 afin de correspondre au type d’images classique-ment analysées par les méthodes de VO. Nous avons cher-ché à extraire 500 points d’intérêt répartis de façon homo-gène sur chacune de ces images.

Page 4: Odométrie Visuelle Monoculaire en Environnement Sous-Marin · 2018. 6. 13. · tion sous-marine, nous proposons ici une méthode de VO uniquement basée sur les données provenant

La première évaluation a été effectuée sur le jeu de don-nées TURBID créé par Codevilla et al. [6]. Ce jeu consisteen des séries de photos de fonds marins imprimés au fondd’un bassin (Fig. 1 (a)). Entre chaque photo prise, le niveaude turbidité a été augmenté en ajoutant des quantités spé-cifiques de lait dans l’eau. Dans leur article, [6] ont évaluéla répétabilité de différents détecteurs pour estimer leursrobustesses à la turbidité. En VO, plus que la répétabilité,c’est la capacité de suivi de points qui importe. L’objectifde cette évaluation est donc de compter le nombre de pointsd’intérêt correctement appariés entre deux images succes-sives. Afin d’être équitable dans l’évaluation et de ne pasinitialiser le KLT sur la bonne position, une translation vir-tuelle de 10 pixels est appliquée à la seconde image.

Les premières combinaisons de détecteurs-descripteursque nous évaluons avec le KLT sont : ORB [28], BRISK[17], le détecteur Fast [27] avec les descripteurs BRIEF[5] et FREAK [1], SIFT [20] et SURF [2]. Les descrip-teurs sont appariés par recherche de correspondances dansune zone de 40x40 pixels dans la seconde image autourde la position des points détectés dans la première image.Pour le KLT, des coins de Harris sont détectés dans la pre-mière image avec la version de Shi-Tomasi [29] et recher-chés par calcul de flot optique dans la seconde image. LaFig. 2 montre (a) le nombre de points détectés dans chaqueimage pour chaque détecteur et (b) le nombre de pointscorrectement appariés entre deux images consécutives. Cescourbes montrent que le KLT est capable de suivre le plusde points. Cependant, on peut voir que le détecteur de Har-ris est également le plus performant parmi les différents dé-tecteurs testés (Fig. 2 (a)). Dans un deuxième temps, nousavons donc également évalué les différents descripteurs enutilisant uniquement le détecteur de Harris. Malgré l’uti-lisation d’un même détecteur les critères des descripteurssuppriment certains points non adaptés, d’où la différencedans le nombre de détections dans la Fig. 2 (c). Le gra-phique Fig. 2 (d) montre que l’utilisation de coins de Har-ris améliore les performances de tous les descripteurs, maisqu’aucun n’atteint les performances du KLT.

Pour confirmer les résultats obtenus, une seconde évalua-tion a été effectuée sur un autre jeu de données consistanten onze images successives provenant d’une séquence vi-déo sous-marine prise sur un site archéologique (Fig. 1(b)). Afin de simuler un vrai scénario de VO, les pointsd’intérêt détectés dans la première image de la séquencesont ensuite recherchés dans les dix images suivantes. Lesmauvais appariements sont supprimés par calcul de la géo-métrie épipolaire dans une boucle de RANSAC [11]. Lesgraphes Fig. 3 (a) et (b) montrent qu’ici aussi le KLT réus-sit à suivre le plus grand nombre de points au cours de la sé-quence. Une fois encore, le détecteur de Harris améliore lesrésultats des descripteurs (Fig. 3 (c,d)) mais le KLT reste laméthode de suivi de points la plus efficace.

Devant ces résultats, nous avons décidé de construire notrealgorithme de VO sur un suivi de points d’intérêt détec-tés avec la version de Shi-Tomasi du détecteur de Harris et

FIGURE 4 – Schéma du fonctionnement de l’algorithme de VO.

suivi par KLT. Nous détaillons cet algorithme dans la sec-tion suivante.

4 L’Algorithme de V.O.Le fonctionnement de l’algorithme de VO est résumé par lafigure 4. L’algorithme est basé sur le suivi de points d’in-térêt 2D dans les séquences d’images, dans le but d’esti-mer leurs positions 3D dans le repère monde, et ainsi deconstruire une carte 3D de l’environnement exploré. Lesobservations 2D de ces amers 3D sont ensuite utilisées pourestimer les déplacements de la caméra. Les images servantà la triangulation d’amers 3D sont considérées comme desimages-clés et les plus récentes d’entre elles sont gardéesen mémoire dans le but d’optimiser la trajectoire estiméeet la structure de la carte 3D via des étapes d’ajustementde faisceaux [33]. De ce point de vue, notre méthode estsimilaire aux approches de [14, 22]. Cependant, contraire-ment à ces méthodes, nous ne cherchons pas à calculer desdescripteurs pour le suivi de points. À la place nous utili-sons la méthode du KLT, plus adaptée à l’environnementsous-marin comme montré dans la section 3.Dans la suite de cet article, nous supposons que la caméramonoculaire est calibrée et que les effets de distorsionssont compensés. Le modèle géometrique considéré ici estle modèle du sténopé et l’expression mathématique de sonmodèle de projection est le suivant :

proj(Tj , X) =

[uv

]= K.Tj .X (1)

avec u et v les coordonnées en pixels, K les paramètres in-trinsèques et Tj la matrice de projection projetant un point3D du repère monde dans le repère caméra. (1) peut égale-ment être écrit sous la forme suivante :

proj(Tj , X) =

fx 0 cx0 fy cy0 0 1

. [ R t01×3 1

].

xyz1

(2)

avec Tj ∈ SE(3), R ∈ SO(3), t ∈ R3 et X ∈ P3. Lescoefficients fx,fy et cx,cy représentent respectivement la

Page 5: Odométrie Visuelle Monoculaire en Environnement Sous-Marin · 2018. 6. 13. · tion sous-marine, nous proposons ici une méthode de VO uniquement basée sur les données provenant

distance focale et le centre optique de la caméra en pixel.Les paramètres (x, y, z, 1) correspondent à la représenta-tion homogène des points 3D X dans le repère monde.

4.1 Suivi de points image à image

Des points d’intérêt sont extraits dans chaque nouvelleimage-clé grâce à la version de Shi-Tomasi du détecteurde Harris [29]. Les déplacements de ces points d’intérêt2D sont ensuite estimés avec la méthode du KLT. Aprèschaque estimation du flot optique, nous supprimons rigou-reusement les mesures aberrantes. Pour cela, dans un pre-mier temps, nous calculons l’écart entre les estimationsaller-retour du flot optique et nous supprimons les pointsavec une trop grande différence. Ensuite nous calculonsla matrice essentielle entre l’image courante et la dernièreimage-clé via la méthode des 5-points de Nister [23]. Cettematrice essentielle est calculée dans une boucle de RAN-SAC afin de supprimer les points aberrants par rapport auxcontraintes épipolaires.

Une fois qu’un déplacement suffisant de la caméra est dé-tecté, les points d’intérêt 2D suivis sont triangulés à par-tir de leur observation dans l’image courante et la dernièreimage-clé. L’image courante est ensuite convertie en tantqu’image-clé et de nouveaux points d’intérêt 2D sont ex-traits afin d’atteindre 500 points à suivre (les observationscourantes d’amers 3D étant incluses). Toutes ces observa-tions 2D sont ensuite suivies comme décrit ci-dessus.

4.2 Recherche de points perdus

Le principal inconvénient du suivi de points par estima-tion du flot optique est que les points perdus sont générale-ment perdus de façon permanente alors qu’en comparaisonles descripteurs permettent d’apparier des points ayant subide forts déplacements. Or, dans le contexte sous-marin, lespuissants éclairages embarqués par les ROV ont tendanceà attirer des poissons dans le champ de vue de la caméra.Les occultations dues à ces poissons passant au-dessus depoints suivis entraînent une perte rapide de ces points. Tou-tefois, les poissons se déplacent très vite et leurs positionschangent rapidement entre deux images. Nous tirons partide cette propriété pour augmenter la robustesse aux occul-tations temporaires de notre méthode de suivi de points.Nous gardons en mémoire une petite fenêtre de recherchecontenant les images les plus récentes (en pratique cinqimages suffisent) avec les coordonnées des points d’intérêtperdus par flot optique pour chacune. À chaque itération,nous essayons de retrouver les points perdus contenus danscette fenêtre. Les points retrouvés sont ajoutés à la liste despoints suivis et les autres sont renvoyés un pas en arrièredans la fenêtre de recherche jusqu’à leur destruction.

Cette implémentation pour le suivi de points d’intérêt sertà la fois au suivi de points purement 2D, pour une futuretriangulation, et au suivi d’observations 2D d’amers 3Dconnus pour l’estimation de la pose.

4.3 Estimation de la poseL’estimation des 6 degrés de liberté de la pose de chaqueimage se fait grâce aux correspondances 3D-2D. La poseest calculée avec la formule du P3P (Perpective-from-3-Points) avec la méthode de Kneip et al. [16]. Ce calcul estfait dans une boucle de RANSAC afin de supprimer lescorrespondances 3D-2D qui ne sont pas assez précises. Lapose estimée provient du triplet de points donnant l’esti-mation la plus vraisemblable par rapport à l’ensemble desobservations 2D d’amers. Cette pose est ensuite affinée parminimisation de l’erreur de reprojection globale pour l’en-semble des points en accord avec la pose initiale :

arg minTj

∑i=0

(xi − proj(Tj , Xi))2 (3)

avec xi une observation 2D d’un amer 3D Xi. Cette mi-nimisation est un problème des moindres carrés non li-néaires résolu par l’algorithme de Levenberg-Marquardt.Les poses ainsi calculées sont ensuite utilisées dans l’esti-mation de points 3D à partir des points d’intérêt suivis.

4.4 Sélection d’images-clés et cartographieLe processus de cartographie est déclenché par le besoind’une nouvelle image-clé. Plusieurs critères ont été définispour la création d’une image-clé. Le premier critère est laparallaxe. Si une parallaxe importante a été mesurée depuisla dernière image-clé (30 pixels en pratique), une nouvelleimage-clé est insérée afin d’estimer avec précision de nou-veaux amers 3D. La parallaxe est estimée par calcul de ladisparité médiane de chaque point d’intérêt purement 2Dpar rapport à la précédente image-clé. Pour nous assurerque nous n’essayons pas de trianguler de nouveau à partird’une parallaxe virtuelle due à des rotations pures, nouscompensons les effets des rotations sur les points suivisavant de calculer la disparité médiane. Le second critère estbasée sur le nombre de correspondances 3D-2D. Nous vé-rifions que nous suivons suffisamment d’observations 2Dd’amers 3D et déclenchons la création d’une image-clé dèsque ce nombre descend en dessous d’une certaine limite(en pratique, moins de 50% du nombre d’observations dansl’image-clé précédente).Une fenêtre des images-clés les plus récentes, avec leurscorrespondances 3D-2D respectives, est gardée en mé-moire pour optimiser les poses estimées. Cette opération,connue sous le terme d’ajustement de faisceaux, est effec-tuée après la création de chaque nouvelle image-clé. Unefois l’optimisation terminée, de nouveaux points de Harrissont détectés dans l’image courante et la boucle de suivi depoints reprend.

4.5 Ajustement de faisceaux fenêtréComme expliqué ci-dessus, une fenêtre des N images-clés les plus récentes est enregistrée et optimisée via uneopération d’ajustement de faisceaux lors de la création dechaque image-clé. Pour assurer un temps de calcul raison-nable, seules les trois images-clés les plus récentes et les

Page 6: Odométrie Visuelle Monoculaire en Environnement Sous-Marin · 2018. 6. 13. · tion sous-marine, nous proposons ici une méthode de VO uniquement basée sur les données provenant

points 3D qu’elles observent sont optimisés. Les images-clés restantes sont fixes et permettent de contraindre ceproblème des moindres carrés non-linéaires. La taille de lafenêtre est adaptative et est définie par le nombre d’images-clés partageant au moins une observation d’un point dela carte 3D avec l’une des trois images-clés optimisées.Cette configuration adaptative permet de mettre de fortescontraintes lors de l’optimisation et réduit au maximumla dérive d’échelle inhérente aux systèmes monoculaires.L’algorithme de Levenberg-Marquardt est utilisé pour ef-fectuer l’optimisation. Le problème est résolu par minimi-sation des erreurs de reprojection des amers 3D observésdans la fenêtre d’images-clés. Comme les estimateurs desmoindres carrés ne font pas de différence entre les fortset faibles résidus, le résultat serait très fortement influencépar la présence de mesures aberrantes. Pour s’en prévenir,nous utilisons le M-Estimateur de Huber [13] de façon à ré-duire l’impact des termes avec les plus hauts résidus dansla solution trouvée.Nous définissons les erreurs de reprojection eij pourchaque point i de la carte 3D observé dans l’image-clé jcomme suit :

eij = xij − proj(Tj , Xi) (4)

Ensuite, (4) est minimisée dans la fenêtre d’image-clé :

arg minXi,Tj′

∑j=0

∑i=0

ρ(eTijΣijeij) (5)

où ρ est la fonction de coût de Huber et Σ est la matrice decovariance, définie ici comme I2×2, associée à l’ensembledes mesures. Notez que j est l’ensemble des images-clésprésentes dans notre fenêtre et que j′ est le triplet desimages-clés les plus récentes.Une fois que l’algorithme de Levenberg-Marquardt aconvergé, nous supprimons les amers 3D dont l’erreur dereprojection est trop grande. Grâce à cette étape d’ajus-tement de faisceaux nous assurons qu’après l’insertion dechaque image-clé, à la fois la trajectoire et la structure 3Dde la carte sont statistiquement optimales.

4.6 InitialisationLe facteur d’échelle n’étant pas directement observabledans les systèmes monoculaires, une procédure d’initiali-sation est nécessaire. Celle-ci se fait généralement par esti-mation de la pose relative entre deux images-clés en impo-sant la norme de la translation entre ces deux images. Dansnotre méthode, nous procédons à l’initialisation par cal-cul de la matrice essentielle avec la méthode des 5-pointsde Nister [23]. Lorsque assez de parallaxe est détectée, lapose relative entre la première image et l’image couranteest estimée grâce à cette méthode et la norme de la transla-tion est fixée à 1. Les deux images sont ensuite convertiesen images-clés et utilisées pour trianguler un premier en-semble de points 3D qui serviront à estimer la pose desimages suivantes. Nous avons pu vérifier que cette simpleméthode permet de s’initialiser avec précision dans tous lescas rencontrés, environnements planaires ou non.

FIGURE 5 – Les quatre différents niveaux de turbidité du jeu dedonnées simulées.

FIGURE 6 – Dérive d’ORB-SLAM (vert), V.O. ORB-SLAM(bleu) et de UW-VO (rouge) sur le jeu de données sous-marinessimulées pour chaque niveau de bruit (de turbidité).

5 Résultats ExpérimentauxImplémentation : Le système proposé a été prototypé enPython et utilise le middleware ROS. Le suivi de points esteffectué avec l’implémentation du KLT de OpenCV [35].Les calculs de géométrie épipolaire et de pose sont faitsavec la bibliothèque OpenGV [15].L’algorithme a été testé sur différents jeux de données etcomparé à ORB-SLAM [22]. Aucune méthode de localisa-tion sous-marine n’étant publiquement disponible, nous nepouvons nous comparer directement à celles-ci. Les deuxalgorithmes sont évalués sur des données sous-marinessimulées et réelles. La vérité terrain de ces trajectoiresn’est pas disponible, mais elles commencent et terminentau même endroit ce qui permet d’estimer une dérive dela localisation. Afin de faire une comparaison équitable,ORB-SLAM a été évalué avec et sans son mécanisme defermeture de boucle. Dans ce qui suit, nous désigneronspar V.O. ORB-SLAM la version purement odométriqued’ORB-SLAM et nous référerons à notre méthode par UW-VO. Afin de tester l’efficacité de UW-VO sur des donnéesplus classiques avec une vérité terrain, nous l’avons éva-lué à l’aide du jeu de données KITTI [12]. Pour chaqueméthode les résultats présentés sont les résultats moyensobtenus sur cinq exécutions.

5.1 Résultats sur données simuléesUn jeu de données simulées a été créé par Duarte et al. [9]à partir de vraies photos de fonds marins. Quatre séquencesvidéos monoculaires d’une même trajectoire en trianglesont fournies et chaque séquence est plus ou moins dégra-

Page 7: Odométrie Visuelle Monoculaire en Environnement Sous-Marin · 2018. 6. 13. · tion sous-marine, nous proposons ici une méthode de VO uniquement basée sur les données provenant

FIGURE 7 – Trajectoires estimées avec (a) UW-VO appliqué à laséquence de plus fort niveau de bruit et avec (b) V.O. ORB-SLAMsur la séquence de niveau de bruit 3 (au-delà V.O. ORB-SLAMéchoue).

TABLE 1 – Dérives estimées à l’issue des essais sur lesimages sous-marines réelles

Dérive (%)UW-VO UW-VO sans retracking ORB-SLAM

1.428 1.734 3.312

dée par du bruit simulant de la turbidité Fig 5). Pour chaqueséquence, la trajectoire triangulaire est parcourue deuxfois. La Fig. 6 présente la dérive finale estimée pour chaqueméthode. Sur les trois premières séquences, ORB-SLAMprésente le plus faible niveau de dérive car il parvient à dé-tecter les fermetures de boucle et donc réduit drastiquementla dérive accumulée. Sur les mêmes séquences, V.O. ORB-SLAM a la plus forte dérive. Il est à noter que ORB-SLAMet V.O. ORB-SLAM échouent presque systématiquementsur la troisième séquence et que beaucoup d’exécutions ontété nécessaires avant d’obtenir cinq bonnes trajectoires. Surla dernière séquence, aucune des versions de ORB-SLAMne fonctionne du fait de la mise en échec de sa méthodede suivi de points basée sur le calcul de descripteurs ORB.Ces résultats démontrent l’échec de la méthode de suivi depoints d’ORB-SLAM au-delà d’un certain niveau de tur-bidité. En comparaison, UW-VO fonctionne sur les quatreséquences (7). Les trajectoires estimées par UW-VO sontplus précises que celles de V.O. ORB-SLAM et la turbiditén’a qu’une très faible influence sur la précision des résul-tats obtenus. Ces résultats confirment l’efficacité de notreméthode en tant que système d’odométrie robuste aux en-vironnements turbides.

5.2 Résultats sur données réellesNous présentons maintenant les résultats obtenus sur uneséquence vidéo sous-marine réelle. Cette séquence a étéenregistrée en lumière artificielle, à 500 mètres de pro-fondeur en mer Méditerranée (Corse), à l’occasion d’unemission archéologique conduit par le Département des Re-cherches Archéologiques Subaquatiques et Sous-Marines(DRASSM, Ministère de la Culture). La vidéo a été enre-gistrée au moyen d’une caméra embarquée sur un ROV. Lacaméra est orientée vers le bas, ce qui est courant pour lescampagnes de photogrammétrie sous-marine.Cette séquence est un cas très classique de vidéos prises surun site archéologique. De la turbidité dégrade les images et

FIGURE 8 – Trajectoires estimées sur une séquence sous-marineréelle. (a) Image de la séquence. Localisation avec UW-VO (b),avec UW-VO sans retracking (c) et enfin avec ORB-SLAM (d).TABLE 2 – Comparaison de l’erreur absolue sur la trajec-toire sur le jeu de données KITTI.

RMSE (m)

Séq. - Length ORB-SLAMV.O.

ORB-SLAMUW-VO

00 - 3724 m 6.68 104.89 130.402 - 5067 m 21.75 44.71 185.4903 - 561 m 1.59 1.78 3.4504 - 394 m 1.79 0.63 1.20405 - 2206 m 8.23 44.69 65.4906 - 1233 m 14.68 52.75 52.5407 - 695 m 3.36 17.98 18.7508 - 3223 m 46.58 56.45 61.0209 - 1705 m 7.62 60.71 53.3310 - 920 m 8.68 8.25 6.50

des poissons viennent perturber quelques parties de la sé-quence. Elle a été choisie spécifiquement dans la mesureoù ORB-SLAM fonctionne sur toute sa durée. Pour obser-ver les effets du mécanisme de recherche de points perdus(décrit dans la section 4.2 et représenté en (2) Fig.4), nousavons testé UW-VO avec et sans. Ici, ORB-SLAM n’estpas capable de détecter la fermeture de boucle, les résul-tats sont donc les mêmes pour ORB-SLAM et V.O. ORB-SLAM. Nous pouvons voir dans le tableau 1 que UW-VOprésente le plus faible niveau de dérive sur cette séquence.L’intérêt du mécanisme de recherche des points perdus estdémontré dans cette séquence par une réduction de 18%de la dérive estimée. L’amélioration est significative ici carbeaucoup de points d’intérêt sont retrouvés lors des pas-sages de poissons. En comparaison, ORB-SLAM a une dé-rive deux fois plus élevée.

5.3 Résultats sur KITTIAfin d’évaluer les performances de UW-VO sur des sé-quences avec vérité terrain nous avons utilisé le datasetKITTI [12]. Ce jeu de données contient des séquences vi-déos prises à partir d’une caméra embarquée sur une voi-ture évoluant en environnement urbain. Pour être équi-

Page 8: Odométrie Visuelle Monoculaire en Environnement Sous-Marin · 2018. 6. 13. · tion sous-marine, nous proposons ici une méthode de VO uniquement basée sur les données provenant

table dans l’évaluation, nous nous comparons à V.O. ORB-SLAM. L’erreur absolue de chaque trajectoire estimée pourchaque séquence est présentée dans le tableau 2. Les ré-sultats de ORB-SLAM sont indiqués pour information etproviennent de [22]. Du fait que le facteur d’échelle est in-connu pour les systèmes monoculaires, nous alignons lestrajectoires estimées avec la vérité terrain et calculons l’er-reur absolue de la trajectoire à partir de la méthode de [32].Les résultats montrent que UW-VO donne des résultats sa-tisfaisants sur ces séquences. Sur les séquences 06, 09 et10, les trajectoires estimées sont plus précises que celle deV.O. ORB-SLAM. Nous avons tendance à perdre en pré-cision sur les trajectoires les plus longues du fait de la dé-rive du facteur d’échelle. De plus, les forts changementsd’exposition dans les séquences de KITTI diminuent lesperformances du KLT. Le suivi de points par calcul de des-cripteurs est plus adapté ici. Malgré tout, en moyenne nosrésultats sont du même ordre de précision que V.O. ORB-SLAM sur la majorité des séquences de KITTI.

6 ConclusionDans cet article, nous avons présenté un nouvel algorithmed’odométrie visuelle monoculaire robuste aux dégrada-tions optiques liées au milieu sous-marin. Nous avons mon-tré que la méthode proposée est plus précise que la méthodeORB-SLAM sur les données sous-marines, tout en conser-vant une précision comparable sur des données terrestres.Ce travail est un premier pas vers un système robuste delocalisation sous-marine à partir d’une simple caméra. Lesperspectives sont de convertir les codes Python en C++ afinde fonctionner en temps-réel et de pouvoir embarquer l’al-gorithme directement sur un ROV. Nous prévoyons d’amé-liorer notre système en mettant au point un mécanisme defermeture de boucle fonctionnel en environnement sous-marin et ainsi passer d’un système de VO à un système deSLAM. La fusion d’une centrale inertielle et d’un capteurde pression bas-coût sera également étudiée pour lever l’in-détermination du facteur d’échelle. Enfin, des méthodes dereconstructions 3D dense seront investiguées afin de pro-poser une cartographie précise des sites archéologiques entemps-réel, qui pourra aider les archéologues pendant lesmissions.

RemerciementsLes auteurs remercient le DRASSM pour la mise à dispo-sition des vidéos sous-marines.

Références[1] A. Alahi, R. Ortiz, and P. Vandergheynst. FREAK: Fast Retina Key-

point. In CVPR, 2012.[2] Herbert Bay, Tinne Tuytelaars, and Luc Van Gool. SURF: Speeded

Up Robust Features. In ECCV, 2006.[3] A. Burguera, F. Bonin-Font, and G. Oliver. Trajectory-Based Visual

Localization in Underwater Surveying Missions. Sensors, 2015.[4] C. Cadena, L. Carlone, H. Carrillo, Y. Latif, D. Scaramuzza,

J. Neira, I. Reid, and J. J. Leonard. Past, Present, and Futureof Simultaneous Localization and Mapping: Toward the Robust-Perception Age. IEEE Transactions on Robotics, 2016.

[5] M. Calonder, V. Lepetit, and M. Ozuysal et al. BRIEF: Computinga Local Binary Descriptor Very Fast. IEEE TPAMI, 2012.

[6] Felipe Codevilla, Joel De O. Gaya, Nelson Duarte Filho, and SilviaS. C. Costa Botelho. Achieving Turbidity Robustness on Underwa-ter Images Local Feature Detection. In BMVC, 2015.

[7] Vincent Creuze. Monocular Odometry for Underwater Vehicleswith Online Estimation of the Scale Factor. In IFAC, 2017.

[8] P. Drap, D. Merad, B. Hijazi, and L. Gaoua et al. Underwater Pho-togrammetry and Object Modeling: A Case Study of Xlendi Wreckin Malta. Sensors, 2015.

[9] A. C. Duarte, G. B. Zaffari, R. T. S. da Rosa, and L. M. Longarayet al. Towards comparison of underwater SLAM methods: An opendataset collection. In IEEE OCEANS, 2016.

[10] R. M. Eustice, O. Pizarro, and H. Singh. Visually Augmented Na-vigation for Autonomous Underwater Vehicles. IEEE Journal ofOceanic Engineering, 2008.

[11] Martin A. Fischler and Robert C. Bolles. Random Sample Consen-sus: A Paradigm for Model Fitting with Applications to Image Ana-lysis and Automated Cartography. Commun. ACM, 1981.

[12] A. Geiger, P. Lenz, and R. Urtasun. Are we ready for AutonomousDriving? The KITTI Vision Benchmark Suite. In CVPR, 2012.

[13] R. I. Hartley and A. Zisserman. Multiple View Geometry in Compu-ter Vision. 2004.

[14] G. Klein and D. Murray. Parallel Tracking and Mapping for SmallAR Workspaces. In ISMAR, 2007.

[15] L. Kneip and P. Furgale. OpenGV: A unified and generalized ap-proach to real-time calibrated geometric vision. In ICRA, 2014.

[16] L. Kneip, D. Scaramuzza, and R. Siegwart. A novel parametrizationof the perspective-three-point problem for a direct computation ofabsolute camera position and orientation. In CVPR, 2011.

[17] S. Leutenegger, M. Chli, and R. Y. Siegwart. BRISK: Binary Robustinvariant scalable keypoints. In ICCV, 2011.

[18] Stefan Leutenegger, Paul Furgale, Vincent Rabaud, Margarita Chli,Kurt Konolige, and Roland Siegwart. Keyframe-Based Visual-Inertial SLAM using Nonlinear Optimization. In RSS, 2013.

[19] Y. Lin, F. Gao, T. Qin, and W. Gao et al. Autonomous aerial navi-gation using monocular visual-inertial fusion. JFR, 2018.

[20] David G. Lowe. Distinctive Image Features from Scale-InvariantKeypoints. International Journal of Computer Vision, 2004.

[21] E. Mouragnon, M. Lhuillier, M. Dhome, F. Dekeyser, and P. Sayd.Real Time Localization and 3D Reconstruction. In CVPR, 2006.

[22] R. Mur-Artal, J. M. M. Montiel, and J. D. Tardós. ORB-SLAM: AVersatile and Accurate Monocular SLAM System. IEEE Transac-tions on Robotics, 2015.

[23] D. Nister. An efficient solution to the five-point relative pose pro-blem. IEEE TPAMI, 2004.

[24] L. Paull, S. Saeedi, M. Seto, and H. Li. AUV navigation and locali-zation: A review. IEEE Journal of Oceanic Engineering, 2014.

[25] P.Negre, F.Bonin-Font, and G.Oliver. Cluster-based loop closingdetection for underwater slam in feature-poor regions. In Icra, 2016.

[26] D. Ribas, P. Ridao, J. Domingo Tardos, and J. Neira. UnderwaterSLAM in a marina environment. In IROS, 2007.

[27] E. Rosten, R. Porter, and T. Drummond. Faster and Better: A Ma-chine Learning Approach to Corner Detection. IEEE TPAMI, 2010.

[28] E. Rublee, V. Rabaud, K. Konolige, and G. Bradski. ORB: An effi-cient alternative to SIFT or SURF. In ICCV, 2011.

[29] Jianbo Shi and C. Tomasi. Good features to track. In CVPR, 1994.[30] F. Shkurti, I. Rekleitis, M. Scaccia, and G. Dudek. State estimation

of an underwater robot using visual and inertial information. InIROS, 2011.

[31] Hauke Strasdat, J.M.M. Montiel, and Andrew J. Davison. VisualSLAM: Why filter? Image and Vision Computing, 2012.

[32] J. Sturm, N. Engelhard, F. Endres, and W. Burgard et al. A Bench-mark for the Evaluation of RGB-D SLAM Systems. In IROS, 2012.

[33] B. Triggs, P. McLauchlan, R. Hartley, and A. Fitzgibbon. BundleAdjustment — A Modern Synthesis. In Vision Algorithms : Theoryand Practice, 2000.

[34] N. Weidner, S. Rahman, A. Q. Li, and I. Rekleitis. Underwater cavemapping using stereo vision. In ICRA, 2017.

[35] Jean yves Bouguet. Pyramidal implementation of the Lucas Kanadefeature tracker. Intel, 2000.