0% ont trouvé ce document utile (0 vote)
32 vues3 pages

Tp1 Calibration

Ce TP vise à calibrer une caméra en estimant la matrice de projection P à partir d'une mire composée de trois plans avec des grilles. L'algorithme de Faugeras-Toscani est utilisé pour normaliser les coordonnées et calculer la matrice P. Les étudiants doivent réaliser un programme Matlab pour estimer P à partir de couples de points 2D-3D et évaluer l'impact du nombre de couples sur la précision de la projection.

Transféré par

mamalien
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
32 vues3 pages

Tp1 Calibration

Ce TP vise à calibrer une caméra en estimant la matrice de projection P à partir d'une mire composée de trois plans avec des grilles. L'algorithme de Faugeras-Toscani est utilisé pour normaliser les coordonnées et calculer la matrice P. Les étudiants doivent réaliser un programme Matlab pour estimer P à partir de couples de points 2D-3D et évaluer l'impact du nombre de couples sur la précision de la projection.

Transféré par

mamalien
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

M1 ISC VISTA

Vision par ordinateur


TP N° 1-2 : Calibration de caméra

1. Introduction

Ce TP a pour objectif de réaliser la calibration d'une caméra à partir de l'image d'une mire. Il s'agit donc
d'estimer la matrice de projection P permettant de passer des coordonnées homogènes 3D d'un point aux
coordonnées homogènes 2D de sa représentation dans l'image :

()
x
y =P
w
Y
Z
1
()
La mire est constituée de trois plans perpendiculaires (figure 1(a)). Une grille est représentée sur chaque plan
afin de localiser des points aux coordonnées entières identifiés comme les angles des carrés. Dans le repère ainsi
défini, le point A de la figure 1(b) se situe aux coordonnées (4,0,2).

(a) (b)
Figure 1 : Mire de calibration.

2. Rappel de cours

L'estimation de la matrice P sera réaliser est donnée par l'algorithme de Faugeras-Toscani (c.f. cours) :

Algorithme de Faugeras-Toscani
~ ~ai=T ai
1. Normaliser les coordonnées des points : A i =U A i et
2. Pour chaque correspondance Ai ↔ai calculer les matrices (2x9) Bi et (2x3) Ci dont les équations sont
rappelées à la suite.
3. Concaténer les n matrices Bi et Ci pour construire les matrices B et C.
4. Calculer la matrice D = CTC – CTB(BTB)-1BTC.
5. Calculer les valeurs propres et les vecteurs propres de D.
6. Normaliser le vecteur propre associé à la plus petite valeur propre => v2
7. Déterminer v1 = -(BTB)-1BTCv2
8. Déterminer la ma trice de projection sur les données centrée ~ P à partir des définitions de v1 v2
(rappelées page suivante).
9. Dénormaliser la solution : P=T -1 ~ PU
⋮ ⋮
B=
( Xi
0
Yi
0
Zi
0
1
0
0
Xi

0
Yi

v1 = (p11 p12 p13 p14 p21 p22 p23 p24 p34)T


0 0 − xi
Zi 1 − y i
) ( C=
−x i X i
− yi X i
−x i Y i
− yiY i

−x i Zi
− yi Zi
)
v2 = (p31 p32 p33)T

3. Calcul des matrices T et U

Les transformations définies par les matrices T et U réalisent un changement de repère afin d’obtenir des nuages
de points aux coordonnées normalisés (respectivement en 2D et 3D). Plus précisément le barycentre des points
est confondu avec le centre du nouveau repère et la distance moyenne au centre est égale à √ 2 (en 2D) et
√ 3 (en 3D). Ces matrices opèrent en coordonnées homogènes, on a donc T une matrice 3x3 et U une matrice
4x4.
α 0 tx

(
Considérons, par exemple, la transformation réalisée par une matrice T = 0 α t y sur un point a de
0 0 1
)
α 0 tx x α x+t x
T
coordonnées (x,y,1) , on a : 0
0 0 1
(
α t y . y
1)( ) ( )
= α y+t y
1

Pour que T soit la matrice de normalisation recherchée il faut que : (1) les nouvelles coordonnées des points
soient de valeur moyenne nulle, (2) la valeur moyenne de la norme des nouvelles coordonnées soit égale à √ 2
. Afin de simplifier les calculs, nous considérerons plutôt la norme carré que nous rendrons égale à 2 en valeur
moyenne (n.b. : le résultat n’est pas équivalent mais sera suffisamment proche pour être applicable).

On a donc :

< αxi + tx> = 0 et < αyi + ty> = 0 où < . > est l’opérateur de moyenne.
α<xxi> + tx = 0 et α<xyi> + ty = 0

Donc : tx = - α<xxi> et ty = - α<xyi>

Où (<xxi>,<xyi>) sont les coordonnées du barycentre des points dans le repère initial.

De même on a :

<x (αxi + tx)2 + (yi + ty)2> = 2


<x α2xi2 + tx2 + 2αxitx + α2yi2 + ty2 + 2αyity > = 2
α2 <xxi2> + α2<xxi>2 – 2α2<xxi>2 + α2 <xyi2> + α2<xyi>2 – 2α2<xyi>2 = 2
α2 <xxi2> – α2<xxi>2 + α2 <xyi2> – α2<xyi>2 = 2
α2 (<xxi2> + <xyi2> – <xxi>2 – <xyi>2) = 2
α=
√2
Ce qui permet de déterminer l’expression de α : 2 2 2 2
√ i
<x >+<yi >−(<xi > +<y i > )

Avec : <xxi2> + <xyi2> est la valeur moyenne de la norme2 des coordonnées des points dans le repère initial.
Et : <xxi>2 + <xyi>2 est la norme2 du barycentre des points dans le repère initial.

β 0 0 tx

De même si l’on définit la matrice de normalisation U sous la forme :


U=
0
0
0
( β
0
0
0 ty
β tz
0 1
)
√3
On a : tx = - β<Xi> , ty = - β<Yi>, tz = - β<Zi> et β= 2 2 2 2 2 2
√ i
<X >+<Yi >+<Z i >−(<X i > +<Yi > +<Zi > )

4. Manipulation

Estimation de la matrice P

On demande dans cette partie de réaliser le programme Matlab permettant d'estimer la matrice P à partir d'un
nombre n de couples de points 2D – 3D.

Pour cela réaliser les étapes suivantes :

A partir de l'image mire.tif de la figure 1, constituer un ensemble de 6 couples de points 3D/2D répartis sur les 3
plans (2 par plan). Par convention, nous considérerons que les carrés sont de coté 1 cm et que le centre du repère
3D est situé à l'intersection des trois plans.

Projection

Afin de valider le résultat obtenu, déterminer par projection les coordonnées dans l'image de n = 10 points
différents des points utilisés pour l'estimation. Estimer les moments à l'ordre 2 (écarts types) de l'erreur de
projection en u et v.

Influence du nombre de couples 3D/2D sur la précision

Réaliser à nouveau la calibration et la projection pour un nombre de couples 3D/2D de 7 à 12. Évaluer
l'évolution des écarts types de l'erreur de projection en fonction du nombre de couples.

Vous aimerez peut-être aussi