530 likes | 718 Views
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.
E N D
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
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]
Reconstruction à partir du mouvement 2D 3D Reconstruction incrémentale Initialisation Méthode incrémentale
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)
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 ?
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
Partie I Recherche linéaire algébrique
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
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
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
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)
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
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
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
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
Résultats sur les données réelles • Ajustements calibrés • Estimation initiale par batch SfM
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
Partie II Fusion de données par ajustement de faisceaux
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 ?
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]
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).
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
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é
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
Critères de qualité • Critères de régularisation • Mesure de compromis entre deux objectifs
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.
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
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)
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
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
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)
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
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)
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, …)
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
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.
Annexe Recherche linéaire algébrique
Distance algébrique • Normalisation isotropique • Centrer le nuage 2D (origine (0,0)) • Mettre à l’échelle (σ = √2) • 42
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
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
Résultats sur les données de synthèse • Nombre de racines des polynômes
Résultats sur les données réelles • Ajustements calibrés • Estimation initiale par SLAM
Annexe Fusion multi-capteur par ajustement de faisceaux
É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 ?
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
É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