tensorflow ckpt模型和pb模型获取节点名称,及ckpt转pb模型实例


Posted in Python onJanuary 21, 2020

ckpt

from tensorflow.python import pywrap_tensorflow 
checkpoint_path = 'model.ckpt-8000' 
reader = pywrap_tensorflow.NewCheckpointReader(checkpoint_path) 
var_to_shape_map = reader.get_variable_to_shape_map() 
for key in var_to_shape_map: 
 print("tensor_name: ", key)

pb

import tensorflow as tf
import os

model_name = './mobilenet_v2_140_inf_graph.pb'

def create_graph():
 with tf.gfile.FastGFile(model_name, 'rb') as f:
  graph_def = tf.GraphDef()
  graph_def.ParseFromString(f.read())
  tf.import_graph_def(graph_def, name='')

create_graph()
tensor_name_list = [tensor.name for tensor in tf.get_default_graph().as_graph_def().node]
for tensor_name in tensor_name_list:
 print(tensor_name,'\n')

ckpt转pb

def freeze_graph(input_checkpoint,output_graph):
 '''
 :param input_checkpoint:
 :param output_graph: PB模型保存路径
 :return:
 '''
 output_node_names = "xxx"
 saver = tf.train.import_meta_graph(input_checkpoint + '.meta', clear_devices=True)
 graph = tf.get_default_graph()
 input_graph_def = graph.as_graph_def()
 with tf.Session() as sess:
  saver.restore(sess, input_checkpoint)
  output_graph_def = graph_util.convert_variables_to_constants( 
   sess=sess,
   input_graph_def=input_graph_def,# 等于:sess.graph_def
   output_node_names=output_node_names.split(","))
  with tf.gfile.GFile(output_graph, "wb") as f:
   f.write(output_graph_def.SerializeToString()) 
  print("%d ops in the final graph." % len(output_graph_def.node)) 
 
  for op in graph.get_operations():
   print(op.name, op.values())

以上这篇tensorflow ckpt模型和pb模型获取节点名称,及ckpt转pb模型实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python编程中的文件读写及相关的文件对象方法讲解
Jan 19 Python
使用Python内置的模块与函数进行不同进制的数的转换
Mar 12 Python
利用Python实现Windows定时关机功能
Mar 21 Python
python+pillow绘制矩阵盖尔圆简单实例
Jan 16 Python
利用Pycharm断点调试Python程序的方法
Nov 29 Python
利用python和ffmpeg 批量将其他图片转换为.yuv格式的方法
Jan 08 Python
对Python使用mfcc的两种方式详解
Jan 09 Python
Django利用cookie保存用户登录信息的简单实现方法
May 27 Python
django 邮件发送模块smtp使用详解
Jul 22 Python
seek引发的python文件读写的问题及解决
Jul 26 Python
Python3自动生成MySQL数据字典的markdown文本的实现
May 07 Python
opencv 图像腐蚀和图像膨胀的实现
Jul 07 Python
tensorflow查看ckpt各节点名称实例
Jan 21 #Python
python同义词替换的实现(jieba分词)
Jan 21 #Python
tensorflow模型保存、加载之变量重命名实例
Jan 21 #Python
tensorflow实现测试时读取任意指定的check point的网络参数
Jan 21 #Python
tensorflow如何继续训练之前保存的模型实例
Jan 21 #Python
在tensorflow中设置保存checkpoint的最大数量实例
Jan 21 #Python
TensorFlow——Checkpoint为模型添加检查点的实例
Jan 21 #Python
You might like
PHP 开发工具
2006/12/06 PHP
PHP令牌 Token改进版
2008/07/18 PHP
linux下编译安装memcached服务
2014/08/03 PHP
分享微信扫码支付开发遇到问题及解决方案-附Ecshop微信支付插件
2015/08/23 PHP
php+ajax 文件上传代码实例
2019/03/18 PHP
JavaScript是否可实现多线程  深入理解JavaScript定时机制
2009/12/22 Javascript
一个简单的js动画效果代码
2010/07/20 Javascript
jQuery+css+html实现页面遮罩弹出框
2013/03/21 Javascript
判断js对象是否拥有某一个属性的js代码
2013/08/16 Javascript
jquery.autocomplete修改实现键盘上下键自动填充示例
2013/11/19 Javascript
node.js解决获取图片真实文件类型的问题
2014/12/20 Javascript
使用AngularJS对路由进行安全性处理的方法
2015/06/18 Javascript
web 屏蔽BackSpace键实例代码
2016/12/24 Javascript
Vue.js实现列表清单的操作方法
2017/11/15 Javascript
Vue 组件(component)教程之实现精美的日历方法示例
2018/01/08 Javascript
JS求Number类型数组中最大元素方法
2018/04/08 Javascript
vue 配置多页面应用的示例代码
2018/10/22 Javascript
JS 验证码功能的三种实现方式
2018/11/26 Javascript
javascript验证form表单数据的案例详解
2019/03/25 Javascript
使用 vue 实现灭霸打响指英雄消失的效果附demo
2019/05/06 Javascript
vue 引用自定义ttf、otf、在线字体的方法
2019/05/09 Javascript
微信浏览器下拉黑边解决方案 wScroollFix
2020/01/21 Javascript
python代码打印100-999之间的回文数示例
2019/11/24 Python
pytorch中tensor.expand()和tensor.expand_as()函数详解
2019/12/27 Python
Python CategoricalDtype自定义排序实现原理解析
2020/09/11 Python
Python爬虫爬取微博热搜保存为 Markdown 文件的源码
2021/02/22 Python
五分钟学会HTML5的WebSocket协议
2019/11/22 HTML / CSS
Currentbody美国/加拿大:美容仪专家
2020/03/09 全球购物
怎样让char类型的东西转换成int类型
2013/12/09 面试题
介绍一下linux的文件系统
2015/10/06 面试题
医学检验专业个人求职信范文
2013/12/04 职场文书
老干部局2015年度工作总结
2015/10/22 职场文书
红灯733-1型14管5波段半导体收音机
2021/04/22 无线电
帮你提高开发效率的JavaScript20个技巧
2021/06/18 Javascript
Python  lambda匿名函数和三元运算符
2022/04/19 Python
sql查询语句之平均分、最高最低分及排序语句
2022/05/30 MySQL