原始问题及解决方案
https://github.com/keras-team/keras/issues/2397#issuecomment-254919212
问题描述:
在keras+tensorflow框架下训练神经网络并得到权重h5文件。
在之后需要调用的python代码中读取权重和图片并预测
在C#多线程的子线程调用python代码时出现以下报错
“ValueError : Tensor Tensor(“predictions/Softmax:0”, shape=(?, 2), dtype=float32) is not an element
解决方法:
主要是在读取权重后增加一行self.graph = tf.get_default_graph()
self.model=tf.keras.models.load_model(‘C:\Users\18367\Desktop\corner_test\0324_lug_irv2.h5’)
self.graph = tf.get_default_graph()
并在需要预测时前加 with self.graph.as_default():
原始py文件代码
# coding: utf-8
# In[1]:
import numpy as np
import tensorflow as tf
import cv2
import os
#model = tf.keras.models.load_model('C:/Users/18367/Desktop/corner_test/test_0430.h5')
class MODEL_lug(object):
def __init__(self):
self.model=tf.