tensorflow根据通道数据构造成批次数据用以训练

import numpy as np
import tensorflow as tf

# 特征,可以是原始数据,也可以是抽取出来的特征
r = np.array([[1,4,7,1,4,7,1,4,7]])
g = np.array([[2,5,8,2,5,8,2,5,8]])
b = np.array([[3,6,9,3,6,9,3,6,9]])

x = tf.placeholder(tf.float32, [None, 9]) 
y = tf.placeholder(tf.float32, [None, 9]) 
z = tf.placeholder(tf.float32, [None, 9]) 

o = tf.expand_dims(x,2)   # 变3维
p = tf.expand_dims(y,2)   # 变3维
q = tf.expand_dims(z,2)   # 变3维

t=tf.concat([o,p,q],2)    #按第3维进行合并

batch_data = tf.reshape(t, [-1,9,1,3]) # 转换成批次数据 长度为9,宽为1,3通道

sess=tf.InteractiveSession()
out = sess.run(batch_data,feed_dict={x:r,y:g,z:b})

print '测试数据:'
print out
print out.shape

print out[:,:,:,0]  # 第1个通道
print out[:,:,:,1]  # 第2个通道
print out[:,:,:,2]  # 第3个通道

你可能感兴趣的:(tensorflow根据通道数据构造成批次数据用以训练)