티스토리 뷰
자료 출처: CS5670 Cameras, CMU Geometric camera models
저에게 해당 내용들은 굉장히 어렵고 생소합니다. 물론 열심히 공부하고 이해한 것을 바탕으로 정리를 하겠지만, 설명이 장황하고 방대해질 것 같습니다. 핵심 내용만을 보고 싶다면 위의 자료 출처를 참고 부탁드립니다. 감사합니다.
서론
homographies을 통해 360 panorama를 만들 수 있을까? 이를 이해하려면 camera에 대해 알아야 한다고 합니다.
computer vision의 목표는 digital image로부터 3-dimensional world의 속성을 계산하는 것에 있습니다. 이미지와 비디오의 분석을 통해 3D shape을 reconstruct하는 것, 어떻게 움직이는지 파악하고 인식하는 것이 주요 목적인데요.
camera는 3D world를 2D image로 투영 시킵니다. 해당 내용을 geometric하게 이해하기 위해 dimensionality reduction과 projection의 수학적 개념이 바탕이 될 것 같습니다.
Bare-sensor image
아무 sensor가 없는 real world image가 digital sensor에 어떻게 닿는지 살펴보겠습니다.
모든 scene point는 all sensor pixels로 나눠집니다.
sensor의 이미지는 위와 같이 보이게 됩니다. 모든 빛이 섞였기 때문입니다.
따라서 scene에 barrier를 추가합니다.
pinhole이란 aperture가 추가되었습니다. 이렇게 찍은 이미지는 어떻게 보일까요?
object에서 나오는 수많은 rays 중에 하나만 pinhole을 통과합니다.
각 scene point는 하나의 sensor pixel로 나타내집니다.
따라서 real-world object였던 나무는 구멍을 통해 복사되어 거꾸로 표현됩니다.
여기서 나온 pinhole의 개념을 더 살펴보겠습니다.
Pinhole Camera
왼쪽은 barrier가 없어 object가 무분별하게 찍히며 섞이는 현상입니다. 오른쪽은 구멍과 같은 barrier를 통해 투영하여 이미지를 적절하게 capture하고 있습니다.
Pinhole camera는 렌즈가 없지만 작은 조리개가 있는 단순한 카메라를 의미합니다. 장면의 빛은 aperture(조리개, 또한 pinhole이라고도 부름)를 통과하여 상자의 반대쪽에 반전된 이미지를 투사합니다. 이를 camera obscura effect라고 부릅니다. 이미지의 크기는 object와 pinhole 사이의 거리에 따라 다릅니다.
추가적으로 Pinhole은 Center of Projection(COP)라고도 말합니다. 즉, 빛을 하나의 점을 통과하여 반대로 투영하게 하는 구멍입니다. COP와 image plane 사이의 거리를 effective focal length라고 하며, f로 표기가 가능합니다.
Aperture
Aperture의 값을 f라고 합니다.
aperture은 흔히 조리개라고 합니다. aperture는 센서에 도달하는 빛의 양을 물리적으로 조절하는 장치를 말합니다. 즉, 빛을 통과하는 구멍입니다. 구멍이 커질수록 더 많은 빛이, 작아질수록 더 적은 양의 빛이 들어오게 됩니다.
camera obscura
camera obscura 또는 pinhole image는 자연스러운 광학 현상입니다.
이는 object와 어떤 상자가 있다고 가정할 때, 상자 한 쪽 면에 있는 작은 구멍을 통해 빛을 통과시키면 반대쪽 벽면에 object가 거꾸로 투사되어 나타나는 현상을 의미합니다.
이것을 렌즈를 통해 작은 기계 장치로 만든 것이 사진 촬영 기계인 ‘카메라’입니다. camera obscura는 카메라의 어원이 되었습니다.
Adding a lens
렌즈를 사용하게 된 이유는 무엇일까요?
pinhole camera는 빛이 아주 작은 구멍을 거쳐서 오기 때문에 빛을 모아 영상을 만들기엔 많은 시간이 걸립니다. 구멍을 통해 들어오는 빛의 양이 적어서 장기간의 노출이 필요합니다. 대신 근거리에서 원거리까지 모두 초점이 맞는다는 장점이 있습니다.
lens를 사용하게 되면 모든 빛이 lens를 지나 굴절하게 됩니다. 그리고 image lane까지 하나의 점으로 모이게 됩니다. pinhole보다 빛을 빠르게 모아 영상을 만들지만, 렌즈는 왜곡을 발생시킵니다.
pinhole plane이 camera lens라고 생각하면 됩니다.
lens는 film에 빛을 focussing합니다. focus가 맞으려면 object는 특정한 거리를 유지해야 합니다. lens에서 초점은 특정한 거리에서만 나타나 선명한 상을 만들어 줍니다. 초점과의 거리에 따라 물체가 특정한 모양으로 흐려지는 현상이 나타나는데, 이를 circle of confusion이라고 합니다. lens의 모양을 변경하면 이 거리가 변경됩니다.
해당 내용은 focal length의 내용으로 뒤에서 더 자세히 다루겠습니다.
The eye
카메라 구조는 눈과 굉장히 유사한 구조를 가졌습니다. Iris와 pupil을 통해 우리 눈에 들어오는 빛을 조절할 수 있습니다. Retina는 digital camera에서 film과 같은 역할을 하게 됩니다. 거꾸로 포착되는 object를 바로 보게 해주고, 초점을 맞추는 일을 돕습니다.
- Iris(홍채)
- colored annuals with radial muscles
- Pupil(동공)
- the hole (aperture) whose size is controlled by the iris
- Retina(망막)
- = film
추가적으로 Focal length의 개념을 살펴보기 위해 Pinhole camera와 lens camera를 더 살펴보고 가겠습니다.
Pinhole camera terms
위 이미지를 통해 pinhole(aperture), camera center(center of projection), image plane의 개념을 한 번 정리해주세요.
Focal length
focal length($f$)은 COP와 image plane 사이의 거리를 의미합니다.
그러면 이 focal length의 거리를 반으로 줄인다면 어떻게 될까요? ($0.5 f$)
object의 크기가 절반으로 줄어서 투영되었다는 것을 확인할 수 있습니다.
Pinhole size
이상적인 pinhole은 아주 작아야 한다고 합니다. 하지만 실제로 그러기엔 어렵습니다.
object에 대한 더 많은 ray가 pinhole을 통과하게 됩니다.
이렇게 될 경우 많은 빛이 투영되어 번짐 현상이 생기게 됩니다. (object projection becomes blurrier)
해당 강의 자료에서는 두 가지 질문을 던집니다.
- What is the effect of doubling the pinhole diameter?
- What is the effect of doubling the focal length?
Answer
- 2x pinhole diameter → 4x light
- 2x focal length → ¼x light
pinhole 지름을 2배로 넓히면 4배 더 많은 빛을 받아들이고, focal length을 2배로 늘리면 1/4 적은 light을 받게 됩니다.
The camera lens
렌즈는 센서의 한 점에서 센서로 향하는 ray의 한 다발을 매핑하게 됩니다.
pinhole camera와 차이가 있어 보입니다.
중심까지 rays는 동일한 방식으로 propagate(전파)됩니다.
Describing both lens and pinhole cameras
다음과 같은 경우 두 카메라 모델 모두 같은 속성을 갖고 있음을 알 수 있는데요.
먼저, central rays만 사용한다는 점과 lens camera에 초점이 맞춰져 있다는 가정입니다.
Important difference: focal length
다른 점으로는 focal length가 있는데요.
pinhole camera의 focal length는 aperture과 sensor 사이의 거리라는 점입니다.
lens camera의 경우, focal length는 parallel rays가 교차하는 지점의 거리를 의미합니다.
여기서 lens를 지나 하나의 점으로 모이게 되는 점을 focal point라고 합니다.
따라서 다시 정리하면 lens camrea의 focal length는 lens를 통과한 빛이 모이는 지점인 focal point까지의 거리입니다.
- D: object distance
- f: focal length
- D': focus distance
Describing both lens and pinhole cameras
다시 두 카메라의 속성을 정리해보겠습니다.
두 카메라 모델 모두 유지되는 동일한 속성으로는
- central rays만 사용한다
- lens camera에 초점이 맞춰져 있다고 가정한다
- lens camera의 focus distance가 pinhole camera의 focal length와 같다고 가정한다
입니다.
하지만 기억해야할 점은 focal length $f$는 lens와 pinhole camera에게 다르다는 점이고, 해당 강의에서는 $f$는 pinhole camera의 경우처럼 aperture-sensor distance의 의미로만 사용합니다.
•초점 거리 f는 렌즈와 핀홀 카메라의 다른 것을 나타냅니다.
• 본 강의에서는 핀홀 카메라의 경우처럼 조리개 센서의 거리를 의미하는 용어로 사용합니다.
여기까지 camera나 eye 등의 기본적인 역사와 이론에 대해 정리하였고, 결국 computer vision을 위해 해당 내용을 공부하고 이해해야 하는 부분은 geometric model입니다.
이제부터 Coordinate system을 통해 projection을 modeling하는 것, Perspective Projection, Orthographic projection, Camera parameters, Camera matrix, Extrinsics, Projection matrix, ... etc 에 대해 다루게 될 예정입니다.
포스팅이 길어질 것 같아 나눠서 진행하겠습니다!
'AI > Computer Vision' 카테고리의 다른 글
[CS5670] Lecture 11: Panoramas (0) | 2022.08.08 |
---|---|
[CS5670] Lecture 10: Cameras (2) (0) | 2022.07.18 |
[보충] Affine transformations and Homography (0) | 2022.07.14 |
[CS5670] Lecture 7: Transformations and warping (0) | 2022.06.24 |
[CS5670] Lecture 6: Feature Descriptors and Feature Matching (0) | 2022.06.23 |
- Total
- Today
- Yesterday
- cs231n
- 구글드라이브서버다운
- vscode 자동 저장
- 구글드라이브연동
- 서버구글드라이브연동
- support set
- 파이썬 클래스 계층 구조
- 딥러닝
- docker
- 파이썬 딕셔너리
- 프롬프트
- 서버에다운
- 구글드라이브다운
- 도커
- style transfer
- 구글드라이브서버연동
- stylegan
- prompt learning
- 파이썬 클래스 다형성
- 데이터셋다운로드
- Unsupervised learning
- 도커 컨테이너
- 파이썬
- Prompt
- few-shot learning
- clip
- 퓨샷러닝
- CNN
- NLP
- python
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |