这一段对图像分类训练集图像数据增强扩充的代码
时间: 2024-05-03 17:16:36 浏览: 114
以下是一个基于Keras的图像分类模型训练中常用的数据增强代码示例:
```python
from keras.preprocessing.image import ImageDataGenerator
# 定义数据增强器
train_datagen = ImageDataGenerator(
rescale=1./255, # 将像素值缩放到0-1之间
rotation_range=20, # 随机旋转20度以内
width_shift_range=0.2, # 随机水平平移0.2倍以内
height_shift_range=0.2, # 随机竖直平移0.2倍以内
shear_range=0.2, # 随机错切变换0.2弧度以内
zoom_range=0.2, # 随机缩放范围0.2倍以内
horizontal_flip=True, # 随机水平翻转
fill_mode='nearest' # 填充方式
)
# 读取训练集数据
train_generator = train_datagen.flow_from_directory(
train_dir, # 训练集目录
target_size=(150, 150), # 图像尺寸
batch_size=32, # 批次大小
class_mode='binary' # 二分类任务
)
# 训练模型
model.fit_generator(
train_generator, # 训练数据生成器
steps_per_epoch=100, # 每个epoch迭代次数
epochs=30, # 迭代次数
validation_data=validation_generator, # 验证数据
validation_steps=50) # 每个epoch验证迭代次数
```
这段代码使用`ImageDataGenerator`定义数据增强器,包括对图像进行旋转、平移、错切、缩放、翻转等操作。然后将增强后的图像作为模型的输入进行训练。
阅读全文