Contributions to Relative Position Descriptor Computation in the Case of Vector Objects
Total Page:16
File Type:pdf, Size:1020Kb
Contributions to Relative Position Descriptor Computation in the case of Vector Objects by Jason Kemp A Thesis presented to The University of Guelph In partial fulfilment of requirements for the degree of Master of Science in Computer Science Guelph, Ontario, Canada c Jason Kemp, May, 2019 ABSTRACT Contributions to Relative Position Descriptor Computation in the case of Vector Objects Jason Kemp Advisor: University of Guelph, 2019 Dr. Pascal Matsakis Two new algorithms are introduced, both related to Relative Position Descriptors (RPDs) in the case of vector objects. The first, The Great Circle distribution, presents a new spherical point distribution. This algorithm distributes points over the surface of a sphere, ensuring points lie on the minimum number of great circles possible, while keeping the points distributed evenly. Multiple evenness measures are used to compare evenness with multiple common spherical point distribution techniques. This distribution is designed as a direction set for 3D RPDs, where each point represents a direction, and will improve the efficiency of 3D vector RPDs. The second new algorithm builds on the φ-descriptor, a recent RPD. In this paper the first algorithm to calculate the φ-descriptor for 2D vector objects is proposed and tested. The results are compared against the existing 2D raster φ-descriptor. The new algorithm is intended to show the versatility of the φ-descriptor. Table of Contents Abstract II 1 Introduction 1 1.1 Relative Position Descriptors . .1 1.2 Direction Sets . .2 1.3 Thesis Statement . .3 1.4 Motivation and significance . .3 1.5 Thesis Overview . .4 2 Background and Literature Review 5 2.1 Relative Position Descriptors . .5 2.1.1 Existing RPDs . .5 2.1.2 The Force Histogram . .6 2.1.3 The PHI-Descriptor . .6 2.1.4 Similarity Measures . .9 2.2 Even Distribution of points on a Sphere . 11 2.2.1 Existing Distributions . 11 2.2.2 Distributions used in Comparative Study . 13 2.2.3 Evenness Measures . 15 3 Direction Sets for Force Histogram Computation in the case of 3D Vector Objects 20 3.1 Variant . 20 3.1.1 Motivation . 20 3.1.2 Formulation . 25 3.1.3 Solution . 25 3.2 Comparative Study . 28 3.2.1 Evenness Results . 28 3.2.2 More on Gn vs. Cn ........................ 34 3.3 Conclusion . 37 III 4 PHI-Descriptor Computation in the case of 2D Vector Objects 39 4.1 Algorithm . 39 4.1.1 Points of Interest . 40 4.1.2 Find Ray Intersections . 42 4.1.3 Point in Polygon Test . 45 4.1.4 Create Rays . 46 4.1.5 Create Phi Regions . 50 4.1.6 Rotation . 54 4.1.7 Build Descriptor . 55 4.2 Implementation . 55 4.2.1 Input and Output . 56 4.2.2 Data Structures . 56 4.2.3 Visual Output . 58 4.2.4 Testing During Implementation . 58 4.3 Experiments . 58 4.3.1 Test Data . 59 4.3.2 Convert to Raster Objects . 60 4.4 Results . 63 4.4.1 Limitations . 70 4.5 Conclusion . 71 4.5.1 Future Work . 71 5 Conclusions and future work 73 5.1 Conclusions . 73 5.2 Future work . 74 Bibliography 75 IV Chapter 1 Introduction In this chapter we introduce the topics of Relative Position Descriptors (section 1.1) and Direction Sets (Section 1.2). A thesis statement is provided in Section 1.3. The motivation for the work is described in Section 1.4. And Section 1.5 provides an overview of the layout of the thesis. 1.1 Relative Position Descriptors A Relative Position Descriptor (RPD) provides a quantitative description of the spatial position of two image objects with respect to each other. Robot navigation, GIS, linguistic scene description, and medical imaging are some areas that can benefit from RPDs. A descriptor can, for example, give a quantitative answer to the question: \Is object A to the left of object B?". It may indicate whether A is exactly to the left, not at all to the left, or to some degree to the left of B. There are many RPD algorithms designed for raster objects, i.e., sets of pixels (2D case) or voxels (3D case). There are significantly fewer RPD algorithms de- signed for use with vector objects, i.e., sets of vertices defining polygons (2D case) or polyhedra (3D case). This thesis focuses on RPD algorithms in the case of vector objects. Two RPDs are considered: the force histogram and the φ-descriptor. The force histogram, introduced in 1999, has been established in research as a powerful RPD. Algorithms exist to compute the force histogram in the case of 2D raster objects, 2D vector objects, 3D raster objects and 3D vector objects - although the algorithms 1 for 3D objects are computationally inefficient. A much more recent RPD, the φ- descriptor, introduced in 2015, encapsulates much more relative position information than the force histogram, and appears to be much more powerful. An algorithm exists to compute the φ-descriptor in the case of 2D vector objects, but none yet for the case of 2D vector objects, or 3D objects. 1.2 Direction Sets One common trait among RPDs is the need to calculate one or more values over multiple directions in space. A natural set of reference directions in the 2D space is 2π 2π 2π the set f0; k ; 2 k ; :::; (k − 1) k g where k is the number of directions. This direction set can be pictured as a set of points evenly distributed on the unit circle, where each point indicates a direction from the center of the circle. When calculating a RPD for 3D objects, a 3D direction set is required. The 3D direction set can be pictured as a set of points evenly distributed across a unit sphere, where each point indicates a direction from the center of the sphere. This is a well known problem and several solutions have been proposed, but none with the aim to aid in the computation of 3D RPDs. For example, the computation of the force histogram of a pair of 3D vector objects comes down to the computation of the force histogram of multiple pairs of 2D vector objects, where each pair of 2D objects is obtained by slicing the 3D objects with a plane. Slicing the 3D objects repeatedly is computationally expensive. However if multiple reference directions exist on a single plane, i.e., on a single great circle around the unit sphere, then the same pair of 2D objects can be used towards the computation of the 3D force histogram in all these directions, i.e., slicing can be drastically reduced. 2 1.3 Thesis Statement While there exist several even spherical point distributions, none are designed as a 3D reference direction set for 3D RPDs. Currently there exists an algorithm for calculating the φ-descriptor of 2D raster objects, but there is no algorithm for calculating the φ-descriptor of 2D vector objects. A variation to the problem of distributing points evenly on a sphere is presented along with a first solution; the variation has additional con- straints to optimize its solution as a 3D reference direction set and speed up force histogram computation in the case of 3D vector objects. Also in this thesis, the first algorithm to calculate the φ-descriptor of 2D vector objects is presented and tested. 1.4 Motivation and significance An algorithm to compute the force histogram in the case of 3D vector objects exists, yet no optimal direction set existed for its computation. The algorithm could be improved upon, potentially as well as future 3D RPD algorithms, using a direction set designed for this purpose. The new direction set presented in this thesis is designed specifically to improve on these computation times. The φ-descriptor was created recently, and appears to be much more versatile than the other RPDs. The results in this thesis are evidence of this versatility: it has been shown that the φ-descriptor encapsulates much more spatial relationship information than the force histogram [1] [2]; it is shown here, that like the force histogram, it is able to handle vector objects. 3 1.5 Thesis Overview Chapter 2 explores the background of RPDs and even distribution of points on a sphere. Chapter 3 explores a first algorithm to calculate direction sets for use with 3D RPDs. Chapter 4 looks at a new algorithm to extend the φ-descriptor to work with vector objects, rather than just raster objects. Conclusions and future work are found in Chapter 5. 4 Chapter 2 Background and Literature Review In this chapter we look at existing work in RPDs in Section 2.1, as well as methods to compare how similar two φ-descriptors are, Section 2.1.4. We then look at methods to evenly distribute points on a sphere in Section 2.2, as well as methods to measure how even a distribution is, Section 2.2.3. 2.1 Relative Position Descriptors RPDs provide a quantitative description of the spatial relations between objects. These spatial relations can be categorized as direction, topology, distance, and sur- rounds. Freeman [3] was the first to suggest that the spatial relations could be used to model relative position. He also suggested that a fuzzy system be used to allow for these relations to be given a degree of truth. Miyajima and Ralescu [4] proposed that an RPD could be created to represent these models of spatial relations. RPDs are visual descriptors, other visual discriptors include color, texture and shape descrip- tors [5]. Robot navigation, GIS, linguistic scene description, and medical imaging are some areas that can benefit from RPDs [5].