3751 lines
61 KiB
Plaintext
3751 lines
61 KiB
Plaintext
#LyX 2.0 created this file. For more info see http://www.lyx.org/
|
||
\lyxformat 413
|
||
\begin_document
|
||
\begin_header
|
||
\textclass article
|
||
\use_default_options false
|
||
\begin_modules
|
||
theorems-std
|
||
\end_modules
|
||
\maintain_unincluded_children false
|
||
\language english
|
||
\language_package default
|
||
\inputencoding auto
|
||
\fontencoding global
|
||
\font_roman times
|
||
\font_sans default
|
||
\font_typewriter default
|
||
\font_default_family rmdefault
|
||
\use_non_tex_fonts false
|
||
\font_sc false
|
||
\font_osf false
|
||
\font_sf_scale 100
|
||
\font_tt_scale 100
|
||
|
||
\graphics default
|
||
\default_output_format default
|
||
\output_sync 0
|
||
\bibtex_command default
|
||
\index_command default
|
||
\paperfontsize 12
|
||
\spacing single
|
||
\use_hyperref false
|
||
\papersize default
|
||
\use_geometry true
|
||
\use_amsmath 1
|
||
\use_esint 0
|
||
\use_mhchem 1
|
||
\use_mathdots 1
|
||
\cite_engine basic
|
||
\use_bibtopic false
|
||
\use_indices false
|
||
\paperorientation portrait
|
||
\suppress_date false
|
||
\use_refstyle 0
|
||
\index Index
|
||
\shortcut idx
|
||
\color #008000
|
||
\end_index
|
||
\leftmargin 1in
|
||
\topmargin 1in
|
||
\rightmargin 1in
|
||
\bottommargin 1in
|
||
\secnumdepth 3
|
||
\tocdepth 3
|
||
\paragraph_separation indent
|
||
\paragraph_indentation default
|
||
\quotes_language english
|
||
\papercolumns 1
|
||
\papersides 1
|
||
\paperpagestyle default
|
||
\tracking_changes false
|
||
\output_changes false
|
||
\html_math_output 0
|
||
\html_css_as_file 0
|
||
\html_be_strict false
|
||
\end_header
|
||
|
||
\begin_body
|
||
|
||
\begin_layout Title
|
||
Lie Groups for Beginners
|
||
\end_layout
|
||
|
||
\begin_layout Author
|
||
Frank Dellaert
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
\begin_inset CommandInset include
|
||
LatexCommand include
|
||
filename "macros.lyx"
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Section
|
||
Motivation: Rigid Motions in the Plane
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
We will start with a small example of a robot moving in a plane, parameterized
|
||
by a
|
||
\emph on
|
||
2D pose
|
||
\emph default
|
||
|
||
\begin_inset Formula $(x,\, y,\,\theta)$
|
||
\end_inset
|
||
|
||
.
|
||
When we give it a small forward velocity
|
||
\begin_inset Formula $v_{x}$
|
||
\end_inset
|
||
|
||
, we know that the location changes as
|
||
\begin_inset Formula
|
||
\[
|
||
\dot{x}=v_{x}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
The solution to this trivial differential equation is, with
|
||
\begin_inset Formula $x_{0}$
|
||
\end_inset
|
||
|
||
the initial
|
||
\begin_inset Formula $x$
|
||
\end_inset
|
||
|
||
-position of the robot,
|
||
\begin_inset Formula
|
||
\[
|
||
x_{t}=x_{0}+v_{x}t
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
A similar story holds for translation in the
|
||
\begin_inset Formula $y$
|
||
\end_inset
|
||
|
||
direction, and in fact for translations in general:
|
||
\begin_inset Formula
|
||
\[
|
||
(x_{t},\, y_{t},\,\theta_{t})=(x_{0}+v_{x}t,\, y_{0}+v_{y}t,\,\theta_{0})
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
Similarly for rotation we have
|
||
\begin_inset Formula
|
||
\[
|
||
(x_{t},\, y_{t},\,\theta_{t})=(x_{0},\, y_{0},\,\theta_{0}+\omega t)
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
where
|
||
\begin_inset Formula $\omega$
|
||
\end_inset
|
||
|
||
is angular velocity, measured in
|
||
\begin_inset Formula $rad/s$
|
||
\end_inset
|
||
|
||
in counterclockwise direction.
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
\begin_inset Float figure
|
||
placement h
|
||
wide false
|
||
sideways false
|
||
status collapsed
|
||
|
||
\begin_layout Plain Layout
|
||
\align center
|
||
\begin_inset Graphics
|
||
filename images/circular.pdf
|
||
|
||
\end_inset
|
||
|
||
|
||
\begin_inset Caption
|
||
|
||
\begin_layout Plain Layout
|
||
Robot moving along a circular trajectory.
|
||
\end_layout
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
However, if we combine translation and rotation, the story breaks down!
|
||
We cannot write
|
||
\begin_inset Formula
|
||
\[
|
||
(x_{t},\, y_{t},\,\theta_{t})=(x_{0}+v_{x}t,\, y_{0}+v_{y}t,\,\theta_{0}+\omega t)
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
The reason is that, if we move the robot a tiny bit according to the velocity
|
||
vector
|
||
\begin_inset Formula $(v_{x},\, v_{y},\,\omega)$
|
||
\end_inset
|
||
|
||
, we have (to first order)
|
||
\begin_inset Formula
|
||
\[
|
||
(x_{\delta},\, y_{\delta},\,\theta_{\delta})=(x_{0}+v_{x}\delta,\, y_{0}+v_{y}\delta,\,\theta_{0}+\omega\delta)
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
but now the robot has rotated, and for the next incremental change, the
|
||
velocity vector would have to be rotated before it can be applied.
|
||
In fact, the robot will move on a
|
||
\emph on
|
||
circular
|
||
\emph default
|
||
trajectory.
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
The reason is that
|
||
\emph on
|
||
translation and rotation do not commute
|
||
\emph default
|
||
: if we rotate and then move we will end up in a different place than if
|
||
we moved first, then rotated.
|
||
In fact, someone once said (I forget who, kudos for who can track down
|
||
the exact quote):
|
||
\end_layout
|
||
|
||
\begin_layout Quote
|
||
If rotation and translation commuted, we could do all rotations before leaving
|
||
home.
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
\begin_inset Float figure
|
||
placement h
|
||
wide false
|
||
sideways false
|
||
status open
|
||
|
||
\begin_layout Plain Layout
|
||
\align center
|
||
\begin_inset Graphics
|
||
filename images/n-steps.pdf
|
||
|
||
\end_inset
|
||
|
||
|
||
\begin_inset Caption
|
||
|
||
\begin_layout Plain Layout
|
||
\begin_inset CommandInset label
|
||
LatexCommand label
|
||
name "fig:n-step-program"
|
||
|
||
\end_inset
|
||
|
||
Approximating a circular trajectory with
|
||
\begin_inset Formula $n$
|
||
\end_inset
|
||
|
||
steps.
|
||
\end_layout
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\end_inset
|
||
|
||
To make progress, we have to be more precise about how the robot behaves.
|
||
Specifically, let us define composition of two poses
|
||
\begin_inset Formula $T_{1}$
|
||
\end_inset
|
||
|
||
and
|
||
\begin_inset Formula $T_{2}$
|
||
\end_inset
|
||
|
||
as
|
||
\begin_inset Formula
|
||
\[
|
||
T_{1}T_{2}=(x_{1},\, y_{1},\,\theta_{1})(x_{2},\, y_{2},\,\theta_{2})=(x_{1}+\cos\theta_{1}x_{2}-\sin\theta y_{2},\, y_{1}+\sin\theta_{1}x_{2}+\cos\theta_{1}y_{2},\,\theta_{1}+\theta_{2})
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
This is a bit clumsy, so we resort to a trick: embed the 2D poses in the
|
||
space of
|
||
\begin_inset Formula $3\times3$
|
||
\end_inset
|
||
|
||
matrices, so we can define composition as matrix multiplication:
|
||
\begin_inset Formula
|
||
\[
|
||
T_{1}T_{2}=\left[\begin{array}{cc}
|
||
R_{1} & t_{1}\\
|
||
0 & 1
|
||
\end{array}\right]\left[\begin{array}{cc}
|
||
R_{2} & t_{2}\\
|
||
0 & 1
|
||
\end{array}\right]=\left[\begin{array}{cc}
|
||
R_{1}R_{2} & R_{1}t_{2}+t_{1}\\
|
||
0 & 1
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
where the matrices
|
||
\begin_inset Formula $R$
|
||
\end_inset
|
||
|
||
are 2D rotation matrices defined as
|
||
\begin_inset Formula
|
||
\[
|
||
R=\left[\begin{array}{cc}
|
||
\cos\theta & -\sin\theta\\
|
||
\sin\theta & \cos\theta
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
Now a
|
||
\begin_inset Quotes eld
|
||
\end_inset
|
||
|
||
tiny
|
||
\begin_inset Quotes erd
|
||
\end_inset
|
||
|
||
motion of the robot can be written as
|
||
\begin_inset Formula
|
||
\[
|
||
T(\delta)=\left[\begin{array}{ccc}
|
||
\cos\omega\delta & -\sin\omega\delta & v_{x}\delta\\
|
||
\sin\omega\delta & \cos\omega\delta & v_{y}\delta\\
|
||
0 & 0 & 1
|
||
\end{array}\right]\approx\left[\begin{array}{ccc}
|
||
1 & -\omega\delta & v_{x}\delta\\
|
||
\omega\delta & 1 & v_{y}\delta\\
|
||
0 & 0 & 1
|
||
\end{array}\right]=I+\delta\left[\begin{array}{ccc}
|
||
0 & -\omega & v_{x}\\
|
||
\omega & 0 & v_{y}\\
|
||
0 & 0 & 0
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
Let us define the
|
||
\emph on
|
||
2D twist
|
||
\emph default
|
||
vector
|
||
\begin_inset Formula $\xi=(v,\omega)$
|
||
\end_inset
|
||
|
||
, and the matrix above as
|
||
\begin_inset Formula
|
||
\[
|
||
\xihat\define\left[\begin{array}{ccc}
|
||
0 & -\omega & v_{x}\\
|
||
\omega & 0 & v_{y}\\
|
||
0 & 0 & 0
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
If we wanted
|
||
\begin_inset Formula $t$
|
||
\end_inset
|
||
|
||
to be large, we could split up
|
||
\begin_inset Formula $t$
|
||
\end_inset
|
||
|
||
into smaller timesteps, say
|
||
\begin_inset Formula $n$
|
||
\end_inset
|
||
|
||
of them, and compose them as follows:
|
||
\begin_inset Formula
|
||
\[
|
||
T(t)\approx\left(I+\frac{t}{n}\xihat\right)\ldots\mbox{n times}\ldots\left(I+\frac{t}{n}\xihat\right)=\left(I+\frac{t}{n}\xihat\right)^{n}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
The result is shown in Figure
|
||
\begin_inset CommandInset ref
|
||
LatexCommand ref
|
||
reference "fig:n-step-program"
|
||
|
||
\end_inset
|
||
|
||
.
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
Of course, the perfect solution would be obtained if we take
|
||
\begin_inset Formula $n$
|
||
\end_inset
|
||
|
||
to infinity:
|
||
\begin_inset Formula
|
||
\[
|
||
T(t)=\lim_{n\rightarrow\infty}\left(I+\frac{t}{n}\xihat\right)^{n}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
For real numbers, this series is familiar and is actually a way to compute
|
||
the exponential function:
|
||
\begin_inset Formula
|
||
\[
|
||
e^{x}=\lim_{n\rightarrow\infty}\left(1+\frac{x}{n}\right)^{n}=\sum_{k=0}^{\infty}\frac{x^{k}}{k!}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
The series can be similarly defined for square matrices, and the final result
|
||
is that we can write the motion of a robot along a circular trajectory,
|
||
resulting from the 2D twist
|
||
\begin_inset Formula $\xi=(v,\omega)$
|
||
\end_inset
|
||
|
||
|
||
\begin_inset Formula $ $
|
||
\end_inset
|
||
|
||
as the
|
||
\emph on
|
||
matrix exponential
|
||
\emph default
|
||
of
|
||
\begin_inset Formula $\xihat$
|
||
\end_inset
|
||
|
||
:
|
||
\begin_inset Formula
|
||
\[
|
||
T(t)=e^{t\xihat}\define\lim_{n\rightarrow\infty}\left(I+\frac{t}{n}\xihat\right)^{n}=\sum_{k=0}^{\infty}\frac{t^{k}}{k!}\xihat^{k}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
We call this mapping from 2D twists matrices
|
||
\begin_inset Formula $\xihat$
|
||
\end_inset
|
||
|
||
to 2D rigid transformations the
|
||
\emph on
|
||
exponential map.
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
The above has all elements of Lie group theory.
|
||
We call the space of 2D rigid transformations, along with the composition
|
||
operation, the
|
||
\emph on
|
||
special Euclidean group
|
||
\emph default
|
||
|
||
\begin_inset Formula $\SEtwo$
|
||
\end_inset
|
||
|
||
.
|
||
It is called a Lie group because it is simultaneously a topological group
|
||
and a manifold, which implies that the multiplication and the inversion
|
||
operations are smooth.
|
||
The space of 2D twists, together with a special binary operation to be
|
||
defined below, is called the Lie algebra
|
||
\begin_inset Formula $\setwo$
|
||
\end_inset
|
||
|
||
associated with
|
||
\begin_inset Formula $\SEtwo$
|
||
\end_inset
|
||
|
||
.
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
\begin_inset Newpage pagebreak
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Section
|
||
Basic Lie Group Concepts
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
We now define the concepts illustrated above, introduce some notation, and
|
||
see what we can say in general.
|
||
After this we then introduce the most commonly used Lie groups and their
|
||
Lie algebras.
|
||
\end_layout
|
||
|
||
\begin_layout Subsection
|
||
A Manifold and a Group
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
A
|
||
\series bold
|
||
Lie group
|
||
\series default
|
||
|
||
\begin_inset Formula $G$
|
||
\end_inset
|
||
|
||
is both a group
|
||
\emph on
|
||
and
|
||
\emph default
|
||
a manifold that possesses a smooth group operation.
|
||
Associated with it is a
|
||
\series bold
|
||
Lie Algebra
|
||
\series default
|
||
|
||
\begin_inset Formula $\gg$
|
||
\end_inset
|
||
|
||
which, loosely speaking, can be identified with the tangent space at the
|
||
identity and completely defines how the groups behaves around the identity.
|
||
There is a mapping from
|
||
\begin_inset Formula $\gg$
|
||
\end_inset
|
||
|
||
back to
|
||
\begin_inset Formula $G$
|
||
\end_inset
|
||
|
||
, called the
|
||
\series bold
|
||
exponential map
|
||
\series default
|
||
|
||
\begin_inset Formula
|
||
\[
|
||
\exp:\gg\rightarrow G
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
which is typically a many-to-one mapping.
|
||
The corresponding inverse can be define locally around the origin and hence
|
||
is a
|
||
\begin_inset Quotes eld
|
||
\end_inset
|
||
|
||
logarithm
|
||
\begin_inset Quotes erd
|
||
\end_inset
|
||
|
||
|
||
\begin_inset Formula
|
||
\[
|
||
\log:G\rightarrow\gg
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
that maps elements in a neighborhood of
|
||
\begin_inset Formula $id$
|
||
\end_inset
|
||
|
||
in G to an element in
|
||
\begin_inset Formula $\gg$
|
||
\end_inset
|
||
|
||
.
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
An important family of Lie groups are the matrix Lie groups, whose elements
|
||
are
|
||
\begin_inset Formula $n\times n$
|
||
\end_inset
|
||
|
||
invertible matrices.
|
||
The set of all such matrices, together with the matrix multiplication,
|
||
is called the general linear group
|
||
\begin_inset Formula $GL(n)$
|
||
\end_inset
|
||
|
||
of dimension
|
||
\begin_inset Formula $n$
|
||
\end_inset
|
||
|
||
, and any closed subgroup of it is a
|
||
\series bold
|
||
matrix Lie group
|
||
\series default
|
||
.
|
||
Most if not all Lie groups we are interested in will be matrix Lie groups.
|
||
\end_layout
|
||
|
||
\begin_layout Subsection
|
||
Lie Algebra
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
The Lie Algebra
|
||
\begin_inset Formula $\gg$
|
||
\end_inset
|
||
|
||
is called an algebra because it is endowed with a binary operation, the
|
||
|
||
\series bold
|
||
Lie bracket
|
||
\series default
|
||
|
||
\begin_inset Formula $[X,Y]$
|
||
\end_inset
|
||
|
||
, the properties of which are closely related to the group operation of
|
||
|
||
\begin_inset Formula $G$
|
||
\end_inset
|
||
|
||
.
|
||
For example, for algebras associated with matrix Lie groups, the Lie bracket
|
||
is given by
|
||
\begin_inset Formula $[A,B]\define AB-BA$
|
||
\end_inset
|
||
|
||
.
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
The relationship of the Lie bracket to the group operation is as follows:
|
||
for commutative Lie groups vector addition
|
||
\begin_inset Formula $X+Y$
|
||
\end_inset
|
||
|
||
in
|
||
\begin_inset Formula $\gg$
|
||
\end_inset
|
||
|
||
mimicks the group operation.
|
||
For example, if we have
|
||
\begin_inset Formula $Z=X+Y$
|
||
\end_inset
|
||
|
||
in
|
||
\begin_inset Formula $\gg$
|
||
\end_inset
|
||
|
||
, when mapped backed to
|
||
\begin_inset Formula $G$
|
||
\end_inset
|
||
|
||
via the exponential map we obtain
|
||
\begin_inset Formula
|
||
\[
|
||
e^{Z}=e^{X+Y}=e^{X}e^{Y}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
However, this does
|
||
\emph on
|
||
not
|
||
\emph default
|
||
hold for non-commutative Lie groups:
|
||
\begin_inset Formula
|
||
\[
|
||
Z=\log(e^{X}e^{Y})\neq X+Y
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
Instead,
|
||
\begin_inset Formula $Z$
|
||
\end_inset
|
||
|
||
can be calculated using the Baker-Campbell-Hausdorff (BCH) formula
|
||
\begin_inset CommandInset citation
|
||
LatexCommand cite
|
||
key "Hall00book"
|
||
|
||
\end_inset
|
||
|
||
|
||
\begin_inset Note Note
|
||
status collapsed
|
||
|
||
\begin_layout Plain Layout
|
||
http://en.wikipedia.org/wiki/Baker–Campbell–Hausdorff_formula
|
||
\end_layout
|
||
|
||
\end_inset
|
||
|
||
:
|
||
\begin_inset Formula
|
||
\[
|
||
Z=X+Y+[X,Y]/2+[X-Y,[X,Y]]/12-[Y,[X,[X,Y]]]/24+\ldots
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
For commutative groups the bracket is zero and we recover
|
||
\begin_inset Formula $Z=X+Y$
|
||
\end_inset
|
||
|
||
.
|
||
For non-commutative groups we can use the BCH formula to approximate it.
|
||
\end_layout
|
||
|
||
\begin_layout Subsection
|
||
Exponential Coordinates
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
For
|
||
\begin_inset Formula $n$
|
||
\end_inset
|
||
|
||
-dimensional matrix Lie groups, as a vector space the Lie algebra
|
||
\begin_inset Formula $\gg$
|
||
\end_inset
|
||
|
||
is isomorphic to
|
||
\begin_inset Formula $\mathbb{R}^{n}$
|
||
\end_inset
|
||
|
||
, and we can define the hat operator
|
||
\begin_inset CommandInset citation
|
||
LatexCommand cite
|
||
after "page 41"
|
||
key "Murray94book"
|
||
|
||
\end_inset
|
||
|
||
,
|
||
\begin_inset Formula
|
||
\[
|
||
\hat{}:x\in\mathbb{R}^{n}\rightarrow\xhat\in\gg
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
which maps
|
||
\begin_inset Formula $n$
|
||
\end_inset
|
||
|
||
-vectors
|
||
\begin_inset Formula $x\in\mathbb{R}^{n}$
|
||
\end_inset
|
||
|
||
to elements of
|
||
\begin_inset Formula $\gg$
|
||
\end_inset
|
||
|
||
.
|
||
In the case of matrix Lie groups, the elements
|
||
\begin_inset Formula $\xhat$
|
||
\end_inset
|
||
|
||
of
|
||
\begin_inset Formula $\gg$
|
||
\end_inset
|
||
|
||
are also
|
||
\begin_inset Formula $n\times n$
|
||
\end_inset
|
||
|
||
matrices, and the map is given by
|
||
\begin_inset Formula
|
||
\begin{equation}
|
||
\xhat=\sum_{i=1}^{n}x_{i}G^{i}\label{eq:generators}
|
||
\end{equation}
|
||
|
||
\end_inset
|
||
|
||
where the
|
||
\begin_inset Formula $G^{i}$
|
||
\end_inset
|
||
|
||
are
|
||
\begin_inset Formula $n\times n$
|
||
\end_inset
|
||
|
||
matrices known as Lie group generators.
|
||
The meaning of the map
|
||
\begin_inset Formula $x\rightarrow\xhat$
|
||
\end_inset
|
||
|
||
will depend on the group
|
||
\begin_inset Formula $G$
|
||
\end_inset
|
||
|
||
and will generally have an intuitive interpretation.
|
||
\end_layout
|
||
|
||
\begin_layout Subsection
|
||
Actions
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
An important concept is that of a group element acting on an element of
|
||
a manifold
|
||
\begin_inset Formula $M$
|
||
\end_inset
|
||
|
||
.
|
||
For example, 2D rotations act on 2D points, 3D rotations act on 3D points,
|
||
etc.
|
||
In particular, a
|
||
\series bold
|
||
left action
|
||
\series default
|
||
of
|
||
\begin_inset Formula $G$
|
||
\end_inset
|
||
|
||
on
|
||
\begin_inset Formula $M$
|
||
\end_inset
|
||
|
||
is defined as a smooth map
|
||
\begin_inset Formula $\Phi:G\times M\rightarrow M$
|
||
\end_inset
|
||
|
||
such that
|
||
\begin_inset CommandInset citation
|
||
LatexCommand cite
|
||
after "Appendix A"
|
||
key "Murray94book"
|
||
|
||
\end_inset
|
||
|
||
:
|
||
\end_layout
|
||
|
||
\begin_layout Enumerate
|
||
The identity element
|
||
\begin_inset Formula $e$
|
||
\end_inset
|
||
|
||
has no effect, i.e.,
|
||
\begin_inset Formula $\Phi(e,p)=p$
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Enumerate
|
||
Composing two actions can be combined into one action:
|
||
\begin_inset Formula $\Phi(g,\Phi(h,p))=\Phi(gh,p)$
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
The (usual) action of an
|
||
\begin_inset Formula $n$
|
||
\end_inset
|
||
|
||
-dimensional matrix group
|
||
\begin_inset Formula $G$
|
||
\end_inset
|
||
|
||
is matrix-vector multiplication on
|
||
\begin_inset Formula $\mathbb{R}^{n}$
|
||
\end_inset
|
||
|
||
,
|
||
\begin_inset Formula
|
||
\[
|
||
q=Ap
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
with
|
||
\begin_inset Formula $p,q\in\mathbb{R}^{n}$
|
||
\end_inset
|
||
|
||
and
|
||
\begin_inset Formula $A\in G\subseteq GL(n)$
|
||
\end_inset
|
||
|
||
.
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Subsection
|
||
The Adjoint Map and Adjoint Representation
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
Suppose a point
|
||
\begin_inset Formula $p$
|
||
\end_inset
|
||
|
||
is specified as
|
||
\begin_inset Formula $p'$
|
||
\end_inset
|
||
|
||
in the frame
|
||
\begin_inset Formula $T$
|
||
\end_inset
|
||
|
||
, i.e.,
|
||
\begin_inset Formula $p'=Tp$
|
||
\end_inset
|
||
|
||
, where
|
||
\begin_inset Formula $T$
|
||
\end_inset
|
||
|
||
transforms from the global coordinates
|
||
\begin_inset Formula $p$
|
||
\end_inset
|
||
|
||
to the local frame
|
||
\begin_inset Formula $p'$
|
||
\end_inset
|
||
|
||
.
|
||
To apply an action
|
||
\begin_inset Formula $A$
|
||
\end_inset
|
||
|
||
we first need to undo
|
||
\begin_inset Formula $T$
|
||
\end_inset
|
||
|
||
, then apply
|
||
\begin_inset Formula $A$
|
||
\end_inset
|
||
|
||
, and then transform the result back to
|
||
\begin_inset Formula $T$
|
||
\end_inset
|
||
|
||
:
|
||
\begin_inset Formula
|
||
\[
|
||
q'=TAT^{-1}p'
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
The matrix
|
||
\begin_inset Formula $TAT^{-1}$
|
||
\end_inset
|
||
|
||
is said to be conjugate to
|
||
\begin_inset Formula $A$
|
||
\end_inset
|
||
|
||
, and this is a central element of group theory.
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
In general, the
|
||
\series bold
|
||
adjoint map
|
||
\series default
|
||
|
||
\begin_inset Formula $\AAdd g$
|
||
\end_inset
|
||
|
||
maps a group element
|
||
\begin_inset Formula $a\in G$
|
||
\end_inset
|
||
|
||
to its
|
||
\series bold
|
||
conjugate
|
||
\series default
|
||
|
||
\begin_inset Formula $gag^{-1}$
|
||
\end_inset
|
||
|
||
by
|
||
\begin_inset Formula $g$
|
||
\end_inset
|
||
|
||
.
|
||
This map captures conjugacy in the group
|
||
\begin_inset Formula $G$
|
||
\end_inset
|
||
|
||
, but there is an equivalent notion in the Lie algebra
|
||
\begin_inset Formula $\mathfrak{\gg}$
|
||
\end_inset
|
||
|
||
,
|
||
\begin_inset Note Note
|
||
status open
|
||
|
||
\begin_layout Plain Layout
|
||
http://en.wikipedia.org/wiki/Exponential_map
|
||
\end_layout
|
||
|
||
\end_inset
|
||
|
||
|
||
\begin_inset Formula
|
||
\[
|
||
\AAdd ge^{\xhat}=g\exp\left(\xhat\right)g^{-1}=\exp(\Ad g{\xhat})
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
where
|
||
\begin_inset Formula $\Ad g:\gg\rightarrow\mathfrak{\gg}$
|
||
\end_inset
|
||
|
||
is a map parameterized by a group element
|
||
\begin_inset Formula $g$
|
||
\end_inset
|
||
|
||
, and is called the
|
||
\emph on
|
||
adjoint representation
|
||
\emph default
|
||
.
|
||
The intuitive explanation is that a change
|
||
\begin_inset Formula $\exp\left(\xhat\right)$
|
||
\end_inset
|
||
|
||
defined around the origin, but applied at the group element
|
||
\begin_inset Formula $g$
|
||
\end_inset
|
||
|
||
, can be written in one step by taking the adjoint
|
||
\begin_inset Formula $\Ad g{\xhat}$
|
||
\end_inset
|
||
|
||
of
|
||
\begin_inset Formula $\xhat$
|
||
\end_inset
|
||
|
||
.
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
In the special case of matrix Lie groups the adjoint can be written as
|
||
\begin_inset Note Note
|
||
status collapsed
|
||
|
||
\begin_layout Plain Layout
|
||
http://en.wikipedia.org/wiki/Adjoint_representation_of_a_Lie_group
|
||
\end_layout
|
||
|
||
\end_inset
|
||
|
||
|
||
\begin_inset Formula
|
||
\[
|
||
\Ad T{\xhat}\define T\xhat T^{-1}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
and hence we have
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
\begin_inset Formula
|
||
\begin{equation}
|
||
Te^{\xhat}T^{-1}=e^{T\xhat T^{-1}}\label{eq:matrixAdjoint}
|
||
\end{equation}
|
||
|
||
\end_inset
|
||
|
||
where both
|
||
\begin_inset Formula $T\in G$
|
||
\end_inset
|
||
|
||
and
|
||
\begin_inset Formula $\xhat\in\gg$
|
||
\end_inset
|
||
|
||
are
|
||
\begin_inset Formula $n\times n$
|
||
\end_inset
|
||
|
||
matrices for an
|
||
\begin_inset Formula $n$
|
||
\end_inset
|
||
|
||
-dimensional Lie group.
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
\begin_inset Newpage pagebreak
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Section
|
||
2D Rotations
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
We first look at a very simple group, the 2D rotations.
|
||
\end_layout
|
||
|
||
\begin_layout Subsection
|
||
Basics
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
The Lie group
|
||
\begin_inset Formula $\SOtwo$
|
||
\end_inset
|
||
|
||
is a subgroup of the general linear group
|
||
\begin_inset Formula $GL(2)$
|
||
\end_inset
|
||
|
||
of
|
||
\begin_inset Formula $2\times2$
|
||
\end_inset
|
||
|
||
invertible matrices.
|
||
Its Lie algebra
|
||
\begin_inset Formula $\sotwo$
|
||
\end_inset
|
||
|
||
is the vector space of
|
||
\begin_inset Formula $2\times2$
|
||
\end_inset
|
||
|
||
skew-symmetric matrices.
|
||
Since
|
||
\begin_inset Formula $\SOtwo$
|
||
\end_inset
|
||
|
||
is a one-dimensional manifold,
|
||
\begin_inset Formula $\sotwo$
|
||
\end_inset
|
||
|
||
is isomorphic to
|
||
\begin_inset Formula $\mathbb{R}$
|
||
\end_inset
|
||
|
||
and we define
|
||
\begin_inset Formula
|
||
\[
|
||
\hat{}:\mathbb{R}\rightarrow\sotwo
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\begin_inset Formula
|
||
\[
|
||
\hat{}:\omega\rightarrow\what=\skew{\omega}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
which maps the angle
|
||
\begin_inset Formula $\omega$
|
||
\end_inset
|
||
|
||
to the
|
||
\begin_inset Formula $2\times2$
|
||
\end_inset
|
||
|
||
skew-symmetric matrix
|
||
\family roman
|
||
\series medium
|
||
\shape up
|
||
\size normal
|
||
\emph off
|
||
\bar no
|
||
\noun off
|
||
\color none
|
||
|
||
\begin_inset Formula $\skew{\omega}$
|
||
\end_inset
|
||
|
||
:
|
||
\family default
|
||
\series default
|
||
\shape default
|
||
\size default
|
||
\emph default
|
||
\bar default
|
||
\noun default
|
||
\color inherit
|
||
|
||
\begin_inset Formula
|
||
\[
|
||
\skew{\omega}=\left[\begin{array}{cc}
|
||
0 & -\omega\\
|
||
\omega & 0
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
The exponential map can be computed in closed form as
|
||
\begin_inset Formula
|
||
\[
|
||
e^{\skew{\omega}}=\left[\begin{array}{cc}
|
||
\cos\omega & -\sin\omega\\
|
||
\sin\omega & \cos\omega
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Subsection
|
||
\begin_inset CommandInset label
|
||
LatexCommand label
|
||
name "sub:Diagonalized2D"
|
||
|
||
\end_inset
|
||
|
||
Diagonalized Form
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
The matrix
|
||
\begin_inset Formula $\skew 1$
|
||
\end_inset
|
||
|
||
can be diagonalized (see
|
||
\begin_inset CommandInset citation
|
||
LatexCommand cite
|
||
key "Hall00book"
|
||
|
||
\end_inset
|
||
|
||
) with eigenvalues
|
||
\begin_inset Formula $-i$
|
||
\end_inset
|
||
|
||
and
|
||
\begin_inset Formula $i$
|
||
\end_inset
|
||
|
||
, and eigenvectors
|
||
\begin_inset Formula $\left[\begin{array}{c}
|
||
1\\
|
||
i
|
||
\end{array}\right]$
|
||
\end_inset
|
||
|
||
and
|
||
\begin_inset Formula $\left[\begin{array}{c}
|
||
i\\
|
||
1
|
||
\end{array}\right]$
|
||
\end_inset
|
||
|
||
.
|
||
Readers familiar with projective geometry will recognize these as the circular
|
||
points when promoted to homogeneous coordinates.
|
||
In particular:
|
||
\begin_inset Formula
|
||
\[
|
||
\skew{\omega}=\left[\begin{array}{cc}
|
||
0 & -\omega\\
|
||
\omega & 0
|
||
\end{array}\right]=\left[\begin{array}{cc}
|
||
1 & i\\
|
||
i & 1
|
||
\end{array}\right]\left[\begin{array}{cc}
|
||
-i\omega & 0\\
|
||
0 & i\omega
|
||
\end{array}\right]\left[\begin{array}{cc}
|
||
1 & i\\
|
||
i & 1
|
||
\end{array}\right]^{-1}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
and hence
|
||
\begin_inset Formula
|
||
\[
|
||
e^{\skew{\omega}}=\frac{1}{2}\left[\begin{array}{cc}
|
||
1 & i\\
|
||
i & 1
|
||
\end{array}\right]\left[\begin{array}{cc}
|
||
e^{-i\omega} & 0\\
|
||
0 & e^{i\omega}
|
||
\end{array}\right]\left[\begin{array}{cc}
|
||
1 & -i\\
|
||
-i & 1
|
||
\end{array}\right]=\left[\begin{array}{cc}
|
||
\cos\omega & -\sin\omega\\
|
||
\sin\omega & \cos\omega
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
where the latter can be shown using
|
||
\begin_inset Formula $e^{i\omega}=\cos\omega+i\sin\omega$
|
||
\end_inset
|
||
|
||
.
|
||
\end_layout
|
||
|
||
\begin_layout Subsection
|
||
Adjoint
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
The adjoint for
|
||
\begin_inset Formula $\sotwo$
|
||
\end_inset
|
||
|
||
is trivially equal to the identity, as is the case for
|
||
\emph on
|
||
all
|
||
\emph default
|
||
commutative groups:
|
||
\begin_inset Formula
|
||
\begin{eqnarray*}
|
||
\Ad R\what & = & \left[\begin{array}{cc}
|
||
\cos\theta & -\sin\theta\\
|
||
\sin\theta & \cos\theta
|
||
\end{array}\right]\left[\begin{array}{cc}
|
||
0 & -\omega\\
|
||
\omega & 0
|
||
\end{array}\right]\left[\begin{array}{cc}
|
||
\cos\theta & -\sin\theta\\
|
||
\sin\theta & \cos\theta
|
||
\end{array}\right]^{T}\\
|
||
& = & \omega\left[\begin{array}{cc}
|
||
-\sin\theta & -\cos\theta\\
|
||
\cos\theta & -\sin\theta
|
||
\end{array}\right]\left[\begin{array}{cc}
|
||
\cos\theta & \sin\theta\\
|
||
-\sin\theta & \cos\theta
|
||
\end{array}\right]=\left[\begin{array}{cc}
|
||
0 & -\omega\\
|
||
\omega & 0
|
||
\end{array}\right]
|
||
\end{eqnarray*}
|
||
|
||
\end_inset
|
||
|
||
i.e.,
|
||
\begin_inset Formula
|
||
\[
|
||
\Ad R\what=\what
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Subsection
|
||
Actions
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
In the case of
|
||
\begin_inset Formula $\SOtwo$
|
||
\end_inset
|
||
|
||
the vector space is
|
||
\begin_inset Formula $\Rtwo$
|
||
\end_inset
|
||
|
||
, and the group action corresponds to rotating a point
|
||
\begin_inset Formula
|
||
\[
|
||
q=Rp
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
We would now like to know what an incremental rotation parameterized by
|
||
|
||
\begin_inset Formula $\omega$
|
||
\end_inset
|
||
|
||
would do:
|
||
\begin_inset Formula
|
||
\[
|
||
q(\text{\omega})=Re^{\skew{\omega}}p
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
For small angles
|
||
\begin_inset Formula $\omega$
|
||
\end_inset
|
||
|
||
we have
|
||
\begin_inset Formula
|
||
\[
|
||
e^{\skew{\omega}}\approx I+\skew{\omega}=I+\omega\skew 1
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
where
|
||
\begin_inset Formula $\skew 1$
|
||
\end_inset
|
||
|
||
acts like a restricted
|
||
\begin_inset Quotes eld
|
||
\end_inset
|
||
|
||
cross product
|
||
\begin_inset Quotes erd
|
||
\end_inset
|
||
|
||
in the plane on points:
|
||
\begin_inset Formula
|
||
\begin{equation}
|
||
\skew 1\left[\begin{array}{c}
|
||
x\\
|
||
y
|
||
\end{array}\right]=R_{\pi/2}\left[\begin{array}{c}
|
||
x\\
|
||
y
|
||
\end{array}\right]=\left[\begin{array}{c}
|
||
-y\\
|
||
x
|
||
\end{array}\right]\label{eq:RestrictedCross}
|
||
\end{equation}
|
||
|
||
\end_inset
|
||
|
||
Hence the derivative of the action is given as
|
||
\begin_inset Formula
|
||
\[
|
||
\deriv{q(\omega)}{\omega}=R\deriv{}{\omega}\left(e^{\skew{\omega}}p\right)=R\deriv{}{\omega}\left(\omega\skew 1p\right)=RH_{p}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
where
|
||
\begin_inset Formula $H_{p}$
|
||
\end_inset
|
||
|
||
is a
|
||
\begin_inset Formula $2\times1$
|
||
\end_inset
|
||
|
||
matrix that depends on
|
||
\begin_inset Formula $p$
|
||
\end_inset
|
||
|
||
:
|
||
\begin_inset Formula
|
||
\[
|
||
H_{p}\define\skew 1p=\left[\begin{array}{c}
|
||
-p_{y}\\
|
||
p_{x}
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
\begin_inset Newpage pagebreak
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Section
|
||
2D Rigid Transformations
|
||
\end_layout
|
||
|
||
\begin_layout Subsection
|
||
Basics
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
The Lie group
|
||
\begin_inset Formula $\SEtwo$
|
||
\end_inset
|
||
|
||
is a subgroup of the general linear group
|
||
\begin_inset Formula $GL(3)$
|
||
\end_inset
|
||
|
||
of
|
||
\begin_inset Formula $3\times3$
|
||
\end_inset
|
||
|
||
invertible matrices of the form
|
||
\begin_inset Formula
|
||
\[
|
||
T\define\left[\begin{array}{cc}
|
||
R & t\\
|
||
0 & 1
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
where
|
||
\begin_inset Formula $R\in\SOtwo$
|
||
\end_inset
|
||
|
||
is a rotation matrix and
|
||
\begin_inset Formula $t\in\Rtwo$
|
||
\end_inset
|
||
|
||
is a translation vector.
|
||
|
||
\begin_inset Formula $\SEtwo$
|
||
\end_inset
|
||
|
||
is the
|
||
\emph on
|
||
semi-direct product
|
||
\emph default
|
||
of
|
||
\begin_inset Formula $\Rtwo$
|
||
\end_inset
|
||
|
||
by
|
||
\begin_inset Formula $SO(2)$
|
||
\end_inset
|
||
|
||
, written as
|
||
\begin_inset Formula $\SEtwo=\Rtwo\rtimes\SOtwo$
|
||
\end_inset
|
||
|
||
.
|
||
In particular, any element
|
||
\begin_inset Formula $T$
|
||
\end_inset
|
||
|
||
of
|
||
\begin_inset Formula $\SEtwo$
|
||
\end_inset
|
||
|
||
can be written as
|
||
\begin_inset Formula
|
||
\[
|
||
T=\left[\begin{array}{cc}
|
||
0 & t\\
|
||
0 & 1
|
||
\end{array}\right]\left[\begin{array}{cc}
|
||
R & 0\\
|
||
0 & 1
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
and they compose as
|
||
\begin_inset Formula
|
||
\[
|
||
T_{1}T_{2}=\left[\begin{array}{cc}
|
||
R_{1} & t_{1}\\
|
||
0 & 1
|
||
\end{array}\right]\left[\begin{array}{cc}
|
||
R_{2} & t_{2}\\
|
||
0 & 1
|
||
\end{array}\right]=\left[\begin{array}{cc}
|
||
R_{1}R_{2} & R_{1}t_{2}+t_{1}\\
|
||
0 & 1
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
Hence, an alternative way of writing down elements of
|
||
\begin_inset Formula $\SEtwo$
|
||
\end_inset
|
||
|
||
is as the ordered pair
|
||
\begin_inset Formula $(R,\, t)$
|
||
\end_inset
|
||
|
||
, with composition defined a
|
||
\begin_inset Formula
|
||
\[
|
||
(R_{1},\, t_{1})(R_{2},\, t_{2})=(R_{1}R_{2},\, R{}_{1}t_{2}+t_{1})
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
The corresponding Lie algebra
|
||
\begin_inset Formula $\setwo$
|
||
\end_inset
|
||
|
||
is the vector space of
|
||
\begin_inset Formula $3\times3$
|
||
\end_inset
|
||
|
||
twists
|
||
\begin_inset Formula $\xihat$
|
||
\end_inset
|
||
|
||
parameterized by the
|
||
\emph on
|
||
twist coordinates
|
||
\emph default
|
||
|
||
\begin_inset Formula $\xi\in\Rthree$
|
||
\end_inset
|
||
|
||
, with the mapping
|
||
\begin_inset Formula
|
||
\[
|
||
\xi\define\left[\begin{array}{c}
|
||
v\\
|
||
\omega
|
||
\end{array}\right]\rightarrow\xihat\define\left[\begin{array}{cc}
|
||
\skew{\omega} & v\\
|
||
0 & 0
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
Note we think of robots as having a pose
|
||
\begin_inset Formula $(x,y,\theta)$
|
||
\end_inset
|
||
|
||
and hence I reserved the first two components for translation and the last
|
||
for rotation.
|
||
|
||
\family roman
|
||
\series medium
|
||
\shape up
|
||
\size normal
|
||
\emph off
|
||
\bar no
|
||
\noun off
|
||
\color none
|
||
The corresponding Lie group generators are
|
||
\begin_inset Formula
|
||
\[
|
||
G^{x}=\left[\begin{array}{ccc}
|
||
0 & 0 & 1\\
|
||
0 & 0 & 0\\
|
||
0 & 0 & 0
|
||
\end{array}\right]\mbox{ }G^{y}=\left[\begin{array}{ccc}
|
||
0 & 0 & 0\\
|
||
0 & 0 & 1\\
|
||
0 & 0 & 0
|
||
\end{array}\right]\mbox{ }G^{\theta}=\left[\begin{array}{ccc}
|
||
0 & -1 & 0\\
|
||
1 & 0 & 0\\
|
||
0 & 0 & 0
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\family default
|
||
\series default
|
||
\shape default
|
||
\size default
|
||
\emph default
|
||
\bar default
|
||
\noun default
|
||
\color inherit
|
||
Applying the exponential map to a twist
|
||
\begin_inset Formula $\xi$
|
||
\end_inset
|
||
|
||
yields a screw motion yielding an element in
|
||
\begin_inset Formula $\SEtwo$
|
||
\end_inset
|
||
|
||
:
|
||
\begin_inset Formula
|
||
\[
|
||
T=e^{\xihat}=\left(e^{\skew{\omega}},(I-e^{\skew{\omega}})\frac{v^{\perp}}{\omega}\right)
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Subsection
|
||
The Adjoint Map
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
The adjoint is
|
||
\begin_inset Formula
|
||
\begin{eqnarray}
|
||
\Ad T{\xihat} & = & T\xihat T^{-1}\nonumber \\
|
||
& = & =\left[\begin{array}{cc}
|
||
R & t\\
|
||
0 & 1
|
||
\end{array}\right]\left[\begin{array}{cc}
|
||
\skew{\omega} & v\\
|
||
0 & 0
|
||
\end{array}\right]\left[\begin{array}{cc}
|
||
R^{T} & -R^{T}t\\
|
||
0 & 1
|
||
\end{array}\right]\nonumber \\
|
||
& = & \left[\begin{array}{cc}
|
||
\skew{\omega} & -\skew{\omega}t+Rv\\
|
||
0 & 0
|
||
\end{array}\right]\nonumber \\
|
||
& = & \left[\begin{array}{cc}
|
||
\skew{\omega} & Rv-t^{\perp}\omega\\
|
||
0 & 0
|
||
\end{array}\right]\label{eq:adjointSE2}
|
||
\end{eqnarray}
|
||
|
||
\end_inset
|
||
|
||
From this we can express the Adjoint map in terms of plane twist coordinates:
|
||
\begin_inset Formula
|
||
\[
|
||
\left[\begin{array}{c}
|
||
v'\\
|
||
\omega'
|
||
\end{array}\right]=\left[\begin{array}{cc}
|
||
R & -t^{\perp}\\
|
||
0 & 1
|
||
\end{array}\right]\left[\begin{array}{c}
|
||
v\\
|
||
\omega
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Subsection
|
||
Actions
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
The action of
|
||
\begin_inset Formula $\SEtwo$
|
||
\end_inset
|
||
|
||
on 2D points is done by embedding the points in
|
||
\begin_inset Formula $\mathbb{R}^{3}$
|
||
\end_inset
|
||
|
||
by using homogeneous coordinates
|
||
\begin_inset Formula
|
||
\[
|
||
\hat{q}=\left[\begin{array}{c}
|
||
q\\
|
||
1
|
||
\end{array}\right]=\left[\begin{array}{cc}
|
||
R & t\\
|
||
0 & 1
|
||
\end{array}\right]\left[\begin{array}{c}
|
||
p\\
|
||
1
|
||
\end{array}\right]=T\hat{p}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
Analoguous to
|
||
\begin_inset Formula $\SEthree$
|
||
\end_inset
|
||
|
||
(see below), we can compute a velocity
|
||
\begin_inset Formula $\xihat\hat{p}$
|
||
\end_inset
|
||
|
||
in the local
|
||
\begin_inset Formula $T$
|
||
\end_inset
|
||
|
||
frame:
|
||
\begin_inset Formula
|
||
\[
|
||
\xihat\hat{p}=\left[\begin{array}{cc}
|
||
\skew{\omega} & v\\
|
||
0 & 0
|
||
\end{array}\right]\left[\begin{array}{c}
|
||
p\\
|
||
1
|
||
\end{array}\right]=\left[\begin{array}{c}
|
||
\skew{\omega}p+v\\
|
||
0
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
By only taking the top two rows, we can write this as a velocity in
|
||
\begin_inset Formula $\Rtwo$
|
||
\end_inset
|
||
|
||
, as the product of a
|
||
\begin_inset Formula $2\times3$
|
||
\end_inset
|
||
|
||
matrix
|
||
\begin_inset Formula $H_{p}$
|
||
\end_inset
|
||
|
||
that acts upon the exponential coordinates
|
||
\begin_inset Formula $\xi$
|
||
\end_inset
|
||
|
||
directly:
|
||
\begin_inset Formula
|
||
\[
|
||
\skew{\omega}p+v=v+R_{\pi/2}p\omega=\left[\begin{array}{cc}
|
||
I_{2} & R_{\pi/2}p\end{array}\right]\left[\begin{array}{c}
|
||
v\\
|
||
\omega
|
||
\end{array}\right]=H_{p}\xi
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
\begin_inset Newpage pagebreak
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Section
|
||
3D Rotations
|
||
\end_layout
|
||
|
||
\begin_layout Subsection
|
||
Basics
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
The Lie group
|
||
\begin_inset Formula $\SOthree$
|
||
\end_inset
|
||
|
||
is a subgroup of the general linear group
|
||
\begin_inset Formula $GL(3)$
|
||
\end_inset
|
||
|
||
of
|
||
\begin_inset Formula $3\times3$
|
||
\end_inset
|
||
|
||
invertible matrices.
|
||
Its Lie algebra
|
||
\begin_inset Formula $\sothree$
|
||
\end_inset
|
||
|
||
is the vector space of
|
||
\begin_inset Formula $3\times3$
|
||
\end_inset
|
||
|
||
skew-symmetric matrices
|
||
\begin_inset Formula $\what$
|
||
\end_inset
|
||
|
||
.
|
||
Since
|
||
\begin_inset Formula $\SOthree$
|
||
\end_inset
|
||
|
||
is a three-dimensional manifold,
|
||
\begin_inset Formula $\sothree$
|
||
\end_inset
|
||
|
||
is isomorphic to
|
||
\begin_inset Formula $\Rthree$
|
||
\end_inset
|
||
|
||
and we define the map
|
||
\begin_inset Formula
|
||
\[
|
||
\hat{}:\Rthree\rightarrow\sothree
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\begin_inset Formula
|
||
\[
|
||
\hat{}:\omega\rightarrow\what=\Skew{\omega}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
which maps 3-vectors
|
||
\begin_inset Formula $\omega$
|
||
\end_inset
|
||
|
||
to skew-symmetric matrices
|
||
\begin_inset Formula $\Skew{\omega}$
|
||
\end_inset
|
||
|
||
:
|
||
\begin_inset Formula
|
||
\[
|
||
\Skew{\omega}=\left[\begin{array}{ccc}
|
||
0 & -\omega_{z} & \omega_{y}\\
|
||
\omega_{z} & 0 & -\omega_{x}\\
|
||
-\omega_{y} & \omega_{x} & 0
|
||
\end{array}\right]=\omega_{x}G^{x}+\omega_{y}G^{y}+\omega_{z}G^{z}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
Here the matrices
|
||
\begin_inset Formula $G^{i}$
|
||
\end_inset
|
||
|
||
are the generators for
|
||
\begin_inset Formula $\SOthree$
|
||
\end_inset
|
||
|
||
,
|
||
\begin_inset Formula
|
||
\[
|
||
G^{x}=\left(\begin{array}{ccc}
|
||
0 & 0 & 0\\
|
||
0 & 0 & -1\\
|
||
0 & 1 & 0
|
||
\end{array}\right)\mbox{}G^{y}=\left(\begin{array}{ccc}
|
||
0 & 0 & 1\\
|
||
0 & 0 & 0\\
|
||
-1 & 0 & 0
|
||
\end{array}\right)\mbox{ }G^{z}=\left(\begin{array}{ccc}
|
||
0 & -1 & 0\\
|
||
1 & 0 & 0\\
|
||
0 & 0 & 0
|
||
\end{array}\right)
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
corresponding to a rotation around
|
||
\begin_inset Formula $X$
|
||
\end_inset
|
||
|
||
,
|
||
\begin_inset Formula $Y$
|
||
\end_inset
|
||
|
||
, and
|
||
\begin_inset Formula $Z$
|
||
\end_inset
|
||
|
||
, respectively.
|
||
The Lie bracket
|
||
\begin_inset Formula $[x,y]$
|
||
\end_inset
|
||
|
||
in
|
||
\begin_inset Formula $\sothree$
|
||
\end_inset
|
||
|
||
corresponds to the cross product
|
||
\begin_inset Formula $x\times y$
|
||
\end_inset
|
||
|
||
in
|
||
\begin_inset Formula $\Rthree$
|
||
\end_inset
|
||
|
||
.
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
Hence, for every
|
||
\begin_inset Formula $3$
|
||
\end_inset
|
||
|
||
-vector
|
||
\begin_inset Formula $\omega$
|
||
\end_inset
|
||
|
||
there is a corresponding rotation matrix
|
||
\begin_inset Formula
|
||
\[
|
||
R=e^{\Skew{\omega}}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
which defines a canonical parameterization of
|
||
\begin_inset Formula $\SOthree$
|
||
\end_inset
|
||
|
||
, with
|
||
\begin_inset Formula $\omega$
|
||
\end_inset
|
||
|
||
known as the canonical or exponential coordinates.
|
||
It is equivalent to the axis-angle representation for rotations, where
|
||
the unit vector
|
||
\begin_inset Formula $\omega/\theta$
|
||
\end_inset
|
||
|
||
defines the rotation axis, and its magnitude the amount of rotation
|
||
\begin_inset Formula $\theta$
|
||
\end_inset
|
||
|
||
.
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
The exponential map can be computed in closed form using
|
||
\series bold
|
||
Rodrigues' formula
|
||
\series default
|
||
|
||
\begin_inset CommandInset citation
|
||
LatexCommand cite
|
||
after "page 28"
|
||
key "Murray94book"
|
||
|
||
\end_inset
|
||
|
||
:
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
\begin_inset Formula
|
||
\begin{equation}
|
||
e^{\what}=I+\frac{\sin\theta}{\theta}\what+\frac{1\text{−}\cos\theta}{\theta^{2}}\what^{2}\label{eq:Rodrigues}
|
||
\end{equation}
|
||
|
||
\end_inset
|
||
|
||
where
|
||
\begin_inset Formula $\what^{2}=\omega\omega^{T}-I$
|
||
\end_inset
|
||
|
||
, with
|
||
\begin_inset Formula $\omega\omega^{T}$
|
||
\end_inset
|
||
|
||
the outer product of
|
||
\begin_inset Formula $\omega$
|
||
\end_inset
|
||
|
||
.
|
||
Hence, a slightly more efficient variant is
|
||
\begin_inset Formula
|
||
\begin{equation}
|
||
e^{\what}=\left(\cos\theta\right)I+\frac{\sin\theta}{\theta}\what+\frac{1\text{−}cos\theta}{\theta^{2}}\omega\omega^{T}\label{eq:Rodrigues2}
|
||
\end{equation}
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Subsection
|
||
Diagonalized Form
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
Because a 3D rotation
|
||
\begin_inset Formula $R$
|
||
\end_inset
|
||
|
||
leaves the axis
|
||
\begin_inset Formula $\omega$
|
||
\end_inset
|
||
|
||
unchanged,
|
||
\begin_inset Formula $R$
|
||
\end_inset
|
||
|
||
can be diagonalized as
|
||
\begin_inset Formula
|
||
\[
|
||
R=C\left(\begin{array}{ccc}
|
||
e^{-i\theta} & 0 & 0\\
|
||
0 & e^{i\theta} & 0\\
|
||
0 & 0 & 1
|
||
\end{array}\right)C^{-1}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
with
|
||
\begin_inset Formula $C=\left(\begin{array}{ccc}
|
||
c_{1} & c_{2} & \omega/\theta\end{array}\right)$
|
||
\end_inset
|
||
|
||
, where
|
||
\begin_inset Formula $c_{1}$
|
||
\end_inset
|
||
|
||
and
|
||
\begin_inset Formula $c_{2}$
|
||
\end_inset
|
||
|
||
are the complex eigenvectors corresponding to the 2D rotation around
|
||
\begin_inset Formula $\omega$
|
||
\end_inset
|
||
|
||
.
|
||
This also means that, by
|
||
\begin_inset CommandInset ref
|
||
LatexCommand eqref
|
||
reference "eq:matrixAdjoint"
|
||
|
||
\end_inset
|
||
|
||
,
|
||
\begin_inset Formula
|
||
\[
|
||
\hat{\omega}=C\left(\begin{array}{ccc}
|
||
-i\theta & 0 & 0\\
|
||
0 & i\theta & 0\\
|
||
0 & 0 & 0
|
||
\end{array}\right)C^{-1}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
In this case,
|
||
\begin_inset Formula $C$
|
||
\end_inset
|
||
|
||
has complex columns, but we also have
|
||
\begin_inset Formula
|
||
\begin{equation}
|
||
\hat{\omega}=B\left(\begin{array}{ccc}
|
||
0 & -\theta & 0\\
|
||
\theta & 0 & 0\\
|
||
0 & 0 & 0
|
||
\end{array}\right)B^{T}\label{eq:OmegaDecomposed}
|
||
\end{equation}
|
||
|
||
\end_inset
|
||
|
||
with
|
||
\begin_inset Formula $B=\left(\begin{array}{ccc}
|
||
b_{1} & b_{2} & \omega/\theta\end{array}\right)$
|
||
\end_inset
|
||
|
||
, where
|
||
\begin_inset Formula $b_{1}$
|
||
\end_inset
|
||
|
||
and
|
||
\begin_inset Formula $b_{2}$
|
||
\end_inset
|
||
|
||
form a basis for the 2D plane through the origin and perpendicular to
|
||
\begin_inset Formula $\omega$
|
||
\end_inset
|
||
|
||
.
|
||
Clearly, from Section
|
||
\begin_inset CommandInset ref
|
||
LatexCommand ref
|
||
reference "sub:Diagonalized2D"
|
||
|
||
\end_inset
|
||
|
||
, we have
|
||
\begin_inset Formula
|
||
\[
|
||
c_{1}=B\left(\begin{array}{c}
|
||
1\\
|
||
i\\
|
||
0
|
||
\end{array}\right)\mbox{\,\,\,\ and\,\,\,\,\,}c_{2}=B\left(\begin{array}{c}
|
||
i\\
|
||
1\\
|
||
0
|
||
\end{array}\right)
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
and when we exponentiate
|
||
\begin_inset CommandInset ref
|
||
LatexCommand eqref
|
||
reference "eq:OmegaDecomposed"
|
||
|
||
\end_inset
|
||
|
||
we expose the 2D rotation around the axis
|
||
\begin_inset Formula $\omega/\theta$
|
||
\end_inset
|
||
|
||
with magnitude
|
||
\begin_inset Formula $\theta$
|
||
\end_inset
|
||
|
||
:
|
||
\begin_inset Formula
|
||
\[
|
||
R=B\left(\begin{array}{ccc}
|
||
\cos\theta & -\sin\theta & 0\\
|
||
\sin\theta & \cos\theta & 0\\
|
||
0 & 0 & 1
|
||
\end{array}\right)B^{T}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
The latter form for
|
||
\begin_inset Formula $R$
|
||
\end_inset
|
||
|
||
can be used to prove Rodrigues' formula.
|
||
Expanding the above, we get
|
||
\begin_inset Formula
|
||
\[
|
||
R=\left(\cos\theta\right)\left(b_{1}b_{1}^{T}+b_{2}b_{2}^{T}\right)+\left(\sin\theta\right)\left(b_{2}b_{1}^{T}-b_{1}b_{2}^{T}\right)+\omega\omega^{T}/\theta^{2}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\family roman
|
||
\series medium
|
||
\shape up
|
||
\size normal
|
||
\emph off
|
||
\bar no
|
||
\strikeout off
|
||
\uuline off
|
||
\uwave off
|
||
\noun off
|
||
\color none
|
||
|
||
\begin_inset Note Note
|
||
status collapsed
|
||
|
||
\begin_layout Plain Layout
|
||
|
||
\family roman
|
||
\series medium
|
||
\shape up
|
||
\size normal
|
||
\emph off
|
||
\bar no
|
||
\strikeout off
|
||
\uuline off
|
||
\uwave off
|
||
\noun off
|
||
\color none
|
||
\begin_inset Formula
|
||
\begin{eqnarray*}
|
||
R & = & \left(\begin{array}{ccc}
|
||
b_{1} & b_{2} & \omega/\theta\end{array}\right)\left(\begin{array}{ccc}
|
||
\cos\theta & -\sin\theta & 0\\
|
||
\sin\theta & \cos\theta & 0\\
|
||
0 & 0 & 1
|
||
\end{array}\right)\left(\begin{array}{c}
|
||
b_{1}^{T}\\
|
||
b_{2}^{T}\\
|
||
\omega^{T}/\theta
|
||
\end{array}\right)\\
|
||
& = & \left(\begin{array}{ccc}
|
||
b_{1} & b_{2} & \omega/\theta\end{array}\right)\left(\begin{array}{c}
|
||
b_{1}^{T}\cos\theta-b_{2}^{T}\sin\theta\\
|
||
b_{1}^{T}\sin\theta+b_{2}^{T}\cos\theta\\
|
||
\omega^{T}/\theta
|
||
\end{array}\right)\\
|
||
& = & b_{1}b_{1}^{T}\cos\theta-b_{1}b_{2}^{T}\sin\theta+b_{2}b_{1}^{T}\sin\theta+b_{2}b_{2}^{T}\cos\theta+\omega\omega^{T}/\theta^{2}
|
||
\end{eqnarray*}
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\end_inset
|
||
|
||
Because
|
||
\begin_inset Formula $B$
|
||
\end_inset
|
||
|
||
is a rotation matrix, we have
|
||
\begin_inset Formula $BB^{T}=b_{1}b_{1}^{T}+b_{2}b_{2}^{T}+\omega\omega^{T}/\theta^{2}=I$
|
||
\end_inset
|
||
|
||
, and using
|
||
\begin_inset CommandInset ref
|
||
LatexCommand eqref
|
||
reference "eq:OmegaDecomposed"
|
||
|
||
\end_inset
|
||
|
||
it is easy to show that
|
||
\begin_inset Formula $b_{2}b_{1}^{T}-b_{1}b_{2}^{T}=\hat{\omega}/\theta$
|
||
\end_inset
|
||
|
||
, hence
|
||
\family default
|
||
\series default
|
||
\shape default
|
||
\size default
|
||
\emph default
|
||
\bar default
|
||
\strikeout default
|
||
\uuline default
|
||
\uwave default
|
||
\noun default
|
||
\color inherit
|
||
|
||
\begin_inset Formula
|
||
\[
|
||
R=\left(\cos\theta\right)(I-\omega\omega^{T}/\theta^{2})+\left(\sin\theta\right)\left(\hat{\omega}/\theta\right)+\omega\omega^{T}/\theta^{2}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
which is equivalent to
|
||
\begin_inset CommandInset ref
|
||
LatexCommand eqref
|
||
reference "eq:Rodrigues2"
|
||
|
||
\end_inset
|
||
|
||
.
|
||
\end_layout
|
||
|
||
\begin_layout Subsection
|
||
The Adjoint Map
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
For rotation matrices
|
||
\begin_inset Formula $R$
|
||
\end_inset
|
||
|
||
we can prove the following identity (see
|
||
\begin_inset CommandInset ref
|
||
LatexCommand vref
|
||
reference "proof1"
|
||
|
||
\end_inset
|
||
|
||
):
|
||
\begin_inset Formula
|
||
\begin{equation}
|
||
R\Skew{\omega}R^{T}=\Skew{R\omega}\label{eq:property1}
|
||
\end{equation}
|
||
|
||
\end_inset
|
||
|
||
Hence, given property
|
||
\begin_inset CommandInset ref
|
||
LatexCommand eqref
|
||
reference "eq:property1"
|
||
|
||
\end_inset
|
||
|
||
, the adjoint map for
|
||
\begin_inset Formula $\sothree$
|
||
\end_inset
|
||
|
||
simplifies to
|
||
\begin_inset Formula
|
||
\[
|
||
\Ad R{\Skew{\omega}}=R\Skew{\omega}R^{T}=\Skew{R\omega}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
and this can be expressed in exponential coordinates simply by rotating
|
||
the axis
|
||
\begin_inset Formula $\omega$
|
||
\end_inset
|
||
|
||
to
|
||
\begin_inset Formula $R\omega$
|
||
\end_inset
|
||
|
||
.
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
As an example, to apply an axis-angle rotation
|
||
\begin_inset Formula $\omega$
|
||
\end_inset
|
||
|
||
to a point
|
||
\begin_inset Formula $p$
|
||
\end_inset
|
||
|
||
in the frame
|
||
\begin_inset Formula $R$
|
||
\end_inset
|
||
|
||
, we could:
|
||
\end_layout
|
||
|
||
\begin_layout Enumerate
|
||
First transform
|
||
\begin_inset Formula $p$
|
||
\end_inset
|
||
|
||
back to the world frame, apply
|
||
\begin_inset Formula $\omega$
|
||
\end_inset
|
||
|
||
, and then rotate back:
|
||
\begin_inset Formula
|
||
\[
|
||
q=Re^{\Skew{\omega}}R^{T}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Enumerate
|
||
Immediately apply the transformed axis-angle transformation
|
||
\begin_inset Formula $\Ad R{\Skew{\omega}}=\Skew{R\omega}$
|
||
\end_inset
|
||
|
||
:
|
||
\begin_inset Formula
|
||
\[
|
||
q=e^{\Skew{R\omega}}p
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Subsection
|
||
Actions
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
In the case of
|
||
\begin_inset Formula $\SOthree$
|
||
\end_inset
|
||
|
||
the vector space is
|
||
\begin_inset Formula $\Rthree$
|
||
\end_inset
|
||
|
||
, and the group action corresponds to rotating a point
|
||
\begin_inset Formula
|
||
\[
|
||
q=Rp
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
We would now like to know what an incremental rotation parameterized by
|
||
|
||
\begin_inset Formula $\omega$
|
||
\end_inset
|
||
|
||
would do:
|
||
\begin_inset Formula
|
||
\[
|
||
q(\omega)=Re^{\Skew{\omega}}p
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
hence the derivative is:
|
||
\begin_inset Formula
|
||
\[
|
||
\deriv{q(\omega)}{\omega}=R\deriv{}{\omega}\left(e^{\Skew{\omega}}p\right)=R\deriv{}{\omega}\left(\Skew{\omega}p\right)=R\Skew{-p}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
To show the last equality note that
|
||
\begin_inset Formula
|
||
\[
|
||
\Skew{\omega}p=\omega\times p=-p\times\omega=\Skew{-p}\omega
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
\begin_inset Newpage pagebreak
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Section
|
||
3D Rigid Transformations
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
The Lie group
|
||
\begin_inset Formula $\SEthree$
|
||
\end_inset
|
||
|
||
is a subgroup of the general linear group
|
||
\begin_inset Formula $GL(4)$
|
||
\end_inset
|
||
|
||
of
|
||
\begin_inset Formula $4\times4$
|
||
\end_inset
|
||
|
||
invertible matrices of the form
|
||
\begin_inset Formula
|
||
\[
|
||
T\define\left[\begin{array}{cc}
|
||
R & t\\
|
||
0 & 1
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
where
|
||
\begin_inset Formula $R\in\SOthree$
|
||
\end_inset
|
||
|
||
is a rotation matrix and
|
||
\begin_inset Formula $t\in\Rthree$
|
||
\end_inset
|
||
|
||
is a translation vector.
|
||
An alternative way of writing down elements of
|
||
\begin_inset Formula $\SEthree$
|
||
\end_inset
|
||
|
||
is as the ordered pair
|
||
\begin_inset Formula $(R,\, t)$
|
||
\end_inset
|
||
|
||
, with composition defined as
|
||
\begin_inset Formula
|
||
\[
|
||
(R_{1},\, t_{1})(R_{2},\, t_{2})=(R_{1}R_{2},\, R{}_{1}t_{2}+t_{1})
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
Its Lie algebra
|
||
\begin_inset Formula $\sethree$
|
||
\end_inset
|
||
|
||
is the vector space of
|
||
\begin_inset Formula $4\times4$
|
||
\end_inset
|
||
|
||
twists
|
||
\begin_inset Formula $\xihat$
|
||
\end_inset
|
||
|
||
parameterized by the
|
||
\emph on
|
||
twist coordinates
|
||
\emph default
|
||
|
||
\begin_inset Formula $\xi\in\Rsix$
|
||
\end_inset
|
||
|
||
, with the mapping
|
||
\begin_inset CommandInset citation
|
||
LatexCommand cite
|
||
key "Murray94book"
|
||
|
||
\end_inset
|
||
|
||
|
||
\begin_inset Formula
|
||
\[
|
||
\xi\define\left[\begin{array}{c}
|
||
\omega\\
|
||
v
|
||
\end{array}\right]\rightarrow\xihat\define\left[\begin{array}{cc}
|
||
\Skew{\omega} & v\\
|
||
0 & 0
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
Note we follow Frank Park's convention and reserve the first three components
|
||
for rotation, and the last three for translation.
|
||
Hence, with this parameterization, the generators for
|
||
\begin_inset Formula $\SEthree$
|
||
\end_inset
|
||
|
||
are
|
||
\begin_inset Formula
|
||
\[
|
||
G^{1}=\left(\begin{array}{cccc}
|
||
0 & 0 & 0 & 0\\
|
||
0 & 0 & -1 & 0\\
|
||
0 & 1 & 0 & 0\\
|
||
0 & 0 & 0 & 0
|
||
\end{array}\right)\mbox{}G^{2}=\left(\begin{array}{cccc}
|
||
0 & 0 & 1 & 0\\
|
||
0 & 0 & 0 & 0\\
|
||
-1 & 0 & 0 & 0\\
|
||
0 & 0 & 0 & 0
|
||
\end{array}\right)\mbox{ }G^{3}=\left(\begin{array}{cccc}
|
||
0 & -1 & 0 & 0\\
|
||
1 & 0 & 0 & 0\\
|
||
0 & 0 & 0 & 0\\
|
||
0 & 0 & 0 & 0
|
||
\end{array}\right)
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\begin_inset Formula
|
||
\[
|
||
G^{4}=\left(\begin{array}{cccc}
|
||
0 & 0 & 0 & 1\\
|
||
0 & 0 & 0 & 0\\
|
||
0 & 0 & 0 & 0\\
|
||
0 & 0 & 0 & 0
|
||
\end{array}\right)\mbox{}G^{5}=\left(\begin{array}{cccc}
|
||
0 & 0 & 0 & 0\\
|
||
0 & 0 & 0 & 1\\
|
||
0 & 0 & 0 & 0\\
|
||
0 & 0 & 0 & 0
|
||
\end{array}\right)\mbox{ }G^{6}=\left(\begin{array}{cccc}
|
||
0 & 0 & 0 & 0\\
|
||
0 & 0 & 0 & 0\\
|
||
0 & 0 & 0 & 1\\
|
||
0 & 0 & 0 & 0
|
||
\end{array}\right)
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
Applying the exponential map to a twist
|
||
\begin_inset Formula $\xi$
|
||
\end_inset
|
||
|
||
yields a screw motion yielding an element in
|
||
\begin_inset Formula $\SEthree$
|
||
\end_inset
|
||
|
||
:
|
||
\begin_inset Formula
|
||
\[
|
||
T=\exp\xihat
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
A closed form solution for the exponential map is given in
|
||
\begin_inset CommandInset citation
|
||
LatexCommand cite
|
||
after "page 42"
|
||
key "Murray94book"
|
||
|
||
\end_inset
|
||
|
||
.
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
|
||
\family roman
|
||
\series medium
|
||
\shape up
|
||
\size normal
|
||
\emph off
|
||
\bar no
|
||
\noun off
|
||
\color none
|
||
\begin_inset Formula
|
||
\[
|
||
\exp\left(\widehat{\left[\begin{array}{c}
|
||
\omega\\
|
||
v
|
||
\end{array}\right]}t\right)=\left[\begin{array}{cc}
|
||
e^{\Skew{\omega}t} & (I-e^{\Skew{\omega}t})\left(\omega\times v\right)+\omega\omega^{T}vt\\
|
||
0 & 1
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Subsection
|
||
The Adjoint Map
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
The adjoint is
|
||
\begin_inset Formula
|
||
\begin{eqnarray*}
|
||
\Ad T{\xihat} & = & T\xihat T^{-1}\\
|
||
& = & \left[\begin{array}{cc}
|
||
R & t\\
|
||
0 & 1
|
||
\end{array}\right]\left[\begin{array}{cc}
|
||
\Skew{\omega} & v\\
|
||
0 & 0
|
||
\end{array}\right]\left[\begin{array}{cc}
|
||
R^{T} & -R^{T}t\\
|
||
0 & 1
|
||
\end{array}\right]\\
|
||
& = & \left[\begin{array}{cc}
|
||
\Skew{R\omega} & -\Skew{R\omega}t+Rv\\
|
||
0 & 0
|
||
\end{array}\right]\\
|
||
& = & \left[\begin{array}{cc}
|
||
\Skew{R\omega} & t\times R\omega+Rv\\
|
||
0 & 0
|
||
\end{array}\right]
|
||
\end{eqnarray*}
|
||
|
||
\end_inset
|
||
|
||
From this we can express the Adjoint map in terms of twist coordinates (see
|
||
also
|
||
\begin_inset CommandInset citation
|
||
LatexCommand cite
|
||
key "Murray94book"
|
||
|
||
\end_inset
|
||
|
||
and FP):
|
||
\begin_inset Formula
|
||
\[
|
||
\left[\begin{array}{c}
|
||
\omega'\\
|
||
v'
|
||
\end{array}\right]=\left[\begin{array}{cc}
|
||
R & 0\\
|
||
\Skew tR & R
|
||
\end{array}\right]\left[\begin{array}{c}
|
||
\omega\\
|
||
v
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Subsection
|
||
Actions
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
The action of
|
||
\begin_inset Formula $\SEthree$
|
||
\end_inset
|
||
|
||
on 3D points is done by embedding the points in
|
||
\begin_inset Formula $\mathbb{R}^{4}$
|
||
\end_inset
|
||
|
||
by using homogeneous coordinates
|
||
\begin_inset Formula
|
||
\[
|
||
\hat{q}=\left[\begin{array}{c}
|
||
q\\
|
||
1
|
||
\end{array}\right]=\left[\begin{array}{c}
|
||
Rp+t\\
|
||
1
|
||
\end{array}\right]=\left[\begin{array}{cc}
|
||
R & t\\
|
||
0 & 1
|
||
\end{array}\right]\left[\begin{array}{c}
|
||
p\\
|
||
1
|
||
\end{array}\right]=T\hat{p}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
We would now like to know what an incremental pose parameterized by
|
||
\begin_inset Formula $\xi$
|
||
\end_inset
|
||
|
||
would do:
|
||
\begin_inset Formula
|
||
\[
|
||
\hat{q}(\xi)=Te^{\xihat}\hat{p}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
hence the derivative is
|
||
\begin_inset Formula
|
||
\[
|
||
\deriv{\hat{q}(\xi)}{\xi}=T\deriv{}{\xi}\left(\xihat\hat{p}\right)
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
where
|
||
\begin_inset Formula $\xihat\hat{p}$
|
||
\end_inset
|
||
|
||
corresponds to a velocity in
|
||
\begin_inset Formula $\mathbb{R}^{4}$
|
||
\end_inset
|
||
|
||
(in the local
|
||
\begin_inset Formula $T$
|
||
\end_inset
|
||
|
||
frame):
|
||
\begin_inset Formula
|
||
\[
|
||
\xihat\hat{p}=\left[\begin{array}{cc}
|
||
\Skew{\omega} & v\\
|
||
0 & 0
|
||
\end{array}\right]\left[\begin{array}{c}
|
||
p\\
|
||
1
|
||
\end{array}\right]=\left[\begin{array}{c}
|
||
\omega\times p+v\\
|
||
0
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
Notice how velocities are analogous to points at infinity in projective
|
||
geometry: they correspond to free vectors indicating a direction and magnitude
|
||
of change.
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
By only taking the top three rows, we can write this as a velocity in
|
||
\begin_inset Formula $\Rthree$
|
||
\end_inset
|
||
|
||
, as the product of a
|
||
\begin_inset Formula $3\times6$
|
||
\end_inset
|
||
|
||
matrix
|
||
\begin_inset Formula $H_{p}$
|
||
\end_inset
|
||
|
||
that acts upon the exponential coordinates
|
||
\begin_inset Formula $\xi$
|
||
\end_inset
|
||
|
||
directly:
|
||
\begin_inset Formula
|
||
\[
|
||
\omega\times p+v=-p\times\omega+v=\left[\begin{array}{cc}
|
||
-\Skew p & I_{3}\end{array}\right]\left[\begin{array}{c}
|
||
\omega\\
|
||
v
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
yielding the derivative
|
||
\begin_inset Formula
|
||
\[
|
||
\deriv{\hat{q}(\xi)}{\xi}=T\deriv{}{\xi}\left(\xihat\hat{p}\right)=T\left[\begin{array}{cc}
|
||
-\Skew p & I_{3}\\
|
||
0 & 0
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
The inverse action
|
||
\begin_inset Formula $T^{-1}p$
|
||
\end_inset
|
||
|
||
is
|
||
\begin_inset Formula
|
||
\[
|
||
\hat{q}=\left[\begin{array}{c}
|
||
q\\
|
||
1
|
||
\end{array}\right]=\left[\begin{array}{c}
|
||
R^{T}(p-t)\\
|
||
1
|
||
\end{array}\right]=\left[\begin{array}{cc}
|
||
R^{T} & -R^{T}t\\
|
||
0 & 1
|
||
\end{array}\right]\left[\begin{array}{c}
|
||
p\\
|
||
1
|
||
\end{array}\right]=T^{-1}\hat{p}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
\begin_inset Newpage pagebreak
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Section
|
||
2D Affine Transformations
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
The Lie group
|
||
\begin_inset Formula $Aff(2)$
|
||
\end_inset
|
||
|
||
is a subgroup of the general linear group
|
||
\begin_inset Formula $GL(3)$
|
||
\end_inset
|
||
|
||
of
|
||
\begin_inset Formula $3\times3$
|
||
\end_inset
|
||
|
||
invertible matrices that maps the line infinity to itself, and hence preserves
|
||
paralellism.
|
||
The affine transformation matrices
|
||
\begin_inset Formula $A$
|
||
\end_inset
|
||
|
||
can be written as
|
||
\begin_inset CommandInset citation
|
||
LatexCommand cite
|
||
key "Mei08tro"
|
||
|
||
\end_inset
|
||
|
||
|
||
\family roman
|
||
\series medium
|
||
\shape up
|
||
\size normal
|
||
\emph off
|
||
\bar no
|
||
\noun off
|
||
\color none
|
||
|
||
\begin_inset Formula
|
||
\[
|
||
\left[\begin{array}{ccc}
|
||
m_{11} & m_{12} & t_{1}\\
|
||
m_{21} & m_{22} & t_{2}\\
|
||
0 & 0 & k
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
with
|
||
\begin_inset Formula $M\in GL(2)$
|
||
\end_inset
|
||
|
||
,
|
||
\begin_inset Formula $t\in\Rtwo$
|
||
\end_inset
|
||
|
||
, and
|
||
\begin_inset Formula $k$
|
||
\end_inset
|
||
|
||
a scalar chosen such that
|
||
\begin_inset Formula $det(A)=1$
|
||
\end_inset
|
||
|
||
.
|
||
|
||
\family default
|
||
\series default
|
||
\shape default
|
||
\size default
|
||
\emph default
|
||
\bar default
|
||
\noun default
|
||
\color inherit
|
||
Note that just as
|
||
\begin_inset Formula $\SEtwo$
|
||
\end_inset
|
||
|
||
is a semi-direct product, so too is
|
||
\begin_inset Formula $Aff(2)=\Rtwo\rtimes GL(2)$
|
||
\end_inset
|
||
|
||
.
|
||
In particular, any affine transformation
|
||
\begin_inset Formula $A$
|
||
\end_inset
|
||
|
||
can be written as
|
||
\begin_inset Formula
|
||
\[
|
||
A=\left[\begin{array}{cc}
|
||
0 & t\\
|
||
0 & 1
|
||
\end{array}\right]\left[\begin{array}{cc}
|
||
M & 0\\
|
||
0 & k
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
and they compose as
|
||
\begin_inset Formula
|
||
\[
|
||
A_{1}A_{2}=\left[\begin{array}{cc}
|
||
M_{1} & t_{1}\\
|
||
0 & k_{1}
|
||
\end{array}\right]\left[\begin{array}{cc}
|
||
M_{2} & t_{2}\\
|
||
0 & k_{2}
|
||
\end{array}\right]=\left[\begin{array}{cc}
|
||
M_{1}M_{2} & M_{2}t_{2}+k_{2}t_{1}\\
|
||
0 & k_{1}k_{2}
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
From this it can be gleaned that the groups
|
||
\begin_inset Formula $\SOtwo$
|
||
\end_inset
|
||
|
||
and
|
||
\begin_inset Formula $\SEtwo$
|
||
\end_inset
|
||
|
||
are both subgroups, with
|
||
\begin_inset Formula $\SOtwo\subset\SEtwo\subset\Afftwo$
|
||
\end_inset
|
||
|
||
.
|
||
|
||
\family roman
|
||
\series medium
|
||
\shape up
|
||
\size normal
|
||
\emph off
|
||
\bar no
|
||
\noun off
|
||
\color none
|
||
By choosing the generators carefully we maintain this hierarchy among the
|
||
associated Lie algebras.
|
||
In particular,
|
||
\begin_inset Formula $\setwo$
|
||
\end_inset
|
||
|
||
|
||
\begin_inset Formula
|
||
\[
|
||
G^{1}=\left[\begin{array}{ccc}
|
||
0 & 0 & 1\\
|
||
0 & 0 & 0\\
|
||
0 & 0 & 0
|
||
\end{array}\right]\mbox{ }G^{2}=\left[\begin{array}{ccc}
|
||
0 & 0 & 0\\
|
||
0 & 0 & 1\\
|
||
0 & 0 & 0
|
||
\end{array}\right]\mbox{ }G^{3}=\left[\begin{array}{ccc}
|
||
0 & -1 & 0\\
|
||
1 & 0 & 0\\
|
||
0 & 0 & 0
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
can be extended to the
|
||
\family default
|
||
\series default
|
||
\shape default
|
||
\size default
|
||
\emph default
|
||
\bar default
|
||
\noun default
|
||
\color inherit
|
||
Lie algebra
|
||
\family roman
|
||
\series medium
|
||
\shape up
|
||
\size normal
|
||
\emph off
|
||
\bar no
|
||
\noun off
|
||
\color none
|
||
|
||
\begin_inset Formula $\afftwo$
|
||
\end_inset
|
||
|
||
using the three additional generators
|
||
\begin_inset Formula
|
||
\[
|
||
G^{4}=\left[\begin{array}{ccc}
|
||
0 & 1 & 0\\
|
||
1 & 0 & 0\\
|
||
0 & 0 & 0
|
||
\end{array}\right]\mbox{ }G^{5}=\left[\begin{array}{ccc}
|
||
1 & 0 & 0\\
|
||
0 & -1 & 0\\
|
||
0 & 0 & 0
|
||
\end{array}\right]\mbox{ }G^{6}=\left[\begin{array}{ccc}
|
||
0 & 0 & 0\\
|
||
0 & -1 & 0\\
|
||
0 & 0 & 1
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\family default
|
||
\series default
|
||
\shape default
|
||
\size default
|
||
\emph default
|
||
\bar default
|
||
\noun default
|
||
\color inherit
|
||
Hence, the Lie algebra
|
||
\begin_inset Formula $\afftwo$
|
||
\end_inset
|
||
|
||
is the vector space of
|
||
\begin_inset Formula $3\times3$
|
||
\end_inset
|
||
|
||
incremental affine transformations
|
||
\begin_inset Formula $\ahat$
|
||
\end_inset
|
||
|
||
parameterized by 6 parameters
|
||
\begin_inset Formula $\aa\in\mathbb{R}^{6}$
|
||
\end_inset
|
||
|
||
, with the mapping
|
||
\begin_inset Formula
|
||
\[
|
||
\aa\rightarrow\ahat\define\left[\begin{array}{ccc}
|
||
a_{5} & a_{4}-a_{3} & a_{1}\\
|
||
a_{4}+a_{3} & -a_{5}-a_{6} & a_{2}\\
|
||
0 & 0 & a_{6}
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
Note that
|
||
\begin_inset Formula $G_{5}$
|
||
\end_inset
|
||
|
||
and
|
||
\begin_inset Formula $G_{6}$
|
||
\end_inset
|
||
|
||
change the relative scale of
|
||
\begin_inset Formula $x$
|
||
\end_inset
|
||
|
||
and
|
||
\begin_inset Formula $y$
|
||
\end_inset
|
||
|
||
but without changing the determinant:
|
||
\begin_inset Formula
|
||
\[
|
||
e^{xG_{5}}=\exp\left[\begin{array}{ccc}
|
||
x & 0 & 0\\
|
||
0 & -x & 0\\
|
||
0 & 0 & 0
|
||
\end{array}\right]=\left[\begin{array}{ccc}
|
||
e^{x} & 0 & 0\\
|
||
0 & 1/e^{x} & 0\\
|
||
0 & 0 & 1
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\begin_inset Formula
|
||
\[
|
||
e^{xG_{6}}=\exp\left[\begin{array}{ccc}
|
||
0 & 0 & 0\\
|
||
0 & -x & 0\\
|
||
0 & 0 & x
|
||
\end{array}\right]=\left[\begin{array}{ccc}
|
||
1 & 0 & 0\\
|
||
0 & 1/e^{x} & 0\\
|
||
0 & 0 & e^{x}
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
It might be nicer to have the correspondence with scaling
|
||
\begin_inset Formula $x$
|
||
\end_inset
|
||
|
||
and
|
||
\begin_inset Formula $y$
|
||
\end_inset
|
||
|
||
more direct, by choosing
|
||
\family roman
|
||
\series medium
|
||
\shape up
|
||
\size normal
|
||
\emph off
|
||
\bar no
|
||
\noun off
|
||
\color none
|
||
|
||
\begin_inset Formula
|
||
\[
|
||
\mbox{ }G^{5}=\left[\begin{array}{ccc}
|
||
1 & 0 & 0\\
|
||
0 & 0 & 0\\
|
||
0 & 0 & -1
|
||
\end{array}\right]\mbox{ }G^{6}=\left[\begin{array}{ccc}
|
||
0 & 0 & 0\\
|
||
0 & 1 & 0\\
|
||
0 & 0 & -1
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
and hence
|
||
\family default
|
||
\series default
|
||
\shape default
|
||
\size default
|
||
\emph default
|
||
\bar default
|
||
\noun default
|
||
\color inherit
|
||
|
||
\begin_inset Formula
|
||
\[
|
||
e^{xG_{5}}=\exp\left[\begin{array}{ccc}
|
||
x & 0 & 0\\
|
||
0 & 0 & 0\\
|
||
0 & 0 & -x
|
||
\end{array}\right]=\left[\begin{array}{ccc}
|
||
e^{x} & 0 & 0\\
|
||
0 & 1 & 0\\
|
||
0 & 0 & 1/e^{x}
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\begin_inset Formula
|
||
\[
|
||
e^{xG_{6}}=\exp\left[\begin{array}{ccc}
|
||
0 & 0 & 0\\
|
||
0 & x & 0\\
|
||
0 & 0 & -x
|
||
\end{array}\right]=\left[\begin{array}{ccc}
|
||
1 & 0 & 0\\
|
||
0 & e^{x} & 0\\
|
||
0 & 0 & 1/e^{x}
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Section
|
||
2D Homographies
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
When viewed as operations on images, represented by 2D projective space
|
||
|
||
\begin_inset Formula $\mathcal{P}^{3}$
|
||
\end_inset
|
||
|
||
, 3D rotations are a special case of 2D homographies.
|
||
These are now treated, loosely based on the exposition in
|
||
\begin_inset CommandInset citation
|
||
LatexCommand cite
|
||
key "Mei06iros,Mei08tro"
|
||
|
||
\end_inset
|
||
|
||
.
|
||
\end_layout
|
||
|
||
\begin_layout Subsection
|
||
Basics
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
The Lie group
|
||
\begin_inset Formula $\SLthree$
|
||
\end_inset
|
||
|
||
is a subgroup of the general linear group
|
||
\begin_inset Formula $GL(3)$
|
||
\end_inset
|
||
|
||
of
|
||
\begin_inset Formula $3\times3$
|
||
\end_inset
|
||
|
||
invertible matrices with determinant
|
||
\begin_inset Formula $1$
|
||
\end_inset
|
||
|
||
.
|
||
The homographies generalize transformations of the 2D projective space,
|
||
and
|
||
\begin_inset Formula $\Afftwo\subset\SLthree$
|
||
\end_inset
|
||
|
||
.
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
|
||
\family roman
|
||
\series medium
|
||
\shape up
|
||
\size normal
|
||
\emph off
|
||
\bar no
|
||
\noun off
|
||
\color none
|
||
We can extend
|
||
\begin_inset Formula $\afftwo$
|
||
\end_inset
|
||
|
||
to the Lie algebra
|
||
\begin_inset Formula $\slthree$
|
||
\end_inset
|
||
|
||
by adding two generators
|
||
\begin_inset Formula
|
||
\[
|
||
G^{7}=\left[\begin{array}{ccc}
|
||
0 & 0 & 0\\
|
||
0 & 0 & 0\\
|
||
1 & 0 & 0
|
||
\end{array}\right]\mbox{ }G^{8}=\left[\begin{array}{ccc}
|
||
0 & 0 & 0\\
|
||
0 & 0 & 0\\
|
||
0 & 1 & 0
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\family default
|
||
\series default
|
||
\shape default
|
||
\size default
|
||
\emph default
|
||
\bar default
|
||
\noun default
|
||
\color inherit
|
||
obtaining the vector space of
|
||
\begin_inset Formula $3\times3$
|
||
\end_inset
|
||
|
||
incremental homographies
|
||
\begin_inset Formula $\hhat$
|
||
\end_inset
|
||
|
||
parameterized by 8 parameters
|
||
\begin_inset Formula $\hh\in\mathbb{R}^{8}$
|
||
\end_inset
|
||
|
||
, with the mapping
|
||
\begin_inset Formula
|
||
\[
|
||
h\rightarrow\hhat\define\left[\begin{array}{ccc}
|
||
h_{5} & h_{4}-h_{3} & h_{1}\\
|
||
h_{4}+h_{3} & -h_{5}-h_{6} & h_{2}\\
|
||
h_{7} & h_{8} & h_{6}
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Subsection
|
||
Tensor Notation
|
||
\end_layout
|
||
|
||
\begin_layout Itemize
|
||
A homography between 2D projective spaces
|
||
\begin_inset Formula $A$
|
||
\end_inset
|
||
|
||
and
|
||
\begin_inset Formula $B$
|
||
\end_inset
|
||
|
||
can be written in tensor notation
|
||
\begin_inset Formula $H_{A}^{B}$
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Itemize
|
||
Applying a homography is then a tensor contraction
|
||
\begin_inset Formula $x^{B}=H_{A}^{B}x^{A}$
|
||
\end_inset
|
||
|
||
, mapping points in
|
||
\begin_inset Formula $A$
|
||
\end_inset
|
||
|
||
to points in
|
||
\begin_inset Formula $B$
|
||
\end_inset
|
||
|
||
.
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
\begin_inset Note Note
|
||
status collapsed
|
||
|
||
\begin_layout Plain Layout
|
||
The inverse of a homography can be found by contracting with two permutation
|
||
tensors:
|
||
\begin_inset Formula
|
||
\[
|
||
H_{B}^{A}=H_{A_{1}}^{B_{1}}H_{A_{2}}^{B_{2}}\epsilon_{B_{1}B_{2}B}\epsilon^{A_{1}A_{2}A}
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\end_inset
|
||
|
||
|
||
\begin_inset Note Note
|
||
status collapsed
|
||
|
||
\begin_layout Subsection
|
||
The Adjoint Map
|
||
\end_layout
|
||
|
||
\begin_layout Plain Layout
|
||
The adjoint can be done using tensor notation.
|
||
Denoting an incremental homography in space
|
||
\begin_inset Formula $A$
|
||
\end_inset
|
||
|
||
as
|
||
\begin_inset Formula $\hhat_{A_{1}}^{A_{2}}$
|
||
\end_inset
|
||
|
||
, we have, for example for
|
||
\begin_inset Formula $G_{1}$
|
||
\end_inset
|
||
|
||
|
||
\begin_inset Formula
|
||
\begin{eqnarray*}
|
||
\hhat_{B_{1}}^{B_{2}}=\Ad{H_{A}^{B}}{\hhat_{A_{1}}^{A_{2}}} & = & H_{A_{2}}^{B_{2}}\hhat_{A_{1}}^{A_{2}}H_{B_{1}}^{A_{1}}\\
|
||
& = & H_{A_{2}}^{B_{2}}\left[\begin{array}{ccc}
|
||
0 & 0 & 1\\
|
||
0 & 0 & 0\\
|
||
0 & 0 & 0
|
||
\end{array}\right]H_{A_{2}}^{B_{2}}H_{A_{3}}^{B_{3}}\epsilon_{B_{1}B_{2}B_{3}}\epsilon^{A_{1}A_{2}A_{3}}\\
|
||
& = & H_{1}^{B_{2}}H_{A_{2}}^{B_{2}}H_{A_{3}}^{B_{3}}\epsilon_{B_{1}B_{2}B_{3}}\epsilon^{3A_{2}A_{3}}
|
||
\end{eqnarray*}
|
||
|
||
\end_inset
|
||
|
||
This does not seem to help.
|
||
\end_layout
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
\begin_inset Newpage pagebreak
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Section*
|
||
Appendix: Proof of Property
|
||
\begin_inset CommandInset ref
|
||
LatexCommand ref
|
||
reference "proof1"
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
We can prove the following identity for rotation matrices
|
||
\begin_inset Formula $R$
|
||
\end_inset
|
||
|
||
,
|
||
\begin_inset Formula
|
||
\begin{eqnarray}
|
||
R\Skew{\omega}R^{T} & = & R\Skew{\omega}\left[\begin{array}{ccc}
|
||
a_{1} & a_{2} & a_{3}\end{array}\right]\nonumber \\
|
||
& = & R\left[\begin{array}{ccc}
|
||
\omega\times a_{1} & \omega\times a_{2} & \omega\times a_{3}\end{array}\right]\nonumber \\
|
||
& = & \left[\begin{array}{ccc}
|
||
a_{1}(\omega\times a_{1}) & a_{1}(\omega\times a_{2}) & a_{1}(\omega\times a_{3})\\
|
||
a_{2}(\omega\times a_{1}) & a_{2}(\omega\times a_{2}) & a_{2}(\omega\times a_{3})\\
|
||
a_{3}(\omega\times a_{1}) & a_{3}(\omega\times a_{2}) & a_{3}(\omega\times a_{3})
|
||
\end{array}\right]\nonumber \\
|
||
& = & \left[\begin{array}{ccc}
|
||
\omega(a_{1}\times a_{1}) & \omega(a_{2}\times a_{1}) & \omega(a_{3}\times a_{1})\\
|
||
\omega(a_{1}\times a_{2}) & \omega(a_{2}\times a_{2}) & \omega(a_{3}\times a_{2})\\
|
||
\omega(a_{1}\times a_{3}) & \omega(a_{2}\times a_{3}) & \omega(a_{3}\times a_{3})
|
||
\end{array}\right]\nonumber \\
|
||
& = & \left[\begin{array}{ccc}
|
||
0 & -\omega a_{3} & \omega a_{2}\\
|
||
\omega a_{3} & 0 & -\omega a_{1}\\
|
||
-\omega a_{2} & \omega a_{1} & 0
|
||
\end{array}\right]\nonumber \\
|
||
& = & \Skew{R\omega}\label{proof1}
|
||
\end{eqnarray}
|
||
|
||
\end_inset
|
||
|
||
where
|
||
\begin_inset Formula $a_{1}$
|
||
\end_inset
|
||
|
||
,
|
||
\begin_inset Formula $a_{2}$
|
||
\end_inset
|
||
|
||
, and
|
||
\begin_inset Formula $a_{3}$
|
||
\end_inset
|
||
|
||
are the
|
||
\emph on
|
||
rows
|
||
\emph default
|
||
of
|
||
\begin_inset Formula $R$
|
||
\end_inset
|
||
|
||
.
|
||
Above we made use of the orthogonality of rotation matrices and the triple
|
||
product rule:
|
||
\begin_inset Formula
|
||
\[
|
||
a(b\times c)=b(c\times a)=c(a\times b)
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
Similarly, without proof
|
||
\begin_inset CommandInset citation
|
||
LatexCommand cite
|
||
after "Lemma 2.3"
|
||
key "Murray94book"
|
||
|
||
\end_inset
|
||
|
||
:
|
||
\begin_inset Formula
|
||
\[
|
||
R(a\times b)=Ra\times Rb
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Section*
|
||
Appendix: Alternative Generators for
|
||
\begin_inset Formula $\slthree$
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
\begin_inset CommandInset citation
|
||
LatexCommand cite
|
||
key "Mei06iros"
|
||
|
||
\end_inset
|
||
|
||
uses the following generators for
|
||
\begin_inset Formula $\slthree$
|
||
\end_inset
|
||
|
||
:
|
||
\family roman
|
||
\series medium
|
||
\shape up
|
||
\size normal
|
||
\emph off
|
||
\bar no
|
||
\noun off
|
||
\color none
|
||
|
||
\begin_inset Formula
|
||
\[
|
||
G^{1}=\left[\begin{array}{ccc}
|
||
0 & 0 & 1\\
|
||
0 & 0 & 0\\
|
||
0 & 0 & 0
|
||
\end{array}\right]\mbox{ }G^{2}=\left[\begin{array}{ccc}
|
||
0 & 0 & 0\\
|
||
0 & 0 & 1\\
|
||
0 & 0 & 0
|
||
\end{array}\right]\mbox{ }G^{3}=\left[\begin{array}{ccc}
|
||
0 & 1 & 0\\
|
||
0 & 0 & 0\\
|
||
0 & 0 & 0
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\begin_inset Formula
|
||
\[
|
||
G^{4}=\left[\begin{array}{ccc}
|
||
0 & 0 & 0\\
|
||
1 & 0 & 0\\
|
||
0 & 0 & 0
|
||
\end{array}\right]\mbox{ }G^{5}=\left[\begin{array}{ccc}
|
||
1 & 0 & 0\\
|
||
0 & -1 & 0\\
|
||
0 & 0 & 0
|
||
\end{array}\right]\mbox{ }G^{6}=\left[\begin{array}{ccc}
|
||
0 & 0 & 0\\
|
||
0 & -1 & 0\\
|
||
0 & 0 & 1
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\begin_inset Formula
|
||
\[
|
||
G^{7}=\left[\begin{array}{ccc}
|
||
0 & 0 & 0\\
|
||
0 & 0 & 0\\
|
||
1 & 0 & 0
|
||
\end{array}\right]\mbox{ }G^{8}=\left[\begin{array}{ccc}
|
||
0 & 0 & 0\\
|
||
0 & 0 & 0\\
|
||
0 & 1 & 0
|
||
\end{array}\right]
|
||
\]
|
||
|
||
\end_inset
|
||
|
||
|
||
\family default
|
||
\series default
|
||
\shape default
|
||
\size default
|
||
\emph default
|
||
\bar default
|
||
\noun default
|
||
\color inherit
|
||
We choose to use a different linear combination as the basis.
|
||
\end_layout
|
||
|
||
\begin_layout Standard
|
||
\begin_inset CommandInset bibtex
|
||
LatexCommand bibtex
|
||
bibfiles "../../../papers/refs"
|
||
options "plain"
|
||
|
||
\end_inset
|
||
|
||
|
||
\end_layout
|
||
|
||
\end_body
|
||
\end_document
|