Spaces:
Runtime error
Runtime error
File size: 2,386 Bytes
cfccdc2 d77a781 596d353 d77a781 0006a92 586ddad cfccdc2 a8b8679 d77a781 0006a92 d77a781 6b170f4 3f7826a 6b170f4 0006a92 6f8e782 0006a92 d77a781 dfa6c0a |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 |
import gradio as gr
import numpy as np
# from edict_functions import EDICT_editing
from PIL import Image
from utils import Endpoint, get_token
from io import BytesIO
import requests
endpoint = Endpoint()
def local_edict(x, source_text, edit_text,
edit_strength, guidance_scale,
steps=50, mix_weight=0.93, ):
x = Image.fromarray(x)
return_im = EDICT_editing(x,
source_text,
edit_text,
steps=steps,
mix_weight=mix_weight,
init_image_strength=edit_strength,
guidance_scale=guidance_scale
)[0]
return np.array(return_im)
def encode_image(image):
buffered = BytesIO()
image.save(buffered, format="JPEG", quality=95)
buffered.seek(0)
return buffered
def decode_image(img_obj):
img = Image.open(img_obj).convert("RGB")
return img
def edict(x, source_text, edit_text,
edit_strength, guidance_scale,
steps=50, mix_weight=0.93, ):
url = endpoint.url
url = url + "/api/edit"
headers = {
"User-Agent": "EDICT HuggingFace Space",
"Auth-Token": get_token(),
}
data = {
"source_text": source_text,
"edit_text": edit_text,
"edit_strength": edit_strength,
"guidance_scale": guidance_scale,
}
image = encode_image(Image.fromarray(x))
files = {"image": image}
response = requests.post(url, data=data, files=files, headers=headers)
if response.status_code == 200:
return np.array(decode_image(BytesIO(response.content)))
else:
return "Error: " + response.text
# x = decode_image(response)
# return np.array(x)
iface = gr.Interface(fn=edict, inputs=["image",
gr.Textbox(label="Original Description"),
gr.Textbox(label="Edit Description"),
# 50, # gr.Slider(5, 50, value=20, step=1),
# 0.93, # gr.Slider(0.5, 1, value=0.7, step=0.05),
gr.Slider(0.0, 1, value=0.8, step=0.05),
gr.Slider(0, 10, value=3, step=0.5),
],
outputs="image")
iface.launch()
|