使用tensorflow-lite时生成0 kb .tflite文件

问题描述 投票:0回答:1

我已经关注this网站来获取定制的对象分类器。由此,我得到了冻结的推理图、保存的模型、检查点和所有必要的数据。现在我想从这个模型生成一个 .tflite 文件以将其部署在 android studio 中。为此,我关注了 this 网站并使用了下面的代码。这给了我一个没有错误的 detector.tflite 文件。但该文件是空的(0kb)。我还使用网站提供的示例冻结图尝试了相同的代码。但结果是一样的。是因为我使用的是 Windows 10 而不是 Ubuntu 吗?

我还尝试了 toco build 和 tflite_convert,但没有任何效果。我还可以使用 CPU 从使用 GPU 训练的张量流模型创建 .tflite 文件吗?

bazel run -c opt tensorflow/lite/toco:toco -- --input_file=C:/tensorflow1/models/research/object_detection/sample_tflite_graph.pb --output_file=C:/tensorflow1/models/research/object_detection/sample_detect.tflite --input_shapes=1,300,300,3 --input_arrays=normalized_input_image_tensor --output_arrays='TFLite_Detection_PostProcess','TFLite_Detection_PostProcess:1','TFLite_Detection_PostProcess:2','TFLite_Detection_PostProcess:3' --inference_type=QUANTIZED_UINT8 --mean_values=128 --std_values=128 --change_concat_input_ranges=false --default_ranges_min=0 --default_ranges_max=6 --allow_custom_ops

(张量流1) C:\Users\devim\OneDrive\Documents\GitHub ensorflow>bazel 运行 张量流/lite/toco:toco -- --input_file=C:/tensorflow1/models/research/object_detection/sample_tflite_graph.pb --output_file=C:/tensorflow1/models/research/object_detection/sample_detect.tflite --input_shapes=1,300,300,3 --input_arrays=normalized_input_image_tensor --output_arrays='TFLite_Detection_PostProcess','TFLite_Detection_PostProcess:1','TFLite_Detection_PostProcess:2','TFLite_Detection_PostProcess:3' --inference_type=QUANTIZED_UINT8 --mean_values=128 --std_values=128 --change_concat_input_ranges=false --default_ranges_min=0 --default_ranges_max=6 --allow_custom_ops 调试:C:/users/devim/_bazel_devim/l7g3ilsc/external/build_bazel_rules_apple/苹果/repositories.bzl:35:5: 警告:

build_bazel_rules_apple
取决于加载的
bazel_skylib
来自 https://github.com/bazelbuild/bazel-skylib.git (标签 0.6.0),但是 我们检测到它已经从 None 加载到您的工作区(标签 没有任何)。您可能会遇到兼容性问题。为了消除这个警告, 将
ignore_version_differences = True
传递给
apple_rules_dependencies()

信息:分析目标 //tensorflow/lite/toco:toco (加载了 0 个包, 配置了 0 个目标)。信息:找到 1 个目标...目标 //tensorflow/lite/toco:toco 最新:
C:/users/devim/_bazel_devim/l7g3ilsc/execroot/org_tensorflow/bazel-out/x64_windows-opt/bin/tensorflow/lite/toco/toco.exe 信息:已用时间:8.960 秒,关键路径:0.02 秒信息:0 个进程。 信息:构建成功完成,总共 1 个操作信息:正在运行 命令行: C:/users/devim/_bazel_devim/l7g3ilsc/execroot/org_tensorflow/bazel-out/x64_windows-opt/bin/tensorflow/lite/toco/toco.exe '--input_file=C:/tensorflow1/models/research/object_detection/sample_tflite_graph.pb' '--output_file=C:/tensorflow1/models/research/object_detection/sample_detect.tflite' '--input_shapes=1,300,300,3' '--input_arrays=标准化_输入_图像_张量' '--output_arrays='\''TFLite_Detection_PostProcess'\'','\''TFLite_Detection_PostProcess:1'\'','\''TFLite_Detection_PostProcess:2'\'','\''TFLite_Detection_PostProcess:3'\'' ' '--inference_type=QUANTIZED_UINT8' '--mean_values=128' '--std_values=128' '--change_concat_input_ranges=false' '--defaulINFO: 构建成功完成,总共 1 个操作 2019-06-24 12:50:15.427241:我张量流/lite/toco/import_tensorflow.cc:1335] 转换不支持的操作:TFLite_Detection_PostProcess 2019-06-24 12:50:15.444580:我 tensorflow/lite/toco/import_tensorflow.cc:1384]无法确定 操作的输出类型:TFLite_Detection_PostProcess 2019-06-24 12:50:15.505002:Ftensorflow/lite/toco/tooling_util.cc:912]检查 失败:GetOpWithOutput(model, output_array) 指定输出数组 “'TFLite_Detection_PostProcess'”不是由此中的任何操作生成的 图形。是拼写错误吗?要静默此消息,请传递此标志: 允许不存在的数组

python tensorflow bazel tensorflow-lite toco
1个回答
0
投票

当使用 TensorFlow Lite 时遇到诸如生成 0Kb“.tflite”文件之类的问题时,可能有多种因素导致该问题。可以考虑的主要问题有:

  • 无效的输入数据:确保您的输入数据格式正确,符合 TensorFlow Lite 的输入要求
  • 文件权限:确保您拥有必要的权限来写入要保存“.tflite”文件的目录
  • 模型优化
  • 还检查错误或任何其他类型的警告
  • 尝试一个最小的例子
  • 确保您已下载所有依赖项
© www.soinside.com 2019 - 2024. All rights reserved.