Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Marching Cubes Quality #22

Open
cheind opened this issue Aug 31, 2023 · 3 comments
Open

Marching Cubes Quality #22

cheind opened this issue Aug 31, 2023 · 3 comments

Comments

@cheind
Copy link

cheind commented Aug 31, 2023

Hey,

thank you very much for your wonderful contribution!

Issue

We started testing NeuS2 and found that the mesh quality generated from within the UI seems inferior to the results we get from loading the density image and processing it in external marching cubes or dual contouring algorithms. Which is suprising to me, since the density images loses information in part to the mapping from floating point SDF to discrete intensity values. Note, this issue might exist in instant-ngp code basis as well, but we haven't tested.

Results

The following images are generated as follows:

  • load the lego scene in NeuS2
  • let it run till convergence
  • stop the training
  • set the sdf grid res to 64, range to 1
  • export the mesh MESH_A and density image
  • process density image with sdftoolbox to generate mesh MESH_B (marching cubes) and MESH_C (dual contouring / surface nets)
  • load the meshes in Meshlab and take screenshots from the same perspective

MESH_A:

A

MESH_B:

B

MESH_C:

C

Any feedback is welcome :)

@cheind
Copy link
Author

cheind commented Aug 31, 2023

might be related to #17

@19reborn
Copy link
Owner

19reborn commented Sep 2, 2023

Hi @cheind, this is very interesting. Have you tried higher resolution (e.g. 400)?

@cheind
Copy link
Author

cheind commented Sep 3, 2023

Hey @19reborn, no we haven't done that yet (at least not extensively). My subjective feeling is, that with higher resolution the error becomes less apparent.

We plan to run reconstruction tests on real/synthetic scenes for which a ground-truth surface model exists and then measure the reconstruction error by comparing surface meshes directly (i.e Hausdorff distance).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants