卷积 - 反卷积对的维度略有不同

时间:2017-02-15 08:32:12

标签: tensorflow convolution deconvolution

我正在使用卷积层,后面跟一个反卷积层,如下所示:

tf.nn.conv2d(num_outputs=1, kernel_size=[21, 11], stride=[2, 2], padding="SAME", rate=1)

tf.nn.conv2d_transpose(num_outputs=1, kernel_size=[21, 11], stride=[2, 2], padding="SAME")

我的想法是将初始图像缩小,然后使用反卷积将其调整为原始大小。我实际上使用的是tf.slim函数,但参数是上面的参数。

当我查看输入和输出时,我有一点不同:

Input shape :  (16, 161, 511, 1)
Output shape:  (16, 162, 512, 1)

我认为这可能是由于我的步幅或内核大小。我尝试了多个值,但似乎没有重现原始尺寸。

1 个答案:

答案 0 :(得分:0)

一种流行的方法是填充输入图像,使得卷积和反卷积后的输出与填充输入的大小相同。然后裁剪输出以适应没有填充的原始输入。