Ψ Die Informatikseite

Menü
Unterabschnitte

Homogene Koordinaten

Translation in homogenen Koordinaten

Rotationen lassen sich mit $3\times 3$-Matrizen beschreiben. Translationen jedoch nicht. Wir können jedoch auf einfachste Weise unsere Matrix auf eine $4\times 4$-Matrix erweitern, sowie auch $4D$-Korridinaten verwenden und können in einem solchen System auch eine Translation darstellen. Die Verschiebung um den Vektor $(x_{0},y_{0},z_{0})^{T}$ kann wie folgt dargestellt werden:

\begin{displaymath}\left(
\begin {array}{c}
x'\\
y'\\
z'\\
1\\
\end {array}\...
...}{c}
x+x_{0}\\
y+y_{0}\\
z+z_{0}\\
1\\
\end {array}\right)
\end{displaymath}

Dies ist auch schon die Schreibweise in homogenen Koordinaten.

Aufbau der homogenen Koordinaten

Ein Vektor in homogenen Koordinaten hat immer eine $1$ als viertes Element:

\begin{displaymath}
\left(
\begin {array}{c}
x\\
y\\
z\\
\end {array}\right)
...
...eft(
\begin {array}{c}
x\\
y\\
z\\
1\\
\end {array}\right)
\end{displaymath}

Die Überführung einer Rotationsmatrix und eines Translationsvektors in eine Matrix in homogenen Koordinaten geschieht wie folgt:

\begin{displaymath}
\left(
\begin {array}{ccc}
a&b&c\\
d&e&f\\
g&h&i\\
\end {...
...
d&e&f&y_{0}\\
g&h&i&z_{0}\\
0&0&0&1\\
\end {array}\right)
\end{displaymath}

Auch eine Skalierung um einen Faktor $f$ läßt sich darstellen

\begin{displaymath}
\left(
\begin {array}{ccc}
f&0&0\\
0&f&0\\
0&0&f\\
\end {...
...y}{ccc}
f\cdot x\\
f\cdot y\\
f\cdot z\\
\end {array}\right)\end{displaymath}

Es lassen sich auch Perspektivische Projektionen darstellen. Hier die Projektion auf die $x,y$-Ebene.

\begin{displaymath}
\underbrace{\left(
\begin {array}{cccc}
1&0&0&0\\
0&1&0&0\\...
...\\
\end {array}\right)}_{\mbox{Perspektische Transformation}}
\end{displaymath}

Weiterhin ist eine Textur - Interpolation möglich sowie die Linearkombination von Transformationen.

Nachteile von homogenen Koordinaten und Rotationsmatrizen

  • $4\times 4$-Matritzen müssen berechnet werden.
  • Beschränkt man sich auf eine normale $3\times 3$-Matrix gibt es immer noch $9$ Kooridinaten für $3$ Freiheitsgerade
    • Speicherplatzverschwendung
    • Numerischer Drift
    • Wenig inituitiv, auch Matritzen möglich, die gar keine Rotationsmatritzen sind, sondern etwas ganz anderes als erwünscht tun. (Wir erlauben ja alle lineare Abbildungen.)