对fashion_mnist进行图像增强 用ImageDataGenerator实现 最后展示20张
时间: 2023-06-08 12:08:48 浏览: 103
图片。
好的,我会尽力回答您的问题。以下是使用ImageDataGenerator对fashion_mnist进行图像增强的示例代码,并展示20张图片的代码:
```
# 导入需要的模块
import numpy as np
import matplotlib.pyplot as plt
from keras.datasets import fashion_mnist
from keras.preprocessing.image import ImageDataGenerator
# Load the Fashion-MNIST dataset
(x_train, y_train), (x_test, y_test) = fashion_mnist.load_data()
# 定义图像增强生成器
datagen = ImageDataGenerator(
rotation_range=15,
width_shift_range=0.1,
height_shift_range=0.1,
shear_range=0.1,
zoom_range=0.1,
horizontal_flip=True,
vertical_flip=False,
fill_mode='nearest'
)
# 从(x_train, y_train)中随机选取一些图片,并进行数据增强
# 将增强后的图片保存到g输出的文件夹中
g = datagen.flow(x_train[:20], y_train[:20], batch_size=1, save_to_dir='preview', save_prefix='fashion-mnist', save_format='jpeg')
# 显示20张增强后的图片
fig = plt.figure(figsize=(8,8))
for i in range(20):
ax = fig.add_subplot(4,5,i+1)
ax.imshow(g.next()[0].astype('uint8'))
plt.axis('off')
plt.show()
```
这段代码中,我们首先从Keras的Fashion-MNIST数据集中加载了训练集和测试集。然后,我们定义了一个ImageDataGenerator对象,并在其中指定了一些图像增强的参数,如旋转范围、平移范围、剪切范围、缩放范围、水平翻转和填充模式。接下来,我们使用datagen.flow()从训练集中随机选取了20张图片,并对它们进行了数据增强,并将增强后的图片保存在了名为“preview”的文件夹中。最后,我们使用matplotlib库将这20张增强后的图片可视化展示出来。
希望这个回答能够帮到您。
阅读全文