我们正在使用 tensorflow-lite 在 android 中进行语义分割应用。使用的“.tflite”deeplabv3 模型具有类型为 (ImageTensor) uint8[1,300,300,3] 的输入和类型为 (SemanticPredictions) uint8[300,300] 的输出。我们成功了能够在 tflite.run 方法的帮助下运行模型并以 ByteBuffer 格式获取输出。但是我们无法在 java 中从该输出中提取图像。使用 pascal voc 数据集训练并实际转换为的模型TF 模型中的 tflite 格式:' mobilenetv2_dm05_coco_voc_trainval '。
该问题似乎类似于以下 stackoverflow 问题:tensorflow-lite - using tflite Interpreter to get an image in output
处理浮点数据类型转换的相同问题似乎已在 github 问题中得到修复:https ://github.com/tensorflow/tensorflow/issues/23483
那么,我们如何才能正确地从 UINT8 模型输出中提取分割掩码呢?