| import gradio as gr, os, subprocess, glob, shutil, uuid |
| WORK = "/tmp/bt"; os.makedirs(WORK, exist_ok=True) |
|
|
| def process(img, model): |
| uid = str(uuid.uuid4())[:8] |
| folder = os.path.join(WORK, uid); os.makedirs(folder) |
| inp = os.path.join(folder, "in.png") |
| shutil.copy(img, inp) |
| subprocess.run(f'python main.py --headless --exec_dirs "{folder}" --inpainter {model}', |
| shell=True, cwd="/app", stdout=subprocess.DEVNULL) |
| out = glob.glob(os.path.join(folder, "inpainted", "*")) |
| return out[0] if out else None |
|
|
| gr.Interface( |
| fn=process, |
| inputs=[gr.Image(type="filepath"), gr.Dropdown(["lama_large_512px","lama","aot"], value="lama_large_512px")], |
| outputs=gr.Image(), |
| title="BallonsTranslator Web" |
| ).launch(server_name="0.0.0.0", server_port=7860) |