将不同形状的Tensor对象传递给tf.train.batch

时间:2017-07-15 01:25:47

标签: tensorflow neural-network

我正在执行此操作:

images, labels, labels2 = tf.train.batch([image, lbl1, lbl2], batch_size=32);

其中imagelbl1lbl2的类型为TensorDimension(None)

image是一个三维矩阵。 lbl1lb2将代表浮点数组。

问题是,这些都是不同的大小,tf.train.batch要求Tensor对象具有已定义的形状。所以,当然,我收到如下错误:

ValueError: All shapes must be fully defined: [TensorShape([Dimension(None), Dimension(None), Dimension(3)]), TensorShape([Dimension(None)]), TensorShape([Dimension(None)])]

如果有某些不同尺寸的图像和标签,我该怎么做?

1 个答案:

答案 0 :(得分:0)

dynamic_pad设置为True可以使用形状None的尺寸。

images, labels, labels2 = tf.train.batch([image, lbl1, lbl2], batch_size=32, dynamic_pad=True);