Orthogonal Calibrator

1 개요

캘리브레이션 계산은Camera Calibration과 동일합니다. 차이점은 왜곡 보정 시 정면 방향으로 보정을 하는 알고리즘입니다.

2 알고리즘 상세 설명

Calibration Image Camera Calibration Result Orthogonal Calibration Result
Calibration Image Camera Calibration Result Orthogonal Calibration Result
Fig. Orthogonal Calibrator

Camera Calibration의 경우 해당 영역에 대해서만 보정이 진행된 모습이고, Orthogonal Calibration의 경우 카메라 방향이 정면으로 처리된 것을 확인할 수 있습니다

Camera Calibration 참고

3 파라미터 설정 및 사용 방법

Camera Calibration 참고

4 예제 코드

COrthogonalCalibrator calibrator;
//////////////////////////////////
// 공통 파라미터 설정
//////////////////////////////////

//////////////////////////////////
// 추가 옵션 설정
//////////////////////////////////

// 캘리브레이션 계산합니다.
calibrator.Calibrate();

// 카메라 파라미터를 가져옵니다.
CCameraCalibrator::SIntrinsicParameters cameraParams;
calibrator.GetResultIntrinsicParameters(cameraParams);

// 왜곡을 보정합니다.
calibrator.Execute();
COrthogonalCalibrator calibrator = new COrthogonalCalibrator();
//////////////////////////////////
// 공통 파라미터 설정
//////////////////////////////////

//////////////////////////////////
// 추가 옵션 설정
//////////////////////////////////

// 캘리브레이션 계산합니다.
calibrator.Calibrate();

// 카메라 파라미터를 가져옵니다.
CCameraCalibrator.SIntrinsicParameters cameraParams = calibrator.GetResultIntrinsicParameters();

// 왜곡을 보정합니다.
calibrator.Execute();
calibrator = COrthogonalCalibrator()
"""
// 공통 파라미터 설정
"""

"""
// 추가 옵션 설정
"""

# 캘리브레이션 계산합니다.
calibrator.Calibrate()

# 카메라 파라미터를 가져옵니다.
cameraParams = calibrator.GetResultIntrinsicParameters()

# 왜곡을 보정합니다.
calibrator.Execute()

5 관련 알고리즘

CCameraCalibrator, CChessBoardDetector, CGridOfDotsDetector, CGridOfCrossDetector, CGridOfRectangleDetector