hujiecpp commited on
Commit
ea05641
·
1 Parent(s): c0c5360

init project

Browse files
Files changed (1) hide show
  1. app.py +10 -2
app.py CHANGED
@@ -38,8 +38,7 @@ from modules.pe3r.models import Models
38
  import torchvision.transforms as tvf
39
 
40
  silent = False
41
- device = 'cpu' # 'cuda' if torch.cuda.is_available() else
42
- pe3r = Models(device) #
43
 
44
  def _convert_scene_output_to_glb(outdir, imgs, pts3d, mask, focals, cams2world, cam_size=0.05,
45
  cam_color=None, as_pointcloud=False,
@@ -244,6 +243,8 @@ def slerp_multiple(vectors, t_values):
244
  @torch.no_grad
245
  def get_mask_from_img_sam1(mobilesamv2, yolov8, sam1_image, yolov8_image, original_size, input_size, transform):
246
 
 
 
247
  sam_mask=[]
248
  img_area = original_size[0] * original_size[1]
249
 
@@ -297,7 +298,9 @@ def get_mask_from_img_sam1(mobilesamv2, yolov8, sam1_image, yolov8_image, origin
297
 
298
  @torch.no_grad
299
  def get_cog_feats(images):
 
300
  device = 'cuda' if torch.cuda.is_available() else 'cpu'
 
301
  cog_seg_maps = []
302
  rev_cog_seg_maps = []
303
  inference_state = pe3r.sam2.init_state(images=images.sam2_images, video_height=images.sam2_video_size[0], video_width=images.sam2_video_size[1])
@@ -441,6 +444,9 @@ def get_reconstructed_scene(outdir, filelist, schedule, niter, min_conf_thr,
441
  from a list of images, run dust3r inference, global aligner.
442
  then run get_3D_model_from_scene
443
  """
 
 
 
444
  if len(filelist) < 2:
445
  raise gradio.Error("Please input at least 2 images.")
446
 
@@ -504,6 +510,8 @@ def get_reconstructed_scene(outdir, filelist, schedule, niter, min_conf_thr,
504
  def get_3D_object_from_scene(outdir, text, threshold, scene, min_conf_thr, as_pointcloud,
505
  mask_sky, clean_depth, transparent_cams, cam_size):
506
 
 
 
507
  texts = [text]
508
  inputs = pe3r.siglip_tokenizer(text=texts, padding="max_length", return_tensors="pt")
509
  inputs = {key: value.to(device) for key, value in inputs.items()}
 
38
  import torchvision.transforms as tvf
39
 
40
  silent = False
41
+ pe3r = Models('cpu') #
 
42
 
43
  def _convert_scene_output_to_glb(outdir, imgs, pts3d, mask, focals, cams2world, cam_size=0.05,
44
  cam_color=None, as_pointcloud=False,
 
243
  @torch.no_grad
244
  def get_mask_from_img_sam1(mobilesamv2, yolov8, sam1_image, yolov8_image, original_size, input_size, transform):
245
 
246
+ device = 'cuda' if torch.cuda.is_available() else 'cpu'
247
+
248
  sam_mask=[]
249
  img_area = original_size[0] * original_size[1]
250
 
 
298
 
299
  @torch.no_grad
300
  def get_cog_feats(images):
301
+
302
  device = 'cuda' if torch.cuda.is_available() else 'cpu'
303
+
304
  cog_seg_maps = []
305
  rev_cog_seg_maps = []
306
  inference_state = pe3r.sam2.init_state(images=images.sam2_images, video_height=images.sam2_video_size[0], video_width=images.sam2_video_size[1])
 
444
  from a list of images, run dust3r inference, global aligner.
445
  then run get_3D_model_from_scene
446
  """
447
+
448
+ device = 'cuda' if torch.cuda.is_available() else 'cpu'
449
+
450
  if len(filelist) < 2:
451
  raise gradio.Error("Please input at least 2 images.")
452
 
 
510
  def get_3D_object_from_scene(outdir, text, threshold, scene, min_conf_thr, as_pointcloud,
511
  mask_sky, clean_depth, transparent_cams, cam_size):
512
 
513
+ device = 'cuda' if torch.cuda.is_available() else 'cpu'
514
+
515
  texts = [text]
516
  inputs = pe3r.siglip_tokenizer(text=texts, padding="max_length", return_tensors="pt")
517
  inputs = {key: value.to(device) for key, value in inputs.items()}