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类定义的讲解
Nov 01 Python
Python使用bs4获取58同城城市分类的方法
Jul 08 Python
ubuntu系统下 python链接mysql数据库的方法
Jan 09 Python
总结python实现父类调用两种方法的不同
Jan 15 Python
win10下Python3.6安装、配置以及pip安装包教程
Oct 01 Python
python贪吃蛇游戏代码
Apr 18 Python
详解Python数据可视化编程 - 词云生成并保存(jieba+WordCloud)
Mar 26 Python
详解用pyecharts Geo实现动态数据热力图城市找不到问题解决
Jun 26 Python
Python 实现交换矩阵的行示例
Jun 26 Python
Pytorch使用MNIST数据集实现CGAN和生成指定的数字方式
Jan 10 Python
Python读取文件内容为字符串的方法(多种方法详解)
Mar 04 Python
用python自动生成日历
Apr 24 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
Protoss兵种对照表
2020/03/14 星际争霸
Laravel 4 初级教程之Pages、表单验证
2014/10/30 PHP
php使用str_replace实现输入框回车替换br的方法
2014/11/24 PHP
使用PHP+MySql+Ajax+jQuery实现省市区三级联动功能示例
2017/09/15 PHP
PHP获取日期对应星期、一周日期、星期开始与结束日期的方法
2018/06/22 PHP
基于jquery自己写tab滑动门(通用版)
2012/10/30 Javascript
javascript模拟select,jselect的方法实现
2012/11/08 Javascript
jQuery对象和Javascript对象之间转换的实例代码
2013/03/20 Javascript
jquery获取焦点和失去焦点事件代码
2013/04/21 Javascript
可自己添加html的伪弹出框实现代码
2013/09/08 Javascript
jquery css 设置table的奇偶行背景色示例
2014/06/03 Javascript
纯CSS3代码实现滑动开关效果
2015/08/19 Javascript
jQuery实现宽屏图片轮播实例教程
2015/11/24 Javascript
Jquery修改image的src属性,图片不加载问题的解决方法
2016/05/17 Javascript
简单实现js浮动框
2016/12/13 Javascript
了解VUE的render函数的使用
2017/06/08 Javascript
微信小程序视图template模板引用的实例详解
2017/09/20 Javascript
详解Angular5 路由传参的3种方法
2018/04/28 Javascript
layui获取选中行数据的实例讲解
2018/08/19 Javascript
React路由鉴权的实现方法
2019/09/05 Javascript
[06:49]2018DOTA2国际邀请赛寻真——VirtusPro傲视群雄
2018/08/12 DOTA
python根据出生日期返回年龄的方法
2015/03/26 Python
在Python的Django框架中加载模版的方法
2015/07/16 Python
对Python协程之异步同步的区别详解
2019/02/19 Python
python标识符命名规范原理解析
2020/01/10 Python
详解python命令提示符窗口下如何运行python脚本
2020/09/11 Python
美国在线宠物商店:Chewy
2019/01/12 全球购物
圣彼得堡鲜花配送:Semicvetic
2020/09/15 全球购物
《大江保卫战》教学反思
2014/04/11 职场文书
外联部演讲稿
2014/05/24 职场文书
于丹讲座视频观后感
2015/06/15 职场文书
结婚主持人致辞
2015/07/28 职场文书
Redis IP地址的绑定的实现
2021/05/08 Redis
Java基础之线程锁相关知识总结
2021/06/30 Java/Android
【海涛DOTA】D-cup邀请赛NV.cn vs DT.Love
2022/04/01 DOTA
Java由浅入深通关抽象类与接口(下篇)
2022/04/26 Java/Android