vtkImageReslice
는 생각보다 사용하기 까다로운 물건 중 하나다. 일단 vtk/itk의 소스코드가 매우 복잡한데 비해 설명은 매우 부실해서 더욱 그렇다. 그럼에도 불구하고 it works!
라는 이유로 잘못 사용되는 경우도 많은 것 같다.
먼저 vtkImageReslice
의 작동 순서는 다음과 같다.
- 출력 이미지의 Extent/Origin/Spacing을 지정한다.
- 출력 이미지의 각 voxel마다
(x, y, z)
좌표를 계산한다. - 앞의
(x,y,z)
는ResliceAxes
에 의해 먼저 변형되고,ResliceTransfom
에 의해(x', y', z')
로 변형된다.ResliceTransfom
만 있으면 충분할 것 같은데ResliceAxes
는 왜 필요한지 잘 모르겠다. (x', y', z')
를 사용하여 입력 이미지에서 Interpolation등의 방법을 통해 값을 구하고, 이 값을(x, y, z)
의 값으로 정한다.
요약하자면, 여기서 transform의 방향은 출력 에서 입력으로 간다는 것이다.
댓글
댓글 쓰기