測試測試程式碼塊
@app.route('/predict', methods=['POST'])
def predict():
data = {'Success': False}
if request.files.get('image'):
now = time.strftime("%Y-%m-%d-%H_%M_%S",time.localtime(time.time()))
image = request.files['image'].read()
image = Image.open(io.BytesIO(image))
image = image_transform(InputSize)(image).numpy()
# 將數組以C語言存儲順序存儲
image = image.copy(order="C")
# 生成影像ID
k = str(uuid.uuid4())
d = {"id": k, "image": base64_encode_image(image)}
# print(d)
db.rpush(ImageQueue, json.dumps(d))
# 運行服務
while True:
# 獲取輸出結果
output = db.get(k)
# print(output)
if output is not None:
output = output.decode("utf-8")
data["predictions"] = json.loads(output)
db.delete(k)
break
time.sleep(ClientSleep)
data["success"] = True
return jsonify(data)
if __name__ == '__main__':
app.run(host='127.0.0.1', port =5000,debug=True )