https://www.youtube.com/watch?v=rHLEWRxRGiM&list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab&index=5
[고전 음악]
"리사: 아빠는 어디있어요?"
"프링크: 글쎄, 가장 멍청한 사람이 보기에도 확실할거야."
"...쌍곡기하학 고급학위를 취득한사람이란 말야... 호머 심슨은 비틀거릴 수 밖에 없어."
" 3차원 공간에서!" - 만화 심슨 중에서
여러분 안녕, 오늘은 꽤 짧은 동영상을 가져왔어.
챕터사이의 각주정도되는 분량이야. 지난 두 동영상을 통해 내가 말했던 것은
선형변환(linear transformation) 과 행렬(matrix) 이였어. 근데 특수한 예제 상황만을 보여줬었어.
2차원 벡터 -> 2차원 벡터로 바뀌는 예제들만 보여줬었지.
그 시리즈 연장선으로 우리는 이번에도 주로
2차원을 다룰거야.
주요이유는 화면에도 보여주기 훨씬 쉽고, 마음속에도 담기에도 편하기 때문이지.
하지만 그보다 더 중요한 이유는,
일단 2차원에서 이 핵심 개념들을 제대로 이해했다면,
그보다 높은 차원에도 부드럽게 잘 적용돼.
그렇지만, 가끔은 평면세계 바깥으로 고개를 들어보는 것도 좋겠어...
2차원 이상의 차원에 이 개념들을 적용한다는 것은 어떤 의미일지 살펴보자.
예를 들어, 3차원의 선형변환을 생각해보자.
3차원 벡터를 입력받아 3차원 벡터를 출력하지.
우리는 문제없이 자연스럽게 3차원 공간으로 시각화할 수 있어.
격자로 표현된 3차원 공간을 상상해봐. 격자선은 평행하고,
간격이 일정하고, 원점이 고정되어 있지.
그리고 2차원에서와 마찬가지로, 공간의 모든 점들을
벡터의 끝점을 대신한다고 생각하는 거야.
그리고 우리가 하는 것은 입력 벡터를 받아서
*움직여서* 대응되는 결과벡터로 만드는 거지.
그리고 2차원에서와 마찬가지로,
이 변환은 기저벡터의 움직임을 알면 완벽하게 서술될 수 있어.
근데, 세 개의 표준 기저벡터를 표시하는 일반적인 방법이 있어.
x 축 방향 단위벡터는 i-hat 이라고 하고,
y 축 단위벡터를 j-hat,
이번에 추가된 z 축 단위벡터는 k-hat 이라고 표기해.
사실, 나는 이 변환들을
오직 앞서말한 기저벡터들을 가지고 생각하는게 더 쉬울거 같아.
왜냐하면, 3차원 격자에서 모든 점을 표시하는 것은 꽤 지저분해 보여.
원본 축만 배경에 남겨놓고
변환 후의 세 기저벡터의 좌표값만 생각하는 거야.
세 벡터의 좌표값을 열(column)로 합쳐 3x3 행렬로 적어.
단지 9 개의 숫자들만 있으면 이 변환을 완전하게 설명할 수 있어.
간단한 예를 들게. 공간을 회전시키는 변환을 생각해보자.
y 축 기준으로 90 도 회전시키는 거야.
그럼 i-hat 좌표값은 z축 위의 [0, 0, -1] 에 위치하게 돼.
j-hat 은 움직이지 않아서 그대로 [0,1,0] 이고,
k-hat 은 x 축 위인 [1,0,0]으로 이동하지.
3 좌표값의 집합이 행렬의 열을 구성하게 돼.
이 행렬이 이 회전변환을 나타내게 돼.
어떤 벡터 [x,y,z] 가 변환 후 어디가 되는지는
2차원에서 했던 방법이랑 거의 동일해.
각 좌표값을 스케일링 팩터로 보면 돼.
각 기저벡터들은 그 팩터로 스케일링해서 합치면 원하는 결과벡터를 얻게돼.
2차원 경우와 마찬가지로, 중요한 점은 이렇게 스케일링과 더하는 절차가
변환 전-후에도 같다는 것이야.
그래서 벡터의 변환결과를 알려면, 벡터의 좌표값을
행렬의 대응되는 열과 곱한다음 그 결과들을 합하면 돼.
두 행렬의 곱셈도 이와 유사해.
두 개의 3x3 행렬을 곱할 때마다
생각할때는, 오른쪽 행렬로 먼저 변환처리가 되고,
그리고나서 왼쪽 행렬을 적용을 하는 것으로 생각하도록 해.
요즘들어 3차원 행렬의 곱셈이 실제로
컴퓨터 그래픽이나 로봇 분야에서 꽤 중요해졌어.
3차원에서 여러회전들을 서술하기 상당히 어렵거든. 근데,
작은 변환들로 쪼개고 그것의 결합(composition) 으로 생각하면,
회전을 다루기 좀 더 쉬워져.
수치적으로 행렬 곱셈을 수행할때는, 2차원 예제랑 거의 똑같아.
사실 너가 지난 동영상을 어느정도 이해했는지 테스트해보는 좋은 방법은
한번 구체적으로 설명해보는 거야. 이 행렬 곱셈이 어떨지를 말야.
저번에 배웠던 아이디어와 관련해서 생각해봐.
공간속에서 연속된 변환의 적용이라는 개념으로 말야.
다음 동영상부터는 행렬식(determinant) 으로 들어갈거야.