Paper: https://onlinelibrary.wiley.com/doi/full/10.1111/cgf.14395
Giving two triangle meshes A.obj and B.obj, the following command
gives the lower bound L and upper bound U of Hausdorff distance from A.obj to
B.obj that U - L < 1e-6.
hausdorff -a A.obj -b B.obj -e 1e-6 -c abs -t pointThe output will contain a line in the form of [distance] L - U and
report many detailed information about the computational procedure.
This project can be built easily by:
git clone https://github.com/ZJUCADGeoSim/Hausdorff.git
cmake -S . -B build
cmake --build build Then, you can find the binary hausdorff at ./build/bin.
Run our method for bound estimation:
./build/bin/hausdorff -a ./sample_data/hand-tri-smooth.obj -b ./sample_data/hand-tri.obj -t point- Run Tang et al. [2009]'s method for bound estimation:
./build/bin/hausdorff -a ./sample_data/hand-tri-smooth.obj -b ./sample_data/hand-tri.obj -t triangle- Relative error can be applied via options
-e 0.01 -c rel. It implies the stop conditionU - L < 0.01 * L. - Diag-rel error can be applied via options
-e 0.01 -c diag. It implies the stop conditionU - L < 0.01 * diag length of bbox.
When working on the research about remeshing, we find that there is no code to compute the Hausdorff distance reliably and efficiently. So, we made it.