• Aucun résultat trouvé

Chapitre 4. Discussion et approche proposée pour la définition d’un environnement

5.3. Méthode proposée pour le recalage en réalité augmentée des ressources d’un projet

5.3.3. Spatialisation d’une frame par photogrammétrie

Au déclenchement du processus de recalage, l’image active du flux vidéo peut être extraite, puis transmise au serveur sous forme de chaîne de caractères encodée en base64 par le biais d’une requête Ajax. Dans le même temps, les paramètres intrinsèques et extrinsèques de la caméra, exprimés dans RAR, doivent être sauvés. Après un éventuel prétraitement des données, l’image peut être transmise au

serveur de traitement pour être traitée dans le conteneur dédié aux processus de calculs photogrammétriques. Le calcul de la pose de cette image par rapport au nuage de points du projet et aux autres images peut être réalisé de deux manières (Pamart, Morlet, et al., 2019).

Relevé numérique d’art pariétal : définition d’une approche innovante combinant propriétés géométriques, visuelles et sémantiques au sein d’un environnement de réalité mixte

135

5.3.3.1. Méthode dite par résection spatiale (SR)

Cette méthode repose sur une connaissance préalable de couples de points 2D-3D. Or, dans notre processus, aucun point de contrôle au sol (GCP) n’est connu à l’avance. Pour cette raison, une première phase du processus s’intéresse donc à la recherche de correspondances 2D-3D.

Dans un premier temps, l’image candidate est utilisée pour extraire des points d’intérêt à l’aide de l’algorithme SIFT. À partir de ces points caractéristiques, elle est appareillée aux autres images du projet. Les points de correspondances 2D-2D ainsi établis sont nommés points homologues. Les coordonnées 3D correspondant aux points homologues sont obtenues par projection à partir des cartes de profondeur des images du projet. À l’issue de cette phase, nous disposons d’un ensemble de n points 3D de coordonnées connues et des n points image correspondants, de coordonnées également connues. Dans un second temps, la pose de l’image peut être calculée à partir de ces correspondances à l’aide de la méthode DLT ou Direct Linear Transformation (Abdel-Aziz, Karara, 2015).

À partir de l’équation du modèle de sténopé (section 3.3.6.2.1), nous pouvons poser [K] = [C][T] tel que :

𝑚 ~ [𝐾] 𝑀

[K] est appelée matrice de projection de la caméra. Nous disposons donc pour chaque point d’une équation sous la forme :

[ 𝑢𝑖 𝑣𝑖 1 ] ~ [𝐾] [ 𝑋𝑖 𝑌𝑖 𝑍𝑖 1 ]

Ce qui nous donne deux équations linéairement indépendantes qui sont : 𝑢𝑖 = 𝐾11𝑋𝑖+ 𝐾12𝑌𝑖+ 𝐾13𝑍𝑖+ 𝐾14 𝐾31𝑋𝑖+ 𝐾32𝑌𝑖+ 𝐾33𝑍𝑖+ 𝐾34 et 𝑣 𝑖 = 𝐾21𝑋𝑖+ 𝐾22𝑌𝑖+ 𝐾23𝑍𝑖+ 𝐾24 𝐾31𝑋𝑖+ 𝐾32𝑌𝑖+ 𝐾33𝑍𝑖+ 𝐾34

Ces équations peuvent être réécrites sous la forme 𝐵2𝑛 𝑥 12 𝑝12= 02𝑛 où p est un vecteur composé des

coefficients Kij. La matrice B peut être calculée à partir des coordonnées des points homologues et le

vecteur p contient les 12 inconnues de la matrice [K]. Chaque correspondance fournissant deux équations, 6 correspondances au minimum sont requises pour calculer p. Les paramètres internes et externes de la caméra peuvent ensuite être extraits à partir de p (Hartley, Zisserman, 2003). En pratique, les coordonnées 2D et 3D sont bruitées, les résultats de la méthode DLT doivent alors être affinés pour éliminer les valeurs aberrantes, ce qui est réalisé à l’aide de RANSAC (RANdom SAmple

Consensus) (Fischler, Bolles, 1981).

Cette méthode est intéressante dans la mesure où elle permet d’estimer simultanément les paramètres intrinsèques et extrinsèques de la caméra, et peut donc s’appliquer à des images dépourvues de métadonnées. Cependant, l’utilisation d’une caméra calibrée permet en général d’obtenir des résultats plus fiables car en l’absence d’informations sur la focale de l’appareil cette méthode peut procurerune incohérence concernant la profondeur (Pamart, Ponchio, et al., 2019). Théoriquement, la méthode DLT peut aussi être utilisée lorsque les paramètres intrinsèques sont connus à l’avance. Néanmoins, dans ce cas le problème est surparamétrisé, les résultats sont alors moins stables et requièrent plus de mises en

136

correspondances de points que nécessaires (Tamaazousti, 2013). Ainsi, en l’absence de données de calibration cette méthode est à privilégier. Sinon, il faut privilégier la méthode dite par ajustement de

faisceaux.

5.3.3.2. Méthode dite par ajustement de faisceaux (BBA)

La géométrie épipolaire décrit les contraintes reliant les observations par deux caméras Cam1 et Cam2

d’une même scène. Dans le cas d’une projection perspective, il existe un faisceau de points 3D qui se projettent sur le même point du plan image. La position 3D d’un point m1 d’une image est donc située

quelque part sur la droite passant par le centre optique de la caméra et m1, que l’on appellerayon de

projection. La projection de cette droite sur la deuxième image donne lieu à une droite l2(Figure 105).

Figure 105 : Contrainte épipolaire. Illustration : auteur, d’après (Larnaout, 2014).

Étant donné que M, le point 3D correspondant à m1, doit se trouver sur le rayon de projection, sa

projection sur le plan image de Cam2 se trouve nécessairement sur la droite l2. On parle alors de

contrainte épipolaire. Lorsque les paramètres internes des caméras sont connus, cette contrainte épipolaire peut se traduire par l’utilisation de la matrice fondamentale [F], qui permet de mettre en relation les correspondances de points entre les deux plans images avec la relation suivante :

𝑚2𝑇 [𝐹] 𝑚

1= 0 Où [F] est une matrice 3x3.

Le déplacement entre les deux caméras peut alors être calculé, à un facteur d’échelle près, à partir de cinq correspondances 2D-2D (Tamaazousti, 2013). De manière globale, cette méthode est utilisée en photogrammétrie pour estimer de manière itérative la trajectoire d’une caméra à partir de correspondances 2D-2D et reconstruire ensuite, par triangulation, une représentation 3D initiale de la scène observée. Cependant, les poses et les points 3D ainsi calculés ne constituent qu’une estimation initiale, qu’il est recommandé de raffiner à travers une étape d’optimisation.

L’ajustement de faisceaux ou Bundle Block Adjustment est un processus d’optimisation dont l’objectif est d’optimiser un vecteur de paramètres pour réduire une fonction d’objectif donné. Dans notre cas, la fonction d’objectif vise à réduire les erreurs de reprojection, soit à minimiser la somme des carrés des écarts entre les points détectés dans les images et les reprojections obtenues à partir des points 3D calculés. Dans le module MicMac que nous utilisons, cette minimisation est réalisée par une procédure itérative, l’algorithme de Levenberg-Marquardt (Deseilligny, Cléry, 2011). Rappelons que nous cherchons à spatialiser une unique image par rapport à un jeu de données existant (acquisition maîtresse).

Relevé numérique d’art pariétal : définition d’une approche innovante combinant propriétés géométriques, visuelles et sémantiques au sein d’un environnement de réalité mixte

137

Étant donné que nous ne ce calcul ne vise que le recalage des scènes et non compléter le projet par de nouvelles données, les poses des caméras de l’acquisition maîtresse ainsi que les points 3D du nuage doivent être gelés pour éviter d’introduire des erreurs.

Cette approche est intéressante lorsque les paramètres internes de l’image candidate sont connus. Cependant, selon l’écart de résolution par rapport aux images de l’acquisition maîtresse, les différences de focales, de radiométrie, ou de contexte, cette méthode peut s’avérer délicate, voire échouer en raison d’un manque de correspondances (Pamart, Morlet, et al., 2019). De plus elle est plus coûteuse en temps de calcul.

Quelle que soit la méthode choisie pour la spatialisation de la frame référence, le temps de calcul – qui nécessite plusieurs minutes pour un projet moyen – constitue une limite importante de l’approche que nous proposons, d’une part car l’utilisateur devra attendre la fin du processus de recalage pour accéder à la visualisation en réalité augmentée de son projet, d’autre part parce que le SLAM peut provoquer une dérive progressive qui nous conduit à limiter le temps de calcul pour favoriser le temps d’utilisation effective.