使用自定义AutoML模型进行Tensorflow Lite对象检测

时间:2020-01-22 05:16:24

标签: android tensorflow machine-learning tensorflow-lite automl

我喜欢测试TFLite的对象检测示例。

https://github.com/tensorflow/examples/tree/master/lite/examples/object_detection/android

使用默认模型的示例效果很好。但是我想测试从AutoML生成的自定义模型。当我替换“ \ src \ main \ assets”目录中的“ detect.tflite”和“ labelmap fille”并进行构建时,该应用在启动后崩溃。

我的模型非常简单...只能检测2个对象(老虎和狮子)。我的labelmap文件包含以下内容:

??? 虎 狮子

我还注释了“ build.gradle”中的“ // apply from:'download_model.gradle”行,以停止下载默认模型并使用资产中的自定义模型。

我是Android和该机器学习领域的新手。如果有人可以在使用自定义AutoML模型启动后建议应用程序崩溃,我将感到非常高兴。

谢谢。

致谢。

1 个答案:

答案 0 :(得分:0)

两个可能的日志错误可能是:

Cannot convert between a TensorFlowLite buffer with 1080000 bytes and a ByteBuffer with 270000 bytes.相应地修改TF_OD_API_INPUT_SIZE。

tflite ml google [1, 20, 4] and a Java object with shape [1, 10, 4].根据自定义模型修改NUM_DETECTIONS个。