admin 管理员组文章数量: 1184232
python怎么保存为nii文件
NIFTI格式图像
NIFTI(Neuroimaging Informatics Technology Initiative)格式图像是由一个包含头文件元数据和一个包含二进制的图像资料组成的文件。
读取NIFTI格式图像可以通过软件ITK-SNAP打开
可以看到:ITK-SNAP获得了分别来自三个角度的视图(水平面、矢状面、冠状面)
使用Python读取
2.1 simpleITK
import SimpleITK as sitk
from matplotlib import pyplot as plt
def showNii(img):
for i in range(img.shape[0]):
plt.imshow(img[i, :, :], cmap='gray')
plt.show()
itk_img = sitk.ReadImage('./new_coronary.nii.gz')
img = sitk.GetArrayFromImage(itk_img)
print(img.shape) # (155, 240, 240) 表示各个维度的切片数量
showNii(img)
可以看到文件中包含的图像信息
2.2 Nibabel
import matplotlib
matplotlib.use('TkAgg')
from matplotlib import pylab as plt
import nibabel as nib
from nibabel import nifti1
from nibabel.viewers import OrthoSlicer3D
example_filename = './Brats18_2013_2_1_flair.nii.gz'
img = nib.load(example_filename)
print (img)
print (img.header['db_name']) # 输出头信息
# 由文件本身维度确定,可能是3维,也可能是4维
width,height,queue=img.dataobj.shape
OrthoSlicer3D(img.dataobj).show()
num = 1
for i in range(0,queue,10):
img_arr = img.dataobj[:,:,i]
plt.subplot(5,4,num)
plt.imshow(img_arr,cmap='gray')
num +=1
plt.show()
也可看到文件中的图像
操作与ITK-SNAP软件类似
本文标签: python怎么保存为nii文件
版权声明:本文标题:python怎么保存为nii文件 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.roclinux.cn/b/1693754513a240886.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论