Spaces:
Running
Running
import gradio as gr | |
from control import main | |
from diffusers.utils import load_image | |
from mask import create_mask | |
def process_image(image, prompt): | |
try: | |
# Create mask from input image | |
mask = create_mask(image) | |
# First show the generated mask | |
yield mask | |
# Then process image with mask | |
result = main(image, mask, prompt) | |
yield result | |
except Exception as e: | |
yield str(e) | |
# Create Gradio interface | |
demo = gr.Interface( | |
fn=process_image, | |
inputs=[ | |
gr.Image(label="Input Image", type="pil"), | |
gr.Textbox(label="Prompt"), | |
], | |
outputs=[ | |
gr.Image(label="Generated Mask"), | |
gr.Image(label="Generated Image") | |
], | |
title="Image Inpainting with FLUX ControlNet", | |
description="Upload an image and provide a prompt. The system will first generate a mask and then create the inpainted result.", | |
) | |
if __name__ == "__main__": | |
demo.launch() | |