语义分割中的上采样

3
我正在尝试实现一篇有关语义分割的论文,但我对如何将分割网络生成的预测图上采样以匹配输入图像大小感到困惑。
例如,我使用Resnet101的一个变体作为分割网络(与论文中使用的相同)。使用这个网络结构,大小为321x321的输入(同样在论文中使用)会产生一个最终的预测地图,大小为41x41xC(其中C是类别数)。因为我需要进行像素级别的预测,所以我需要将其上采样到321x321xC。Pytorch提供了将输出大小上采样到预测地图大小的函数。因此,在这里我不能直接使用该方法。
因为这一步骤涉及到每一个语义分割网络,所以我确定应该有一种标准的实现方式。
我会非常感谢任何指导。提前致谢。
1个回答

3
也许你可以尝试最简单的方法:
  • 将分辨率上采样8倍。这样,你的41x41输入就变成了328x328。
  • 进行中心裁剪,以得到你想要的形状321x321(例如:像这样输入[3:,3:,:-4,:-4])。

1
在每次上采样后进行裁剪,而不仅仅是在最后一次进行裁剪,可能会更加稳定。 - Shai
有没有一种被广泛接受的方法来处理语义分割中的上采样?我想采用标准做法,因为我正在尝试复现ICLR可重复性挑战赛论文中的结果,而他们没有提及他们的上采样策略。此外,我希望我的网络可以上采样到任意输入大小,这样我就不必担心在推理时对图像和标签应用变换(其中图像可以是任何大小)。有什么办法可以做到这一点吗? - ethelion
1
你也可以尝试使用反卷积作为上采样的方法。但实际上,只有Nearest2D上采样方法表现得非常好。 - Egor Lakomkin
感谢Egor Lakomkin和Shai。使用双线性插值进行3次上采样操作,并在每次上采样后进行裁剪效果最佳。我也尝试过转置卷积,但学习其权重证明很困难。 - ethelion

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接