3D 월드 좌표를 2D 이미지 좌표로 변환하고 그 반대도 하려면 어떻게 해야 하나요?

Last updated: August 13, 2026

ZED SDK는 정합된 깊이 및 RGB 정보를 제공합니다. 깊이 맵의 좌표 (u,v)에 해당하는 픽셀에는 RGB 이미지의 좌표 (u,v)에 해당하는 픽셀의 깊이 값이 포함됩니다.

ZED SDK는 각 픽셀 (u,v)에 대한 3D 및 RGB 정보를 제공하는 포인트 클라우드도 제공합니다.

이미지 픽셀의 3D 좌표를 구하는 공식은 무엇인가요?

픽셀의 2D 좌표 (u,v)가 주어지면 다음 공식을 사용하여 이미지 프레임 (Z 정방향, X 오른쪽, Y 아래쪽)에서의 3D 좌표 (X,Y,Z)를 계산할 수 있습니다:

Z = 깊이 맵에서 픽셀 (u,v)의 깊이 값
X = (( u - c_x) * Z) / (f_x)
Y = (( v - c_y) * Z) / (f_y)

3D 좌표의 픽셀 좌표를 구하는 공식은 무엇인가요?

이미지 프레임 (Z 정방향, X 오른쪽, Y 아래쪽) 에서의 3D 좌표 (X,Y,Z)가 주어지면 다음 공식을 사용하여 해당 픽셀의 2D 좌표 (u,v)를 계산할 수 있습니다:

u = ( X / Z ) * f_x + c_x 
v = ( Y / Z ) * f_y + c_y

f_x, f_y, c_x, c_y란 무엇인가요?

이는 "핀홀" 카메라 모델을 사용한 카메라 보정 절차를 통해 얻는 카메라 내부 파라미터입니다:

  • (f_x, f_y): 픽셀 단위의 초점 거리
  • (c_x, c_y): 주점의 좌표

이는 ZED SDK의 CameraParameters (C++, Python) 데이터 구조에서 런타임에 사용할 수 있습니다.