ak / app.py
AkashKumarave's picture
Update app.py
6c0952e verified
raw
history blame
931 Bytes
from fastapi import FastAPI, File, UploadFile
from fastapi.middleware.cors import CORSMiddleware
from transformers import pipeline
import io
from PIL import Image
app = FastAPI()
# Allow CORS for Figma plugin
app.add_middleware(
CORSMiddleware,
allow_origins=["*"], # Update to specific origins in production
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
@app.post("/remove-background")
async def remove_background(file: UploadFile = File(...)):
# Load the RMBG-1.4 model
pipe = pipeline('image-segmentation', 'briaai/RMBG-1.4')
# Read image
image_data = await file.read()
image = Image.open(io.BytesIO(image_data))
# Process image
output = pipe(image)
# Convert output to bytes
output_image = Image.fromarray(output.data)
output_bytes = io.BytesIO()
output_image.save(output_bytes, format='PNG')
return {"image": output_bytes.getvalue()}