我有一个 .pb 文件扩展名。我需要将此文件转换为 .tflite 才能在 Android 上使用它。但我从来没有这样做过。
我正在使用以下代码:
tflite_convert \
--output_file=/outputs/retrained_graph.tflite \
--graph_def_file=/inference_graph/frozen_inference_graph.pb \
--input_arrays=Mul \
--output_arrays=Softmax
我得到这样的错误:
2019-10-02 14:52:07.693744: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudart64_100.dll
usage: tflite_convert [-h] --output_file OUTPUT_FILE
(--saved_model_dir SAVED_MODEL_DIR | --keras_model_file KERAS_MODEL_FILE)
tflite_convert: error: one of the arguments --saved_model_dir --keras_model_file is required
谁能告诉我哪里出错了?我不确定输入和输出值,也不知道如何找到它,这可能是问题所在吗?
\research\object_detection\inference_graph :
最佳答案
tflite_convert
仅支持 keras 模型文件和保存的模型以转换为 TFLite。要转换 pb 文件,您有两种选择:
- 将您的 tensorflow 降级到 1.14 或更低版本。在那些
TFLiteConverters
中,支持 pb 文件转换。 - 否则,您可以使用
tf.compat.v1.TFLiteConverter
在 TF 2.0 中,如果您可以编写 Python 脚本和命令行转换。
关于python - Tensorflow 将 pb 文件转换为 tflite,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58201258/