Python处理数据集内存溢出

想把mirFlicker25数据集处理为mat,编写代码如下,但会导致内存溢出。请问有什么解决办法吗?

from skimage.io import imread, imshow
import scipy.io as scio
from skimage.transform import resize
from os.path import join
from os import listdir
import numpy as np
from tqdm import tqdm

IMG_P = r'D:\mirflickr25k\mirflickr'

# image 文件列表
key_img = lambda s: int(s.split('.jpg')[0].split('im')[-1])
fs_img = [f for f in listdir(IMG_P) if '.jpg' in f]
fs_img = sorted(fs_img, key=key_img)  # 按标号排序
fs_img = [join(IMG_P, f) for f in fs_img]

N_IMG = 25000
batch_size = 2500
print(N_IMG)

all_img = []

for i in tqdm(range(25000)):
    im = imread(fs_img[i])
    im = resize(im, (224, 224, 3), mode='constant')
    im = np.expand_dims(im, axis=0)
    im = im.transpose((0, 3, 2, 1))
    all_img.append((im))

all_img = np.vstack(all_img)
scio.savemat('D:/result/img', {'image':all_img})
不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^