CNN的图像大小调整和填充


14

我想训练CNN进行图像识别。用于训练的图像尺寸不固定。例如,我希望CNN的输入大小为50x100(高x宽)。当我将一些较小尺寸的图像(例如32x32)调整为输入尺寸时,图像的内容在水平方向上拉伸得太多,但是对于某些中等尺寸的图像而言,它看起来还不错。

在避免内容被破坏的同时调整图像大小的正确方法是什么?

(我正在考虑将图像的大小调整到一定程度并保持宽度和高度的比率后,将图像以0s填充为完整大小。这种方法可以吗?)

Answers:


10

关于stackoverflow的问题可能会对您有所帮助。总而言之,一些深度学习研究人员认为对图像的大部分进行填充不是一种好习惯,因为神经网络必须了解填充区域与分类无关,如果您需要例如,使用插值。


5

您有几种选择:

对于小图像:

  • 通过插值上采样
  • 使用零填充图像

如果无法通过上采样保持宽高比,则可以上采样,也可以裁剪最大尺寸的多余像素。当然,这将导致数据丢失,但是您可以反复移动作物的中心。这将帮助您的模型更加健壮。


对于大图:

  • 下采样
  • 缩小到您的输入大小

最后,如果您使用的是全卷积网络(FCN),则无需调整图像大小。

TL; DR:

是的,用零填充是有效的选择。


如果我为接受3个级联视频帧的全卷积网络训练了权重,那么如何将这些权重用于具有相同体系结构的网络,但输入大小增加到11个级联?我只是在做预测,而不是在进一步训练。我的问题是在这里: datascience.stackexchange.com/questions/55737/...
mLstudent33

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.