Front-End du SLAM visuel : Détection et association de primitives

Télécharger le fichier original (Mémoire de fin d’études)

Réalité augmentée

La réalité augmentée permet l’incrustation d’éléments virtuels dans une séquence d’images issues d’une caméra réelle. Grâce à cette technologie, il est possible de visualiser en temps réel un objet 3D intégré de manière fidèle à l’environnement, ou encore des indications sous la forme de graphiques (flèches, icônes…) ou de textes. Cette technologie a de nombreuses applica-tions, pour lesquelles deux principales catégories se distinguent.
La première concerne les applications qui apportent une information sur l’environnement visualisé, où il est nécessaire de reconnaître des modèles 3D dans les images 2D afin d’y apposer les informations souhaitées. Plusieurs usages sont actuellement mis en place ou envisagés pour la médecine, la mé-canique, l’automobile, l’archéologie ou encore le tourisme historique.
Pour illustrer cette catégorie d’applications mentionnons les travaux de M.Tamaazousti au CEA LIST. La figure 1.1 issue de [Tamaazousti 2013] concerne l’assistance à la conception de cuisine : la cuisine originale (à gauche) est localisée en ligne de manière précise, pour modifier de manière virtuelle les couleurs de la crédence ou du mobilier (à droite).
Figure 1.1 – Exemple d’applications de la Réalité Augmentée nécessitant de loca-liser des objets en temps réel, ici des meubles de cuisine.
La seconde catégorie relève des applications de pure visualisation, où l’en-vironnement est a priori inconnu. Pour savoir où rajouter en ligne des informa-tions sur les images, soit un marqueur est positionner dans la scène réelle, soit l’usager pointe où l’ajout doit être fait et une analyse au moins partielle de la scène doit être faite pour que l’image augmentée soit réaliste (par exemple, l’objet doit être sur le sol, ni en dessus, ni au dessous !). Donc en ce cas, la reconstruction de l’environnement sert à positionner l’objet virtuel et à le lo-caliser dans la scène. Ces applications sont aujourd’hui très utilisées dans le domaine du divertissement, de l’essayage virtuel ou du marketing.
Figure 1.2 – Exemple d’applications de la Réalité Augmentée sur des appareils mobiles, nécessitant une analyse de la scène : aménagement d’intérieur (gauche) et divertissement (droite).
Cette thèse est effectuée en partenariat entre l’entreprise Innersense et le LAAS-CNRS. Le LAAS (Laboratoire d’Architecture et d’Analyse des Sys-tèmes) est un institut de recherche du CNRS dont les thématiques sont cen-trées autour de 4 principaux domaines ; informatique, robotique, automatique

Contexte 

et micro-nano technologies.
Innersense est une société, créée en 2014, qui propose des solutions et des applications consacrées à l’essayage virtuel ou à la configuration 3D de meubles sur tablette et sur téléphone portable. Le savoir faire d’Innersense développé au cours des années leur a permis de créer des partenariats avec les principaux acteurs de l’ameublement français, et de s’étendre désormais aux États-Unis et en Italie. Contrairement aux applications de divertissement, l’essayage virtuel d’un objet (meuble, rideaux, bibelot…) dans un environne-ment réel, éventuellement déjà occupé par des meubles existants, demande une intégration de l’objet virtuel à l’échelle et suffisamment d’espace dans la scène capturée afin de le disposer de manière physiquement cohérente.
Pour être respectée, la première condition nécessite la localisation de la caméra dans la scène à une échelle métrique ainsi qu’une reconstruction par-tielle de l’environnement. Ces problèmes de cartographie et de localisation simultanées peuvent être résolus de différentes manières qui seront abordées par la suite.
La seconde condition requiert généralement de modifier virtuellement la pièce, voire de la vider. En ce cas, il est donc nécessaire de ne reconstruire que la structure de la pièce et d’ignorer alors les objets réels en les effaçant dans l’image. Le procédé d’effacement d’un objet dans une séquence d’images est dénommé « réalité diminuée ».
Dans ce présent travail, nous appellerons « réalité altérée » l’action d’effacer un objet réel pour ensuite incruster un objet virtuel, ce qui correspond à une combinaison des méthodes de réalité diminuée et de réalité augmentée.
Ces technologies font l’objet d’une vive demande dans le milieu de l’aména-gement intérieur. Elles font cependant appel à des algorithmes qui nécessitent une capacité de calcul non négligeable. Si elles restent relativement accessibles pour des ordinateurs de bureau, leur adaptation sur des plateformes mobiles telles que téléphones portables ou tablettes est en revanche plus complexe. L’augmentation rapide de la puissance de calcul sur ces plateformes a permis l’arrivée récente d’applications utilisant la réalité augmentée. En revanche, les algorithmes de réalité diminuée ou altérée sont plus coûteux et les applica-tions ne sont pas encore suffisamment matures pour être exploitables par un utilisateur lambda.

Matériel visé et caméra à obturateur déroulant

La réalité augmentée sur tablettes et téléphones portables suppose l’utili-sation des capteurs bas-coût intégrés sur ces appareils. Ces appareils possèdent généralement une centrale inertielle (avec accéléromètres, gyromètres et ma-gnétomètres) et une ou plusieurs caméras bas-coût. La distinction entre une centrale inertielle bas-coût et une centrale inertielle haut-de-gamme est géné-ralement caractérisée par une simple différence de précision, les centrales
Figure 1.3 – Illustration d’une méthode de réalité diminuée sur un jeu de données synthétiques où l’information 3D est connue a priori. A gauche l’image initiale, à droite l’image après effacement des meubles.
de-gamme produisant des données moins bruitées, à plus haute fréquence, et dérivant moins vite dans le temps.
Figure 1.4 – Exemple des distorsions induites par l’utilisation d’une caméra à obturateur déroulant. L’exposition non simultanée des lignes de l’image entraîne une déformation des objets en mouvement, comme la baguette du batteur (droite) ou bien l’hélice de l’avion (gauche).
En revanche, les caméras bas-coût qui équipent les tablettes et les télé-phones portables présentent une conception différente des caméras commu-nément utilisées par des applications usuelles (vidéo-surveillance, contrôle de qualité, reconnaissance d’objets…) et nécessitent une modélisation adaptée. En effet, ces caméras possèdent un obturateur déroulant (abrégé OD) contrai-rement aux caméras à obturateur global (abrégé OG). Les lignes de l’image sont alors acquises à des instants différents (voir fig. 1.5). L’obturateur de ces
caméras expose séquentiellement les lignes de l’image (obturateur déroulant), alors que les obturateurs globaux exposent la totalité de l’image durant une même période. Ce principe est similaire à celui des appareils photos équipés d’un obturateur à rideaux. Ces appareils utilisent deux rideaux, l’un décou-vrant le capteur, et l’autre le recouvrant, afin que chaque ligne de l’image soit exposée pendant une même durée. L’ouverture entre ces deux rideaux per-met de contrôler la durée d’exposition de chaque ligne, ce qui rend possible l’obtention de temps de pose très courts pour une faible ouverture.

Table des matières

1 Introduction
1.1 Contexte
1.1.1 Réalité augmentée
1.1.2 Matériel visé et caméra à obturateur déroulant
1.1.3 Environnement d’intérieur
1.1.4 Objectifs
1.2 Front-End du SLAM visuel : Détection et association de primitives
1.2.1 Détection de primitives
1.2.2 Suivi de primitives
1.2.3 Association de primitives à partir de descripteurs
1.3 Back-end du SLAM visuel : filtrage et optimisation
1.3.1 Approches par filtrage
1.3.2 Approches par Optimisation
1.4 Contributions
1.5 Organisation du manuscrit
2 Notions de base
2.1 Algèbre de Lie
2.1.1 Variété, géométrie Riemanienne et groupe de Lie
2.1.2 Application logarithmique
2.1.3 Groupe Special Orthogonal
2.1.4 Groupe Special Euclidien
2.2 Modèle de caméra à obturateur global
2.2.1 Paramètres intrinsèques
2.2.2 Paramètres extrinsèques
2.2.3 Paramètres de distorsions
2.3 Géométrie épipolaire et recouvrement de l’information 3D
2.3.1 Homographie
2.3.2 Matrice fondamentale et matrice essentielle
2.3.3 Triangulation
2.4 Interpolation
2.4.1 Interpolation linéaire
2.4.2 Courbes de Bézier
2.4.3 B-Spline
2.4.4 B-Spline cumulative
2.5 Interpolation de poses caméra
2.5.1 interpolation linéaire SLERP 1 Introduction
1.1 Contexte
1.1.1 Réalité augmentée
1.1.2 Matériel visé et caméra à obturateur déroulant
1.1.3 Environnement d’intérieur
1.1.4 Objectifs
1.2 Front-End du SLAM visuel : Détection et association de primitives
1.2.1 Détection de primitives
1.2.2 Suivi de primitives
1.2.3 Association de primitives à partir de descripteurs
1.3 Back-end du SLAM visuel : filtrage et optimisation
1.3.1 Approches par filtrage
1.3.2 Approches par Optimisation
1.4 Contributions
1.5 Organisation du manuscrit
2 Notions de base
2.1 Algèbre de Lie
2.1.1 Variété, géométrie Riemanienne et groupe de Lie
2.1.2 Application logarithmique
2.1.3 Groupe Special Orthogonal
2.1.4 Groupe Special Euclidien
2.2 Modèle de caméra à obturateur global
2.2.1 Paramètres intrinsèques
2.2.2 Paramètres extrinsèques
2.2.3 Paramètres de distorsions
2.3 Géométrie épipolaire et recouvrement de l’information 3D
2.3.1 Homographie
2.3.2 Matrice fondamentale et matrice essentielle
2.3.3 Triangulation
2.4 Interpolation
2.4.1 Interpolation linéaire
2.4.2 Courbes de Bézier
2.4.3 B-Spline
2.4.4 B-Spline cumulative
2.5 Interpolation de poses caméra
2.5.1 interpolation linéaire SLERP
2.5.2 Interpolation sur la variété
2.5.3 B-Splines cumulatives cubiques sur SE3
2.6 Outils d’optimisation
2.6.1 Introduction à l’ajustement de faisceaux
2.6.2 Linéarisation et minimisation de l’erreur
2.6.3 Optimisation sur la variété
2.6.4 Représentation par graphe
2.7 Conlusion
3 Caméras à obturateur déroulant et modèles existants
3.1 Caméras à obturateur déroulant
3.1.1 Altérations photométriques
3.1.2 Déformations géométriques
3.2 Impact des caméras OD sur les algorithmes de vision
3.2.1 Critère d’évaluation
3.2.2 Expérience sur données synthétiques
3.2.3 Expériences sur données réelles
3.2.4 Résultats du SLAM sur séquences réelles OG et OD
3.3 Modèles existants de caméras OD
3.3.1 Modèles de mouvement pour caméra OD
3.3.2 Modèle de projection pour caméra OD
3.4 Conclusion
4 Modèle d’interpolation à distribution temporelle non uniforme
pour caméras OD
4.1 B-Splines non uniformes
4.1.1 Formulation matricielle des B-Splines cubiques nonuniformes
4.2 DTNU et génération des poses de contrôle
4.2.1 Méthode inertielle
4.2.2 Méthode par analyse de l’erreur
4.3 Adaption d’algorithmes d’optimisation pour modèle DTNU
4.3.1 PnP
4.3.2 Ajustement de faisceaux
4.3.3 Optimisation de trajectoires
4.3.4 Optimisation spatio-temporelle des poses de contrôle
4.3.5 Représentation par graphe
4.4 Résultats
4.4.1 Tests sur données synthétiques
4.4.2 Tests sur données réelles
4.5 Discussion
4.5.1 Utilisation de primitives segments
4.5.2 Coût calculatoire
4.6 Conclusion
5 Reconstruction en milieux intérieurs
5.1 Méthodes de reconstruction dense par vision
5.1.1 Reconstruction à partir d’images clés issues d’un SLAM
5.1.2 Limitation de la méthode
5.1.3 Méthodes de reconstruction en intérieur
5.2 Modèles de pièces
5.2.1 Modèle parallélépipédique
5.2.2 Modèle plan du sol
5.2.3 Définition des prédictions et des observations
5.2.4 Points 3D
5.2.5 Segments et droites 3D
5.3 Détection automatique des observations dans l’image
5.3.1 Détection des plans principaux
5.3.2 Estimation de la structure de la pièce
5.3.3 Détection automatique des coins
5.4 Optimisation de la structure
5.4.1 Données en entrées
5.4.2 Optimisation du modèle parallélépipédique
5.4.3 Optimisation du modèle « plan du sol » rectiligne
5.4.4 Optimisation du modèle « plan du sol » libre
5.4.5 Discussion
5.5 Perspectives
5.5.1 Augmentation du nombre d’images
5.5.2 Augmentation du nombre de segments
5.5.3 Appariement de segments 3D-2D
5.5.4 Apprentissage automatique
6 Applications
6.1 Scénario monoculaire
6.1.1 Scénario feuille A4
6.1.2 Scénario image et centrale inertielle
6.2 Réalité augmentée sur plateforme Android
6.2.1 Performances
6.2.2 Réalité augmentée
6.3 Réalité diminuée et réalité altérée
6.3.1 Acquisition des images depuis différents points de vue
6.3.2 Acquisition de données haut niveau fournies par l’utilisateur
6.3.3 Reconstruction du modèle de scène
6.3.4 Effacement
6.3.5 Limitations
6.4 Conclusion
Conclusion
A Annexe
A.1 Dérivées analytiques
A.1.1 Approximation sur SE(3)
A.1.2 Composition des Jacobiennes
A.1.3 Dérivées pour spline sous formes cumulatives
A.1.4 Détails des jacobiennes
A.2 Modèle pièce points multi-hauteurs
Bibliographie

Télécharger le rapport complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *