读取png文件并输入cnn Tensorflow

读取png文件并输入cnn Tensorflow,tensorflow,png,decode,Tensorflow,Png,Decode,我正在尝试使用Tensorflow构建一个简单的CNN。问题是我无法读取一个简单的.png文件来为CNN提供信息 >>> filename = tf.constant("training/a1.png") >>> filename <tf.Tensor 'Const_1:0' shape=() dtype=string> >>> image_string = tf.read_file(filename) >>>

我正在尝试使用Tensorflow构建一个简单的CNN。问题是我无法读取一个简单的.png文件来为CNN提供信息

>>> filename = tf.constant("training/a1.png")
>>> filename
<tf.Tensor 'Const_1:0' shape=() dtype=string>
>>> image_string = tf.read_file(filename)
>>> image_string
<tf.Tensor 'ReadFile_1:0' shape=() dtype=string>
>>> image_decoded = tf.image.decode_png(image_string)


>>> image_decoded
<tf.Tensor 'DecodePng_1:0' shape=(?, ?, ?) dtype=uint8>

这是正确的行为,因为在您的代码中,您只创建了一个图形,而TF在此步骤中并没有真正读取png文件,而是只创建了在会话中启动graph时执行的操作。操作结果是形状未知的张量(此时)。可以按预定义的大小调整或裁剪它

>>> import tensorflow as tf
>>> filename = tf.constant("training/a1.png")
>>> image_string = tf.read_file(filename)
>>> image_decoded = tf.image.decode_png(image_string)
>>> shape = tf.shape( image_decoded )
>>> sess = tf.Session()
>>> print(sess.run( shape ) )
[360 360   4]