본문 바로가기
Projects/3D Reconstruction

1. 카메라 모델

by 규나 2021. 9. 21.
SMALL

핀홀 카메라 모델

가장 단순한 카메라 모델은 무엇일까?

바로 아주 작은 조리개(aperture)를 가진 벽을 3D object와 photographic film 또는 sensor 사이에 두는 것이다. 아래 그림과 같이 object의 한 점에서 발산되는 빛은 무수히 많은데 그 중 단 한 줄기의 빛만이 조리개를 통과한다고 가정하자. 즉, object와 film 사이에 1-to-1 매핑이 형성된다. 그러면 film에는 object의 "영상"이 얻어진다. 이러한 가장 단순한 카메라 모델을 핀홀 카메라(Pinhole-Camera) 라고 한다.

근데.. 왜 조리개 구멍이 아주 작아야할까?

구멍에 빛이 많이 들어오면 object가 blur되어 보이기 때문이다.

핀홀 카메라 모델

 

좀더 형식적인 핀홀 카메라 모델은 아래와 같다. film은 흔히 "image 또는 retinal plane"이라고 부른다. 조리개는 "pinhole O 또는 center of the camera"라고 부른다. 마지막으로 image plane과 O 사이의 거리는 "focal length f"라고 한다. 

핀홀 카메라 모델2

 

Projection과 Camera Refernce System

3D onject 위에 점 P=[x y z]가 있다고 하자. 그리고 그에 대응되는(project되는, 투영되는) image plane 위에 점 P' = [x' y']이 있다. 이들 사이의 관계는 아래 그림의 식으로 나타낼 수 있다.
여기 원점 O를 중심으로하며 [i, k, j] 축을 갖는 좌표계가 있다. 특징적인 것은 k축이 image plane과 수직임을 기준으로 한다. 이 좌표계를 camera reference system이라고 한다.

 

Cameras & Lenses

조리개의 크기가 커지면 상이 흐려지지만, 밝기는 밝아진다. 둘 사이에는 trade-off 관계가 있다. 
이것을 해결한 카메라 모델이 렌즈를 사용한 모델이다. 아래 그림과 같이 볼록 렌즈는 점 P에서 반사된 빛을 모아 image plane위의 한 점으로 투영한다.

카메라 렌즈

그런데 object가 위치한 거리에 따라 물체의 상이 투영되는 "in focus" 거리가 정해져 있다. 아래와 같이 연두색 빛은 그 거리가 길어 image plane에서 out of focus 되어 흐린 상이 맺히게 된다.

out of focus

 

렌즈에는 또 다른 흥미로운 특징들이 있다.

만약 렌즈에 평행한 빛이 일정하게 들어오면 그 빛들이 동시에 수렴하는 focal point라는 점이 있다. 그리고 렌즈와 focal point 사이의 거리를 focal length라고 한다.

focal length

이러한 렌즈 모델에서 3D object가 image plane에 투영될 때, 좌표를 살펴보자. 핀홀 카메라 모델과 크게 다를 바가 없다. 다만, 필름과 렌즈 사이의 거리가 focal length와 연관되어 나타내어 진다.

투영된 좌표

 

Image Coordinate System

image plane에 투영된 3D points 좌표는 우리가 직접적으로 모니터 상의 digital image에서 보는 사진과는 거리가 있다. image plane위의 좌표를 픽셀로 구분되는 image coordinate으로 변환해야 한다. 
1.  image plane의 중심 점 C' = [C_x, C_y]라고 하자. 그럼 이 중심 값 만큼의 offset을 움직여야 한다.

2. 다음으로 CCD 또는 CMOS 센서에 따라 단위 길이당 픽셀 비율을 나타내는 상수를 곱한다. 

3. 이 때 곱해진 상수와 f의 곱을 알파, 베타로 치환하여 식을 간결히 한다.

자, 이제 위 식을 살펴보자. 위의 방정식은 linear 한가?

그렇지 않다. Z라는 미지수가 분모에 있기 때문에 non-linear하다. 따라서 위의 방정식을 matrix의 곱과 벡터 [x y z]로  나타낼 수가 없다. 이론적으로는 그럴 수 없지만, Euclidian coordinate system을 Homogeneous coordinate system으로 바꾸어 표현하면 linear하게 만들 수 있다.

Camera Matrix

 

Camera Matrix & World Reference System

위의 Camera matrix를 치환하여 다음과 같이 표현할 수 있다.

자 그럼 다시. Cameta matrix가 뭐였는가? 3D object P와 2D image 픽셀 좌표 P'의 관계를 나타내는 matrix였다.

그렇다면 world reference system과 2D image 픽셀 좌표 P'의 관계를 나타낼 수 없을까?

카메라로 사진을 촬영할 때 camera reference system과 world reference system사이의 translation+rotation 관계를 알고 있으면 가능하다. 단순히 이들의 R, T matrix를 곱하고 더해주면 되기 때문이다.

위의 방정식을 통해 world reference system상의 3D object 점의 위치에서 image 위의 픽셀 좌표를 구할 수 있었다. 여기서 matrix K는 카메라의 intrinsic parameter라고 하며 DOF가 5이며, matrix R과 T는 extrinsic parameter라고 하며 DOF가 6이다.

 

 


Weak Perspective Projection

위에서 언급한 것처럼 물체의 depth가 image 좌표에 영향을 미치며 각기 다르게 계산된다.

orthographic 또는 affine 모델이라고도 불리는 waek perspective projection 모델은 모든 포인트에 대해 같은 거리를 가정하고 좌표를 계산한다.

핀홀 카메라 모델은 정확하고 3D-2D mapping에 좋은 반면, 이 모델은 단순하지만 부정확하여 작고 가까운 물체를 mapping할 때 좋다.

'Projects > 3D Reconstruction' 카테고리의 다른 글

6. Fitting and Matching  (0) 2021.09.21
5. Structure From Motion (SFM)  (0) 2021.09.21
4. Epipolar Geometry  (0) 2021.09.21
3. Single View Metrology  (0) 2021.09.21
2. 카메라 캘리브레이션  (0) 2021.09.21

댓글