Spaces:
Runtime error
Runtime error
| import gradio as gr | |
| import requests | |
| from PIL import Image | |
| import io | |
| def tryon_interface(human_image, garm_image, garment_des, is_checked, is_checked_crop, denoise_steps, seed): | |
| human_img_bytes = io.BytesIO() | |
| human_image.save(human_img_bytes, format='PNG') | |
| human_img_bytes.seek(0) | |
| garm_img_bytes = io.BytesIO() | |
| garm_image.save(garm_img_bytes, format='PNG') | |
| garm_img_bytes.seek(0) | |
| files = { | |
| 'human_image': ('human_image.png', human_img_bytes, 'image/png'), | |
| 'garm_image': ('garm_image.png', garm_img_bytes, 'image/png') | |
| } | |
| data = { | |
| 'garment_des': garment_des, | |
| 'is_checked': is_checked, | |
| 'is_checked_crop': is_checked_crop, | |
| 'denoise_steps': denoise_steps, | |
| 'seed': seed | |
| } | |
| response = requests.post("https://meta-virtualtryon.onrender.com/tryon", files=files, data=data) | |
| result = response.json() | |
| result_image_url = result["result_image"] | |
| mask_image_url = result["mask_image"] | |
| result_image = Image.open(requests.get(result_image_url, stream=True).raw) | |
| mask_image = Image.open(requests.get(mask_image_url, stream=True).raw) | |
| return result_image, mask_image | |
| iface = gr.Interface( | |
| fn=tryon_interface, | |
| inputs=[ | |
| gr.Image(type="pil", label="Human Image"), | |
| gr.Image(type="pil", label="Garment Image"), | |
| gr.Textbox(placeholder="Description of garment", label="Garment Description"), | |
| gr.Checkbox(label="Use auto-generated mask"), | |
| gr.Checkbox(label="Use auto-crop & resizing"), | |
| gr.Number(label="Denoising Steps", default=30), | |
| gr.Number(label="Seed", default=42) | |
| ], | |
| outputs=[ | |
| gr.Image(label="Synthesized Image"), | |
| gr.Image(label="Mask Image") | |
| ], | |
| title="Virtual Try-On" | |
| ) | |
| iface.launch() | |