import numpy as npimport tensorflow as tffrom flask import Flask,jsonify,render_template,requestfrom mnist import modelx= tf.placeholder("float",[None,784])sess = tf.Session()with tf.variable_scope("regression"): y1, variables= model.regression(x)saver = tf.train.Saver(variables)saver.restore(sess,"data/regression.ckpt")with tf.variable_scope("convolutional"): keep_prob = tf.placeholder("float") y2 , variables = model.convolutional(x, keep_prob)saver = tf.train.Saver(variables)module_file = tf.train.latest_checkpoint('data/convolutional.ckpt')def regression(input): # 如果要防止time报错就要把下面的函数 return sess.run(y1, feed_dict={x: input}).flatten().tolist()def convolutional(input): #一直报错,先取消掉 pass# return sess.run(y2, feed_dict={x: input, keep_prob: 1.0}).flatten.tolist()with tf.Session() as sess: sess.run(tf.global_variables_initializer()) if module_file is not None: saver.restore(sess, module_file)#saver.restore(sess,"data/convolutional.ckpt") app = Flask(__name__) @app.route('/api/mnist', methods=['POST']) def mnist(): input = ((255 - np.array(request.json, dtype=np.uint8)) / 255.0).reshape(1, 784) output1 = regression(input) output2 = convolutional(input) return jsonify(results=[output1, output2]) @app.route('/') def main(): return render_template('index.html') if __name__ == "__main__": app.debug = True app.run(host="127.0.0.1", port=5000) |