Manjushri's picture
Update app.py
f8b6024 verified
raw
history blame
No virus
1.62 kB
from diffusers import StableDiffusionXLInpaintPipeline
import gradio as gr
import numpy as np
import imageio
from PIL import Image
import torch
import modin.pandas as pd
device = "cuda" if torch.cuda.is_available() else "cpu"
pipe = StableDiffusionXLInpaintPipeline.from_pretrained("stabilityai/sdxl-turbo", safety_checker=None)
pipe = pipe.to(device)
def resize(value,img):
img = Image.open(img)
img = img.resize((value,value))
return img
def img2img(source_img, prompt, strength):
imageio.imwrite("data.png", source_img["image"])
imageio.imwrite("data_mask.png", source_img["mask"])
src = resize(768, "data.png")
src.save("src.png")
mask = resize(768, "data_mask.png")
mask.save("mask.png")
image = pipe(prompt=prompt, image=src, mask_image=mask, num_inference_steps=6, strength=strength, guidance_scale=0.0).images[0]
return image
title="SDXL Turbo Inpainting CPU"
description="Inpainting with SDXL Turbo <br><br> <b>Please use square .png image as input, 512x512, 768x768, or 1024x1024</b>"
gr.Interface(fn=img2img, inputs=[gr.ImageEditor(sources=["upload", "webcam", "clipboard"], interactive=True, label="Source Image"),
gr.Textbox(label='What you want the AI to Generate, 77 Token limit'),
gr.Slider(minimum=.5, maximum=1, value=.75, step=.025, label='Strength')],
outputs='image',
title=title,
description=description,
article = "Code Monkey: <a href=\"https://huggingface.co/Manjushri\">Manjushri</a>").launch(max_threads=True, debug=True)