Académique Documents
Professionnel Documents
Culture Documents
La vision tridimensionnelle
Tr 1
V.1 Les différents modèles géométriques de la caméra
Tr 2
V.2 Le modèle « Pin-hole » linéaire
Tr 3
V.3 Formulation mathématique du modèle « Pin-hole » linéaire
- une translation (tx,ty,tz) du centre 'C' de la caméra à l’origine 'O’ du repère (Ro)
Les équations peuvent être obtenues par utilisation des triangles semblables:
Xc Yc
Xi f. et Yi f.
Zc Zc
Afin d’écrire ces deux équations sous forme matricielle, nous prenons Zc comme paramètre
de proportionnalité. En plus, il n’est jamais nul physiquement: Zc = s
Tr 5
Cela donnera l’écriture matricielle suivante:
Xc
s.Xi f 0 0 0
Yc (équation 5.2)
s.Yi
0 f 0 0 *
s 0 0 1 0 Zc
1
Le paramètre à identifier ici est: la focale de l’objectif « f » (en mètres)
Le paramètre « s » dans l’équation matricielle justifie que la projection d’un rayon visuel
(droite (C,J)) donnera une image unique (point I) sur la rétine.
C’est la définition même de la projection centrale de centre « C ».
u = eu . Xi + gu
v = ev . Yi + gv
où:
- eu, ev sont les facteurs d'échelle suivant les deux axes (u) et (v) en pixels/mètres.
- gu, gv sont les coordonnées du point i (centre optique de la caméra) dans le repère
d'affichage (Ra), appelées aussi coordonnées du point principal – en pixels.
Tr 6
Ces quatre paramètres physiques sont liés aux caractéristiques de la caméra CCD et de la carte
d'acquisition de l'image. Sous forme matricielle, la relation précédente s'écrit:
u eu 0 gu Xi
(équation 5.3)
v 0 ev gv * Yi
1 0 0 1 1
Les 4 paramètres à identifier sont eu, ev, gu, gv.
Nous remarquons que l’expression reliant les coordonnées 3D de l’objet « J » dans le repère (Rc) aux
coordonnées « p » de son image dans le repère (Ra) sont fonction des paramètres physiques de la
caméra.
Ceci découle des équations (5.2) et (5.3) comme suit:
Xc Xc
s.u Fu 0 gu 0
Yc Yc (équation 5.4)
s.v
0 Fv gv 0 *
M *
Zc Zc
int
s 0 0 1 0
1 1
M
in t
V.4.1 La non-perpendicularité des axes (Xi,Yi) du plan image – rétine ( the skew error)
Xid et Yid sont les nouvelles coordonnées dans le repère (Ri)
avec la prise en compte de la distorsion de non perpendicularité
des axes rétiniens ( angle très petit).
Xid Xi Yid. s in
Yid Yi (non modifié)
Ce qui donne après numérisation:
u eu .(X id ) eu .(Yid ).sin (α ) gu u eu .(X id ) γ.Yid gu
v ev .Yid gv v ev .Yid gv
Avec : γ eu .sin α
u eu gu Xid
L’équation (5.3) du modèle linéaire devient: v 0 ev gv * Yid (équation 5.7)
1 0 0 1 1
Le nouveau paramètre interne à estimer est Tr 9
V.4.2 Les distorsions radiales
Distorsion en tonneau
u eu gu Xid Yi Yid Yi
Yid Xid.
v 0 ev gv * Yid Xi Xid Xi
1 0 0 1 1
r Xi2 Yi2
La non perpendicularité des axes de
r.(1 k1.r 2 k 2 .r 4 k3 .r 6 ...)
la rétine = Xid
2
Yi
Numérisation et stockage de 1
l’image Xi
Les distorsions radiales k1, k2, …
Tr 11
V.5 Estimation des paramètres du modèle = Calibration de la caméra
On appelle calibration d’une caméra la procédure mathématique permettant d’identifier les
paramètres du modèle de la caméra:
Le modèle linéaire de la caméra (équation 5.5) montre que la connaissance des coordonnées 3D
d’un objet J(Xo,Yo,Zo en mètres) et celles de son image p(u,v en pixels) nous permet d’avoir deux
équations à 11 inconnues.
La connaissance de 6 points étalons (coordonnées 3D de l’objet et coordonnées 2D de l’image)
nous permettent d’identifier les 11 inconnues du modèle.
Le modèle non linéaire de la caméra (14 paramètres et plus) nécessite plus de 7 points points
étalons (coordonnées 3D de l’objet et coordonnées 2D de l’image) nous permettant d’identifier
les paramètres du modèle.
Tr 12
V.5.1 Composition matérielle d’un banc de calibration
Tr 13
V.5.2 Calibration d’une caméra (modèle linéaire)
Reprenons le modèle linéaire global de la caméra (équation 5.5):
Xo
11 12 13 14
s .u c c c c
Yo
s .v
21 22 23 24 *
c c c c
s c Zo
31 c 32 c 33 c 34 1
Il peut aussi s’écrire sous la forme vectorielle:
c11
c12
c
13
c14
c
21
Xo Yo Zo 1 0 0 0 0 u. Xo u.Yo u.Zo u c22 0
*
0 0 0 0 Xo Yo Zo 1 v. Xo v.Yo v.Zo v c23 0
c24
(équation 5.10)
c 31
c
32
c 33
c
34
Tr 14
Le fait que nous ayant 12 inconnues à estimer, nous devons disposer d’au moins de N =6 points de
calibration. En pratique, pour augmenter la précision d’estimation, un grand nombre de points
(N > 50) est utilisé. Pour N points de calibration, l’équation matricielle 5.10 devient:
................................................................................................................................ c 31 .
.......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .................. c 32 0
XN1 Y N1 Z N1 1
0 0 0 0 uN1 .X No1 uN1 .YoN1 uN1 .Z No1 uN1 c 33 0
N1 c
o o o
0 0 0 0 Xo N1
Yo N1
ZoN1
1 v .X o N1 N1 N1 N1
v .Yo N1 N1
v .Z o v 34
Qui est de la forme: [ A] * c 0 (équation 5.11)
Le vecteur d’état à estimer: c c11 c12 c13 c14 c 21 c 22 c 23 c 24 c 31 c 32 c 33 c 34 t
Tr 15
La matrice [A], étant une matrice de mesure, est entachée d’erreurs. L’équation 5.11 n’est,
cependant, jamais vérifiée. Elle est sujet à un résidu.
[ A] * c
Une solution approchée à ce problème est la solution des moindres carrés. [least squares method).
Une fois les éléments cij di vecteur d’état estimé, nous pouvons remonter aux paramètres internes
et externes de la caméra en utilisant l’équation 5.6.
La résolution par les moindres carrés donne des résultats approchés mais pas stables. Il est
préférable d’utiliser des techniques de résolution optimisées telles que le filtrage de Kalman ou la
méthode de déscente de Gradient (en particulier – Levenberg Marquardt).
Tr 16
V.5.3 Calibration d’une caméra (modèle non linéaire)
Le modèle non linéaire nécessite des techniques d’optimisation non linéaires. Un des outils
les plus utilisés est la technique de Zhang (2001). Elle a été intégrée à la boite à outils de
calibration de Matlab [GML Calibration ToolsBox].
Tr 17
Remarques importantes:
Lorsqu’une caméra est calibrée, les paramètres internes peuvent être supposés
invariants (fixes). Seuls les paramètres externes varient lorsque la caméra bouge.
Dans le cas où l’objectif de la caméra est démonté puis remonté, la caméra doit être
recalibrée.
Tr 18
V.6 Estimation de pose de la caméra
On parle d’estimation de pose, la procédure permettant de calibrer les 6 paramètres externes
de la caméra. Les paramètres internes étant supposés connus.
Nous rappelons le modèle global linéaire de la caméra:
Inconnue
Connue
r11 r12 r13 tx Xo
s .u Fu 0 gu 0
r21 r22 r23 ty Yo
s .v 0 Fv gv 0 * * Zo
Inconnue
s 0 0 1 0 31 32 33r r r tz
Xc r11 r12 r13 tx Xo
0 0 0 1 1
M int 21 22 23
Yc r r r ty Yo
Tco
Connue
Xc Xc
31 32 33?
Zc = r r r
1 0 0 0 1 1
tz * Zo
s .u
Fu 0 gu 0
Yc
Yc
Tco
s .v 0 Fv gv 0 * M int * Zc
s 0 0 1 0 Zc
1 1
M in t
Tr 19
La connaissance des coordonnées 3D de l’objet J (Xo,Yo,Zo) ainsi que les coordonnées de son image
2D p (u,v) nous donne deux équations à 12 inconnues (9 x rij et tx, ty et tz).
Les 9 paramètres rij sont les coordonnées des 3 vecteurs directeurs d’une rotation spatiale (, , );
Ils sont donc régis par des dépendances comme suit:
Vecteurs unitaires > Module de chaque vecteur = 1
Orthogonalité des vecteurs rotation > produits scalaires= 0
Il en résulte que seuls 6 paramètres suffisent pour estimer la pose de la caméra (Tco).
La connaissance de 3 points (3D) et de leurs homologues sur l’image (2D) nous donne un
ensemble de 06 équations linéairement indépendantes (det 0) ce qui permet d’estimer
Les 6 paramètres de la matrice Tco.
Afin d’augmenter la précision d’estimation des éléments de la matrice de pose de la caméra, il est
fortement conseillé de prendre un nombre de points étalons plus grand que 3 (N >> 3).
Tr 20
En réalité augmentée, l’estimation de pose de la caméra est réalisé à l’aide de marqueurs:
Tr 21