• Aucun résultat trouvé

3.2 Marqueurs artificiels

3.3.2 Distinctions globale et locale

Dans une image, certains descripteurs sont plus distincts que d’autres : la région image décrite correspond à une section de la scène qui se répète peu. Une carac- téristique ayant un descripteur distinct globalement dans la scène est facilement ré- identifiable lorsqu’elle est présente dans une nouvelle image. Une caractéristique visible

12. Scale Invariant Feature Transform 13. Speeded Up Robust Features

dans plusieurs images contribue grandement à réduire l’accumulation d’erreur pendant le déplacement de la caméra.

En pratique, les descripteurs ne sont pas tous distincts. Pour identifier les descrip- teurs distincts globalement, nous comparons la distance entre le correspondant le plus proche et le deuxième plus proche. Cette méthode, présentée à la section 1.1, permet de réduire l’ambiguïté des correspondances et de sélectionner celles dont le risque d’er- reur est faible : le descripteur est distinct. Un descripteur distinct globalement est donc ré-observable directement dans deux ou plusieurs images acquises sous différents points de vue.

Généralement, les correspondances sont validées par une approche robuste cherchant la relation géométrique entre les images. Dans ce cas-ci, la géométrie épipolaire est privi- légiée. Celle-ci permet alors d’obtenir les correspondants réels au sens où ils respectent la relation géométrique donnée par la matrice fondamentale entre les images [16]. Une fois qu’elle est connue, la relation entre les images permet de réduire l’espace de recherche de correspondants à un segment de droite dans la seconde image : la droite épipolaire. Nous pouvons alors reprendre la procédure de recherche en restreignant le bassin de can- didats à ceux suffisamment près de la droite épipolaire associée à une caractéristique. En procédant ainsi, de nouveaux correspondants distincts localement sont identifiés. Il est aussi possible de considérer l’ajout de nouveaux types de caractéristiques comme les jonctions (section2.1.1) ainsi que les marqueurs artificiels circulaires (section3.2). Dans [79], le détecteur rapide de Harris est combiné au descripteur SIFT afin de réduire le temps d’extraction des caractéristiques. L’idée est intéressante puisqu’elle permettrait d’identifier des jonctions distinctes globalement. Toutefois, la sélection d’une échelle répétable près d’une jonction est problématique. De plus, le voisinage immédiat qui permet d’observer une jonction comporte peu de détails et est donc relativement peu distinct. Une jonction demeure difficile à reconnaître sans la connaissance de la transfor- mation entre les images. Ainsi, avec une étape de recherche supplémentaire exploitant la matrice fondamentale, il est possible d’identifier la correspondance de jonctions entre les images. L’ajout de ces correspondances distinctes localement dans le calcul de la matrice fondamentale augmente considérablement les contraintes sur la solution et par le fait même, sa qualité. Le calcul de pose bénéficie directement de cette amélioration puisqu’il repose sur la matrice fondamentale.

Comme la matrice fondamentale est estimée à partir des correspondances, le procédé de mise en correspondance et d’estimation robuste de la matrice fondamentale est répété en remettant en question les correspondants trouvés à chaque itération. La matrice fondamentale est ainsi raffinée et devient très précise. Des résultats en ce sens seront fournis à la section 4.2 où nous présentons l’algorithme de positionnement du 3DLS.

(a) (b)

Figure 3.12 – Montage virtuel permettant d’évaluer les caractéristiques et leur des- cripteur. a) Les 40 positions de la caméra virtuelle. b) Image de référence acquise à 0 degré.

3.3.3

Stabilité des descripteurs par rapport aux changements

de point de vue

Malgré une approche itérative, la recherche de correspondants est limitée par la stabilité du descripteur par rapport aux changements de point de vue. Un descripteur se dégrade lorsque la projection de la scène change et se déforme dans l’image. De plus, le nombre de correspondances locales et globales diminue pour un changement de point de vue prononcé. Pour évaluer ceci, nous avons réalisé une simulation où une caméra virtuelle se déplace radialement par rapport au centre d’une scène plane. La texture du plan de la scène est en fait une image réelle acquise par le capteur 3DLS. Les variations de point de vue sont données par l’angle entre l’axe principal de la caméra et le vecteur normal au plan de la scène. L’angle varie de 5 à 45 degrés pendant la simulation. Les 40 positions de la caméra virtuelle sont illustrées sur la Fig.3.12(a).

Les correspondances entre l’image de référence à 0 degré, visible sur la Fig.3.12(b), et une image captée d’un point de vue différent sont obtenues en appliquant la méthode de reconnaissance décrite précédemment. Plus précisément, les correspondances globales sont d’abord identifiées directement à partir des descripteurs associés aux caractéris- tiques. Le seuil sur le ratio des distances entre le plus proche et second plus proche voisin est fixé à 0.8. Les correspondances sont ensuite validées en renforçant la contrainte don- née par la matrice fondamentale. Pour être considérée comme une candidate parmi les correspondances globales, une caractéristiques globale doit être suffisamment proche de la droite épipolaire (distance inférieure à un pixel). La matrice fondamentale utilisée est obtenue à partir de la transformation relative exacte entre les poses de la caméra

5 15 25 35 45 0 100 200 300 400 500 600 700 800 900

Angle point de vue (degrés)

Nombre de correspondances SURF Local SIFT Local SURF Global SIFT Global (a) 5 15 25 35 45 0.7 0.75 0.8 0.85 0.9 0.95 1

Angle point de vue (degrés)

Fraction de correspondances correctes

SURF Local SIFT Local SURF Global SIFT Global

(b)

Figure3.13 – a) Nombre de caractéristiques locales et globales correctement appariées par rapport à l’angle entre l’axe principal de la caméra et le vecteur normal au plan de la scène. b) Fraction de correspondances correctes pour les opérateurs SIFT et SURF par rapport à une variation de point de vue.

virtuelle. Les caractéristiques globales sont ensuite retirées de la liste de caractéristiques avant d’identifier les correspondances locales. Ces dernières sont identifiées en exploitant la matrice fondamentale et le descripteur associé à la caractéristique. Pour être considé- rée comme une candidate parmi les correspondances locale, une caractéristiques locale doit être suffisamment proche de la droite épipolaire (distance inférieure à un pixel) et les descripteurs doivent être similaires. Pour nous assurer que les descripteurs soient similaires, nous appliquons un seuil absolu sur la distance entre les descripteurs. Le seuil est fixé comme étant la distance maximale entre les descripteurs des correspondances globales.

Avant d’analyser les correspondances, elles sont d’abord validées selon l’homogra- phie entre les images. Ceci est possible puisque la scène est plane14

. Une caractéristique, globale ou locale transférée dans l’image de référence, qui est trop éloignée de sa cor- respondante est retirée de la liste de correspondants. Nous pouvons ainsi évaluer les correspondances réelles et non celles respectant seulement la contrainte donnée par la matrice fondamentale. Comme cette étape de validation indique la qualité des cor- respondances d’un opérateur, nous avons tracé les pourcentages des correspondances valides (locales et globales) par rapport à l’angle du point de vue sur la Fig.3.13(b). Les courbes de la Fig.3.13(a) indiquent le nombre réel de correspondances globales et locales par rapport à l’angle du point de vue pour les opérateurs SIFT et SURF.

Les courbes indiquent que l’opérateur SIFT est en mesure d’identifier le plus grand nombre de correspondances globales correctes. Toutefois, c’est aussi cet opérateur qui identifie le plus grand nombre de correspondances globales incorrectes : en moyenne

14. La section4.2proposera une méthode pour valider les correspondances pour une scène 3D géné- rale.

5 15 25 35 45 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5

Angle point de vue (degrés)

Distance descripteur

SURF Local SIFT Local SURF Global SIFT Global

Figure3.14 – Dégradation du descripteur SIFT et SURF par rapport à une variation de point de vue. Les courbes donnent la distance entre les descripteurs de caractéris- tiques correctement appariées par rapport à l’angle entre l’axe principal de la caméra et le vecteur normal du plan de la scène plane.

nous avons dû éliminer 25% des correspondances identifiées. L’opérateur SURF identifie moins de correspondances, mais ces dernières sont plus fiables, comme l’indique la Fig.3.13(b). Il est intéressant de noter que le nombre de correspondances locales reste stable lorsque le point de vue change. Il peut même augmenter pour des angles forts : les candidats pour la correspondance locale sont plus nombreux, car ils n’ont pas été sélectionnés comme correspondants globaux.

Comme le changement de point de vue déforme l’image et dégrade les descrip- teurs, nous avons voulu quantifier la dégradation de la qualité des correspondances. Les courbes de la Fig.3.14indiquent la dégradation des descripteurs local et global pour les opérateurs SIFT et SURF par rapport à l’angle du point de vue. La dégradation est donnée par la distance euclidienne entre deux descripteurs. On remarque que lorsque l’angle atteint 45 degrés, la distance entre les descripteurs globaux augmente d’un ratio de deux fois et demi par rapport à sa valeur à 5 degrés. Le SIFT conserve une erreur plus faible, mais se dégrade au même rythme que le SURF.

La dégradation est beaucoup moins prononcée dans le cas des descripteurs locaux. Un descripteur distinct globalement décrit une région riche en détail et une déformation de l’image affectera plus fortement le gradient dont il dépend. Un descripteur distinct localement, décrivant une région moins riche, est donc moins affecté. La comparaison des courbes "SURF Local" et "SURF Global" de la Fig.3.14 supporte ces affirmations. Bien que le choix soit difficile à faire, nous sélectionnons l’opérateur SURF comme détecteur de régions. La qualité des caractéristiques compense pour leur plus petit nombre. De plus, l’opérateur SURF est axé sur la rapidité et permet de traiter de grandes images en un temps raisonnable. Cet aspect sera important pour le position-

nement du 3DLS dont les caméras fournissent des images de 5 mégapixels.

3.4

Conclusion

La ré-observabilité des caractéristiques naturelles demeure toujours un problème ouvert. Malgré que ce domaine soit étudié depuis plus de 30 ans [80], de nouveaux détecteurs sont encore proposés aujourd’hui, comme l’opérateur polyvalent de Forstner [26] qui est en mesure d’identifier des jonctions, cercles et spirales. Dans ce chapitre, nous avons montré que le détecteur de jonction ASN permet, en s’adaptant au contenu de l’image, de fournir des caractéristiques fiables. Bien que n’étant que distinctes loca- lement, les jonctions permettent de couvrir des régions de l’image où un détecteur de région SIFT-SURF est moins stable. On se rappellera de l’expérience de l’introduction de la thèse où une caractéristique SIFT glisse selon le point de vue car elle est instable en échelle sur la jonction. Cette complémentarité est avantageuse dans une applica- tion de positionnement où le contenu de la scène n’est pas contrôlé. Afin d’augmenter le nombre de caractéristiques ré-observables, il est possible d’ajouter des marqueurs artificiels à la scène. Ainsi, nous avons proposé un nouveau détecteur de cercles et d’ellipses basé sur l’opérateur ellipse duale. Finalement, l’analyse de la reconnaissance des descripteurs de régions a permis d’établir comment ils se comportent par rapport aux changements de points de vue. Dans le prochain chapitre, nous verrons comment combiner les caractéristiques globales SIFT-SURF, les caractéristiques locales SIFT- SURF, les jonctions ainsi que les marqueurs circulaires dans une même application de positionnement multi-caméra.

Applications

Dans le chapitre 2, nous avons développé des méthodes de localisation et comparé trois types de marqueurs de calibrage. La comparaison a désigné le marqueur circulaire comme celui offrant la plus grande précision face aux perturbations que peut subir l’image. Nous avons ensuite développé un algorithme de reconnaissance permettant d’établir la correspondance entre les marqueurs détectés dans l’image et ceux du modèle de la cible. Dans ce chapitre, nous allons voir comment exploiter le cercle pour calibrer une caméra, un capteur multi-caméra et finalement un capteur à lumière structurée. Le calibrage est validé selon une méthode rigoureuse qui a permis d’identifier un problème insoupçonné de la caméra. Ensuite, une application de positionnement de capteur stéréo est présentée. Ces applications sont présentement utilisées au LVSN1

pour l’exploitation du capteur 3DLS.

4.1

Calibrage

Le calibrage consiste à retrouver les paramètres du modèle mathématique de la caméra à partir de correspondances entre l’image et la cible. La première application présentée est le calibrage d’une seule caméra à partir de plusieurs vues d’une cible plane. Bien que simple, elle permettra d’établir les bases pour des méthodes de cali- brage plus complexes telles que le calibrage d’un capteur multi-caméra et d’un capteur SLS (Structured Light System). Le capteur SLS est un capteur multi-caméra où une caméra est remplacée par un projecteur. Ce dernier cas est particulièrement intéressant, car le projecteur agit comme une caméra inverse où la lumière voyage du projecteur vers la scène. Les correspondances image cible du projecteur devront être déterminées indirectement par les images de la caméra.

(a) Y X Z U V P X Y Z R,t Plan image Point principal Axe optique C W (b)

Figure4.1 – a) Représentation physique d’une caméra montrant de gauche à droite, l’image, le capteur incluant le module électronique, et finalement la lentille. b) Modèle de projection. L’axe optique de la caméra croise le plan image au point principal (P). La pose de la caméra, composée d’une rotation et d’une translation (R,t), transforme un point 3D du repère cible (W) au repère caméra (C).

4.1.1

Calibrage mono-caméra

L’objectif du calibrage mono-caméra est d’obtenir les paramètres du modèle de la caméra incluant sa pose dans la scène connue et sa structure interne. Ce modèle décrit la relation géométrique entre les pixels de l’image et leurs coordonnées 3D de la scène. Il est divisé en deux parties, l’orientation intérieure et l’orientation extérieure de la caméra [81]. L’orientation intérieure est propre à la caméra et ne dépend pas de sa pose dans la scène. Elle donne la relation entre les pixels de l’image p = [u v 1]T et leurs coordonnées

physiques, en millimètres par exemple, sur le capteur de la caméra x = [x y 1]T. Une

fois la caméra calibrée, un point de l’image devient un rayon projecteur dans la scène et la caméra peut alors mesurer précisément des angles. À partir de plusieurs images d’une scène inconnue, on pourra retrouver la structure 3D à un facteur d’échelle près. Le facteur d’échelle est inconnu, car on ne peut pas distinguer un petit objet observé de près d’un objet de plus grande taille observé de loin. Il peut être déterminé si la distance entre deux points de la scène est connue, ou encore si le déplacement de la caméra est connu.

On définit l’orientation intérieure par les paramètres intrinsèques ; ils sont générale- ment regroupés dans une matrice K3x3 :

K =    fu 0 u0 0 fv v0 0 0 1    , p = Kx, (4.1)

où fu et fv sont les facteurs d’échelles pour l’axe horizontal et vertical de l’image et

proposent d’inclure un terme supplémentaire pour traiter le cas de pixels non rectan- gulaires, le "pixel skew" [18, 33]. Ce terme prend en compte que l’angle entre les axes x et y de la matrice de pixel du capteur n’est pas toujours de 90 degrés. Toutefois, comme les pixels des caméras modernes sont rectangulaires, la contribution de ce terme nous apparaît négligeable et son inclusion ne bénéficie plus à la précision du modèle. Dans toutes nos expériences, et comme plusieurs auteurs l’ont déjà remarqué [54, 20], ce terme a été négligeable et non-significatif : il n’est donc pas considéré ici. Pendant le calibrage, on estime aussi la pose de la caméra qui correspond à son orientation externe dans la scène. La pose est une transformation rigide définie par une rotation et une translation. Elle transforme les points du repère global cible au repère local de la caméra (voir Fig.4.1). La combinaison des paramètres intrinsèques et extrinsèques permet de prédire les coordonnées d’un point image à partir d’un point dans le repère cible selon le modèle de projection linéaire suivant :

λ    u v 1    = K h R | t i      X Y Z 1     = PX. (4.2)

Dans cette équation la matrice de rotation R3×3appartient au groupe spécial orthogonal

SO(3)2

. Il est important de noter que la forme matricielle d’une rotation n’est pas une représentation minimale, car les neuf paramètres qui composent la matrice sont dépendants. Une représentation minimale d’une rotation comporte trois paramètres. Plusieurs formes sont possible, dont les angles d’Euler [16] ou encore la forme axe-angle dont s’inspire le vecteur de Rodrigues [82]. Les trois termes de la représentation de Rodrigues, σ = (σx, σy, σz) permettent de former une matrice de rotation 3x3 selon

l’équation suivante : R(σ) = I + 8[σ] 2 x− 4(1 − kσk 2 )[σ]x (1 + kσk2)2 . (4.3)

La formulation []x indique que le vecteur est la matrice "skew-symmetric" qui permet

d’exprimer le produit vectoriel comme un produit matriciel [16]. Cette version modifiée de la représentation de Rodrigues relaxe l’hypothèse de petits angles de rotation[82,

83]. Elle comporte une singularité à ±2π contrairement à la version originale qui est

singulière à ±π. Cette modification est bénéfique, car elle doit permettre de représenter de grandes rotations qui sont nécessaires au calibrage afin d’éviter que les paramètres intrinsèques ne soient couplés aux paramètres extrinsèques [34].

En théorie, un ensemble de six correspondances entre l’image et la cible qui sont uniformément réparties dans le volume de la scène permet de résoudre la matrice P3x4

de l’Eq.4.2. Chaque correspondance apporte deux contraintes sur le modèle qui a 11 degrés de liberté (les 12 paramètres sont définis à un facteur d’échelle près). On peut

2. SO(3)= {R ∈ ℜ. 3×3

ensuite extraire les paramètres intrinsèques θ = {fu, fv, u0, v0} et la pose Θ = {σ, t}

de P3x4 [54]. En pratique, on utilise plus de six correspondances pour augmenter la

redondance et ainsi réduire l’effet du bruit présent dans les coordonnées des points image. De plus, on augmente simultanément le volume de validité des paramètres ; les paramètres retrouvés sont valides dans le volume couvert par les marqueurs de la cible. Toutefois, travailler avec une cible 3D présente quelques inconvénients : elle est diffi- cile à manufacturer, coûteuse, et peut facilement se dégrader pendant les manipulations. Pour ces raisons, on utilise plutôt une cible plane. Comme la cible est inscrite dans un plan, la transformation qui décrit géométriquement la formation de l’image est réduite à une homographie. En supposant que ce plan est Z = 0, l’homographie H est donnée par l’équation suivante [18] :

K [r1 r2 r3 t]      X Y 0 1     = K [r1 r2 t]    X Y 1    = H    X Y 1    (4.4)

où la ième colonne de la matrice de rotation R est notée ri. Une homographie comporte

huit degrés de liberté (neuf paramètres connus à un facteur d’échelle près). Un ensemble de correspondances obtenu d’une image de la cible apportera donc huit contraintes indé- pendantes sur le modèle de la caméra : six contraintes sur la pose et deux contraintes sur les paramètres intrinsèques. Chaque nouvelle image apportera deux contraintes supplé- mentaires sur les paramètres intrinsèques. Un minimum de deux images obtenues sous différentes orientations permet donc d’estimer les paramètres du modèle. Il sera impor- tant de couvrir l’étendue du volume de travail visé avec la cible pendant le calibrage.

Pour une caméra réelle, le modèle de projection linéaire qui vient d’être présenté n’est pas suffisant pour prédire précisément un point image. Des imperfections dans les lentilles de la caméra et dans leur arrangement introduisent des distorsions non-linéaires dans la formation de l’image. Ainsi, l’image d’une droite n’est plus une droite, mais une courbe. De façon générale, pour compenser la distorsion, le modèle de projection linéaire est augmenté de m termes de distorsion radiale (ki) et n termes de distorsion

tangentielle (pi). Les coordonnées du point image pd sont corrigées selon la relation

p = pd− δ(pd, d) où δ(pd, d) = xd(k1r2d+ k2rd4+ k3r6d+ . . .) + [2p1xdyd+ p2(rd2+ 2x2d)][1 + p3r2+ . . .] yd(k1r2d+ k2r 4 d+ k3r 6 d+ . . .) | {z } radial + [2p2xdyd+ p1(r2d+ 2y 2 d)][1 + p3r 2+ . . .] | {z } tangentiel , (4.5) et [xd, yd, 1]T = K−1[ud, vd, 1]T et rd2 = x2d+ yd2. Cette expression de la distorsion est une

approximation de la distorsion réelle des lentilles, le nombre de termes détermine la pré- cision de l’approximation. Des publications notables de calibrage ont proposé différentes combinaisons, Brown (m=3,n=3) [37], Zhang (m=2,n=2) [18], Heikkila (m=2,n=2) [20],

Tsai (m=1,n=0) [84]. Dans [19], Weng propose d’inclure un troisième type de distorsion, le "thin prism distortion" en plus de la distorsion radiale et tangentielle (m=1,n=2). Le modèle "thin prism" corrige une inclinaison des lentilles résultant d’un mauvais assemblage. Toutefois, l’inclusion de cette distorsion au modèle n’améliore pas signifi- cativement la précision [85] et n’est pas incluse dans le modèle utilisé dans cette thèse.