Использование формата файла HDF5 или Numpy's memmap
- это два варианта, к которым я бы обратился в первую очередь, если вы хотите объединить все свои данные в один файл.Эти опции не загружают все данные в память.
Python имеет пакет h5py для обработки файлов HDF5.У них много функций, и я бы вообще склонялся к этому варианту.Это выглядело бы примерно так:
import h5py
with h5py.File('data.h5') as h5file:
for n, image in enumerate(mri_images):
h5file[f'image{n}'] = image
memmap
работает с бинарными файлами, так что на самом деле не совсем многофункциональный.Это будет выглядеть примерно так:
import numpy as np
bin_file = np.memmap('data.bin', mode='w+', dtype=int, shape=(1000, 256, 256, 156))
for n, image in enumerate(mri_images):
bin_file[n] = image
del bin_file # dumps data to file