728x90

📷 카메라 캘리브레이션이란?

카메라 캘리브레이션(Camera Calibration)은 카메라의 광학적 특성을 파악하고 보정하는 과정입니다. 쉽게 말해, 카메라가 실제 세계를 어떻게 "잘못" 인식하는지 알아내고, 이를 보정하는 과정이라고 생각하면 됩니다.

 

📌 왜 캘리브레이션이 필요할까요?

1. 왜곡 보정(Distortion Correction)

카메라 렌즈는 완벽한 평면이 아니라 곡선이 있기 때문에 촬영한 영상이 왜곡될 수 있습니다. 특히 광각 렌즈는 직선이 휘어 보이는 **배럴 왜곡(Barrel Distortion)**이 심하게 발생합니다. 캘리브레이션을 통해 이러한 왜곡을 보정할 수 있습니다.

방사 왜곡(Radial Distortion): 직선이 휘어지는 현상

  • 배럴 왜곡(Barrel Distortion): 원근감이 과장되어 중앙이 볼록해 보임
  • 핀쿠션 왜곡(Pincushion Distortion): 중앙이 움푹 들어간 형태
  •  

접선 왜곡(Tangential Distortion): 렌즈가 센서와 완벽하게 정렬되지 않아서 발생



2. 정확한 3D 측정(3D Reconstruction & Measurement)

컴퓨터 비전이나 로봇이 현실 세계에서 정확한 거리나 크기를 측정하려면, 카메라가 실제 세상을 어떻게 보는지 알아야 합니다. 캘리브레이션을 수행하면 카메라의 초점 거리(focal length), 광축(optical axis), 왜곡 계수(distortion coefficients) 등을 계산할 수 있습니다.

 

카메라 캘리브레이션 과정

📌 (1) 체커보드 패턴 촬영

체커보드(Checkerboard) 또는 원형 패턴(Circle Grid)을 여러 각도에서 촬영하여 이미지에서 특징점을 검출합니다.

📌 (2) 내부 파라미터(Intrinsic) 계산

  • 초점 거리(fx, fy)
  • 광학 중심(cx, cy)
  • 렌즈 왜곡 계수(k1, k2, p1, p2, k3)

📌 (3) 외부 파라미터(Extrinsic) 계산

  • 회전(Rotation, R)
  • 이동(Translation, T)

📌 (4) 왜곡 보정(Distortion Correction)

  • OpenCV의 cv2.undistort() 함수로 이미지 왜곡을 제거할 수 있음.

 

728x90

+ Recent posts