본문 바로가기

컴퓨터 프로그래밍

Realsense 카메라를 이용한 Calibration 작업 - 문서내용 정리

반응형

본 문서의 경우 Dynamic Calibration 을 하는것을 도움줄 것으로 예상되어진다. 

 

미리 결론을 말하자면 카메라간 환경 세팅이라기 보단, 한 카메라의 depth값 자체를 보정하는 자료였다. 

일단 문서를 읽고 정리한 내용은 살려놓을 것이다. 

 

Calibration  parameter로 extrinsic 파라미터와 intrinsic 파라미터로 나뉘어져있다. 

먼저 Intrinsic 파라미터로는 다음 3가지가 있다.  각각의 설명은 다음과 같으며, 해당 파라미터는 dynamic 하게 조절하기 힘들다. 

Focal Length: left, right, 와 RGB카메라의 픽셀에서 [Fx, Fy] 로 정의되어짐.

Principal point: 마찬가지로 left, right, RGB카메라의 픽셀에서 [px, py]로 표현됨

Distortion : Brown의 왜곡 모델로 [k1, k2 ,p1, p2 k3]로 표현되어짐.

 

여기서 Focal Legth는 초점거리를 의미하며, 카메라에서 렌즈까지의 거리를 의미한다. 

초점거리 예시

 

Principal point 는 주점 이라고 하며, 카메라의 렌즈 중심의 좌표를 의미한다. 

보통은 영상의 중심과 주점의 중심은 같은 값을 가져야한다. 다른값을 가지면 렌즈와 이미지센서가 수평이 어긋남을 의미한다. 

Distortion은 사전 뜻 그대로 왜곡이며, 아래 그림과 같이 렌즈로 인해 영상 왜곡이 발생하게 된다. 

영상 왜곡현상

이러한 왜곡은 정확한 영상처리 및 분석을 하는데 문제가 발생하므로 보정을 해야함.

보통 내부 보정 알고리즘을 통해 왜곡을 해결한다. 

 

이런 Intrinsic 파라미터의 경우는 dynamic calibration이 되지 않는다. 

 

Dynamic calibration이 가능한 파라미터는 아래의 Extrinsic 파라미터(4가지)들이다. 

1. RotationLeftRight - 3x3의 회전 함수를 사용해 오른쪽 카메라 좌표계에서 왼쪽 카메라 좌표계로 회전.

2. TranslationLeftRight - 3x1 밀리미터 벡터를 사용해 오른쪽 카메라 좌표계에서 왼쪽 카메라 좌표계로 이동.

3. RotationLeftRGB - 3x3의 회전 함수를 사용해 RGB 카메라 좌표계에서 왼쪽 카메라 좌표계로 회전.

4. TranslationLeftRGB - 3x1 밀리미터 벡터를 사용해 RGB 카메라 좌표계에서 왼쪽 카메라 좌표계로 이동.

 

또한 Intel Realsense 에서는 2가지 타입의 Dynamic Calibration 을 제공함.

1. Rectification Calibration: 간략하게 depth image에서 구멍이 뚫리는 현상을 줄여주고 교정시켜줌

2. Depth scale Calibration: depth frame을 나란히 만들어주는 역할.

 

여기까지 읽어보니... 일단 리얼센스에서 제공하는 Dynamic Calbration은 Depth Data에 대한 보정을 해주는 역할이였다. 

따라서 해당문서는.. 현 상황과 맞지 않기때문에 

다른 문서로 넘어가려고 합니다. 

 

반응형