如何堆叠张量图像

时间:2019-11-09 02:50:22

标签: python numpy tensorflow stack

我正在尝试做Pix2Pix NN,我的输入是灰度,我的输出是RGB,我正在使用

stacked_image = tf.stack([inimg, tgimg], axis=0)

要堆叠图像以进行数据增强,请使用

加载图像
inimg = tf.cast(tf.image.decode_jpeg(tf.io.read_file(INPATH + filename)), tf.float32)[..., :3]
tgimg = tf.cast(tf.image.decode_jpeg(tf.io.read_file(OUPATH + filename)), tf.float32)[..., :3]

但是我发现形状有误。

InvalidArgumentError: Shapes of all inputs must match: values[0].shape = [286,286,1] != values[1].shape = [286,286,3] [Op:Pack] name: stack

有关如何解决此问题的一些建议?

1 个答案:

答案 0 :(得分:0)

如果inimg和tgimg的形状相同,则只能使用tf.stack。您可以使用tf.tile

实现
stacked_image = tf.stack([tf.tile(inimg, [1, 1, 3]), tgimg], axis=0)

stacked_image将具有形状(2,286,286,3)