我正在使用卷积层,后面跟一个反卷积层,如下所示:
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)
我认为这可能是由于我的步幅或内核大小。我尝试了多个值,但似乎没有重现原始尺寸。
答案 0 :(得分:0)
一种流行的方法是填充输入图像,使得卷积和反卷积后的输出与填充输入的大小相同。然后裁剪输出以适应没有填充的原始输入。