dvte-engine / app.py
Pugazh24's picture
Update app.py
5c6ba6d verified
Raw
History Blame Contribute Delete
1.42 kB
import gradio as gr
from gradio_client import Client, handle_file
def process_try_on(user_image_path, dress_image_path):
print("Routing images to the massive GPU cluster...")
try:
# Connect to the official, GPU-powered IDM-VTON space
client = Client("yisol/IDM-VTON")
# Send the images to their API
result = client.predict(
dict={"background": handle_file(user_image_path), "layers": [], "composite": None},
garm_img=handle_file(dress_image_path),
garment_des="a clothing item",
is_checked=True,
is_checked_crop=False,
denoise_steps=30,
seed=42,
api_name="/tryon"
)
# Their API returns a tuple (list), the first item is the image file path
return result[0]
except Exception as e:
print(f"Failed to connect to GPU: {e}")
return None
# Notice we changed the input type to "filepath" so it works easily with the client
dvte_interface = gr.Interface(
fn=process_try_on,
inputs=[
gr.Image(type="filepath", label="User Photo"),
gr.Image(type="filepath", label="Dress Product Image")
],
outputs=gr.Image(type="filepath", label="Final Try-On Result"),
title="DVTE - E-commerce Try-On Engine",
description="API Endpoint for Virtual Garment Transfer"
)
dvte_interface.launch()