【问题标题】:Keras flow_from_directory() read only from selected sub-directoriesKeras flow_from_directory() 只从选定的子目录中读取
【发布时间】:2019-03-24 20:40:17
【问题描述】:

我的目录结构如下。

train
|- dog --> contains image files of dogs
|- cat --> contains image files of cats
|- elephant --> contains image files of elephants

我想训练一个 CNN 来识别动物,但仅限于猫和狗,而不是大象。

我想使用keras ImageDataGenerator 类来扩充数据和flow_from_directory() 方法来读取图像文件。

train_datagen = ImageDataGenerator(rescale=1./255)
train_generator = train_datagen.flow_from_directory(directory='train', class_mode='categorical', target_size=(64,64), batch_size=16, shuffle=True)

上面的代码将从'train'的所有子目录中读取数据,这是我不想要的。一种选择是创建一个新目录并复制“dog”和“cat”子目录以及其中的文件。但是有没有办法从flow_from_directory()方法本身来控制呢?

【问题讨论】:

    标签: tensorflow keras deep-learning conv-neural-network


    【解决方案1】:

    假设我以正确的方式理解您的问题,这应该对您有所帮助:

    train_generator = train_datagen.flow_from_directory(directory='train', class_mode='categorical', target_size=(64,64), batch_size=16, shuffle=True, classes=["dog", "cat"])
    

    这将只读取目录dogcat 中的图像,省略elephant 目录并为它们提供不同的分类标签。

    【讨论】:

    • 完美。感谢您的帮助!
    猜你喜欢
    • 2018-08-07
    • 1970-01-01
    • 2012-11-25
    • 1970-01-01
    • 2019-04-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-04
    • 2018-06-28
    相关资源
    最近更新 更多