[Computer Vision_Lecture 2.1] Image Formation (1)
이 글은 RWTH AACHEN UNIVERSITY에서 Bastian Leibe 교수님의 Computer Vision 강의를 듣고 정리한 글입니다.
모든 이미지의 저작권은 해당 강의자료에 있으며, 개인적으로 수업을 듣고 공부한 내용으로 정확하지 않은 내용이 있을 수 있습니다!
(Lecture 1 강의는 Introduction으로 Computer vision을 배워야하는 이유와
앞으로의 해결 과제들에 대한 내용을 다루셔서 따로 정리하지는 않음!)
이번 강의에서는 우리가 접하는 모든 이미지가 어떻게 생성되었으며,
그러한 생성과정에 있어서 어떠한 parameter들이 중요한 영향을 끼치는지 공부했다.
(수리적으로 하나하나 자세하게 이해하기보다는, 전체적인 원리와 관계 위주로 설명해주심)
Camera Obscura (Dark Chamber)
초기의 카메라는 Dark Chamber라고 불리는 Camera Obscura 이다.
Dark Chamber라는 이름에서 바로 알 수 있듯이, 어두운 방에서 image의 projection을 이용한 것이다. 위의 그림에서 처럼 어두운 방의 한쪽 벽면에 작은 구멍(pinhole)을 만들면 밖에서 들어오는 빛에 의해 벽면 밖의 물체의 상이 방 안쪽의 벽에 projection 된다는 원리이다. (이러한 방법은 17세기에 화가들에 의해서 많이 이용되었다고 한다.)
Pinhole Camera
이러한 Camera Obscure의 원리를 이용해 등장한 것이 바로 Pinhole Camera이다.
이러한 pinhole camera는 오늘날 우리가 사용하는 카메라의 표준이 되었다.
위의 그림에서 확인할 수 있듯이 object의 상이 맺히는 면을 image plane이라고 한다면 이러한 image plane에는
바깥에 있는 물체의 상이 upside down된 형태로 맺히게 된다.
Parameters of Camera
위에서 간단하게 카메라의 기본적인 원리를 살펴보았다.
이제 이러한 원리를 바탕으로 어떠한 변화들을 주었을 때 카메라의 성능이 높아지는지, 즉 카메라의 성능을 결정하는 여러 중요한 파라미터들을 살펴보자.
1. Pinhole Size / Aperture
빛이 들어오는 구멍 즉 pinhole의 크기는 image의 quality에 많은 영향을 준다.
먼저 pinhole의 크기가 너무 큰 경우를 살펴보자.
위에서 왼쪽이 pinhole의 크기가 2mm로 더 큰 경우인데,
그림에서 확인할 수 있듯이 pinhole이 1mm일 때보다 더 흐릿한 것을 볼 수 있다.
이렇게 pinhole의 크기가 너무 커지면, 각 image point에서 light rays의 많은 방향들이 averaged되면서 image가 blurring된다.
그렇다면 pinhole의 크기가 작은 경우에는 어떨까?
pinhole의 크기가 클 때, 이미지가 blur되는 원인이 줄어들었기 때문에,
위의 그림에서 pinhole의 크기가 0.35mm로 더 작은 경우 이미지가 더욱 선명하게 보이는 것을 확인할 수 있다.
그러나 pinhole의 크기가 작아지면 작아질수록 좋은 것은 아니다.
위의 이미지에서 볼 수 있듯이, pinhole의 크기가 0.07mm로 너무 작아진 경우에는 오히려 다시 image가 블러된 것을 확인할 수 있다.
이는 pinhole이 너무 작은 경우에는 모든 방향에서의 광선이 pinhole의 edge에서 많이 막히게 되기 때문이다.
따라서, sharp한 image를 얻기 위해서는 적절한 pinhole size를 선택하는 것이 중요하다는 것을 확인할 수 있다.
그리고 위의 예시 사진들에서 볼 수 있듯이 일반적으로 pinhole camera는
특정 지점의 매우 작은 set of rays만이 작은 pinhole을 통과해 screen에 닿기 때문에 어둡다는 특징을 갖는다.
그런데 이러한 pinhole 카메라의 특징은 곧 pinhole 카메라의 딜레마가 된다.
즉 우리는 sharp한 image를 얻기위해서 pinhole의 크기를 적당히 줄여나가야 하는데, 그렇게 하면 할수록 이미지가 점점 어두워지는 것이다.
반대로 pinhole size를 키우면 이미지는 밝아지지만, 이미지가 blur되는 문제가 발생한다.
따라서 이러한 문제점을 해결하고자 Lens가 등장하게 되었다.
2. Reason for Lenses
위의 이미지에서 lens를 이용한 경우 빛이 어떻게 진행되는지 볼 수 있다.
lens를 이용하는 경우 동일한 지점에서 다른 방향으로 방출되는 많은 광선을 포착할 수 있다.
즉, 모든 빛이 lens를 지나 굴절하게 되어 image plane의 하나의 점으로 모이게 된다. 이렇게 되면 image는 sharp하게 유지하면서 빛은 큰 area로부터 모을 수 있기 때문에 사진의 밝기도 유지할 수 있게 되고 따라서 lens는 pinhole을 대안할 수 있는 방안이 된다.
The Thin Lens
이렇게 lens를 사용하는 camera model중 가장 단순한 것이 thin lens 모델이다.
thin lens model에서 얇다는 것은 곡률 반경(radius of culvature)에 비해 렌즈가 얇다는 것을 의미한다.
얇은 렌즈 모델은 렌즈 두께로 인한 광학효과를 무시하기 때문에 광선 추적(ray tracing) 계산을 크게 단순화할 수 있다.
특정 광선은 근축선 근사에서 thin lens를 통과할 때 다음과 같은 간단한 규칙을 따른다.
- 렌즈의 한쪽에 있는 축과 평행하게 들어오는 모든 광선은 다른 쪽에 있는 초점 F'를 향해 진행된다.
- 정면의 초점인 F를 통과한 후 렌즈에 도달하는 모든 광선은 반대쪽의 축과 평행하게 나온다.
- 렌즈의 중심을 통과하는 어떤 광선도 방향을 바꾸지 않을 것이다.
세 개의 광선이 렌즈 앞에 있는 물체의 한 점에서 추적된다면, 그들은 그 물체 점의 이미지가 형성되는 지점에서 교차할 것이다.
이러한 광선 추적에 의해, 물체 거리 -Z와 이미지 평면까지의 거리 Z' 사이의 관계는 다음과 같이 보일 수 있다.
방정식에서의 f는 focal length를 나타내는데, focal length의 정의는 len의 중앙으로부터 focal point까지의 거리가 된다.
이때, focal point는 빛이 평행하게 들어와서 lens를 통과하게 되면 한점으로 모이게 되는데 그 점을 바로 focal point라고 부른다.
즉, lens와 focal length는 서로 의존적인 관계가 되며, focal length는 카메라의 필수적인 parameter가 된다!
3. Focus and Depth of field
Thin lens model의 하나의 중요한 property는 별개의 깊이에 있는 scene points들은 렌즈에서 이미지 평면의 다른 거리에 초점을 맞춘다는 것이다.
아래의 그림에서 빨간색과 파란색 선은 image plane이 focus가 맞기위한 올바른 distance에 있지 않은 상황을 표시해둔 것이다.
우선 빨간색의 상황부터 살펴보자. 위의 그림에서 빨간색은 image plane이 lens에 너무 가까운 경우를 나타낸다.
이와 같은 경우에 광선은 그림에서 빨간색 원으로 표현한 Blur circle로 초점을 맞추게 된다.
파란색 선과 같이 image plane이 lens에서 너무 먼 경우에도 같은 현상이 발생한다.
즉 만약 image plane과 lens 사이의 distance를 고정한다면, 이것은 특정 깊이 범위 내의 scene point들만 초점이 맞춰진다는 것을 의미한다.
따라서 blur가 발생하지 않게 하기 위해서는 그림에서 x'라고 표시된 point in focus 근처에 image plane이 위치해 있어야한다는 것이다.
그리고 이때, Depth of field는 이러한 blurr circle의 크기가 상을 흐릿하게 보이지 않게 하는 한계까지 image plane을 움직일 수 있는 거리의 범위를 의미한다.
그렇다면 이제 Aperture 즉 pinhole이 Depth of field에 어떤 영향을 미치는지 그 복합적 영향을 살펴보면
Depth of field의 개념이 조금더 와닿을 수 있다.
<Large Aperture>
우선 aperture가 큰 경우이다. 이런 경우에는 이미지에 초점을 맞춘 light ray들이 그림에서 알 수 있듯이 큰 각도로 지나가게 된다.
따라서 조금만 image plane을 움직여도 blurr circle의 크기가 크게 변하고 이 말은 곧 정확한 거리 범위에 바로 있는 물체만 배경이 흐릿한 곳에 초점이 맞춰져 나타난다는 것이다. 따라서 aperture가 큰 경우에 우리는 아주 작은 Depth of field를 얻는다는 것을 알 수 있다.
<Small Aperture>
Aperture가 작은 경우에는 그림에서 볼 수 있듯이 light ray들이 작은 각도로 통과하게 되고, 따라서 image plane을 큰 범위로 움직여도 blurr circle의 크기가 크게 변하지 않을 것을 예상할 수 있다. 즉 apreture가 작은 경우 우리는 큰 Depth of field를 얻을 수 있다.
4. Field of View
Camere의 또다른 중요한 parameter로 field of view가 있다.
위의 그림을 살펴보면, 왼쪽 상단의 첫번째 사진에서 wide angle lens를 사용했을 때 그에 상응하는 field of view가 65.5 x 46.4 로 나타난다.
그리고 점차 가까이 zoom할 수록, image plane의 weigh of resolution은 3D 장면의 더 작은 부분을 묘사되기 위해 사용되며 그에 상응하는 Field of view는 계속해서 shrink하는 것을 확인할 수 있다.
<Field of View Depends on Focal Length>
Field of view는 focal length에 의존하게 되는데 이 둘의 관계가 어떻게 되는지 살펴보자.
우선 직관적으로 focal length는 image plane까지의 거리를 결정한다.
(Focal length는 lens의 중앙으로부터 focal point까지의 거리를 의미함)
위의 그림을 살펴보면 focal length가 매우 작은 f1의 경우, image plane이 camera center와 매우 가까워지게 되고 이와 상응하게 wide한 field of view를 가지게 된다.
반면 focal length가 커질수록 image plane이 camera center로부터 멀어지게 되고 이에 상응해 field of view는 수축하게 되는 것을 확인할 수 있다.
실제로 이것은 우리에게 또 다른 trade off를 제공한다. 많은 응용 프로그램에서 가능한 한 넓은 장면의 일부를 캡처하려고 하지만, 동시에 물체를 인지하고 인식하기를 원하고 그것들을 인식하기 위해 우리는 최소한 그것들을 인식할 해결책이 필요하다.
이것은 opening angle과 주어진 카메라에 사용하기 위한 field of view에 자연스러운 제한을 두게된다.