我从Tensorflow导入我的模型,只想使用以下代码优化训练模型:
input_graph_def = tf.GraphDef()
with tf.gfile.Open(output_frozen_graph_name, "r") as f:
data = f.read()
input_graph_def.ParseFromString(data)
output_graph_def = optimize_for_inference_lib.optimize_for_inference(
input_graph_def,
["input"],
["y_"],
tf.float32.as_datatype_enum)
f = tf.gfile.FastGFile("optimized_shoaib-har_agm.pb", "w")
f.write(output_graph_def.SerializeToString())
它显示了这个错误:
回溯(最近一次调用最后一次):文件“”,第2行,在data = f.read()文件“C:\ Users \ Chaine \ AppData \ Local \ Programs \ Python \ Python35 \ lib \ site-packages \ tensorflow \ python \ lib \ io \ file_io.py“,第125行,读取pywrap_tensorflow.ReadFromStream(self._read_buf,length,status))文件”C:\ Users \ Chaine \ AppData \ Local \ Programs \ Python \ Python35 \ lib \ site-packages \ tensorflow \ python \ lib \ io \ file_io.py“,第93行,在_prepare_value中返回compat.as_str_any(val)文件”C:\ Users \ Chaine \ AppData \ Local \ Programs \ Python \ Python35 \ lib \ site-packages \ tensorflow \ python \ util \ compat.py“,第106行,在as_str_any中返回as_str(value)文件”C:\ Users \ Chaine \ AppData \ Local \ Programs \ Python \ Python35 \ lib \ site-packages \ tensorflow \ python \ util \ compat.py“,第84行,在as_text中返回bytes_or_text.decode(encoding)UnicodeDecodeError:'utf-8'编解码器无法解码位置38的字节0xff:无效的起始字节
在它工作正常之前 . 我甚至已经将它导入Android Studio了 . 现在突然间我得到了这个例外 . 是因为我在我的机器上安装了什么东西?
我能够在我的智能手机上安装该应用程序,没有任何错误 . 现在它给了我错误 . 我使用相同的确切代码 .
1 回答
Python正在尝试解码文件“output_frozen_graph_name”中的所有字符 . 不确定文件中有什么变化,如果它之前适合你,但显然看起来有些字符不是'UTF-8'兼容 . 现在,它们可以是'UTF-16'或其他一些编解码格式 . 一种知道方法是以字节格式读取内容并自行解码 . 尝试阅读如下内容以检查内容: