Python 3.x 批处理大小对ImageDataGenerator的影响

Python 3.x 批处理大小对ImageDataGenerator的影响,python-3.x,machine-learning,keras,deep-learning,data-augmentation,Python 3.x,Machine Learning,Keras,Deep Learning,Data Augmentation,我是Keras的新手,正在尝试做数据扩充,但我在一开始就被卡住了 我有一个形象,我正试图使其扩大如下 datagen=image.ImageDataGenerator(rotation_range=20) iter=datagen.flow(samples,batch_size=2) batch=iter.next() plt.imshow(batch[0].astype('uint8')) 因此,我知道,datagen是一个生成器,iter是一个迭代器,可以对其进行迭代,但我怀疑的是批量大小

我是Keras的新手,正在尝试做数据扩充,但我在一开始就被卡住了

我有一个形象,我正试图使其扩大如下

datagen=image.ImageDataGenerator(rotation_range=20)
iter=datagen.flow(samples,batch_size=2)
batch=iter.next()
plt.imshow(batch[0].astype('uint8'))

因此,我知道,
datagen
是一个生成器,
iter
是一个迭代器,可以对其进行迭代,但我怀疑的是
批量大小。这里,
批大小=2
,这意味着在每次迭代期间,将创建一批2个图像。现在,我可以使用如上所示的
batch[0]
查看批中的第一个图像,但无法使用
batch[1]
查看批中的第二个图像。当我检查
批处理.shape
时,它显示
(1399640,3)
,这意味着批处理中只有一个图像。我不能理解它。第二张图片在哪里?如何显示批次的第二个图像。

在TF 2.1上对我来说效果很好(即一个批次中显示两个图像)。
样本的形状是什么?您使用的是Keras还是tf.Keras?我使用的是Keras,样本的形状是
(1399640,3)
如果您的样本大小是(1399640,3)
更改为
(2399640,3)
。您能指导一下如何做到这一点吗?是的,
样本的第一个维度需要>=2,如果您需要一批中有两个项目。你是怎么做到的?嗯,您需要在数据集中添加更多图像(或者如果这是一个玩具实验,请使用
np。重复(samples,n,axis=0)
其中
n
是数据集中所需的样本数。