Tensorflow / Keras在通道上堆叠图像

时间:2019-03-29 08:15:11

标签: python numpy tensorflow keras

想象一下以下设置:

  • 图像数据形状:(302,482,3)
  • 每个样本的图像:2
  • 批量大小:100

我的数据加载器产生以下形状:(100,2,302,482,3)-目标是将通道轴上的两个输入图像堆叠到(100,302,482,6)。

没有批处理尺寸(因此x的形状为(2,302,482,3)),这非常容易:

# x.shape = (2, 302, 482, 3)
stacked = tf.concat(x, axis=-1)
# stacked.shape = (302, 482, 6)

但是我想在添加批处理维度时可以执行相同的操作。

1 个答案:

答案 0 :(得分:0)

我认为,最好的方法是在网络输入之前( )将两个图像连接(使用numpy),为网络提供尺寸(302、482、6),除非您想在网络中对其进行更高的处理。这取决于您的目标。 编写图层时,批次大小无关紧要。无论批次大小如何,tf.concat都将以相同的方式进行。