如何使用已经训练好的模型测试您自己的(单个图像)数据?

时间:2020-02-12 10:51:17

标签: python tensorflow testing keras conv-neural-network

我正在尝试运行此repository。并且,尝试使用我自己的数据进行测试。在尝试执行此操作时,出现此错误:

回溯(最近一次通话最近):文件“ test.py”,第34行,在 输出=预测(模型,输入)文件“ /home/kbdp5524/Downloads/DenseDepth-master/utils.py”,第12行, 预测 预测= model.predict(images,batch_size = batch_size)文件“ /home/kbdp5524/anaconda3/envs/densedepth/lib/python3.7/site-packages/keras/engine/training.py”, 行1441,在预测中 x,_,_ = self._standardize_user_data(x)文件“ /home/kbdp5524/anaconda3/envs/densedepth/lib/python3.7/site-packages/keras/engine/training.py”, _standardize_user_data中的第579行 exception_prefix ='input')文件“ /home/kbdp5524/anaconda3/envs/densedepth/lib/python3.7/site-packages/keras/engine/training_utils.py”, 第145行,位于standardize_input_data中 str(data_shape))

ValueError:检查输入时出错:预期input_1具有形状 (无,无,3),但数组的形状为(480,640,4)

这是test.pytrain.py代码

有人可以帮我吗?我是编码新手:)

1 个答案:

答案 0 :(得分:0)

您的输入图像具有RGBA图像的形状(无,无,4),但模型希望具有3通道图像均值(无,无,3)的RGB。因此,您必须将您的图像转换为3通道。 您可以使用OpenCV函数cv2.cvtColor(Image, cv2.COLOR_RGBA2RGB )来做到这一点。

要安装openCV,请执行以下操作:pip install python-opencv