我们可以在使用Tensor流模型时使用.pbtxt而不是.pb文件

时间:2017-08-22 17:26:42

标签: android python tensorflow

我创建了一个生成.pbtxt文件的Tensorflow模型。我是否可以使用此文件构建Android应用程序,以通过将其重命名为.pb文件来使用生成的模型。

在此先感谢。

2 个答案:

答案 0 :(得分:8)

如果target文件实际上是TensorFlow图形的文本表示,那么不,Android API目前不接受,而是需要图形的二进制表示。

也就是说,如果你有.pbtxt文件,你可以轻松地将它转换为带有几行Python的二进制协议缓冲区:

.pbtxt

或者,如果您控制生成import tensorflow as tf from google.protobuf import text_format with open('/tmp/myfile.pbtxt') as f: txt = f.read() gdef = text_format.Parse(txt, tf.GraphDef()) tf.train.write_graph(gdef, '/tmp', 'myfile.pb', as_text=False) 文件的管道,或许您可以更改它以二进制格式写出文件?

希望有所帮助。

答案 1 :(得分:0)

您似乎可以找到答案here,但首先需要.ckpt文件。

  

cmd为模型释放图形,注意输出节点名称,可以从.pbtxt文件中获取。

    a   b
0   1   b
1   2   5.0
2   3   6.0

您可以在Android应用中将此命令作为gradle任务运行。