【发布时间】:2021-05-01 17:12:33
【问题描述】:
我是一名学生,目前正在从事我的 python(FLASK) 图像分类项目。 我已经实现了所有的功能和模型,它作为网络应用程序运行良好。现在我想制作一个导致 JSONIFY 的 api,这样我也可以轻松地在移动应用程序中使用。 我有下面列出的代码
@app.route('/predict', methods=['GET', 'POST'])
def predict():
if request.method == 'POST':
img = request.files['image']
filename = img.filename
path = os.path.join('static/uploads', filename)
img.save(path)
print(filename)
predictions = pipeline_model(path)
return render_template("predict.html", p="uploads/{}".format(filename), pred=predictions)
return render_template("predict.html", p="images/dog.jpg", pred="")
另一个管道功能是:
def pipeline_model(path):
img = image.load_img(path, target_size=(299, 299))
img = image.img_to_array(img)
img = img / 255.0
img = np.expand_dims(img, axis=0)
pred = model.predict(img)
max_preds = []
pred = pred[0]
for i in range(5):
name = labels[pred.argmax()]
per = round(np.amax(pred) * 100, 2)
max_preds.append([name, per])
ele = pred.argmax()
pred = np.delete(pred, ele)
paths = glob('static/uploads/*')
if len(paths) > 5:
for path in paths[:4]:
os.remove(path)
return max_preds
所以我想把这个“return render_template”函数转换成“return jsonify”的形式,如何实现,我们也可以在移动应用中使用。
【问题讨论】:
-
图片中的代码无济于事,请将您的代码粘贴到问题中,以便重现和建议您。
-
@simpleApp,我已经在这个问题中编辑并发布了代码。
-
谢谢,在答案部分添加了回复。我希望这会有所帮助。
标签: python api flask image-processing image-classification