• Aucun résultat trouvé

2.6 Conclusion

3.1.2 Estimation de la pose de la caméra

Le calcul de la pose s’appuie sur l’extraction de primitives géométrique qui vont permettre d’ap-pairer des points 2D extraits de l’image (et donc exprimé dans le repère image) avec les points 3D connus de l’objet (exprimé dans le repère associé à l’espace de travail). Par la suite, lorsque nous évoquerons les conditions d’application d’un algorithme de pose, nous parlerons de points en lieu et place de couples de points 2D-3D.

Il existe plusieurs types d’algorithmes dédiés à l’estimation de la pose d’une caméra. On peut distinguer trois grandes familles :

– les méthodes analytiques reposant sur un faible nombre de points,

– les méthodes numériques d’optimisation par minimisation d’un critère d’erreur, – les méthodes itératives, sous ensemble important de la famille précédente.

Nous ne pourrons évoquer de manière exhaustive l’ensemble des méthodes proposées dans la litté-rature. Toutefois, nous présenterons celle qui nous ont paru le plus représentatives et qui peuvent se calculer en temps réel, ce facteur étant déterminant pour les systèmes de réalité augmentée.

3.1.2.2 Méthodes analytiques

Ce sont des méthodes qui sont utilisées sur un faible nombre de points et qui admettent un en-semble fini de solutions. Leur complexité algorithmique est généralement faible d’où un temps de calcul court lorsque l’algorithme est implémenté. L’estimation de la pose faite par ces méthodes est

3.1. OUTILS THÉORIQUES POUR LA LOCALISATION PAR VISION EN RA 79 théoriquement précis. Toutefois, ce calcul est tributaire de l’extraction des points de l’image que l’on veut appairer avec les points de l’objet en trois dimensions. Suivant la qualité de l’image acquise et des traitements effectués, ces méthodes peuvent en définitive produire des résultats imprécis.

De nombreuses méthodes de calcul analytique ont été proposées ces vingt dernières années. Ainsi, en 1981, Fischler et Bolles ont proposé plusieurs méthodes de résolution et de calcul de la pose [Fischler et Bolles, 1981]. Dans l’annexe de leur article sur la méthode RANSAC (RAndom SAmple Consensus), ils donnent deux solutions analytiques différentes dont une méthode pour trois points comportant la résolution des racines de deux équations quadratiques et une méthode pour quatre points non coplanaires qui comporte une dizaine d’étapes de calcul.

Hung et al ont de leur côté proposé en 1985 une méthode permettant d’estimer la pose d’une cible à l’aide de 4 points coplanaires non alignés [Hung et al., 1985].

Quelques années plus tard, en 1989, Dhome a introduit une méthode permettant de calculer la pose d’un objet en utilisant trois arêtes de ce dernier. Un polynôme de degré 8 est alors résolu et les solu-tions proposées triées en fonction de la validité de la configuration des arêtes [Dhome et al., 1989].

Enfin, en 1992, Dementhon et Davis ont proposé une méthode permettant de calculer la pose d’une caméra à l’aide de trois points seulement [DeMenthon et Davis, 1992].

3.1.2.3 Méthodes d’optimisation par minimisation d’un critère d’erreur

Comme nous l’avons vu, les méthodes analytiques sont tributaires de la qualité de l’image acquise. La solution pour tenter de minimiser l’erreur est donc d’effectuer le calcul sur un ensemble plus large de points. Toutefois, les méthodes analytiques ne se basant que sur un nombre réduit et fini de points, il faut s’appuyer sur des méthodes qui estiment la pose en minimisant un critère d’erreur. Parmi celles-ci, nous retrouverons une formulation dite des ”moindres carrés” dans laquelle les paramètres intrinsèques ne font plus partie des inconnues à estimer à la différence de la méthode de calibration présentée en 3.1.1.2 page 75 [Loukil, 1993].

3.1.2.4 Méthodes itératives de calcul de la pose

Ces méthodes constituent un sous-ensemble important des méthodes précédentes. La pose est estimée une première fois (parfois par un algorithme analytique) puis un algorithme itératif affine au fur et à mesure l’estimation de la pose en se basant sur la minimisation d’un critère donné. Ces méthodes permettent d’obtenir une excellente précision dans la localisation de la caméra par rapport à son environnement. Toutefois, chaque itération effectuée entraîne un sur-coût en temps de calcul pour estimer la pose. Il faut en tenir compte afin d’optimiser le nombre d’itérations à effectuer et les opérations réalisées au cours de chaque itération afin de réduire ce sur-coût.

Fishler et Bolles ont ainsi introduit un algorithme basé sur leur résolution analytique du problème des trois points pour l’étendre à quatre points non coplanaires [Fischler et Bolles, 1981].

En 1995, Dementhon et Davis ont également proposé une méthode itérative (nommée POSIT) pour calculer la pose d’un objet. L’ensemble des points utilisés ne doit pas être coplanaire. De plus, il doit au minimum comporter quatre points [Dementhon et Davis, 1995].

Enfin, nous mentionnerons également l’algorithme de l’itération othogonale développé en 2000 qui fera l’objet d’une étude détaillée.

3.1.2.5 L’itération orthogonale

L’algorithme d’itération orthogonale introduite par Lu et al. permet de calculer la pose d’une caméra dont on connaît les paramètres intrinsèques [Lu et al., 2000]. Il utilise une formulation qui optimise les critères de convergence concernant la matrice de rotation, à l’inverse des algorithmes classiques à vocation générale.

Notations

Considérons un ensemble de points de coordonnées pi dans le repère monde, qidans le repère caméra et ayant vi de coordonnées (ui, vi, 1 ) pour une image dans le plan image normalisé lié au repère caméra. En notant R = rt 1 rt 2 rt 3  et t = tx ty tz 

les paramètres extrinsèques de la caméra, on a alors les relations suivantes : ui = r1pi+ tx r3pi+ tz vi = r2pi+ ty r3pi+ tz et qi = Rpi+ t

Si on parvient à déterminer les qi à partir des points images, on obtiendra R et t en minimisant le critère d’erreur quadratique suivant :

minR,t X

i

kRpi+ t − qik2, avec RtR = I (3.22)

Reformulation du problème

Un tel problème de minimisation sous contrainte peut être résolu en utilisant les quaternions ou la

Décomposition en Valeurs Singulières (SVD). La méthode SVD procède ainsi : On considère ¯p =

1 n P ipi et ¯q = 1 n P

iqi les barycentres respectifs de piet qipuis on définit p i = pi− ¯p, q i = qi− ¯q et M =X i q ip′t i 1

nM représente la matrice de covariance entre pi et qi. On montre alors que la solution du problème (3.22) est donnée par

R = arg maxR(RtM ) (3.23) t = ¯q − R ¯ p (3.24)

Soit (U, σ, V ) une SVD de M, c’est à dire UtM V = σ La solution de (3.23) est alors R

= V Ut

L’algorithme porte le nom d’itération orthogonal car il s’appuie sur l’identité entre la projection orthogonale de qi = Rpi+ t sur le rayon optique passant par vi et C le centre optique de la caméra d’une part et qid’autre part,puisque viest l’image de qi(voir figure 3.2 page suivante). La matrice de projection sur ce rayon optique étant

Vi = viv t i vt ivi Nous obtenons Rpi+ t = Vi(Rpi+ t)

3.1. OUTILS THÉORIQUES POUR LA LOCALISATION PAR VISION EN RA 81 Erreur dans l’espace objet Z’ Y’ X’ Y Z X

Erreur dans l’espace image

FIG. 3.2 – Projection sur le rayon optique passant par vi et C

l’erreur sur la matrice de projection se traduit donc par une erreur ei = (I −Vi)(Rpi+t) dans l’espace objet. Nous allons estimer R et t qui minimisent la somme des carrés de ces erreurs :

E =X

i

keik2 =X

i

k(I − Vi)(Rpi+ t)k2 (3.25)

Les informations données par les vi sont entièrement contenues dans les Vi. Pour R donné, nous pourrons écrire la relation :

t(R) = 1 n(I − 1 n X i Vi)−1X i (Vi− I)Rpi (3.26)

On peut montrer que (I −1 n

P

iVi) est définie positive, et donc (3.26) a bien un sens. On définit alors qi(R) = Vi(Rpi+ t(R)) et ¯q(R) = 1

n X

i

qi(R) L’équation (3.25) peut alors être réécrite sous la forme

E(R) =X

i

kRpi+ t(R) − qi(R)k2

Résolution itérative

On remarque alors que cette équation ressemble fortement à (3.22) mais on ne peut pas résoudre directement R en utilisant M (R) =X i q i(R)p′t i où p i = pi− ¯p et q i(R) = qi(R) − ¯q(R)

car M dépend ici de R. En revanche on peut alors calculer R itérativement de la façon suivante : Si on connaît R(k), on peut alors calculer t(k) = t(R(k)) et qi(k) = R(k)pi+ t(k)et

R(k+1) = arg minRX i

kRpi+ t − Viqi(k)k (3.27)

Les Viq(k)i sont alors traité comme les qi dans (3.27). On obtient ainsi R(k+1) grâce à la SVD de M (R(k)), puis on posera t(k+1) = t(R(k+1))

Une solution R

au problème de l’estimation de la pose en utilisant l’algorithme d’itération orthogonal est donc un point fixe de la suite définie par (3.28) et vérifie

R = arg minR X i kRpi+ t − Vi(R pi+ t(R ))k Initialisation de l’algorithme

Il est important de noter que s’il a été prouvé que l’algorithme d’itération orthogonal convergeait, rien n’assure que la pose vers laquelle il converge soit celle correspondante à la pose réelle. C’est pourquoi il est très important d’initialiser l’algorithme avec une matrice R(0)proche de la bonne solution.

L’initialisation est généralement faite en appliquant un modèle de perspective faible (en anglais weak perspective). Ce dernier approxime un objet comme étant plan et parallèle au plan image. La rotation pour initialiser l’algorithme est alors calculée.

Comme nous le verrons ultérieurement, le choix d’une bonne matrice de rotation à l’initialisation conditionne les performances de l’itération orthogonale.

3.1.2.6 Comparatif des algorithmes de calcul de pose

Comme nous pouvons le constater, les algorithmes de calcul de la pose sont nombreux et leurs conditions d’application varient. Afin de comparer rapidement leurs caractéristiques, nous avons dressé le tableau 3.1. La grande famille à laquelle appartient chacune des méthodes est indiquée ainsi que les conditions nécessaires pour pouvoir les employer.

Nom Année Type Conditions d’application

Fischler&Bolles a 1981 Analytique 3 points

Fischler&Bolles b 1981 Itérative 4 points

Fischler&Bolles c 1981 Analytique 4 points non coplanaires

Hung&al 1985 Analytique 4 points coplanaires

Dhome&al 1989 Analytique 3 arêtes

Dementhon&Davis 1992 Analytique 3 points

Moindres carrés Minimisation de critères d’erreur 6 points au minimum

POSIT 1995 Itérative min 4 points non coplanaires

Itération orthogonale 2000 Itérative min 3 points

TAB. 3.1 – Tableau récapitulatif des méthodes d’estimation de pose présentées

Dans cette section, nous venons d’introduire les différents algorithmes nécessaires pour élaborer un système de localisation par la vision. Ceux-ci vont de la modélisation du capteur en passant par l’estimation des paramètres du modèle jusqu’à l’exploitation de ces derniers pour retrouver la position et l’orientation du capteur, donc du système par rapport à un repère lié à un espace de travail donné.

Nous allons, dans la section suivante, présenter quelques systèmes de localisation par la vision mettant en oeuvre ces outils théoriques.