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 相关文章推荐
Python2.6版本中实现字典推导 PEP 274(Dict Comprehensions)
Apr 28 Python
Python二分查找详解
Sep 13 Python
浅谈python对象数据的读写权限
Sep 12 Python
Python中实现switch功能实例解析
Jan 11 Python
Python3实现的简单工资管理系统示例
Mar 12 Python
Opencv+Python实现图像运动模糊和高斯模糊的示例
Apr 11 Python
使用Python实现企业微信的自动打卡功能
Apr 30 Python
PYcharm 激活方法(推荐)
Mar 23 Python
在python里创建一个任务(Task)实例
Apr 25 Python
python使用requests库爬取拉勾网招聘信息的实现
Nov 20 Python
Python使用Turtle模块绘制国旗的方法示例
Feb 28 Python
Django rest framework如何自定义用户表
Jun 09 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
简单的php 验证图片生成函数
2009/05/21 PHP
发款php蜘蛛统计插件只要有mysql就可用
2010/10/12 PHP
深入理解:XML与对象的序列化与反序列化
2013/06/08 PHP
php去除头尾空格的2种方法
2015/03/16 PHP
PHP基于Closure类创建匿名函数的方法详解
2017/08/17 PHP
LBS blog sql注射漏洞[All version]-官方已有补丁
2007/08/26 Javascript
JS 自动完成 AutoComplete(Ajax 查询)
2009/07/07 Javascript
Prototype Date对象 学习
2009/07/12 Javascript
经过绑定元素时会多次触发mouseover和mouseout事件
2014/02/28 Javascript
JS中setTimeout的巧妙用法前端函数节流
2016/03/24 Javascript
基于jquery实现轮播特效
2016/04/22 Javascript
ES6生成器用法实例分析
2017/04/10 Javascript
以v-model与promise两种方式实现vue弹窗组件
2018/05/21 Javascript
vue基础之事件简写、事件对象、冒泡、默认行为、键盘事件实例分析
2019/03/11 Javascript
JS实现的进制转换,浮点数相加,数字判断操作示例
2019/11/09 Javascript
原生js生成图片验证码
2020/10/11 Javascript
[01:18]一目了然!DOTA2DotA快捷操作对比第一弹
2014/07/01 DOTA
[39:11]DOTA2上海特级锦标赛C组资格赛#2 LGD VS Newbee第二局
2016/02/28 DOTA
Python中用altzone()方法处理时区的教程
2015/05/22 Python
简述Python中的进程、线程、协程
2016/03/18 Python
基于python生成器封装的协程类
2019/03/20 Python
使用Python实现将list中的每一项的首字母大写
2019/06/11 Python
python将字符串list写入excel和txt的实例
2019/07/20 Python
python numpy生成等差数列、等比数列的实例
2020/02/25 Python
Python用来做Web开发的优势有哪些
2020/08/05 Python
解决pip安装的第三方包在PyCharm无法导入的问题
2020/10/15 Python
html5实现移动端适配完美写法
2017/11/16 HTML / CSS
戴尔新西兰官网:Dell New Zealand
2020/01/07 全球购物
自我鉴定怎么写
2014/01/12 职场文书
小学毕业家长寄语
2014/01/19 职场文书
社团活动总结报告
2014/06/27 职场文书
科技工作者先进事迹
2014/08/16 职场文书
营销学习心得体会
2014/09/12 职场文书
商品陈列协议书
2014/09/29 职场文书
2014年作风建设工作总结
2014/10/29 职场文书
火烧圆明园的观后感
2015/06/03 职场文书