TensorFlow实现打印每一层的输出


Posted in Python onJanuary 21, 2020

在test.py中可以通过如下代码直接生成带weight的pb文件,也可以通过tf官方的freeze_graph.py将ckpt转为pb文件。

constant_graph = graph_util.convert_variables_to_constants(sess, sess.graph_def,['net_loss/inference/encode/conv_output/conv_output'])
with tf.gfile.FastGFile('net_model.pb', mode='wb') as f:
  f.write(constant_graph.SerializeToString())

tf1.0中通过带weight的pb文件与get_tensor_by_name函数可以获取每一层的输出

import os
import os.path as ops
import argparse
import time
import math
 
import tensorflow as tf
import glob
import numpy as np
import matplotlib.pyplot as plt
import cv2
 
os.environ["CUDA_VISIBLE_DEVICES"] = "-1"
 
gragh_path = './model.pb'
image_path = './lvds1901.JPG'
inputtensorname = 'input_tensor:0'
tensorname = 'loss/inference/encode/resize_images/ResizeBilinear'
filepath='./net_output.txt'
HEIGHT=256
WIDTH=256
VGG_MEAN = [103.939, 116.779, 123.68]
 
with tf.Graph().as_default():
  graph_def = tf.GraphDef()
  with tf.gfile.GFile(gragh_path, 'rb') as fid:
    serialized_graph = fid.read()
    graph_def.ParseFromString(serialized_graph)
 
    tf.import_graph_def(graph_def, name='')
 
    image = cv2.imread(image_path)
    image = cv2.resize(image, (WIDTH, HEIGHT), interpolation=cv2.INTER_CUBIC)
    image_np = np.array(image)
    image_np = image_np - VGG_MEAN
    image_np_expanded = np.expand_dims(image_np, axis=0)
 
    with tf.Session() as sess:
      ops = tf.get_default_graph().get_operations()
      tensor_name = tensorname + ':0'
      tensor_dict = tf.get_default_graph().get_tensor_by_name(tensor_name)
      image_tensor = tf.get_default_graph().get_tensor_by_name(inputtensorname)
      output = sess.run(tensor_dict, feed_dict={image_tensor: image_np_expanded})
      
      ftxt = open(filepath,'w')
      transform = output.transpose(0, 3, 1, 2)
      transform = transform.flatten()
      weight_count = 0
      for i in transform:
        if weight_count % 10 == 0 and weight_count != 0:
          ftxt.write('\n')
        ftxt.write(str(i) + ',')
        weight_count += 1
      ftxt.close()

以上这篇TensorFlow实现打印每一层的输出就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python编码爬坑指南(必看)
Jun 10 Python
视觉直观感受若干常用排序算法
Apr 13 Python
Python实现调度算法代码详解
Dec 01 Python
python itchat实现调用微信接口的第三方模块方法
Jun 11 Python
python通过安装itchat包实现微信自动回复收到的春节祝福
Jan 19 Python
Tensorflow不支持AVX2指令集的解决方法
Feb 03 Python
使用PyQt的QLabel组件实现选定目标框功能的方法示例
May 19 Python
查看keras各种网络结构各层的名字方式
Jun 11 Python
Python Tkinter实例——模拟掷骰子
Oct 24 Python
python 递归相关知识总结
Mar 03 Python
Python实现简繁体转换
Jun 07 Python
pandas中关于apply+lambda的应用
Feb 28 Python
NumPy排序的实现
Jan 21 #Python
tensorflow实现在函数中用tf.Print输出中间值
Jan 21 #Python
Python实现随机生成任意数量车牌号
Jan 21 #Python
tensorflow模型继续训练 fineturn实例
Jan 21 #Python
tensorflow ckpt模型和pb模型获取节点名称,及ckpt转pb模型实例
Jan 21 #Python
tensorflow查看ckpt各节点名称实例
Jan 21 #Python
python同义词替换的实现(jieba分词)
Jan 21 #Python
You might like
图片存储与浏览一例(Linux+Apache+PHP+MySQL)
2006/10/09 PHP
php array_push()数组函数:将一个或多个单元压入数组的末尾(入栈)
2011/07/12 PHP
摘自织梦CMS的HTTP文件下载类
2015/08/08 PHP
PHP实现字符串的全排列详解
2019/04/24 PHP
javascript之AJAX框架使用说明
2010/04/24 Javascript
javascript SpiderMonkey中的函数序列化如何进行
2012/12/05 Javascript
JS前端框架关于重构的失败经验分享
2013/03/17 Javascript
关于jquery的多个选择器的使用示例
2013/10/18 Javascript
Javascript加载速度慢的解决方案
2014/03/11 Javascript
Javascript学习笔记之 对象篇(三) : hasOwnProperty
2014/06/24 Javascript
javascript实现html页面之间参数传递的四种方法实例分析
2015/12/15 Javascript
Markdown+Bootstrap图片自适应属性详解
2016/05/21 Javascript
使用bootstrap typeahead插件实现输入框自动补全之问题及解决办法
2016/07/07 Javascript
基于Vue.js实现数字拼图游戏
2016/08/02 Javascript
Angular.js中$apply()和$digest()的深入理解
2016/10/13 Javascript
javascript 操作cookies详解及实例
2017/02/22 Javascript
微信小程序 下拉列表的实现实例代码
2017/03/08 Javascript
vue使用自定义icon图标的方法
2018/05/14 Javascript
JavaScript封装的常用工具类库bee.js用法详解【经典类库】
2018/09/03 Javascript
js监听html页面的上下滚动事件方法
2018/09/11 Javascript
基于webpack4.X从零搭建React脚手架的方法步骤
2018/12/23 Javascript
JS前端知识点总结之内置对象,日期对象和定时器相关操作
2019/07/05 Javascript
layui--js控制switch的切换方法
2019/09/03 Javascript
vue-cli3自动消除console.log()的调试信息方式
2020/10/21 Javascript
原生JavaScript实现五子棋游戏
2020/11/09 Javascript
ES2020让代码更优美的运算符 (?.) (??)
2021/01/04 Javascript
python获取糗百图片代码实例
2013/12/18 Python
pygame学习笔记(5):游戏精灵
2015/04/15 Python
Numpy数组转置的两种实现方法
2018/04/17 Python
python实现简单成绩录入系统
2019/09/19 Python
Python中的整除和取模实例
2020/06/03 Python
如何转换一个字符串到enum值
2014/04/12 面试题
我的梦想演讲稿1000字
2014/08/21 职场文书
2015大学生自我评价范文
2015/03/03 职场文书
起诉书范文
2015/05/20 职场文书
演讲稿之感恩老师(三篇范文)
2019/09/06 职场文书