C-arm intrinsic parameter

EHminShoov2J·2023년 4월 19일
0

Spine Navi

목록 보기
2/4

2D 이미지를 바탕으로 3D좌표를 계산하기 위해서는 기본적으로 camera의 intrinsic parameter를 알아야 한다. 추공간 확장술에 사용되고 있는 C-arm은 아래 이미지의 C자 모양의 거대한 기구로, X-ray영상을 촬영할 수 있다. C-arm의 intrinsic parameter를 구하는 것이 본 포스팅의 목적이다.

1. 기본 개념

Camera Calibration이란 3D point를 2D이미지 포인트에 정확하게 매핑하는데 필요한 Intrinsic parameter( focal length, principal point, lens distortion coefficients)와, Extrinsic parameter( position ,orientation)를 결정하는 Process 이다.

특정 카메라에 대해서 Camera Calibration이 끝났다면, Intrinsic parameter와 Extrinsic parameter를 이용하여 2D 이미지의 특정 좌표를 3차원 공간으로 mapping 할 수 있다.

가상현실에서는 주로 카메라 영상(2D pixel 좌표)으로 받은 정보들을 기반으로 3차원 공간에 우리가 원하는 객체를 띄워야 하며, 이를 위해서 Camera Calibration은 필수 적이다.

Camera Calibration은 보통 다음과 같은 순서를 가지게 된다.

  1. Capturing calibration images : Calibration을 진행할 카메라를 이용하여 특정 패턴이 존재하는 이미지를 촬용한다.
  2. Extracting image features: 패턴의 특징을 추출.(이때 충분한 수의 패턴이 필요하다)
  3. Computing parameters: Intrinsic parameter, Extrinsic parameter 추출

앞서 말했듯 Camera Calibreation은 parameter를 추출해 가는 과정이다. 즉 각각의 우리가 알고 싶은 변수들을 추출해나가는 연립방정식이다. 이러한 연립방정식을 풀기 위해서는 충분한 수의 sample이 제공되어야 하며, 이때 충분한 sample이란 이미지에 존재하는 패턴들의 실제 공간에서의 좌표와, 이에 대응하는 이미지에서의 픽셀좌표쌍이다.

따라서 우리는 실제 공간상에서 패턴으로 사용할 수 있는 물체의 가상 좌표계를 설정하고, 이를 프로그램에 제공하여 calibration을 진행하는 것이다.

2. Camera Calibration

2-1. Data 수집

앞서 Camera Calibration을 위해서는 인식할 수 있는 marker에 대한 실제 공간좌표와, 이미지에서의 픽셀 좌표쌍이 필요하다.

이번 포스팅에서 아래 이미지의 쇠 구슬이 marker가 되어줄 것이다.

이때 쇠 구슬 중심간의 간격은 15.9375mm 이다. 가장 왼쪽 상단의 쇠구슬을 공간 좌표의 (0,0)으로 설정하고, 그림의 방향대로 축을 설정해 준다.

위 그림을 C-arm으로 촬영하면 다음과 같은 이미지를 얻게 된다.

쇠구슬이 달린 판을 고정하고, C-arm을 돌려가면서 여러장의 이미지를 얻어 충분한 데이터를 모은다.

2-2. cv.calibrateCamera

0개의 댓글

관련 채용 정보