1

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

请查看错误:-

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

文件“”,第 35 行,在 predict = 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”,第 751 行,在 _standardize_user_data 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)

4

1 回答 1

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

于 2018-11-23T13:10:48.343 回答