我有 nii.gz
文件的数据集,每个文件大约 1G
,包括 4d
张量。据我所知,有两种阅读它们的方法:
img = nib.load('fMRI.nii.gz')
imgarr = np.array(img.dataobj)
或
img = nib.load('fMRI.nii.gz')
imgarr = img.get_data()
问题是读取整个张量很昂贵,而我只需要一个切片。还有其他办法吗?
最佳答案
实际上,您不需要将主图像数据的任何内容加载到内存中。
img = nib.load('fMRI.nii.gz')
# get the first 10 slices
img.slicer[0:10]
#verify selection
img.slicer[0:10].shape
关于python - 交易nii.gz时如何避免大数据问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57341395/