[openvino] tensorflow模型的格式转换:ckpt转pb
相关内容
- tensorflow模型的格式转换:ckpt转pb
tensorflow模型的格式转换:ckpt转pb
参考资料
ckpt转pb之不知输出节点
重新训练模型,在模型设置上增加节点命名,如:
net=tf.layers.conv1d(inputs=x, filters=256,kernel_size=3, strides=1, name="op_to_store")
记住,这边我们设置的输出节点是"op_to_store"
导入ckpt模型,转为graph
import tensorflow as tf
from tensorflow.python.platform import gfile
graph = tf.get_default_graph()
graphdef = graph.as_graph_def()
_ = tf.train.import_meta_graph(".meta文件的绝对路径")
summary_write = tf.summary.FileWriter("graph文件保存的路径", graph)
summary_write.close()
查看计算图,确认输出节点
在terminal中输入
tensorboard --logdir = graph的绝对路径
// 注意,logdir后面的路径不需要引号,路径不包括计算图的文件名
// 如 tensorboard --logdir = /home/my/
此时会获得tensorboard给出的网页地址,点击GRAPH即可查看计算图中的节点
转模型为.pb
注意,output_node_name为最开始设定的输出节点"op_to_store",input_checkpoint为输入的.meta的前缀,out_pb_path为输出pb模型的路径及文件名
如
output_node_name = "op_to_store"
.....
input_checkpoint = './best_model' // best_model.meta
out_pb_path = "./best_model_pb.pb"
可以在Netron软件中打开pb文件查看最后的效果