深度学习-用于keras中可变大小图像的全卷积自动编码器



我想构建一个卷积自编码器,其中输入的大小不是恒定的。我是通过堆叠卷积池层来做到这一点的,直到我到达一个编码层,然后用上采样-卷积层做相反的事情。问题是,无论我使用什么设置,我都无法在输出层中获得与输入层完全相同的大小。这样做的原因是UpSampling层(给定(2,2)大小)将输入的大小加倍,所以我不能得到奇数维度。是否有一种方法可以将给定层的输出维度与单个样本的前一层的输入维度联系起来(如我所说,变量中max-pool层的输入大小)?

是的,有。

你可以使用三种方法

  • 填充
  • 调整
  • 裁剪或填充

Padding只用于增加尺寸。

调整大小应该是更昂贵的,但对于每种情况(向上或向下采样)都是最优的解决方案。它将保留范围内的所有值,并将简单地重新采样它们以调整给定维度的大小。

裁剪或垫将工作作为调整大小,它将是更有效的计算,因为在这种方法中没有插值。但是,如果要将其大小调整为较小的尺寸,则会从边缘裁剪。

使用这3,你可以安排你的图层的尺寸

最新更新