Spaces:
Sleeping
Sleeping
import torch | |
import gradio as gr | |
from torchvision import transforms | |
from PIL import Image | |
from model import model | |
device = torch.device("cuda" if torch.cuda.is_available() else "cpu") | |
latent_dim = model.config.latent_dim | |
def generate_from_noise(): | |
z = torch.randn(1, latent_dim).to(device) | |
with torch.no_grad(): | |
generated = model.decode(z) | |
gen_img = generated.squeeze(0).permute(1, 2, 0).cpu().numpy() | |
gen_pil = Image.fromarray((gen_img * 255).astype("uint8")).resize((512, 512)) | |
return gen_pil | |
def get_interface(): | |
with gr.Blocks() as iface: | |
gr.Markdown("## Generate from Random Noise") | |
generate_button = gr.Button("Generate Image") | |
output_image = gr.Image(label="Generated Image", type="pil") | |
generate_button.click(fn=generate_from_noise, inputs=[], outputs=output_image) | |
examples = [[]] | |
gr.Examples( | |
examples=examples, | |
inputs=[], | |
outputs=output_image, | |
fn=generate_from_noise, | |
cache_examples=False | |
) | |
return iface | |