9.9 이차원 회전 변환의 유도

1. 이차원 회전의 개요

이차원 회전 변환은 평면 위의 점을 원점 주위로 회전시키는 선형 변환이다. 3차원 회전을 이해하기 위한 기초이며, 이동 로봇의 평면 운동, 관절 로봇의 특정 평면 부분 문제, 영상 처리 등에서 직접 사용된다.

2. 회전 행렬의 유도

2.1 기하학적 유도

원점 주위로 각도 \theta만큼 반시계 방향 회전을 가정하자. 단위 벡터 \hat{\mathbf{e}}_x = (1, 0)^T\hat{\mathbf{e}}_y = (0, 1)^T의 회전 후 위치:

  • \hat{\mathbf{e}}_x(\cos\theta, \sin\theta)^T로 이동
  • \hat{\mathbf{e}}_y(-\sin\theta, \cos\theta)^T로 이동

이 두 벡터를 열로 갖는 행렬이 회전 행렬이다.

\mathbf{R}(\theta) = \begin{bmatrix}\cos\theta & -\sin\theta \\ \sin\theta & \cos\theta\end{bmatrix}

2.2 삼각함수 덧셈 공식을 이용한 유도

(x, y)를 극좌표로 표현하면 x = r\cos\alpha, y = r\sin\alpha이다. 이 점을 \theta만큼 회전하면 새로운 각도가 \alpha + \theta이므로:

x' = r\cos(\alpha + \theta) = r(\cos\alpha\cos\theta - \sin\alpha\sin\theta) = x\cos\theta - y\sin\theta

y' = r\sin(\alpha + \theta) = r(\sin\alpha\cos\theta + \cos\alpha\sin\theta) = x\sin\theta + y\cos\theta

행렬 형식:

\begin{bmatrix}x' \\ y'\end{bmatrix} = \begin{bmatrix}\cos\theta & -\sin\theta \\ \sin\theta & \cos\theta\end{bmatrix}\begin{bmatrix}x \\ y\end{bmatrix}

3. 회전 행렬의 성질

3.1 직교성

\mathbf{R}(\theta)^T\mathbf{R}(\theta) = \mathbf{I}

증명:

\mathbf{R}^T\mathbf{R} = \begin{bmatrix}\cos\theta & \sin\theta \\ -\sin\theta & \cos\theta\end{bmatrix}\begin{bmatrix}\cos\theta & -\sin\theta \\ \sin\theta & \cos\theta\end{bmatrix} = \begin{bmatrix}\cos^2\theta + \sin^2\theta & 0 \\ 0 & \cos^2\theta + \sin^2\theta\end{bmatrix} = \mathbf{I}

3.2 행렬식

\det(\mathbf{R}(\theta)) = \cos^2\theta + \sin^2\theta = 1

회전 행렬은 특수 직교 행렬(\det = +1)이며, 반사를 포함하지 않는다.

3.3 역행렬

\mathbf{R}(\theta)^{-1} = \mathbf{R}(\theta)^T = \mathbf{R}(-\theta) = \begin{bmatrix}\cos\theta & \sin\theta \\ -\sin\theta & \cos\theta\end{bmatrix}

역회전은 반대 방향(-\theta)의 회전과 같다.

3.4 행렬 곱셈과 각도 합산

두 회전의 합성은 각도의 합산이다.

\mathbf{R}(\theta_1)\mathbf{R}(\theta_2) = \mathbf{R}(\theta_1 + \theta_2)

증명: 삼각함수 덧셈 공식을 사용하면 직접 확인된다.

3.5 가환성(Commutativity)

\mathbf{R}(\theta_1)\mathbf{R}(\theta_2) = \mathbf{R}(\theta_2)\mathbf{R}(\theta_1)

이차원 회전은 가환이다. 그러나 3차원 회전은 일반적으로 가환이 아니다.

4. 회전의 보존 성질

4.1 거리 보존

회전은 등거리 변환(isometry)이다.

\lVert\mathbf{R}\mathbf{v}\rVert = \lVert\mathbf{v}\rVert

4.2 각도 보존

두 벡터 사이의 각도는 회전에 의해 보존된다.

(\mathbf{R}\mathbf{u})^T(\mathbf{R}\mathbf{v}) = \mathbf{u}^T\mathbf{R}^T\mathbf{R}\mathbf{v} = \mathbf{u}^T\mathbf{v}

4.3 원점 고정

회전은 원점을 고정한다: \mathbf{R}\mathbf{0} = \mathbf{0}. 원점을 제외한 점에 대한 회전은 병진 변환과 결합되어야 한다.

5. 회전과 병진의 결합

평면 위의 일반적 강체 변환은 회전과 병진의 결합이다.

\mathbf{p}' = \mathbf{R}(\theta)\mathbf{p} + \mathbf{t}

여기서 \mathbf{t} = (t_x, t_y)^T는 병진 벡터이다.

5.1 동차 변환

3차원 동차 좌표로 표현:

\begin{bmatrix}x' \\ y' \\ 1\end{bmatrix} = \begin{bmatrix}\cos\theta & -\sin\theta & t_x \\ \sin\theta & \cos\theta & t_y \\ 0 & 0 & 1\end{bmatrix}\begin{bmatrix}x \\ y \\ 1\end{bmatrix}

3 \times 3 행렬이 평면에서의 강체 변환을 표현하며, 이들의 집합은 군 SE(2)를 형성한다.

6. 회전의 미분

각도 \theta에 대한 회전 행렬의 미분:

\frac{d\mathbf{R}(\theta)}{d\theta} = \begin{bmatrix}-\sin\theta & -\cos\theta \\ \cos\theta & -\sin\theta\end{bmatrix}

\theta = 0에서:

\left.\frac{d\mathbf{R}}{d\theta}\right|_{\theta = 0} = \begin{bmatrix}0 & -1 \\ 1 & 0\end{bmatrix} = \mathbf{J}

이 행렬 \mathbf{J}\pi/2 회전과 동등하며, 다음의 성질을 갖는다.

\mathbf{J}^2 = -\mathbf{I}

\mathbf{J}는 2차원 회전의 리 대수(Lie algebra) \mathfrak{so}(2)의 생성자이다.

7. 지수 형식

회전 행렬은 지수 함수로 표현된다.

\mathbf{R}(\theta) = \exp(\theta\mathbf{J}) = \mathbf{I} + \theta\mathbf{J} + \frac{\theta^2}{2!}\mathbf{J}^2 + \cdots

\mathbf{J}^2 = -\mathbf{I}를 이용하면 급수가 삼각함수 급수로 정리되어 \exp(\theta\mathbf{J}) = \cos\theta\mathbf{I} + \sin\theta\mathbf{J}가 된다.

8. 로봇 공학에서의 응용

이동 로봇의 자세: 평면 이동 로봇의 자세는 (x, y, \theta)로 표현되며, \theta가 2차원 회전이다.

평면 매니퓰레이터: 평면에서 동작하는 로봇 팔의 기구학은 2차원 회전의 연쇄로 기술된다.

영상 회전: 디지털 영상의 회전 연산도 2차원 회전 변환이다.

9. 참고 문헌

  • Siciliano, B., Sciavicco, L., Villani, L., & Oriolo, G. (2009). Robotics: Modelling, Planning and Control. Springer.
  • Craig, J. J. (2018). Introduction to Robotics: Mechanics and Control (4th ed.). Pearson.
  • Lynch, K. M., & Park, F. C. (2017). Modern Robotics: Mechanics, Planning, and Control. Cambridge University Press.

version: 1.0