Spaces:
Runtime error
Runtime error
from flask import Flask, request, jsonify | |
from PIL import Image | |
import base64 | |
from io import BytesIO | |
import io | |
from SegCloth import segment_clothing | |
# Créer une instance FastAPI | |
app = Flask(__name__) | |
def segment_image(img, clothes): | |
img = decode_image_from_base64(img) | |
return segment_clothing(img, clothes) | |
# Fonction pour décoder une image encodée en base64 en objet PIL.Image.Image | |
def decode_image_from_base64(image_data): | |
image_data = base64.b64decode(image_data) | |
image = Image.open(io.BytesIO(image_data)) | |
return image | |
def encode_image_to_base64(image): | |
buffered = BytesIO() | |
image.save(buffered, format="PNG") | |
return base64.b64encode(buffered.getvalue()).decode('utf-8') | |
def root(): | |
return "Welcome to Fashion Clothing Detectiony API!" | |
# Route pour l'API REST | |
def classify(): | |
data = request.json | |
print(data) | |
clothes = ["Hat", "Upper-clothes", "Skirt", "Pants", "Dress", "Belt", "Left-shoe", "Right-shoe", "Scarf"] | |
image = data['image'] | |
result = segment_image(image,clothes) | |
return jsonify({'result': encode_image_to_base64(result)}) | |
if __name__ == "__main__": | |
app.run(debug=True, host="0.0.0.0", port=7860) |