QUATERNION Arithmétique des quaternions

Slides:



Advertisements
Présentations similaires
Eléments d'algèbre linéaire
Advertisements

Les matrices.
Symétrie, groupes ponctuels et groupes spatiaux
VII) Formalisme Quantique
CHAPITRE 4 Nombres complexes.
CHAPITRE II Caractéristiques géométriques des sections planes
Système formel Nous avons introduit : signes de variables (x, y, z, …), de constantes (0, 1), d’opérations (+, ), de relations (=, ) Axiomes : ce sont.
III ) REVISION: TORSEUR D’ACTION MECANIQUE
II ) RÉVISION : MOMENTS ET COUPLES
CHAPITRE VII Torsion pure
Encadrés: Chapitre 13 Distances
Y x O V U.
Les système linéaires Stéphane Paris.
Cours DÉTERMINANT. Au dernier cours nous avons vus Linverse dune matrice. Quelques théorèmes qui encadrent son existence. Les matrices élémentaires.
Transformations Montage préparé par : S André Ross
ASI 3 Méthodes numériques pour l’ingénieur
2.1.5 Rotations in 3D: Rotation axis
IFT3730: Infographie 3D Transformations Géométriques
Rappel... Opérations élémentaires sur les matrices:
Vecteurs géométriques
P.T.S.I. Cinématique du solide F. Socheleau.
2.1.5 Rotations in 3D: Rotation axis
SUJETS SPÉCIAUX EN INFORMATIQUE I PIF Contenu du cours Transformations géométriques des objets –Transformations 2D –Transformations entre systèmes.
Densité des N-uplets pythagoriciens
Rappel... Solution itérative de systèmes linéaires (suite et fin).
7.1 TRANSFORMATION LINÉAIRE Cours 19. Au dernier cours nous avons vus Le déterminant dune matrice carré Les propriétés du déterminant La matrice adjointe.
MODULE 11 Mathématiques SN Les VECTEURS
Espaces vectoriels Montage préparé par : S André Ross
Vers la dimension 3. La géométrie dans l'espace ne fait qu'étendre les concepts qui vous sont familiers en dimension 2 à la dimension 3. Le plus difficile.
Introduction aux matrices : exemples en dynamique de population
Transformations de corps rigides
Examen partiel #3 Mercredi le 15 décembre de 15h30 à 17h20
1 Fusion de paraboles Rick Parent, Animatique Algorithmes et techniques. Vuibert, Paris, 2003, 530p. 1.
6.1 LE LANGAGE MATRICIEL Cours 16. Aujourdhui, nous allons voir La définition dune matrice Plusieurs définitions de matrice particulière La somme de matrices.
1.1 LES VECTEURS GÉOMÉTRIQUES
Mathématiques SN Les VECTEURS Réalisé par : Sébastien Lachance.
2.2 PRODUIT SCALAIRE ET CALCUL D’ANGLES
Rappel... Matrices bloc. Décomposition des matrices:
Système de coordonnées
Transformations linéaires et sous-espaces associés
Modélisation géométrique de base
Transformations visuelles des objets
Cours du 25 octobre Mardi le 24 octobre
Nombres complexes Montage préparé par : André Ross
Itérations de fonctions non linéaires
Transformations ponctuelles des objets
La géométrie tropicale
ASI 3 Méthodes numériques pour l’ingénieur
Trigonométrie.
Cours de mathématiques économiques
Formules d ’addition..
L’endomorphisme le plus simple est l’ homothétie
CHAPITRE 2: LES VECTEURS.
8.1 LES NOMBRES COMPLEXES cours 26. Avec la venue de: Doigts Dettes Tartes Distances.
Programmation linéaire en nombres entiers
Capacité travaillée: Utiliser le cercle trigonométrique pour déterminer le cosinus et sinus d’angles associées Trigonométrie Partie 1 Contenu: Radian;
CHAPITRE III Calcul vectoriel
OUTILS MATHEMATIQUES POUR LES SII
Chapitre 3: Translation et Vecteurs
Les fonctions de référence
2.1.5 Rotations 3D: Axe de rotation
Structure de groupe Def: un groupe est un ensemble (G,*) où
Éléments cinétiques des système matériels
Post-optimisation, analyse de sensibilité et paramétrage
Courbes de Bézier P2 P1 P3 P0 O
1.1 LES VECTEURS GÉOMÉTRIQUES
Pierre Joli Cours de Mathématique Pierre Joli
Pierre Joli Cours de Mathématique Pierre Joli
GEOMETRIE VECTORIELLE
MATHÉMATIQUES L1 Second Semestre Armand Taranco. BIBLIOGRAPHIE Dupont : Algèbre pour les sciences économiques, Flash U, A. Colin. Bernard Guerrien, Isabelle.
Transcription de la présentation:

QUATERNION Arithmétique des quaternions Rotation au moyen de quaternions Convertir des matrices de rotation et des quaternions Rick Parent, Animatique Algorithmes et techniques. Vuibert, Paris, 2003, 530p.

Définition d’un quaternion Un quaternion peut être représenté à l’aide - d’un quadruplet de nombres réels q  [s, x, y, z] ou encore, - sous une forme plus abrégée, q  [s, v], s , v un vecteur 3D. Les opérations suivantes sont définies : Addition de 2 quaternions : [s1, v1] + [s2, v2] = [s1 + s2, v1 + v2], s1, s2 , v1, v2 des vecteurs 3D Multiplication d’un quaternion par un scalaire : (ii) [s, v] = [ s, v], , s , v un vecteur 3D Multiplication de 2 quaternions : [s1, v1] . [s2, v2] = [s1s2 - v1.v2, s1v2 + s2v1 + v1 x v2], s1, s2 , v1, v2 des vecteurs 3D produit scalaire produit vectoriel

Différentes propriétés des quaternions La multiplication de 2 quaternions n’est pas commutative. a. [s1, v1] . [s2, v2]  [s2, v2] . [s1, v1], s1, s2 , v1, v2 des vecteurs 3D La multiplication de quaternions est associative. b. ([s1, v1] . [s2, v2]) . [s3, v3] = [s1, v1] . ([s2, v2] . [s3, v3]), s1, s2 , s3 , v1, v2 et v3 des vecteurs 3D. La multiplication de 2 quaternions dont les vecteurs respectifs sont orthogonaux équivaut au produit vectoriel de ces 2 vecteurs. c. [0, v1] . [0, v2] = [0, v1 x v2]  v1 . v2 = 0 v1, v2 des vecteurs 3D [1, (0, 0, 0)] est l’élément neutre de la multiplication. d. [s, v] . [1, (0, 0, 0)] = [s, v] s , v un vecteur 3D.

Différentes propriétés des quaternions L’inverse d’un quaternion q  [s, v], noté q-1 est obtenu comme suit : e. q-1 = [s, -v] / (s2 + || v ||2) s , v un vecteur 3D Ainsi, q . q-1 = q-1 . q = [1, (0, 0, 0)]. Définition de la norme d’un quaternion : || q ||2 = s2 + || v ||2 Par conséquent, q / || q || est appelé quaternion unitaire. (p . q) -1 = q-1 . p-1 f. g. En posant q  [s, w] et Tq(v) = q . [0, v] . q-1 , on obtient : Tq(v) : un quaternion de la forme [0, u], où u est un vecteur 3D. Tq(Tp(v)) = Tq.p (v). Tq-1(v) = q-1 . [0, v] . q Tq(v) = Tq(v),   0.

Transformation de rotation du vecteur v d’un angle  autour d’un des axes principaux T,w(v) = [ cos (/2), sin (/2) w] . [0, v] . [ cos (/2), sin (/2) w]-1 h. où w = e1 si la rotation se fait autour de l’axe des x, w = e2 si la rotation se fait autour de l’axe des y, w = e3 si la rotation se fait autour de l’axe des z. Exemple : La transformation de rotation du vecteur v d’un angle  autour de l’axe des x nous donne comme prévu : [0, Rx() v] où Rx() = 1 0 0 0 cos  - sin  0 sin  cos 

la transformation est obtenue comme suit: Transformation de rotation du vecteur w d’un angle  autour d’un axe de rotation v unitaire quelconque T,v(w) = [ cos (/2), sin (/2) v] . [0, w] . [ cos (/2), sin (/2) v]-1 i. Note : la transformation est obtenue comme suit: faire coïncider le vecteur v avec l'axe des Z; ii) rotation d'un angle q autour de l'axe des Z; iii) se ramener à l'emplacement original du vecteur. (0, uy, uz) Faire coïncider le vecteur v avec l'axe des Z Cette transformation affine est obtenue ainsi: - une rotation d'un angle b autour de l'axe des X: RXb cos b = uz / ||(0, uy, uz)|| sin b = uy / ||(0, uy, uz)|| où (0, uy, uz) = ProjYZu.

T,v(w) = RX-b RY-a RZq RYa RXb (ux, 0, ||(0, uy, uz)||) - une rotation d'un angle a autour de l'axe des Y: RYa cos a = ||(0, uy, uz)|| sin a = -ux. Nous avons alors: T,v(w) = RX-b RY-a RZq RYa RXb Note : Le quaternion représentant la rotation du vecteur 3D w1 à w2 est : [cos (/2), sin (/2) (w1 x w2 )] où cos  = w1 . w2 sin 

Composition de transformations de rotation Soient T1,v1(w) et T2,v2(w), avec q1 = [ cos (1/2), sin (1/2) v1], q2 = [ cos (2/2), sin (2/2) v2], v1 et v2 sont unitaires, T2,v2(T1,v1(w) ) = q2 . (q1 [0, w] q1-1) . q2-1 = (q2 . q1) . [0, w] . (q1-1 . q2-1) = (q2 . q1) . [0, w] . (q2 . q1)-1 = Tq2.q1(w) Cas particulier : Une rotation avec son inverse donne l’identité. T-,v(T,v(w) ) = [1, 0] . [0, w] [1, 0] -1 = [0, w]. Tout multiple scalaire d’un quaternion représente la même rotation. Remarque : Tq(w) = Tq(w),   0 avec q = [ cos (/2), sin (/2) v]. C’est le cas de  = -1.

Convertir des matrices de rotation et des quaternions Pourquoi ? Les quaternions sont souvent utilisés pour interpoler des orientations et le résultat est converti en une matrice de rotation, de façon à pouvoir la combiner avec d’autres matrices liées aux opérations d’affichage. Procédure q  matrice de rotation Soit q = [s, w], ||q|| = 1, calculons d’abord q . [0, v] . q-1 : Tq(v) = q . [0, v] . q-1 = [s, w] [0, v] [s, -w] = [- w.v, s v + w x v] [s, -w] = [0, (w.v) w + s2v + s(w x v) – (s v + w x v) x w] = [0, (w.v) w + s2v + 2s(w x v) – (w x v) x w] = [0, 2(w.v) w + s2v + 2s(w x v) – (w . w) v].

Convertir des matrices de rotation et des quaternions En posant w = (x, y, z), on obtient : Tq(v) = [0, M v] où M  1 – 2y2 – 2z2 2xy –2sz 2xz + 2sy 2xy + 2sz 1 – 2x2 – 2z2 2yz – 2sx 2xz – 2sy 2yz + 2sx 1 – 2x2 – 2y2 Procédure matrice de rotation  q Soit la matrice de rotation suivante, R  r0,0 r0,1 r02 r1,0 r1,1 r12 r2,0 r2,1 r22 en examinant M, on obtient : la somme des éléments diagonaux donne 4s2 – 1, les éléments diagonaux peuvent également être utilisés pour résoudre les termes restants. diapositive suivante

Convertir des matrices de rotation et des quaternions r0,0 + r1,1 + r2,2 + 1 2 s = r0,0 = 1 – 2y2 – 2z2 = 1 – 2 (y2 + z2) = 1 – 2 (1 - x2 - s2) = -1 + 2x2 + 2s2 x = r0,0 + 1 – 2 s2 2 y = r1,1 + 1 – 2 s2 2 z = r2,2 + 1 – 2 s2 2 Note : Les racines carrées pour obtenir x, y et z peuvent être évitées si s  0 : r1,0 – r0,1 = 4 sz, r2,0 – r0,2 = -4 sy, r2,1 – r1,2 = 4 sx.

Représentation de phénomènes naturels Un quaternion peut aussi être défini comme suit : Q = w + x i + y j + z k où w, x, y et z sont des nombres réels, i, j et k désignent des coefficients imaginaires distincts, avec i2 = j2 = k2 = -1, ij = k, jk = i, ki = j, ji = -k, kj = -i, ik = -j. Nous verrons plus loin comment nous pouvons utiliser les quaternions pour représenter des phénomènes naturels.

Arithmétique des quaternions Soient Q = w + x i + y j + z k = (w, (x, y, z)) R = a + b i + c j + d k = (a, (b, c, d)), Q + R = (w + a) + (x + b) i + (y + c) j + (z + d) k Q - R = (w - a) + (x - b) i + (y - c) j + (z - d) k Q R = (wa – xb – yc - zd) + (wb + xa + yd - zc) i + (wc – xd + ya - zb) j + (wd + xc – yb + za) k || Q ||2 = w 2 + x 2 + y 2 + z 2 Conjugué de Q (Q*): w - x i - y j - z k Q-1 = Q* / ||Q|| Q / R = R-1 Q etc.

Conclusion L’usage des quaternions nous permettra d’interpoler entre des orientations afin de générer une image d’images clés.