inserted figures

release/4.3a0
Frank Dellaert 2010-03-07 17:50:27 +00:00
parent e9ea8b426a
commit d4447cbe48
4 changed files with 218 additions and 73 deletions

View File

@ -348,7 +348,7 @@ Aff(2),6
\begin_layout Standard \begin_layout Standard
\begin_inset Note Comment \begin_inset Note Comment
status open status collapsed
\begin_layout Plain Layout \begin_layout Plain Layout
SL(3),8 SL(3),8
@ -390,36 +390,6 @@ SL(3),8
Motivation: Rigid Motions in the Plane Motivation: Rigid Motions in the Plane
\end_layout \end_layout
\begin_layout Standard
\begin_inset Float figure
placement h
wide false
sideways false
status collapsed
\begin_layout Plain Layout
IMAGINE A FIGURE HERE
\begin_inset Caption
\begin_layout Plain Layout
(a) A robot translating.
(b) A robot rotating.
\end_layout
\end_inset
\end_layout
\begin_layout Plain Layout
\end_layout
\end_inset
\end_layout
\begin_layout Standard \begin_layout Standard
We will start with a small example of a robot moving in a plane, parameterized We will start with a small example of a robot moving in a plane, parameterized
by a by a
@ -480,6 +450,7 @@ where
\end_inset \end_inset
in counterclockwise direction. in counterclockwise direction.
\end_layout \end_layout
\begin_layout Standard \begin_layout Standard
@ -490,7 +461,13 @@ sideways false
status collapsed status collapsed
\begin_layout Plain Layout \begin_layout Plain Layout
IMAGINE A FIGURE HERE \align center
\begin_inset Graphics
filename images/circular.pdf
\end_inset
\begin_inset Caption \begin_inset Caption
\begin_layout Plain Layout \begin_layout Plain Layout
@ -520,7 +497,7 @@ The reason is that, if we move the robot a tiny bit according to the velocity
\begin_inset Formula $(v_{x},\, v_{y},\,\omega)$ \begin_inset Formula $(v_{x},\, v_{y},\,\omega)$
\end_inset \end_inset
, we do have to first order , we have (to first order)
\begin_inset Formula \[ \begin_inset Formula \[
(x_{t+\delta},\, y_{t+\delta},\,\theta_{t+\delta})=(x_{0}+v_{x}\delta,\, y_{0}+v_{y}\delta,\,\theta_{0}+\omega\delta)\] (x_{t+\delta},\, y_{t+\delta},\,\theta_{t+\delta})=(x_{0}+v_{x}\delta,\, y_{0}+v_{y}\delta,\,\theta_{0}+\omega\delta)\]
@ -608,7 +585,13 @@ sideways false
status open status open
\begin_layout Plain Layout \begin_layout Plain Layout
IMAGINE A FIGURE HERE \align center
\begin_inset Graphics
filename images/n-steps.pdf
\end_inset
\begin_inset Caption \begin_inset Caption
\begin_layout Plain Layout \begin_layout Plain Layout
@ -718,18 +701,13 @@ T(t)=\lim_{n\rightarrow\infty}\left(I+\frac{t}{n}\xihat\right)^{n}\]
For real numbers, this series is familiar and is actually a way to compute For real numbers, this series is familiar and is actually a way to compute
the exponential function: the exponential function:
\begin_inset Formula \[ \begin_inset Formula \[
e^{x}=\lim_{n\rightarrow\infty}\left(I+\frac{x}{n}\right)^{n}=\sum_{k=0}^{\infty}\frac{x^{k}}{k!}\] e^{x}=\lim_{n\rightarrow\infty}\left(1+\frac{x}{n}\right)^{n}=\sum_{k=0}^{\infty}\frac{x^{k}}{k!}\]
\end_inset \end_inset
The series can be similarly defined for square matrices, The series can be similarly defined for square matrices,and the final result
\begin_inset Formula \[ is that we can write the motion of a robot along a circular trajectory,
e^{A}=\lim_{n\rightarrow\infty}\left(I+\frac{A}{n}\right)^{n}=\sum_{k=0}^{\infty}\frac{A^{k}}{k!}\] resulting from the 2D twist
\end_inset
Our 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)$ \begin_inset Formula $\xi=(v,\omega)$
\end_inset \end_inset
@ -757,7 +735,7 @@ exponential map.
\end_layout \end_layout
\begin_layout Standard \begin_layout Standard
The above has all elemtns of Lie group theory. The above has all elements of Lie group theory.
We call the space of 2D rigid transformations, along with the composition We call the space of 2D rigid transformations, along with the composition
operation, the operation, the
\emph on \emph on
@ -1212,7 +1190,7 @@ The Lie group
\begin_inset Formula \[ \begin_inset Formula \[
\hat{}:\theta\rightarrow\that=\skew{\theta}\] \hat{}:\omega\rightarrow\what=\skew{\omega}\]
\end_inset \end_inset
@ -1256,13 +1234,46 @@ which maps the angle
The exponential map can be computed in closed form as The exponential map can be computed in closed form as
\begin_inset Formula \[ \begin_inset Formula \[
R=e^{\skew{\theta}}=\left[\begin{array}{cc} R=e^{\skew{\omega t}}=e^{\skew{\theta}}=\left[\begin{array}{cc}
\cos\theta & -\sin\theta\\ \cos\theta & -\sin\theta\\
\sin\theta & \cos\theta\end{array}\right]\] \sin\theta & \cos\theta\end{array}\right]\]
\end_inset \end_inset
This can be proven
\begin_inset CommandInset citation
LatexCommand cite
key "Hall00book"
\end_inset
by realizing
\begin_inset Formula $\skew 1$
\end_inset
is diagonizable 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.
\end_layout \end_layout
\begin_layout Subsection \begin_layout Subsection
@ -1336,13 +1347,13 @@ We would now like to know what an incremental rotation parameterized by
would do: would do:
\begin_inset Formula \[ \begin_inset Formula \[
q(\text{\theta})=Re^{\skew{\theta}}p\] q(\text{\omega t})=Re^{\skew{\omega t}}p\]
\end_inset \end_inset
hence the derivative is: hence the derivative is:
\begin_inset Formula \[ \begin_inset Formula \[
\deriv{q(\omega)}{\omega}=R\deriv{}{\omega}\left(e^{\skew{\theta}}p\right)=R\deriv{}{\omega}\left(\skew{\theta}p\right)=RH_{p}\] \deriv{q(\omega t)}t=R\deriv{}t\left(e^{\skew{\omega t}}p\right)=R\deriv{}t\left(\skew{\omega t}p\right)=RH_{p}\]
\end_inset \end_inset
@ -2872,7 +2883,7 @@ Applying a homography is then a tensor contraction
. .
\end_layout \end_layout
\begin_layout Plain Layout \begin_layout Standard
\begin_inset Note Note \begin_inset Note Note
status collapsed status collapsed

BIN
doc/images/circular.pdf Normal file

Binary file not shown.

BIN
doc/images/n-steps.pdf Normal file

Binary file not shown.

View File

@ -54,7 +54,20 @@ Geometry Derivatives and Other Hairy Math
Frank Dellaert Frank Dellaert
\end_layout \end_layout
\begin_layout Standard \begin_layout Plain Layout
\begin_inset Box Frameless
position "t"
hor_pos "c"
has_inner_box 1
inner_pos "t"
use_parbox 0
width "100col%"
special "none"
height "1in"
height_special "totalheight"
status collapsed
\begin_layout Plain Layout
\begin_inset Note Comment \begin_inset Note Comment
status open status open
@ -67,7 +80,7 @@ Derivatives
\end_layout \end_layout
\begin_layout Standard \begin_layout Plain Layout
\begin_inset FormulaMacro \begin_inset FormulaMacro
\newcommand{\deriv}[2]{\frac{\partial#1}{\partial#2}} \newcommand{\deriv}[2]{\frac{\partial#1}{\partial#2}}
{\frac{\partial#1}{\partial#2}} {\frac{\partial#1}{\partial#2}}
@ -88,7 +101,7 @@ Derivatives
\end_layout \end_layout
\begin_layout Standard \begin_layout Plain Layout
\begin_inset Note Comment \begin_inset Note Comment
status open status open
@ -101,7 +114,7 @@ Lie Groups
\end_layout \end_layout
\begin_layout Standard \begin_layout Plain Layout
\begin_inset FormulaMacro \begin_inset FormulaMacro
\newcommand{\xhat}{\hat{x}} \newcommand{\xhat}{\hat{x}}
{\hat{x}} {\hat{x}}
@ -122,7 +135,7 @@ Lie Groups
\end_layout \end_layout
\begin_layout Standard \begin_layout Plain Layout
\begin_inset FormulaMacro \begin_inset FormulaMacro
\newcommand{\define}{\stackrel{\Delta}{=}} \newcommand{\define}{\stackrel{\Delta}{=}}
{\stackrel{\Delta}{=}} {\stackrel{\Delta}{=}}
@ -143,7 +156,7 @@ Lie Groups
\end_layout \end_layout
\begin_layout Standard \begin_layout Plain Layout
\begin_inset Note Comment \begin_inset Note Comment
status open status open
@ -156,7 +169,7 @@ SO(2)
\end_layout \end_layout
\begin_layout Standard \begin_layout Plain Layout
\begin_inset FormulaMacro \begin_inset FormulaMacro
\newcommand{\Rtwo}{\mathfrak{\mathbb{R}^{2}}} \newcommand{\Rtwo}{\mathfrak{\mathbb{R}^{2}}}
{\mathfrak{\mathbb{R}^{2}}} {\mathfrak{\mathbb{R}^{2}}}
@ -189,7 +202,7 @@ SO(2)
\end_layout \end_layout
\begin_layout Standard \begin_layout Plain Layout
\begin_inset Note Comment \begin_inset Note Comment
status open status open
@ -202,7 +215,7 @@ SE(2)
\end_layout \end_layout
\begin_layout Standard \begin_layout Plain Layout
\begin_inset FormulaMacro \begin_inset FormulaMacro
\newcommand{\SEtwo}{SE(2)} \newcommand{\SEtwo}{SE(2)}
{SE(2)} {SE(2)}
@ -217,7 +230,7 @@ SE(2)
\end_layout \end_layout
\begin_layout Standard \begin_layout Plain Layout
\begin_inset Note Comment \begin_inset Note Comment
status open status open
@ -230,7 +243,7 @@ SO(3)
\end_layout \end_layout
\begin_layout Standard \begin_layout Plain Layout
\begin_inset FormulaMacro \begin_inset FormulaMacro
\newcommand{\Rthree}{\mathfrak{\mathbb{R}^{3}}} \newcommand{\Rthree}{\mathfrak{\mathbb{R}^{3}}}
{\mathfrak{\mathbb{R}^{3}}} {\mathfrak{\mathbb{R}^{3}}}
@ -263,7 +276,7 @@ SO(3)
\end_layout \end_layout
\begin_layout Standard \begin_layout Plain Layout
\begin_inset Note Comment \begin_inset Note Comment
status open status open
@ -276,7 +289,7 @@ SE(3)
\end_layout \end_layout
\begin_layout Standard \begin_layout Plain Layout
\begin_inset FormulaMacro \begin_inset FormulaMacro
\newcommand{\Rsix}{\mathfrak{\mathbb{R}^{6}}} \newcommand{\Rsix}{\mathfrak{\mathbb{R}^{6}}}
{\mathfrak{\mathbb{R}^{6}}} {\mathfrak{\mathbb{R}^{6}}}
@ -301,12 +314,121 @@ SE(3)
\end_inset \end_inset
\end_layout
\end_inset
\end_layout \end_layout
\begin_layout Section \begin_layout Section
Derivatives of Lie Group Mappings Derivatives of Lie Group Mappings
\end_layout \end_layout
\begin_layout Subsection
New
\end_layout
\begin_layout Standard
The following is relevant
\begin_inset CommandInset citation
LatexCommand cite
after "page 45"
key "Hall00book"
\end_inset
: suppose that
\begin_inset Formula $\Phi:G\rightarrow H$
\end_inset
is a a mapping (Lie group homomorphism).
Then there exists a unique linear map
\begin_inset Formula $\phi:\gg\rightarrow\mathfrak{h}$
\end_inset
\begin_inset Formula \[
\phi(\xhat)\define\lim_{t\rightarrow0}\frac{d}{dt}\Phi\left(e^{t\xhat}\right)\]
\end_inset
such that
\end_layout
\begin_layout Enumerate
\begin_inset Formula $\Phi\left(e^{\xhat}\right)=e^{\phi\left(\xhat\right)}$
\end_inset
\end_layout
\begin_layout Enumerate
\begin_inset Formula $\phi\left(T\xhat T^{-1}\right)=\Phi(T)\phi(\xhat)\Phi(T^{-1})$
\end_inset
\end_layout
\begin_layout Enumerate
\begin_inset Formula $\phi\left([\xhat,\yhat]\right)=\left[\phi(\xhat),\phi(\yhat)\right]$
\end_inset
\end_layout
\begin_layout Standard
In other words, the map
\begin_inset Formula $\phi$
\end_inset
is the derivative of
\begin_inset Formula $\Phi$
\end_inset
at the identity.
It suffices to compute
\begin_inset Formula $\phi$
\end_inset
for a basis of
\begin_inset Formula $\gg$
\end_inset
.
Since
\begin_inset Formula \[
e^{-\xhat}=\left(e^{-\xhat}\right)^{-1}\]
\end_inset
clearly
\begin_inset Formula $\phi(\xhat)=-\xhat$
\end_inset
for the inverse mapping.
\end_layout
\begin_layout Standard
Let us define two mappings
\begin_inset Formula \[
\Phi_{1}(A)=AB\mbox{ and }\Phi_{2}(B)=AB\]
\end_inset
Then
\begin_inset Formula \[
\phi_{1}(\xhat)=\lim_{t\rightarrow0}\frac{d}{dt}\Phi_{1}\left(e^{t\xhat}B\right)=\]
\end_inset
\end_layout
\begin_layout Subsection
Old
\end_layout
\begin_layout Standard \begin_layout Standard
The derivatives for The derivatives for
\emph on \emph on
@ -962,11 +1084,11 @@ We would now like to know what an incremental rotation parameterized by
would do: would do:
\begin_inset Formula \[ \begin_inset Formula \[
q(\text{\theta})=Re^{\skew{\theta}}p\] q(\text{\omega t})=Re^{\skew{\omega t}}p\]
\end_inset \end_inset
hence the derivative (following the exposition in Section The derivative is (following the exposition in Section
\begin_inset CommandInset ref \begin_inset CommandInset ref
LatexCommand ref LatexCommand ref
reference "sec:Derivatives-of-Actions" reference "sec:Derivatives-of-Actions"
@ -975,7 +1097,7 @@ reference "sec:Derivatives-of-Actions"
): ):
\begin_inset Formula \[ \begin_inset Formula \[
\deriv{q(\omega)}{\omega}=R\deriv{}{\omega}\left(e^{\skew{\theta}}p\right)=R\deriv{}{\omega}\left(\skew{\theta}p\right)=RH_{p}\] \deriv{q(\omega t)}t=R\deriv{}t\left(e^{\skew{\omega t}}p\right)=R\deriv{}t\left(\skew{\omega t}p\right)\]
\end_inset \end_inset
@ -1004,22 +1126,34 @@ cross product
\begin_inset Formula \[ \begin_inset Formula \[
\skew{\theta}p=\left[\begin{array}{c} \skew{\theta}p=\left[\begin{array}{c}
-y\\ -y\\
x\end{array}\right]\theta=H_{p}\theta\] x\end{array}\right]\theta=\omega R_{pi/2}pt\]
\end_inset \end_inset
with Hence, the final derivative of an action in its first argument is
\begin_inset Formula $H_{p}=R_{pi/2}p$ \begin_inset Formula \[
\deriv{q(\omega t)}{\omega t}=\omega RR_{pi/2}p=\omega R_{pi/2}Rp=\omega R_{pi/2}q\]
\end_inset
\end_layout
\begin_layout Standard
Really need to think of relationship
\begin_inset Formula $\omega$
\end_inset
and
\begin_inset Formula $t$
\end_inset \end_inset
. .
Hence, the final derivative of an action in its first argument is We don't have a time
\begin_inset Formula \[ \begin_inset Formula $t$
\deriv{q(\theta)}{\theta}=RH_{p}=RR_{pi/2}p=R_{pi/2}Rp=R_{pi/2}q\]
\end_inset \end_inset
in our code.
\end_layout \end_layout
\begin_layout Standard \begin_layout Standard