Sa-m's picture
Update app.py
b846e8e
raw
history blame
1.72 kB
"""
Run a rest API exposing the yolov5s object detection model
"""
import io
import torch
from flask import Flask, request
from PIL import Image
from waitress import serve
import subprocess
import argparse
import os
'''
#subprocess.run(["export", "FLASK_APP","=","app.py"])
app = Flask(__name__)
DETECTION_URL = "/v1/detect"
@app.route(DETECTION_URL,methods=["POST"])
def predict():
#model = torch.hub.load('ultralytics/yolov5', 'custom', path='best2.pt', force_reload=True) # force_reload to recache
if not request.method == "POST":
return
if request.files.get("image"):
image_file = request.files["image"]
image_bytes = image_file.read()
img = Image.open(io.BytesIO(image_bytes))
results = model(img, size=640) # reduce size=320 for faster inference
results=results.pandas().xyxy[0].to_json(orient="records")
return f"{results}"
if __name__ == "__main__":
#subprocess.run(["export","FLASK_ENV","=","development"])
app.run(host="0.0.0.0", port=7860) # debug=True causes Restarting with stat
#serve(app, host="0.0.0.0", port=7860)
if __name__ == "__main__":
model = torch.hub.load('ultralytics/yolov5', 'custom', path='best2.pt', force_reload=True) # force_reload to recache
app.run(host="0.0.0.0", port=7860,debug =True) # debug=True causes Restarting with stat
'''
app = Flask(__name__)
@app.route('/')
def index():
return '<iframe frameBorder="0" height="100%" src="{}/?__dark-theme={}" width="100%"></iframe>'.format(
os.getenv('INACCEL_URL'),
flask.request.args.get('__dark-theme', 'false'))
if __name__ == '__main__':
app.run(host='0.0.0.0', port=7860)