MCPcopy Create free account
hub / github.com/Sin3DM/Sin3DM / decode_voxel

Method decode_voxel

src/encoding/model.py:476–488  ·  view source on GitHub ↗
(self, save_dir, triplane_feat, reso, n_faces=10000, only_largest_cc=True)

Source from the content-addressed store, hash-verified

474
475 @torch.no_grad()
476 def decode_voxel(self, save_dir, triplane_feat, reso, n_faces=10000, only_largest_cc=True):
477 H, W = triplane_feat[0].shape[-2:]
478 D = triplane_feat[1].shape[-1]
479 new_aabb = self._resize_aabb((H, W, D))
480
481 # maching cubes on sdf grid
482 os.makedirs(save_dir, exist_ok=True)
483 sdf_grid = self.decode_grid(triplane_feat, reso, aabb=new_aabb)[..., 0].detach().cpu().numpy() # (H, W, D, 1)
484 # sdf_grid = -F.max_pool3d(-sdf_grid[None, None], 2, 2)[0, 0].detach().cpu().numpy()
485 vox_grid = sdf_grid < 0
486
487 save_path = os.path.join(save_dir, f"r{reso}_voxel.npz")
488 np.savez_compressed(save_path, vox_grid=vox_grid)
489
490
491def evaluate_tsdf_prediction(pred_sdf, gt_sdf, sdf_threshold):

Callers 1

decodeFunction · 0.95

Calls 2

_resize_aabbMethod · 0.95
decode_gridMethod · 0.95

Tested by

no test coverage detected