You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hi, thanks a bunch for releasing this useful library!
It looks like this library computes SDF by treating a meshes's vertex set as a point cloud, finding the nearest vertex, then searching the faces adjacent to that vertex as candidates for the nearest surface point to define the distance.
However, this strategy is not guaranteed to work in general (even disregarding numerical inaccuracies): the nearest point on a mesh may lie on a face which is not adjacent to the nearest vertex. This leads to an inaccurately computed SDF, and the difference can be significant on meshes with irregular tessellation. This turned out to be a significant source of error in some SDF fitting experiments (see image below).
If this understanding is correct, could we add a note in the intro or the Reliability section of the README or something, to let users know that it is approximate? Right now it's only mentioned very briefly in the benchmark section. It's totally fine to offer this strategy, but it would be good to make it clear, and indicate that the difference from the true SDF may be significant on some meshes.
The text was updated successfully, but these errors were encountered:
Hello, do you have a source for your picture? Can you provide the title of the paper? I am looking for open source C++ code that calculates SDF values more accurately. Thank you very much!
@ASMDlab this was just a small experiment. For the "ground truth" SDF on the right I used libigl https://github.com/libigl/libigl/blob/main/include/igl/signed_distance.h, which is actually a C++ library under the hood (along with python bindings to a subset of its features). It contains many useful geometry processing algorithms.
Hi, thanks a bunch for releasing this useful library!
It looks like this library computes SDF by treating a meshes's vertex set as a point cloud, finding the nearest vertex, then searching the faces adjacent to that vertex as candidates for the nearest surface point to define the distance.
However, this strategy is not guaranteed to work in general (even disregarding numerical inaccuracies): the nearest point on a mesh may lie on a face which is not adjacent to the nearest vertex. This leads to an inaccurately computed SDF, and the difference can be significant on meshes with irregular tessellation. This turned out to be a significant source of error in some SDF fitting experiments (see image below).
If this understanding is correct, could we add a note in the intro or the Reliability section of the README or something, to let users know that it is approximate? Right now it's only mentioned very briefly in the benchmark section. It's totally fine to offer this strategy, but it would be good to make it clear, and indicate that the difference from the true SDF may be significant on some meshes.
The text was updated successfully, but these errors were encountered: