tensorflow对图像进行拼接的例子


Posted in Python onFebruary 05, 2020

tensorflow对图像进行多个块的行列拼接tf.concat(), tf.stack()

在深度学习过程中,通过卷积得到的图像块大小是8×8×1024的图像块,对得到的图像块进行reshape得到[8×8]×[32×32],其中[8×8]是图像块的个数,[32×32]是小图像的大小。通过tf.concat对小块的图像进行拼接。

-在做图像卷积的过程中,做了这样一个比较麻烦的拼接,现在还没想到更好的拼接方法,因为是块拼接,开始的时候使用了reshape,但是得到的结果不对,需要确定清楚数据的维度,对于数据的维度很是问题。

import tensorflow as tf
def tensor_concat(f, axis):
 x1 = f[0, :, :]
 for i in range(1, 8):
  x1 = tf.concat([x1, f[i, :, :]], axis=axis)
 return x1

def block_to_image(f): 
 x1 = tf.reshape(f, [64, 1024])
 x1 = tf.reshape(x1, [64, 32, 32])
 m2 = tensor_concat(x1[0:8, :, :], axis=1)
 for i in range(1, 8):
  m1 = tensor_concat(x1[i*8:(i+1)*8, :, :], axis=1)
  m2 = tf.concat([m2, m1], axis=0)
 x2 = tf.reshape(m2, [256, 256, 1])
 return x2

x = tf.random_normal([ 8, 8, 1024])
with tf.Session() as sess:
 m = sess.run(x)
 m1 = sess.run(block_to_image(m))

最后通过行拼接和列拼接得到图像大小为256×256×1大小的图像。

对[batch_size, height, weight, channel] 的图像进行1一样的图像块拼接:

在深度神经网络中,会有batch_size个图像大小[256×256×1]的图像进行块的拼接,对于多了一个维度的图像拼接起来,由[batch_size, 8, 8, 1024]拼接为[batch_size,256, 256, 1]。在做着部分时batch_size这部分实在是不知道怎么处理,所以还是用了本办法,使用的函数是append和tf.stack()

def tensor_concat(f, axis):
 x1 = f[0, :, :]
 for i in range(1, 8):
  x1 = tf.concat([x1, f[i, :, :]], axis=axis)
 return x1

def block_to_image(f):
 x3 =[]
 for k in range(f.shape[0]):
  x = f[k, :, :, :]
  x1 = tf.reshape(x, [64, 1024])
  x1 = tf.reshape(x1, [64, 32, 32])
  m2 = tensor_concat(x1[0:8, :, :], axis=1)
  for i in range(1, 8):
   m1 = tensor_concat(x1[i*8:(i+1)*8, :, :], axis=1)
   m2 = tf.concat([m2, m1], axis=0)
  x2 = tf.reshape(m2, [256, 256, 1])
  x3.append(x2)
  x4 = tf.stack(x3)
 return x4 
x = tf.random_normal([10, 8, 8, 1024])
with tf.Session() as sess:
 m = sess.run(x)
 m1 = sess.run(block_to_image1(m))

在学习过程中对tensor不能直接赋值,比如不能写:

x2 = tf.reshape(m2, [256, 256, 1]) 

x3[k, :, :, 1] = x2

这样的代码,会出现错误:'Tensor' object does not support item assignment

对于带有类似索引的赋值,参考的办法是:

x3 = [] 

x3.append(x2)

这时候得到的是list的格式,所以接下来将list转化为array,使用的是tf.stack(x3)

以上这篇tensorflow对图像进行拼接的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 获取本机ip地址的两个方法
Feb 25 Python
Python实现感知器模型、两层神经网络
Dec 19 Python
代码分析Python地图坐标转换
Feb 08 Python
TensorFlow实现Softmax回归模型
Mar 09 Python
python实现彩票系统
Jun 28 Python
Python从Excel中读取日期一列的方法
Nov 28 Python
彻底理解Python中的yield关键字
Apr 01 Python
TensorFlow 输出checkpoint 中的变量名与变量值方式
Feb 11 Python
Pytest参数化parametrize使用代码实例
Feb 22 Python
python+adb命令实现自动刷视频脚本案例
Apr 23 Python
python如何在word中存储本地图片
Apr 07 Python
python代码实现扫码关注公众号登录的实战
Nov 01 Python
Python抓新型冠状病毒肺炎疫情数据并绘制全国疫情分布的代码实例
Feb 05 #Python
Python实现新型冠状病毒传播模型及预测代码实例
Feb 05 #Python
基于Tensorflow批量数据的输入实现方式
Feb 05 #Python
Python操作注册表详细步骤介绍
Feb 05 #Python
Python类继承和多态原理解析
Feb 05 #Python
Python模块 _winreg操作注册表
Feb 05 #Python
python3操作注册表的方法(Url protocol)
Feb 05 #Python
You might like
全国FM电台频率大全 - 20 广西省
2020/03/11 无线电
作为PHP程序员应该了解MongoDB的五件事
2013/06/03 PHP
PHP用星号隐藏部份用户名、身份证、IP、手机号等实例
2014/04/08 PHP
PHP数组相关函数汇总
2015/03/24 PHP
Symfony2联合查询实现方法
2016/03/18 PHP
PHP使用数组实现矩阵数学运算的方法示例
2017/05/29 PHP
利用Laravel生成Gravatar头像地址的优雅方法
2017/12/30 PHP
Nigma vs Liquid BO3 第一场2.14
2021/03/10 DOTA
12306验证码破解思路分享
2015/03/25 Javascript
理解javascript中Map代替循环
2016/02/26 Javascript
node.js微信公众平台开发教程
2016/03/04 Javascript
JS随机洗牌算法之数组随机排序
2016/03/23 Javascript
Windows 系统下设置Nodejs NPM全局路径
2016/04/26 NodeJs
js实现文字超出部分用省略号代替实例代码
2016/09/01 Javascript
IScroll那些事_当内容不足时下拉刷新的解决方法
2017/07/18 Javascript
Nodejs中使用phantom将html转为pdf或图片格式的方法
2017/09/18 NodeJs
Electron vue的使用教程图文详解
2019/07/05 Javascript
Python的Flask框架中实现分页功能的教程
2015/04/20 Python
Python连接mysql数据库的正确姿势
2016/02/03 Python
Python基于回溯法子集树模板解决最佳作业调度问题示例
2017/09/08 Python
python对excel文档去重及求和的实例
2018/04/18 Python
Python绘制频率分布直方图的示例
2019/07/08 Python
Python中生成一个指定长度的随机字符串实现示例
2019/11/06 Python
tensorflow实现将ckpt转pb文件的方法
2020/04/22 Python
HTML5 canvas画矩形时出现边框样式不一致的解决方法
2013/10/14 HTML / CSS
html5开发三八女王节表白神器
2018/03/07 HTML / CSS
Sephora丝芙兰菲律宾官方网站:购买化妆品和护肤品
2017/04/05 全球购物
德国咖啡批发商:Coffeefair
2019/08/26 全球购物
高中生毕业自我鉴定
2013/10/10 职场文书
财务会计毕业生自荐信
2013/11/02 职场文书
二年级体育教学反思
2014/01/15 职场文书
公司营业员的自我评价
2014/03/04 职场文书
国庆宣传标语
2014/06/30 职场文书
导航工程专业自荐信
2014/09/02 职场文书
2014党员民主评议个人思想剖析发言
2014/09/19 职场文书
反腐倡廉心得体会2016
2016/01/13 职场文书