Was ist quaternion?

Quaternionen

Quaternionen sind eine Erweiterung der komplexen Zahlen, die von William Rowan Hamilton im Jahr 1843 entdeckt wurden. Sie finden breite Anwendung in der dreidimensionalen Rotation, insbesondere in der Computergrafik, Robotik und Navigation.

Definition

Ein Quaternion ist eine Zahl der Form:

q = a + bi + cj + dk

wobei a, b, c und d reelle Zahlen sind und i, j und k die Basiselemente sind, die folgende Beziehungen erfüllen:

  • i² = j² = k² = -1
  • ij = k, ji = -k
  • jk = i, kj = -i
  • ki = j, ik = -j

Ein Quaternion kann auch als Paar (a, v) dargestellt werden, wobei a der reelle Teil (oder Skalarteil) und v = (b, c, d) der Vektor-Teil ist.

Operationen

Addition und Subtraktion

Die Addition und Subtraktion von Quaternionen erfolgt komponentenweise:

q1 + q2 = (a1 + a2) + (b1 + b2)i + (c1 + c2)j + (d1 + d2)k

Multiplikation

Die Multiplikation von Quaternionen ist nicht kommutativ. Sie wird mithilfe der oben genannten Beziehungen der Basiselemente durchgeführt. Sie kann auch unter Verwendung des Skalar- und Vektorprodukts ausgedrückt werden:

q1 * q2 = (a1, v1) * (a2, v2) = (a1a2 - v1v2, a1v2 + a2v1 + v1 × v2)

Dabei steht ⋅ für das Skalarprodukt und × für das Kreuzprodukt.

Konjugation

Das Konjugat eines Quaternions q = a + bi + cj + dk ist definiert als:

q* = a - bi - cj - dk

Norm

Die Norm (oder der Betrag) eines Quaternions q = a + bi + cj + dk ist:

|q| = √(a² + b² + c² + d²)

Inverses

Das Inverse eines Quaternions q (wenn |q| ≠ 0) ist:

q⁻¹ = q* / |q|²

Einheitsquaternionen

Ein Quaternion mit der Norm 1 wird als Einheitsquaternion bezeichnet. Einheitsquaternionen werden häufig verwendet, um Rotationen darzustellen.

Rotationen

Einheitsquaternionen können verwendet werden, um eine Rotation um eine Achse u um einen Winkel θ darzustellen:

q = cos(θ/2) + sin(θ/2)(ux i + uy j + uz k)

Wobei u = (ux, uy, uz) der Einheitsvektor der Rotationsachse ist.

Ein Punkt p im Raum kann durch einen Vektor p dargestellt werden, den man sich als Quaternion mit Realteil 0 vorstellt (0 + px i + py j + pz k). Die Rotation des Punktes p um die durch das Quaternion q definierte Rotation ist dann:

p' = q p q⁻¹

Vorteile gegenüber Eulerwinkeln und Rotationsmatrizen

  • Vermeidung von Gimbal Lock: Quaternionen leiden nicht unter dem Problem des Gimbal Lock, das bei Eulerwinkeln auftreten kann.
  • Kompaktere Darstellung: Sie benötigen nur vier Zahlen zur Darstellung einer Rotation, während Rotationsmatrizen neun benötigen.
  • Interpolation: Sphärische lineare Interpolation (slerp) kann verwendet werden, um sanfte Übergänge zwischen Rotationen mit Quaternionen zu erzeugen.

Anwendungen

  • Computergrafik: Darstellung und Interpolation von Objektrotationen.
  • Robotik: Steuerung der Orientierung von Robotern.
  • Navigation: Berechnung und Darstellung von Orientierungen in Navigationssystemen.
  • Spielentwicklung: Darstellung von Kamerabewegungen und Objektrotationen.

Weitere Informationen: