Introduction à la géométrie projective
Isabelle Bloch
http://www.tsi.enst.fr/˜bloch
Ecole Nationale Supérieure des Télécommunications - CNRS UMR 5141 LTCI
Paris - France
Géométrie – p.1/18
Géométrie et représentation de l’espace
• monde = 3D
• images = 2D (souvent)
• ⇒ transformations géométriques lors de la formation de l’image
Géométrie – p.2/18
Géométrie projective : intérêt
• principe de dualité : points et droites sont équivalents
• coordonnées homogènes
• algèbre linéaire
• géométrie euclidienne comme cas particulier
• compréhension de la structure d’ensembles de droites, de rotations...
• beaucoup de capteurs font une projection perspective du monde sur un plan
• applications en robotique, vision par ordinateur, synthèse d’image...
Géométrie – p.3/18
Espace projectif
Définitions :
• P n : espace projectif de dimension n
• point x représenté par un vecteur de n + 1 coordonnées : x = (x1 , ..., xn+1 )t
avec au moins une coordonnée xi non nulle (coordonnées homogènes)
• (x1 , ..., xn+1 )t et (y1 , ..., yn+1 )t représentent le même point
⇔ ∃λ 6= 0, ∀i, xi = λyi
• point pour lequel xn+1 = 0 = point à l’infini
Espace projectif = espace quotient :
• P n = (E n+1 \ {0})/ ∼ avec E n+1 = espace vectoriel de dimension n + 1 et
x ∼ x′ ⇔ ∃λ 6= 0, x = λx′
• vecteur non nul = droite passant par l’origine de E n+1
• deux vecteurs sont équivalents s’ils définissent la même droite
• point projectif (élément de P n ) = classe d’équivalence de vecteurs
Géométrie – p.4/18
Projection canonique et bases
Projection canonique :
p : E n+1 \ {0} → Pn
~
x 7→ p(~
x) = x
p n’est pas bijective !
espace vectoriel de dimension n n vecteurs de base
espace affine de dimension n n + 1 points de base
espace projectif de dimension n n + 2 points de base
Base projective :
• base a~i , i = 1...n + 1 de E n+1
• points projectifs associés : mi = p(a~i )
• ne déterminent pas les coordonnées projectives d’un point x (n + 1 paramètres)
• P
⇒ l’ajout d’un (n + 2)-ème point dans la base mn+2 = p( a~i ) permet de n’avoir
plus qu’un paramètre
Géométrie – p.5/18
Projection canonique et bases
Exemple : P 1
m1 m3 m2
P1
a1 + a2
a1
a2
Base canonique
ei = (0...1...0)t
pour i = 1...n + 1, avec un 1 à la i-ème place
en+2 = (1...1...1)t
Coordonnées d’un point projectif dans la base :
n+1
X
x= xi ei
i=1
Géométrie – p.5/18
Compacité
Théorème : L’espace projectif P n est topologiquement équivalent à la sphère unité S n
de Rn+1 repliée, c’est-à-dire dans laquelle on identifie les points aux antipodes.
• x = (x1 , ..., xn+1 )t point de S n si
Pn+1
i=1 x2i = 1
• x est aussi un point de P n
• −x : aux antipodes de x sur la sphère unité mais même point de P n
Conséquence : l’espace projectif P n est compact
Géométrie – p.6/18
Droite projective P 1
• base : e1 = (1, 0)t , e2 = (0, 1)t , e3 = (1, 1)t
• point : x = x1 e1 + x2 e2 avec x1 6= 0 ou x2 6= 0
• ou x = αe1 + e2 avec α = x1
x2
• e1 = point à l’infini
Géométrie – p.7/18
Plan projectif P 2
• point : x = x1 e1 + x2 e2 + x3 e3 avec xi non tous nuls
• droite d : définie par un triplet de nombres (d1 , d2 , d3 ) non tous nuls
• x appartient à d ⇔ dt x = 0 ⇔
P3
i=1 di xi = 0
• définit aussi l’ensemble des droites qui passent par x
• dualité entre point et droite
• droite passant par x et y : z = αx + βy donc Det(z, x, y) = 0, et z t (x ∧ y) = 0 ⇒
droite d = x ∧ y
• point d’intersection de deux droites d et d′ : d ∧ d′
• deux droites s’intersectent toujours
• x3 = 0 : droite à l’infini
• correspondance affine / projectif : (X1 , X2 )t / (X1 , X2 , 1)t ou X1 e1 + X2 e2 + e3 ,
avec X1 = xx
1
, X2 = x2
x
3 3
Géométrie – p.8/18
Espace projectif P 3
• point : x =
P4
i=1 xi ei avec xi non tous nuls
• plan π : défini par quatre nombres non tous nuls (π1 , π2 , π3 , π4 )
• équation du plan π t x = 0
• dualité entre point et plan
• droite de P 3 : définie soit à partir de deux points, soit comme intersection de deux
plans
• plan à l’infini : obtenu pour x4 = 0
• tout plan intersecte le plan à l’infini selon une droite à l’infini
• affine / projectif : (X1 , X2 , X3 )t / (X1 , X2 , X3 , 1)t ou X1 e1 + X2 e2 + X3 e3 + e4 ,
x1
avec X1 = x , etc.
4
Géométrie – p.9/18
Expression linéaire de problèmes géométriques
Conique de P 2 :
xt Cx = 0
C = matrice 3 × 3 définie à un facteur non nul près (5 coefficients indépendants)
Rang de C ⇒ type de la conique (invariant projectif)
Intersection d’une droite et d’une conique :
• x + αy point de la droite définie par les deux points x et y
• ce point appartient à la conique si et seulement si : (x + αy)t C(x + αy) = 0 soit
xt Cx + 2αxt Cy + α2 y t Cy = 0 (deux solutions en général)
• cas où le discriminant est nul : la droite est alors tangente à la conique t = Cx
Quadrique de P 3 :
xt Qx = 0
Intersection d’une droite et d’une quadrique :
• solution d’une équation du second degré
• plan tangent π = Qx
Géométrie – p.10/18
Applications linéaires : colinéations
H : Pm → Pn
linéaire, définie par une matrice (m + 1) × (n + 1), de déterminant non nul, et définie à
un facteur non nul près
Changement de base : colinéation H inversible (n + 1) × (n + 1)
Géométrie – p.11/18
Transformations linéaires
Espace Degrés Forme des transformations Invariants
de liberté linéaires
0 1
p11 p12 p13 p14
B p
B 21 p22 p23 p24 C
Projectif 15 TP = B bi-rapport
C
C
@ p31 p32 p33 p34 A
p41 p42 p43 p44
0 1
a11 a12 a13 a14
B a
B 21 a22 a23 a24 C
Affine 12 TA = B distances relatives le
C
C
@ a31 a32 a33 a34 A long de directions,
0 0 0 1 parallélisme
0 1
σ11 σ12 σ13 tx
B σ
B 21 σ22 σ23 ty C
Métrique 7 TM = B distances relatives, an-
C
C
@ σ31 σ32 σ33 tz A gles
0 0 0 1
0 1
r11 r12 r13 tx
B r
B 21 r22 r23 ty C
Euclidien 6 TE = B distances absolues
C
C
@ r31 r32 r33 tz A
0 0 0 1
Géométrie – p.12/18
Bi-rapport
• droite définie par x et y
• 4 points de la droite x + λi y
• bi-rapport :
λ1 −λ3
λ1 −λ4
λ2 −λ3
λ2 −λ4
Géométrie – p.13/18
Stratification des transformations linéaires
b c
d
a
forme originale
transformations
euclidiennes
transformations
métriques
affinités
projections
Géométrie – p.14/18
Exemples de transformations en coordonnées
homogènes
Translation :
0 1
1 0 0 tx
B
B 0 1 0 ty C
C
B C
@ 0 0 1 tz A
0 0 0 1
Géométrie – p.15/18
Exemples de transformations en coordonnées
homogènes
Rotation autour de x :
0 1
1 0 0 0
B
B 0 cos θ sin θ 0 C
C
B C
@ 0 − sin θ cos θ 0 A
0 0 0 1
Géométrie – p.15/18
Exemples de transformations en coordonnées
homogènes
Homothétie :
0 1
λx 0 0 0
B
B 0 λy 0 0 C
C
B C
@ 0 0 λz 0 A
0 0 0 1
Géométrie – p.15/18
Exemples de transformations en coordonnées
homogènes
Projection perspective depuis le point (0, 0, −f, 1)t sur le plan z = 0 :
0 1
1 0 0 0
@ 0 1 0 0 A
B C
1
0 0 f
0
Application linéaire :
P3 → P2
0 1 0 1
x 0 1 x 0 1
1 0 0 0 x
B y C B y C
7→ @ 0 1 0 0 AB C=@ y A
B C B CB C B C
B C
@ z A 1 @ z A z
0 0 f
0 f
t t
Coordonnées affines :
xf yf
X1 = X2 =
z z
(non linéaire) Géométrie – p.15/18
Exemple : projet Infomagic
Plan image - Ortho-image : retrouver les trajectoires
Géométrie – p.16/18
Exemple : projet Infomagic
Ortho-image de référence et mise à jour (rond-point) à partir des informations d’une
caméra
Géométrie – p.16/18
Exemple : projet Infomagic
Applications :
• extraction d’informations 3D
• calibrage automatique
• détection et suivi d’objets (voitures, piétons...)
• reconnaissance de véhicules
• requêtes 3D
• ...
Géométrie – p.16/18
Représentations des rotations de R3
Angles d’Euler :
z
β y
α
x
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 α A
B C
sin β cos β sin α cos β cos α
q
2 + R2
Inversement, soit u = R11 21
• si u 6= 0 alors : cos α = R33 /u, cos β = u et cos γ = R11 /u,
• si u = 0 alors β = ±π/2 ⇒ seulement α + γ.
Géométrie – p.17/18
Représentations des rotations de R3
Représentation canonique :
z
u
0 1
0 −c b ∞
X Hn
H=@ c 0 −a A eH = .
B C
n=0
n!
−b a 0
eH = matrice de rotation d’axe ~
u = (a, b, c)t et d’angle θ = k~
uk [2π].
Théorème de Rodriguez :
sin θ 1 − cos θ 2
R = eH = I + H+ H
θ θ2
Géométrie – p.17/18
Représentations des rotations de R3
Représentation canonique :
0 1
−c2 − b2 ab ac
H2 = @ ab −c2 − a2 bc
B C
A
ac bc −a2 − b2
0 1
0 −c b
H 3 = −(a2 + b2 + c2 ) @ c 0 −a A = −θ2 H
B C
−b a 0
H 4 = −θ2 H 2
H 5 = θ4 H
H 2n = (−1)n−1 θ2n−2 H 2 pour n ≥ 1
H 2n+1 = (−1)n θ2n H pour n ≥ 0
∞ 2n+1 ∞ 2n
nθ nθ
X X
sin θ = (−1) cos θ = (−1)
n=0
n! n=0
n!
Géométrie – p.17/18
Représentations des rotations de R3
Quaternions :
q = (q1 , q2 , q3 , q4 )t = (s, v)
• s = partie réelle, v = partie imaginaire
• Produit : q × q ′ = (ss′ − v · v ′ , sv ′ + s′ v + v ∧ v ′ )
• Conjugué : q̄ = (s, −v)
• Norme : |q|2 = q̄ × q = q × q̄ = (s2 + kvk2 , 0) = (kqk2 , 0)
• |q × q ′ | = |q||q ′ |
Représentation d’une rotation d’axe ~
u et d’angle θ : (s, v) et (−s, −v) avec :
θ θ
s = cos v = sin ~
u
2 2
Relation d’équivalence : R(q, q ′ ) ⇔ q = −q ′
Q1 = ensemble des quaternions de norme 1
R3 est isomorphe à Q1 /R
R3 est isomorphe à P 3
Géométrie – p.17/18
Représentations des rotations de R3
Quaternions :
Rx = q × x × q̄
Soit q = (s, v), avec v = (l, m, n)t et l2 + m2 + n2 + s2 = 1.
q × x × q̄ = (s, v) × (0, x) × (s, −v) = (−v · x, sx + v ∧ x) × (s, −v)
= (−sv · x + v · (sx + v ∧ x) + (sx + v ∧ x) ∧ (−v))
= (0, 2(v · x)v + (s2 − v 2 )x + 2sv ∧ x)
R = 2A + (s2 − v 2 )I + 2sV
0 1
s2 + l2 − m2 − n2 2(lm − sn) 2(ln + sm)
= 2(lm + sn) s2 − l2 + m2 − n2 2(mn − sl)
B C
@ A
2(ln − sm) 2(mn + sl) s2 − l2 − m2 + n2
avec :
0 1
0 −n m
V =@ n 0 −l A A = (lv, mv, nv)
B C
−m l 0 Géométrie – p.17/18
Application des quaternions au recalage rigide
Pn
Minimisation de E = i=1 kxi − (r(yi ) + t)k2
n
X
E = |xi − q × yi × q̄|2
i=1
n
X
= |xi − q × yi × q̄|2 |q|2
i=1
n
X
= |xi × q − q × yi × q̄ × q|2
i=1
n
X n
X
= |xi × q − q × yi |2 = q t Ati Ai q
i=1 i=1
La rotation optimale s’obtient en calculant les valeurs propres de la matrice A :
n
X
A= Ati Ai .
i=1
Solution du problème de minimisation aux moindres carrés = quaternion qui est le
vecteur propre de norme 1 correspondant à la plus petite valeur propre de A Géométrie – p.18/18