본문 바로가기
Computer Vision/Multiple View Geometry

[Multiple View Geometry] Chapter 2 (Part 1/2)

by sk_victoria 2022. 7. 17.

출처 : https://www.youtube.com/watch?v=LAHQ_qIzNGU&list=PLxg0CGqViygP47ERvqHw_v7FVnUovJeaz&index=1 


학습목표

  1. Euclidean Geometry vs. Projective Geometry
  2. Homogenous Coordinate를 사용하여 point, line, conic 설명하기 (Projective Space에서)
  3. Line vs. Point / Conics vs. Dual conics 간의 duality relation
  4. Hierarchy of Transformation (Point, Line, Conic)

Projective Transformation 이란?

  • 이미지에서 평행한 선은 한 점에서 만난다.
  • 실제 사각형을 이미지에 나타내면 사각형이 아니게 된다. (Projective Transformation)
  • 실제 원을 이미지에 나타내면 원이 아니게 된다. (Projective Transformation)
  • 즉, 각도, 거리, 거리의 비율은 보존되지 않는다.
  • 직선의 Straighness는 보존된다.

 

Euclidean vs. Projective

  • Euclidean
    1. Cartesian Coordinates
      • [kx/k, ky/k] = [x,y] (Real Number Space)
    2. Synthetic Geometry
    3. Axiomatic Method (Compass, StraightEdge)
  • Projective
    1. Homogeneous Coordinates
      • [kx, ky, k] (Equivalent for all Real Number k's)
      • if k=0이면 무한대에 있는 점을 뜻한다.
    2. Analytic Geometry (선형대수 등을 이용하여 푼다)
    3. Euclidean Space에서는 설명하지 못했던 infinity (line, point, plane)에 대한 설명을 할 수 있다.

 

Cartesian Coordinate 상에서 Homogeneous Coordinate 표현하기

  1. Cartesian 의 (0,0,0)은 Homogeneous 에서는 undefined Point 이다.
  2. (kx, ky, k)는 위 그림에서의 빨간 직선 위의 모든 점을 의미한다.
  3. Cartesian 의 xy평면은 Homogeneous 에서는 Point of Infinity, 즉 (kx, ky, k)에서 k=0인 경우와 같다.
  4. Cartesian 의 z축위의 점들은 Homogeneous 의 L-infinity : (0,0,1) 를 의미한다. 

 

Incidence Relation

  • Point [kx, ky, k]는 Cartesian Coordinate에서 직선으로 나타낼 수 있다.
  • Line은 Plane으로 표현가능하다.

 

Line

  • ax + by + c = 0 <=> [a,b,c] 로 표현가능 (단, [0,0,0]은 직선을 의미하지 않는다)
  • 벡터 [a,b,c] 와 직선간의 관계는 일대일대응 관계는 아니다.
    • 설명). ax + by + c = 0 / (ka) x + (kb) y + (kc) = 0 
    • 즉 [a,b,c] = [ka, kb, kc] 이기 때문이다.
  • [0,0,0]은 singular point
  • [표기] 점이 직선 위에 있다
    • 점 (x,y)
    • 직선 (a,b,c)
    • k*(x,y,1) * (a,b,c) = 0 (k는 non-zero constant)

Degree of Freedom

  • Point : 2-자유도
  • Line : 2-자유도 ([a,b,c]에서 두 쌍의 비율이 중요 ex. a:b, b:c)

 

Intersection of Lines

  • 두 직선간의 교점은 다음과 같이 나타낼 수 있다.
    • 직선 l, l', 두 직선간의 교점 x
    • x = l x l' (두 직선간의 외적으로 표현가능)
    • cf). 두 평행한 직선의 경우 : 외적의 결과 = (x,y,0)이므로 무한대의 점을 가리킨다.
  • 비슷하게, 한 직선위에 두 점이 있을 경우 다음과 같이 나타낼 수 있다.
    • 직선 l, 직선위의 두점 x, x'
    • l = (x) x (x') (두 점간의 외적으로 표현가능)

댓글