Iron View (1) - Camera Calibration

한준호·2023년 1월 23일
0
post-thumbnail

카메라 캘리브레이션(Camera Calibration)이란

실제 눈으로 보는 3차원 세상 -> '카메라' -> 2차원 이미지

3차원의 점들이 이미지 상에서 어디에 맺히는지 결정하는 요인

영상을 찍을 당시의 카메라의 위치 및 방향

카메라 내부의 기구적인 부분

사용된 렌즈
렌즈와 이미지 센서와의 거리
렌즈와 이미지 센서가 이루는 각

3차원 점들이 영상에 투영된 위치를 구하거나 역으로 영상좌표로부터 3차원 공간좌표를 복원할 때에는 이러한 내부 요인을 제거해야하만 정확한 계산이 가능한다. 따라서 이러한 내부요인의 파라미터 값을 구하는 과정을 카메라 캘리브레이션이라 부른다.

투영(Projection)

카메라 영상은 3차원 공간상의 점들을 2차원 이미지 평면에 투사(Perspective Projection)함으로써 얻어집니다.

Pin-hole Camera Model

실제: 상하좌우 반전

편의를 위한 좌표계 일치 = 실제

이미지센서는 실제로는 렌즈 뒤쪽에 있지만, 기하학적 연산을 단순화하기 위해 위 그림처럼 앞쪽에 위치시키는 것이 일반적이다

Ideal Perspective Projection

핀홀(Pinhole) 카메라 모델에서 변환 관계

+) 현대의 카메라의 초점거리는 fx=fy로 계산해도 무방하다
+) 현대의 카메라의 비대칭계수 skew=0으로 계산해도 무방하다

카메라 외부 파라미터 (Extrinsic Parameter)

카메라의 설치 높이, 방향(팬, 틸트) 등 카메라와 외부 공간과의 기하학적 관계에 관련된 파라미터이다

카메라 내부 파라미터 (Intrinsic Parameter)

카메라의 초점 거리, aspect ratio, 중심점 등 카메라 자체의 내부적인 파라미터를 의미한다.

렌즈 왜곡 (Lens Distortion)

Zhang's Camera Calibration

Perspective Projection

Principal Point offset

3차원의 점을 2차원의 이미지 Plane으로 투영
Calibration Matrix

Zhang's Method: 2차원의 체커보드 판 위에 점을 2차원의 Plane으로 투영
-> Calibration Matrix

평면 위에 점을 투영하기 때문에 z=0이 되기 때문에 r1과 r2를 구하고 각 회전축은 수직인 성질을 이용하여 r1과 r2의 외적은 r3이다

r1r2=r3r1 * r2 = r3

위 식에서 구한 H = [h1 h2 h3] 라 할 때,

여기서 λ는 Scale (스케일에 따라 위 식이 하나로 정의 안되기 때문에 λ는 스칼라)

위 식에서

h1=λAr1h_1 = λ*A*r1
-> r1=(1/λ)A1h1r_1 = (1/λ)*A^{-1}*h_1
-> r1T=(1/λ)h1TATr^T_1 = (1/λ)*h^{T}_1*A^{-T}

h2=λAr2h_2 = λ*A*r2
-> r2=(1/λ)A1h2r_2 = (1/λ)*A^{-1}*h_2
-> r2T=(1/λ)h2TATr^T_2 = (1/λ)*h^{T}_2 * A^{-T}

h3=λAth_3 = λ*A*t

회전축은 서로 수직이고 크기는 1로 같기때문에

r1r2=r1Tr2=0r_1•r_2 = r^{T}_1*r_2 = 0
r12=r22=r1Tr1=r2Tr2||r_1||^2 = ||r_2||^2 = r^T_1*r_1 = r^T_2*r_2

를 이용하면

위 수식을 다시 표현하면

h1TKTK1h2=0h^T_1*K^{-T}*K^{-1}*h_2 = 0
h1TKTK1h1=h2TKTK1h2h^T_1*K^{-T}*K^{-1}*h_1 = h^T_2*K^{-T}*K^{-1}*h_2

K는 카메라의 내부 파라미터로, 즉 Intrinsic Parameter 이므로 K와 K의 역행렬은 다음과 같다

추가적으로, 만약 비대칭계수 skew가 0이 아니라면 K의 역행렬은 다음과 같이 표현 할 수 있다

행렬 KTK1K^{-T}*K^{-1} 을 A로 표현하면

행렬 A를 구했다고 하면 A로부터

인 식에 의해서 카메라 내부 변수 값을 구할 수 있다.

r1, r2의 크기가 1이고, r1, r2, r3가 회전축으로 각각 직교하기 때문에 r3=r1Xr2r_3 = r_1 X r_2 이다

여기까지가 카메라 렌즈 왜곡을 제외한 카메라 Calibration 식이다.

Stereo Camera Calibration

참고링크
https://m.blog.naver.com/jang_hwan_im/221223291713

0개의 댓글