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