我正在研究用于深度学习的Keras包,并在https://github.com/fchollet/keras/blob/master/examples/cifar10_cnn.py它很好地集成了图像预处理(例如旋转和移位)。我想知道,在预处理后,是否有一种容易绘制训练图像的方法来观察这些旋转和偏移的影响?
您可以将生成的图像保存到磁盘,方法是将save_to_dir='path_to_dir'
赋予数据生成器的flow()
函数。
是的,可以绘制图像。例如,在MNIST数据集的情况下:
from keras.datasets import mnist
from keras.preprocessing.image import ImageDataGenerator
from matplotlib import pyplot
(X_train, y_train), (X_test, y_test) = mnist.load_data()
X_train = X_train.reshape(X_train.shape[0], 1, 28, 28)
X_test = X_test.reshape(X_test.shape[0], 1, 28, 28)
X_train = X_train.astype('float32')
X_test = X_test.astype('float32')
datagen = ImageDataGenerator(horizontal_flip=True, vertical_flip=True)
datagen.fit(X_train)
for X_batch, y_batch in datagen.flow(X_train, y_train, batch_size=9):
# grid of 3x3 images
for i in range(0, 9):
pyplot.subplot(330 + 1 + i)
pyplot.imshow(X_batch[i].reshape(28, 28), cmap=pyplot.get_cmap('gray'))
pyplot.show()
break
有关更多详细信息,请参阅此链接。