Computing Visibility Properties of Polygons

Abstract In many pattern recognition problems the objects of interest are represented as polygons. For some applications such as pattern matching the shape of the polygons is successfully measured in terms of the visibility relations between the edges. In this paper we survey some recent results in computational geometry that allow efficient computation of visibility properties between edges of a simple polygon as well as more general visibility relations. In particular, four natural definitions of edge-to-edge visibility are considered and a linear-time, and thus optimal, algorithm is discussed to determine edge-to-edge visibility under any of the four definitions. Furthermore, an O(n log log n) time algorithm is reviewed for determining that region of an n-gon P that is weakly visible from a specified edge of P (the strong hidden-line problem). The algorithm combines results from visibility and geodesic paths with the recent polygon triangulation algorithm of Tarjan and Van Wyk [42]. We also discuss the problem of determining whether a polygon is visible from a specified edge. In particular three natural definitions of edge-visibility of polygons are considered and new optimal algorithms are proposed for testing visibility from a specified edge under any of the three definitions.

[1]  Godfried T. Toussaint,et al.  PATTERN RECOGNITION AND GEOMETRICAL COMPLEXITY. , 1980 .

[2]  D. T. Lee,et al.  Visibility of a simple polygon , 1983, Comput. Vis. Graph. Image Process..

[3]  Makoto Nagao,et al.  Structural matching of line drawing using the geometric relationship between line segments , 1984 .

[4]  Godfried T. Toussaint A linear-time algorithm for solving the strong hidden-line problem in a simple polygon , 1986, Pattern Recognit. Lett..

[5]  F. A. Valentine,et al.  Some properties of $L$-sets in the plane , 1949 .

[6]  Micha Sharir,et al.  Computing the link center of a simple polygon , 1987, SCG '87.

[7]  T. Asano An Efficient Algorithm for Finding the Visibility Polygon for a Polygonal Region with Holes , 1985 .

[8]  Godfried T. Toussaint,et al.  Separation of two monotone polygons in linear time , 1984, Robotica.

[9]  Leonidas J. Guibas,et al.  Visibility and intersection problems in plane geometry , 1989, Discret. Comput. Geom..

[10]  Godfried T. Toussaint,et al.  An Optimal Algorithm for Determining the Visibility of a Polygon from an Edge , 1981, IEEE Transactions on Computers.

[11]  Emo WELZL,et al.  Constructing the Visibility Graph for n-Line Segments in O(n²) Time , 1985, Inf. Process. Lett..

[12]  Godfried T. Toussaint,et al.  A simple linear hidden-line algorithm for star-shaped polygons , 1985, Pattern Recognit. Lett..

[13]  Leonidas J. Guibas,et al.  Linear time algorithms for visibility and shortest path problems inside simple polygons , 2011, SCG '86.

[14]  Nils J. Nilsson,et al.  A mobius automation: an application of artificial intelligence techniques , 1969, IJCAI 1969.

[15]  A. Bruckner,et al.  On _{} sets, the Hausdorff metric, and connectedness , 1962 .

[16]  Leonidas J. Guibas,et al.  Visibility and intersectin problems in plane geometry , 1985, SCG '85.

[17]  D. T. Lee,et al.  An Optimal Algorithm for Finding the Kernel of a Polygon , 1979, JACM.

[18]  F. A. Valentine Local convexity and _{} sets , 1965 .

[19]  F. Frances Yao On the priority approach to hidden-surface algorithms , 1980, 21st Annual Symposium on Foundations of Computer Science (sfcs 1980).

[20]  Herbert Freeman,et al.  An Algorithm for the Solution of the Two-Dimensional "Hidden-Line" Problem , 1967, IEEE Trans. Electron. Comput..

[21]  Godfried T. Toussaint,et al.  Shortest path solves edge-to-edge visibility in a polygon , 1986, Pattern Recognit. Lett..

[22]  Joseph O'Rourke,et al.  Worst-case optimal algorithms for constructing visibility polygons with holes , 1986, SCG '86.

[23]  Hossam ElGindy,et al.  On Triangulating Palm Polygons in Linear Time , 1988 .

[24]  Godfried T. Toussaint,et al.  On a convex hull algorithm for polygons and its application to triangulation problems , 1982, Pattern Recognit..

[25]  D. T. Lee,et al.  Computing the visibility polygon from an edge , 1986, Comput. Vis. Graph. Image Process..

[26]  Robert E. Tarjan,et al.  A linear-time algorithm for triangulating simple polygons , 1986, STOC '86.

[27]  Bernard Chazelle,et al.  A theorem on polygon cutting with applications , 1982, 23rd Annual Symposium on Foundations of Computer Science (sfcs 1982).

[28]  John Hershberger,et al.  Finding the visibility graph of a simple polygon in time proportional to its size , 1987, SCG '87.

[29]  Hossam Ahmed Elgindy,et al.  Hierarchical decomposition of polygons with applications , 1985 .

[30]  David Avis,et al.  A Linear Algorithm for Computing the Visibility Polygon from a Point , 1981, J. Algorithms.

[31]  Kurt Mehlhorn,et al.  Sorting Jordan sequences in linear time , 1985, SCG '85.

[32]  Robert E. Tarjan,et al.  Design and Analysis of a Data Structure for Representing Sorted Lists , 1978, SIAM J. Comput..

[33]  Larry S. Davis,et al.  Computational Models of Space: Isovists and Isovist Fields , 1979 .

[34]  J. Griffiths Bibliography of hidden - line and hidden - surface algorithms , 1978 .

[35]  David Avis,et al.  A Linear Algorithm for Finding the Convex Hull of a Simple Polygon , 1979, Inf. Process. Lett..

[36]  David Maier,et al.  Hysterical B-trees , 1981, Inf. Process. Lett..

[37]  Godfried T. Toussaint,et al.  Separability of pairs of polygons through single translations , 1987, Robotica.

[38]  D. T. Lee,et al.  Euclidean shortest paths in the presence of rectilinear barriers , 1984, Networks.

[39]  David Avis,et al.  A combinational approach to polygon similarity , 1983, IEEE Trans. Inf. Theory.

[40]  Robert M. Haralick,et al.  Decomposition of Two-Dimensional Shapes by Graph-Theoretic Clustering , 1979, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[41]  Michael Ian Shamos,et al.  Computational geometry: an introduction , 1985 .