6.81 강체 변환의 합성과 역변환

1. 도입

강체 변환은 회전과 병진이 결합된 형태로 강체의 자세 변화를 기술하는 기본 도구이며, 여러 변환을 차례로 적용하거나 그 효과를 되돌리는 연산은 로봇 운동학의 가장 기본적인 절차에 해당한다. 강체 변환들의 집합은 단순한 집합이 아니라 군 구조를 이루므로, 합성과 역변환은 군의 곱셈과 역원에 대응한다. 이 두 연산은 형식적으로는 단순한 행렬 연산으로 환원되지만, 그 안에 회전과 병진 사이의 결합, 좌표계 사이의 변환, 비가환성 등 강체 운동의 본질적 성질이 모두 담겨 있다. 본 절에서는 강체 변환의 합성과 역변환의 행렬 표현, 그 대수적 성질, 좌표계 변환의 관점에서의 해석, 수치적 구현, 그리고 로봇 공학에서의 활용을 학술적으로 기술한다.

2. 강체 변환의 합성

2.1 합성의 정의

두 강체 변환 T_{1}, T_{2} \in SE(3) 가 다음과 같이 주어졌다고 하자.

T_{1} = \begin{bmatrix} R_{1} & \mathbf{t}_{1} \\ \mathbf{0}^{T} & 1 \end{bmatrix}, \qquad T_{2} = \begin{bmatrix} R_{2} & \mathbf{t}_{2} \\ \mathbf{0}^{T} & 1 \end{bmatrix}

이들의 합성은 단순한 동차 변환 행렬의 곱으로 정의된다.

T = T_{2} T_{1}

이 정의에서 곱셈의 순서는 매우 중요하며, 좌측에 위치한 인자가 나중에 적용되는 변환이라는 점에 주의해야 한다.

2.2 합성의 닫힌 형태

위 곱셈을 명시적으로 전개하면 다음과 같은 결과를 얻는다.

T_{2} T_{1} = \begin{bmatrix} R_{2} R_{1} & R_{2} \mathbf{t}_{1} + \mathbf{t}_{2} \\ \mathbf{0}^{T} & 1 \end{bmatrix}

회전 부분은 단순한 회전 곱 R_{2} R_{1} 이지만, 병진 부분은 \mathbf{t}_{1} 에 첫 번째 인자의 회전 R_{2} 가 작용한 후 \mathbf{t}_{2} 가 더해진 형태이다. 이 형태는 회전과 병진이 결합된 비자명한 군 구조의 직접적인 표현이며, 강체 변환군이 단순한 직접곱이 아니라 반직접곱임을 보여준다.

2.3 합성 결과의 강체 변환성

합성 결과 T = T_{2} T_{1} 가 다시 강체 변환임을 확인하기 위해서는 회전 부분이 다시 SO(3) 의 원소이고 행렬의 하단 행이 [\mathbf{0}^{T}, 1] 의 형태를 유지함을 확인하면 충분하다. 두 회전 행렬의 곱은 다시 회전 행렬이며, 행렬 곱셈의 결과로 얻어지는 마지막 행은 자명하게 보존된다. 따라서 SE(3) 는 행렬 곱셈에 대하여 닫혀 있다.

2.4 결합 법칙과 비가환성

강체 변환의 합성은 결합 법칙을 만족한다.

(T_{3} T_{2}) T_{1} = T_{3} (T_{2} T_{1})

이는 행렬 곱셈의 결합성으로부터 즉시 따라온다. 그러나 일반적으로 가환 법칙은 성립하지 않는다.

T_{1} T_{2} \neq T_{2} T_{1}

비가환성은 회전 부분의 비가환성과, 병진이 회전에 의해 변환되는 항 때문에 발생한다. 두 변환이 모두 순수 병진인 경우에만 가환성이 성립한다.

3. 강체 변환의 역변환

3.1 역원의 닫힌 형태

강체 변환 T = (R, \mathbf{t}) 의 역원은 다음과 같이 닫힌 형태로 주어진다.

T^{-1} = \begin{bmatrix} R^{T} & -R^{T} \mathbf{t} \\ \mathbf{0}^{T} & 1 \end{bmatrix}

쌍 표기법으로는 T^{-1} = (R^{T}, -R^{T} \mathbf{t}) 이다. 이 결과는 T T^{-1} = I_{4} 를 직접 계산하여 확인할 수 있다.

3.2 닫힌 형태의 유도

역행렬의 일반적인 정의를 따르면 4 \times 4 행렬의 역행렬을 계산해야 하지만, 강체 변환의 특수한 구조를 활용하면 닫힌 형태가 자연스럽게 도출된다. 점 \mathbf{p} 에 대한 변환 \mathbf{p}' = R \mathbf{p} + \mathbf{t} 의 역연산은 \mathbf{p} = R^{T}(\mathbf{p}' - \mathbf{t}) = R^{T} \mathbf{p}' - R^{T} \mathbf{t} 이며, 이를 동차 좌표 행렬로 표현한 결과가 위의 닫힌 형태이다.

3.3 효율성

역변환의 계산 비용은 회전 부분의 전치(연산 비용 영)와 한 번의 행렬-벡터 곱셈만으로 충분하다. 이는 일반 4 \times 4 역행렬 계산이 요구하는 약 64회의 곱셈과 비교할 때 극적으로 효율적이며, 실시간 로봇 제어 루프에서의 좌표계 변환 계산에 필수적인 이점이다.

3.4 합성과 역변환의 결합 법칙

여러 변환이 합성된 형태의 역변환은 다음과 같이 각 인자의 역원을 역순으로 곱한 형태로 주어진다.

(T_{2} T_{1})^{-1} = T_{1}^{-1} T_{2}^{-1}

세 개 이상의 인자에 대해서도 일반화되어, n 개의 변환의 합성에 대한 역변환은 n 개의 역변환을 역순으로 곱한 형태이다.

4. 좌표계 변환의 관점에서의 해석

4.1 변환의 이중 해석

강체 변환은 두 가지로 해석될 수 있다. 첫째, 점의 변환(active transformation)으로서, 동일한 좌표계 안에서 점을 다른 위치로 이동시키는 사상으로 본다. 둘째, 좌표계의 변환(passive transformation)으로서, 동일한 점을 서로 다른 좌표계에서 표현하는 것으로 본다. 두 해석은 동일한 행렬을 사용하지만 의미가 다르며, 합성과 역변환의 적용에서 문맥을 명확히 구분해야 한다.

4.2 좌표계 사이의 표기 관례

좌표계 A 에서 좌표계 B 로의 변환을 T_{BA} 또는 ^{B}T_{A} 와 같이 표기하는 것이 일반적이다. 이 표기법 아래에서 점의 좌표 변환은 다음과 같이 표현된다.

^{B}\mathbf{p} = T_{BA} \, ^{A}\mathbf{p}

여기서 ^{A}\mathbf{p} 는 좌표계 A 에서 표현된 점의 동차 좌표이고, ^{B}\mathbf{p} 는 동일한 점을 좌표계 B 에서 표현한 것이다.

4.3 변환의 사슬

세 좌표계 A, B, C 사이의 변환은 다음과 같이 사슬 형태로 합성된다.

T_{CA} = T_{CB} \, T_{BA}

이 표기 관례는 인접한 첨자가 서로 일치하도록 곱하는 방식으로 자연스럽게 합성을 정의하며, 운동학 사슬의 추적을 시각적으로 명료하게 한다.

4.4 역변환과 첨자의 교환

좌표계 변환의 역변환은 첨자를 뒤집는 것에 해당한다.

T_{AB} = T_{BA}^{-1}

이는 동일한 두 좌표계 사이의 변환을 반대 방향으로 표현한 것이며, 닫힌 형태의 역변환 공식과 결합되어 좌표계 사이를 자유롭게 오가는 절차를 가능케 한다.

5. 강체 변환의 결합과 트위스트

5.1 인접 표현과 좌표 변환

트위스트 표현을 사용할 때, 좌표계 변환에 따른 트위스트의 변환은 인접 표현(adjoint representation)으로 주어진다.

\mathrm{Ad}_{T} = \begin{bmatrix} R & [\mathbf{t}]_{\times} R \\ \mathbf{0} & R \end{bmatrix}

6 \times 6 행렬은 트위스트 벡터에 작용하여 좌표계 변환을 수행하며, 강체 변환의 합성과 함께 자코비안의 좌표계 변환, 자세 추정의 공분산 전파 등에 핵심적으로 등장한다.

5.2 인접 표현의 합성

두 강체 변환 T_{1}, T_{2} 의 합성에 대한 인접 표현은 다음과 같은 합성 법칙을 만족한다.

\mathrm{Ad}_{T_{2} T_{1}} = \mathrm{Ad}_{T_{2}} \mathrm{Ad}_{T_{1}}

이 성질은 강체 변환군에서 인접 표현으로 가는 사상이 군 준동형(group homomorphism)임을 의미하며, 트위스트 좌표 위에서 일관된 운동학적 계산을 가능케 한다.

6. 수치적 구현과 정밀도 보존

6.1 누적 오차와 정규화

여러 개의 강체 변환을 누적적으로 곱할 때, 부동 소수점 연산의 반올림 오차로 인해 회전 부분의 직교성이 점차 손상될 수 있다. 이를 방지하기 위해 일정 횟수마다 회전 부분을 가장 가까운 회전 행렬로 사영하여 정규화하는 절차가 사용된다. 특이값 분해 또는 그람-슈미트 정규 직교화가 표준적인 방법이다.

6.2 효율적 표현과 메모리

강체 변환은 4 \times 4 행렬로 표현되지만, 마지막 행이 항상 [0, 0, 0, 1] 임을 활용하여 3 \times 4 부분만을 저장하는 것이 메모리와 연산 측면에서 효율적이다. 이는 특히 대규모의 슬램 그래프 최적화나 다중 로봇 시뮬레이션에서 의미 있는 절약을 제공한다.

6.3 리 군 위의 정확한 갱신

회전 부분의 누적과 직교성 보존을 동시에 달성하기 위하여, 강체 변환의 갱신을 트위스트 좌표 위에서 수행한 뒤 지수 사상을 통하여 다시 SE(3) 로 옮기는 방법이 사용된다. 이러한 리 군 위의 갱신은 직교성을 자동으로 보존하며, 추정 알고리듬의 수치적 안정성을 크게 향상시킨다.

7. 로봇 공학에서의 활용

7.1 매니퓰레이터 운동학 사슬

다관절 매니퓰레이터의 순기구학은 각 관절의 강체 변환을 베이스에서 말단까지 차례로 곱하는 형태로 표현된다.

T_{0,n} = T_{0,1} T_{1,2} \cdots T_{n-1,n}

이 누적 곱은 본 절의 합성 법칙에 따라 일관되게 정의되며, 결과적으로 말단 장치의 자세를 베이스 좌표계 기준으로 산출한다. 역기구학에서는 이 사슬을 거꾸로 풀어내는 절차가 사용되며, 그 과정에서 강체 변환의 역원과 부분 곱이 핵심적으로 활용된다.

7.2 좌표계 사이의 측정값 변환

여러 센서가 서로 다른 좌표계에 부착된 경우, 한 센서의 측정값을 다른 센서 또는 베이스 좌표계로 변환하기 위해서는 두 좌표계 사이의 강체 변환이 적용된다. 카메라와 라이다, 자이로와 가속도계 등의 측정값을 통합하는 센서 융합 절차에서 이러한 변환은 빈번하게 등장한다.

7.3 슬램과 위치 추정의 자세 그래프

위치 추정 알고리듬에서 로봇의 자세 시퀀스는 강체 변환의 시퀀스로 표현되며, 인접 자세 사이의 상대 변환은 강체 변환의 합성과 역변환을 통하여 계산된다. 자세 그래프 최적화에서 잔차의 정의와 자코비안의 계산은 모두 강체 변환의 군 구조 위에서 이루어지며, 합성과 역변환의 닫힌 형태가 효율적인 구현의 기반이 된다.

7.4 카메라 자세 추정과 시각 측정

컴퓨터 비전에서 카메라의 외부 파라미터는 강체 변환으로 표현되며, 다중 시점 사이의 카메라 자세 관계는 강체 변환의 합성과 역변환을 통하여 계산된다. 관측 모델과 잔차 계산, 번들 조정 등의 절차에서 강체 변환의 효율적 처리는 알고리듬의 성능을 결정한다.

7.5 시뮬레이션과 충돌 검사

로봇 시뮬레이터에서 강체의 자세를 시간에 따라 갱신할 때, 매 시각의 자세 변화는 강체 변환의 곱으로 표현된다. 충돌 검사 또한 객체의 강체 변환을 적용하여 형상을 변환한 뒤 비교하는 절차를 거치며, 빈번한 변환 적용에서 닫힌 형태의 역변환은 계산 효율성에 중요한 역할을 한다.

7.6 작업 경로 계획과 제어

작업 공간에서 정의된 경로를 추종하는 매니퓰레이터 제어에서, 목표 자세와 현재 자세 사이의 오차는 강체 변환의 합성과 역변환을 통하여 계산된다. 즉 오차 변환 \Delta T = T_{\text{현재}}^{-1} T_{\text{목표}} 를 트위스트로 변환하여 제어 입력의 기준으로 사용하는 절차는 자세 제어기의 표준적 구성이다.

8. 결론

강체 변환의 합성과 역변환은 단순한 행렬 연산으로 환원되지만, 그 안에 회전과 병진의 결합, 좌표계 사이의 변환, 그리고 강체 운동의 비가환적 군 구조가 모두 담겨 있다. 합성은 결합 법칙을 만족하지만 일반적으로 가환적이지 않으며, 역변환은 회전 부분의 전치와 병진 부분의 회전 변환만으로 닫힌 형태로 효율적으로 계산된다. 이러한 성질은 매니퓰레이터의 운동학 사슬, 좌표계 사이의 측정값 변환, 위치 추정의 자세 그래프, 카메라 자세 추정, 시뮬레이션과 충돌 검사, 작업 공간 제어 등 로봇 공학의 거의 모든 영역에서 핵심적인 도구로 사용된다. 강체 변환의 합성과 역변환에 대한 명확한 이해와 효율적인 구현은 정확하고 견고한 로봇 시스템을 구축하기 위한 본질적인 출발점이다.


참고문헌

  • Craig, J. J. (2005). Introduction to Robotics: Mechanics and Control (3rd 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. (2009). 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.
  • Selig, J. M. (2005). Geometric Fundamentals of Robotics (2nd ed.). Springer.
  • Hartley, R., & Zisserman, A. (2004). Multiple View Geometry in Computer Vision (2nd ed.). Cambridge University Press.
  • Ma, Y., Soatto, S., Košecká, J., & Sastry, S. S. (2003). An Invitation to 3-D Vision: From Images to Geometric Models. Springer.
  • Hall, B. C. (2015). Lie Groups, Lie Algebras, and Representations: An Elementary Introduction (2nd ed.). Springer.
  • Blanco-Claraco, J. L. (2021). “A tutorial on SE(3) transformation parameterizations and on-manifold optimization.” University of Almería, Technical Report.

Version: 1.0