728x90
Camera Intrinsic Matrix?
Camera Intrinsic Matrix는 카메라의 내부 매개변수를 나타내는 행렬로,
컴퓨터 비전에서 카메라의 기하학적 및 광학적 특성을 정의하는 데 사용됩니다.
이 행렬은 카메라가 3차원 세계를 2차원 이미지로 어떻게 투영하는지에 대한 정보를 제공합니다.
Depth Camera의 Camera Intrinsic Matrix 는 다음과 같은 형태를 가집니다.
여기서,
- ( f_x, f_y ): 카메라의 초점 거리(focal length). f_x 와 f_y는 각각 x축과 y축 방향의 카메라 렌즈의 초점 거리를 나타냅니다. 이 값들은 픽셀 단위로 표현되며, 카메라 렌즈의 확대 능력을 나타냅니다.
- ( c_x, c_y ): 주점(principal point). 이는 카메라 이미지의 중심점(주로 이미지의 중앙)을 나타내는 좌표입니다.
Camera Intrinsic Matrix의 사용
Camera Intrinsic Matrix는 다양한 컴퓨터 비전 및 이미지 처리 작업에서 중요한 역할을 합니다.
- 3D-2D 좌표 변환: 3차원 공간의 포인트를 2차원 이미지 평면으로 투영하는 데 사용됩니다. 이를 통해 실세계의 3차원 좌표를 2차원 이미지 상의 좌표로 변환할 수 있습니다.
- 카메라 교정(Calibration): 카메라 교정 과정에서 Intrinsic Matrix를 추정합니다. 이를 통해 카메라의 왜곡(distortion)을 보정하고 보다 정확한 이미지를 얻을 수 있습니다.
- 스테레오 비전(Stereo Vision): 두 대 이상의 카메라를 사용하여 깊이 정보를 추출할 때, 각 카메라의 Intrinsic Matrix를 사용하여 이미지 간의 대응점을 찾고 3D 정보를 계산합니다.
Python3 - Intel RealSense Camera Intrinsic Matrix
다음과 같은 Python 코드로 Intel realsense camera에서 Camera Intrinsic Matrix를 얻을 수 있습니다.
실제로 D435를 연결하고 값을 얻어보면 다음과 같은 값들이 나옵니다.
Brown-Conrady 모델은 실제로 왜곡 계수를 설명하는 데 사용되는 모델 중 하나입니다.
이 모델은 렌즈 왜곡을 보정하기 위해 사용되며,
주로 Radial 왜곡과 Tangential 왜곡을 설명합니다.
왜곡 계수가 다섯 개인 이유는 다음과 같습니다:
- Radial 왜곡 계수: k1, k2, k3, Radial 왜곡은 렌즈의 광학적 특성으로 인해 발생하며, 이미지의 중심에서 멀어질수록 심해지는 경향이 있습니다. 첫 두 계수(k1, k2)가 주로 사용되며, 세 번째 계수(k3)는 보다 높은 수준의 왜곡을 보정하는 데 사용됩니다.
- Tangential 왜곡 계수: p1, p2, Tangential 왜곡은 카메라 렌즈와 이미지 센서 사이의 정렬이 완벽하지 않을 때 발생합니다. 이로 인해 이미지가 x축이나 y축을 따라 약간 기울어 보일 수 있습니다.
이러한 왜곡 계수들은 카메라 렌즈의 물리적, 광학적 특성을 수학적으로 모델링하여
이미지의 왜곡을 최소화하는 데 사용됩니다.
왜곡 보정은 컴퓨터 비전과 이미지 처리에서 더 정확한 이미지 분석과 처리를 가능하게 합니다.
기본적으로 왜곡 계수는 전부 0이고,
Cx, Cy가 정확히 640과 480의 중심이 아니라는 것을 확인할 수 있었습니다.
728x90
반응형