Spaces:
Sleeping
Sleeping
File size: 856 Bytes
a9a2d42 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
from fastapi import FastAPI, File, UploadFile
from pydantic import BaseModel
from utils import predict
from starlette.responses import StreamingResponse, Response
from io import BytesIO
from PIL import Image
app=FastAPI()
@app.get("/")
def home():
return {"health_check":"OK"}
#@app.post("/remove")
#async def remove(file: UploadFile = File(...)):
# contents=await file.read()
# image = Image.open(BytesIO(contents)).convert("RGB")
# mask=predict(image)
# return {"mask": mask.tolist()}
@app.post("/remove")
async def remove(file: UploadFile = File(...)):
contents=await file.read()
image = Image.open(BytesIO(contents)).convert("RGB")
mask=predict(image)
img=Image.fromarray((mask*255).astype('uint8'))
buffered=BytesIO()
img.save(buffered,format="JPEG")
img_str=buffered.getvalue()
return Response(content=img_str, media_type="image/jpeg") |