2013년 11월 1일 금요일

두 축 사이의 변환 관계

공간에 두 개의 좌표 축이 있다:



1. 두 축에서 바라본 한 점 X의 좌표 사이의 관계는 다음과 같다.


이 식은 두 축 사이의 회전은 없다고 가정한 경우이다.
Oc에서 X로 가는 벡터는 Oc에서 Ow로 가서 다시 Ow에서 X로 가는 벡터의 합이다.
Ow 기준에서 보면 Oc의 좌표는 tw이다. 따라서 -tw 이동하면 두 축은 일치 된다.
(tc가 아니라 tw로 주어 졌다.)


좌표이동을 선형변환으로 표현하였다. tilt는 3-vector이다.


2. 회전을 표현하는 방법은 2가지 이다.  두 좌표의 자세가 다르다고 가정하자.
먼저 C축을 돌리는 경우이다.  즉, C축을 돌려서 W축과 일치시킨다.  여기서 Rc는 W축 기준으로 C 좌표의 축 방향이다.




다음, W축을 돌리는 경우이다.  즉, W축을 돌려서 C축과 일치시킨다.  여기서 Rw는 C축 기준으로 W좌표의 축 방향이다.



많은 문헌에서 이 표현을 주로 사용한다.  이동과 회전의 선형변환을 하나의 식으로 표현해 보자.







% 두 좌표계 사이의 회전 행렬의 표현
% Coded by funMV. 12/2013

clear; clc;

% 두 좌표계 사이의 회전이 없을 경우
xw = [20,20,0]';  % coord of a point w.r.t world coord system
xt = [50 ,10, 100]';  % translational vector between world -> camera 
xc1 = xw - xt;


% 만일 C축이 W축에 대해 R만큼 회전된 경우
a2p=pi/180;
Rc_w = rot(20*a2p, 10*a2p, -30*a2p); % C축 3개의 방향(w축에 상대적으로)
Rw_c = Rc_w'; % W축 3개의 방향(c축에 상대적으로)

xc2 = Rw_c*(xw-xt); 




댓글 없음:

댓글 쓰기