9.68 회전 표현법의 비교와 장단점 분석

9.68 회전 표현법의 비교와 장단점 분석

1. 회전 표현법의 다양성

3차원 회전 SO(3)은 다양한 방법으로 매개화될 수 있다. 각 방법은 매개변수의 수, 합성의 방식, 특이점의 유무, 계산 효율성 등에서 다른 특성을 가지며, 응용 분야에 따라 적절한 표현이 다르다. 본 절에서는 주요 회전 표현법들을 체계적으로 비교하고 각각의 장단점을 분석한다.

2. 주요 회전 표현법

2.1 회전 행렬

3 \times 3 정규 직교 행렬 \mathbf{R} \in SO(3)로 회전을 표현한다. 9개의 매개변수를 사용하지만 정규 직교 제약(6개의 등식)으로 자유도는 3이다.

2.2 오일러 각

세 기본 회전의 합성으로 표현되는 3개의 각도이다. 12가지 규약(고유 오일러 각 6개, 테이트-브라이언 각 6개)이 존재한다.

2.3 축-각도 표현

회전 축 \hat{\mathbf{u}}와 회전 각 \phi로 표현된다. 4개의 매개변수를 사용하지만 단위 벡터 제약으로 자유도는 3이다.

2.4 회전 벡터 (지수 좌표)

\boldsymbol{\phi} = \phi\hat{\mathbf{u}}의 3차원 벡터이다. \mathfrak{so}(3) 리 대수의 자연 좌표이다.

2.5 쿼터니언

4개의 매개변수 \mathbf{q} = (q_w, q_x, q_y, q_z)를 사용하며, 단위 노름 제약 \lVert \mathbf{q} \rVert = 1이 있다.

2.6 고전적 로드리게스 파라미터 (CRP, 깁스 벡터)

\mathbf{g} = \tan(\phi/2)\hat{\mathbf{u}}의 3차원 벡터이다.

2.7 수정된 로드리게스 파라미터 (MRP)

\boldsymbol{\sigma} = \tan(\phi/4)\hat{\mathbf{u}}의 3차원 벡터이다.

3. 매개변수의 수와 자유도

표현법매개변수 수제약자유도
회전 행렬963
오일러 각303
축-각도413
회전 벡터303
쿼터니언413
CRP303
MRP303

모든 표현법이 자유도 3을 가지며 SO(3)의 차원과 일치한다. 그러나 매개변수의 수와 제약의 유무가 표현법의 특성을 결정한다.

4. 특이점 비교

표현법특이점 위치심각성
회전 행렬없음-
오일러 각짐벌 락 (예: 피치 \pm \pi/2)심각
축-각도\phi = 0 (축 미정)경미
회전 벡터\phi = 0, \pi (경계 효과)경미
쿼터니언부호 이중성 (\pm \mathbf{q})경미
CRP\phi = \pi (발산)심각
MRP\phi = 2\pi (그림자로 해결)가벼움

회전 행렬만이 진정한 의미의 특이점이 없으며, 다른 매개화는 어느 정도의 특이점을 가진다. 실용적으로 가장 큰 문제는 오일러 각의 짐벌 락이다.

5. 합성의 복잡성

표현법합성 방법복잡도
회전 행렬행렬 곱27곱셈 + 18덧셈
오일러 각행렬 변환 후 곱셈매우 복잡
축-각도행렬/쿼터니언 변환 후 합성변환 비용 발생
회전 벡터BCH 공식 (근사)복잡, 일반적으로 어려움
쿼터니언쿼터니언 곱16곱셈 + 12덧셈
CRP분수식복잡
MRP분수식복잡

쿼터니언과 회전 행렬이 가장 단순하고 효율적인 합성을 제공한다.

6. 메모리 사용

표현법메모리 (실수 개수)비고
회전 행렬9가장 큼
오일러 각3가장 작음
축-각도4 (또는 3+1)-
회전 벡터3가장 작음
쿼터니언4-
CRP3가장 작음
MRP3가장 작음

회전 행렬이 가장 많은 메모리를 사용하지만, 현대 컴퓨터에서 9개의 실수는 사소한 차이이다.

7. 보간의 부드러움

표현법보간 방법부드러움
회전 행렬직접 보간 어려움비자연스러움
오일러 각각도 선형 보간비균일
축-각도각도 보간일정 축의 경우만 자연스러움
회전 벡터직선 보간측지선 아님
쿼터니언SLERP매우 부드러움 (측지선)
CRP직접 보간비자연스러움
MRP직접 보간비자연스러움

쿼터니언의 SLERP가 가장 부드러운 보간을 제공한다.

8. 변환의 효율성

회전 표현 사이의 변환 비용은 다음과 같다.

변환효율성
회전 행렬 ↔ 쿼터니언효율적
회전 행렬 ↔ 축-각도중간 (삼각 함수)
회전 행렬 ↔ 오일러 각중간 (특이점 처리 필요)
회전 행렬 ↔ 회전 벡터중간 (지수/로그 사상)
쿼터니언 ↔ 축-각도효율적
쿼터니언 ↔ MRP효율적

쿼터니언이 다른 표현으로의 변환에서 가장 효율적이다.

9. 응용 분야별 권장 표현법

9.1 사용자 인터페이스

오일러 각 (RPY)

직관적이고 사용자가 이해하기 쉽다. 짐벌 락은 사용자에게 거의 영향을 주지 않는 한, 정상적 작동 영역에서는 문제가 없다.

9.2 실시간 자세 추정

쿼터니언

특이점이 없고 계산이 효율적이며, 정규화가 단순하다(단위 노름으로 나누기).

9.3 비선형 최적화 (SLAM, 번들 조정)

회전 벡터 (지수 좌표)

자유 매개변수이며 정확히 3개의 매개변수를 사용한다. 그러나 큰 회전이 발생하는 경우 쿼터니언과 결합하여 사용하기도 한다.

9.4 자세 보간과 애니메이션

쿼터니언 + SLERP

매끄러운 보간과 일정한 각속도를 보장한다.

9.5 기구학 변환과 행렬 연산

회전 행렬 (또는 동차 변환 행렬)

벡터 변환과 행렬 곱이 직접적이며 효율적이다.

9.6 우주선 자세 제어

MRP 또는 쿼터니언

특이점이 없고 매개변수가 적다.

9.7 기하학적 분석과 시각화

축-각도 표현

회전 축과 각도가 명확하므로 기하학적 직관이 좋다.

10. 종합 비교 표

특성회전 행렬오일러 각쿼터니언회전 벡터MRP
매개변수 수93433
자유 매개변수아니오아니오
특이점없음짐벌 락부호 이중경미경미
합성행렬 곱어색쿼터니언 곱BCH 공식분수식
보간어려움비균일SLERP직선 보간직선 보간
직관성중간높음낮음높음중간
메모리작음중간작음작음
비선형 최적화어색어색어색자연스러움어색

11. 혼합 사용 패턴

실제 로봇 시스템에서는 한 가지 표현만 사용하지 않고 여러 표현을 상황에 따라 혼합하는 것이 일반적이다.

11.1 일반적 패턴

  • 내부 상태: 쿼터니언 또는 회전 행렬
  • 사용자 입력/출력: 오일러 각
  • 최적화 변수: 회전 벡터 또는 리 대수 좌표
  • 시각화: 회전 행렬 (그래픽스 API와 호환)
  • 저장과 전송: 쿼터니언 (메모리 효율)

11.2 변환 모듈

서로 다른 표현 사이의 변환 함수를 잘 구현된 라이브러리(Eigen, Sophus, Ceres 등)를 통해 사용한다. 직접 구현하기보다는 검증된 라이브러리를 활용하는 것이 안전하다.

12. 표현법 선택의 일반 원칙

  1. 특이점 회피: 정상 작동 영역에 특이점이 없는 표현을 선택한다.
  2. 계산 효율성: 자주 수행되는 연산(합성, 변환)이 효율적인 표현을 선택한다.
  3. 수치 안정성: 부동 소수점 오차에 대한 민감도가 낮은 표현을 선택한다.
  4. 인터페이스 호환성: 외부 라이브러리나 사용자가 익숙한 표현을 사용한다.
  5. 자유 매개변수: 비선형 최적화에서는 자유 매개변수가 중요하다.

13. 회전 표현법 연구의 발전

회전 표현법은 19세기 오일러, 해밀턴, 카일리 등의 작업에서 시작하여 20세기 들어 우주선 자세 제어, 컴퓨터 그래픽스, 로봇 공학의 발전과 함께 풍부해졌다. 각 표현법은 특정 시점의 응용 요구에 답하기 위해 도입되었으며, 현대 로봇 공학에서는 응용에 따라 적절한 표현을 선택하는 것이 표준이 되었다.

14. 참고 문헌

  • Shuster, M. D. (1993). “A Survey of Attitude Representations.” Journal of the Astronautical Sciences, 41(4), 439–517.
  • Diebel, J. (2006). “Representing Attitude: Euler Angles, Unit Quaternions, and Rotation Vectors.” Stanford University Technical Report.
  • Sola, J., Deray, J., & Atchuthan, D. (2018). “A Micro Lie Theory for State Estimation in Robotics.” arXiv:1812.01537.
  • Stuelpnagel, J. (1964). “On the Parametrization of the Three-Dimensional Rotation Group.” SIAM Review, 6(4), 422–430.
  • Murray, R. M., Li, Z., & Sastry, S. S. (1994). A Mathematical Introduction to Robotic Manipulation. CRC Press.

version: 1.0