问题描述
我正在尝试创建一个函数,以将14,000张图像的大图像数据集加载到变量中,但遇到内存(RAM)问题。
我要制作的是类似cifar100.load_data
的函数,但对我来说不起作用。
我定义的函数如下:
def load_data():
trn_x_names=os.listdir('data/train_x')
trn_y_names=os.listdir('data/train_y')
trn_x_list=[]
trn_y_list=[]
for image in trn_x_names[0:]:
img=cv2.imread('data/train_x/%s'%image)
img=cv2.cvtColor(img,cv2.COLOR_BGR2RGB)
trn_x_list.append(img)
for image in trn_y_names[0:]:
img=cv2.imread('data/train_y/%s'%image)
img=cv2.cvtColor(img,cv2.COLOR_BGR2RGB)
trn_y_list.append(img)
x_train= np.array(trn_x_list)
y_train= np.array(trn_y_list)
return x_train,y_train
我首先一张一张地加载所有图像,将它们添加到相应的列表中,最后将这些列表更改为numpy
数组,并将其分配给某些变量并返回它们。但是在途中,我遇到了RAM问题,因为它消耗了我100%的RAM。