Computer Vision 3

[Introduction] Projective geometry in camera models

Chapter1. Introduction. A tour of Multiple View Geometry 해당 챕터는 MVG를 공부하기에 앞서서 어떤 내용들이 다루어지는지에 대한 brief sketch를 보여준다. Projective transformation Camera는 실제 3차원 물체를 2차원 이미지로 투영시켜서 보여준다. 이 과정은 projective transformation의 한 예라고 할 수 있다. 그런데 반듯한 직사각형 모양의 피사체도 카메라가 어디서 촬영했는지에 따라 제각각의 모양으로 투영된다. 이 projective transformation에서 변환 전 후가 동일하게 보장되는 것은 무엇일까? 모양은 확실하게 아님을 위의 예시로부터 알 수 있었다. 길이 또한 제각각 달라지는 것으로 보아 ..

Subjects/MVG 2022.04.24

[Camera model] Pinhole camera

우리가 computer vision을 이해하기 위해서는 카메라의 동작에 대한 이해가 필수적이다. 카메라는 3D 공간의 물체를 투영하여 2D 카메라 센서에 상을 맺히게 한다. 우리는 그 과정을 이해하기 위해서 가장 기초적이고 ideal 한 경우인 pinhole 카메라 모델에 대해서 알아본다. Pinhole 카메라 모델이 가장 ideal 하다고 이야기 하는 것은 카메라 렌즈에 의한 왜곡이 고려되지 않기 때문이다. 렌즈로 인한 왜곡은 다음 포스트에서 살펴 보도록 한다. 그림에서 먼저 봐야 할 것은 카메라의 위치와 그 좌표축이다. 그림에는 카메라의 중심과, 중심을 기준으로 한 x, y, z축의 양의 방향이 표현되어 있다. 카메라 중심에서 정면 방향이 z축, 우측 방향이 x축, 하단 방향이 y축이다. 대부분의 일..

[Geometric primitives] 2D points, 2D lines, 2D conics

Computer vision을 잘 하기 위해서는 먼저 그 기초부터 탄탄해야 한다. 아쉽게도 그 과정에는 머리가 지끈거리는 수식들도 포함된다... zero-base로 시작하는 것이 마음이 착잡하지만... 한 번 해보자! 컴퓨터 비젼 하면 다들 카메라를 떠올릴 것이고, 카메라로부터 얻게된 이미지를 떠올린다. 실제로 존재하는 어떤 3차원 공간의 물체가 카메라를 통해 2차원 공간의 이미지에 투영되는 과정을 이해하기 위해서는 먼저 그들을 구성하는 geometric primitives에 대한 이해를 하고 있어야 한다. 이들은 앞으로 우리가 공부할 3차원 구조물들을 설명하기 위한 building block이 될 것이다. 먼저, 이번에는 그 중에 2D geometric primitives에 대해서 알아본다. 2D Po..