我正在尝试将 celebA 数据集(https://www.kaggle.com/jessicali9530/celeba-dataset)图像文件夹转换为 numpy 数组,以便稍后转换为 .pkl 文件(用于像 mnist 一样简单地使用数据或西法尔)。
我愿意找到一种更好的转换方法,因为这种方法绝对会消耗整个 RAM。
from PIL import Image
import pickle
from glob import glob
import numpy as np
TARGET_IMAGES = "img_align_celeba/*.jpg"
def generate_dataset(glob_files):
dataset = []
for _, file_name in enumerate(sorted(glob(glob_files))):
img = Image.open(file_name)
pixels = list(img.getdata())
dataset.append(pixels)
return np.array(dataset)
celebAdata = generate_dataset(TARGET_IMAGES)
我很好奇 mnist 作者自己是如何做到这一点的,但任何可行的方法都是受欢迎的。
函数式编程
相关分类