将InceptionV3 PB文件转换为tflite

时间:2019-01-14 08:02:55

标签: tensorflow toco

我正在尝试使用TOCO将InceptionV3模型从pb文件转换为tflite文件。我使用以下命令:

tflite_convert --output_file=/home/luca/Scrivania/prova.tflite --graph_def_file=/home/luca/Scrivania/inception_v3_2016_08_28_frozen.pb/inception_v3_2016_08_28_frozen.pb --input_arrays=input --output_arrays="InceptionV3/Predictions/Reshape_1:0"

但是我收到以下错误消息:

ValueError: Invalid tensors 'InceptionV3/Predictions/Reshape_1:0' were found.

我该如何解决?

2 个答案:

答案 0 :(得分:1)

此错误表示您提供的output_array不正确。通常,InceptionV3模型的输出数组为InceptionV3/Predictions/Reshape

如果这不起作用,则下一步是在TensorBoard中可视化TensorFlow .pb模型并寻找输出数组。

答案 1 :(得分:0)

如果您想知道“ --output_arrays =”。在Frozen_inference_graph.pb文件夹所在的位置创建一个python文件,然后将此代码粘贴到py

import tensorflow as tf
gf = tf.GraphDef()
m_file = open('tflite_graph.pb','rb')
gf.ParseFromString(m_file.read())

with open('somefile.txt', 'a') as the_file:
    for n in gf.node:
        the_file.write(n.name+'\n')

file = open('somefile.txt','r')
data = file.readlines()
print ("output name = ")
print (data[len(data)-1])

print ("Input name = ")
file.seek ( 0 )
print (file.readline())

运行文件后,它将显示input_arrays和output_arrays。

进一步的信息检查:How to convert .pb to TFLite format?