[SLAM] 7. 핀홀 카메라 투영

happy_quokka·2023년 11월 21일
0

SLAM

목록 보기
8/28
  • 중요하다!!

1.camera obscura to modern camera

camera obscura

  • 과거의 첫 사진기
  • 바늘구멍 사진기의 2가지 원리
    • 빛은 직선으로 이동한다 (물체가 거꾸로 맺힌다)
    • 상 맺힘

modern camera

  • light control
    • hardware 처리(전처리) : 노출시간, aperture(조리개, 구멍) 크기를 통해 조절
    • software 처리(후처리) : ISO gain (을 높여서 빛의 양 증폭), normalization (이미지 밝기값 평평하게 조절 가능)
  • focal point (초점)
    • lens
  • obscura와 같은 원리이다!

2. Camera projection

수학적 원리

  • 3D에서 2D로 공간 매핑
    • X : 3d world coordinate points
    • P : projection matrix (3d -> 2d로 공간 매핑해주는 matrix)
    • x : 2d image coordinate points

camera projection의 단계


1. world cordinate system(3d) -> camera coordinate system(3d)
2. camera coordinate system(3d) -> image coordinate system(2d)

단계 1. world cordinate(3d) -> camera coordinate(3d) transformation

  • 왼쪽 : camera frame
  • 오른쪽 : world frame
  • 둘다 3d이기 때문에 world에서 camera로의 이동을 rigid body motion으로 표현할 수 있다
    • rotation : 3x3 matrix(SO(3))
    • translation : 3x1 vector
    • transformtaion : 4x4 matrix(SE(3))

  • world에 관한 정보는 다 제거된다

단계 2. camera coordinate(3d) -> image coordinate(2d) transformation

  • z 축이 카메라 전방을 의미
  • 이미지 plane의 영점은 p (principal point)
  • x_c를 camera center(c)와 이으면 image plane을 통과하는 부분이 x_im
  • x_im을 수식적으로 정확하게 표현하는 것이 camera projection 의 목표
  • 실제 작동 원리는 왼쪽이지만 관용적으로 오른쪽으로 사용한다

  • 목표는 x_im 찾는것
  • 방법은 두개의 닮은꼴 삼각형을 활용하여 비율로써 찾는다
  • f_y : focal length, focal point(c)와 가상 image plane간의 거리

  • 3D좌표를 2D좌표로 변경
  • 여전히 C를 기준으로 x,y를 표현하고 있다(픽셀 단위가 아니다)
  • 지금은 중앙이 영점인데 이미지의 경우 좌측상단이 (0,0)이 되어야한다
  • 이미지의 중앙을 옮기자! image coordinate 중심점을 중앙에서 좌측 위로 옮긴다.
  • 이미지 좌측 위부터 중앙까지의 거리를 알면 옮길 수 있다
  • 보통 중앙점을 principle point라고 한다
  • 하지만 완벽하게 중앙에 있지는 한다(센서가 조금씩 틀어져있을 수 있어 오차가 존재한다. 이는 카메라 캘리브레이션으로 측정할 수 있다.)
  • 뒤에서 부터 보면 된다

전체

  • K : 카메라 내부 파라미터 의미, intrinsic matrix
  • Rt : 외부 world에 대한 파라미터 의미, extrinsic matrix

0개의 댓글