10.38 이중 쿼터니언의 회전과 병진 결합
1. 결합의 필요성
강체 변환은 회전과 병진으로 구성되며, 전통적으로는 이 두 성분이 분리되어 다루어진다. 그러나 이중 쿼터니언은 두 성분을 하나의 대수 객체로 통합하여, 변환의 합성, 보간, 최적화에서 더 우아한 처리를 가능하게 한다.
본 절에서는 이중 쿼터니언이 어떻게 회전과 병진을 결합하는지, 그리고 이 결합이 어떤 이점을 제공하는지를 상세히 다룬다.
2. 결합의 수학적 구조
2.1 이중 쿼터니언의 기본 형태
\hat{\mathbf{q}} = \mathbf{q}_r + \mathbf{q}_d\epsilon
- \mathbf{q}_r: 실수 부분, 회전 정보를 담는 단위 쿼터니언
- \mathbf{q}_d: 이중 부분, 병진 정보를 인코딩하는 쿼터니언
2.2 병진의 인코딩
병진 \mathbf{t} \in \mathbb{R}^3는 이중 부분에 다음과 같이 인코딩된다.
\mathbf{q}_d = \frac{1}{2}\mathbf{t}\otimes\mathbf{q}_r
여기서 \mathbf{t}는 순수 벡터 쿼터니언 (0, \mathbf{t})로 처리되고, \otimes는 쿼터니언 곱이다.
3. 인코딩의 해석
3.1 왜 1/2 계수?
1/2 계수는 이중 쿼터니언의 지수 사상과 관련이 있다. 이는 쿼터니언이 회전 각의 절반을 사용하는 것과 비슷한 이유이다. 트위스트에서 이중 쿼터니언으로의 지수 사상에서 자연스럽게 1/2 계수가 등장한다.
3.2 왜 \mathbf{t}\otimes\mathbf{q}_r?
이 형태는 회전이 병진에 작용하는 방식을 인코딩한다. 이중 쿼터니언 곱이 강체 변환의 합성과 일치하도록 설계되었다.
4. 강체 변환의 이중 쿼터니언 표현 예시
4.1 예시 1: 순수 회전
회전만 있고 병진이 없는 경우 (\mathbf{t} = \mathbf{0}):
\hat{\mathbf{q}} = \mathbf{q}_r + 0\cdot\epsilon = \mathbf{q}_r
이중 부분이 0이며, 일반 쿼터니언과 같다.
4.2 예시 2: 순수 병진
병진만 있고 회전이 없는 경우 (\mathbf{q}_r = 1):
\mathbf{q}_d = \frac{1}{2}\mathbf{t}\otimes 1 = \frac{1}{2}\mathbf{t}
\hat{\mathbf{q}} = 1 + \frac{1}{2}\mathbf{t}\epsilon
4.3 예시 3: 일반적 변환
회전과 병진이 모두 있는 경우:
\hat{\mathbf{q}} = \mathbf{q}_r + \frac{1}{2}(\mathbf{t}\otimes\mathbf{q}_r)\epsilon
이는 임의의 강체 변환을 표현한다.
5. 이중 부분의 전개
이중 부분 \mathbf{q}_d = \frac{1}{2}\mathbf{t}\otimes\mathbf{q}_r을 성분별로 전개하자. \mathbf{t} = (0, t_x, t_y, t_z)와 \mathbf{q}_r = (w, x, y, z)일 때 쿼터니언 곱 공식을 적용하면
\mathbf{t}\mathbf{q}_r = (0\cdot w - t_x x - t_y y - t_z z, 0\cdot(x, y, z) + w(t_x, t_y, t_z) + (t_x, t_y, t_z)\times(x, y, z))
= (-t_x x - t_y y - t_z z, w(t_x, t_y, t_z) + (t_y z - t_z y, t_z x - t_x z, t_x y - t_y x))
이 결과에 1/2를 곱하면 \mathbf{q}_d를 얻는다. 구체적 성분은 복잡하지만, 핵심은 이중 부분이 회전과 병진의 결합된 정보를 담고 있다는 것이다.
6. 이중 쿼터니언 곱과 강체 변환 합성
두 강체 변환 \mathbf{T}_1 = (\mathbf{R}_1, \mathbf{t}_1)과 \mathbf{T}_2 = (\mathbf{R}_2, \mathbf{t}_2)의 합성은 다음과 같다.
\mathbf{T}_2\mathbf{T}_1 = (\mathbf{R}_2\mathbf{R}_1, \mathbf{R}_2\mathbf{t}_1 + \mathbf{t}_2)
이를 이중 쿼터니언으로 표현하면
\hat{\mathbf{q}}_2\hat{\mathbf{q}}_1 = \mathbf{q}_{r,2}\mathbf{q}_{r,1} + (\mathbf{q}_{r,2}\mathbf{q}_{d,1} + \mathbf{q}_{d,2}\mathbf{q}_{r,1})\epsilon
6.1 실수 부분
합성된 회전: \mathbf{q}_{r,2}\mathbf{q}_{r,1}은 두 회전의 합성이다.
6.2 이중 부분
합성된 병진의 이중 부분 표현:
\mathbf{q}_{d,\text{합성}} = \mathbf{q}_{r,2}\mathbf{q}_{d,1} + \mathbf{q}_{d,2}\mathbf{q}_{r,1}
이 복잡한 공식이 실제로 \frac{1}{2}(\mathbf{R}_2\mathbf{t}_1 + \mathbf{t}_2)(\mathbf{q}_{r,2}\mathbf{q}_{r,1})에 대응함을 계산으로 확인할 수 있다.
7. 결합의 일관성
이중 쿼터니언 곱이 강체 변환의 합성과 일치한다는 사실은 이중 쿼터니언이 SE(3)의 적절한 대수적 표현임을 확증한다.
7.1 증명 개요
\hat{\mathbf{q}}_2\hat{\mathbf{q}}_1이 강체 변환 \mathbf{T}_2\mathbf{T}_1에 대응하는 이중 쿼터니언임을 보이려면, 합성의 이중 부분이 \frac{1}{2}(\text{합성된 병진})\otimes(\text{합성된 회전})의 형태임을 확인해야 한다.
이는 쿼터니언 곱의 대수적 성질과 강체 변환의 정의를 결합하여 유도된다.
8. 이중 쿼터니언으로 점 변환
강체 변환으로 점을 변환하는 것은 이중 쿼터니언의 샌드위치 곱으로 표현된다.
8.1 점의 이중 쿼터니언 형태
3차원 점 \mathbf{p}의 이중 쿼터니언 표현:
\hat{\mathbf{p}} = 1 + \mathbf{p}\epsilon
실수 부분이 1(항등 회전)이고 이중 부분이 점의 순수 벡터 쿼터니언 표현이다.
8.2 변환 공식
\hat{\mathbf{p}}' = \hat{\mathbf{q}}\hat{\mathbf{p}}\hat{\mathbf{q}}^\star
여기서 \hat{\mathbf{q}}^\star는 결합 켤레이다.
\hat{\mathbf{q}}^\star = \mathbf{q}_r^* - \mathbf{q}_d^*\epsilon
8.3 결과에서 점 추출
변환된 이중 쿼터니언의 이중 부분에서 변환된 점을 추출한다.
\mathbf{p}' = (\hat{\mathbf{p}}'.\text{dual})_\text{vector part}
9. 회전과 병진의 분리 가능성
이중 쿼터니언에서 회전과 병진을 언제나 분리할 수 있다. 이는 이중 쿼터니언이 두 성분의 결합이지만 각 성분의 독립성을 보존함을 의미한다.
9.1 분리 공식
\hat{\mathbf{q}} = \mathbf{q}_r + \mathbf{q}_d\epsilon로부터:
- 회전: \mathbf{q}_r (직접 읽음)
- 병진: \mathbf{t} = 2\mathbf{q}_d\mathbf{q}_r^*의 벡터 부분
9.2 일관성 검증
추출된 (\mathbf{q}_r, \mathbf{t})로부터 이중 쿼터니언을 다시 구성하면 원래의 \hat{\mathbf{q}}와 일치해야 한다. 이는 결합의 일관성을 보장한다.
10. 결합의 장점
10.1 통일된 대수 처리
회전과 병진을 하나의 객체로 다루므로, 변환의 합성, 역, 보간 등의 연산이 단일한 대수 연산으로 환원된다.
10.2 스크류 운동의 자연스러운 표현
슈아세의 정리에 의해 모든 강체 변환은 스크류 운동이다. 이중 쿼터니언은 스크류 운동을 자연스럽게 표현한다.
10.3 매끄러운 보간
이중 쿼터니언의 보간은 강체 변환의 매끄러운 보간을 제공한다. 회전과 병진이 동시에 보간된다.
10.4 최적화에 유리
비선형 최적화에서 변수의 수가 6(최소)과 8(이중 쿼터니언) 사이에서 선택된다. 이중 쿼터니언의 8 매개변수는 두 제약(단위 노름과 직교성)으로 6자유도를 매개화한다.
11. 결합의 한계
11.1 점 변환의 복잡성
점 변환이 이중 쿼터니언의 샌드위치 곱을 요구하므로, 동차 변환 행렬의 단순 행렬-벡터 곱보다 비쌀 수 있다.
11.2 직관성 부족
이중 부분이 병진을 직접 나타내지 않고 회전과 결합된 형태로 인코딩되므로, 사용자가 직접 해석하기 어렵다.
11.3 라이브러리 지원
대부분의 로봇 공학 라이브러리가 동차 변환 행렬이나 쿼터니언 + 병진 벡터의 형태를 사용하므로, 이중 쿼터니언의 지원이 제한적이다.
12. 결합과 스크류 이론
이중 쿼터니언의 결합은 스크류 이론과 자연스럽게 연결된다.
12.1 스크류 축
스크류 운동의 축은 회전 축과 병진 축이 같은 직선이다. 이중 쿼터니언이 이 결합된 축 운동을 직접 표현한다.
12.2 스크류 매개변수
스크류 운동의 매개변수(스크류 축, 회전 각, 피치, 병진 거리)는 이중 쿼터니언의 지수 좌표로 표현된다.
12.3 슈아세의 정리
슈아세의 정리가 이중 쿼터니언으로 우아하게 표현된다. 모든 이중 쿼터니언이 스크류 운동에 대응하며, 반대도 마찬가지이다.
13. 이중 쿼터니언의 지수 좌표
13.1 \mathfrak{se}(3) 리 대수
이중 쿼터니언의 리 대수는 \mathfrak{se}(3)이며, 트위스트 \boldsymbol{\xi} = (\boldsymbol{\omega}, \mathbf{v})로 구성된다.
13.2 지수 사상
지수 사상은 트위스트를 이중 쿼터니언으로 변환한다.
\exp\left(\frac{1}{2}(\boldsymbol{\omega} + \mathbf{v}\epsilon)\right) = \hat{\mathbf{q}}
여기서 순수 벡터 쿼터니언으로 처리한다.
13.3 지수의 닫힌 형태
이는 쿼터니언 지수와 비슷한 형태이다. 스크류 운동의 매개변수가 직접 나타난다.
14. 이중 쿼터니언의 로그
14.1 역 사상
이중 쿼터니언의 로그는 지수 사상의 역이다.
\log(\hat{\mathbf{q}}) = \frac{1}{2}(\boldsymbol{\omega} + \mathbf{v}\epsilon)
14.2 활용
로그를 사용하면 이중 쿼터니언 사이의 “거리“를 계산할 수 있다. 이는 강체 변환 사이의 측지선 거리이다.
15. 이중 쿼터니언의 구면 선형 보간
SLERP의 이중 쿼터니언 버전은 두 강체 변환 사이를 매끄럽게 보간한다.
\mathrm{Sclerp}(\hat{\mathbf{q}}_0, \hat{\mathbf{q}}_1, t) = \hat{\mathbf{q}}_0\otimes\exp(t\log(\hat{\mathbf{q}}_0^{-1}\hat{\mathbf{q}}_1))
이는 쿼터니언 SLERP의 일반화이며, 결과가 SE(3) 매니폴드 상의 측지선을 따른다.
15.1 의의
Sclerp는 회전과 병진을 동시에 보간하며, 결과가 스크류 운동에 해당한다. 이는 매우 자연스러운 강체 변환 보간이다.
16. 결합의 실용적 활용
16.1 캐릭터 애니메이션
본(bone)의 변환을 이중 쿼터니언으로 표현한다. 이중 쿼터니언 선형 블렌딩(DLB)이 자연스러운 피부 변형을 만든다.
16.2 매니퓰레이터 궤적
말단 장치의 궤적을 이중 쿼터니언 스플라인으로 생성한다. 매끄러운 운동을 보장한다.
16.3 경로 계획
경로 계획에서 강체 변환의 보간이 필요한 경우 이중 쿼터니언을 사용한다.
16.4 시각 SLAM
카메라 자세 추정에서 이중 쿼터니언을 최적화 변수로 사용한다.
17. 결론
이중 쿼터니언은 회전과 병진을 대수적으로 결합하여 강체 변환을 통일된 객체로 표현한다. 이 결합은 SE(3)의 군 구조와 스크류 이론에 자연스럽게 대응하며, 매끄러운 보간과 효율적 합성을 제공한다. 학습 곡선이 크지만, 특정 응용에서는 동차 변환 행렬이나 쿼터니언 + 병진 벡터의 분리된 표현보다 우아한 해를 제공한다.
18. 참고 문헌
- Clifford, W. K. (1873). “Preliminary Sketch of Biquaternions.” Proceedings of the London Mathematical Society, 4(1), 381–395.
- Daniilidis, K. (1999). “Hand-Eye Calibration Using Dual Quaternions.” International Journal of Robotics Research, 18(3), 286–298.
- Selig, J. M. (2005). Geometric Fundamentals of Robotics (2nd ed.). Springer.
- Kavan, L., et al. (2008). “Geometric Skinning with Approximate Dual Quaternion Blending.” ACM Transactions on Graphics, 27(4).
- Aspragathos, N. A., & Dimitros, J. K. (1998). “A Comparative Study of Three Methods for Robot Kinematics.” IEEE Transactions on Systems, Man, and Cybernetics, 28(2), 135–145.
version: 1.0