【问题标题】:ImageFileError: Cannot work out file type of ".nii"ImageFileError:无法计算出“.nii”的文件类型
【发布时间】:2020-03-03 05:04:22
【问题描述】:
当我尝试将 .NII 文件加载为类似 4D Niimg 的对象时(我已尝试过 nilearn 和 nibabel) ,
我收到以下错误
错误:ImageFileError:无法计算出文件类型
"/Users/audreyphan/Documents/Spring2020/DESPO/res4d/1/res4d_anat.nii"
这是我的代码:
ds_name = '/Users/audreyphan/Documents/Spring2020/DESPO/res4d/1/res4d_anat.nii'
block = nib.load(ds_name) #Nibabel
block = image.load_img(ds_name) #Nilearn
两次尝试都会导致相同的错误。
我不确定导致此错误发生的原因是什么?
谢谢!
【问题讨论】:
标签:
filenames
nibabel
nilearn
【解决方案1】:
库似乎无法从您的文件中提取文件类型。
所以首先我们必须确保文件没有损坏。那么,能否用ITK-SNAP(http://www.itksnap.org)等工具正确加载数据?
如果是,您可以尝试在nibabel包中使用具体的loader函数自行定义文件类型。例如。您可以尝试以下每个加载器功能:
img_nifti1 = nib.Nifti1Image.from_filename(file)
img_nifti2 = nib.Nifti2Image.from_filename(file)
【解决方案2】:
奇怪的是,当您尝试加载的文件的访问权限设置不正确时,也会发生此错误。尝试使用 chmod 适当地更改这些访问权限,然后加载 *.nii 文件。