-
Notifications
You must be signed in to change notification settings - Fork 0
Description
This issue is a bit subjective. Here is the basis of the problem. If I have a binary blob 3x3x3 that I want to mesh the outside of. Marching cubes will produce a 2x2x2 cube. Where the shape connects the center points of the voxels.
This image shows the 3x3x3 voxel data backing, the marching cubes generated mesh, and a mesh that surrounds the whole pixels/voxels.
I think a mesh representation shouldn't change based on the scale of the image. How would you expect a binary image to scale? If we double the resolution of the image then our 3x3x3 blob should be come 6x6x6. Then our marching cubes representation would become 5x5x5. The original mesh volume was 8au, the voxel volume was 27au. With the new resolution the mesh will be 15.6au where the voxel volume wouldn't change.
This discrepancy goes away at higher resolutions, but it can be quite noticeable for 3D volumes with anisotropic pixel sizes.