Systèmes de coordonnées homogènes Les systèmes de

Transcription

Systèmes de coordonnées homogènes Les systèmes de
Systèmes de coordonnées homogènes
Les systèmes de coordonnées homogènes sont un
élément clé de :
• vision par ordinateur 3D
• synthèse d’images 3D
• modélisation des robots
• modélisation de processus dynamiques 3D
Transparent 1
Vision 3D : plan
• coordonnées homogènes
• modélisation de caméra : modèle pinhole
• calibrage (calibration) d’une caméra
Transparent 2
1
Systèmes de coordonnées homogènes
Les systèmes de coordonnées homogènes permettent de
définir une transformation entre deux référentiels avec une
simple multiplication matricielle :
Transparent 3
Systèmes de coordonnées homogènes
On doit être capable de :
• représenter les objetcs en 3D
• décrire la pose de l’objet 3D, c’est-à-dire :
• sa position et
• son orientation.
Transparent 4
2
Systèmes de coordonnées homogènes
On se restreint aux objets rigides, c’est-à-dire
non-déformables.
Un objet rigide dans l’espace est complètement
décrit par sa position et son orientation dans un
référentiel donné.
Transparent 5
Systèmes de coordonnées homogènes
• Considérons Oxyz un référentiel orthonormal et X,Y,Z
ses axes :
Transparent 6
3
Systèmes de coordonnées homogènes
• La position d’un point O’ dans Oxyz est donné par :
o’ = o’x X + o’y Y + o’z Z
Transparent 7
Systèmes de coordonnées homogènes
• Quelle est la position et l’orientation d’un objet ?
Transparent 8
4
Systèmes de coordonnées homogènes
• Considérons le référentiel O’x’y’z’ attaché à l’objet.
• La pose de l’objet sera décrit par la pose du référentiel
objet.
Transparent 9
Systèmes de coordonnées homogènes
• Nécessité de déterminer la pose d’ O’x’y’z’ dans Oxyz.
• C’est-à-dire comment O’x’y’z’ est orienté (rotation) et
translater par rapport à Oxyz.
Transparent 10
5
Systèmes de coordonnées homogènes
• La translation correspond simplement au vecteur o’ :
o’ = O’ - O
Transparent 11
Systèmes de coordonnées homogènes
• Cas 2D.
• Etant donné une paire d’axes (x,y), la rotation de ceuxci selon un angle θ peut être obtenu en écrivant :
Transparent 12
6
Systèmes de coordonnées homogènes
• En 3D, pour une rotation autour de l’axe Z est obtenu
de manière similaire :
Transparent 13
Systèmes de coordonnées homogènes
• Cette équation peut s’écrire :
Transparent 14
7
Systèmes de coordonnées homogènes
• Pareillement pour l’axe Y :
Transparent 15
Systèmes de coordonnées homogènes
• De même pour l’axe X :
Transparent 16
8
Systèmes de coordonnées homogènes
• Les rotations élémentaires sont les rotations autour
des axes du référentiel « courant ».
• En 3D, il y a 3 rotations élémentaires :
• Rx(θx) la rotation autour de l’axe X
• Ry(θy) la rotation autour de l’axe Y
• Rz(θz) la rotation autour de l’axe Z
Transparent 17
Systèmes de coordonnées homogènes
• Inversion de matrice :
Matrice identité 3x3
Transparent 18
9
Systèmes de coordonnées homogènes
• Considérons un point p dans Oxyz
• p = px X + py Y + pz Z
• En d’autres termes, cela peut s’écrire comme un
vecteur borné :
Le vecteur est dit borné parce
que son amplitude est fixe
Transparent 19
Systèmes de coordonnées homogènes
• Considérons un point p dans Oxyz
• p = px X + py Y + pz Z
• En d’autres termes, cela peut s’écrire comme un
vecteur borné :
Le vecteur est dit borné parce
que sa norme est fixe.
Transparent 20
10
Systèmes de coordonnées homogènes
• Introduisons un second référentiel O’x’y’z’ dont l’origine
coïncide avec O.
•Comment p est représenté dans O’x’y’z’ ?
La matrice de rotation décrit
l’orientation de O’x’y’z’ par
rapport à Oxyz
Transparent 21
Systèmes de coordonnées homogènes
Transparent 22
11
Systèmes de coordonnées homogènes
• angles RTL :
• Le Roulis (roll), le Tangage(pitch) et le Lacet(yaw) sont
des angles, décrivant la rotation selon le référentiel lié à
l’objet.
• De tel sorte que : R(θx, θy, θz) = Rz(θz) Ry( θy) Rx( θx)
• Rx(θx) la rotation autour de l’axe X
• Ry(θy) la rotation autour de l’axe Y
• Rz(θz) la rotation autour de l’axe Z
Transparent 23
Systèmes de coordonnées homogènes
• angles RTL :
Transparent 24
12
Systèmes de coordonnées homogènes
• L’ordre est très important : repère lié à l’objet
Transparent 25
Systèmes de coordonnées homogènes
• L’ordre est très important : repère fixe
Transparent 26
13
Systèmes de coordonnées homogènes
• Ces rotations permettent de définir des rotations autour
d’un axe quelconque. Par exemple, un axe défini par un
vecteur r :
Transparent 27
Systèmes de coordonnées homogènes
• Pour cela, plusieurs étapes :
• aligner r avec Z grâce à :
• une rotation de r autour de l’axe Z avec un angle -α
• une rotation de r’ autour de l’axe Y avec un angle -β
• puis, réaliser la rotation de θ
autour de l’axe Z
• Enfin, réaligner avec la direction de r.
• une rotation de r’’ autour
de l’axe Z avec un angle β
• une rotation de r’ autour
de l’axe Y avec un angle α
Transparent 28
14
Systèmes de coordonnées homogènes
• Pour cela, plusieurs étapes :
• aligner r avec Z grâce à :
• une rotation de r autour de l’axe Z avec un angle -α
• une rotation de r’ autour de l’axe Y avec un angle -β
• puis, réaliser la rotation de θ
autour de l’axe Z
• Enfin, réaligner avec la direction de r.
• une rotation de r’’ autour
de l’axe Y avec un angle β
• une rotation de r’ autour
de l’axe Z avec un angle α
En terme de matrice :
Rr(θ) = Rz(α)Ry(β)Rz(θ)Ry(-β)Rz(-α)
Transparent 29
Systèmes de coordonnées homogènes
• Transformation des coordonnées 3D :
coordonnées du point
dans Oxyz
Matrice de rotation décrivant
l’orientation de O’x’y’z’ dans
Oxyz
coordonnées du point
dans O’x’y’z’
coordonnées de
l’origine de O’x’y’z’
(dans Oxyz)
Transparent 30
15
Systèmes de coordonnées homogènes
• Transformation des coordonnées 3D :
coordonnées du point
dans Oxyz
Matrice de rotation décrivant
l’orientation de O’x’y’z’ dans
Oxyz
coordonnées du point
dans O’x’y’z’
coordonnées de
l’origine de O’x’y’z’
(dans Oxyz)
Transparent 31
Systèmes de coordonnées homogènes
• Coordonnées homogènes :
• Donc, on peut écrire la transformation entre 2 référentiels :
p = t + R p’
• Ceci peut être exprimé comme une simple matrice avec les
coordonnées homogènes :
p = T p’
Transparent 32
16
Systèmes de coordonnées homogènes
• Coordonnées homogènes :
• Utiliser des coordonnées homogènes revient à ajouter un
élément à la fin du vecteur de coordonnées, et ayant
toujours la valeur 1.
• Un point 3D s’écrira alors :
Transparent 33
Systèmes de coordonnées homogènes
• Cela permet d’écrire la transformation :
comme
Représentation
non-homogène
Représentation
homogène
Transparent 34
17
Systèmes de coordonnées homogènes
• Quelles sont les différentes parties dans la matrice homogène
de transformation ?
matrice
de rotation
vecteur de
translation
1 vecteur nul, de dimension 1x3
Transparent 35
Systèmes de coordonnées homogènes
Transparent 36
18
Systèmes de coordonnées homogènes
Vecteurs bornés :
• Pour décrire un point 3D, il nous
faut un vecteur borné.
• Avec les coordonnées homogènes, les
vecteurs sont bien bornés, bien que le
facteur d’échelle est fixé du fait du 4ième
élément à 1.
Transparent 37
Systèmes de coordonnées homogènes
Les points à l’infini :
• Normalement, cela n’a pas de sens
de parler de point à l’infini.
• Avec les coordonnées homogènes, c’est possible.
• On peut même dire dans quelle direction tends le point.
Le zéro implique
que le point se
trouve à une
distance infini
Transparent 38
19
Systèmes de coordonnées homogènes
Transformation 3D en coordonnées homogènes :
Coordonnées du point
dans Oxyz
Coordonnées du point
dans O’x’y’z’
Matrice homogène
de transformation
de O’x’y’z’ vers O’x’y’z’
Transparent 39
Modélisation de caméra
Le modèle Pinhole
Transparent 40
20
Modélisation de caméra : le modèle pinhole
Transparent 41
Modélisation de caméra : le modèle pinhole
Comment les points de l’espace 3D sont projetés dans
l’image (espace 2D) ?
Transparent 42
21
Modélisation de caméra : le modèle pinhole
Comment les points de l’espace 3D sont projetés dans
l’image (espace 2D) ?
Transparent 43
Modélisation de caméra : le modèle pinhole
Le point 3D P situé à une profondeur Z et à une distance
X de l’axe optique sera projeté en un point p tel que :
Transparent 44
22
Modélisation de caméra : le modèle pinhole
Cette relation est simplement
obtenue avec le théorème de
Thalès.
Transparent 45
Modélisation de caméra : le modèle pinhole
Cette relation est simplement
obtenue avec le théorème de
Thalès.
Transparent 46
23
Modélisation de caméra : le modèle pinhole
En 3D :
Transparent 47
Modélisation de caméra : le modèle pinhole
En 3D, le point (X,Y,Z) est projeté dans le plan image tel
que :
Transparent 48
24
Modélisation de caméra : le modèle pinhole
Cette projection peut s’exprimer en utilisant les
coordonnées homogènes, de telle sorte à avoir une
expression telle que :
Transparent 49
Modélisation de caméra : le modèle pinhole
Considérons le cas 1D :
• normalement, dans un système non-homogène de
coordonnées, pour le point P une seule dim. : x=3.
Transparent 50
25
Modélisation de caméra : le modèle pinhole
Considérons le cas 1D :
• normalement, dans un système non-homogène de
coordonnées, pour le point P une seule dim. : x=3.
• dans un système homogène, un point 1D est
représenté par un vecteur de dimension 2, définissant
un rayon :
Transparent 51
Modélisation de caméra : le modèle pinhole
Considérons le cas 1D :
• normalement, dans un système non-homogène de
coordonnées, pour le point P une seule dim. : x=3.
• dans un système homogène, un point 1D est
représenté par un vecteur de dimension 2, définissant
un rayon :
Transparent 52
26
Modélisation de caméra : le modèle pinhole
Extension au 2D :
• dans un système non-homogène de coordonnées, le
vecteur coord. du point P a 2 dimensions.
• dans un système homogène, le vecteur coord. du
point P a 3 dimensions.
Transparent 53
Modélisation de caméra : le modèle pinhole
Extension au 2D :
• dans un système non-homogène de coordonnées, le
vecteur coord. du point P a 2 dimensions.
• dans un système homogène, le vecteur coord. du
point P a 3 dimensions.
Transparent 54
27
Modélisation de caméra : le modèle pinhole
Extension au 2D :
• dans un système non-homogène de coordonnées, le
vecteur coord. du point P a 2 dimensions.
• dans un système homogène, le vecteur coord. du
point P a 3 dimensions.
Transparent 55
Modélisation de caméra : le modèle pinhole
• C’est similaire au modèle pinhole de la caméra !
• Seulement, le 3ième composant a la valeur de la
focale f.
Transparent 56
28
Modélisation de caméra : le modèle pinhole
Transparent 57
Modélisation de caméra : le modèle pinhole
Transparent 58
29
Modélisation de caméra : le modèle pinhole
Transparent 59
Modélisation de caméra : le modèle pinhole
Transparent 60
30
Modélisation de caméra : le modèle pinhole
Transparent 61
Modélisation de caméra : le modèle pinhole
Transparent 62
31
Modélisation de caméra : le modèle pinhole
Transparent 63
Modélisation de caméra : le modèle pinhole
Transparent 64
32
Modélisation de caméra : le modèle pinhole
Transparent 65
Modélisation de caméra : le modèle pinhole
Transparent 66
33
Modélisation de caméra : le modèle pinhole
Transparent 67
Modélisation de caméra : le modèle pinhole
Transparent 68
34
Modélisation de caméra : le modèle pinhole
Transparent 69
Modélisation de caméra : le modèle pinhole
Transparent 70
35
Modélisation de caméra : le modèle pinhole
Transparent 71
Modélisation de caméra : le modèle pinhole
Transparent 72
36
Modélisation de caméra : le modèle pinhole
Transparent 73
Modélisation de caméra : le modèle pinhole
Transparent 74
37
Modélisation de caméra : le modèle pinhole
Transparent 75
Modélisation de caméra : le modèle pinhole
Transparent 76
38
Modélisation de caméra : le modèle pinhole
Transparent 77
Modélisation de caméra : le modèle pinhole
Transparent 78
39
Calibrage (calibration) d’une caméra
Calibration
Transparent 79
Calibrage (calibration) d’une caméra
Transparent 80
40
Calibrage (calibration) d’une caméra
Transparent 81
Calibrage (calibration) d’une caméra
Transparent 82
41
Calibrage (calibration) d’une caméra
Transparent 83
Calibrage (calibration) d’une caméra
La calibration est obtenue en considérant une mire
contenant des amers visuels de géométrie 3D connue,
pour résoudre les équations avec les 11 termes (=11
inconnues).
Transparent 84
42