gpt4 book ai didi

python - 导入自己的数据,例如 MNIST 或 CIFAR10 load_data()

转载 作者:行者123 更新时间:2023-12-01 06:37:54 24 4
gpt4 key购买 nike

我有一个包含图像的文件夹(大约 4500 个),我想加载它们以提供我已经编写的 GAN,因此我想像 CIFAR10 或 MNIST load_data() 函数一样在 X_train 中加载图像。

我已经尝试过这个功能(文件夹中的所有数据都带有标签0..):

def get_data(path):
all_images_as_array=[]
label=[]
for filename in os.listdir(path):
label.append(0)
img=Image.open(path + filename)
np_array = np.asarray(img)
l,b,c = np_array.shape
np_array = np_array.reshape(l*b*c,)
all_images_as_array.append(np_array)
return np.array(all_images_as_array), np.array(label)

但它返回一个形状数组:

(4364, 3072)

编辑:我认为 3072 是因为图像是 32*32*3 ...

我想要一个与 MNIST 或 CIFAR10 load_data() 返回的形状相同的数组:

(NumberOfImages, 32, 32, 3)

如何更改我的功能?

谢谢

PS:抱歉,我是 Python 初学者,所以我不太了解这些系统之上的机制:感谢您的帮助

最佳答案

此时,对象np.array的形状为l,b,cnp_array = np.asarray(img)然后你用 np_array = np_array.reshape(l*b*c,) reshape 它,这是你不想要的。只需删除那两行

此外,由于标签始终为 0,因此无需将其附加到循环中,只需返回它即可。

def get_data(path):
all_images_as_array=[]
for filename in os.listdir(path):
img=Image.open(path + filename)
np_array = np.asarray(img)
all_images_as_array.append(np_array)

all_images = np.array(all_images_as_array)
return all_images, np.zeros_like(all_images)

关于python - 导入自己的数据,例如 MNIST 或 CIFAR10 load_data(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59583965/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com