• Aucun résultat trouvé

Modèle sténopé

Dans le document SLAM temporel à contraintes multiples (Page 30-33)

Notions de base

1.2.1 Modèle sténopé

R t 03×1 1  (1.3)

1.2 Modèles de caméra

Il existe différents types de caméras. En vision par ordinateur, la plupart dispose au moins d’un système optique (objectif) et d’un capteur photographique (CCD, CMOS). La lumière traverse les lentilles et passe dans l’iris. L’image se forme sur le capteur où elle est enregistrée. Les objectifs montés devant le capteur permettent une focalisation de la lumière. Toutefois, cela peut engendrer une distorsion de l’image comme le montre la figure1.1. Ainsi, les droites deviennent courbes et semblent incurvées vers l’intérieur, on parle de distorsion en coussinet. Si elles sont incurvées vers l’extérieur on parle de distorsion en barillet. Dans le cadre de reconstruction 3D, la distorsion géométrique doit être modélisée ou corrigée.

Les modèles intrinsèques de caméra approximent le processus physique de formation de l’image à partir de l’observation de l’environnement. Ils associent un objet de la scène à un pixel de l’image en modélisant l’étape de projection. Nous présentons ici deux modèles couramment utilisés et permettant de prendre en compte la distorsion : le modèle sténopé avec correction de la distorsion et le modèle unifié. Pour plus d’informations sur les modèles de caméra, le lecteur intéressé peut se rapporter à la description proposée par Sturm et al. dans [18].

1.2.1 Modèle sténopé

L’une des modélisations les plus communes est le modèle sténopé ou pinhole qui est un modèle central. Il possède un centre optique unique. Le point image est défini par l’intersection de la droite

Figure 1.2 – Illustration du fonctionnement du modèle de projection sténopé.

reliant un point 3D et le centre optique avec un plan situé à une distance focale f . Cette modélisation porte le nom de pinhole car elle se comporte exactement comme la lumière qui traverserait une feuille trouée par une épingle. La lumière entre par le trou et forme l’image sur un écran disposé derrière selon une trajectoire rectiligne.

Par convention, les axes du repère de la caméra sont choisis tels que X soit orienté vers la droite, Y vers le bas et Z vers l’avant, dans la même direction que l’axe optique. L’image se focalise à une distance Z = −f. Par simplicité, on utilise une symétrie centrale pour placer le plan image tel que Z = f . On définit le repère pixellique (u, v) dont l’origine est située dans le coin supérieur gauche de l’image, u vers la droite et v vers le bas. On appelle plan normalisé le plan tel que Z = 1. Les points 2D appartenant à ce plan sont exprimés dans le repère (x, y) cf. figure1.2.

Projection

La projection d’un point 3D Pw (exprimé dans le repère monde) dans le plan image en un point p s’effectue en trois étapes successives, illustrées par la figure 1.2(sur laquelle les points Pw et Pc sont représentés par le point P ) :

1. Le point ¯Pw= (Xw, Yw, Zw, 1) en coordonnées homogènes est placé dans le repère de la caméra afin d’obtenir ¯Pc grâce à un changement de base expliqué dans la section 1.1.

2. Le point ¯Pc est exprimé dans le plan normalisé de la caméra, ce qui s’écrit en coordonnées homogènes : ¯ m =  I3 03×1  ¯ Pc (1.4)

3. Pour passer du repère caméra au repère image (coordonnées en pixels), on utilise la transfor-mation affine suivante :

¯ p = K ¯m (1.5) avec : K = fx 0 u0 0 fy v0 0 0 1 (1.6)

tordues md. Ce modèle sera appelé modèle direct. Il est utilisé dans la bibliothèque OpenCV1. 2. Le polynôme permettant de passer des coordonnées distordues aux coordonnées non distordues.

Ce modèle qualifié standard dans la littérature est appelé modèle indirect.

On modélise la déformation de l’objectif en utilisant un modèle de distorsion radiale exploitant un polynôme I de degré 10 afin de représenter avec précision la fonction. La déformation étant symétrique, seuls les coefficients pairs ont une valeur non-nulle que l’on note (a1, a2, a3, a4, a5).

Modèle direct

En utilisant le modèle direct, la projection d’un point 3D P en un point distordu pd dans le plan image est obtenue de manière "directe" en trois étapes (illustrées par la figure 1.3) :

1. Projection perspective du point 3D P en mu (cf. équation1.4),

2. Application de la distorsion sur mu par transformation polynomiale pour obtenir md :

md= (1 + D(ru))mu (1.7) avec le polynôme D(ru) = 5 k=1 akr2ku (1.8)

et la distance radiale entre le centre optique (u0, v0) et le point mu= (mux, muy) dans le plan normalisé

ru=

(mux− u0)2+ (muy− v0)2 (1.9) 3. Application des paramètres intrinsèques K sur md par transformation affine pour obtenir pd

(cf. équations 1.5et1.6).

Modèle indirect

Le polynôme I permet de connaître la modification de la distance entre le point principal et la projection d’un point sur le plan image afin de le distordre. La figure1.3illustre l’application de cette correction à un point image noté md. Concrètement, pour obtenir un point sans distorsion mu à partir du point distordu md, on suit les étapes suivantes :

1. On calcule rd =

x2d+ yd2 la distance radiale entre l’axe optique et le point md dans le plan normalisé.

2. On estime le polynôme radial pour la valeur correspondante :

I(rd) = 5

k=1

akr2kd (1.10)

Figure 1.3 – Illustration du modèle de projection sténopé avec distorsion radiale.

3. On incrémente mdafin d’obtenir mu grâce à la relation :

mu = (1 + I(rd))md (1.11)

Discussion

La distorsion polynomiale radiale possède l’avantage d’être un modèle fiable et permettant de corriger les amers visuels juste après leur détection. La normalisation par la focale permet de le rendre invariant lorsque les images sont redimensionnées ou rognées.

Cependant, il souffre de défauts majeurs : premièrement, le nombre de paramètres est important au regard du phénomène de distorsion lui-même. En effet, on constate qu’en faisant varier les valeurs des paramètres, il est aisé de construire des distorsions physiquement exubérantes. De plus, le processus inverse consistant à retrouver le rayon sur lequel le point 3D devrait se trouver à partir d’un point de l’image n’admet pas de solution analytique car un polynôme de degré supérieur à 5 ne possède pas de racine analytique. Cette procédure nécessite donc l’utilisation d’un algorithme itératif de minimisation et de recherche dichotomique.

Enfin, lorsque le modèle indirect est utilisé pour distordre des primitives détectées sur une image, il entraîne un biais. De nombreux algorithmes de vision par ordinateur supposent que les amers visuels détectés ont un bruit gaussien et centré afin d’exprimer les problématiques en terme de vraisemblance probabiliste. Cependant, lors de la correction de la distorsion, les densités de probabilité sont déformées et ne correspondent plus au bruit de mesure original. Ceci limite son usage aux cas de faible distorsion.

Dans le document SLAM temporel à contraintes multiples (Page 30-33)