Python 文件夹上的ImageDataGenerator

Python 文件夹上的ImageDataGenerator,python,keras,Python,Keras,我对keras文档中的代码有问题。在下面的代码中,它只加载了一个图像。如果一个文件夹中有10个图像,我将如何使用此代码,因为load_img函数只加载1个图像,我想加载包含10个图像的文件夹,并对所有图像应用数据生成,有帮助吗 from keras.preprocessing.image import ImageDataGenerator, array_to_img, img_to_array, load_img datagen = ImageDataGenerator( rotation_

我对keras文档中的代码有问题。在下面的代码中,它只加载了一个图像。如果一个文件夹中有10个图像,我将如何使用此代码,因为load_img函数只加载1个图像,我想加载包含10个图像的文件夹,并对所有图像应用数据生成,有帮助吗

from keras.preprocessing.image import ImageDataGenerator, 
array_to_img, img_to_array, load_img

datagen = ImageDataGenerator(
rotation_range=40,
width_shift_range=0.2,
height_shift_range=0.2,
shear_range=0.2,
zoom_range=0.2,
horizontal_flip=True,
fill_mode='nearest')

img = load_img('data/train/cats/cat.0.jpg') # this is a PIL image
x = img_to_array(img)
x = x.reshape((1,) + x.shape)

i = 0
for batch in datagen.flow(x, batch_size=1,
save_to_dir='preview', save_prefix='cat', save_format='jpeg'):
i += 1
if i > 20:
break

您可以使用ImageDataGenerator的目录函数flow_from_,keras会自动为您做这件事

datagen=ImageDataGenerator()
generator=datagen.flow_from_directory(directory)
编辑
您应该具有以下文件夹结构

directory/
    class_label_1/
       image1
       image2
       .
       .
    class_label_2/
       .
       .

您的父目录应该为每个类有一个文件夹,该类文件夹应该有属于该类的图像。文件夹名称被选为标签

我照你说的做了,但什么也没发生,它只是打印出“找到了0张属于0个类的图像”。现在,它正在工作“找到了2张属于1个类的图像”,我必须添加这些行,以便在特定文件夹中每个图像有20张图像。谢谢包含图像的目录的路径是什么?