라이다-카메라 보정이란?
라이다-카메라 보정은 라이다 출력값과 카메라 출력값을 함께 융합하기 위해 3차원 라이다 점들과 2차원 카메라 데이터 간의 대응점을 설정합니다.
라이다 센서와 카메라는 자율주행, 로보틱스, 내비게이션과 같은 응용 분야에서 3차원 장면을 복원하는 데 널리 사용됩니다. 라이다 센서는 환경의 3차원 구조 정보를 캡처하는 반면 카메라는 색, 텍스처, 모양 정보를 캡처합니다.
라이다 센서와 카메라는 각각 자체 좌표계를 기준으로 데이터를 캡처합니다. 라이다-카메라 보정은 라이다 센서의 데이터와 카메라의 데이터를 동일한 좌표계로 변환하는 작업으로 구성됩니다. 이를 통해 객체 검출과 같은 워크플로에서 두 센서의 데이터를 융합할 수 있습니다. 다음 그림은 융합된 데이터를 보여줍니다.

라이다-카메라 보정은 내부 보정과 외부 보정으로 구성됩니다.
내부 보정 — 센서의 내부 파라미터를 추정합니다.
라이다 내부 파라미터 — 라이다 센서의 내부 파라미터는 제조업체에서 사전에 보정합니다.
카메라 내부 파라미터 — 초점 거리, 렌즈 왜곡, 왜도와 같은 카메라 내부 파라미터는 카메라 보정기 앱을 사용하여 대화형 방식으로 추정합니다. 또는
estimateCameraParameters함수를 사용하여 카메라를 보정할 수도 있습니다. 자세한 내용은 단일 카메라 보정 예제를 참조하십시오.
외부 보정 — 라이다 센서 프레임과 카메라 프레임 간의 변환을 대화형 방식으로 추정하려면 라이다 카메라 보정기 앱을 사용하십시오. 또는
estimateLidarCameraTransform함수를 사용하여 보정할 수도 있습니다.
라이다와 카메라의 외부 보정
라이다-카메라 보정은 이미 알고 있는 카메라 내부 파라미터가 주어진 상태에서 이들 센서의 외부 보정을 수행하는 것을 의미합니다. 이는 두 센서의 좌표 프레임 사이의 강체 변환을 추정하는 과정입니다. 이 과정에서는 체커보드, ChArUco 또는 AprilGrid 패턴을 가진 보정 보드와 같은 표준 보정 객체를 사용합니다.
다음 다이어그램은 체커보드를 사용하여 라이다 센서와 카메라 간의 외부 보정을 수행하는 과정을 보여줍니다.
라이다-카메라 보정을 대화형 방식으로 수행하려면 라이다 카메라 보정기 앱을 사용하십시오. 또는, 다음과 같은 프로그래밍 방식 워크플로를 따르십시오.
카메라 데이터와 라이다 데이터 모두에서 보정 보드 코너를 검출합니다.
카메라 코너 — 영상에서 2차원 코너를 검출하려면
detectCheckerboardPoints,detectCharucoBoardPoints,detectAprilGridPoints와 같은 적절한 영상 키포인트 검출기를 사용하십시오. 그런 다음,estimateBoardCornersCamera함수를 사용하여 카메라 프레임에서 3차원 코너를 추정합니다.라이다 코너 — 라이다 프레임에서 보정 보드 코너를 추정하려면
estimateBoardCornersLidar함수를 사용하십시오.
보정 보드 코너를 사용하여 두 센서 간의 강체 변환 행렬을 추정합니다. 이 변환은 회전 R과 평행 이동 t로 구성됩니다.
estimateLidarCameraTransform함수를 사용하여 강체 변환 행렬을 추정할 수 있습니다. 이 함수는 이 변환을rigidtform3d객체로 반환합니다.
변환 행렬을 사용하여 다음을 수행할 수 있습니다.
오차를 계산하여 보정의 정확도를 평가합니다. 이 작업은 라이다 카메라 보정기 앱을 사용하여 대화형 방식으로 수행하거나
estimateLidarCameraTransform함수를 사용하여 프로그래밍 방식으로 수행할 수 있습니다.
다음 그림에서와 같이
projectLidarPointsOnImage함수를 사용하여 영상에 라이다 점들을 투영합니다.
fuseCameraToLidar함수를 사용하여 라이다 출력값과 카메라 출력값을 융합합니다.
bboxCameraToLidar함수를 사용하여 대응하는 영상의 2차원 경계 상자를 기반으로 포인트 클라우드에서 3차원 경계 상자를 추정합니다. 자세한 내용은 Detect Vehicles in Lidar Using Image Labels 항목을 참조하십시오. 또한bboxLidarToCamera함수를 사용하여 대응하는 라이다 프레임의 3차원 경계 상자를 기반으로 카메라 프레임에서 2차원 경계 상자를 추정할 수 있습니다.
참고 문헌
[1] Zhou, Lipu, Zimo Li, and Michael Kaess. “Automatic Extrinsic Calibration of a Camera and a 3D LiDAR Using Line and Plane Correspondences.” In 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), 5562–69. Madrid: IEEE, 2018. https://doi.org/10.1109/IROS.2018.8593660.
참고 항목
estimateBoardCornersLidar | estimateBoardCornersCamera | estimateLidarCameraTransform | projectLidarPointsOnImage | fuseCameraToLidar | bboxCameraToLidar | bboxLidarToCamera