首页 文章

具有多种输入的完全卷积网络

提问于
浏览
0

我有一个完全卷积的神经网络,U-Net,可以在下面阅读 .

https://arxiv.org/pdf/1505.04597.pdf

我想用它来做像素的像素分类 . 我的训练图像有两种尺寸:512x512和768x768 . 我在初始步骤中使用前者的反射填充(256,256,256,256),在后者中使用(384,384,384,384) . 我在卷积之前进行连续填充,以获得输入大小的输出 .

但由于我的填充取决于图像/输入的大小,我无法构建通用模型(我使用的是Torch) .

在这种情况下填充是如何完成的?

我是新学习者,任何帮助都会很棒 . 谢谢 .

2 回答

  • 0

    您的模型只接受第一层大小的图像 . 在将它们转发到网络之前,您必须预先处理所有这些 . 为此,您可以使用:

    image.scale(img, width, height, 'bilinear')

    img 将是要缩放的图像, widthheight 是模型第一层的大小(如果我没弄错,它是572 * 572), 'bilinear' 是它将用于缩放图像的算法 .

    请记住,可能需要提取图像的平均值或将其更改为BGR(取决于模型的训练方式) .

  • 0

    首先要做的是将所有图像处理为相同的大小 . CONV图层输入要求所有图像都具有指定的尺寸 .

    Caffe允许你在prototxt文件中使用 reshape ;在火炬中,我认为你可以在 createModel 的前面放下一个类似的命令,但我不需要在模型流程之外做这件事 .

相关问题