alexnasa commited on
Commit
383eaaa
·
verified ·
1 Parent(s): 065fdc8

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +11 -7
app.py CHANGED
@@ -215,10 +215,7 @@ def step4_track(session_id):
215
 
216
  # New: run all steps sequentially
217
  @spaces.GPU()
218
- def run_pipeline(image_array, request: gr.Request):
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=run_pipeline,
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]