TensorFlow实现checkpoint文件转换为pb文件


Posted in Python onFebruary 10, 2020

由于项目需要,需要将TensorFlow保存的模型从ckpt文件转换为pb文件。

import os
from tensorflow.python import pywrap_tensorflow
from net2use import inception_resnet_v2_small#这里使用自己定义的模型函数即可
import tensorflow as tf
if __name__=='__main__':
  pb_file = "./model/output.pb"
  ckpt_file = "./model/model.ckpt-652900"
  '''
这里的节点名字可能跟设想的有出入,最直接的方法是直接输出ckpt中保存的节点名字,然后对应着找节点名字,具体的进入convert_variables_to_constants函数的实现中graph_util_impl.py,130行的函数:_assert_nodes_are_present 添加代码
  print('在图中的节点是:')
  for din in name_to_node:
    print('{},在图中'.format(din))
然后运行代码,若正确就会直接保存;若失败则会保存失败,找好输出节点的名字,在output_node_names 中添加就好
'''
  output_node_names = ["embedding"]

  with tf.name_scope('input'):
    image = tf.placeholder(tf.float32,shape=(None,79,199,1),name='input_image')


  net, endpoints=inception_resnet_v2_small(image, is_training=False)
  embedding = tf.nn.l2_normalize(net,1,1e-10,name='embedding')

  config=tf.ConfigProto(allow_soft_placement=True)
  config.gpu_options.per_process_gpu_memory_fraction = 0.45
  sess = tf.Session(config = config)
  saver = tf.train.Saver()
  saver.restore(sess, ckpt_file)
  print('read success')
  converted_graph_def = tf.graph_util.convert_variables_to_constants(sess,
                input_graph_def = sess.graph.as_graph_def(),
                output_node_names = output_node_names)

  with tf.gfile.GFile(pb_file, "wb") as f:
    f.write(converted_graph_def.SerializeToString())

  print('保存成功')

以上这篇TensorFlow实现checkpoint文件转换为pb文件就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python删除特定文件的方法
Jul 30 Python
用python写的一个wordpress的采集程序
Feb 27 Python
用python处理图片实现图像中的像素访问
May 04 Python
python numpy格式化打印的实例
May 14 Python
多个应用共存的Django配置方法
May 30 Python
python+flask实现API的方法
Nov 21 Python
浅谈pyqt5中信号与槽的认识
Feb 17 Python
python3中类的继承以及self和super的区别详解
Jun 26 Python
解决python tkinter界面卡死的问题
Jul 17 Python
Django工程的分层结构详解
Jul 18 Python
python编写计算器功能
Oct 25 Python
Python3如何使用tabulate打印数据
Sep 25 Python
Django关于admin的使用技巧和知识点
Feb 10 #Python
Python实现括号匹配方法详解
Feb 10 #Python
Python re正则表达式元字符分组()用法分享
Feb 10 #Python
Tensorflow: 从checkpoint文件中读取tensor方式
Feb 10 #Python
Python获取、格式化当前时间日期的方法
Feb 10 #Python
Python3操作MongoDB增册改查等方法详解
Feb 10 #Python
Python实现结构体代码实例
Feb 10 #Python
You might like
PHP实现对png图像进行缩放的方法(支持透明背景)
2015/07/15 PHP
PHP实现用户异地登录提醒功能的方法【基于thinkPHP框架】
2018/03/15 PHP
Laravel框架生命周期与原理分析
2018/06/12 PHP
javascript显示选择目录对话框的代码
2008/11/10 Javascript
jquery的extend和fn.extend的使用说明
2011/01/09 Javascript
ASP.NET jQuery 实例9  通过控件hyperlink实现返回顶部效果
2012/02/03 Javascript
js判断页面中是否有指定控件的简单实例
2014/03/04 Javascript
jquery简单的弹出层浮动层代码
2015/04/27 Javascript
Jquery Mobile 自定义按钮图标
2015/11/18 Javascript
node-http-proxy修改响应结果实例代码
2016/06/06 Javascript
js转换对象为xml
2017/02/17 Javascript
angular+webpack2实战例子
2017/05/23 Javascript
详解HTTPS 的原理和 NodeJS 的实现
2017/07/04 NodeJs
js实现从左向右滑动式轮播图效果
2017/07/07 Javascript
Angular4自制一个市县二级联动组件示例
2017/11/21 Javascript
swiper 解决动态加载数据滑动失效的问题
2018/02/26 Javascript
Vue组件内部实现一个双向数据绑定的实例代码
2019/04/04 Javascript
vue element-ui table组件动态生成表头和数据并修改单元格格式 父子组件通信
2019/08/15 Javascript
0基础学习前端开发的一些建议
2020/07/14 Javascript
vuejs实现下拉框菜单选择
2020/10/23 Javascript
[02:32]DOTA2亚洲邀请赛 C9战队出场宣传片
2015/02/07 DOTA
Python基于csv模块实现读取与写入csv数据的方法
2018/01/18 Python
python切片及sys.argv[]用法详解
2018/05/25 Python
python实现机器学习之元线性回归
2018/09/06 Python
selenium+python自动化测试之使用webdriver操作浏览器的方法
2019/01/23 Python
如何在Python中实现goto语句的方法
2019/05/18 Python
python遍历文件目录、批量处理同类文件
2019/08/31 Python
在Python中等距取出一个数组其中n个数的实现方式
2019/11/27 Python
详解Python中的编码问题(encoding与decode、str与bytes)
2020/09/30 Python
HTML5 source标签:媒介元素定义媒介资源
2018/01/29 HTML / CSS
香港艺人陈冠希创办的潮流品牌:JUICESTORE
2021/03/04 全球购物
高三自我鉴定怎么写
2013/10/19 职场文书
外贸销售员求职的自我评价
2013/11/23 职场文书
工作鉴定评语
2014/05/04 职场文书
井冈山红色之旅感想
2014/10/07 职场文书
演讲比赛主持词
2015/06/29 职场文书