File size: 2,085 Bytes
20ed832 8f39d59 ef06509 8f39d59 5721855 20ed832 ef06509 5721855 20ed832 ef06509 371a997 ef06509 5721855 ef06509 5721855 ef06509 5721855 20ed832 ef06509 6487501 371a997 6487501 5721855 6487501 5721855 6487501 5721855 6487501 5721855 6487501 5721855 6487501 371a997 6487501 5721855 371a997 |
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 |
#!/usr/bin/env python
import gradio as gr
import numpy as np
from model import Model
DESCRIPTION = "# [StyleSwin](https://github.com/microsoft/StyleSwin)"
def get_sample_image_url(name: str) -> str:
sample_image_dir = "https://huggingface.co/spaces/hysts/StyleSwin/resolve/main/samples"
return f"{sample_image_dir}/{name}.jpg"
def get_sample_image_markdown(name: str) -> str:
url = get_sample_image_url(name)
if name in {"celeba-hq", "ffhq"}:
size = 1024
elif name == "lsun-church":
size = 256
else:
raise ValueError
seed = "0-99"
return f"""
- size: {size}x{size}
- seed: {seed}
"""
model = Model()
with gr.Blocks(css_paths="style.css") as demo:
gr.Markdown(DESCRIPTION)
with gr.Tabs():
with gr.TabItem("App"):
with gr.Row():
with gr.Column():
model_name = gr.Dropdown(model.MODEL_NAMES, value=model.MODEL_NAMES[3], label="Model")
seed = gr.Slider(0, np.iinfo(np.uint32).max, step=1, value=0, label="Seed")
run_button = gr.Button("Run")
with gr.Column():
result = gr.Image(label="Result", elem_id="result")
with gr.TabItem("Sample Images"):
with gr.Row():
model_name2 = gr.Dropdown(
[
"celeba-hq",
"ffhq",
"lsun-church",
],
value="celeba-hq",
label="Model",
)
with gr.Row():
text = get_sample_image_markdown(model_name2.value)
sample_images = gr.Markdown(text)
run_button.click(
fn=model.set_model_and_generate_image,
inputs=[model_name, seed],
outputs=result,
api_name="run",
)
model_name2.change(
fn=get_sample_image_markdown,
inputs=model_name2,
outputs=sample_images,
)
if __name__ == "__main__":
demo.launch()
|