Introduction
이번 포스트에서는 3차원 변환을 나타내는 Lie Group SE(3)에서 Lie Algebra se(3)를 유도해 보도록 하겠습니다. 또한, 둘 간의 변환 관계를 지수, 로그 변환을 통해 정리하도록 하겠습니다. 많은 수학적 지식과 증명이 필요하나 수학자가 아닌 엔지니어로서 필요한 정도만 설명하는 게 목표이니 참고 바랍니다.
Lie Algebra se(3)
이전 포스트에서 회전 변환을 나타내는 SE(3) 군이 Lie 군에 속함을 살펴보았습니다. SE(3) 군이 항등원과 역원이 존재하며 곱셈에 닫혀있음과 동시에 결합 법칙이 성립함을 알아봤습니다.
$$SE(3)=\left\{ \mathbf{T}=\begin{bmatrix}
\mathbf{R} & \mathbf{t} \\
0^T & 1 \\
\end{bmatrix} \in \mathbb{R}^{4 \times 4}|\mathbf{R} \in SO(3),\mathbf{t} \in \mathbb{R}^3 \right\}$$
이제 이에 대응하는 se(3)를 알아보도록 하겠습니다. Lie 군 SE(3)가 SO(3)를 내포하고 있음을 생각해 보면, Lie 대수 se(3) 역시 so(3)를 내포하고 있을 것임을 유추할 수 있는데요. 실제로 정의를 살펴보면 익숙한 표현들이 나타나고 있습니다.
$$\begin{equation}
\begin{aligned}
\mathfrak{se}(3) = \{ \ \xi^{\wedge} = \begin{bmatrix}
\omega^{\wedge} & \mathbf{v} \\
\mathbf{0} & 0
\end{bmatrix} \in \mathbb{R}^{4 \times 4} \ | \ \xi = \begin{bmatrix} \omega \\ \mathbf{v} \end{bmatrix} \in \mathbb{R}^{6} \}
\end{aligned}
\end{equation}$$
여기서 처음 보는 $\xi$는 물체의 3차원 속도를 나타내는 twist입니다. so(3)에서 이미 접했던 각속도 $\omega$와 3차원 평행 이동 성분을 나타내는 $\mathbf{v}$가 합쳐진 형태입니다. $\mathbf{R, t}$가 합쳐진 SO(3)와 유사한 형식임을 알 수 있죠. 앞서 so(3)에서도 각속도 $\omega$가 아닌 그 반대칭 행렬을 Lie 대수로 사용했습니다. 이는 se(3)에서도 마찬가지이며, $\xi$의 반대칭 행렬이 Lie 대수를 나타냅니다. so(3)와 같이 생성자의 합으로도 나타낼 수 있는데, $G_1~G_3$까지는 so(3)에서 사용한 회전에 대한 회전축이며, $G_4~G_6$까지는 이동에 대한 base를 나타냅니다. 새로 등장한 생성자들에 대한 소개와 최종적으로 $\xi$에서 se(3), $\xi^{\wedge}$의 변환을 간단히 정리해 보겠습니다.
$$\begin{equation}
\begin{aligned}
& G_{4} = \begin{pmatrix} 0&0&0&1 \\ 0&0&0&0 \\ 0&0&0&0 \\ 0&0&0&0 \end{pmatrix}, \ \ G_{5} = \begin{pmatrix} 0&0&0&0 \\ 0&0&0&1 \\ 0&0&0&0 \\ 0&0&0&0 \end{pmatrix},\ \ G_{6} = \begin{pmatrix} 0&0&0&0 \\ 0&0&0&0 \\ 0&0&0&1 \\ 0&0&0&0 \end{pmatrix} \\
\end{aligned}
\end{equation}$$
$$\xi=(\omega, \mathbf{v})^{T} \in \mathbb{R}^{R}$$
$$\omega_{1}G_{1} + \omega_{2}G_{2} + \omega_{3}G_{3} + v_{1}G_{4} + v_{2}G_{5} + v_{3}G_{6} \in \mathfrak{se}(3)$$
Exponential and Logarithm mapping
SE(3)와 se(3)의 경우 앞서 소개한 SO(3)와 so(3)의 관계처럼 전개하다 보니.. 어? Rodriguze formula였습니다! 짜잔! 같은 드라마틱한 반전은 없습니다. 아무래도 새롭게 추가된 평행 이동과 관련된 요소가 matrix가 아니라 vector이기 때문에 더욱 그럴 것으로 생각되는데요. 그렇기에 특별히 그 관계에 대해서는 다루지 않고 바로 서로 간의 변환을 나타내는 지수/로그 변환에 대해 다뤄보겠습니다.
Exponential mapping
우선 so(3) 유도 과정과 같이 ordinary series expansion을 활용해 전개하도록 합시다.
$$\textrm{exp}(X)=\sum_{k=0}^{\infty}\frac{X^k}{k!}=I+X+\frac{1}{2}X^2+\frac{1}{6}X^3+\cdots$$
이를 전개하면 아래와 같습니다.
$$\begin{aligned}
\exp(\xi^{\wedge}) & = \exp \begin{bmatrix} \omega^{\wedge} & \mathbf{v} \\ \mathbf{0} & 0 \end{bmatrix} \\
& = \mathbf{I} + \begin{bmatrix} \omega^{\wedge} & \mathbf{v} \\ \mathbf{0} & 0 \end{bmatrix} + \frac{1}{2!} \begin{bmatrix} (\omega^{\wedge})^{2} & \omega^{\wedge}\mathbf{v} \\ \mathbf{0} & 0 \end{bmatrix} + \frac{1}{3!} \begin{bmatrix} (\omega^{\wedge})^{3} & (\omega^{\wedge})^{2}\mathbf{v} \\ \mathbf{0} & 0 \end{bmatrix} + \cdots \\ & = \begin{bmatrix} \sum_{0}^{\infty}\frac{1}{n!}(\omega^{\wedge})^{n} & \sum_{0}^{\infty}\frac{1}{(n+1)!}(\omega^{\wedge})^{n} \mathbf{v} \\ \mathbf{0} & 0 \end{bmatrix} \\
& = \begin{bmatrix} \exp(\omega^{\wedge}) & \mathbf{Qv} \\ \mathbf{0} & 1 \end{bmatrix} \\ & = \begin{bmatrix} \mathbf{R} & \mathbf{Qv} \\ \mathbf{0} & 1 \end{bmatrix} \end{aligned}$$
처음 보는 $\mathbf{Q}$가 등장했는데요. 이는 나중에 더 중요한 의미로 재등장하게 됩니다. 아래는 각각의 symbol들의 의미를 정리한 표입니다.
Symbol | Description |
$\theta$ | $|\omega|$ |
$\theta^{2}$ | $\omega^{\intercal}\omega$ |
$A$ | $\frac{\sin\theta}{\theta}$ |
$B$ | $\frac{1-\cos\theta}{\theta^{2}}$ |
$C$ | $\frac{1-A}{\theta^{2}} = \frac{\theta - \sin\theta}{\theta^{3}}$ |
$\mathbf{R}$ | $\mathbf{I} + A\omega^{\wedge} + B (\omega^{\wedge})^{2}$ |
$\mathbf{Q}$ | $\mathbf{I} + B\omega^{\wedge} + C (\omega^{\wedge})^{2}$ |
Logarithm mapping
SE(3)의 로그 변환은 두 부분으로 나뉘게 됩니다. 그중 회전을 나타내는 부분은 SO(3)의 로그 변환을 그대로 따릅니다. 이동을 나타내는 부분은 아래와 같으며, 최종적으로 둘을 합치면 se(3)를 만들 수 있습니다.
$$\begin{aligned}
& \mathbf{Q}^{-1} = \mathbf{I} - \frac{1}{2!}\omega^{\wedge} + \frac{1}{\theta^{2}} \bigg( 1 - \frac{A}{2B} \bigg) (\omega^{\wedge})^{2} \\
\end{aligned}$$
$$\mathfrak{se}(3)=\begin{bmatrix}
\text{log}(\mathbf{R}) & \mathbf{Q}^{-1}\mathbf{t} \\
\mathbf{0} & 0 \\
\end{bmatrix}$$
Summary
Reference