Tensorflow inception_v2_resnet 推理

Tensorflow inception_v2_resnet inference

参考这个post:

我也在尝试使用 inception_resnet_v2 模型来预测图像。因此我查看了代码片段并试图获取它 运行,但它说 "input_tensor" 未定义。提到的代码中是否缺少任何内容,或者任何人都可以给我一些提示来获得它 运行 / 如何定义 input_tensor 变量?

这里又是这个片段:

import tensorflow as tf
slim = tf.contrib.slim
from PIL import Image
from inception_resnet_v2 import *
import numpy as np

checkpoint_file = 'inception_resnet_v2_2016_08_30.ckpt'
sample_images = ['dog.jpg', 'panda.jpg']
#Load the model
sess = tf.Session()
arg_scope = inception_resnet_v2_arg_scope()
with slim.arg_scope(arg_scope):
  logits, end_points = inception_resnet_v2(input_tensor, is_training=False)
saver = tf.train.Saver()
saver.restore(sess, checkpoint_file)
for image in sample_images:
  im = Image.open(image).resize((299,299))
  im = np.array(im)
  im = im.reshape(-1,299,299,3)
  predict_values, logit_values = sess.run([end_points['Predictions'],logits], feed_dict={input_tensor: im})
  print (np.max(predict_values), np.max(logit_values))
  print (np.argmax(predict_values), np.argmax(logit_values))

谢谢

代码段似乎缺少 input_tensor 的任何定义。查看 inception_resnet_v2() 函数的 definition,张量用于 feed_dict 的事实,以及图像大小为 299 x 299 的事实,您可以定义 input_tensor如下:

input_tensor = tf.placeholder(tf.float32, [None, 299, 299, 3])