[Camera-LiDAR Calibration] Calibration Pattern

최재혁·2022년 2월 4일
0

calibration

목록 보기
3/3

Calibration

Calibration결과로 Intrinsic(내부) parameter, Extrinsic(외부) parameter 값을 알 수 있다. 이 값들을 통해 영상에서의 구조를 예측 할 수 있으며 lens 외곡을 보정할 수 있다.
CV 설정의 성공을 위해 중요하며 calibration을 위한 pattern은 다양하다 이번 포스팅은 다양한 calibration pattern의 종류와 이점을 작성하겠다.

Pattern Size

calibration plate를 선택할 때 중요한 사항중 하나는 물리적 size이다.
이것은 카메라가 특정 거리에 초점을 맞춰 보정을 해야하기 때문이다. 이는 결국 최종 적용하는 FOV와 관련이 있다. 그렇기 때문에 초점 거리를 고정 하지 않아 이전의 보정이 무효화 되는것을 방지해야 한다.(초점 거리 고정!) 카메라 영상에서 전면 평행으로 볼 경우 전체 면적의 약 절반을 커버하는 것이 바람직하다고 한다.

Checker Board pattern


보편적으로 사용되는 패턴 디자인
corner detect algorithm으로 매우 높은 정확도로 코너 위치 결정
코너는 원근법 변환, 렌즈 왜곡 시 편향되지 않기 때문이다
검출 후 서브픽셀의 refinement를 수행하여 saddle point를 찾을 수 있다.
rotate-invariant를 갖기 위해선 row x col이 각 홀수 x 짝수(짝수 x 홀수 도 가능)을 가져야한다. monocular camera에서는 문제가 되지 않지만 stereo camera가 동일한 포인트를 식별하는 경우 모호성이 존재하게 되면 문제가 발생한다.

또한 영상 가장자리에서 정보를 얻는것이 어렵다.

Charuco Board pattern


기존 chessboard pattern에 ArUco 를 더하여 만든 pattern.
모든 light checker field가 고유하게 aruco marker로 코딩되고 식별이 가능하기 때문에 부분적으로 가려져도 가능하다.
chess board coner 위치를 interplate하는데 사용 되고 코너는 체스판에 속하기 때문에 서브픽셀 정확도 높다 (위의 checker board처럼 saddle point 찾기 가능).
코너와 가장자리에서 정보를 수집이 가능하여 강력한 렌즈 왜곡 변수를 얻을 수 있다.

OpenCV 3.0.0 이후의 라이브러리를 통해 calibration을 진행할 수 있다.
https://docs.opencv.org/3.4/df/d4a/tutorial_charuco_detection.html

Circle grid pattern


blob detect algorithm
-- 수정 --

profile
Autonomous driving vision

0개의 댓글