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 相关文章推荐
使用django-suit为django 1.7 admin后台添加模板
Nov 18 Python
Python实现Linux中的du命令
Jun 12 Python
Python遍历某目录下的所有文件夹与文件路径
Mar 15 Python
Python DataFrame.groupby()聚合函数,分组级运算
Sep 18 Python
用Python编写一个简单的CS架构后门的方法
Nov 20 Python
Python调用.NET库的方法步骤
Dec 27 Python
python实现udp聊天窗口
Mar 31 Python
用Python在Excel里画出蒙娜丽莎的方法示例
Apr 28 Python
python 识别登录验证码图片功能的实现代码(完整代码)
Jul 03 Python
pytorch中的model.eval()和BN层的使用
May 22 Python
python爬取豆瓣电影TOP250数据
May 23 Python
详解Python中*args和**kwargs的使用
Apr 07 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设计模式 Bridge (桥接模式)
2011/06/26 PHP
关于php支持分块与断点续传文件下载功能代码
2014/05/09 PHP
基于PHP的简单采集数据入库程序【续篇】
2014/07/30 PHP
基于PHP技术开发客服工单系统
2016/01/06 PHP
Javascript保存网页为图片借助于html2canvas库实现
2014/09/05 Javascript
javascript+HTML5的Canvas实现Lab单车动画效果
2015/08/07 Javascript
javascript每日必学之条件分支
2016/02/17 Javascript
在AngularJS中使用jQuery的zTree插件的方法
2016/04/21 Javascript
jQuery实现背景弹性滚动的导航效果
2016/06/01 Javascript
JS仿京东移动端手指拨动切换轮播图效果
2020/04/10 Javascript
纯原生js实现table表格的增删
2017/01/05 Javascript
详解vue静态资源打包中的坑与解决方案
2018/02/05 Javascript
JavaScript实现正则去除a标签并保留内容的方法【测试可用】
2018/07/18 Javascript
使用vue实现各类弹出框组件
2019/07/03 Javascript
[01:10:48]完美世界DOTA2联赛PWL S2 GXR vs PXG 第一场 11.18
2020/11/18 DOTA
Python实现简单HTML表格解析的方法
2015/06/15 Python
深入讲解Python中的迭代器和生成器
2015/10/26 Python
python中urlparse模块介绍与使用示例
2017/11/19 Python
centos 安装python3.6环境并配置虚拟环境的详细教程
2018/02/22 Python
python自动截取需要区域,进行图像识别的方法
2018/05/17 Python
django 自定义过滤器的实现
2019/02/26 Python
Python字典深浅拷贝与循环方式方法详解
2020/02/09 Python
CSS3弹性伸缩布局之box布局
2016/07/12 HTML / CSS
HTML5 input placeholder 颜色修改示例
2014/05/30 HTML / CSS
车库门开启器、遥控器和零件:Chamberlain
2019/04/09 全球购物
葡萄牙航空官方网站:TAP Air Portugal
2019/10/31 全球购物
介绍下WebSphere的安全性
2013/01/31 面试题
中专毕业生自我鉴定范文
2013/11/09 职场文书
大学生自我评价范文分享
2014/02/21 职场文书
学习雷锋演讲稿
2014/05/10 职场文书
商业企业管理专业求职信
2014/07/10 职场文书
谢师宴学生致辞
2015/07/27 职场文书
你知道哪几种MYSQL的连接查询
2021/06/03 MySQL
MySQL数据库完全卸载的方法
2022/03/03 MySQL
Python通过loop.run_in_executor执行同步代码 同步变为异步
2022/04/11 Python
浅谈Redis变慢的原因及排查方法
2022/06/21 Redis