6.66 3차원 동차 변환 행렬의 구조
1. 도입
3차원 공간에서의 강체 운동은 회전과 병진의 결합으로 기술되며, 그 통일적 표현이 4 \times 4 동차 변환 행렬이다. 이 행렬은 단순한 수치 표현을 넘어 회전 부분 행렬, 병진 벡터, 그리고 동차 좌표를 위한 정규화 행으로 명확한 블록 구조를 가지며, 각 블록은 고유한 기하학적 의미를 지닌다. 이 절에서는 3차원 동차 변환 행렬의 블록 구조와 각 성분의 의미, 회전 부분의 직교성과 행렬식 조건, 자유도와 매개 변수화, 행렬식과 노름 등의 대수적 성질, 동차 변환의 위계 안에서의 위치, 그리고 로봇공학에서 이 구조가 어떻게 활용되는지를 다룬다.
2. 동차 변환 행렬의 블록 구조
3차원 강체 변환을 표현하는 동차 변환 행렬은 다음의 블록 구조를 가진다.
T = \begin{bmatrix} R & \mathbf{t} \\ \mathbf{0}^\top & 1 \end{bmatrix} \in \mathbb{R}^{4 \times 4}
각 블록의 구체적 형태는 다음과 같다.
T = \begin{bmatrix} r_{11} & r_{12} & r_{13} & t_x \\ r_{21} & r_{22} & r_{23} & t_y \\ r_{31} & r_{32} & r_{33} & t_z \\ 0 & 0 & 0 & 1 \end{bmatrix}
좌상단 3 \times 3 블록 R은 회전 부분이며, 우상단 3 \times 1 블록 \mathbf{t}는 병진 벡터이다. 마지막 행 (\mathbf{0}^\top \;\; 1)은 동차 좌표를 위한 정규화 행으로, 모든 강체 변환에서 동일한 형태를 가진다.
3. 회전 부분의 구조
회전 부분 R은 특수 직교군 SO(3)의 원소이며, 다음 두 조건을 만족한다.
- 직교성: R^\top R = R R^\top = I_3.
- 단위 행렬식: \det R = +1.
직교성은 회전이 거리와 각을 보존함을 의미하며, 단위 행렬식은 방향(orientation)을 보존함, 즉 반사를 포함하지 않음을 의미한다. R의 세 열은 회전된 좌표계의 단위 기저 벡터를 원래 좌표계에서 표현한 것이며, 정규 직교 집합을 형성한다.
R = [\,\hat{\mathbf{x}}' \;\; \hat{\mathbf{y}}' \;\; \hat{\mathbf{z}}'\,]
각 열 벡터는 단위 길이를 가지고 서로 직교한다. 또한 \hat{\mathbf{x}}' \times \hat{\mathbf{y}}' = \hat{\mathbf{z}}'의 오른손 법칙이 성립한다.
4. 병진 부분의 구조
병진 벡터 \mathbf{t} \in \mathbb{R}^3은 새 좌표계의 원점을 원래 좌표계에서 표현한 것이며, 자유로운 세 실수 성분으로 구성된다. 회전 부분과 달리 병진 부분에는 어떤 제약도 부과되지 않는다.
5. 정규화 행의 의미
마지막 행 (0, 0, 0, 1)은 동차 좌표계를 형성하는 데 본질적인 역할을 수행한다. 이 행이 모든 강체 변환에서 동일하다는 사실은 동차 변환이 사영 변환의 위계에서 가장 좁은 부류에 속함을 보여 준다. 일반적인 사영 변환에서는 이 행이 임의의 형태를 가질 수 있으며, 이때 변환은 거리와 각을 보존하지 않는다.
6. 자유도
3차원 동차 변환 행렬은 16개의 성분을 가지지만, 다음의 제약 조건들이 부과된다.
- 회전 부분의 직교성: 6개의 독립적 제약(세 열의 단위 길이 조건과 세 쌍의 직교 조건).
- 마지막 행의 고정: 4개의 성분이 고정.
따라서 독립적 자유도는 16 - 6 - 4 = 6이며, 이는 회전 3 자유도와 병진 3 자유도의 합과 일치한다. 이 6 자유도는 강체의 자세를 완전히 결정하는 데 필요한 최소 매개 변수 수이다.
7. 회전 부분의 매개 변수화
회전 부분 R은 9개의 성분을 가지지만 실질적인 자유도는 3이다. 따라서 회전을 더 적은 매개 변수로 표현하는 다양한 방법이 존재한다.
- 오일러 각: 세 개의 회전 각으로 표현. 표현의 모호성과 김벌락(gimbal lock) 특이점을 가진다.
- 축-각 표현: 회전 축의 단위 벡터와 회전 각으로 표현. 4개의 매개 변수에 단위 벡터 제약이 부과된다.
- 단위 쿼터니언: 4개의 성분으로 단위 노름 제약을 가지며, 이중 덮개 특성을 가진다.
- 회전 행렬: 9개의 성분으로 직교성 제약을 가지며, 가장 직접적인 표현이다.
각 매개 변수화는 고유한 장단점을 가지며, 응용에 따라 적절한 표현이 선택된다.
8. 동차 변환의 행렬식
동차 변환 행렬의 행렬식은 회전 부분의 행렬식과 일치한다.
\det T = \det R \cdot 1 = +1
이는 T의 마지막 행이 (0, 0, 0, 1)인 형태이므로 라플라스 전개에서 마지막 행에 대한 전개가 단순화되어 얻어진다. 이 사실은 강체 변환이 부피를 보존하고 방향을 보존함을 다시 확인해 준다.
9. 동차 변환의 노름과 조건수
회전 부분이 직교 행렬이므로 동차 변환의 회전 부분의 스펙트럼 노름은 1이다. 그러나 전체 4 \times 4 행렬의 노름은 병진 벡터의 크기에 의존하며, 일반적으로 1보다 클 수 있다. 동차 변환의 곱이 조건수에 미치는 영향은 회전 부분의 누적 오차와 병진 부분의 누적 오차로 분리하여 분석할 수 있다.
10. 변환의 군 구조와 SE(3)
3차원 동차 변환 행렬의 집합은 행렬 곱셈에 대해 군 구조를 형성하며, 이를 특수 유클리드 군 SE(3)이라 한다.
SE(3) = \left\{ \begin{bmatrix} R & \mathbf{t} \\ \mathbf{0}^\top & 1 \end{bmatrix} : R \in SO(3), \, \mathbf{t} \in \mathbb{R}^3 \right\}
SE(3)는 6차원의 매끄러운 매니폴드이며, 리 군의 구조를 가진다. 이 군은 비가환적이며, 회전과 병진이 결합하는 방식의 비대칭성으로부터 비가환성이 유래한다.
11. 부분 군과 구조적 분해
SE(3)는 다음의 중요한 부분 구조를 가진다.
- SO(3): 병진이 영인 회전 부분 군. T가 \mathbf{t} = \mathbf{0}인 경우.
- \mathbb{R}^3 (병진 부분 군): 회전 부분이 단위 행렬인 순수 병진. R = I인 경우.
- 직접곱이 아닌 반직접곱: SE(3) = SO(3) \ltimes \mathbb{R}^3. 회전이 병진에 작용하는 방식이 단순한 직접곱이 아닌 반직접곱 구조를 형성한다.
이러한 구조는 강체 운동의 회전 성분과 병진 성분이 단순히 독립적으로 분리될 수 없음을, 그리고 회전이 병진에 미치는 영향이 본질적임을 보여 준다.
12. 동차 변환의 사영 위계 안에서의 위치
동차 변환 행렬은 일반적인 4 \times 4 사영 변환의 매우 좁은 부류이다. 4 \times 4 변환의 위계는 다음과 같다.
| 변환 종류 | 일반 형태 | 자유도 | 보존하는 양 |
|---|---|---|---|
| 강체 변환 | \begin{bmatrix} R & \mathbf{t} \\ \mathbf{0}^\top & 1 \end{bmatrix}, R \in SO(3) | 6 | 거리, 각, 부피 |
| 닮음 변환 | \begin{bmatrix} sR & \mathbf{t} \\ \mathbf{0}^\top & 1 \end{bmatrix} | 7 | 각, 형태 |
| 아핀 변환 | \begin{bmatrix} A & \mathbf{t} \\ \mathbf{0}^\top & 1 \end{bmatrix}, A 가역 | 12 | 평행성, 비율 |
| 사영 변환 | \begin{bmatrix} A & \mathbf{t} \\ \mathbf{v}^\top & w \end{bmatrix} | 15 | 직선성, 교차비 |
각 위계는 더 일반적인 변환의 특수 경우이며, 강체 변환은 가장 좁은 부류에 속한다.
13. 변환의 합성과 비가환성
두 동차 변환의 합성은 단순한 행렬 곱으로 주어진다.
T_1 T_2 = \begin{bmatrix} R_1 R_2 & R_1 \mathbf{t}_2 + \mathbf{t}_1 \\ \mathbf{0}^\top & 1 \end{bmatrix}
회전 부분의 곱은 SO(3)에서의 회전 합성이며, 일반적으로 비가환적이다. 병진 부분에서는 두 번째 변환의 병진이 첫 번째 변환의 회전을 통과한 후 첫 번째 병진에 더해진다. 이러한 결합 방식의 비대칭성이 SE(3)의 비가환성의 근원이다.
14. 역변환의 명시적 형태
동차 변환의 역행렬은 회전 부분의 직교성을 활용하여 단순한 형태로 얻어진다.
T^{-1} = \begin{bmatrix} R^\top & -R^\top \mathbf{t} \\ \mathbf{0}^\top & 1 \end{bmatrix}
이는 일반 행렬의 가우스-조르단 소거나 여인수 전개를 사용하지 않고 직접 얻어지며, 수치적으로 안정적이고 계산 비용이 매우 낮다. 회전 부분의 전치는 회전의 역변환이며, 병진 부분의 변환은 회전된 좌표계에서의 원점 위치 표현으로 해석된다.
15. 미분 구조와 리 대수
SE(3)의 단위원 부근의 접공간이 리 대수 \mathfrak{se}(3)이며, 이는 6차원 벡터 공간이다. \mathfrak{se}(3)의 원소는 트위스트(twist)라 불리며, 다음의 행렬 형태로 표현된다.
\hat{\boldsymbol{\xi}} = \begin{bmatrix} [\boldsymbol{\omega}]_\times & \mathbf{v} \\ \mathbf{0}^\top & 0 \end{bmatrix}
여기서 [\boldsymbol{\omega}]_\times는 각속도에 대응하는 반대칭 행렬이고, \mathbf{v}는 선속도이다. 트위스트는 6차원 벡터로 표현되며, 행렬 지수를 통하여 SE(3)의 원소와 연결된다.
T = \exp(\hat{\boldsymbol{\xi}})
이는 강체 운동의 매개 변수화와 보간, 그리고 운동학적 분석에서 중심적인 도구이다.
16. 행렬 표현의 메모리와 연산
4 \times 4 행렬은 16개의 부동 소수점 수로 저장되며, 이는 회전과 병진을 분리하여 저장하는 경우(9 + 3 = 12)보다 약간 많다. 그러나 단일 행렬 곱으로 모든 변환 합성이 처리되므로 코드의 단순성과 일관성이 크게 향상된다. 마지막 행이 항상 (0, 0, 0, 1)인 사실을 활용하여 메모리와 연산을 절약하는 구현도 흔하다.
17. 로봇공학에서의 활용
17.1 정기구학과 사슬 변환
다관절 매니퓰레이터의 정기구학은 인접 링크 좌표계 사이의 동차 변환을 차례로 합성한 형태로 표현된다.
^0 T_n(\mathbf{q}) = {}^0 T_1(q_1) \cdot {}^1 T_2(q_2) \cdots {}^{n-1} T_n(q_n)
각 인접 변환은 관절 변수에 의존하며, 결과 행렬의 회전 부분이 말단 자세, 병진 부분이 말단 위치를 표현한다.
17.2 DH 매개 변수와 표준화된 표현
DH 매개 변수는 인접 링크 사이의 동차 변환을 4개의 매개 변수로 표현하는 표준 방법이며, 회전과 병진이 특정 패턴으로 결합된 형태이다. 이 표현은 매개 변수의 최소성과 일관성을 보장하며, 산업계에서 매니퓰레이터 모델링의 표준으로 자리 잡았다.
17.3 자세 그래프와 SLAM
3차원 SLAM에서 로봇의 자세는 SE(3)의 원소이며, 자세 그래프의 각 노드와 간선은 동차 변환 행렬로 표현된다. 변환 행렬의 명확한 블록 구조는 자세의 회전과 병진 부분을 분리하여 분석할 수 있게 하며, 그래프 최적화에서 회전 부분과 병진 부분에 서로 다른 가중치를 부여할 수 있게 한다.
17.4 시각 기반 자세 추정
카메라로부터 객체의 자세를 추정하는 문제는 본질적으로 SE(3)의 원소를 추정하는 문제이며, 동차 변환 행렬의 블록 구조는 회전과 병진의 추정을 분리하여 다룰 수 있게 한다. PnP(Perspective-n-Point) 문제와 시각적 주행 거리 측정 등의 알고리즘은 이러한 구조를 직접 활용한다.
17.5 충돌 검사와 운동 계획
운동 계획에서 로봇 부품과 환경 객체의 자세는 모두 동차 변환 행렬로 표현되며, 충돌 검사는 변환된 형상들 사이의 기하학적 검사로 환원된다. 변환 행렬의 명확한 블록 구조는 회전과 병진의 미세 변화에 대한 충돌 가능성을 분석할 수 있게 한다.
17.6 운동 보간과 궤적 계획
두 자세 사이의 매끄러운 보간은 회전 부분과 병진 부분을 분리하여 처리하거나, 리 군 위에서의 매개 변수화를 통하여 통합적으로 처리될 수 있다. 동차 변환 행렬의 구조는 이러한 보간 방식의 선택과 구현에 직접적인 영향을 미친다.
참고문헌
- Craig, J. J. (2017). Introduction to Robotics: Mechanics and Control (4th ed.). Pearson.
- Spong, M. W., Hutchinson, S., & Vidyasagar, M. (2020). Robot Modeling and Control (2nd ed.). Wiley.
- Siciliano, B., Sciavicco, L., Villani, L., & Oriolo, G. (2010). Robotics: Modelling, Planning and Control. Springer.
- Murray, R. M., Li, Z., & Sastry, S. S. (1994). A Mathematical Introduction to Robotic Manipulation. CRC Press.
- Lynch, K. M., & Park, F. C. (2017). Modern Robotics: Mechanics, Planning, and Control. Cambridge University Press.
- Hartley, R., & Zisserman, A. (2004). Multiple View Geometry in Computer Vision (2nd ed.). Cambridge University Press.
- Selig, J. M. (2005). Geometric Fundamentals of Robotics (2nd ed.). Springer.
Version: 1.0