GetSize()
方法可用于获取SimpleITK
对象的三个维度大小
GetArrayFromImage()
可用于将SimpleITK对象转换为ndarray
测试用例如下图,大小为:矢状面(512)*冠状面(372)*横断面(50)
下载链接:https://www.jianguoyun.com/p/Dcwwx1wQ45bOBxig29EEIAA
import SimpleITK as sitk
path = 'sample.nrrd'
image = sitk.ReadImage(path)
shape_img = image.GetSize()
print(f'shape of image: {shape_img}')
# convert to ndarry
data = sitk.GetArrayFromImage(image)
shape_data = data.shape
print(f'shape of data: {shape_data}')
输出:
shape of image: (512, 372, 50)
shape of data: (50, 372, 512)
在SimpleITK
中,各术语对应如下:
- Width: 宽度,矢状面(Sagittal)
- Height: 高度,冠状面(Coronal)
- Depth: 深度, 横断面(Axial)
使用GetSize()
的输出为:(矢状面Width, 冠状面Height, 横断面Depth)
,也即原始SimpleITK
数据的存储形式
使用GetArrayFromImage()
方法后,X轴与Z轴发生了对调,输出形状为:(横断面Depth, 冠状面Height, 矢状面Width)