Spaces:
Sleeping
Sleeping
| import gradio as gr | |
| from rembg import remove | |
| from PIL import Image | |
| import io | |
| import uuid | |
| import os | |
| OUTPUT_DIR = "outputs" | |
| os.makedirs(OUTPUT_DIR, exist_ok=True) | |
| def remove_background(image: Image.Image): | |
| if image is None: | |
| return None, None | |
| # Rimuove lo sfondo | |
| output = remove(image) | |
| # Salva l'immagine in un file temporaneo | |
| file_id = str(uuid.uuid4()) | |
| output_path = os.path.join(OUTPUT_DIR, f"{file_id}.png") | |
| output.save(output_path) | |
| # Restituisce: immagine modificata, link file per download | |
| return output, output_path | |
| # Interfaccia Gradio | |
| demo = gr.Interface( | |
| fn=remove_background, | |
| inputs=gr.Image( | |
| type="pil", | |
| label="Carica un'immagine o usa la webcam", | |
| sources=["upload", "webcam"], | |
| ), | |
| outputs=[ | |
| gr.Image(type="pil", label="Immagine senza sfondo"), | |
| gr.File(label="Scarica il file PNG") | |
| ], | |
| title="Rimozione Sfondo da Immagine", | |
| description="Carica un'immagine, rimuovi lo sfondo e scarica il file PNG risultante." | |
| ) | |
| if __name__ == "__main__": | |
| demo.launch() |