nagolinc's picture
Update app.py
88fb8cc verified
from asyncio import constants
import gradio as gr
import requests
import os
from base64 import b64decode
from PIL import Image
import io
import numpy as np
def generate_image(seed,psi):
iface = gr.Interface.load("spaces/hysts/StyleGAN-Human")
print("calling interface",seed,psi)
img=iface(seed,psi)
return img
#img=iface.fns[0].fn(seed,psi)
#wrong format, gah! convert to numpy array
#header, encoded = img.split(",", 1)
#data = b64decode(encoded)
#image = Image.open(io.BytesIO(data))
#image_np = np.array(image)
#return image_np
def generate_model(img):
print("about to die")
iface = gr.Interface.load("spaces/radames/PIFu-Clothed-Human-Digitization")
print("calling interface")
#model,file=iface.fns[0].fn(img)
model,file=iface(img)
#print("got result",result)
return model,file
demo = gr.Blocks()
with demo:
gr.Markdown("<h1><center>StyleGan-Human + PIFu </center></h1>")
gr.Markdown(
"create a person and then generate a model from that person's image"
)
with gr.Row():
b0 = gr.Button("generate image")
b1 = gr.Button("generate model")
with gr.Row():
seed=gr.Number(value=0, label='Seed')
psi=gr.Slider(0, 2, step=0.05, value=0.7, label='Truncation psi')
#outputImage = gr.Image(label="portrait",type="filepath", shape=(256,256))
output_image = gr.Image(type="filepath", label='Output')
model = gr.Model3D(clear_color=[0.0, 0.0, 0.0, 0.0], label="3D Model")
file= gr.File(label="Download 3D Model")
b0.click(generate_image,inputs=[seed,psi],outputs=output_image)
b1.click(generate_model, inputs=output_image, outputs=[model,file])
demo.launch()