Vous êtes sur la page 1sur 26

Traitements d'images et Vision par ordinateur

Chapitre 9: Calibration de la caméra


Calibration de la caméra

Projection perspective
Coordonnées homogènes
Transformations
Étalonnage de la caméra

 L’étalonnage (ou calibration) de la caméra consiste à


déterminer les paramètres de la transformation entre les
coordonnées du monde et les coordonnées image (et
vice-versa).
Rayon lumineux
dans la scène Point dans
l'image

3
Paramètres de l'étalonnage

 Deux types de paramètres à prendre en compte :

 Paramètres intrinsèques
Ils décrivent les propriétés optiques et géométriques internes de
la caméra.

 Paramètres extrinsèques
Ils décrivent la relation qui existe entre le référentiel monde et le
référentiel image.

4
Projection perspective

5
Projection perspective 3D → 2D

 Un point de l'image est un rayon dans l'espace projectif


 Chaque point (x,y) du plan est representé par un rayon
(sx,sy,s) dans l’espace.
 Tous les points du rayon sont équivalents :
(x, y, 1) ≅ (sx, sy, s)

6
Projection perspective
 En projection perspective, on
perd la notion de taille et de
distance des objets.

 Chaque point de l’espace est


toujours connu à un facteur
d’échelle près.

7
Rappel sur les transformations
 Transformation rigide
 Implique seulement les translations et les rotations.
 Aucune propriété géométrique de l’objet n’est modifiée.

 Transformation affine
 Implique les translations, les rotations et les mises à l’échelle.
 Préserve les lignes parallèles.
 Cette transformation est réversible.

 Transformation projective
 Correspond à une projection d’un espace à N dimensions à M
dimensions (où M < N : ici N = 3 et M = 2).
 Les plus utilisées sont les transformations orthogonales et perspectives.
 Cette transformation est irréversible.

8
Coordonnées homogènes
 Coordonnées homogènes
 Forme plus compacte pour représenter certaines transformations.
 On ajoute une dimension correspondant à un facteur d’échelle.
 Permet de représenter les points à l'infini, les homographies, la
projection perspective, les relations multi-vues

 w⋅ x   xh 
 x      xh / w 
  w⋅ y  yh   
 y → 
w ⋅ z   z  →  yh / w 
z    h  z / w
{  w   w 1
4 h
2 43 
Coordonnées 123 { Coordonnées
standards Coordonnées Coordonnées standards
homogènes homogènes
9
Transformations
et coordonnées homogènes
 Translation et rotation en coordonnées homogènes :
R T 
P' =   ⋅ P
0 1
 x c w   rx / x rx / y rx / z t x   xe 
     
 y c w   ry / x ry / y ry / z t y   ye 
 z w = r rz / y rz / z tz  ⋅ 
ze
 c   z/x   
 w   0 1   1 
   0 0

xc / w = rx / x xe + rx / y ye + rx / z ze + t x

10
Transformations
et coordonnées homogènes

 Matrices de rotation :
1 0 0 
Rotation de ϕ degrés autour 
R x (ϕ ) =  0 cos( ϕ ) sin( ϕ ) 

de l’axe des X : 0 − sin( ϕ ) cos( ϕ ) 

 cos(α ) 0 − sin(α ) 
Rotation de α degrés autour  
R y (α ) =  0 1 0 
de l’axe des Y :  sin(α ) 0 cos(ϕ ) 
 
 cos(θ ) sin(θ ) 0 
Rotation de θ degrés autour  
R z (θ ) =  − sin(θ ) cos(θ ) 0 
de l’axe des Z :  0 0 1 

 cos θ cos α cos θ sin α sin ϕ − sin θ cos ϕ cos θ sin α cos ϕ + sin θ sin ϕ 
 
R (ϕ ,α ,θ ) =  sin θ cos α sin θ sin α sin ϕ + cosθ cos ϕ sin θ sin α cos ϕ − cos θ sin ϕ 
 − sin α cos α sin ϕ cos α cos ϕ 
 

11
Transformations
et coordonnées homogènes

 Plusieurs transformations successives :

On crée une matrice de transformation globale en multipliant


toutes les autres matrices en ordre inverse (pré-multiplication):

On veut appliquer les transformations T1 suivie de T2 et


finalement de T3

P ' = T3 ⋅ T 2 ⋅ T1 ⋅ P = T ⋅ P

où T = T3 ⋅ T2 ⋅ T1

12
Les différents référentiels
yc
Référentiel caméra
Centre de
zc projection
Référentiel image

Pe est référencé par


Xc rapport à Re
Xi Pi
(xi , yi ) Pi est référencé par
rapport à Ri
Yi
Plan image
Ze Pe (xe , ye , ze )

Ye Axe optique

Référentiel environnement Xe
13
Les différentes transformations
 Première transformation
Référentiel environnement → Référentiel caméra
yc
Référentiel caméra
Centre de
zc projection
Référentiel image

Xc
Xi
Pe est référencé par
rapport à Rc
Yi
Plan image
Ze Pe (xe , ye , ze )

Ye Axe optique

Référentiel environnement Xe

14
Les différentes transformations

 Première transformation :
C’est une transformation rigide qui est décrite par les paramètres
extrinsèques (R et T)
Pc = R ⋅ Pe + T
 x c   rx / x rx / y rx / z   x e   t x 
Notation        
 y c  =  ry / x ry / y ry / z  ⋅  y e  +  t y 
matricielle : z  r
 c   z/x rz / y r z / z   z e   t z 

 x c w   rx / x rx / y rx / z tx   xe 
     
Coordonnées  c
y w   ry / x ry / y ry / z ty   ye 
homogènes : z w = r rz / y rz / z

tz   ze 
= T1 ⋅ Pe
 c   z/x   
 w   0 1   1 
   0 0

15
Les différentes transformations

 Deuxième transformation
Projection de l’espace sur un plan
yc
Référentiel caméra
Centre de
zc projection
Référentiel image

Xc
Xi Pc'
(xc' , yc ' )
Pe’ est référencé par
rapport à Rc
Yi
Plan image
Pc (xc , yc , zc )

Axe optique

16
Les différentes transformations

 Deuxième transformation :
C’est une transformation projective qui est décrite par la projection
perspective
x
xc ' = f ⋅ c
zc
yc f : distance focale de la
yc ' = f ⋅ caméra (paramètre
zc intrinsèque de la caméra)
zc ' = f

 xc ' w   1 0 0 0  xc 
     
Coordonnées  yc ' w   0 1 0 0  yc 
 z ' w  = 0 0 1 0  ⋅
zc  = T 2 ⋅ Pc
homogènes :  c     
 w  0 0   1 
   0 1/ f

17
Les différentes transformations
 Troisième transformation
Référentiel caméra → Référentiel image
yc
Référentiel caméra
Centre de
zc projection
Référentiel image

Pi
(xi , yi )
Xc
Xi Pc'
(xc' , yc ' )
Pi est référencé par
rapport à Ri
Yi
Plan image

Axe optique

18
Les différentes transformations
 Troisième transformation :
C’est une transformation affine qui est décrite par les paramètres
intrinsèques de la caméra
 Changement de référentiel

 Centre de l’image (Cx et Cy)

 Facteur d’échelle des pixels (Sx et Sy) (pixels/m)

x i = S x ⋅ x c '+ C x
y i = − S y ⋅ y c '+ C y
 x '
 xi / w   S x 0 0 Cx   c 
Coordonnées      yc ' 
homogènes :  yi / w  =  0 − Sy 0 C y  ⋅   = T3 ⋅ Pc '
 w  0  zc '
   0 0 1   
1
19
Les différentes transformations

 Matrice de projection perspective :


 On commence par la matrice des paramètres intrinsèques
 xi / w   Sx 0 Cx / f 0
   
 yi / w  = T3 ⋅ T2 ⋅ Pc =  0 − Sy Cy / f 0  ⋅ Pc = TIntrinsèque ⋅ Pc
 w  0 0 1/ f 0 
  
 On multiplie par f pour minimiser l’impact de ce paramètre
dépendant
 Sx ⋅ f 0 Cx 0   Ω x 0 Cx 0 
   
TIntrinsèque =  0 − S y ⋅ f Cy 0 =  0 Ω y Cy 0
 0 0 1 0   0 0 1 0 
   
Ωx = Sx / f Ωy = Sy / f
20
Les différentes transformations
 Matrice de projection perspective :
 Finalement on multiplie par la matrice des paramètre
extrinsèques (T1)
Pi = TIntrinsèque ⋅ T1 ⋅ Pe

 On obtient la matrice de projection perspective


 m11 m12 m13 m14 
 
Pi = M ⋅ Pe =  m21 m22 m23 m24  ⋅ Pe
m m34 
 31 m32 m33
 Notée aussi :
 m1 m14 
 
M =  m2 m24 
m m 
 3 34 

21
Les différentes transformations

 Matrice de projection perspective :


 On peut évaluer les paramètres intrinsèques et extrinsèques à
partir de M
 1
 r3 = m3 r1 =
Ω x ⋅ (m1 − C x ⋅ m3 )

 C = m •m 1
r2 =
 x Ω y ⋅ (m2 − C y ⋅ m3 )
1 3

 1
 C = m •m tx =
 y 2 3
Ω x ⋅ (m14 − C x ⋅ m34 )
 1
 Ω x = m1 ∧ m3 ty =
 Ω y ⋅ (m24 − C y ⋅ m34 )
Ω = − m ∧ m t z = m34
 y 2 3

Note : • représente le produit scalaire et ∧ représente le produit vectoriel


22
Détermination de M

 Simplification de M :
 Puisque tous les paramètres sont définit à un facteur d’échelle
près, on pose tz = 1 (m34 = 1). Ce qui revient à diviser M par tz.

 m11 m12 m13 m14 


 
M =  m21 m22 m23 m24 
m m32 m33 1 
 31

23
Détermination de M

 Dans la matrice M, nous avons 8 inconnues


 tx, ty, tz, rx, ry, rz, Ωx et Ωy
 Cx et Cy sont connus
 Pour la résolution, nous avons besoin d’un minimum de
8 points.
 Il est conseillé d’en prendre plus, pour réduire les
erreurs de mesure des points.
 La résolution se fera par la méthode des moindres
carrés ou par une méthode similaire de minimisation
d’erreur.

24
Mire de calibration

 Utilisation d’une mire pour


calibrer les caméras.

 La mire (ou cible) doit contenir


des formes faciles à reconnaître
et dont la position est très bien
connue selon le référentiel
environnement.

 On mesure le centre des points


blancs qui sont connus à
l’avance et facile à identifier.
 La cible doit comporter des
éléments non coplanaires.

25
À quoi peut servir M ?

 Calculer les paramètres intrinsèques et extrinsèques.

 Corriger une image.

 Connaître les coordonnées image d’un point lorsque les


coordonnées environnement sont connues.

 Connaître l’équation de la droite où se trouvent les points


qui peuvent imager sur un point image connu.

26

Vous aimerez peut-être aussi