Calibration

이 섹션에서는 다중 카메라(multi-camera) 칼리브레이션에 대해 설명합니다.

다중 카메라 설정 샘플

Set up cameras in different position

최적의 성능을 위해 카메라는 견고한 구조에 장착되어야 합니다. 중요한 것은 카메라들 사이의 상대적인 위치를 고정시키는 구조의 견고성입니다. 데모 목적으로 삼각대를 사용할 수 있지만 카메라가 칼리브레이션된 위치에서 벗어나면 다시 한번 칼리브레이션이 필요합니다.

이 기사에서는 간단한 두 대의 카메라 설치에 중점을 두고 설명합니다.

FOV가 겹치는 다중 카메라 칼리브레이션 설정

Place calibration object in view of cameras

몇 가지 고려해야 할 사항이 있습니다.

  1. 칼리브레이션 개체의 모든 부분을 모든 카메라에서 볼 수 있어야 합니다.

  2. 칼리브레이션 대상에 대한 양질의 데이터를 얻어야 합니다.

Further considerations on the placement of calibration plate (checkerboard) :color: light

카메라를 서로 180도에 배치하려는 경우, 즉, 카메라가 서로 마주보고 있습니다. calibration object 을 FOV의 중앙에 배치하면 다음과 같은 시나리오가 나타납니다.:

각각의 카메라가 서로를 직접 마주본다면 카메라 각각의 FOV에 칼리브레이션 개체가 없을 수 있습니다.

다행히도 칼리브레이션 대상을 FOV의 한쪽으로 이동하여 각도 제한을 줄일 수 있습니다. 이렇게 하면 칼리브레이션 대상이 두 카메라의 ZY 평면과 정렬되더라도(180도 시나리오) 칼리브레이션 대상을 계속 볼 수 있습니다.

여러 대의 카메라가 서로를 직접 마주할 때 FOV의 칼리브레이션 개체

실제로 체커보드가 카메라 시야에 있어도 감지되지 않을 수 있습니다. 이러한 가파른 각도에서는 체커보드를 덮는 픽셀 수가 적으므로 해상도가 떨어집니다. 따라서 실제로 제한은 < 180도 입니다.

이 개념을 2개 이상의 카메라로 확장할 수 있습니다. 다음 사용 사례를 고려하십시오.

  • 3대의 카메라

  • 서로 120도 각도

  • 수직으로 장착(YZ-평면 공유)

yz-평면을 공유하도록 3개의 카메라를 설치합니다. 카메라가 yz-평면을 공유할 때 캡처된 개체 시각화

이 경우 체커보드에는 칼리브레이션을 수행할 수 있는 각도가 있습니다.

이제 더 큰 수평 FOV를 갖기 위해 모든 카메라를 수평으로 기울인다고 가정해 보겠습니다.

  • 3대의 카메라

  • 서로 120도 각도

  • 수평으로 장착(XZ 평면 공유)

XZ-평면을 공유하기 위해 장착된 3개의 카메라 카메라가 xz 평면을 공유할 때 캡처된 개체 시각화

FOV 비율은 칼리브레이션 대상을 공통 평면에 더 가깝게 이동하도록 합니다. 따라서 카메라와 칼리브레이션 대상 사이의 각도가 더 가파르게 됩니다. 체커보드의 해상도가 너무 낮아 칼리브레이션을 수행할 수 없거나 포인트 클라우드 품질이 충분하지 않은 경우 다음으로 전환합니다. Multi-step calibration.

Calibration object must be visible in overlapping FOV

현재 Zivid는 칼리브레이션 플레이트를 사용합니다. Zivid WebShop 에서 구입할 수 있는 체커보드를 사용하시거나 출력해서 사용하십시오(참조 Calibration Object). 이 개체는 한 쪽에서만 볼 수 있으므로 How to Optimize the Placement of the Calibration Object 에서 다루는 제한 사항이 적용됩니다.

We must get good quality data of the calibration object

좋은 포인트 클라우드를 캡처하려면 먼저 환경을 제어해야 합니다. 가장 중요한 두 가지 고려 사항은 다음과 같습니다.

  1. 카메라의 최적 범위에 칼리브레이션 대상을 두십시오(참조 Working Distance and Camera Positioning).

  2. 주변의 조명을 제한합니다(참조 Dealing with Strong Ambient Light ).

How To Get Good Quality Data On Zivid Calibration Object 을 확인하십시오.

Execute calibration

칼리브레이션 자체에는 단순히 칼리브레이션 소프트웨어 실행이 포함됩니다.

다중 카메라 칼리브레이션을 실행하기 전에 카메라를 Warm-up 하고 Infield Correction 을 실행하는 것이 좋습니다. 온도 의존적 성능 요인의 영향을 더욱 줄이려면 Thermal Stabilization 을 활성화하세요.

  1. 모든 카메라로 칼리브레이션 대상의 포인트 클라우드를 캡처합니다.

  2. 칼리브레이션을 수행합니다.

  3. 변환 행렬을 출력합니다.

이 모든 내용은 Multi-camera calibration programming tutorial 에 자세히 설명되어 있는 Multi-camera calibration sample application 에서 다룹니다.

이제 learn how to utilize the multi-camera calibration output to stitch the point clouds 을 확인하십시오. 또는 learn about the theory behind multi-camera calibration 에 대해 확인하십시오.