1 / 53

Recherche linéaire et fusion de données par ajustement de faisceaux :

Recherche linéaire et fusion de données par ajustement de faisceaux :. Application à la localisation par vision . Julien Michot Julien.michot.fr@gmail.com. Encadrants : Adrien Bartoli François Gaspard Directeur de thèse : Jean-Marc Lavest.

heaton
Download Presentation

Recherche linéaire et fusion de données par ajustement de faisceaux :

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Recherche linéaire et fusion de données par ajustement de faisceaux : Application à la localisation par vision Julien Michot Julien.michot.fr@gmail.com • Encadrants :Adrien Bartoli • François Gaspard • Directeur de thèse :Jean-Marc Lavest

  2. Contexte des travaux réalisés • Contextes applicatifs • Reconstruction 3D par vision • Ensemble d’images (non ordonnées) • Hors ligne • Localisation par vision • Flux vidéo (ordonnées) • Temps réel • Méthodes de localisation par vision • Odométrie visuelle • Mouvement 2D de zones d’intérêt • Construction d’une carte de l’environnement • Reconstruction à partir du mouvement (vision) • Batch Structure-from-Motion • Structure-from-Motion incrémental • SLAM (robotique) Reconstruction de Dubrovnik (Croatie) [Agrawal’09] Application de réalité augmentée [Klein’07]

  3. Reconstruction à partir du mouvement 2D 3D Reconstruction incrémentale Initialisation Méthode incrémentale

  4. Ajustement de faisceaux obs. reprojection • Paramètres optimisés • La trajectoire de la caméra et la scène • 6 (euclidien) à 9 (projectif) paramètres par pose • 3 coordonnées de chaque point 3D • Objectif • Minimiser les erreurs de reprojections • Distance euclidienne (non linéaire/quadratique) • Résolution • Résolution itérative • Par un algorithme de moindres carrés non-linéaires (Gauss-Newton, Levenberg-Marquardt, etc)

  5. Limites de la reconstruction à partir du mouvement • Limites de l’ajustement de faisceaux • Processus très coûteux (ex: 7s pour 50 caméras & 5000 points 3D [sba: Lourakis’08]) • Milliers de variables optimisées • Fonction de coût non-linéaire (plusieurs itérations) • Minima locaux • Convergence à l’optimum global non garantie Problématique Comment accélérer les optimisations non-linéaires (ajustement de faisceaux) ? • Limites de l’approche SfM • Facteur d’échelle inconnu (monoculaire) • Reconstruction non-géoréférencée(repère local) • Dérives (position, orientation, échelle) • Accumulation d’erreurs (approche incrémentale) • Erreurs sur les coordonnées des point 2D, profondeur point 3D, … Problématique Comment réduire les dérives de localisation par SfM incrémental ?

  6. Organisation de la présentation Partie I : Recherche linéaire algébrique Partie II : Fusion de données par ajustement de faisceaux Conclusions et perspectives

  7. Partie I Recherche linéaire algébrique

  8. Positionnement des travaux • Problématique • Comment accélérer les optimisations non-linéaires employées dans la reconstruction par le mouvement ? • Méthodes existantes • Différents algorithmes de résolution des moindres carrés • Gauss-Newton et Levenberg-Marquardt[Triggs 2000, Hartley 2003b, …] • Dog-Leg [Lourakis 2005] • Gradients conjugués + préconditionnement[Byröd 2009, Jeong 2010, Agarwal 2010] • Méthodesexploitant la structure creuse du problème • Complément de Schur [Granshaw 1980, Triggs 2000, Mouragnon 2006, Konolige 2010] • Méthodesréduisant le nombre de paramètres à optimiser • Caméra virtuelle [Shum 1999], sous-cartes [Ni 2007], squelette[Snavely 2008b], • Ajustement de faisceaux local [Mouragnon 2006, Engels 2006] • Positionnement • Accélération de la résolution des moindres carrés

  9. Moindres carrés non-linéaires itération k itération k+1 solution courante • Principes Méthode incrémentale (de solution initiale x(0) issue de SfM) : • Approximation locale (quadratique) • Gauss-Newton • … • Estimation du déplacement local δ(k) • Descente de gradient, • Gauss-Newton, … • Estimation de l’amplitude optimale α (k)(optionnel) • Recherche linéaire (Line Search) • [Al-Baali 1986, Moré 1994, Nocedal 1992,...] • Processus très coûteux ! • Calcul de la nouvelle solution • Idée générale • Une technique de recherche linéaire • Utilise une approximation de la fonction -> distance algébrique

  10. Distance algébrique • Deux points , sont identiques (espace euclidien) si : • Leurs coordonnées euclidiennes sont égales : • Leurs directions sont identiques (coordonnées homogènes) Produit vectoriel nul • Utiliser une autre fonction de coût • Distance algébrique • Approximation quadratique de la distance euclidienne

  11. Recherche linéaire algébrique globale • Principe • Minimisation de l’erreur géométrique • Pour chaque itération k • Calcul de l’amplitude optimale • Intérêts • Simplification du problème (approximation quadratique) • Calcul efficace de l’amplitude optimale (en distance algébrique)

  12. Recherche linéaire algébrique globale • RLA pour l’ajustement de faisceaux non calibré • Recherche linéaire…algébrique • Fonction de coût algébrique • Recherche de l’amplitude algébrique optimale • Polynôme de degré 3 • Résolution algébrique (rapide) 3 solutions (au maximum) • RLA pour l’ajustement de faisceaux calibré • Résolution identique

  13. Recherche linéaire algébrique globale

  14. Critères de sélection et d’acceptation de l’amplitude • Pourquoi ces critères ? • La distance algébrique est une approximation de la distance géométrique • Plusieurs solutions peuvent être estimées • Près d’un optimum, l’amplitude (GN) est déjà efficace • Quels critères ? • Vérification avec l’amplitude unité • Vérification du premier critère de Wolfe • Sélection de la meilleure solution

  15. Résultats sur les données de synthèse Ajustements calibrés Ajustements non calibrés • Génération de la scène • 500 points 3D, dans une cube de 6m3 • 30 caméras, autour du cube 20m • Bruits blancs (images 640x480px) : 1px • Bruits blancs 3D (solution initiale) • Points : 1m (16%) • Caméras : 2 m (10%), 15° • Étude des convergences

  16. Résultats sur les données de synthèse Taux d’acceptation moyens et écarts types des hypothèses, estimés sur une cinquantaine de données réelles et simulées. • Taux d’acceptation de l’amplitude algébrique (Vérification des conditions) • Exemple d’amplitudes

  17. Résultats sur les données réelles • Ajustements calibrés • Estimation initiale par batch SfM

  18. Bilan de la première partie • Proposition d’une méthode pour accélérer les minimisations non-linéaires • Méthode générique • Utilisable sur différents problèmes de vision (coordonnées homogènes) • En conjonction avec d’autres méthodes de résolution de moindres carrés • Levenberg-Marquardt, gradients conjugués, Dog-leg, etc. • Méthode adaptée àl’ajustement de faisceaux (calibré ou non calibré) • Gains en itération et en temps de calcul (20% en moyenne, en temps) • Plus adaptée aux problèmes dont la solution initiale est peu précise • Dans les premières itérations de l’optimisation • Grandes dimensions par exemple • Variante à deux dimensions : sensiblement plus efficace mais plus lente. • Publications • Conférences internationale (BMVC’09) et nationales (CORESA’09, ORASIS’09) • Journal en cours de rédaction

  19. Partie II Fusion de données par ajustement de faisceaux

  20. Problématique • Objectif : améliorer la précision de la localisation • Comment réduire les dérives de localisation par SLAM monoculaire ? • Notre proposition • Utiliser un capteur supplémentaire • Ajouter ces informations complémentaires dans un SLAM visuel • Directement dans le processus d’optimisation • Comment fusionner ces données ?

  21. Etat de l’art - positionnement des travaux • Méthodes de fusion de données existantes • Filtres de Kalman et variantes • Très employé [Davison 2003, Huster 2003, Strelow 2004,Montiel 2006, Armesto 2007, Gemeiner 2007, Hol 2007, Civera 2009, Servant 2010, ...] • Différentes variantes EKF, UKF, IEKF (…et dérivés IF, SRF, PF, …) • + Gestion intrinsèque des variances • - Difficultés dans le contexte d’une localisation temps réel par vision (ex: monoslam [Davison06]) • Ajustement de faisceaux (contraint) • De plus en plus employé • Centrale à inertie [Jung 2001, Strelow 2002] • Odomètre [Eudes 2010b], GPS [Smith 2003] , • Contraintes sur la trajectoire [Saurer 2010] ou sur la scène [Lothe 2010] • + Plus précis [Strasdat 2010] • + Temps réel [Mouragnon 2006, Klein 2007, Konolige 2010] • - Gestion non triviale de la propagation d’erreurs [Eudes 2009]

  22. Principes • Approche incrémentale • Chaque caméra clé est contrainte par les informations issues d’un second capteur • Intégration d’une contrainte (εik) pondérée (λi) • Dans la fonction de coût associée à la chaque caméra (ajustement de la pose).

  23. Fonctions de coût spécifiques Terme de contrainte (unité?) Terme d’image (pixels) • Pondération • Relie les deux unités • Privilégier l’un au l’autre • Ratio des confiances Par exemple : - Contrainte d’échelle - Contrainte de rotation - Autres…. • Erreurs associées à la caméra clé i : • Comment sélectionner la pondération λi ? Contrainte : en temps réel ! • Fixe pour toute la séquence • Essais-erreurs • Estimation dynamique • Calibrage + propagation d’erreurs [Eudes’10] • Sélection de modèle [Modersitzki04, Farenzena08] • Problème difficile car lié au données

  24. Heuristiques de sélection temps-réel des pondérations • Principes • Calcul des poses pour différents poids • Calcul d’un critère mesurant l’erreur de qualité • Sélection du poids λi* minimisant le critère • Ajustement de faisceaux local contraint • Ré-utilisation du poids λi estimé

  25. Critères de qualité leave-one-out [Wahbaa’75] • (recyclage) • (= 1 point d’intérêt) • Sélection par apprentissage • Validation croisée • Mesure la prédictivité de la pose (capacité à prédire de nouvelles données) • Séparation des points d’intérêt en 2 sous-ensembles • Ensemble d’apprentissage • Ensemble de test • Score : erreurs de reprojection de l’ensemble de test • Problème : peu de points d’intérêt (≈ 40 inliers) • Variante leave-one-out

  26. Critères de qualité • Critères de régularisation • Mesure de compromis entre deux objectifs

  27. Critères de qualité • Critères de régularisation • L-Curve [Hansen’01] • Recherche la pondération la plus impartiale, (ne favorisant aucun des deux objectifs) Maximise la courbure du compromis. • L-Tangent Norm [Brunet’08] • Recherche la pondération pour laquelle une petite variation a le plus faible impacte sur le compromis Minimise la norme de la tangente du compromis.

  28. Résultats – localisation d’un véhicule • Présentation • Caméra embarquée sur un véhicule • Extérieur, milieu urbain • Vitesse jusqu’à 40 km/h • Contrainte : facteur d’échelle

  29. Résultats – localisation d’un véhicule Statistiques de la localisation sur la séquence Odiaac. • Résultats de la localisation • Vérité terrain : INS + GPS-RTK (σ=1m)

  30. Résultats – localisation d’un véhicule Statistiques sur le ratio des normes des translations des trajectoires sur la séquence Odiaac par rapport à la vérité terrain. Moyenne des carrés des résidus 3D sur la séquence Odiaac avec une contrainte d’échelle. Résultats sur l’estimation de l’échelle

  31. Localisation en mouvement libre – système de navigation • Présentation du projet Gyroviz • Caméra à l’épaule (mouvement libre) • Intérieur (tourne autour d’une table) • Contrainte : rotation

  32. Localisation en mouvement libre – système de navigation Statistiques sur les trajectoires reconstruites sur la séquence Gyroviz. • Résultats de la localisation • Vérité terrain : laser tracker(σ=25µm)

  33. Bilan de la seconde partie • Proposition d’une méthode de fusion de données incertaines dans un SLAM • Approche générique (type de contrainte/capteur) • Sélection dynamique, automatique et rapide des poids associés aux contraintes • 3 méthodes proposées (la validation croisée apporte les meilleurs résultats) • Validation quantitative sur deux applications (véhicule, en mouvement libre) • Diminution des dérives observées avec un SLAM monoculaire • En échelle, avec un odomètre • En orientation, avec une centrale à guidage inertiel • Limites de la solution proposée • Pas de correction globale • Correction encore insuffisante (il reste encore une partie des dérives) • Non optimisée pour des capteurs absolus basse fréq. (GPS, reconnaissance de lieux, etc.) • Méthode à adapter pour fusionner plus de 2 capteurs • Publications • Conférence internationale (3DPVT’10) + 1 demande de brevet

  34. Conclusions et perspectives

  35. Conclusions • Contributions scientifiques • Une technique de recherche linéaire adaptée aux problèmes de vision. • Accélération des minimisations • Un système de localisation multi-capteur temps-réel • Ajustement de faisceaux contraint par un capteur de mouvement (odomètre, centrale inertielle) • 3 méthodes permettant de sélectionner dynamiquement les paramètres de pondération. • Par critères de compromis : L-Curve et L-Tangent Norm • Par une méthode d’apprentissage : Validation croisée leave-one-out • Publications dans 4 conférences + 1 brevet • 2 conférences nationales (CORESA’09, ORASIS’09) • 2 conférences internationales (BMVC’09 , 3DPVT’10) • 1 demande de brevet • 1 article journal en cours de rédaction (recherche linéaire)

  36. Perspectives • Prochaines pistes d’étude possibles • Améliorations de la recherche linéaire algébrique • Valider la méthode sur des problèmes à très grandes dimensions • Étudier la possibilité d’employer la méthode pour éviter les minima locaux • Améliorations de la fusion multi-capteur • Comparaison avec une fusion par propagation d’erreur (thèse d’Alexandre Eudes) • Étendre la méthode de sélection des poids pour N>2 capteurs (contraintes) • Correction globale, intégration de données absolues (GPS, …) • Expérimenter la méthode dans d’autres applications (auto-calibrage, …)

  37. Merci de votre attention

  38. Annexes

  39. Contexte des travaux réalisés • Contexte de travail • Novembre 2007 – Novembre 2010 • Réalisé au CEA LIST, en cotutelle avec le LASMEA, ERIM • Financé par le projet de recherche ANR Gyroviz

  40. Publications réalisées • Conférences • Compression et Représentation des Signaux Audiovisuels (CORESA’2009) • Congrès des jeunes chercheurs en vision par ordinateur (ORASIS’2009) • British Machine Vision Conference (BMVC’09) • 3D ProcessingVisualization Transmission (3DPVT’10) • Brevet (soumis) • Procédé et système pour fusionner des données issues de capteurs d'image et de capteurs de mouvement ou de position,N° 1053803, 17/05/2010.

  41. Annexe Recherche linéaire algébrique

  42. Distance algébrique • Normalisation isotropique • Centrer le nuage 2D (origine (0,0)) • Mettre à l’échelle (σ = √2) • 42

  43. Recherche linéaire algébrique bi-dimensionnelle • Principe Postulat : les paramètres (scène, caméra) peuvent ne pas partager la même unité/confiance. • Recherche de deux amplitudes • Amplitude pour les paramètres des caméras αP • Amplitude pour les paramètres de la scène αQ • Fonction de coût algébrique pour l’ajustement de faisceaux non calibré • Résolution • Polynôme de degré 5 • Résolution rapide • Mais non analytique

  44. Recherche linéaire algébrique bi-dimensionnelle • Distance algébrique • 6 itérations • Abscisse αQ • OrdonnéeαP • Distance géométrique • 6 itérations • Abscisse αQ • OrdonnéeαP

  45. Résultats sur les données de synthèse • Nombre de racines des polynômes

  46. Résultats sur les données réelles • Ajustements calibrés • Estimation initiale par SLAM

  47. Annexe Fusion multi-capteur par ajustement de faisceaux

  48. État de l’art • Travaux antérieurs • Multi-caméra • Stéréo [Howard 2008, …], multi-caméra [Kaess 2009, …], etc. • Capteurs de position ou de mouvement • INS/IMU [You 2001, Strelow 2004,Hol 2006, Armesto 2007, Hol 2007, Servant 2010, …] • Odomètres [Chenavier 1992, Eudes 2010a, …] • GPS [Smith 2003, Agrawal 2006b, …] • Capteurs mesurant l’environnement • Laser 3D/LiDAR[Newman 2006, Naikal 2009, Craciun 2010,...], • Radar/sonar [Ribas 2006, …] • Contraintes issues d‘autres algorithmes • Reconnaissance de lieu [Eade 2008, Angeli 2008, …] • Contraintes géométriques de la scène ou sur la trajectoire [Lothe 2009, Saurer 2010, …] • Comment fusionner de manière efficace toutes ces données ?

  49. SLAM multi-capteur • SLAM temps réel basé vision • Approche incrémentale • Intégration d’un second capteur • Ajout de contraintes (termes de régularisation) • Modules additionnels • Stockage et synchronisation • Mémoire tampon circulaire • Horloge numérique commune • Construction des contraintes • Intégration temporelle des observations • Prédiction (modèle de mouvement) • Calcul du terme de contrainte • Choix du coefficient de pondération • Recalage et mise à l’échelle • Recalage initial (si le capteur le permet) • Mise à l’échelle métrique de la scène/trajectoire

  50. Évaluation des coefficients de pondération Évolution des coefficients de pondération sélectionnés par les 3 méthodes, pour des contraintes de rotation inter-caméras • Évolution temporelle des poids

More Related