회전과 로보틱스 / NOTE 08

쿼터니언에서 회전행렬로

Quaternion → Matrix

쿼터니언과 회전행렬 사이의 원문 대응식을 모았습니다.

♫ 이 문서 듣기

개념에서 수식으로

먼저 이해할 내용

쿼터니언으로 표현한 자세를 행렬 연산에 사용하려면 회전행렬로 옮겨야 한다. 이 문서는 회전축·각도와 연결된 네 성분 정의를 먼저 놓고, 이에 대응하는 행렬을 제시한다.

기호를 먼저 읽기

q₁ … q₄
스칼라 우선 순서의 쿼터니언 성분
rₓ, rᵧ, r_z
회전축의 세 방향 성분
θ
회전각
R
같은 좌표 관계를 행렬로 표현한 결과

이 글의 흐름

입력 쿼터니언의 단위 길이 조건과 변환 방향을 먼저 확인한다. 다음으로 네 성분이 회전행렬의 각 항에 어떻게 들어가는지 살펴본다.

입력 규약을 행렬에서도 유지한다

첫 식은 q₁을 반각의 코사인으로, 나머지 세 성분을 음의 축 성분과 반각의 사인으로 정의한다. 이어지는 행렬도 이 정의의 변환 방향과 함께 읽는다. 행렬 안의 구체적인 항은 원래 그림에 있으므로, 다른 부호 규약의 일반식을 대신 대입하지 않는다.

주제와 표기

Quaternion BAq^ →Rotation MatrixABR

BAq^=(q1q2q3q4)=(cos[θ2]rxsin[θ2]rysin[θ2]rzsin[θ2])
수식

정리하면

쿼터니언과 회전행렬은 서로 다른 자세를 만드는 두 방법이 아니라, 같은 회전 관계를 서로 다른 형식으로 기록하는 방법이다.