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实现批量监控网站
Sep 09 Python
详解Python开发中如何使用Hook技巧
Nov 01 Python
用Python删除本地目录下某一时间点之前创建的所有文件的实例
Dec 14 Python
django 将model转换为字典的方法示例
Oct 16 Python
Python常见读写文件操作实例总结【文本、json、csv、pdf等】
Apr 15 Python
python实现ip代理池功能示例
Jul 05 Python
python求最大值,不使用内置函数的实现方法
Jul 09 Python
python文字和unicode/ascll相互转换函数及简单加密解密实现代码
Aug 12 Python
Python获取一个用户名的组ID过程解析
Sep 03 Python
Python全栈之列表数据类型详解
Oct 01 Python
详解Scrapy Redis入门实战
Nov 18 Python
PyMongo 查询数据的实现
Jun 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
php遍历文件夹下的所有文件和子文件夹示例
2014/03/20 PHP
表单提交错误后返回内容消失问题的解决方法(PHP网站)
2015/10/20 PHP
PHP扩展迁移为PHP7扩展兼容性问题记录
2016/02/15 PHP
JavaScript 在各个浏览器中执行的耐性
2009/04/06 Javascript
40款非常棒的jQuery 插件和制作教程(系列一)
2011/10/26 Javascript
JavaScript弹出新窗口并控制窗口移动到指定位置的方法
2015/04/06 Javascript
浅谈Javascript数组索引
2015/07/29 Javascript
原生javascript上传图片带进度条【实例分享】
2017/04/06 Javascript
JavaScript字符串检索字符的方法
2017/06/23 Javascript
js图片放大镜实例讲解(必看篇)
2017/07/17 Javascript
nodejs简单实现TCP服务器端和客户端的聊天功能示例
2018/01/04 NodeJs
axios全局请求参数设置,请求及返回拦截器的方法
2018/03/05 Javascript
深入理解js 中async 函数的含义和用法
2018/05/13 Javascript
浅谈使用mpvue开发小程序需要注意和了解的知识点
2018/05/23 Javascript
详解vue axios二次封装
2018/07/22 Javascript
vue 2.1.3 实时显示当前时间,每秒更新的方法
2018/09/16 Javascript
vue使用axios上传文件(FormData)的方法
2019/04/14 Javascript
JavaScript中常用的3种弹出提示框(alert、confirm、prompt)
2020/11/10 Javascript
在Python中用has_key()方法查找键是否存在的教程
2015/05/21 Python
详解Python打包分发工具setuptools
2019/08/05 Python
Pycharm连接远程服务器过程图解
2020/04/30 Python
css3截图_动力节点Java学院整理
2017/07/11 HTML / CSS
深入CSS3 动画效果的总结详解
2013/05/09 HTML / CSS
纯css3制作的火影忍者写轮眼开眼至轮回眼及进化过程实例
2014/11/11 HTML / CSS
纯html5+css3下拉导航菜单实现代码
2013/03/18 HTML / CSS
移动端开发HTML5页面点击按钮后出现闪烁或黑色背景的解决办法
2018/09/19 HTML / CSS
HTML5 播放 RTSP 视频的实例代码
2019/07/29 HTML / CSS
2014年医学生毕业自我鉴定
2014/03/26 职场文书
英语分层教学实施方案
2014/06/15 职场文书
教师党员批评与自我批评
2014/10/15 职场文书
先进个人申报材料
2014/12/30 职场文书
给老婆道歉的话
2015/01/20 职场文书
教师个人学习总结
2015/02/11 职场文书
MySQL 使用索引扫描进行排序
2021/06/20 MySQL
python中pd.cut()与pd.qcut()的对比及示例
2022/06/16 Python
mysql通过group by分组取最大时间对应数据的两种有效方法
2022/09/23 MySQL