如何从目录中获取带有流的图像?
How can I get some images with flow from directory?
在下面的示例中,我想拍摄一些图像进行训练,但并非全部,因为我的计算机效率低下。
我如何使用 flow_from_directory 做到这一点?
train_generator = train_datagen.flow_from_directory(
'/train/,
target_size=(img_height, img_width),
batch_size=batch_size,
class_mode='categorical')
这里我的批量大小是20。您可以迭代获取图像:
image_list = []
for images,labels in next(zip(train_generator)):
for i in range(16): # can't be greater than 20
image_list.append(images[i])
image_list = np.array(image_list)
image_list.shape # (16,150,150,3)
数据生成器将帮助我们pro-processing(重新缩放)我们的图像
data_generator = tf.keras.preprocessing.image.ImageDataGenerator(rescale=1. / 255, validation_split=0.2)
使用validation_split
创建训练和验证数据集
train_generator = data_generator.flow_from_directory(
data_dir,
target_size=(Img_size, Img_size),
batch_size=Batch_size,
subset='training',
shuffle=True)
创建值生成器
val_generator = data_generator.flow_from_directory(
data_dir,
target_size=(Img_size, Img_size),
batch_size=Batch_size,
subset='validation',
shuffle=True)
在下面的示例中,我想拍摄一些图像进行训练,但并非全部,因为我的计算机效率低下。
我如何使用 flow_from_directory 做到这一点?
train_generator = train_datagen.flow_from_directory(
'/train/,
target_size=(img_height, img_width),
batch_size=batch_size,
class_mode='categorical')
这里我的批量大小是20。您可以迭代获取图像:
image_list = []
for images,labels in next(zip(train_generator)):
for i in range(16): # can't be greater than 20
image_list.append(images[i])
image_list = np.array(image_list)
image_list.shape # (16,150,150,3)
数据生成器将帮助我们pro-processing(重新缩放)我们的图像
data_generator = tf.keras.preprocessing.image.ImageDataGenerator(rescale=1. / 255, validation_split=0.2)
使用validation_split
创建训练和验证数据集
train_generator = data_generator.flow_from_directory(
data_dir,
target_size=(Img_size, Img_size),
batch_size=Batch_size,
subset='training',
shuffle=True)
创建值生成器
val_generator = data_generator.flow_from_directory(
data_dir,
target_size=(Img_size, Img_size),
batch_size=Batch_size,
subset='validation',
shuffle=True)