我已遵循此medium post的实现,将我的Keras模型部署到Android。我使用了具有9个节点的密集层以及输出层中的softmax激活,这与文章中使用的全局平均池相反。我的模型的h5文件在python中可以准确预测,但是当我在Android中使用pb文件时,其预测是错误的。此外,在不同的Android设备中,发现预测后的浮点值有些不同。实施有什么问题吗?文件ConvertToTensorflow.py
的第16行中很可能有一个小错误(应该是keras_model.outputs
而不是keras_model.output
)。我已经纠正了,但问题仍然存在。
答案 0 :(得分:0)
事实证明,normalizeBitmap
的{{1}}函数实际上是在标准化图像的每个像素,而我在python中训练模型时,只是将每个像素值除以255。所以我更改了3行代码:
ImageUtils.java