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

时间:2016-07-07 08:53:33

标签: neural-network deep-learning torch conv-neural-network

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

  

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

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

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

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

我是深度学习的新手,任何帮助都会很棒。感谢。

2 个答案:

答案 0 :(得分:0)

要做的第一件事是将所有图像处理为相同的大小。 CONV图层输入要求所有图像都具有指定的尺寸。

Caffe允许您在原型文件中进行重塑;在Torch中,我认为你可以在 createModel 的前面放下一个类似的命令,但我不记得命令名。如果没有,那么你需要在模型流程之外进行。

答案 1 :(得分:0)

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

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

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

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