Spaces:
Paused
Paused
Update app.py
Browse files
app.py
CHANGED
|
@@ -215,10 +215,7 @@ def step4_track(session_id):
|
|
| 215 |
|
| 216 |
# New: run all steps sequentially
|
| 217 |
@spaces.GPU()
|
| 218 |
-
def
|
| 219 |
-
|
| 220 |
-
session_id = request.session_hash
|
| 221 |
-
|
| 222 |
# Step 1
|
| 223 |
status1, crop_img, _, _ = preprocess_image(image_array)
|
| 224 |
if "❌" in status1:
|
|
@@ -245,6 +242,11 @@ def cleanup(request: gr.Request):
|
|
| 245 |
shutil.rmtree(d1, ignore_errors=True)
|
| 246 |
shutil.rmtree(d2, ignore_errors=True)
|
| 247 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 248 |
css = """
|
| 249 |
#col-container {
|
| 250 |
margin: 0 auto;
|
|
@@ -298,11 +300,13 @@ with gr.Blocks(css=css) as demo:
|
|
| 298 |
fn=run_pipeline,
|
| 299 |
cache_examples=True # cache results of examples for faster loading
|
| 300 |
)
|
| 301 |
-
|
|
|
|
|
|
|
| 302 |
|
| 303 |
run_btn.click(
|
| 304 |
-
fn=
|
| 305 |
-
inputs=[image_in],
|
| 306 |
outputs=[status, crop_img, normals_img, uv_img, track_img, mesh_file]
|
| 307 |
)
|
| 308 |
examples.outputs = [status, crop_img, normals_img, uv_img, track_img, mesh_file]
|
|
|
|
| 215 |
|
| 216 |
# New: run all steps sequentially
|
| 217 |
@spaces.GPU()
|
| 218 |
+
def generate_results_and_mesh(image, session_id):
|
|
|
|
|
|
|
|
|
|
| 219 |
# Step 1
|
| 220 |
status1, crop_img, _, _ = preprocess_image(image_array)
|
| 221 |
if "❌" in status1:
|
|
|
|
| 242 |
shutil.rmtree(d1, ignore_errors=True)
|
| 243 |
shutil.rmtree(d2, ignore_errors=True)
|
| 244 |
|
| 245 |
+
def start_session(request: gr.Request):
|
| 246 |
+
session_hash = request.session_hash
|
| 247 |
+
|
| 248 |
+
return {"session_id": session_hash}
|
| 249 |
+
|
| 250 |
css = """
|
| 251 |
#col-container {
|
| 252 |
margin: 0 auto;
|
|
|
|
| 300 |
fn=run_pipeline,
|
| 301 |
cache_examples=True # cache results of examples for faster loading
|
| 302 |
)
|
| 303 |
+
|
| 304 |
+
session_state = gr.State()
|
| 305 |
+
demo.load(start_session, outputs=[session_state])
|
| 306 |
|
| 307 |
run_btn.click(
|
| 308 |
+
fn=generate_results_and_mesh,
|
| 309 |
+
inputs=[image_in, session_state["session_id"]],
|
| 310 |
outputs=[status, crop_img, normals_img, uv_img, track_img, mesh_file]
|
| 311 |
)
|
| 312 |
examples.outputs = [status, crop_img, normals_img, uv_img, track_img, mesh_file]
|