Table of Contents
Fetching ...

Cascading upper bounds for triangle soup Pompeiu-Hausdorff distance

Leonardo Sacht, Alec Jacobson

TL;DR

This work tackles efficient approximation of the Pompeiu-Hausdorff distance $h(A,B)$ between triangle soups in $\mathbb{R}^3$ using a branch-and-bound framework augmented by a cascade of four upper bounds. The key idea is to discard triangles with upper bounds below a global lower bound, while refining remaining triangles through subdivision, with a priority queue guiding processing by the largest upper bounds; three of the four upper bounds are novel and tailored for different geometric configurations, including thin triangles. Across thousands of mesh pairs, the proposed ordering of bounds yields substantial speedups over prior accurate methods, achieving tolerance-bound estimates far faster on average, particularly in near-zero distance regimes. The work provides an open-source implementation and discusses limitations, potential preprocessing steps, and avenues for future work, including GPU acceleration and extensions to the symmetric distance $H(A,B)$.

Abstract

We propose a new method to accurately approximate the Pompeiu-Hausdorff distance from a triangle soup A to another triangle soup B up to a given tolerance. Based on lower and upper bound computations, we discard triangles from A that do not contain the maximizer of the distance to B and subdivide the others for further processing. In contrast to previous methods, we use four upper bounds instead of only one, three of which newly proposed by us. Many triangles are discarded using the simpler bounds, while the most difficult cases are dealt with by the other bounds. Exhaustive testing determines the best ordering of the four upper bounds. A collection of experiments shows that our method is faster than all previous accurate methods in the literature.

Cascading upper bounds for triangle soup Pompeiu-Hausdorff distance

TL;DR

This work tackles efficient approximation of the Pompeiu-Hausdorff distance between triangle soups in using a branch-and-bound framework augmented by a cascade of four upper bounds. The key idea is to discard triangles with upper bounds below a global lower bound, while refining remaining triangles through subdivision, with a priority queue guiding processing by the largest upper bounds; three of the four upper bounds are novel and tailored for different geometric configurations, including thin triangles. Across thousands of mesh pairs, the proposed ordering of bounds yields substantial speedups over prior accurate methods, achieving tolerance-bound estimates far faster on average, particularly in near-zero distance regimes. The work provides an open-source implementation and discusses limitations, potential preprocessing steps, and avenues for future work, including GPU acceleration and extensions to the symmetric distance .

Abstract

We propose a new method to accurately approximate the Pompeiu-Hausdorff distance from a triangle soup A to another triangle soup B up to a given tolerance. Based on lower and upper bound computations, we discard triangles from A that do not contain the maximizer of the distance to B and subdivide the others for further processing. In contrast to previous methods, we use four upper bounds instead of only one, three of which newly proposed by us. Many triangles are discarded using the simpler bounds, while the most difficult cases are dealt with by the other bounds. Exhaustive testing determines the best ordering of the four upper bounds. A collection of experiments shows that our method is faster than all previous accurate methods in the literature.
Paper Structure (14 sections, 27 equations, 15 figures, 3 tables)

This paper contains 14 sections, 27 equations, 15 figures, 3 tables.

Figures (15)

  • Figure 1: In this remeshing example, the Pompeiu-Hausdorff distance $h(A,B)$ is smaller than 0.09% of the length of the diagonal of the bounding box of $A$ and $B$.
  • Figure 2: Comparison to the method of Zheng et al.Zheng2022 on a benchmark with 10K mesh pairs: meshes $A$ are models from Thingi10K Thingi10K and meshes $B$ are their decimated counterparts with half the number of triangles. Our method is 16 times faster on average.
  • Figure 3: Branch and bound computes lower and upper bounds to discard or subdivide triangles until the prescribed tolerance for the Pompeiu-Hausdorff distance $h(A,B)$ is reached.
  • Figure 4: When the vertices of a triangle $T$ project to the same triangle on mesh B, $h(T,B)$ is the maximum among vertex distances.
  • Figure 5: The first upper bound for the distance from a point $\mathbf{p}$ to mesh $B$ is given by an edge length plus a vertex distance.
  • ...and 10 more figures