John6666 commited on
Commit
d3aabfb
·
verified ·
1 Parent(s): ba0a533

Upload gradio_app.py

Browse files
Files changed (1) hide show
  1. gradio_app.py +6 -4
gradio_app.py CHANGED
@@ -155,7 +155,7 @@ def forward_model(batch, system, guidance_scale=3.0, seed=0, device="cuda"):
155
 
156
  @spaces.GPU
157
  @torch.inference_mode()
158
- def generate_and_process_3d(image: Image.Image) -> tuple[str | None, Image.Image | None]:
159
  """Generate image from prompt and convert to 3D model."""
160
 
161
  # Generate random seed
@@ -213,10 +213,11 @@ def generate_and_process_3d(image: Image.Image) -> tuple[str | None, Image.Image
213
  #temp_dir = tempfile.mkdtemp()
214
  #output_path = os.path.join(temp_dir, 'output.glb')
215
  output_path = os.path.join(OUTPUT_DIR, 'output.glb')
 
216
 
217
  trimesh_mesh.export(output_path, file_type="glb", include_normals=True)
218
 
219
- return output_path
220
 
221
  except Exception as e:
222
  print(f"Error during generation: {str(e)}")
@@ -238,12 +239,13 @@ with gr.Blocks() as demo:
238
  label="Generated .GLB model",
239
  clear_color=[0.0, 0.0, 0.0, 0.0],
240
  )
 
241
 
242
  # Event handler
243
  input_img.upload(
244
  fn=generate_and_process_3d,
245
- inputs=[input_img],
246
- outputs=[model_output],
247
  api_name="generate"
248
  )
249
 
 
155
 
156
  @spaces.GPU
157
  @torch.inference_mode()
158
+ def generate_and_process_3d(image: Image.Image, model_dl: list[str]) -> tuple[str | None, Image.Image | None]:
159
  """Generate image from prompt and convert to 3D model."""
160
 
161
  # Generate random seed
 
213
  #temp_dir = tempfile.mkdtemp()
214
  #output_path = os.path.join(temp_dir, 'output.glb')
215
  output_path = os.path.join(OUTPUT_DIR, 'output.glb')
216
+ model_dl.append(output_path)
217
 
218
  trimesh_mesh.export(output_path, file_type="glb", include_normals=True)
219
 
220
+ return output_path, model_dl
221
 
222
  except Exception as e:
223
  print(f"Error during generation: {str(e)}")
 
239
  label="Generated .GLB model",
240
  clear_color=[0.0, 0.0, 0.0, 0.0],
241
  )
242
+ model_dl = gr.File(label="Download generated .GLB model", value=[], interactive=False)
243
 
244
  # Event handler
245
  input_img.upload(
246
  fn=generate_and_process_3d,
247
+ inputs=[input_img, model_dl],
248
+ outputs=[model_output, model_dl],
249
  api_name="generate"
250
  )
251