카메라 렌즈 교정 - Helsparrow/OpenpnpDocs_KR GitHub Wiki
카메라 렌즈 보정을 통해 OpenPnP는 사용 중인 카메라 렌즈의 파라미터에 대해 학습한 다음 왜곡 제거 알고리즘을 적용하여 렌즈로 인한 이미지 왜곡을 제거할 수 있습니다. 이것은 어안 렌즈에 특히 유용합니다. 직선이 일반적으로 렌즈에 의해 구부러질 때 직선을 똑바르게 보이도록 만들 수 있기 때문입니다.
보정 프로세스는 다양한 위치와 방향에서 카메라에 알려진 패턴을 보여주는 것으로 구성됩니다. 설정된 수의 이미지가 패턴에서 캡처된 다음 OpenCV가 렌즈 매개변수를 계산하는 데 사용됩니다.
카메라 렌즈를 보정하려면:
-
http://nerian.com/support/resources/patterns/에서 패턴을 다운로드하고 인쇄합니다. 패턴을 인쇄할 때 카메라의 전체 시야를 차지하지만 패턴을 약간 회전할 수 있는 충분한 공간이 있도록 크기를 조정합니다. (다운로드 페이지에 패턴을 스케일링하지 말라는 경고에 대해 걱정하지 마십시오. 왜곡 제거에만 사용합니다. 카메라 스케일 설정은 다른 곳에서 수행됩니다)
-
인쇄된 패턴을 마분지나 뻣뻣한 마분지에 붙입니다. 캘리브레이션 프로세스 동안 상대적으로 평평한 상태를 유지해야 하며 이리저리 움직여야 합니다.
-
"Start Lens Calibration" 버튼을 클릭하여 보정 프로세스를 시작하고 화면의 지시를 따릅니다. 카드를 움직이면 카메라가 패턴을 인식하는 것을 볼 수 있습니다. 750밀리초마다 샘플을 채취하고 화면이 깜박입니다.
보정은 패턴이 다양한 방향과 위치에서 캡처될 때 가장 잘 작동합니다. 카드를 이리저리 움직여야 합니다. 카드를 돌리고, 카메라를 향하거나 카메라 반대 방향으로 기울이고, 카메라 시야 내에서 카드를 이동하는 등의 작업을 수행합니다.
- 프로세스가 완료되면 OpenPnP는 왜곡 제거 기능을 활성화하고 모든 것이 잘 진행되면 이제 카메라 뷰가 왜곡되지 않은 것처럼 보일 것입니다. 보정 이전 및 이후 결과를 비교하려면 "Apply Calibration?" 체크박스를 토글하십시오.
수행 중인 프로세스에 대한 비디오는 https://www.youtube.com/watch?v=LNa2LNSpa68에서 볼 수 있습니다.
참고 문헌: http://docs.opencv.org/2.4/doc/tutorials/calib3d/camera_calibration/camera_calibration.html http://opencv-java-tutorials.readthedocs.org/en/latest/09-camera-calibration.html https://github.com/openpnp/openpnp/issues/226