yanranxiaoxi commited on
Commit
2ad86be
·
verified ·
1 Parent(s): 7598222

fix: generate_mesh

Browse files
Files changed (1) hide show
  1. app.py +7 -8
app.py CHANGED
@@ -177,7 +177,7 @@ def _default_render_cameras(batch_size: int = 1):
177
  return render_cameras.unsqueeze(0).repeat(batch_size, 1, 1)
178
 
179
  @spaces.GPU
180
- def generate_mesh(image, source_size=512, render_size=384, mesh_size=512, export_mesh=False, export_video=True, fps=30):
181
  image = preprocess_image(image, source_size).to(model_wrapper.device)
182
  source_camera = _default_source_camera(batch_size=1).to(model_wrapper.device)
183
 
@@ -196,7 +196,7 @@ def generate_mesh(image, source_size=512, render_size=384, mesh_size=512, export
196
  mesh_path = "xiaoxis_mesh.obj"
197
  mesh.export(mesh_path, 'obj')
198
 
199
- return mesh_path, mesh_path
200
 
201
  if export_video:
202
  render_cameras = _default_render_cameras(batch_size=1).to(model_wrapper.device)
@@ -220,25 +220,24 @@ def generate_mesh(image, source_size=512, render_size=384, mesh_size=512, export
220
  video_path = "xiaoxis_video.mp4"
221
  imageio.mimwrite(video_path, frames, fps=fps)
222
 
223
- return None, video_path
 
 
224
 
225
  return None, None
226
 
227
  def step_1_generate_planes(image):
228
- planes_path = generate_mesh(image)
229
  return planes_path
230
 
231
  def step_2_generate_obj(image):
232
- mesh_path, _ = generate_mesh(image, export_mesh=True)
233
  return mesh_path, mesh_path
234
 
235
  def step_3_generate_video(image):
236
  _, video_path = generate_mesh(image, export_video=True)
237
  return video_path
238
 
239
- def step_4_display_3d_model(mesh_file):
240
- return mesh_file
241
-
242
  # 从 assets 文件夹中设置示例文件,并限制最多读取 10 个文件
243
  example_folder = "assets"
244
  examples = [os.path.join(example_folder, f) for f in os.listdir(example_folder) if f.endswith(('.png', '.jpg', '.jpeg', '.webp'))][:10]
 
177
  return render_cameras.unsqueeze(0).repeat(batch_size, 1, 1)
178
 
179
  @spaces.GPU
180
+ def generate_mesh(image, source_size=512, render_size=384, mesh_size=512, export_mesh=False, export_video=False, fps=30):
181
  image = preprocess_image(image, source_size).to(model_wrapper.device)
182
  source_camera = _default_source_camera(batch_size=1).to(model_wrapper.device)
183
 
 
196
  mesh_path = "xiaoxis_mesh.obj"
197
  mesh.export(mesh_path, 'obj')
198
 
199
+ return planes, mesh_path
200
 
201
  if export_video:
202
  render_cameras = _default_render_cameras(batch_size=1).to(model_wrapper.device)
 
220
  video_path = "xiaoxis_video.mp4"
221
  imageio.mimwrite(video_path, frames, fps=fps)
222
 
223
+ return planes, video_path
224
+
225
+ return planes, None
226
 
227
  return None, None
228
 
229
  def step_1_generate_planes(image):
230
+ planes_path, _ = generate_mesh(image)
231
  return planes_path
232
 
233
  def step_2_generate_obj(image):
234
+ _, mesh_path = generate_mesh(image, export_mesh=True)
235
  return mesh_path, mesh_path
236
 
237
  def step_3_generate_video(image):
238
  _, video_path = generate_mesh(image, export_video=True)
239
  return video_path
240
 
 
 
 
241
  # 从 assets 文件夹中设置示例文件,并限制最多读取 10 个文件
242
  example_folder = "assets"
243
  examples = [os.path.join(example_folder, f) for f in os.listdir(example_folder) if f.endswith(('.png', '.jpg', '.jpeg', '.webp'))][:10]