• Keine Ergebnisse gefunden

Die Darstellung von Drehungen als sogenannte Quaternionen beruht auf ei-ner speziellen Erweiterung der komplexen Zahlen, wobei die multiplikative Verkn¨upfung entsprechend der Verkettung von Drehungen im Raum nicht kommutativ ist. Dies entspricht der Struktur eines Schiefk¨orpers bzw. eines Divisionsrings (hier¨uber k¨onnen Divisionsalgebren gebildet werden) und im folgenden wird die Algebra der Quaternionen ¨uber den reellen Zahlen mitH bezeichnet (die Bezeichnung ist in der Literatur nicht einheitlich; Klingen-berg/Klein [KK72] verwendet z. B.L). Es gilt:

Satz 15 (Satz von Frobenius)

Jede endlich dimensionale Divisionsalgebra A uber¨ R ist isomorph zu R,C oder H.

Insofern bilden die Quaternionen die einzige und kleinstm¨ogliche Einbet-tung von Rotationen in eine R-Algebrastruktur, denn die Multiplikation in Rund Cist kommutativ.

In der Literatur sind zwei Darstellungsformen f¨ur Quaternionen gebr¨auch-lich. In der Physik, speziell der klassischen Mechanik, wird eine Darstellung von Quaternionen als 2×2-Matrizen ¨uberCbevorzugt und h¨aufig als Cayley-Kleinsche Parameter bezeichnet. Zur Isomorphie zwischen den unit¨aren komplexen 2×2-Matrizen (genauer: Paaren von Matrizen) und den reellen orthogonalen 3×3-Matrizen siehe [Gol89].

Quaternionen k¨onnen alternativ als Erweiterung der komplexen Zahlen eingef¨uhrt werden (siehe z. B. [MM97]), woraus eine einfach zu implementie-rende Darstellung gewonnen werden kann. Zur Implementierung siehe auch direkt Abschnitt 6.4.3.

6.4.1 Cayley-Kleinsche Parameter;

2×2-Matrixdarstellung ¨uber C

Wir gehen zun¨achst auf die Darstellung mittels komplexer 2×2-Matrizen ein und betrachten hierzu den folgenden Satz von Matrizen (Paulische Spin

6.4 Quaternionen (Cayley-Kleinsche Parameter,H) 91 Matrizen):

1=

µ 1 0 0 1

; ρx :=

µ 0 1 1 0

; ρy :=

µ 0 −i

i 0

; ρz :=

µ 1 0 0 −1

Diese sind linear unabh¨angig und die Darstellung eines Punktesp= (p1, p2, p3)∈R3 erfolgt durch die komplexe Matrix der Form

Pˆ =p1ρx+p2ρy+p3ρz=

µ p3 p1−ip2 p1+ip2 −p3

¶ .

F¨ur eine Drehung mit Drehachse d ∈ R3 mit kdk = 1 und Drehwinkel θ definieren wir zudem die folgende Matrix:

Q= cosθ

21+isinθ

2(d1ρx+d2ρy+d3ρz)

Die Drehung eines Vektors bzw. Punktespmit Matrixdarstellung ˆP ist durch das Produkt

P˜ =QP Qˆ a

gegeben. Q ist eine unit¨are komplexe Matrix mit Determinante detQ= 1.

Unit¨are Matrizen sind durch die GleichungQaQ=1=QQadefiniert, wobei Qa = ¯Qt die adjungierte Matrix zu Q bezeichnet mit ¯Q f¨ur die konjugiert komplexe Matrix. Es gilt also insbesondere Qa = Q−1 (vgl. Definition or-thogonaler Matrizen durchRt=R−1). Man kann zeigen, daß die MatrixQ mitα, β∈Cimmer von der Gestalt

Q=

µ α β

−β¯ α¯

ist, wobei zus¨atzlich αα¯+ββ¯= 1

gelten muß. Durch diese Bedingung werden die vier Freiheitsgrade bei der Wahl der Komponenten von α und β auf die drei Freiheitsgrade bei r¨aumlichen Drehungen eingeschr¨ankt.

6.4.2 R4-Vektordarstellung von H

Im folgenden wird nun die alternative Betrachtungsweise von Quaternionen als Erweiterung der komplexen Zahlen vorgestellt. Wie ¨ublich ist i2 =−1.

Zudem f¨uhren wir zwei neue Basiselemente j und kein, wobei gilt:

i2 =j2=k2=ijk=−1 (6.2) ij =−ji=k, jk=−kj=i, ki=−ik =j . (6.3)

Quaternionen besitzen nun eine Darstellung als ˆq = q0 +q1i+q2j +q3k mitqi ∈R. Zur Vereinfachung der Schreibweise f¨uhren wir den Vektor I= (i, j, k) ein, der den imagin¨aren Basisanteil bzw. Unterraum repr¨asentiert.

Mit q := (q1, q2, q3) ∈R3 ergibt sich damit ˆq = q0+hq,Ii. Aus (6.3) folgt direkt, daß die Quaternionenmultiplikation, entsprechend der Verkettung von Drehungen, nicht kommutativ ist. Das Produkt zweier Quaternionen a, bergibt sich insgesamt wie folgt:

ˆ

aˆb = (a0+a1i+a2j+a3k)(b0+b1i+b2j+b3k)

= (a0b0−a1b1−a2b2−a3b3)+

(a0b1+a1b0+a2b3−a3b2)i+

(a0b2−a1b3+a2b0+a3b1)j+

(a0b3+a1b2−a2b1+a3b0)k

= (a0b0− ha, bi)+

(a0b1+b0a1+a2b3−a3b2)i+

(a0b2+b0a2+a3b1−a1b3)j+

(a0b3+b0a3+a1b2−a2b1)k

= (a0b0− ha, bi) +ha0b+b0a+a×b,Ii (6.4) Die Darstellung eines Punktes bzw. Vektors p im dreidimensionalen Raum (d.h.p∈R3) ergibt sich aus

ˆ

p=p1i+p2j+p3k=hp,Ii (6.5) und die Darstellung einer Rotation mit Drehachse d ∈ R3,kdk = 1 und Drehwinkel θaus

ˆ

q= cosθ

2 + sinθ

2d .ˆ (6.6)

Das Produkt ˜p := ˆqpˆq¯ ist die Quaternionendarstellung f¨ur den bzgl. der Drehachsedum den Winkel θgedrehten Punkt p. Das konjugierte Quater-nion ist definiert durch ¯q:=q0−q1i−q2j−q3k=q0− hq,Ii. Man beachte, daß die zu ˆq ¨aquivalente Drehung um die Achse−dund den Winkel 2π−θ eine andere Quaternionendarstellung besitzt. Eine gegebene Drehung kann also im allgemeinen durch genau zwei verschiedene Quaternionen erzeugt werden. F¨ur die einer Drehung entsprechenden Quaternionen ˆqq¯gilt wegen cos2α+ sin2α = 1 und kdk = 1 (vgl. auch Matrixdarstellung von Quater-nionen QQa =1):

ˆ

qq¯=q02+q12+q22+q32= 1 = ¯qqˆ (6.7) F¨ur die Drehungsoperation ˜p = ˆqp¯ˆq wird nun eine explizite Darstellung abgeleitet (siehe auch die nachfolgende Nebenrechnung). Man beachte, daß

6.4 Quaternionen (Cayley-Kleinsche Parameter,H) 93 wieder ein rein imagin¨arer Anteil entsteht, welcher der Darstellung eines Punktes entspricht.

qpˆq¯(6.4)=

p mitp0=0

z }| {

(−hq, pi+hq0p+q×p,Ii)

¯ q

z }| { (q0− hq,Ii)

(6.4)

= –q0hq, pi+hq0p+q×p, qi+

hhq, piq+q0(q0p+q×p) + (q0p+q×p)×(−q),Ii

= –q0hq, pi+q0hp, qi+hq×p, qi+

hhq, piq+q20p+q0(q×p) +q0(p×(−q)),Ii+ h(q×p)×(−q),Ii

(6.8)

= hhq, piq+q20p+ 2q0(q×p),Ii+hq×(q×p),Ii

(6.9)

= hhq, piq+q20p+ 2q0(q×p),Ii+h(q20−1)p+hq, piq,Ii

= h2hq, piq+ (2q20−1)p+ 2q0(q×p),Ii

= 2hhq, piq+ (q02−0,5)p+q0(q×p),Ii

Nebenrechnung zu (6.8):

q×(q×p) = q×(q2p3−q3p2, q3p1−q1p3, q1p2−q2p1)

= (q2(q1p2−q2p1)−q3(q3p1−q1p3), q3(q2p3−q3p2)−q1(q1p2−q2p1), q1(q3p1−q1p3)−q2(q2p3−q3p2))

= ((−q22−q23)p1+ (q2p2+q3p3)q1, (−q23−q21)p2+ (q3p3+q1p1)q2, (−q21−q22)p3+ (q1p1+q2p2)q3)

(6.9)

(6.7)

= ((q20−1 +q12)p1+ (q2p2+q3p3)q1, (q20−1 +q22)p2+ (q1p1+q3p3)q2, (q20−1 +q32)p3+ (q1p1+q2p2)q3)

= (q02−1)p+hq, piq

Es wird nun hergeleitet, wie die Matrixdarstellung einer Rotation aus der Quaternionendarstellung abgeleitet werden kann. Hierzu betrachten wir zun¨achst nochmals das Produkt zweier Quaternionen:

ˆ

aˆb = (a0b0−a1b1−a2b2−a3b3)+

(a0b1+a1b0+a2b3−a3b2)i+

(a0b2−a1b3+a2b0+a3b1)j+

(a0b3+a1b2−a2b1+a3b0)k

Bez¨uglich der Basis (1, i, j, k) des Quaternionenraumes kann diese Multi-plikation durch eine 4×4-Matrix ausgedr¨uckt werden, wobei die Quaternio-nenmultiplikation mit a von links bzw. mit b von rechts jeweils durch eine MatrixL(a) bzw.R(b) beschrieben ist:

ˆ

aˆb=L(a)b=



a0 −a1 −a2 −a3

a1 a0 −a3 a2 a2 a3 a0 −a1 a3 −a2 a1 a0



b=R(b)a=



b0 −b1 −b2 −b3

b1 b0 b3 −b2 b2 −b3 b0 b1 b3 b2 −b1 b0



a

Damit ergibt sich f¨ur die Drehungsoperation ˜p = ˆqp¯ˆq die folgende 4× 4-Matrixdarstellung:

ˆ

qpˆq¯=L(ˆq)ˆp¯q =L(ˆq)R(¯q)ˆp= (6.10)



1 0 0 0

0 q02+q12−q22−q32 2(q1q2−q0q3) 2(q1q3+q0q2) 0 2(q1q2+q0q3) q02−q12+q22−q32 2(q2q3−q0p1) 0 2(q1q3−q0q2) 2(q2q3+q0q1) q02−q12−q22+q32





 0 p1 p2 p3



Der Matrixeintrag (1,1) ergibt sich aus q02 +q12+q22 +q32(6.7)= 1. Die 3× 3-Untermatrix des imagin¨aren Basisanteils i, j, kentspricht der Rotationsma-trix imR3.

6.4.3 Implementierung der Quaternionenalgebra H

Die Implementierung kann mittels eines Skalarsw∈Rf¨ur den reellen Anteil und eines Vektorsv ∈R3 f¨ur die Koeffizienten der imagin¨aren Anteilei, j, k erfolgen. Dies hat den Vorteil, daß die Basisoperationen f¨ur Quaternionen aufbauend auf dem ¨ublichen Skalar- und Vektorprodukt des R3 implemen-tiert werden k¨onnen. F¨ur eine Drehung mit Drehachse d, kdk = 1 und Winkel θergibt sich nach (6.6):

w:= cosθ

2; v:= sinθ 2d

Die Transformation eines Punktes p ∈ R3 kann dann mit (6.8) wie folgt berechnet werden:

˜

p:= 2(hv, piv+ (w2−0.5)p+w(v×p))

Eine Verkettung zweier Rotationen, siehe (6.4), ist gegeben durch wgesamt:=w1w2− hv1, v2i

vgesamt:=w1v2+w2v1+v1×v2 .

Die Konvertierung von der Quaternionendarstellung in eine reelle 3× 3-Ro-tationsmatrix ergibt sich aus (6.10).

Kapitel 7

Infinitesimale Drehungen

In Kapitel 6 wurden Eigenschaften r¨aumlicher Drehungen zusammengefaßt und verschiedene Darstellungsm¨oglichkeiten diskutiert. In diesem Abschnitt wird nun untersucht, welche zus¨atzlichen Eigenschaften f¨ur sehr kleine Dre-hungen gelten. Eine infinitesimale Drehung ist einen Drehungsoperation, durch welche die Vektorkomponenten nur geringf¨ugig ver¨andert werden, d.

h. es soll gelten:

˜

xi =xii1x1i2x2i3x3 . (7.1)

˜

x bezeichnet im folgenden immer das Bild von x unter einer infinitesi-malen Drehung. Dieεij werden als infinitesimale Gr¨oßen angesehen, so daß in allen folgenden Rechnungen nur die erste, nichtverschwindende Ordnung derεij ber¨ucksichtigt wird. Gleichheit unter Vernachl¨assigung von Termen h¨oherer Ordnung wird durch .

= gekennzeichnet. Die komponentenweisen Beziehungen ˜xi=xi+P

jεijxj lauten in Matrixschreibweise ˜x= (1+εεε)x.

Eigenschaft 16

Infinitesimale Drehungen verhalten sich kommutativ.

Beweis:

Seien (1+εεε1) und (1+εεε2) infinitesimale Drehungen. Damit folgt:

(1+εεε1)(1+εεε2) =12+εεε11+1εεε2+εεε1εεε2 .

=1+εεε1+εεε2

¤ Eigenschaft 17

Das inverse Element zu (1+εεε) ist (1−εεε).

Beweis:

Dies folgt aus (1+εεε)(1−εεε) =12+εεε1−1εεε+εεε2 .

=1

¤ Eigenschaft 18

Jede infinitesimale DrehungR= (1+εεε) ist von der Form R =1+

0 γ −β

−γ 0 α

β −α 0

=

1 γ −β

−γ 1 α

β −α 1

.

95

Beweis:

Orthogonale Matrizen sind durch R−1 =Rt definiert, so daß f¨ur infinitesi-male Drehungen gilt: 1−εεε .

=R−1 =Rt =1+εεεt und damit folgt−εεε .

=εεεt, d. h. εεε ist antisymmetrisch. F¨ur jede antisymmetrische Matrix εεε gilt nun:

εii= 0 und εij =−εji f¨uri6=j.

Die Vorzeichenverteilung kann beliebig gew¨ahlt werden. Im Hinblick auf eine einfache Berechnung der Koordinatentransformation als Vektorprodukt (siehe Eigenschaft 19), wird sie jedoch wie oben angegeben vereinbart.

¤ Eigenschaft 18 kann auch angelehnt an die Darstellung durch Euler-sche Winkel abgeleitet werden. F¨ur eine infinitesimale Drehung sind die eindeutig bestimmten Eulerschen Winkel nach Satz 14 bzgl. des Drehach-sensystems z, x, z jedoch nicht notwendigerweise klein. In diesem Falle ist die Betrachtung des Drehachsensystems x, y, z g¨unstiger, da die Bilder der Koordinatenachsen nur geringf¨ugig von ihren Urbildern abweichen. Zudem sind infinitesimale Drehungen nach Eigenschaft 16 kommutativ und die Rei-henfolge der Operationen damit unerheblich.

F¨ur infinitesimale Winkelϕergeben sich f¨ur cosϕund sinϕdie folgenden Linearisierungen aus der Reihenentwicklung der Funktionen:

sinϕ=ϕ1−ϕ3 3! +ϕ5

5! −. . . .

=ϕ cosϕ=ϕ0− ϕ2

2! +ϕ4

4! −. . . .

= 1

Aus den Matrixdarstellungen f¨ur die einzelnen Teildrehungen folgt damit:

1 0 0

0 cosϕ −sinϕ 0 sinϕ cosϕ

cosβ 0 −sinβ

0 1 0

sinβ 0 cosβ

cosψ −sinψ 0 sinψ cosψ 0

0 0 1

 .

=

1 0 0

0 1 −ϕ

0 ϕ 1

1 0 −β

0 1 0

β 0 1

1 −ψ 0

ψ 1 0

0 0 1

 .

=

1 −ψ −β

ψ 1 −ϕ

β ϕ 1

 (7.2) Mitψ=−γ und ϕ=−α entspricht dies der Form nach Eigenschaft 18:

R=1+

0 γ −β

−γ 0 α

β −α 0

=1+εεε . Eigenschaft 19

F¨ur die ¨Anderung ∆x eines Vektors x unter einer infinitesimalen Drehung (1+εεε)in der obigen Darstellung gilt ∆x= (α, β, γ)×x.

7.1 H¨ullk¨orpereigenschaft infinitesimaler Rotationen 97 Beweis:

Die ¨Anderung ∆x eines Vektors x hat nach Gleichung 7.1 die Form ∆x =

˜

x−x=εεεx. Mit Eigenschaft 18 ist damit

∆x= (x3β−x2γ, x1γ−x3α, x2α−x1β) = (α, β, γ)×x

¤ Eigenschaft 20

Eine infinitesimale Rotation eines konvexen Objektes erzeugt einen H¨ullk¨or-per f¨ur dieses Objekt unter einer orthogonalen Transformation.

Der Beweis dieser f¨ur das lokale Optimierungsverfahren zentralen Eigen-schaft wird im folgenden Abschnitt gegeben. EigenEigen-schaft 20 entspricht der Aussage von Satz 31.

7.1 H¨ ullk¨ orpereigenschaft infinitesimaler