我是TensorFlow的新手,我在使用列表作为CNN的输入时遇到了一个问题。在
假设我有4个列表:
TrainingImage
:这是一个包含我要训练的所有图像的列表,每个图像I都是BGR通道,所以我使用TrainingImage.append(I)
将图像I放入该列表。在TrainingLabel
:这是在TrainingImage
中标记图像的列表,每一行都是一个热向量。例如,如果我有3个对象(1,2,3),每个对象有2个图像(这意味着TrainingImage
有3 x 2=6个图像),那么我有一个标签列表,如:1,0,0;1,0;0,1,0;0,1,0;0,0,1;0,0,1TestingImage
:包含所有要测试的图像的列表,类似于TrainingImage
,但图像较少。在TestingLabel
:所有标签为TestingImage
的列表我不知道如何在TensorFlow中将它用作CNN的输入。我使用下面的代码,每个图像的大小为68 x 68 x 3,我有17个对象,每个对象有64个图像用于训练,16个图像用于测试。在
with tf.Session() as sess:
data_initializer = tf.placeholder(tf.float32, (1088, 68, 68, 3)) label_initializer = tf.placeholder(tf.float32, (1088, 17)) input_data = tf.Variable(data_initializer, trainable=False, collections=[]) input_labels = tf.Variable(label_initializer, trainable=False, collections=[]) sess.run(input_data.initializer, feed_dict={data_initializer: TrainingImage}) sess.run(input_labels.initializer, feed_dict={label_initializer: TrainingLabel})
所以现在input_data
和{
是的,那就行了。我可以建议你
你用
^{pr2}$这将允许您发送不同数量的图像,而不是总是必须发送1088个图像。在某个时候,你只想处理一个图像。在
相关问题 更多 >
编程相关推荐