수학/Multiple View Geometry

[Geometry] 사영 공간(projective space), 동치 좌표(homogeneous coordinate), 사영 변환(projective transformation)

AI 꿈나무 2021. 6. 16. 10:35
반응형

사영 공간(projective space)

 projective transformation을 적용한 후에 어떤 geometry 성질이 보존될까요? shape, length, angls, distance, ratios of distance는 아닙니다. 원이 타원으로 나타날 수 있고, projective transformation에서 두 원이 서로 다른 정도로 stretch되면 반지름이 달라집니다. 오직 straightness만이 보존됩니다. 

 

 왜 projective geometry가 필요한지 알기 위해서 Euclidean geometry부터 시작해야 합니다. 유클리디안 기하학은 angles와 shapes of object를 설명합니다. 하나의 관점에서 유클리디안 기하학은 골치거리입니다. 두 선이 intersection하는 경우에 대부분 항상 한 점에서 만납니다. 하지만 두 선이 parallel하는 경우에 두 평행한 선들은 at infinity에서 만납니다. infinity는 존재하지 않고, 이는 단순히 편리한 용어일 뿐입니다. 이 문제를 이상점(ideal point)라고 부름으로써 해결합니다. points at infinity를 유클리디안 평면에 추가함으로써, 유클리디안 공간은 새로운 형태의 geometriy object, projective space로 변환됩니다. 거리, 각도, 점, 선들 같은 개념을 포함하고 있는 유클리디안 공간의 성질을 사용할 수 있습니다. 

 

 사영공간은 유클리디안 공간에서 이상점(ideal point)이라고 불리는 무한대의 점(points at infinity)을 추가한 것입니다. 

 

동치 좌표(Homogeneous Coordinate)

 2차원 유클리디안 공간에서 한 점은 실수의 순서쌍(x,y)으로 표현됩니다. 이 순서쌍에 추가적인 좌표를 추가하여 동일한 저을 나타내는 세쌍의 순서쌍(x,y,1)로 표현할 수 있습니다. 간단히 마지막 좌표를 추가하거나 제거하여 한 점의 표현을 되돌릴 수 있기 때문에, 이것은 무해해보입니다. (x,y,1)에서 왜 마지막 좌표가 1이고, 다른 두 좌표는 제한되지 않았는지 살펴보겠습니다.

 

 여기서, (x,y,1)과 (2x,2y,2)는 동일한 점을 나타낸다고 정의하겠습니다. 추가적으로 (kx, ky, k) 또한 동일한 점을 나타냅니다. 공식적으로 이 점들은 동치류(equivalence class)로 표현됩니다. 여기서, 이 세쌍들은 공통된 곱셈에 의해 달라질 때, 동일합니다. 이를 점의 동치 좌표(homogeneous coordinate)라고 부릅니다. 다음의 세쌍 좌표 (kx, ky, k)가 주어졌을때, k로 나누어 (x,y)인 원래 좌표로 되돌릴 수 있습니다.

 

 (x,y,1)와 (x,y)는 동일한 점이라는 것을 배웠습니다. (x,y,0)에 해당하는 점은 없습니다. 마지막 좌표인 0으로 나누면, 무한인 (x/0, y/0) 점을 얻습니다. 이것은 무한대의 점(points at infinity)가 생기는 방법입니다. 이들은 마지막 좌표가 0인 동치 좌표(homogeneous coordinate)로 표현됩니다.

 

 점을 동치 벡터(homogeneous vector)로 표현함으로써 2차원 유클리드 공간을 사영 공간(projective space)로 확장하는 방법을 살펴보았습니다. 즉, R^n 유클리드 공간은 점들을 동치 벡터(homogeneous vector)로 표현함으로써 P^n 사영 공간(projective space)으로 확장할 수 있습니다. 2차원 사영 공간에서 무한대의 점은 선을 형성하고, 보통 이것을 무한대의 선(line at infinity)라고 부릅니다. 3차원에서는 무한대의 평면(plane at infinity)를 형성합니다.

 

사영 변환(Projective transformation)

 사영 공간의 관점으로부터 무한대의 점은 다른 점들과 다르지 않습니다. homogeneous coordinate 표현에서 마지막 좌표가 0인 무한대의 점은 좌표 frame의 선택입니다. 유클리디안 또는 affine 변환과 유사하게 사영 공간에서 사영 변환을 정의합니다. 유클리디안 공간에서 선형 변환은 좌표에 행렬 곱을 적용하는 것으로 표현됩니다. 사영 변환도 동일한 방법으로 homogeneous coordinate로 표현되는 점(n+1 벡터)에 mapping을 합니다. 여기에, coordinate vector은 non-singular matrix(역행렬이 존재하는 행렬)에 의해 곱해집니다. 이러한 mapping에서 무한대의 점(마지막 좌표가 0인)은 임의의 다른 점으로 map 됩니다. 무한대의 점은 보존되지 않습니다. 따라서, projective transformation은 homogeneous coordinate의 선형 변환으로 표현됩니다.

 

 

 컴퓨터비전 문제에서 사영 공간은 현실 3D 세계를 3차원 사영 공간으로 확장하여 표현하는 편리한 방법입니다.


참고자료

[1] Multiple View Geometry in Computer Vision

반응형