我正在使用 Python 3.7.7。
我正在尝试使用来自 [BraTS 2019 数据集][1] 的 SimplyITK 和 Numpy 加载大量 NIFTI 图像。
这是我用来将图像加载到 numpy 数组中的代码。
import SimpleITK as sitk
def read_nifti_images(images_full_path):
"""
Read nifti files from a gziped file.
Read nifti files from a gziped file using SimpleITK library.
Parameters:
images_full_path (string): Full path to gziped file including file name.
Returns:
SimpleITK.SimpleITK.Image, numpy array: images read as image, images read as numpy array
"""
# Reads images using SimpleITK.
images = sitk.ReadImage(images_full_path)
# Get a numpy array from a SimpleITK Image.
images_array = sitk.GetArrayFromImage(images)
# More info about SimpleITK images: http://simpleitk.github.io/SimpleITK-Notebooks/01_Image_Basics.html
return images, images_array
此代码适用于最小的数据集,但在这里我尝试加载 518 个 nii.gz 文件,每个文件包含 155 个图像。
要运行代码,我在 Windows 7 上使用 PyCharm 最新版本。
如果由于内存限制,所有图像都不能在内存中,你如何训练所有图像?