28
3

Aligning Points to Lines: Provable Approximations

Abstract

We suggest a new optimization technique for minimizing the sum i=1nfi(x)\sum_{i=1}^n f_i(x) of nn non-convex real functions that satisfy a property that we call piecewise log-Lipschitz. This is by forging links between techniques in computational geometry, combinatorics and convex optimization. As an example application, we provide the first constant-factor approximation algorithms whose running-time is polynomial in nn for the fundamental problem of \emph{Points-to-Lines alignment}: Given nn points p1,,pnp_1,\cdots,p_n and nn lines 1,,n\ell_1,\cdots,\ell_n on the plane and z>0z>0, compute the matching π:[n][n]\pi:[n]\to[n] and alignment (rotation matrix RR and a translation vector tt) that minimize the sum of Euclidean distances i=1ndist(Rpit,π(i))z\sum_{i=1}^n \mathrm{dist}(Rp_i-t,\ell_{\pi(i)})^z between each point to its corresponding line. This problem is non-trivial even if z=1z=1 and the matching π\pi is given. If π\pi is given, the running time of our algorithms is O(n3)O(n^3), and even near-linear in nn using core-sets that support: streaming, dynamic, and distributed parallel computations in poly-logarithmic update time. Generalizations for handling e.g. outliers or pseudo-distances such as MM-estimators for the problem are also provided. Experimental results and open source code show that our provable algorithms improve existing heuristics also in practice. A companion demonstration video in the context of Augmented Reality shows how such algorithms may be used in real-time systems.

View on arXiv
Comments on this paper