1

我有以下文件: 1. retrained_graph.pb 2. retrained_labels.txt 3. _retrain_checkpoint.meta 4. _retrain_checkpoint.index 5. _retrain_checkpoint.data-00000-of-00001 6. checkpoint

执行的命令:

python freeze_graph.py 
--input_graph=/Users/saurav/Desktop/example/tmp/retrained_graph.pb 
--input_checkpoint=./_retrain_checkpoint 
--output_graph=/Users/saurav/Desktop/example/tmp/frozen_graph.pb --output_node_names=softmax

出现错误: UnicodeDecodeError:“utf-8”编解码器无法解码位置 44 中的字节 0xff:无效的起始字节

以下是截图: 在此处输入图像描述

4

1 回答 1

1

最后我找到了答案。要冻结您需要使用“bazel”构建的图形。1.使用自制软件安装bazel。brew install bazel 2. 如果您没有自制软件,请安装它。

/usr/bin/ruby -e "$(curl -fsSL \
https://raw.githubusercontent.com/Homebrew/install/master/install)" 
  1. 通过命令克隆 tensorflowgit clone https://github.com/tensorflow/tensorflow
  2. 在终端中将目录更改为 tensorflow
  3. 运行命令./配置。它会根据您的需要询问几个问题。他们中的大多数你可以输入“NO”。它会询问 Python 的默认路径,您需要指定路径或点击“回车”。
  4. 现在使用命令为 freeze_graph 构建 bazel: bazel build tensorflow/python/tools:freeze_graph
  5. 将重新训练的图形和检查点保存在文件夹中。
  6. 运行 bazel 命令以冻结图形。

bazel-bin/tensorflow/python/tools/freeze_graph \ --input_graph=YouDirectory/retrained_graph.pb \ --input_checkpoint=YouDirectory/_retrain_checkpoint \ --output_graph=YouDirectory/frozen_graph.pb

于 2018-09-11T10:30:29.653 回答