카메라 모델
✔ 3차원 공간에 있는 물체에 반사되어 오는 빛이 이미지 센서에 들어올 때 카메라 모델에 따라 빛의 변형이 이루어지므로 카메라 모델에 따라 계산함
✔ 핀홀 카메라 모델이 가장 일반적임
핀홀 카메라 모델 (Pinhole camera model)
핀홀 카메라 (Pinhole camera)
- 실제 객체로부터 나오는 빛은 난반사되기 때문에 Pinhole 이라 부르는 아주 작은 구멍을 만들어 하나의 Ray만 통화하게 만들면 상이 뒤집힌 이미지를 얻을 수 있다.
- (3차원 객체의 한점과 fixel간에 1:1 매칭 관계를 만들 수 있다)
- 조리개(Aperture)가 커질수록 들어오는 빛의 양이 많아 밝아지지만, 여러 Ray가 들어오므로 흐릿해짐
- 조리개가 작을 수록 선명하지만, 빛을 충분히 모으는데 시간이 오래걸림
이미지 투영
이미지평면(이미지센서)은 실제로는 렌즈 뒤쪽에 있지만, 기하학적 연산을 단순화하기 위해 렌즈 앞쪽에 위치시키는 것이 일반적입니다. (reflected model)
: focal length : camera center
삼각형 닮은 꼴을 이용해,
※ 하나의 픽셀이 물리적으로 정사각형이 아니라 가로 세로 길이나 개수가 다르면,
를 , 로 나누어 각각 계산하기도함
Anyway, 이미지 평면의 좌표는 왼쪽 위가 원점이므로 이미지 평면의 Center 좌표를 더해주어야함
초점거리(Focal Length)
- 렌즈 중심에서 **이미지 평면(이미지 센서, CCD, CMOS 등)**까지의 거리
다크프로그래머 캘리브레이션
디지털 카메라 등에서 초점거리는 mm 단위로 표현되지만 카메라 모델에서 말하는 초점거리(f)는 픽셀(pixel) 단위로 표현됩니다. 즉, f의 단위로 픽셀이라는 의미입니다.
이미지의 픽셀(pixel)은 이미지 센서의 셀(cell)에 대응되기 때문에, 초점거리(f)가 픽셀(pixel) 단위라는 의미는 초점거리가 이미지 센서의 셀(cell) 크기에 대한 상대적인 값으로 표현된다는 의미입니다. 예를 들어, 이미지 센서의 셀(cell)의 크기가 0.1 mm이고 카메라의 초점거리가 f = 500 pixel이라고 하면 이 카메라의 렌즈 중심에서 이미지 센서까지의 거리는 이미지 센서 셀(cell) 크기의 500배 즉, 50 mm라는 의미입니다.
컴퓨터 비전 분야에서 카메라 초점거리를 물리단위(m, cm, mm, …)가 아닌 픽셀단위로 표현하는 이유는 (이미지 픽셀과 동일한 단위로 초점거리를 표현함으로써) 영상에서의 기하학적 해석을 용이하게 하기 위함입니다.
그런데, 카메라 모델에서 초점거리를 하나의 값으로 f라 표현하지 않고 fx, fy로 구분하여 표현하는 경우가 있는데(실제로 카메라 캘리브레이션을 수행하면 fx, fy를 구분하여 반환한다) 이는 이미지 센서의 물리적인 셀 간격이 가로 방향과 세로 방향이 서로 다를 수 있음을 모델링하기 위함입니다. 이 경우 fx는 초점거리(렌즈중심에서 이미지 센서까지의 거리)가 가로 방향 셀 크기(간격)의 몇 배인지를 나타내고 fy는 초점거리가 세로 방향 센서 셀 크기(간격)의 몇 배인지를 나타냅니다. fx와 fy 모두 단위는 픽셀(pixel)이며 ==현대의 일반적인 카메라는 가로방향 셀 간격과 세로방향 셀 간격의 차이가 없기 때문에 f = fx = fy라 놓아도 무방==합니다.
렌즈 카메라 (Lens camera)
- 핀홀 대신 렌즈를 활용하여 분산되는 Ray를 한 점으로 모아줌
- 핀홀과 동일하게 닮음 삼각형의 성질을 이용하여 모델링 할 수 있음
- 렌즈 자체의 왜곡 발생
어안 카메라 모델 (Fish-Eye camera model)
핀홀 모델과 어안 모델의 차이
핀홀 모델 : Perspective projection
- Perspective projection은 기본적인 핀홀 카메라 모델이며, principal axis (노란색 line) 기준으로 빛이 들어오는 각도와 image plane으로 나아가는 빛의 각도가 동일한 모델이다. ()
- : image plane에서 노란색 축(광학축)과 투영된 빛(점) 사이의 거리.
- : focal length, 이미지 평면과 렌즈 평면(빨간색 선) 사이의 거리.
- 즉, 빛이 들어오는 각도와 focal length에 의해 이미지에서의 픽셀위치가 결정된다.
어안 모델 : Equidistance Projection, Fisheye projection
- Fisheye Camera는 렌즈 설계부터 넓은 화각을 목적으로 설계되었기 때문에 일반적인 Perspective model로 모델링하기 어려우며 가장 많이 활용되는 모델이 Equidistance projection 이다.
- 빛이 들어오는 각도와 image plane으로 나아가는 거리의 비율이 동일함(선형 관계)
- 넓은 화각의 데이터를 얻을 수 있지만, 상당한 왜곡(Distortion)을 발생시킴.
참고
- 3D Geometry Study_Week2(Pinhole model)
- 핀홀 카메라 모델 - SERETO
- 다크 프로그래머 :: 카메라 캘리브레이션 (Camera Calibration)
- [SLAM] Camera Models and distortion (Perspective, Fisheye, Omni) · Jinyong
Next: (Camera Model) 2. 카메라 캘리브레이션