我的 SSD 对象检测输出是否正确?

问题描述

我以一种独特的方式使用 tflite;构建Object Detection as a Service

长话短说,当我对单个图像执行 TFLite 对象检测时,我得到以下输出

[0.018407762,0.022299409,0.9639402,0.98289526,0.77566934,0.95224416,0.7893053,0.9644519,0.079119,0.25176272,0.8338728,0.9715638,0.7666425,0.9561646,0.7853481,0.968181,0.7755212,0.9020464,0.7879235,0.91752034,0.5012923,0.009573311,0.9884741,1.0051035,0.7762802,0.3704026,0.7917542,0.38168278,0.7762862,0.4714918,0.7886885,0.4809718,0.2167234,0.22408514,0.778196,0.5809637,0.78983843,0.59090406]

[4.0,37.0,4.0,0.0,15.0,15.0]

[0.37890625,0.30078125,0.21484375,0.20703125,0.19921875,0.19140625,0.18359375,0.17578125,0.16796875,0.16796875]

[10.0]

我使用的模型数据只是从 "Starter model with metadata"提取detect.tflite 文件

如果我处理自行车的图片,我会得到 10 个不同的对象 ID,即 [4.0,15.0],这是不正确的。

此外,虽然我已按照 labelmap.txt file 中的建议将原始 this new format 转换为 this article,但我仍然不确定在此对象检测过程中应该如何合并/使用标签图。

任何帮助将不胜感激。 非常感谢。

解决方法

输出在此处有详细记录:How to resolve tensorflow shape issue when using a custom model?

类的 id 在 TFLite_Detection_PostProcess:1 中。您可以将此输出中的 id 与 labelmap.txt 中的 id 进行映射