1、nii 和 nii.gz 文件
使用nibabel模块,使用 pip install nibabel 安装,读取出来的图像第三个维度在最后边,不知为啥(就是w,h,d),不喜欢这种。所以另外一种办法是 SimpleITK 模块,读取出来的维度是(d, w,h)
例子:
import nibabel as nib
path = ''
image = nib.load(path).dataobj
print(image[:, :, 100].shape)
print(type(image[:, :, 100]))
import SimpleITK as sitk
path = ""
data = sitk.ReadImage(path)
image = sitk.GetArrayFromImage(data)
print(image.shape)
2、dcm文件
使用pydicom模块,使用 pip install pydicom 安装
例子:
import pydicom
path = ''
image = pydicom.read_file(path).pixel_array
print(image.shape)
3、h5 文件
使用h5py模块,使用 pip install h5py 安装
import h5py
path = ''
h5f = h5py.File(path, mode='r')
images = h5f['image']
labels = h5f['label']
print(images.shape, labels.shape)
4、tif 文件
5、nrrd文件
使用 pip install pynrrd 安装
import nrrd
path = ""
image, options = nrrd.read(path)
print(image.shape)
6、mhd文件和raw文件
import SimpleITK as STK
path = ".mhd" # 文件路径是mhd文件路径
data = STK.ReadImage(path)
image = STK.GetArrayFromImage(data) # 获取图像
还没用到tif的文件