DeepLab v3-如何处理任何大小比例的图像。 (h * w)

时间:2018-11-23 12:38:30

标签: python opencv keras deep-learning deeplab

Deeplab v3仅预测默认比率512 *512。如何处理不同大小比率的图像。

请仔细检查错误:-

  

回溯(最近通话最近一次):

     

文件“”,第35行,在       预测= model_dlv3.predict(img [np.newaxis,...])

     

文件   “ /home/developer/anaconda2/envs/py36/lib/python3.6/site-packages/keras/engine/training.py”,   行1149,在预测中       x,_,_ = self._standardize_user_data(x)

     

文件   “ /home/developer/anaconda2/envs/py36/lib/python3.6/site-packages/keras/engine/training.py”,   _standardize_user_data中的第751行       exception_prefix ='input')

     

文件   “ /home/developer/anaconda2/envs/py36/lib/python3.6/site-packages/keras/engine/training_utils.py”,   第138行,位于standardize_input_data中       str(data_shape))

     

ValueError:检查输入时出错:期望input_3具有形状(512、512、3),但数组具有形状(2448、3264、3)

1 个答案:

答案 0 :(得分:0)

您可以将图像尺寸调整为512 * 512或使用填充将图像转换为正方形,然后将其尺寸调整为512 * 512。后一种选项更好,因为它不会更改图像内部对象的形状。您可以使用不同的填充模式,看看是什么效果最好。

您可以使用opencv或scikit-image调整大小和填充

用于填充的opencv文档:https://docs.opencv.org/2.4/modules/imgproc/doc/filtering.html?highlight=copymakeborder#copymakeborder

用于填充的scikit-image文档:http://scikit-image.org/docs/dev/api/skimage.util.html#skimage.util.pad