Quaternionen - PowerPoint PPT Presentation

About This Presentation
Title:

Quaternionen

Description:

Quaternionen Eugenia Schwamberger Inhalt : Komplexe Zahlen Quaternionen Einheitsquaternionen Rotation mit Quaternionen Beispiel Matrix Conversion Anhang A: K rper ... – PowerPoint PPT presentation

Number of Views:43
Avg rating:3.0/5.0
Slides: 33
Provided by: Lilia174
Category:

less

Transcript and Presenter's Notes

Title: Quaternionen


1
Quaternionen
  • Eugenia Schwamberger

2
Inhalt
  • Komplexe Zahlen
  • Quaternionen
  • Einheitsquaternionen
  • Rotation mit Quaternionen
  • Beispiel
  • Matrix Conversion
  • Anhang A Körper, Schiefkörper
  • Anhang B Vektorprodukt, Skalarprodukt
  • Literatur

3
Komplexe Zahlen
  • Definition
  • Es sei C RR das kartesische Produkt. An
    Stelle des geordnetes Paar (x, y) schreiben wir
    x iy ? C für x, y
    ? R.
  • Grafische Darstellung

4
Komplexe Zahlen 2
  • Addition
  • (x iy) (u iv) (x u) i(y v)
  • Multiplikation
  • (x iy) (u iv) (xu yv) i(xv yu)
  • Kommutativer Körper mit 1 1 i 0 als
    Einselement der Multiplikation
  • Für z x iy
  • Betrag z
  • Konjugierte z x iy

5
Quaternionen 1 Einführung
  • Erst beschrieben von W.R. Hamilton, im 1843
  • Eingeführt im Feld von Computergrafik von
    Shoemake, im 1995
  • Was sind Quaternionen?

6
Quaternionen 2
  • Definition
  • Ein Quaternion q ist ein Quadrupel, bestehend aus
    dem Skalar qw und dem Vektor qv
  • q ( qv, qw )
  • (qx, qy, qz, qw)
  • i qx j qy k qz qw
  • mit qx, qy, qz, qw ?R und
  • ij k, ji -k, jk i,
  • kj -i, ki j, ik -j


7
Quaternionen 3
  • Der Vektor qv (qx, qy, qz) heißt der
    imaginäre Teil und qw heißt der reelle Teil
    von Quaternion q
  • Für imaginäre Teil
  • Addition
  • Produkt
  • Kreuzprodukt und andere
  • Vektoren als Quaternionen
  • v (v, 0)
  • Skalare als Quaternionen
  • s (0, s)

8
Quaternionen 4
  • Multiplikation ist nicht kommutativ
  • Quaternionen bilden einen Schiefkörper
  • Multiplikation von zwei Quaternionen

i j k
i -1 k -j
j -k -1 i
k j -i -1
9
Quaternionen 5
  • Skalarprodukt
  • s q (o, s) (gv , qw) (s gv , s qw)
  • q s (gv , qw) (0, s) (gv s , qw s)
  • (s gv , s qw)
  • Kreuzprodukt qvxrv
  • (i qx j qy k qz)x(i rx j ry k rz)
  • i (qyrz qzry)
  • j (-qxrz qzrx)
  • k (qxry - qyrx)
  • qxrx - qyry qzrz gt
  • qvxrv mv

10
Quaternionen 6
  • Multiplikationen von zwei Quaternionen
  • q r
  • (i qx j qy k qz qw )x(i rx j ry k rz
    rw)
  • i (qyrz qzry qxrw qwrx)
  • j (-qxrz qzrx qyrw qwry)
  • k (qxry qyrx qzrw qwrz)
  • qwrw - qxrx - qyry qzrz
  • (qvxrv rwqv qwrv, qwrw qvrv)

11
Quaternionen 7
  • Addition
  • q r (qv, qw) (rv, rw) (qv rv, qw rw)
  • Konjugierte Quaternionen
  • q (qv, qw) ( - qv, qw)
  • Der Norm N(q) bzw. q²
  • N(q) q q q q qv qv qw² qx² qy²
    qz² qw²
  • Die Identität
  • I (0, 1)

12
Multiplikative Inverse
  • Behauptung
  • Die zu einem Quaternion q multiplikative Inverse
    ist
  • q-1 q/N(q)
  • Wir leiten diese Formel von der Definition des
    Normen her.
  • q-1 q q q-1 1 Gilt für Inverse
  • N(q) q q ?
  • 1 (q q ) / N(q) gt
  • q-1 q/N(q)

13
Regeln
  • Für Konjugierte Quaternionen
  • (q) q
  • (q r) q r
  • (q r) r q
  • Für den Norm von Quaternionen
  • N(q) N(q)
  • N(q r) N(q) N(r)

14
Gesetze für Multiplikationen
  • Distributivgesetze
  • p (s q t r) s p q t p r wobei p, q, r
    sind Quaternionen, und s, t -
    Skalaren
  • (s p t q) r s p r t q r
  • Assoziativität
  • p (q r) (p q) r

15
Einheitsquaternionen
  • Quaternionen mit N(q) 1 heißen
    Einheitsquaternionen.
  • q (uq sin?, cos?)
  • für drei-dimensionalen Vektor uq mit N(uq) 1,
    weil
  • N(q) n(uq sin?, cos?) sin² ?(uq uq) cos² ?
    sin² ? cos² ? 1
  • Die menge aller Einheitsquaternionen bildet eine
    Einheitssphäre im vierdimensionalen Raum.

16
Rotation mit Quaternionen
  • Sei gegeben Vektor P (px py pz pw)T
  • Wir bringen die Koordinaten von P in ein
    Quaternion p ein, p (px, py, pz, pw).
  • Angenommen, dass wir ein Einheitsquaternion q
    (uq sin?, cos?) haben, dann gilt
  • qpq-1
  • rotiert p um die Achse uq
  • mit dem Winkel 2?
  • Anmerkung
  • Für Einheitsquaternion q gilt
  • q q-1

17
Rotation mit Quaternionen 2
  • Gegeben sei zwei Vektoren v1 und v2
  • N(v1) N(v2) 1
  • cos? v1 v2
  • uq (v1xv2) / v1xv2
  • N(uq) 1
  • q v2 v1 (v1xv2, v1 v2)
  • ? q (uq sin?, cos ?)

18
Rotation mit Quaternionen 3
  • (q v1q) liegt in der gleichen Ebene wie v1 und
    v2 und schließt mit v2 den Winkel ? ein.
  • (q v1q)v2
  • (q v1((v2v1)))v2
  • q (v1v1)(v2v2)
  • q (v2 v1 )

19
Rotation mit Quaternionen 4
  • Das Produkt qpq-1
  • führt p (pv, pw) nach p (pv, pw) über,
  • wobei N(pv) N(pv) ist, (die Länge des Vektors
    hat sich nicht geändert)
  • Liegt in der gleichen Ebene wie p
  • Schließt mit dem p den Winkel 2?

20
Beispiel
  • Punkt P(0, 2, 6) soll um 60 bzg. der
    z-Achse rotiert werden.
  • p 0i 2j 6k,
  • q (uqsin?, cos?), uq (0, 0, -1), ? 30
    gt
  • q (- 0.5k cos30) (?3/2 0.5k)
  • q (?3 / 2 0.5k)
  • Berechne q p q
  • (?3/2-0.5k)(2j 6k)(?3/2 0.5k)
  • (i ?3j 3 ?3k 0.5 6)(?3/2 0.5k)
  • (?3i j 6k) gt
  • P (1.73 1 6)T

21
Matrix Conversion
  • Ein Quaternion q kann in eine Matrix Mq
    folgendermaßen konvertiert werden
  • 1-s(qy² qz²) s(qxqy - qwqz) s(qxqz
    qwqy) 0 Mq s(qxqy
    qwqz) 1-s(qx² qz²) s(qyqz qwqx) 0
    s(qxqz - qwqy) s(qyqz qwqx)
    1-s(qx² qy²) 0 0
    0 0 1
  • Wobei s 2/N(q)

22
Matrix Conversion 2
  • Wenn N(q) 1, dann
  • 1-2(qy² qz²) 2(qxqy - qwqz)
    2(qxqz qwqy) 0 Mq
    2(qxqy qwqz) 1-2(qx² qz²) 2(qyqz qwqx)
    0 2(qxqz - qwqy) 2(qyqz
    qwqx) 1 - 2(qx² qy²) 0 0
    0 0
    1

23
Matrix Conversion 3
  • Rückwärtsumrechnung
  • m21q - m12q 4qwqx m02q - m20q
    4qwqy () m10q - m01q 4qwqz
  •  d.h. wenn qw bekannt ist, können wir die qx, qy,
    qz berechnen.

24
Matrix Conversion 4
  • trace einer Matrix M - tr(M)
  • tr(Mq) 4- 2s(qx² qy² qz²)
  • 4 (1- (qx² qy² qz²) /(qx² qy² qz² qw²))
  • 4qw² / (qx² qy² qz² qw²)
  • 4qw² / N(q)

25
Matrix Conversion 5
  • Dieses Resultat liefert die folgende Umrechnung
    für Quaternionen
  • qw 0.5 ?tr (Mq)
  • qx (m21q - m12q) / 4qw ()
  • qy (m02q - m20q) / 4qw
  • qz (m10q - m01q) / 4qw
  •  

26
Matrix Conversion 6
  • Lösung ist nicht stabil, Division von kleinen
    Zahlen wird vermieden.
  • Deshalb setzen wir zuerst t qw² - qx² -
    qy² - qz² ein, daraus folgt
  • m00 t 2qx²
  • m11 t 2qy²
  • m22 t 2qz²
  • u m00 m11 m22 2 qw²

27
Matrix Conversion 7
  • Wir halten folgendes fest
  • 4qx² m00 - m11 - m22 m33
  • 4qy² - m00 m11 - m22 m33
  • 4qz² - m00 - m11 m22 m33
  • 4qw² tr(Mq)

28
Sphärische Lineare Interpolation
  • Gegeben sei zwei Einheitsquaternionen q und r und
    ein Parameter t ?0, 1. Dann ist
  • s (q, r, t) (rq-1)tq
  • slerp(q, r, t)
  • q ? sin(?(1 t)) / sin? r ? sin(?t) / sin
    ?
  • mit cos? qxrx qyry qzrz qwrw.
  • Diese Funktion berechnet für t 0, 1 die
    kürzeste Verbindung (Großkreis) auf der
    vierdimensionalen Einheitssphäre
    zwischen q und r.
  • Dies ist für die Interpolation (Animation) von
    Orientierungen von Körpern ideal geeignet.
  • Nicht sehr gut für die Orientierung der Kamera,
    da sich der Camera-up Vektor verändern kann!

29
Transformation mit Quaternionen
  • Vorteile
  • Die Rotation erfolgt direkt um die gewünschte
    Drehachse.
  • Es kann mit dem Verfahren wie SLERP zwischen zwei
    Orientierungen interpoliert werden
  • Die Verkettung von Rotationen ist effizienter.
  • Nachteile
  • Mehr Mathematik
  • Nicht sehr gut für Kameraorientierungen geeignet

30
Anhang A
  • Körper
  • Sei (K, , ) eine Menge mit zwei Verknüpfungen.
    K ist ein Körper, wenn
  • Assoziativgesetz der Multiplikation und der
    Addition gilt
  • Kommutativgesetz der Multiplikation und der
    Addition gilt
  • Nullelement und Einselement existieren
  • Inverse der Addition exsistiert
  • Inverse der Multiplikation exsistiert
  • Schiefkörper
  • Die Multiplikation ist nicht kommutativ

31
Anhang B
  • Vektorprodukt
  • v?u vu sin(v, u)
  • v?u ist orthogonal zu v und u
  • Bilden ein Rechtsystem in der Reihenfolge
  • v, u, v?u.
  • Skalarprodukt
  • u v vu cos(v, u)

32
Literatur
  • Tomas Möller, Erik Haines. Real Time Rendering.
  • Alan Watt. 3D Computergrafik.
  • B.L. van der Waerden. Hamiltons Entdeckung der
    Quaternionen.
  • Peter Meyer-Nieberg. Analysis I. Vorlesung SS2001
Write a Comment
User Comments (0)
About PowerShow.com