• Aucun résultat trouvé

3.2 Marqueurs artificiels

4.1.2 Calibrage d’un capteur multi-caméra

Un capteur composé de plusieurs caméras offre un avantage majeur sur une seule caméra : il peut mesurer à l’échelle métrique la structure d’une scène inconnue. Ce type de capteur est caractérisé par un montage rigide sur lequel les caméras sont fixées, ce qui rend leurs déplacements solidaires. La connaissance de la distance entre les caméras permet de retrouver l’échelle de la structure de la scène.

L’objectif du calibrage multi-caméra est de retrouver la pose relative des camé- ras. La pose relative d’une caméra est constante, peu importe l’orientation du capteur dans la scène. Les paramètres intrinsèques des caméras sont obtenus en appliquant les techniques de calibrage mono-caméra développées à la section précédente. Pendant le calibrage multi-caméra, on estime la pose du montage par rapport à la scène et simulta- nément, la pose relative des caméras par rapport au montage. Généralement, la pose du montage coïncide avec celle d’une des caméras. La Fig. 4.6 illustre ce modèle. Lorsque requise, la position absolue d’une caméra dans la scène sera obtenue en chaînant les transformations. Par exemple, la pose absolue de la caméra 2 sera M2 = M

12Mw1. De

façon à distinguer les paramètres entre les caméras, nous ajoutons un exposant à la notation pour indiquer à quelle caméra est associé un paramètre.

Une tendance relativement récente des méthodes de calibrage multi-caméra est d’es- timer les positions des marqueurs sur la cible parallèlement aux paramètres des caméras [87,88]. Ces méthodes, s’apparantant à l’auto-calibrage, permettent d’utiliser une cible dont les coordonnées des marqueurs sont connues avec une moins grande précision. Elles seront ré-estimées pendant le calibrage. De plus, il est fréquemment proposé d’optimiser les paramètres intrinsèques obtenus par le calibrage mono-caméra dans une optimisa-

tion globale de tous les paramètres (intrinsèques et extrinsèques) pendant le calibrage multi-caméra, incluant les positions des marqueurs. Dans le calibrage présenté ici, nous n’estimons pas les positions des marqueurs de la cible : elles ne comportent pas d’er- reur à l’échelle où on les considère. Aussi, le calibrage des paramètres intrinsèques est découplé du calibrage multi-caméra. En procédant ainsi, nous voulons éviter que l’er- reur dans la position du capteur ne contamine les paramètres intrinsèques des caméras. Nous verrons dans la section résultats 4.1.2 que cette procédure a permis de découvrir un défaut matériel de certaines lentilles qui n’aurait pas été découvert en procédant à une optimisation globale.

Procédure de calibrage

La cible utilisée pour calibrer le capteur multi-caméra est la même cible que pour le calibrage mono-caméra. En fait, les images utilisées pour le calibrage mono-caméra sont réutilisées par le calibrage multi-caméra. Il est donc important de capturer les images de sorte à ce que les marqueurs de référence de la cible soient visibles pour l’ensemble des caméras. Toutefois, les caméras n’ont pas à voir simultanément les mêmes marqueurs. Chaque caméra sera calibrée indépendamment afin d’obtenir les valeurs finales des paramètres intrinsèques et un estimé initial des paramètres extrinsèques. Les paramètres extrinsèques résultant du calibrage mono-caméra, i.e. les poses absolues des caméras par rapport à la cible, sont utilisés pour calculer les poses relatives initiales du modèle multi- caméra. Ces poses seront finalement optimisées. Les sous-sections suivantes décrivent ces étapes plus en détail.

Initialisation

Le calibrage multi-caméra cherche les paramètres ϕmulti = {Θ1

w1, ..., Θ1wn, Θ12, ..., Θ1k}

décrivant les n poses absolues du capteur dans la scène (Θ1

w1, ..., Θ1wn), et les poses re-

latives des k caméras par rapport au capteur (Θ12, · · · , Θ1k). Le référentiel du capteur

coïncide donc avec celui de la première caméra. Les poses relatives sont illustrées sur la Fig. 4.6 ainsi que la première pose du capteur. Le calibrage mono-caméra fournit les paramètres intrinsèques des caméras ainsi que leurs poses absolues. Les poses relatives initiales du modèle multi-caméra sont extraites des poses absolues de la première image de chaque caméra en chaînant les transformations rigides. Elles seront optimisées en conservant les paramètres intrinsèques des caméras fixes.

Optimisation

Les paramètres du modèle multi-caméra sont obtenus en minimisant simultanément l’erreur de projection entre les m correspondances 2D-2D, dans l’ensemble des n images,

pour les k caméras. La fonction objective minimisée est donnée par la somme suivante : J(ϕmulti) =X k X n X m (D−(Ek nm, θ +k) uv− G(Cknm, θ k, Θk n)uv 2. (4.10)

Dans cette équation, les poses absolues Θksont obtenues en chaînant les transformations

décrites par les poses relatives avec la pose courante du capteur. Le système d’équations 4.10 est minimisé en appliquant l’algorithme de minimisation non-linéaire Levenberg- Marquardt [86].

Résultats

Cette section présente une analyse de la méthode de calibrage multi-caméra. Nous évaluons d’abord la répétabilité des paramètres calculés en fonction du nombre d’images utilisées. Ceci permet de fixer le nombre d’images requis pour un calibrage répétable. Ensuite, nous validons le calibrage à partir de contraintes géométriques qui sont dé- terminées par les paramètres calculés. Ces contraintes sont basées sur la géométrie épipolaire. Le capteur utilisé dans les expériences est un capteur stéréo composé de deux caméras PointGrey ayant une résolution de 2448x2048 pixels. Les caméras sont équipées de lentilles Schneider 12mm et sont fixées à un support rigide à une distance d’approximativement 320 mm l’une de l’autre.

Répétabilité

Nous avons établi précédemment que le nombre d’images a un impact sur la répéta- bilité des paramètres retrouvés. Comme le modèle d’un capteur multi-caméra suppose que les poses relatives entre les caméras sont les mêmes selon tous les points de vue, l’estimation bénéficiera d’un plus grand nombre d’images. Pour démontrer ceci, nous avons appliqué la procédure complète de calibrage multi-caméra, incluant le calibrage mono-caméra, sur un nombre variable de paires d’images. Pour ce faire, 100 paires d’images ont été acquises avec le capteur stéréo sous différents points de vue. L’erreur de projection moyenne, maximale et son écart-type pendant le calibrage mono-caméra sur 100 images est de (0.055, 0.316, 0.032) pixel pour la première caméra, et de (0.047, 0.493, 0.031) pixel pour la seconde caméra. Nous avons évalué l’écart-type et l’incerti- tude moyenne sur 250 calibrages, pour un nombre d’images variant de [2 : 52] images. Les quatre graphiques de la Fig.4.7 donnent l’écart-type et l’incertitude moyenne des paramètres de la pose relative de la caméra 2 en fonction du nombre d’images. Les valeurs des courbes ont été multipliées par le facteur indiqué dans la légende afin de rendre la progression visible.

On remarque que l’évolution des courbes sur la Fig.4.7 devient linéaire lorsque le nombre d’images se situe entre 20 et 30. Il est intéressant de noter que les courbes donnant l’écart-type des paramètres de la pose décroissent beaucoup plus rapidement que celles des paramètres intrinsèques données à la Fig.4.4. L’estimation de la pose

0 20 40 60 0 1 2 3 4x 10 −3 Nb. Images Écart−type (rodriguez) σy σx σz (a) 0 20 40 60 0 0.5 1 1.5x 10 −4 Nb. Images Incertitude 99% (rodriguez) σx σy σz (b) 0 20 40 60 0 5 10 15 20 25 Nb. Images Écart−type (mm) t x (10x) t z (1x) t y (10x) (c) 0 20 40 60 0 0.05 0.1 0.15 0.2 Nb. Images Incertitude 99% (mm) t x t y t z (d)

Figure 4.7 – Évolution de l’écart-type et de l’incertitude de la pose relative de la se- conde caméra d’un capteur stéréo en fonction du nombre d’images utilisé pendant le ca- librage. En (a) et (b), l’écart-type et l’incertitude des paramètres de rotation (σx, σy, σz).

Les unités n’ont pas de sens physique (les courbes associées à σx et σy se superposent).

En (c) et (d), l’écart-type et l’incertitude de la translation en mm (tx, ty, tz). Les valeurs

des courbes ont été multipliées par le facteur indiqué dans la légende afin de les rendre visibles (les courbes associées à tx et ty se superposent).

relative bénéficie de l’ensemble des 8 contraintes par image pendant le calibrage multi- caméra, contrairement au calibrage mono-caméra où chaque image apporte seulement 2 contraintes sur les paramètres intrinsèques. La section suivante présente une méthode permettant de valider les paramètres obtenus.

Validation

Nous avons déterminé trois méthodes permettant de valider le calibrage multi- caméra. Premièrement, pour chaque caméra, nous devons valider l’erreur résiduelle de chaque caractéristique par rapport à la distribution de l’ensemble des erreurs ré- siduelles. Cette méthode présentée pour le calibrage mono-caméra permet d’éliminer les caractéristiques ayant une localisation moins précise.

Ensuite, la direction des vecteurs d’erreur de chaque image est analysée. Contrai- rement à l’erreur résiduelle qui est une distance, le vecteur d’erreur est orienté. En l’absence de biais, la moyenne des vecteurs d’erreur doit être nulle. Pendant le calibrage mono-caméra, l’algorithme de minimisation peut compenser un problème se manifestant pour un seul point de vue en modifiant la pose de ce point de vue. Ceci est impossible pour le calibrage multi-caméra, car la pose relative d’une caméra est la même pour tous ses points de vue. Modifier la pose relative pour un point de vue générera une erreur plus grande que celle corrigée. En analysant la moyenne des vecteurs d’erreur pour chaque image, nous pouvons découvrir la présence d’un biais systématique dans l’erreur, et donc d’un problème avec le capteur.

Finalement, l’exactitude des paramètres est évaluée via des contraintes géométriques basées sur la géométrie épipolaire. Ces contraintes géométriques supposent que les ca- méras observent une scène rigide. Elles ne dépendent que de la pose relative entre les caméras et de leurs paramètres intrinsèques respectifs. Nous pouvons donc découpler la pose du capteur dans la scène des poses relatives entre les caméras. La relation épipo- laire entre les images de deux caméras a et b est donnée par la matrice fondamentale F : F = (Kb )−T[tab]xRab(Ka)−1, où [t]x =    0 −tz ty tz 0 −tx −ty tx 0    . (4.11)

La matrice 3x3 K contient les paramètres intrinsèques de chaque caméra (voir Eq.4.1). La multiplication de F par un point pa= [u v 1]T produit la droite épipolaire lb = Fpa

dans l’image de la caméra b. En l’absence de bruit sur les points et de biais dans les paramètres des caméras, le point pb se trouve sur cette droite. Afin d’obtenir la distance

à la droite épipolaire, on normalise les trois coefficients de la droite par la norme des deux premiers coefficients. La distance est alors donnée par le produit pbT lb. La

distance aux droites épipolaires est calculée sur les correspondances entre les marqueurs photogrammétriques extraits de chaque paire d’images de la cible. Ces marqueurs de type jonction-X peuvent être localisés précisément dans l’image, ce sont des observables

(a) (b) (c)

Figure 4.8 – Le capteur multi-caméra 3DLS développé au LVSN. Le capteur est composé de deux caméras montées au centre de la barre transversale mobile.

−1000 0 1000 −1000 −500 0 500 1000 x y (a) −1000 0 1000 −500 0 500 1000 1500 x z (b) −1000 −500 0 500 1000 −500 0 500 1000 1500 y z (c)

Figure4.9 – (Cas 1) Positions du capteur. Les axes sont en mm. a) Vue plan XY. b) Vue plan XZ. c) Vue plan YZ

directs ; contrairement au centre de l’ellipse, les jonctions sont directement réobservable lorsque le point de vue change.

Afin de démontrer comment ces trois méthodes permettent de valider un calibrage multi-caméra, nous présentons les résultats de deux cas de calibrage stéréo. Les deux cas sont tirés du calibrage du capteur 3D Light Studio (3DLS) développé au LVSN. Ce capteur est composé de deux caméras fixées sur une barre transversale mobile. Le montage est montré sur la Fig.4.8. Les caméras sont au centre de la barre, au-dessus du montage. La taille des pixels de chaque caméra est de 3.48µm.

Validation : cas 1

Le premier cas de calibrage est réalisé à partir de 34 images de la cible. Les camé- ras sont d’abord calibrées individuellement pour obtenir les paramètres intrinsèques.

−0.1 0 0.1 0.2 −0.1 0 0.1 x y (a) −0.2 −0.1 0 0.1 −0.1 0 0.1 x y (b)

Figure 4.10 – (Cas 1) Vecteurs moyens de l’erreur résiduelle en pixels pour chaque image des caméras après le calibrage multi-caméra. a) Caméra 1. b) Caméra 2.

Les poses relatives du modèle multi-caméra sont ensuite optimisées. Les 34 poses du capteur par rapport à la cible sont illustrées sur la Fig.4.9. À la fin de la procédure de calibrage mono-caméra, l’erreur de projection moyenne, maximale et son écart-type sont de (0.071, 0.380, 0.046) pixel pour la caméra 1, et de (0.071, 0.375, 0.047) pixel pour la caméra 2. Après avoir optimisé le modèle multi-caméra, l’erreur de projection (moyenne, maximale, écart-type) combinée des caméras est de (0.203, 1.904, 0.191) pixels. On remarque immédiatement une augmentation importante (3x) de l’erreur par rapport au calibrage mono-caméra.

La Fig.4.10montre la position moyenne des vecteurs d’erreur de chaque image pour les deux caméras. Une position éloignée de l’origine (0, 0) indique la présence d’une er- reur systématique. On remarque que les vecteurs moyens forment trois groupes qui ne sont pas centrés à l’origine. Afin de déterminer la cause de cette erreur, l’erreur épipo- laire a été évaluée sur les marqueurs photogrammétriques extraits des paires d’images pour les 34 positions du capteur. La courbe de la Fig.4.11 donne l’erreur épipolaire moyenne, en pixels, de chaque paire d’images. L’erreur est donnée en fonction de l’angle entre l’axe optique de la caméra 1 et le vecteur normal au plan de la cible (l’axe Z).

L’erreur est fortement corrélée à l’inclinaison des caméras. Nous avons tenté d’iden- tifier la cause de ce décalage en isolant les caméras. Pour ce faire, nous avons analysé comment se comportent les caméras sous différentes orientations. Les caméras ont été tour à tour fixées à un support rigide sur lequel est installée une cible comportant des marqueurs circulaires, tel qu’illustré sur la Fig.4.12. Le support est lui-même fixé à un trépied. Le support est initialement horizontal et est ensuite incliné de sorte qu’il soit complètement vertical. Une image est acquise pour chaque orientation. Une atten- tion particulière est portée à ce que l’éclairage ambiant soit le même pour toutes les images. Comme l’ensemble caméra-cible est solidaire, les positions des marqueurs dans l’image de la caméra devraient être constantes pour les deux orientations du support. La Fig.4.13 montre les vecteurs de déplacement des marqueurs pour les deux caméras.

30 40 50 60 70 −0.8 −0.6 −0.4 −0.2 0 0.2 Angle (degrés)

Erreur épipolaire (pixels)

Figure4.11 – (Cas 1) Erreur épipolaire moyenne de chaque paire d’images de calibrage en fonction de l’angle entre l’axe optique de la caméra 1 et le vecteur normal au plan de la cible (l’axe Z). L’erreur est en pixels.

Figure4.12 – Montage utilisé pour identifier un problème matériel lié à une caméra. La caméra et une cible sont fixées sur un support rigide.

Ils sont obtenus à partir du déplacement des ellipses correspondantes entre les deux orientations. Un facteur 100x a été appliqué aux vecteurs illustrés. Les valeurs moyenne et maximale de la norme des vecteurs sont de (0.193, 0.375) pixel avec un écart-type de 0.077 pixel pour la caméra 1, et de (1.430, 1.946) pixels avec un écart-type de 0.258 pixel pour la caméra 2.

Le déplacement systématique des ellipses dépend du mouvement du support et peut être radial ou quelconque. Nous n’avons pas tenté de déterminer comment l’orientation de la caméra affectait le déplacement. Il est intéressant de noter que la norme moyenne des vecteurs de déplacement de la caméra 2 est similaire à l’augmentation de l’erreur résiduelle du calibrage multi-caméra. L’expérience a été répétée après avoir changé la lentille de la caméra 2, ce qui a corrigé le problème. On peut conclure que l’arrange- ment des lentilles élémentaires qui compose la lentille de la caméra bouge et change,

(a) (b)

Figure4.13 – Déplacement de marqueurs induit par une rotation de la caméra. La ca- méra et la cible contenant les marqueurs sont fixées à un même support. Un facteur 100x a été appliqué aux vecteurs pour les rendre visibles. a) Caméra 1. La norme moyenne, maximale et l’écart-type des vecteurs est (0.193, 0.375, 0.077) pixel. b) Caméra 2. La norme moyenne, maximale et l’écart-type des vecteurs est (1.430, 1.946, 0.258) pixels. entre autre, la longueur focale lorsque la caméra est inclinée. Bien que le calibrage mono-caméra ait subi le même problème, l’optimisation a compensé l’erreur associée au déplacement en modifiant la pose de la caméra. Ce problème n’était donc pas détectable sans les contraintes de rigidité d’un capteur multi-caméra.

Le déplacement observé pour la caméra 1 reste tout de même fort. Nous n’avons donc pas réussi à éliminer complètement le problème. Une analyse plus poussée des composantes mobiles de la caméra permettrait d’isoler et possiblement de corriger le problème.

Validation : cas 2

Le deuxième cas de calibrage a été réalisé avec le même montage que le premier cas, mais après avoir remplacé la lentille défectueuse. Un total de 34 paires d’images ont été utilisées pour calibrer le capteur. Les 34 poses du capteur sont illustrées sur la Fig.4.15. À la fin de la procédure de calibrage mono-caméra, les valeurs moyenne, maximale et l’écart-type de l’erreur de projection sont de (0.055, 0.277, 0.032) pixel respectivement pour la caméra 1, et de (0.048, 0.458, 0.031) pixel pour la caméra 2. Les valeurs moyenne, maximale et l’écart-type de l’erreur de projection combinée des deux caméras après le calibrage multi-caméra sont de (0.055, 0.476, 0.033) pixel. On remarque que le calibrage multi-caméra est cohérent avec les calibrages mono-caméra. Les vecteurs d’erreur moyens sur l’ensemble des images sont donnés sur la Fig.4.14pour chaque caméra. L’analyse visuelle des vecteurs d’erreur moyens ne révèle aucun biais.

−0.02 0 0.02 −0.02 −0.01 0 0.01 0.02 x y (a) −0.02 0 0.02 −0.02 −0.01 0 0.01 0.02 x y (b)

Figure 4.14 – (Cas 2) Vecteurs moyens de l’erreur résiduelle, en pixels, pour chaque image des caméras après le calibrage multi-caméra. a) Caméra 1. b) Caméra 2.

−500 0 500 1000 −500 0 500 x y (a) −500 0 500 1000 0 500 1000 1500 x z (b) −500 0 500 0 500 1000 1500 y z (c)

Figure 4.15 – (Cas 2) Les 34 poses du capteur obtenues après le calibrage. Les axes sont en mm. a) Vue plan XY. b) Vue plan XZ. c) Vue plan YZ

L’erreur épipolaire entre les 34 paires d’images est tracée sur la Fig.4.16 en fonction de l’angle entre l’axe optique de la caméra 1 et le vecteur normal au plan de la cible (l’axe Z). Malgré l’absence de tendance ou biais, l’erreur épipolaire est plus grande que l’erreur résiduelle du calibrage. Ceci est dû à la localisation des marqueurs photogrammétriques qui est moins précise que celle des marqueurs circulaires.

Nous avons poussé plus loin la validation du calibrage en évaluant l’exactitude de la reconstruction 3D des marqueurs photogrammétriques de la cible plane sur 33 images qui n’ont pas été utilisées pendant le calibrage. Une reconstruction est réalisée à partir de chaque paire d’images de la cible acquises à une distance moyenne de 1500 mm. Puisque la pose du capteur est inconnue, ainsi que la correspondance avec le modèle de la cible, nous mesurons la distance entre les points 3D reconstruits et un plan ajusté à ces points. Sur la Fig.4.17, la coordonnée Z des points indique l’erreur de reconstruction. La figure montre la combinaison des 34 séries de points reconstruits sous trois orientations différentes.

0 10 20 30 40 −0.1 −0.05 0 0.05 0.1 0.15 Angle (degrés)

Erreur épipolaire (pixels)

Figure4.16 – (Cas 2) Erreur épipolaire moyenne de chaque paire d’images en fonction de l’angle entre l’axe optique de la caméra et le vecteur normal au plan de la cible (l’axe Z). L’erreur est en pixels.

−1000 −500 0 500 1000 −1000 −500 0 500 1000 X (mm) Y (mm) (a) −1000 −500 0 500 1000 −1.5 −1 −0.5 0 0.5 1 1.5 X (mm) Z (mm) (b) −1000 −500 0 500 1000 −1.5 −1 −0.5 0 0.5 1 1.5 Y (mm) Z (mm) (c)

Figure4.17 – (Cas 2) Combinaison de 34 reconstructions d’un plan. Les axes sont en mm. a) Vue XY. b) Vue XZ. c) Vue YZ

truits et le plan sont de (0.133, 1.267, 0.1827) mm. Les valeurs isolées plus fortes de l’erreur sont le résultat d’une détection moins précise des marqueurs photogrammé- triques dans l’image. La valeur moyenne représente la précision que l’on peut s’attendre à retrouver lorsque le capteur est exploité pour mesurer des objets de la scène inclus dans le volume couvert par la cible.

La prochaine section montre comment adapter le calibrage multi-caméra au calibrage d’un capteur à lumière structuré. Ce type de capteur est dit actif, car une des caméras est remplacée par un projecteur. Le projecteur illumine la scène d’un patron qui, lorsqu’il est observé par la caméra, permet la reconstruction de la surface des objets présents dans la scène.

(a) (b)

Figure 4.18 – a) La caméra est calibrée à partir d’une cible plane sur laquelle est imprimé un patron de marqueurs circulaires. b) La projection d’un patron d’ellipses adapté au point de vue de la cible permet de créer un second ensemble de marqueurs circulaires sur la cible qui n’interfère pas avec le patron imprimé.