그래서 MRI 이미지 더미에 CT 이미지 스택을 등록하려고하면 itk-snap에서이 변환 행렬을 얻습니다.통찰력 itk 이미지 변환 행렬을 matlab의 imwarp에서 사용되는 형식으로 변환하는 방법
T =
2.0523 -0.0277 0.1518 0
0..0405 0.3059 0
-0.1249 -0.2292 1.5095 0
270.7916 280.5018 148.7597 1.0000
는 지금이
Tform = affine3d(T);
CT_stack_warp= imwarp(CT_stack,Rmoving,Tform,'OutputView',Rfixed);
같은 매트랩 imwarp 사용 등록, 무언가를 수행 할 그러나 문제는 당신이 matlab에에게 픽셀 크기와 슬라이스 두께의 정보를 공급하면, 당신이없는 돈이다 T 매트릭스에 명시된대로 비율을 조정하거나 번역해야합니다. 내 질문은 원본 T를 Matlab에서 사용해야하는 T로 변환하는 방법입니다. 특성을 가진 당신이 정보를 필요로하는 경우에
,
Rmoving =
imref3d : 속성
XWorldLimits: [0.2441 250.2441]
YWorldLimits: [0.2441 250.2441]
ZWorldLimits: [0.5000 185.5000]
ImageSize: [512 512 185]
PixelExtentInWorldX: 0.4883
PixelExtentInWorldY: 0.4883
PixelExtentInWorldZ: 1
ImageExtentInWorldX: 250
ImageExtentInWorldY: 250
ImageExtentInWorldZ: 185
XIntrinsicLimits: [0.5000 512.5000]
YIntrinsicLimits: [0.5000 512.5000]
ZIntrinsicLimits: [0.5000 185.5000]
Rfixed =
imref3d :
XWorldLimits: [0.4063 260.4063]
YWorldLimits: [0.4063 260.4063]
ZWorldLimits: [0.7500 192.7500]
ImageSize: [320 320 128]
PixelExtentInWorldX: 0.8125
PixelExtentInWorldY: 0.8125
PixelExtentInWorldZ: 1.5000
ImageExtentInWorldX: 260
ImageExtentInWorldY: 260
ImageExtentInWorldZ: 192
XIntrinsicLimits: [0.5000 320.5000]
YIntrinsicLimits: [0.5000 320.5000]
ZIntrinsicLimits: [0.5000 128.5000]
감사합니다!
MATLAB이 처리 할 수없는 'T' 매트릭스의 문제점은 무엇입니까? 귀하의 질문에 명확하지 않습니다. – Adriaan
원본 T 행렬의 번역 값을 보면, 즉. 270, 280, Matlab은 이미지 공간에서 이미지를 처리하므로 Matlab에서 이미지를 많이 옮겨야합니다. 누군가가 다른 좌표 시스템이나 itk 및 matlab에 사용되는 파이프 라인에 익숙한 있는지 궁금합니다. –