python实现批量nii文件转换为png图像
之前介绍过单个nii文件转换成png图像:
https://www.nhooo.com/article/165693.htm
这里介绍将多个nii文件(保存在一个文件夹下)转换成png图像。且图像单个文件夹的名称与nii名字相同。
importnumpyasnp
importos#遍历文件夹
importnibabelasnib#nii格式一般都会用到这个包
importimageio#转换成图像
defnii_to_image(niifile):
filenames=os.listdir(filepath)#读取nii文件夹
slice_trans=[]
forfinfilenames:
#开始读取nii文件
img_path=os.path.join(filepath,f)
img=nib.load(img_path)#读取nii
img_fdata=img.get_fdata()
fname=f.replace('.nii','')#去掉nii的后缀名
img_f_path=os.path.join(imgfile,fname)
#创建nii对应的图像的文件夹
ifnotos.path.exists(img_f_path):
os.mkdir(img_f_path)#新建文件夹
#开始转换为图像
(x,y,z)=img.shape
foriinrange(z):#z是图像的序列
silce=img_fdata[i,:,:]#选择哪个方向的切片都可以
imageio.imwrite(os.path.join(img_f_path,'{}.png'.format(i)),silce)
#保存图像
if__name__=='__main__':
filepath='nii的文件夹'
imgfile='image的文件夹'
nii_to_image(filepath)
代码是我自己写的,用于处理ADNI的nii格式完全有效。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。