如何将经过训练的模型应用于形状/尺寸大于经过训练的模型(在Tensorflow中)?

时间:2019-07-16 22:30:18

标签: python python-2.7 tensorflow

我在512x512尺寸的图像上训练了一个模型。我目前拥有982x982(或其他尺寸)的图像,需要模型进行预测。在这些图像上运行时,出现关于意外输入数组形状的错误。

Tensorflow是否提供任何方法来方便地在尺寸/形状大于模型所训练的图像上部署模型?

更多详细信息

具体地说,这是用于图像分割的模型。

我认为解决该问题的一种方法是创建自己的滑动窗口脚本,该脚本以与原始图像不同的间隔输入到预期大小的模型窗口中,然后以某种方式将所有这些输出窗口粘贴回经过模型后的单个图像。但是,我想知道是否有更标准的方法。

我是Tensorflow(和图像分割)的新手,所以很可能我错过了一些东西,或者我的问题不清楚。

谢谢您的任何建议:)

1 个答案:

答案 0 :(得分:0)

我曾经对如何处理更大或更小的图像有相同的疑问。根据我的经验,一种可能的方法是将图像调整为网络的输入大小。例如,如果您当前的图像大小为982x982,而网络输入大小为512x512,那么您可以使用PillowOpenCV之类的某些库来调整原始图像的大小从982x982512x512

您的方法是一种可能的解决方案。我要说的是,除了调整大小操作外,还有许多可能的解决方案,但是您最好尝试使用这种最简单的方法来查看网络是否运行良好。从我的项目中学到的是,我们总是可以尝试最简单的解决方案,并且在大多数情况下,它可以完美地工作。

通常来说,没有通用的完美方法。您可以从最简单的方法开始,如果不起作用,则找到更复杂的方法。