3d-preview / app.py
OpenSaas's picture
Create app.py
50709ea verified
raw
history blame contribute delete
912 Bytes
import gradio as gr
from diffusers import StableDiffusionInpaintPipeline
import torch
from PIL import Image
import base64
import io
# Load the Qwen Inpainting model
pipe = StableDiffusionInpaintPipeline.from_pretrained(
"InstantX/Qwen-Image-ControlNet-Inpainting",
torch_dtype=torch.float16
).to("cuda")
def edit_image(image, mask, prompt):
image = image.convert("RGB")
mask = mask.convert("L") # Black = edit, White = keep
result = pipe(
prompt=prompt,
image=image,
mask_image=mask,
num_inference_steps=30
).images[0]
return result
# Gradio UI
demo = gr.Interface(
fn=edit_image,
inputs=[
gr.Image(type="pil", label="Input Image"),
gr.Image(type="pil", label="Mask Image"),
gr.Textbox(label="Prompt")
],
outputs=gr.Image(type="pil", label="Edited Image"),
title="Qwen Image Inpainting"
)
demo.launch()