Computing Smooth Quasi-geodesic Distance Field (QGDF) with Quadratic Programming
Graphical abstract
Introduction
Fast and accurate estimation of geodesic distances is a fundamental research topic in computer graphics and computational geometry. It is central to various applications ranging from surface sampling/parametrization/skinning [1], [2], [3] to shape segmentation/registration/edit [4], [5].
There is a large body of literature [6], [7], [8], [9], [10], [11], [12] on computing a geodesic distance field on a polygonal mesh surface. Some of them [6], [7], [8], [9] are exact while some [10], [11], [12] are approximate. Speed and accuracy are often viewed as a tradeoff for users to select a favorite geodesic algorithm for their specific application occasions. But researchers find that accuracy should not be an absolute evaluation criterion because an exact geodesic distance field is generally continuous but not smooth, which is unfavorable to many applications, e.g., defining an intrinsic shape signature and calculating a local parametrization. Therefore, in recent years, there is a trend toward taking the smoothness requirement into consideration when one evaluates a geodesic algorithm. For example, commute distance [13], diffusion distance [14], biharmonic distance [15] and heat diffusion induced distance [11] are typical examples. However, the resulting distance fields, in spite of being smooth, may be far from the exact geodesic distance fields, especially around the “ridge” points (a point is said to be a ridge point if there exist two different shortest paths); See Fig. 1. The consideration of smoothness brings a new question: how to make a balance between accuracy and smoothness?
In this paper, we use the term Quasi-geodesic Distance Field (QGDF) to denote the distance field we expect. To be exactly, the desirable features of QGDF include two aspects: (a) QGDF is a smooth scalar field on the given surface, and (b) QGDF is sufficiently close to the exact geodesic distance field. Users are allowed to use a unique parameter to balance accuracy and smoothness. Our idea is inspired by an interesting observation: the solution to the shortest path problem on graphs can be found by a linear programming [16]. Based on this, we formulate the problem of computing a geodesic distance field from a pure optimization perspective. Given a mesh and a specific vertex as the source, we compute the unknown distances via quadratic programming, which maximizes while minimizes the Laplacian energy of , subject to the triangle inequalities for each vertex triple contributed by a triangle . In implementation, we use a parameter to control the balance between the two terms that compose the objective function. The quadratic programming based formulation can be solved efficiently by many mature optimization solvers. Experimental results show that the timing cost increases linearly with the number of vertices.
Furthermore, our formulation is very flexible. First, it can be extended to various surface representations including point clouds and tetrahedral meshes. Second, it is able to support various user-specified constraints, which is a big benefit for us to solve many variants of the standard geodesic problem. The nice feature motivates us to apply the proposed algorithm in two applications including defect tolerant geodesic distance fields and symmetry-constrained distance fields, which cannot be easily handled by the known approaches, to our best knowledge.
Section snippets
Exact geodesic methods
Exact geodesic algorithms commonly use a window to encode those geodesic paths sharing the same edge sequence, which enables us to represent infinite many geodesic paths by finite many discrete elements. They generally need to maintain wavefront on mesh edges and propagate it across the faces in a Dijkstra-like sweep. The MMP algorithm [6] and the CH algorithm [7] are two representative methods, with worst-case running time of and respectively on a mesh with vertices.
Our approach
In this section, we first give the key idea on formulating the shortest path problem into a quadratic programming assuming that the input is a weighted graph (each associate weight is non-negative). After that, we discuss its extension to polygonal mesh surfaces, point clouds and tetrahedral meshes. Finally, we show some details in implementation.
Performance
We conducted the experiments on a platform with a 2.8 GHz Intel Core i5-8400 CPU and Win10 operating system. In implementation, we use the established optimization solver Mosek to find the solution. The 3D models used for test are shown in Fig. 6. Besides our algorithm, the methods used for the comparison include
- •
The VTP algorithm [17] that is the state-of-the-art exact algorithm;
- •
The Dijkstra’s algorithm [35] that is widely used for computing shortest paths on graphs;
- •
The fast marching method [10]
Defect tolerant geodesics
Whether exact geodesic approaches or approximate methods, such as the biharmonic distance, are very sensitive to open boundaries — there exist conspicuous cusps on the isolines near the open boundaries. Although there are some research works on this problem [23], [24], they are very tedious. For example, Campen and Kobbelt [23] proposed to bridge the holes and gaps up to a user-specified tolerance threshold such that distances can be computed plausibly across multiple connected components of
Conclusion
In this paper, we formulate the problem of computing a QGDF into a quadratic programming problem that explicitly seeks a trade-off between accuracy and smoothness only using one balance parameter. Compared with the existing approaches for computing a smooth distance field, our approach is able to better satisfy the accuracy requirement whereas the existing approaches cannot. The biggest feature of our algorithm lies in its flexibility. On the one hand, it can be easily extended to point clouds
Declaration of Competing Interest
The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.
Acknowledgments
The authors would like to thank the anonymous reviewers for their valuable comments and suggestions. This work is supported by National Natural Science Foundation of China (61772016, 61772312), the NSFC-Zhejiang Joint Fund for the Integration of Industrialization and Informatization (U1909210), the Dalian University of Technology 2019 Discipline Platform Fund (1000-82212201), the National Young Talents Program of China, and the Strategic Priority Research Program of Chinese Academy of Science (
References (36)
- et al.
Diffusion maps
Appl Comput Harmon Anal
(2006) - et al.
Fast computation of weighted distance functions and geodesics on implicit hyper-surfaces
J Comput Phys
(2001) - et al.
Discrete geodesic graph (DGG) for computing geodesic distances on polyhedral surfaces
Comput Aided Geom Design
(2017) - et al.
Texture mapping via spherical multi-dimensional scaling
- et al.
Farthest-point optimized point sets with maximized minimum distance
- et al.
Shape by example
- et al.
Geodesic shape retrieval via optimal mass transport
- et al.
Non-rigid shape correspondence and description using geodesic field estimate distribution
- et al.
The discrete geodesic problem
SIAM J Comput
(1987) - et al.
Shortest paths on a polyhedron
Fast exact and approximate geodesics on meshes
ACM Trans Graph (TOG)
Improving Chen and Han’s algorithm on the discrete geodesic problem
ACM Trans Graph
A fast marching level set method for monotonically advancing fronts
Proc Natl Acad Sci
Geodesics in heat: A new approach to computing distance based on heat flow
ACM Trans Graph
Constant-time all-pairs geodesic distance query on triangle meshes
Random-walk computation of similarities between nodes of a graph with application to collaborative recommendation
IEEE Trans Knowl Data Eng
Biharmonic distance
ACM Trans Graph
Convex optimization
Cited by (10)
An Accuracy Controllable and Memory Efficient Method for Computing High-Quality Geodesic Distances on Triangle Meshes
2022, CAD Computer Aided DesignCitation Excerpt :Graph-based methods are closely related to window propagation methods, since the graph edges can be computed by applying any exact geodesic algorithm locally. Besides window propagation and graph-based methods, there are other techniques for computing discrete geodesics, such as PDE-based methods [16–21], optimization-based methods [22–26], curve shortening methods [27,28] and Steiner points based methods [29,30]. The PDE and optimization methods are flexible in that they work for a wide range of discrete and continuous domains, and can also deal with constraints and anisotropic metric.
Craniofacial reconstruction based on heat flow geodesic grid regression (HF-GGR) model
2021, Computers and Graphics (Pergamon)Citation Excerpt :Compared with previous approximate geodesic methods, SVG method is more accurate and efficient. Cao et al. [33] proposed quasi-geodesic distance field (QGDF) method for computing accurate or approximate geodesic distance. This method utilizes standard linear programming to solve geodesic distance by introducing smoothness energy.
A Convex Optimization Framework for Regularized Geodesic Distances
2023, Proceedings - SIGGRAPH 2023 Conference PapersA Variational Framework for Curve Shortening in Various Geometric Domains
2023, IEEE Transactions on Visualization and Computer GraphicsClassical and discrete differential geometry: Theory, applications and algorithms
2023, Classical and Discrete Differential Geometry: Theory, Applications and AlgorithmsGeodesic Tracks: Computing Discrete Geodesics With Track-Based Steiner Point Propagation
2022, IEEE Transactions on Visualization and Computer Graphics