我目前正致力于 MNIST 分类任务,该任务基于一组经过修改的MNIST数据,并进行了一些小的调整 .

以下代码用于创建我的模型:https://github.com/hwalsuklee/tensorflow-mnist-cnn对于火车和测试图像有一些小的调整 .

不过我可以成功创建 ckpt, index and meta 文件 .

现在我想将我的代码用于单个图像分类,但是我不确定我应该使用哪个输入张量来输入我的图像 .

sess = tf.Session('', tf.Graph())
with sess.graph.as_default():
        saver = tf.train.import_meta_graph("Absolute Path to /model.ckpt.meta")
        saver.restore(sess, "Absolute Path to/model.ckpt")
        img = Image.open('Absolute Path to/sev.png').convert('L')
        img = np.expand_dims(img, axis=1).flat
        sess = tf.InteractiveSession()   
        x = tf.placeholder(tf.float32, [784])
        print(sess.run(tf.global_variables_initializer(), feed_dict={x: img}))

Sess.run() 返回 NoneType 对象,我假设错误位于字典和/或提取中 . 输出层有10个节点,在下面我尝试将获取更改为:

x = tf.placeholder(tf.float32, [784])
y = tf.placeholder(tf.float32, shape=[10])
output = tf.argmax(y,1)
result = sess.run(output, feed_dict={x: img})
print(result)

但是这会返回:

InvalidArgumentError (参见上面的回溯):您必须为占位符张量'Placeholder_3'提供一个值,其中dtype为float和shape [10]

该代码使用两种模型,正常和变化的MNIST数据集进行了测试 . 打印所有张量没有帮助,因为返回了很长的不同张量列表,我无法确定正确的张量 .

有关识别正确张量和/或正确提取的建议吗?