Indexed Polygon Matching under Similarities
Fernando Luque, Jorge L. López-López and Edgar Chavez
Polygons appear as constructors in many applications and deciding if two polygons match under similarity transformations and noise is a fundamental problem. Solutions in the literature consider only matching pairs of polygons, implying a sequential comparison when we have a collection. In this paper, we present the first algorithm allowing indexed retrieval of polygons under similarities. We reduce the problem to searching points in the plane, exact searching in the absence of noise, and approximate searching for similar noisy polygons. The above gives a O(n + log(m)) time algorithm to find the matching polygons under noise and O(1) time for exact similar polygons. We tested our heuristic for indexed polygons in an extensive collection of convex, star-shaped, simple, and self-intersecting polygons. For small amounts of noise, we achieve perfect recall for all polygons. For large amounts of noise, the lowest recall is for convex polygons, while attaining the highest recall is for general (self-intersecting) polygons. The above is not a significant limitation. To recover convex polygons efficiently before indexing, we define a random permutation of the vertices, converting all input polygons to a general polygon and achieving the same successful recovery rates, which is a perfect recall for high noise levels.
