TF Lite 对象检测仅返回 10 个检测结果
TF Lite object detection only returning 10 detections
我在原生 Android 上使用带有 TensorFlow Lite 的自定义对象检测模型。此时我只检测到 2 个自定义对象。我正在使用 TensorFlow 对象检测 API,并且我有一个管道可以生成优化的 .tflite 文件。
但是,在推理时,该模型仅 returns 最多 10 个单独的检测。根据 https://www.tensorflow.org/lite/models/object_detection/overview,这是预期的。问题是我的图像具有相对较大的对象密度。我需要能够在每个 image/inference 调用中检测多达 30 个单独的对象。
如果我将 TF 存储库中示例 Android 应用程序中的 NUM_DETECTIONS 从 10 更改为例如 20,由于形状不匹配,我会遇到运行时异常。如何生成能够产生超过 10 个对象检测实例的 .tflite 文件?
谢谢!
不幸的是,由于 TFLite 更喜欢静态形状 Input/Outputs,您需要重新导出具有所需输出数量的 TFLite SSD 图。说明是here。调用object_detection/export_tflite_ssd_graph.py
时,需要传入参数--max_detections=20
。然后,您对 NUM_DETECTIONS
的更改应该会按预期工作。
我在原生 Android 上使用带有 TensorFlow Lite 的自定义对象检测模型。此时我只检测到 2 个自定义对象。我正在使用 TensorFlow 对象检测 API,并且我有一个管道可以生成优化的 .tflite 文件。
但是,在推理时,该模型仅 returns 最多 10 个单独的检测。根据 https://www.tensorflow.org/lite/models/object_detection/overview,这是预期的。问题是我的图像具有相对较大的对象密度。我需要能够在每个 image/inference 调用中检测多达 30 个单独的对象。
如果我将 TF 存储库中示例 Android 应用程序中的 NUM_DETECTIONS 从 10 更改为例如 20,由于形状不匹配,我会遇到运行时异常。如何生成能够产生超过 10 个对象检测实例的 .tflite 文件?
谢谢!
不幸的是,由于 TFLite 更喜欢静态形状 Input/Outputs,您需要重新导出具有所需输出数量的 TFLite SSD 图。说明是here。调用object_detection/export_tflite_ssd_graph.py
时,需要传入参数--max_detections=20
。然后,您对 NUM_DETECTIONS
的更改应该会按预期工作。