읽기 설정
오일러는 일반적인 회전을 기술하는 데 세 개의 좌표가 필요하며, 이 좌표들이00:00
오일러 각이라고 불립니다.00:07
오일러 각이 어떻게 작동하는지 보여드리기 위해, 세 번의 연속적인 회전을 생각해보시면 좋을 것 같아요.00:11
A 프레임에서 B 프레임으로 가는 첫 번째 회전과, B 프레임에서 C 프레임으로 가는 두 번째 회전이 있습니다.00:20
C에서 D로 가는 세 번째입니다. 그00:27
오일러 각의 핵심 아이디어는 만약 제가 회전 A에서 D로 설명하고 싶다면,00:31
이것을 세 번의 순차적인 회전, A에서 B, B에서 C, 그리고 C에서 D로 나눌 수 있습니다.00:39
그리고 이렇게 중간 회전값들을 단순히 곱하시면 됩니다.00:48
B에서 A로 회전한 다음, C에서 B로, 그리고 D에서 C로 진행하시면 돼요.00:53
그리고 D에서 A로 회전하는 움직임으로 왼편에 있게 되십니다.00:58
이 사진을 보시면, A1을 기준으로 하는 첫 번째 회전이 보입니다.01:06
각도 파이를 통해 x축을 중심으로 회전하는 것입니다.01:12
그리고 그것을 통해 B1, B2, B3에 도달하실 수 있게 해줍니다.01:17
두 번째 회전은 벡터 B2에 관한 것입니다.01:21
그리고 그것이 C1, C2, 그리고 C3에 도달하게 해 줍니다.01:24
두 번째 회전은 각도 파이를 지나갑니다.01:28
그리고 마침내 세 번째 회전, 즉 벡터 C3에 관한 것입니다.01:33
그리고 각도 세타를 통과합니다.01:39
따라서 x축을 통해 psi만큼, y축을 통해 phi만큼 회전하는 것을 단순히 곱해주면01:42
그리고 세 번째 축을 통해 세타를 거치면, 전체 회전량을 얻게 됩니다.01:49
A 프레임에서 D 프레임까지입니다.01:54
다시 말씀드리지만, 여기서의 명명법은 변위와 다음을 모두 지칭하는 것입니다01:58
변화들.02:05
자, 만약 위에 첨자로 a, 아래에 첨자로 d가 있는 회전식을 본다면,02:07
두 가지 목적을 합니다.02:14
d1, d2, d3로 표현된 벡터들을 벡터로 변환할 수 있습니다.02:17
구성 요소가 a1, a2, a3으로 표현된02:24
또한, 강체가 초기 방향에서 변위되었다는 사실을 나타낼 수도 있습니다.02:27
프레임 A에서 프레임 D의 새로운 방향으로 변환합니다.02:35
여기 보이시는 세 각도는 롤, 피치, 요 각도입니다.02:39
축이 A1을 따라 배열된 차량을 상상해 보세요.02:45
첫 번째 회전은 롤 회전입니다.02:51
두 번째 회전은 두 번째 축을 중심으로 하는 피칭 동작이며,02:54
B2입니다. 세 번째 각도는 요 회전입니다.03:01
그것은 C3인 세 번째 축에 관한 것입니다.03:07
오일러는 임의의 회전은 서로 선형 독립인 세 개의 축을 중심으로 하는 세 번의 연속적인 회전으로 기술될 수 있다고 말했습니다.03:14
그러면 방금 설명해 드린 것처럼 오일러 각이 세 개 있으시다면,03:23
여기서 3x3 회전 행렬을 추론하실 수 있습니다.03:29
스스로에게 던져야 할 질문은 그 역(逆)도 성립하는가 하는 것입니다.03:33
다시 말해, 모든 회전 행렬에 대해 유일한 오일러 각의 집합이 존재하나요?03:37
다시 말해서, 이 세 좌표와 세 오일러 각 사이의 매핑은요03:44
회전 행렬 말씀이신 건가요? 이 지도가 일대일 대응인가요?03:52
그리고 그 답은 아니에요. 거의 일대일 매핑이긴 해요.03:55
하지만 지표면상의 북극점과 남극점에 비유되는 특정 지점들이 있습니다.04:01
오일러 각이 잘 정의되지 않는 지점에서요.04:07
이 오일러 각도 세트는 종종 XYZ 오일러 각도라고 불립니다.04:13
그리고 그것은 이 회전 행렬들이 곱해지는 순서 때문입니다04:19
X축을 중심으로 회전하는 것에 이어, Y축을 중심으로 회전하고, 마지막으로 Z축을 중심으로 회전합니다.04:26
다른 종류의 오일러 각도도 사용하실 수 있습니다.04:34
이 특정 각도는 ZYZ 오일러 각이라고 불립니다.04:37
따라서, 첫 번째 회전은 Z축에 관한 것입니다.04:42
Z축을 따라 파이만큼 회전하십니다.04:47
그리고 두 번째 회전은 세타를 통과하는 Y축에 대한 것입니다.04:51
그리고 세 번째 회전은 Z축을 따라 세타만큼의 회전입니다.04:56
모든 회전은 물체에 고정된 축을 중심으로 발생한다는 점에 유의하십시오.05:05
첫 번째 회전을 완료하시면, y축을 중심으로 한 두 번째 회전이 있어요05:10
이제는 새로운 y축에 관한 것입니다.05:18
첫 번째 회전이 원래의 y축을 새로운 위치로 회전시켰기 때문입니다.05:21
z축을 중심으로 두 번 회전한다고 해도, 질문해야 할 것은요,05:27
그것들은 같은 z축인가요, 아니면 다른가요? 즉, 이 세 축이 선형 독립인가요?05:35
두 z축이 서로 일직선이 아니라는 것을 보실 수 있습니다.05:42
그들은 독립적이에요.05:46
이러한 조건이 만족된다면, 세 각은 오일러 각입니다.05:49
그리고 그들은 회전 세트를 매개변수화할 수 있습니다.05:55
오일러 각도가 0인 경우, 즉 세타가 0인 경우에 유의하시기 바랍니다.06:01
문제에 부딪히실 수도 있어요.06:08
그러면 세타가 0이 되면 두 z축이 일직선상이 돼요.06:11
결과적으로 선형 독립 조건을 갖지 못하게 됩니다.06:16
다시 말해서, 회전을 수행하시는 세 축은 더 이상 독립적이지 않습니다.06:22
따라서 세타가 0과 같다는 것은 지구의 북극이나 남극에 위치하는 것과 유사합니다.06:29
더 깊이 탐구하기 위해, 관련된 계산 내용들을 자세히 살펴보겠습니다.06:35
회전 행렬에서 세 개의 오일러 각도로 가는 것보다요.06:42
제가 알고 있는 회전 행렬, 즉 숫자 아홉 개가 있다는 것을 전제로 하고 있습니다.06:48
세 오일러 각, 파이, 세타, 그리고 프사이 값을 복원하고 싶습니다.06:53
이것을 하기 위해서, 결과를 글로 쓸 수 있습니다.06:58
세 회전 행렬을 곱한 값, 즉 z축을 중심으로 하는 회전입니다.07:03
y축을 중심으로 회전한 다음, z축을 중심으로 회전합니다.07:09
첫 번째는 파(phi)를 통해, 두 번째는 세타(theta)를 통해, 그리고 세 번째는 프사이(psi)를 통해서입니다.07:14
그렇게 하여 이 두 가지를 같다고 간주할 수 있습니다.07:20
가장 오른쪽 아래의 요소를 같다고 놓으면, R을 알면요,07:24
세타가 무엇인지 계산할 수 있어요.07:33
그래서 그 방정식이 제가 세타가 무엇인지 알려줍니다.07:38
마찬가지로, 제가 세타가 무엇인지 안다면 원소를 살펴보고 파이가 무엇인지 계산할 수 있습니다.07:44
실제로 같은 정보를 알려주는 두 번째 방정식도 있습니다.07:52
이 요소는 제가 세타를 안다면, 파이가 무엇인지 알려주기도 합니다.07:57
그리고 마지막으로, 그 요소와08:05
그 요소가 파이가 무엇인지 알려줍니다.08:11
세타가 무엇인지 알면, 이 방정식들로 파이를 계산할 수 있어요.08:17
만약 요소가 0이 아니면, 저희가 세타를 계산할 수 있습니다.08:23
역코사인 함수를 이용해서 계산하시면 됩니다.08:29
물론, 역 코사인 함수에는 다소의 모호성이 있습니다.08:33
그리고 그 때문에 세타의 부호를 모르시는 거예요.08:38
긍정적일 수도 있고 부정적일 수도 있습니다. 하지만 그런 모호성을 제외한다면, 세타를 결정할 수 있습니다.08:41
그리고 세타를 알게 되면 계산할 수 있습니다08:49
역탄젠트 함수를 이용하여 시와 파이를 구합니다.08:53
PSI와 PHI 각각에 대해 두 가지 정보가 있는 것을 알게 되실 겁니다.08:59
그리고 그런 이유 때문에, 저희는 표준 역탄젠트 함수를 사용하지 않아요.09:04
저희는 atan2라는 함수를 사용합니다. atan2 함수는09:09
역삼각 탄젠트 함수에 존재하는 모호성을 극복하는 데 도움을 줍니다.09:15
전통적인 아크탄젠트 함수가 각도를 구하기 위해 하나의 방정식만 사용하는 것과는 다르게,09:21
여기서는 같은 각도에 대한 두 개의 방정식이 있다는 사실을 이용합니다.09:27
역삼각 탄젠트 함수, 즉 아크탄젠트 함수가 이것을 가능하게 해줍니다.09:31
이 방정식들에서 보시다시피, 우리는 두 가지의 오일러 각 세트를 가지고 있다는 것을 알 수 있습니다.09:37
그리고 이것은 거의 모든 회전 행렬에 대해 사실입니다.09:41
이러한 방정식들은 R33의 크기가 다음과 같지 않다고 가정하고 도출되었습니다.09:47
1보다 작습니다. 그렇다면 R33의 크기가 1과 같으면 어떻게 될까요?09:54
플러스 1이 될 수도 있고, 마이너스 1이 될 수도 있어요.10:00
이러한 경우에는,10:07
각도 세타가 같다는 것을 쉽게 보실 수 있어요10:09
0 또는 파이로, 그리고 두 가지 대안이 있습니다.10:15
두 경우 모두에서, 여러분은 ~을 보실 수 있을 거예요10:22
회전 행렬들이 오직 두 각도의 합에 의해서만 결정되는 용어들의 그룹10:26
파이와 프사이입니다.10:33
다시 말해, 파이나 싸이 중 어느 것도 유일하게 결정하는 것은 불가능해요.10:35
주어진10:41
하나는 다른 하나를 결정할 수 있지만, 파이와10:43
그룹화된 항목들만 조합하는 성질을 가지고 있기 때문입니다.10:49
따라서 R33이 플러스 1 또는 마이너스 1과 같으면 무한한 집합이 됩니다.10:54
오일러 각도요. 저희의 대부분의 작업에서는 다른 세트의 오일러 각도를 사용합니다.11:02
이것들은 ZXY 오일러 각도입니다.11:08
그리고 다시, 우리가 고려하는 세 개의 회전 행렬 때문에 그렇게 불립니다.11:11
Z축을 중심으로 하는 $ ext{Psi}$ 회전 이후에 $ ext{Phi}$ 각도로 X축을 중심으로 회전하는 것11:16
그리고 Y축을 따라 세타만큼 회전합니다.11:23
회전을 곱하여 확인하실 수 있을 거예요.11:27
슬라이드에 제시된 형태를 가진 회전 행렬을 얻게 됩니다.11:30
유클리드 각을 가진 모든 경우에 대해 봤습니다.11:37
오일러에 대해서 적어도 두 가지 해답이 있을 수도 있습니다11:42
주어진 회전 행렬에 대한 각도입니다.11:46
어떤 지점에서는 무한한 해답을 가질 수 있습니다.11:49
사실 원하시는 것은 무한한 해를 가지는 지점의 점들을 다룰 수 있는 두 번째 오일러 각 세트입니다.11:58
그러니 이것은 여러분이 많은, 아주 많은 오일러를 가지고 있을 수 있음을 시사합니다.12:04
무한한 해결책이 있는 상황을 겪지 않으시도록 고려해 보셔야 할 부분이요.12:10
그래서 우리가 물어봐야 할 질문은, 순서각의 최소 집합의 개수는 무엇일까요?12:17
모든 회전 그룹을 다 다뤄야 하나요?12:21
AI Summary
오일러 각(Euler Angles)은 3차원 공간의 회전을 세 번의 순차적인 회전으로 분해하여 수학적으로 표현하는 방법이지만, 회전 순서에 따라 결과가 달라지는 문제와 특정 각도(특이점, Singularity)에서 계산 오류가 발생하는 근본적인 한계를 가지고 있어요. 따라서 실제 응용 분야에서는 오일러 각의 대안으로 특이점 문제를 해결하고 계산 안정성이 높은 쿼터니언(Quaternion)과 같은 다른 방법론을 사용하는 것이 일반적입니다.
Key Highlights
- •오일러 각은 3차원 회전을 세 개의 독립적인 순차 회전으로 분해하여 표현합니다.
- •회전 순서(예: $ ext{XYZ}$ vs. $ ext{ZYX}$)를 명확히 정의하는 것이 최종 결과에 매우 중요합니다.
- •특정 각도에서는 수학적으로 회전 축이 사라지는 '특이점' 문제가 발생하여 계산에 어려움이 생깁니다.
- •오일러 각 대신 쿼터니언(Quaternion)을 사용하면 특이점 문제를 우회하여 계산의 안정성을 높일 수 있습니다.
- •회전 계산에는 행렬 기반의 삼각함수 변환(예: $ ext{Rodrigues'}$ 공식)을 활용합니다.


