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实现115网盘自动下载的方法
Sep 30 Python
python中的装饰器详解
Apr 13 Python
python 接口返回的json字符串实例
Mar 27 Python
两个元祖T1=('a', 'b'),T2=('c', 'd')使用匿名函数将其转变成[{'a': 'c'},{'b': 'd'}]的几种方法
Mar 05 Python
Python实现的统计文章单词次数功能示例
Jul 08 Python
wxPython绘图模块wxPyPlot实现数据可视化
Nov 19 Python
下载与当前Chrome对应的chromedriver.exe(用于python+selenium)
Jan 14 Python
python orm 框架中sqlalchemy用法实例详解
Feb 02 Python
用Python做一个久坐提醒小助手的示例代码
Feb 10 Python
python实现的分层随机抽样案例
Feb 25 Python
python装饰器实现对异常代码出现进行自动监控的实现方法
Sep 15 Python
Python合并pdf文件的工具
Jul 01 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
Array of country list in PHP with Zend Framework
2011/10/17 PHP
PHP+Ajax异步通讯实现用户名邮箱验证是否已注册( 2种方法实现)
2011/12/28 PHP
php数据库备份还原类分享
2014/03/20 PHP
可缩放Reloaded-一个针对可缩放元素的复用组件
2007/03/10 Javascript
js 匿名调用实现代码
2009/06/19 Javascript
JQuery的ready函数与JS的onload的区别详解
2013/11/21 Javascript
禁用Tab键JS代码兼容Firefox和IE
2014/04/18 Javascript
angularjs中的单元测试实例
2014/12/06 Javascript
javascript中Date对象的getDay方法使用指南
2014/12/22 Javascript
原生javascript实现简单的datagrid数据表格
2015/01/02 Javascript
AngularJS转换响应内容
2016/01/27 Javascript
详解js实现线段交点的三种算法
2016/08/09 Javascript
基于jQuery实现歌词滚动版音乐播放器的代码
2016/09/17 Javascript
原生js实现回复评论功能
2017/01/18 Javascript
js实现打地鼠小游戏
2017/02/13 Javascript
正则 js分转元带千分符号详解
2017/03/08 Javascript
jQuery设置图片等比例缩小的方法
2017/04/29 jQuery
Vue数组更新及过滤排序功能
2017/08/10 Javascript
Vue 监听列表item渲染事件方法
2018/09/06 Javascript
详解angular2.x创建项目入门指令
2018/10/11 Javascript
JavaScript中的 new 命令
2019/05/22 Javascript
JQuery中的常用事件、对象属性与使用方法分析
2019/12/23 jQuery
[44:26]DOTA2上海特级锦标赛主赛事日 - 2 胜者组第一轮#4EG VS Fnatic第二局
2016/03/03 DOTA
python实现字符串和日期相互转换的方法
2015/05/13 Python
PyTorch中topk函数的用法详解
2020/01/02 Python
Python判断远程服务器上Excel文件是否被人打开的方法
2020/07/13 Python
美国网上订购鲜花:FTD
2016/09/23 全球购物
莫斯科隐形眼镜网上商店:Linzi
2019/07/22 全球购物
在什么时候需要使用"常引用"
2015/12/31 面试题
nohup的用法
2014/08/10 面试题
英文版区域经理求职信
2013/10/23 职场文书
金融行业职业生涯规划范文
2014/01/17 职场文书
体育运动口号
2014/06/09 职场文书
旅游项目合作意向书
2015/05/08 职场文书
离职告别感言
2015/08/04 职场文书
2016年庆祝六一儿童节活动总结
2016/04/06 职场文书