我已成功生成retrained_graph.pb和retrained_labels.txt模型。
但无法将模型转换为 TFLite 格式。
使用以下版本
tensorflow 1.12.0
tensorflow GPU 1.1.0
我们将不胜感激。
最佳答案
(1) 您可以使用tflite_convert
命令行工具来实现此目的。
从 TensorFlow 1.9 开始,命令行工具 tflite_convert
作为 Python 包的一部分安装。
请参阅https://www.tensorflow.org/lite/convert/cmdline_examples#command-line_tools_
您可以简单地尝试从命令行执行以下操作;
tflite_convert \
--output_file=/tmp/foo.tflite \
--graph_def_file=/tmp/frozen_graph.pb \
--input_arrays=input \
--output_arrays=output
--input_arrays 和 --output_arrays 的值是 TensorFlow 图中的输入和输出。
<小时/>(2) 您也可以尝试使用Python API将GraphDef转换为TFLite格式
请参阅从文件导出 graphdef https://www.tensorflow.org/lite/convert/python_api#exporting_a_graphdef_from_file_
您可以尝试这个模板;
import tensorflow as tf
graph_def_file = "/path/to/Downloads/your_model/frozen_graph.pb"
input_arrays = ["input"]
output_arrays = ["output"]
converter = tf.lite.TFLiteConverter.from_frozen_graph(
graph_def_file, input_arrays, output_arrays)
tflite_model = converter.convert()
open("converted_model.tflite", "wb").write(tflite_model)
请注意,它仅支持使用 freeze_graph.py 卡住的 GraphDefs .
希望这有帮助。
关于python - 导入错误: cannot import name model_fn: Tensorflow,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54107378/