Skip to content

result from marching_cubes has identical vertex indices #1731

Closed
@Khoa-NT

Description

@Khoa-NT

🐛 Bugs / Unexpected behaviors

The result from marching_cubes on GPU is not correct

Instructions To Reproduce the Issue:

pytorch3D installed from commit c292c71
Previous test result is in #1641 (comment)

import torch
from pytorch3d.ops.marching_cubes import marching_cubes, marching_cubes_naive
from pytorch3d.io import save_obj

from skimage import measure
from skimage.draw import ellipsoid

# Generate a level set about zero of two identical ellipsoids in 3D
ellip_base = ellipsoid(50, 60, 16, levelset=True)
ellip_base_pt = torch.from_numpy(ellip_base).unsqueeze(0).float() # (N, D, H, W)


### 1) Run on CPU with marching_cubes_naive
verts_cpu_naive, faces_cpu_naive = marching_cubes_naive(ellip_base_pt, 0)
save_obj('marching_cubes_naive.obj', verts_cpu_naive[0], faces_cpu_naive[0])

### 2) Run on CPU with marching_cubes
verts_cpu, faces_cpu = marching_cubes(ellip_base_pt, 0)
save_obj('marching_cubes_cpu.obj', verts_cpu[0], faces_cpu[0])

### 3) Run on CUDA with marching_cubes
verts_cuda, faces_cuda = marching_cubes(ellip_base_pt.cuda(), 0)
save_obj('marching_cubes_cuda.obj', verts_cuda[0], faces_cuda[0])

View from meshlab

1) Run on CPU with marching_cubes_naive

image

2) Run on CPU with marching_cubes

image

3) Run on CUDA with marching_cubes

image

image

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions