Я делаю свой проект, используя тензор потока с предварительно обученной моделью mobilenet_v2, которую можно найти в https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/detection_model_zoo.md
Я хотел получить значения скрытого слоя, поэтому я реализовал этот исходный код и получил недопустимый argumenterror
if __name__ == '__main__':
im = Image.open('./sample/maltiz.png')
im3 = im.resize((300, 300))
image = np.asarray(im)[:,:,:3]
model_path = 'models/ssd_mobilenet_v2_coco_2018_03_29/'
meta_path = os.path.join(model_path, 'model.ckpt.meta')
model = tf.train.import_meta_graph(meta_path)
sess = tf.Session()
model.restore(sess, tf.train.latest_checkpoint(model_path))
data = np.array([image])
data = data.astype(np.uint8)
X = tf.placeholder(tf.uint8, shape=[None, None, None, 3])
graph = tf.get_default_graph()
for i in graph.get_operations():
if "Relu" in i.name:
print(sess.run(i.values(), feed_dict = { X : data}))
Я получил это сообщение об ошибке
File "load_model.py", line 42, in <module>
print(sess.run(i.values(), feed_dict = { X : data}))
InvalidArgumentError: You must feed a value for placeholder tensor 'image_tensor' with dtype uint8 and shape [?,?,?,3]
[[node image_tensor (defined at load_model.py:24) ]]
Я распечатал заполнитель и форму данных.
заполнитель был введен в uint8 [?,?,?,3] и изображение имело форму с [1 300 300 3]. Я не знаю, в чем проблема.
Это выглядит как идеальное совпадение с типом в сообщении об ошибке.
Пожалуйста, дайте мне знать, в чем проблема.