3D Vision(NUS) - Lecture 3

김경준·2022년 10월 18일
0

Multi View Geometry

목록 보기
3/4

3-Dimensional Euclidean Space

  • Euclidean space 내의 모든 point pE3p \in \mathbb{E}^3는 three cartesian coordinates를 가지는 R3\mathbb{R}^3 내의 point와 동일하다.
  • Euclidean space에서 vector vv는 두 개의 point p,qE3p,q \in \mathbb{E}^3에 의해 결정되며 방향성을 가진다. pp에서 qq를 향할 경우 v=pqv = \vec{pq}로 나타낸다.
  • pp의 좌표가 XX, qq의 좌표가 YY일 때 vvYXY-X이다. 이와 같이 base point가 명시되는 vector를 bound vector라 한다.
  • Free vector는 base point에 의존하지 않는 벡터로 YX=YXY-X = Y'-X'로 동일한 free vector이다. 이 둘은 E3\mathbb{E}^3에서 평행하다.
  • 우리는 cartesian frame의 origin이 base point라고 가정하며 (X=0)(X=0) free vector의 조합은 linear vector space를 형성한다.

Inner and Outer Products in E3\mathbb{E}^3

  • 두 벡터 u,vu,v의 inner product는 다음과 같다.

  • Inner product는 거리나 사이각을 measure 하는데 활용할 수 있다.

  • 두 벡터의 cross(outer) product는 다음과 같으며 그 결과는 두 벡터에 orthogonal한 벡터가 된다. 두 벡터의 순서를 바꾸면 부호가 바뀐다.

  • Cross product는 R3\mathbb{R}^3 to R3\mathbb{R}^3의 linear mapping으로 skw-symmetric matrix(u^T=u^\hat{u}^T=-\hat{u}로 표현할 수 있다.
    u×v=u^vu \times v = \hat{u}v

  • Standard cartesian frame에서 X축과 Y축의 cross product는 Z축이 된다.(Right-hand rule)

Coordinate Frames

  • Rigid object는 right-handed orthonormal frame과 연관되기 때문에 object coordinate frame 혹은 body coordinate frame이라 칭한다.
  • 또한, rigid-body motion은 어떠한 reference frame에서의 motion에 의해 명시되는데 이를 world frame이라 한다.
  • Camera frame FC:(x,y,z)F_C: (x,y,z)과 world reference frame FW:(X,Y,Z)F_W: (X,Y,Z)를 예로 들면 camera의 configuration은 FWF_WFCF_C의 원점 사이의 관계인 translation vector TT와 좌표축 간의 relative orientation RR로 결정된다.

Rigid-body Motion

  • Rigid-body motion(transformation)은 point들 간의 거리를 유지한다는 제약 조건을 가진 mapping function을 의미한다.
  • v=YXv=Y-X일 때 mapping 후 vector는 다른 방향을 가지지만 거리는 유지한다.

Euclidean Transformation

  • 거리를 유지하는 mapping을 euclidean transformation이라 하며 E(3)E(3)으로 표현한다.

  • 하지만, 두 점의 거리를 유지한다는 것은 rigid object moving을 충분히 표현하지 못한다.(거리는 유지하지만 phisically realizable한 경우->아래 예시는 rule of thumb을 위반한다.)

  • 따라서, rigid-body motion은 거리와 orientation을 모두 유지해야 한다.

  • 이는 norm of vector(distance)와 cross product(orientation)을 유지한다고 할 수 있다.

  • Rigid-body motion에 의한 transformation을 special euclidean transformation이라 한다.(SE(3)SE(3))

  • Inner product <.,.><.,.>는 polarization identity에 의해 norm .||.|||으로 표현할 수 있다.

  • 따라서, u+v=g(u)+g(v)||u+v||=||g_*(u)+g_*(v)||이기 때문에 rigid-body motion gg에 대해 <u,v>=<g(u),g(v)><u,v>=<g_*(u),g_*(v)>가 된다. 이는 두 벡터의 사이각이 변환 이후에도 유지됨을 의미한다.

  • 위 특성들에 의해 rigid-body motion은 triple product(volume) 또한 유지한다.

Orthogonal Matrix Representation of Rotations

  • Fixed point OE3O \in \mathbb{E}^3에 대한 rigid object rotating이 있을 때 FCF_CFWF_W에 대한 configuration(orientation)은 세 개의 orthonormal vectors에 의해 결정된다.
  • r1,r2,r3r_1, r_2, r_3는 unit vector로 CC frame에서의 주축 x,y,zx,y,z를 의미한다.
  • Rotation은 세 벡터로 구성된 3x3 matrix로 나타낼 수 있다.
    Rwc=[r1,r2,r3]R3×3R_{wc}=[r_1,r_2,r_3]\in \mathbb{R}^{3\times 3}
  • r1,r2,r3r_1, r_2,r_3는 orthonormal frame을 형성하기 때문에 RwcRwcT=RwcTRwc=IR_{wc}R_{wc}^T=R_{wc}^TR_{wc}=I가 되고 따라서 rotation matrix는 orthogonal matrix이다.
  • Rwc1=RwcTR_{wc}^{-1}=R_{wc}^T이며 r1,r2,r3r_1,r_2,r_3가 right-handed frame이기 때문에 det(RwcR_{wc})=1이다.
  • Special orthogonal matrices의 space는 다음과 같이 SO(3)SO(3)로 나타낼 수 있으며 rotation matrices라 부른다.

Euler Angles to Rotation Matrix

  • Yaw angle γ\gamma는 z축, pitch angle β\beta는 y축, roll angle α\alpha는 x축 방향으로의 회전을 의미한다.
  • 각 축에 대해 회전할 때 나머지 2개의 축이 바뀌는 것을 볼 수 있으며 따라서 기준 축 column은 그대로 두고 나머지 축 column이 바뀌는 matrix를 가진다.
  • Tait-Bryan angles는 z-y'-x'' 순서의 rotation을 의미한다.

Rigid-body motion and its Representations

  • Object 상의 point ppFwF_w에서 vector XwX_w로 나타낼 수 있다.
  • XwX_wFcF_c로의 translation TwcR3T_{wc} \in \mathbb{R}^3FwF_w에서의 XcX_c의 합이 된다.
  • XcX_cFcF_c에서의 point pp이기 때문에 FwF_w에서는 RwcXcR_{wc}X_c로 나타낼 수 있다.
  • Xw=RwcXc+TwcX_w = R_{wc}X_c+T_{wc}

Homogeneous Representation

  • Xw=RwcXc+TwcX_w = R_{wc}X_c+T_{wc}는 linear form으로 다음과 같이 쓸 수 있다.
  • 따라서 gg는 homogeneous representation으로 표현된다.
  • 모든 g1,g2SE(3)g_1, g_2 \in SE(3)에 대해 g1g2,g1g_1g_2, g^{-1}은 닫혀있다.

Composition of Rigid-body Motions

  • 3개의 camera frame에 대해서 각각의 gg가 존재한다고 할 때 X2=g21X1,X3=g32X2,X3=g32X1X_2=g_{21}X_1, X_3=g_{32}X_2, X_3=g_{32}X_1이며 composition rule에 의해 g32g21=g32g_{32}g_{21}=g_{32}가 된다.

  • 또한, g21g12=g22=Ig_{21}g_{12}=g_{22}=I이므로 inverse rule g211=g12g_{21}^{-1}=g_{12}도 정의된다.

  • General하게 표현하면 아래와 같다.

Reference

0개의 댓글