ImageDataGenerator的参数自己看文档
from keras.preprocessing import image
import numpy as np
X_train=np.ones((3,123,123,1))
Y_train=np.array([[1],[2],[2]])
generator=image.ImageDataGenerator(featurewise_center=False,
samplewise_center=False,
featurewise_std_normalization=False,
samplewise_std_normalization=False,
zca_whitening=False,
zca_epsilon=1e-6,
rotation_range=180,
width_shift_range=0.2,
height_shift_range=0.2,
shear_range=0,
zoom_range=0.001,
channel_shift_range=0,
fill_mode='nearest',
cval=0.,
horizontal_flip=True,
vertical_flip=True,
rescale=None,
preprocessing_function=None,
data_format='channels_last')
a=generator.flow(X_train,Y_train,batch_size=20)#生成的是一个迭代器,可直接用于for循环
'''
batch_size如果小于X的第一维m,next生成的多维矩阵的第一维是为batch_size,输出是从输入中随机选取batch_size个数据
batch_size如果大于X的第一维m,next生成的多维矩阵的第一维是m,输出是m个数据,不过顺序随机
,输出的X,Y是一一对对应的
如果要直接用于tf.placeholder(),要求生成的矩阵和要与tf.placeholder相匹配
'''
X,Y=next(a)
print(Y)
X,Y=next(a)
print(Y)
X,Y=next(a)
print(Y)
X,Y=next(a)
输出
[[2]
[1]
[2]]
[[2]
[2]
[1]]
[[2]
[2]
[1]]
[[2]
[2]
[1]]