首页 > 解决方案 > 标签的 Keras 图像处理

问题描述

我正在按照演练:https ://blog.keras.io/building-powerful-image-classification-models-using-very-little-data.html

我不明白 ImageDataGenerator 如何创建标签数据。

我将图像目录设置为: .../train/cats.../train/dogs

ImageDataGenerator的创建者:

train_datagen = ImageDataGenerator(rescale=1./255, rotation_range=40, width_shift_range=0.2, height_shift_range=0.2, shear_range=0.2, zoom_range=0.2, horizontal_flip=True,)

train_generator = train_datagen.flow_from_directory(train_dir, target_size=(150,150), batch_size=32, class_mode='binary')

我用以下方法检查数据:

for data_batch, labels_batch in train_generator: print("labels: ", labels_batch)

标签似乎生成得很好。我的问题是,当我只提供 .jpg 文件时,ImageDataGenerator 如何创建标签?我想

标签: pythonkerasconv-neural-network

解决方案


从子目录名称。

https://keras.io/preprocessing/image/#flow_from_directory

"classes: 类子目录的可选列表(例如['dogs', 'cats'])。默认值:无。如果未提供,将自动从目录下的子目录名称/结构推断类列表,其中每个子目录将被视为不同的类(并且将映射到标签索引的类的顺序将是字母数字)。包含从类名到类索引的映射的字典可以通过属性 class_indices 获得。


推荐阅读