Close
About
FAQ
Home
Collections
Login
USC Login
Register
0
Selected
Invert selection
Deselect all
Deselect all
Click here to refresh results
Click here to refresh results
USC
/
Digital Library
/
University of Southern California Dissertations and Theses
/
Efficient minimum bounding circle-based shape retrieval and spatial querying
(USC Thesis Other)
Efficient minimum bounding circle-based shape retrieval and spatial querying
PDF
Download
Share
Open document
Flip pages
Contact Us
Contact Us
Copy asset link
Request this asset
Transcript (if available)
Content
INFORMATION TO USERS This manuscript has been reproduced from the microfilm master. UM I films the text directly from the original or copy submitted. Thus, some thesis and dissertation copies are in typewriter face, while others may be from any type of computer printer. The quality of this reproduction is dependent upon the quality of the copy submitted. Broken or indistinct print, colored or poor quality illustrations and photographs, print bleedthrough, substandard margins, and improper alignment can adversely affect reproduction. In the unlikely event that the author did not send U M I a complete manuscript and there are missing pages, these w ill be noted. Also, if unauthorized copyright material had to be removed, a note w ill indicate the deletion. Oversize materials (e.g.. maps, drawings, charts) are reproduced by sectioning the original, beginning at the upper left-hand comer and continuing from left to right in equal sections with small overlaps. Photographs included in the original manuscript have been reproduced xerographically in this copy. Higher quality 6* x 9* black and white photographic prints are available for any photographs or illustrations appearing in this copy for an additional charge. Contact UM I directly to order. ProQuest Information and Learning 300 North Zeeb Road, Ann Arbor, M l 48106-1346 USA 800-521-0600 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. EFFICIENT MINIMUM BOUNDING CIRCLE BASED SHAPE RETRIEVAL AND SPATIAL QUERYING by Maytham H. Safar A Dissertation Presented to the FACULTY OF THE GRADUATE SCHOOL UNIVERSITY OF SOUTHERN CALIFORNIA In Partial Fulfillment of the Requirements for the Degree DOCTOR OF PHILOSOPHY (COMPUTER SCIENCE) December 2000 Copyright 2000 Maytham H. Safar Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. UMI Number: 3041515 ___ ® UMI UM I Microform 3041515 Copyright 2002 by ProQuest Information and Learning Company. All rights reserved. This microform edition is protected against unauthorized copying under Title 17, United States Code. ProQuest Information and Learning Company 300 North Zeeb Road P.O. Box 1346 Ann Arbor, M l 48106-1346 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. UNIVERSITY OF SOUTHERN CALIFORNIA THE GRADUATE SCHOOL uravEurrr p aju c LOS ANGELES. CALI FORNI A M O O T This dissertation w ritten by ............................ under the direction o f h i.S — Dissertation Committee, and app roved b y all its members* has been presented to and accepted by The Graduate School, in partial fulfillm ent of re quirements for the degree of DOCTOR OF PHILOSOPHY O m of Cndumlt Studies Date DISSERTATION COMMITTEE Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Dedication This thesis is dedicated to my family, and my best friend who supported through to its completion. Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Acknowledgements The work presented in this thesis could not have been possible without the guid ance and support of many people. First, and foremost. I would like to acknowl edge and thank the help of my advisor, Dr. Cyrus Shahabi, who has provided me with substantial assistance throughout my course of study, and I am very grateful to him for all he has done. He gave me the opportunity of pursuing this work and directing my efforts to complete it. He has been an invaluable source of support and guidance all through my graduate program, and offered extensive and valuable advice. There are also numerous people to whom I am greatly indebted for having helped me in this endeavor. I wish to thank. Dr. F. Mokhtarian. Dr. J. Gary, Ai Hezhi. Xiaoming Sun, Chung-hao Tan. Heng Liu, Ammar Safar, and Geoff Leach, for their timely input, advice, and helpful assistance. I also thank Kuwait Goverment, especially Kuwait University, for their financial assistance. A spe cial mention goes to the people at the Computer Science Department (students, faculty and staff) for their unconditional support. iii permission of the copyright owner. Further reproduction prohibited without permission. Last, but not least. I would like to thank my parents, wife, and my best friend for their support, faith in my abilities to accomplish anything I set out to do. and for being a source of motivation and encouragement, which works even from thousands of miles away. Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Contents Dedication ii Acknowledgements iii List Of Tables viii List Of Figures ix Abstract xi 1 Introduction I 1.1 Motivation and Problem S tatem en t................................................... 1 1.2 C ontributions......................................................................................... 6 1.2.1 Shape Representation................................................................ 7 1.2.2 Why M B C ? ................................................................................ 3 1.2.3 MBC for Similarity Q u e rie s .................................................... 9 1.2.4 MBC for Spatial Q ueries.......................................................... 13 1.3 O utline..................................................................................................... 15 2 Related Work 17 2.1 Shape Description Techniques............................................................ 17 2.2 Similarity S e a rc h .................................................................................. 21 2.3 Spatial Q u e rie s...................................................................................... 24 3 Definitions and Notations 25 3.1 MBC F e a tu re s...................................................................................... 25 4 Similarity Queries 30 4.1 Query Types ......................................................................................... 30 4.1.1 Exact Match Shape Retrieval - EM ...................................... 31 4.1.2 RST Shape R etriev al.............................................................. 33 4.1.3 Similarity Shape Retrieval - S I M ........................................... 37 4.2 Index Structures ................................................................................... 38 v Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 4.2.1 iNaive Index S tru ctu re............................................................ 41 4.2.2 I t p a s Index S tructure............................................................ 41 4.2.3 I v a s Index Structure ............................................................ 45 4.2.4 I t p v a s Index S tru ctu re......................................................... 47 5 Spatial Queries 49 5.1 Spatial Queries with M B C ................................................................... 49 5.2 Topological R elations............................................................................ 52 5.2.1 Topological Relations using M B C ......................................... 55 5.2.2 Special Cases of Topological Relations ................................ 59 5.3 Direction R elations................................................................................ 65 5.3.1 Cone-Based Direction R elations............................................ 66 5.4 Observations on MBC and MBR Approaches.................................... 71 5.4.1 Sphere Index for M BCs............................................................ 73 5.4.2 Complex Q u e rie s...................................................................... 74 6 Evaluation Framework 76 6.1 Accuracy................................................................................................... 76 6.2 C o s t ......................................................................................................... 78 6.3 Robustness to Noise ............................................................................. 79 6.4 Robustness to Boundary Points Selection.......................................... 81 6.5 Support of Different Query T y p e s....................................................... 86 6.6 Human P erce p tio n ................................................................................ 87 7 Optimization Techniques 88 7.1 Optimized MBC Computation Algorithm.......................................... 89 7.2 Phase Values Trends of Fourier T ran sfo rm ....................................... 94 8 Performance Evaluation 103 8.1 Shape Description Techniques.................................................................103 8.1.1 Experimental S etup...................................................................... 103 8.1.1.1 Grid-Based Method .................................................... 108 8.1.1.2 Fourier Descriptors M e th o d ........................................108 8.1.1.3 MBC-TPVAS M e th o d .............................................. 109 8.1.1.4 Delaunay Triangulation M ethod................................. 110 8.1.2 Experimental R esults................................................................... 110 8.1.2.1 C o s t.................................................................................110 8.1.2.2 A c cu ra cy ....................................................................... I ll 8.1.2.3 Robustness to N o is e .....................................................114 8.1.2.4 Robustness to Boundary Points Selection 119 8.1.2.5 Support of Different Query T ypes...............................122 8.1.2.6 Impact of Human P erce p tio n .....................................125 8.1.3 Discussion.......................................................................................128 vi Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 8.2 Index Structures ......................................................................................132 8.2.1 Experimental Setup........................................................................132 8.2.2 Experimental R esults............................ 133 8.3 Optimization Techniques..................................................................... 142 9 Conclusions and Future Work 145 9.1 Conclusions........................................................................................... 145 9.2 Future W ork........................................................................................... 152 Reference List 153 Appendix A Cost Analysis of Index S tructures..............................................................162 A.l MBC A lg o rith m .................................................................................... 162 A.2 Index Cost Analysis............................................................................. 164 Appendix B Spatial Relations with M BR .........................................................................167 B.l Topological Relations Using M B R s .....................................................167 B.2 Direction Relations Using M B R s .....................................................171 Appendix C Alternative Shape Description T echniques...................................................174 C.l Fourier Descriptors Method ................................................................. 174 C.2 Grid Based M ethod................................................................................. 177 C.2.0.1 Rotation N orm alization............................................ 179 C.2.0.2 Scale N orm alization...................................................180 C.3 Delaunay Triangulation M eth o d ........................................................... 180 C.4 MBC-TPVAS M e th o d ........................................................................... 183 Appendix D Computation and Storage Cost A n aly sis......................................................186 D.l Grid Based M ethod................................................................................. 186 D.2 Fourier Descriptors Method ..................................................................188 D.3 Delaunay Triangulation M eth o d ............................................................188 D.4 M BC-TPVAS Method ........................................................................ 189 “thesisinput voIume2.toc "thesisinput volume3.toc Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. List Of Tables 5.1 Queries and the candidate M BC s to answer them................ 59 5.2 Configurations for which a refinement step is not required when MBCs of the objects overlap...................................................... 63 5.3 Configurations for which a refinement step is not required when MBCs of the objects axe e q u a l................................................... 65 8.1 C o sts...............................................................................................112 8.2 Ten relevant shapes (numbered 1 to 10) with reference to five queries according to human p ercep tio n.................................... 125 8.3 Positions of the 10 relevant shapes with reference to 5 queries using all m e th o d s ................................................................................... 127 8.4 C om parison.................................................................................. 131 B.l Relations for the intermediate nodes .................................................. 169 B.2 MBCs relations and empty results queries .........................................170 viii Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. List Of Figures 2.1 Alternative taxonomies of shape description techniques............... 20 3.1 MBC featu res........................................................................................ 25 3.2 Polygons................................................................................................. 26 4.1 Examples of objects with their touch points T P ; denoted by X; and start point SPs; denoted by bullets............................................. 32 4.2 Objects considered identical under RST q u eries............................ 33 4.3 M BCs, TPs , and TPASs of an object and its scaled version . . . 35 4.4 0 and 7 fa c to rs ..................................................................................... 38 4.5 Index structures iNaive . I t p a s , I v a s , and I t p v a s ................. 39 5.1 Topological, direction and distance features..................................... 51 5.2 Possible relations between actual objects given the relation be tween their M B C s ............................................................................... 56 5.3 Half and fully filled c irc le s.................................................................. 57 5.4 Relations cannot be identified between actual objects given the MBC re la tio n s..................................................................................... 57 5.5 Different overlap cases according to the centers of the MBCs . . . 61 5.6 Examples where two MBCs are overlapped and a refinement step is required ............................................................................................ 64 5.7 Examples in which the two MBCs are overlapped and a refinement step is not req u ired............................................................................... 64 5.8 Primitive direction relations using cone-shaped method.................. 67 5.9 Special cases............................................................................................ 68 5.10 Minimum bounding circle partitioning ............................................ 69 5.11 Same level partitioning......................................................................... 70 5.12 Primitive direction relations in 3-D space........................................... 71 5.13 Primitive direction relations partitions in 3-D.................................... 72 5.14 Intermediate nodes propagation......................................................... 74 5.15 A query with two reference objects and empty re su lts ................... 75 6.1 Example of objects corrupted by Noise-Ml and Noise-M2 82 6.2 VRA algorithm heuristics ................................................................... 84 ix Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 6.3 Example of applying 3-pass VRA a lg o rith m ................................... So 7.1 Optimized M BC..................................................................................... S9 7.2 MBC and its M BRs............................................................................... 92 7.3 m a x R ..................................................................................................... 95 7.4 Performance Im provem ent................................................................... 95 7.5 Symmetry in Fourier T ransform ......................................................... 9S 7.6 Phase Trend with Rotation/Shifting...................................................... 100 7.7 Phase Difference T re n d ............................................................................ 102 7.8 Trend in Second Phase Value ................................................................102 8.1 User in terface............................................................................................ 104 8.2 An Object and its 4 Shape Representations..........................................105 8.3 Examples of objects in the dataset ...................................................... 107 8.4 A query object and its 3 v a ria n ts ..........................................................107 8.5 Recall-precision c u rv e s ............................................................................ 115 8.6 Retrieval performance of all methods when Gaussian noise is in troduced 118 8.7 Retrieval performance of M-DT and MBC-TPVAS when Gaus sian noise is introduced............................................................................119 8.8 Impact of accuracy in comer point detection...................................121 8.9 Example of applying 1 pass VRA a lg o rith m ....................................... 123 8.10 Recall-precision c u rv e s .............................................................................124 8.11 Examples of relevant o b jects................................................................... 127 8.12 First set of experiments: fixing the database size and varying the number of vertices .............................................................................. 136 8.13 Second set of experiments: fixing the number of vertices and vary ing the database s i z e ...............................................................................137 8.14 A visual example of a q u e r y .................................................................. 139 8.15 The impact of changing 3 and - y with S I M ......................................... 141 8.16 Performance Im provem ent..................................................................... 144 A.l Uniqueness of M B C ..................................................................................164 B.l Possible topological relations between MBRs ................................... 168 B.2 Possible topological relations between MBCs ................................... 168 C.l Fourier descriptors m ethod..................................................................... 177 C.2 Grid based method - object mapping and representation................178 C.3 Grid based method - rotation norm alization...................................... 179 C.4 Grid based method - scale normalization.............................................181 C.5 Delaunay triangulation m e th o d ............................................................182 C.6 MBC-TPVAS m ethod............................................................................185 x Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Abstract Besides traditional applications (e.g., CAD I CAM and Trademark registry), new multimedia applications such as structured video, animation, and M PEG-7 stan dard require the storage and management of well-defined objects. These object databases are then queried and searched for different purposes. A sample query might be “ find all the scenes that contain a certain object*. Shape of an object is an important feature for image and multimedia sim ilarity retrievals. Therefore, this study focuses on shape-based object retrieval techniques and introduces a new shape description taxonomy. Moreover, for ef ficient retrieval of 2D objects by shape, we propose three index structures on features that are extracted from the objects’ minimum bounding circles {MBC). A major observation is that those features are unique per object and can be uti lized to filter out non-similar candidates. As a consequence of uncertainty, shape representation techniques may sometimes work well only in certain environments, and their performance may depend crucially on the quality of the technique used to represent shapes. Therefore, in this study, we address key methodological is sues for the evaluation of shape retrieval methods. We describe several metrics xi Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. and criterions to evaluate the effectiveness of a given shape representation tech nique based on: 1) computation and storage costs. 2) accuracy. 3) sensitivity to noise and boundary points representing a shape, 4) support for different query types, and 5) factoring in the human perception on similarity. To evaluate our index structures, we conducted a simulation study on a database of 2D objects. The results show the superiority of our techniques as compared to a naive indexing (at least 40% improvement in I/O cost). We also identify one of the indexing structures as the superior one, independent of the size of the database and the number of vertices of the objects. To demonstrate the appropriateness of our metrics in comparing different shape representation techniques, we implemented a prototype shape retrieval system and compared the performance of the four different shape representation methods, and one of our proposed MBC-based techniques. Our results showed the effectiveness of our metrics. First, using recall and precision, we showed that the similarity re trieval accuracy of our method was comparable to the other methods. Second, using storage and computation cost metrics, we showed that some of the methods may have a comparable computation cost to compute the similarity between two shape signatures, however, some techniques (e.g., MBC-TPVAS) have much lower computation cost to generate the shape signatures of the objects. Third, we evaluated the effectiveness of the methods in the presence of noise and the results showed that some methods (e.g., M BC-TPVAS ) have better accuracy xii Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. than others in the presence of noise. Fourth, when using the sensitivity to bound ary points metric, we can distinguish the techniques (e.g.. MBC-TP\'AS) that are less sensitive than others to the number of vertices used to represent a shape. Finally, the results show that some methods (i.e., MBC-TPVAS) have direct support for other query types (such as S-RST and spatial queries), while others lack to support them. We further improve the performance of our method in severed aspects. First, we propose a more efficient algorithm to identify the minimum bounding circle (MBC) of an object, that operates only on a subset of the object's vertices. Our experimented results were consistent with our analytical models. The optimized MBC computation algorithm reduced the execution time significantly (up to 90% reduction). Second, we propose a new technique to improve the response time of MBC-based methods for match queries under specified rotation angles. The technique relies on utilizing the symmetry property of the phase values of the Fourier transform of a real sequence under different rotations. The funda mental observations utilized by our techniques can be adapted and extended to be applicable to other frameworks and application domains. Besides similarity retrieval, the representation and processing of spatial queries is also important in numerous application domains. Therefore, we describe the support of topological and direction queries using spatial data structures based on the minimum bounding circle approximation (MBC). By identifying special xiii Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. cases in MBC relations, we propose extra filtering steps to reduce the number of false hits in determining the actual relationships among the objects. xiv Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Chapter 1 Introduction 1.1 Motivation and Problem Statement Several applications in the areas of CAD/CAM and computer graphics require to store and access large databases. A major data type stored and managed by these applications is representation of two dimensioned (2D) objects. Objects contain many features (e.g., color, texture, shape, etc.) that have meaningful semantics. From those features, shape is an important feature that conforms with the way human beings interpret and interact with the real world objects. The shape representation of objects can therefore be used for their indexing, retrieval, and as similarity measure. The object databases can be queried and searched for different purposes. For example, a CAD application [8] for manufacturing might intend to reduce the cost of building new industrial parts by searching for reusable existing parts in a database. For an alternative trade mark registry application [14], one might need 1 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. to ensure that a new registered trademark is sufficiently distinctive from the ex isting marks by searching the database. Meanwhile, new multimedia applications such as structured video [25], animation, and MPEG-7 standard [70] define spe cific objects that constitute different scenes of a continuous presentation. These scenes and their objects can be stored in a database for future queries. A sample query might be ufind all the scenes that contain a certain object*. Therefore, one of the important functionalities required by all these applications is the capability to find objects in a database that match a given object. There are two categories of match queries: whole matching and partial match ing queries. With whole matching, a query object is compared with a set of objects to find the ones that are either exactly identical or similar to the query object. With partial matching, however, we are interested in finding the objects that have parts that match the query object. In this study, we concentrate on whole matching and do not discuss partial matching any further. We focus on three variations of match queries (EM , RST, and SIM) to cover cases where the database is searched for exactly identical objects; identical objects that are rotation, scaling, and translation invariant (termed I-RST) or identical objects with a specified rotation angle (/?), scaling factor (5), translation vector (T), or any combination of the three (S-RST ); or similar objects per our definition of similarity. 2 permission of the copyright owner. Further reproduction prohibited without permission. There are two obstacles for efficient execution of whole match queries. First, the general problem of comparing two 2D objects under rotation, scaling, and translation invariance is known to be computationally expensive [3]. Second, the size of the multimedia and CAD databases are growing and hence given a query object the matching objects should be retrieved without accessing all the objects in the database. Besides similarity matching, many other applications in the areas of cartogra phy, computer vision, spatial reasoning, cognitive science, image and multimedia databases, and geographic applications require to represent and process spatial relations between objects. Two important types of spatial queries are: topological and direction queries. With topological queries, we are interested in finding ob jects that are in the neighborhood, incident, or included in the query object. While, with direction queries, we are interested in finding the objects that satisfy a certain location in space {e.g. north, south) with respect to the query object. For the example of multimedia applications, here a sample query might be “ find all the scenes that an object (A) is on the top or near an object (B)". Therefore, one of the important functionalities required by ail of these applications is the capability to find objects in a database that satisfies a spatial relation with a given object. In a spatial database system, the objects are organized and accessed by spa tial access methods {SAMs). However, since SA M s are not able to organize 3 permission of the copyright owner. Further reproduction prohibited without permission. complex polygon objects directly, a common strategy is to store object approxi mations and use these approximations to index the data space. Approximations maintain the most important features of the objects (position and extension) and therefore they can be used to efficiently estimate the result of a spatial query. The advantage of using approximations is that the exact representation of the object is not often required to be loaded into main memory and be examined by ex pensive and complex computational geometry algorithms. Instead, relationships between the approximations of the objects (MBCs or MBRs) can be examined quite efficiently. Therefore, a typical technique to improve the performance of spatial queries, is to examine the objects’ approximations instead of the actual representations of the objects (typically represented by polygons). The problem, however, is that by using objects’ approximations we introduce false hits (in which the relations between the approximations is a superset of the relations between the actual objects). Thus, a successful approximation is the one that reduces the number of false hits. This study is different from the work in computational geometry, pattern recognition and computer vision. In computational geometry, the main focus of the research is in developing algorithms to compare two given objects to see if they match or not. Although, we eventually employ variations of these comparison algorithms to eliminate false hits, the major focus is on indexing techniques to minimize false hits. In pattern recognition and computer vision the goal is to 4 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. recognize objects in a given scene (e.g. by using edge detection algorithms). In our work, the set of objects in the database is already well defined by their vector representations either manually as a result of a drawing software or automatically as a result of an object recognition algorithm. Based on the discussions above we can identify an important basic problem: given a query object, a set of similar objects or objects satisfying some spatial relation should be retrieved without accessing ail the objects in the database. Efficient solutions to this problem have important applications in database, im age and multimedia information systems as well as other potential application domains. The size of databases are growing, and comparing two 2D objects under ro tation. scaling, and translation invariance is known to be computationally ex pensive. Hence it is very important to find a shape representation technique of objects that can be efficiently used for their indexing, retrieval, and as a similar ity measure. The shape representation technique should be capable of extracting object features that have: good discriminating capabilities, invariant to scale, translation and rotation, simple to extract, and requires low storage and compu tational costs. In addition, the shape representation technique should be robust and stable under “uncertainty’ ' issues and situations. Uncertainty can be a conse quence of several factors, for example the assumptions that: perfect data is always 5 permission of the copyright owner. Further reproduction prohibited without permission. presented in the database, or that all shape representation methods represent the objects similarly are not valid. The necessity of supporting spatial querying in many other application also motivates identifying shape features that could be used efficiently to both rep resent the objects and to support such queries. Since complex polygon objects are hard to organize directly using spatial access methods, approximations of the objects axe usually used. Hence, it is important that the shape representation technique be able to approximate the objects and at the same time: maintain their most important features, reduce the complexity of the algorithms required to define relationships between the objects, and reduces the number of false hits. 1.2 Contributions In this study, we introduce a new shape description taxonomy to categories vari ous methods for shape representation in the literature. In addition, we propose a new shape-based object retrieval technique based on minimum bounding circles (MBCs). Our proposed MBC-based method can be used for efficient retrieval of 2D objects by utilizing three different index structures on features that are extracted from the objects' MBC s. Furthermore, we provide metrics and crite- rions to evaluate and compare the effectiveness and robustness of different shape retrieval methods. Besides similarity retrieval, we describe the support of spatial 6 permission of the copyright owner. Further reproduction prohibited without permission. queries (e.g., topological and direction queries) using spatial data structures also based on MBC. 1.2.1 Shape Representation There are various methods for shape representation in the literature. Overviews of shape representation techniques axe provided in [43. 72], which categorize tech niques into different categories (e.g., boundary or region based categories). A drawback of these overviews is that they sometimes miss categorize some tech niques. For example, they categories spatial similarity based techniques (where the retrieval of objects is performed based on the spatial relationships among ob jects) as shape retrieval techniques. Another drawback is that they do not provide a clear criteria on which the categorization is based. Therefore, we introduce a new shape description taxonomy, in which we break the techniques into two sub- -categories: boundary and region based techniques. We further breakdown each category into transformation and spatial (measurement) sub-categories. Finally, the spatial sub-category is broken into partial and complete techniques depending on whether the techniques/features use partial parts of the shape or the whole shape. We also added further techniques that were not described in previous studies [43, 72] (e.g., turning angle, collinearity,. ..etc.). 7 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 1.2.2 Why MBC? We evaluate and compare the performance of four boundary based methods for shape representation and retrieval: Fourier descriptors method (FD ) [26. 35. 61] (based on objects’ shape radii), grid-based method (GB ) [40. 63] (based on chain codes), Delaunay triangulation method (DT) [72, 71] (based on corner points), and M BC-based methods (based on minimum bounding circles and angle se quences). FD and GB are the more established methods that were used in some commercial systems [43] and as a basis for different comparison studies [63, 43]. while DT is a new histogram-based approach of shape representation. MBC- based methods are our approach to shape representation and similarity measure. Although MBC-based methods use simple attributes such as minimum bound ing circles and cingle sequences (simple to extract), these attributes were shown to be translation, rotation, and scale invariant in [68]. In addition, the simi larity retrieval accuracy of one of our MBC-based methods (MBC-TPVAS) is comparable to the other methods, while it has the lowest computation cost to generate the shape signatures of the objects. Moreover, it has low storage require ment, and a comparable computation cost to compute the similarity between two shape signatures. In addition, our MBC-based method requires no normaliza tion of the objects. Furthermore, the experiments demonstrate the robustness of M BC-T PVAS under various scenarios of uncertainty compared to the other methods. The results show that M BC-T PVAS is not very sensitive to noise 8 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. and perturbations on the shape vertices and outperformed other methods. The results also show that M BC-T PVAS is not very sensitive to the corner points detection algorithm (VRA ) and observes less degradation in precision than the other methods. Finally, with the MBC-based method, a subset of the MBC features [e.g., radius r, center C, and start point S P ) could be utilized to sup port S-RST query types. The other three methods (FD. DT. and GB) lack the support of S-RST queries. This is due to either the use of normalization, or lack of features that could support such queries. 1.2.3 MBC for Similarity Queries As mentioned in Sec. 1.1, there are two obstacles for efficient execution of match queries. First, the general problem of comparing two 2D objects under rotation, scaling, and translation invariance is known to be computationally expensive. Second and the size of the multimedia and CAD databases are growing and hence given a query object the matching objects should be retrieved without accessing all the objects in the database. We address both obstacles collectively by identi fying some features that can be extracted from the objects Minimum Bounding Circle (MBC). These features can help us in both reducing the complexity of comparison algorithms and building index structures to search only a subset of the candidate objects for match queries. 9 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. We focus on three variations of match queries (EM. RST. and SIM) to cover cases where the database is searched for exactly identical objects: identical objects that are rotation, scaling, and translation invariant (I-RST) or within a specified rotation angle, scaling factor, and a translation vector {S-RST); or similar objects per our definition of similarity. In some application domains, the support of S-RST query types is important. An example is. searching for similar tumor shapes in a medical image database [38]. Tumors are presented by a set of 2D images that represent slices through it. A method for retrieving similar tumor shapes would help to discover correlations between tumor shape and cer tain diseases. Besides the shape, the size and the location of the tumor would help in the identification of patients with similar health history. To expedite the performance of all these variations, we identify a set of six features that could be extracted from the MBC of each object. Different subsets of object’s MBC features are then used to build three alternative index structures I t p a s > I v a s , and I t p v a s • Final storage and retrieved of the features are enhanced further by incorporating multidimensional index structures, e.g. R’-tree. For designing our index structures we take into consideration the completeness of the model; i.e. it reduces the number of false hits and guarantees no false drops. In the final step, by utilizing our feature-based variations of comparison algorithms, we eliminate till the false hits. To evaluate our index structures, we conducted a simulation study on a database of 2D objects. We considered both CPU and 10 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. I/O costs to compare the performance of our indexing techniques with a nairt indexing which is based on the number of vertices of the objects. The results show the superiority of our techniques as compared to naive with a minimum margin of 40% improvement in the I/O cost, and orders of magnitude improve ment in CPU cost. We also identify one of the indexing structures ( I t p v a s ) as the superior one among the three, independent of the size of the database and the number of vertices of the objects. Furthermore, we provide metrics and criterions to evaluate and compare the effectiveness and robustness of different shape retrieval methods. The metrics can be used to compare the efficiency of the techniques in terms of : 1) retrieval accuracy in terms of recall and preci sion. 2) storage cost for their indices, 3) computation cost to generate the shape signature. 4) computation cost to compute the similarity between two different shape signatures. 5) sensitivity to the presence of noise in the database, and 6) sensitivity to the alternative ways of identifying the boundary points of a shape. To study the usefulness of our metrics in evaluating shape retrieval methods, we conducted a set of experiments using four different shape representation tech niques (i.e., FD, GB, DT, and M BC-T PVAS). To perform the experiments, we generated several sets of data to which we apply the metrics. First, to intro duce noise to the shapes in the database and to the query objects, we use two different alternatives (Noise-Ml, Noise-M2). The two differ in the amount and type of noise they introduce to the shapes. Second, to study the impact of the 11 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. number of boundary points used to define a shape, we investigate the impact of a parametric algorithm (VRA) that identifies various sets of distinguishable vertices of a shape. Our results demonstrated the appropriateness of our metrics in comparing different shape representation techniques. First, our results show that some methods (e.g., M BC-T PVAS) have better accuracy than others in the presence of noise. Second, while some methods may have a comparable computa tion cost to compute the similarity between two shape signatures, however, some techniques (e.g., M BC-T PVAS) have much lower computation cost to generate the shape signatures of the objects. Third, some technique (e.g., MBC-TPVAS) are less sensitive than others to the number of vertices used to represent a shape. Finally, the results show that some methods (i.e., MBC-T PVAS) have direct support for other query types (such as S-RST and spatial queries), while others lack to support them. We further improve the performance of our method in several aspects. First, we propose a more efficient algorithm to identify the minimum bounding circle {MBC) of an object, that operates only on a subset of the object’s vertices. Our experimental results were consistent with our analytical model and the opti mized M BC computation algorithm reduced the execution time significantly (up to 90% reduction). Second, we propose a new technique to improve the response time of MBC-based methods for match queries under specified rotation angles. The technique relies on utilizing the symmetry property of the phase values of 12 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. the Fourier transform of a real sequence under different rotations. Our optimized MBC computation algorithm and the utilization of the phase part of the Fourier transform of AS are fundamental. To the best of our knowledge, no application existed before that needed to investigate the impact of shifting a real sequence on its Fourier transform. Therefore, we expect our observations to be adapted and extended to other frameworks and application domains. For example, our opti mized MBC computation algorithm can be used in GIS systems that sometimes maintain MBCs as approximations for spatial objects. 1.2.4 MBC for Spatial Queries Almost all the previous studies on spatial databases use the minimum bounding rectangle (M B R ) of an object as its approximation [51. 21. 53. 10. 28]. In this study, however, we focus on the minimum bounding circle [MBCs) of an object as its approximation. Our primary motivation for this decision is that, we showed the interesting properties of MBC to improve the efficiency of similarity queries for the retrieval of 2D objects by shape. Therefore, in order to utilize the same approximation for other spatial queries (i.e., topological and direction queries), we investigated the usefulness and feasibility of M BC s for such queries. We show how a subset of MBC features could also be utilized to answer spatial queries. As a result, there is no need to maintain two approximations (i.e., M BR and MBC) per object for efficient support of different queries (i.e., similarity and 13 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. spatial). In addition, we argue that depending on the application, using MBC approximations can be more beneficial as compared to using MBRs. First, cir cles are insensitive to orientation and hence an object’s MBC is unique and invariant to translation and rotation. This property suits the requirements of the topological relations in which MBCs stay invariant under topological transfor mations such as translation, rotation and scaling [51]. Second, in [45] an indexing technique {Sphere-tree) was proposed for circles that could be used to efficiently support MBC based spatial queries (see Sec. 5.4 for further details). Third, in applications where queries of type: “finding neighbors within a distance" are fre quently submitted, and the query regions are irregular, MBCs are more suited than MBRs. Finally, circles occupy less storage space as compared to rectangles. Moreover, we show that MBC is a successful approximation for topological overlap queries (important for intersection joins). We show that the performance of overlap queries can be improved by distinguishing among 9 different types of overlaps between the MBC s. Then, we determine the cases in which the rela tions between the actual objects can be determined efficiently from the relations between their corresponding MBCs. Furthermore, we distinguish between half- filled and fully- filled MBCs, which helps in identifying special crises for overlap and equal relations that reduces the number of false hits even further. For direc tion relations, by employing the concept of cone-directions [53], we introduce two methods to reduce the number of false hits. We achieve that by partitioning the 14 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. M BC s into regions, and find the direction between objects based on the regions they cover. As a future work we intent to further enhance our methods and conduct more experiments to show the practical efficiency of our methods. 1.3 Outline Chapter 2 provides some background material on related work. In Chapter 3 we present a general background and provide an overview of definitions and notations used in this study. Chapter 4 describes how to support similarity queries (using three different query). In addition, it explains in details our three alternative index structures based on MBC features. In Chapter 5 we describe how to sup port spatial queries using a subset of MBC features. Chapter 6 describes several metrics and criterions to evaluate the effectiveness of a given shape representation technique. In Chapter 7 we propose two optimization techniques to further im prove the performance of MBC-based shape retrieval method in several aspects. Chapter 8 provides some experimental results of the proposed indexing tech niques and some shape retrieval techniques. Finally Chapter 9 includes the con clusion and the proposed future extensions, experiments, and implementations. Appendix A describes cost analysis of the index structures, while Appendix B provides details on how to represent spatial relations using minimum bounding rectangles and circles. In Appendix C we briefly describe four boundary based 15 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. methods for shape representation and retrieval. Finally. Appendix D describes the computation and storage cost analysis for alternative shape representation techniques. 16 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Chapter 2 Related Work We first review the related work on shape description techniques and similarity search problems. We then review the related work on supporting spatial queries using objects’ approximations. 2.1 Shape Description Techniques Shape recognition has two major parts: shape description (representation) and shape matching. Shape description is an important issue in object recognition and its objective is to measure geometric attributes of tin object, that can be used for classifying, matching, and recognizing objects. There are various methods for shape representation. There tire also numerous shape matching approaches that have been proposed based upon the shape representation methods. The study in [43], categorizes shape description techniques into two classes: information pre serving {IP) and non-information preserving {NIP), depending on whether or 17 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. not it is possible to reconstruct an approximation of the object from the shape descriptors. Our application type requires that the system maintains an ap proximation of an object and does not require the reconstruction of the original objects from their descriptors (as in compression applications). Therefore, this study concentrates on N IP methods. An overview of shape description tech niques is also provided in [43], which categorizes NIP techniques into two types, boundary based and region based. Boundary based methods use only the con tour of the objects' shape, while, on the other hand, the region based methods use the internal details (e.g., holes) in addition to the contour. The region-based methods are further broken into spatial and transform domain sub-categories depending on whether direct measurements of the shape are used or a trans formation is applied. Their complete overview of shape description techniques is illustrated in Fig.2.1(a). A drawback of this categorization is that it does not fur ther sub-categorizes boundary based methods into spatial domain and transform domain methods. For example, Fourier descriptors method can be considered as a transform domain technique, while chain codes can be considered as spatial domain technique. Another drawback of this categorization is that it assumes that structural techniques (e.g., 2D-strings) are a sub-category of region-based, spatial domain techniques. However, we believe that structural techniques as 2D-Strings are spatial similarity based techniques (where the retrieval of objects is performed based on the spatial relationships among objects) and not shape 18 permission of the copyright owner. Further reproduction prohibited without permission. retrieval techniques (see Fig.2.1(c)). In another study [71. 72]. shape descrip tion techniques were broken into two different categorizes: transformation based and measurement based categories. They further breakdown the transformation based category into two sub-categories: functional and structural categories, how ever, it is not clear what criteria is used to this end. Their overview of shape description techniques is illustrated in Fig.2.1(b). Some drawbacks of this cat egorization are that it does not distinguish between boundary or region based techniques, and sometimes it miss categorizes some techniques. For example, chain code technique is categorized as a transformat ion- based technique, while it is a measurement-based technique. Another example is that silhouette moments could be used as a region-based technique but not as a boundary-based technique. Therefore, we introduce a new shape description taxonomy, in which we break the techniques into two sub-categories: boundary and region based techniques [57]. We further breakdown each category into transformation and spatial (mea surement) sub-categories. Finally, the spatial sub-category is broken into partial and complete techniques depending on whether the techniques/features use par tial parts of the shape or the whole shape. Our complete taxonomy of shape description techniques is illustrated in Fig.2.1(c). We added further techniques that were not described in [43, 72, 71] (e.g., turning angle, collinearity,.. .etc.). 19 I ; . Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. (a) Taxonomy by [43] (b) Taxonomy by [71, 72] T h c P r a f te m la [ f u r t i i n i h i c i i — * ) ] Out— Pm m t UN UF-m r VFDF—n— F—rarQ m npofa 2 0 S n a p 2 0 1 -Strain 20 C-Strap 20 C* te u p Eue— 20 Strap M S im 5put) Oimmbo* OnpS ^iH jw S gaalj»raa|»raa^ Q m m m O m atiM y Aafto wJffiiim C— C f c ia O H H lW tta|A igte Gallimmy Ptealkta a t U m m Ctamt C—m — aet 9 t b a n or Am WtyaiT Pwmraty RM m of Stop B —atey Sjiaim rj F—agb— T — cfe Pmm Aagte S— — act V f c r a * M 0 i T m iti Cj—It | P ^ T t — i D f i w i w ; A fte a m t- M p im . Uapfti— priam? O M C ra M S ( O M N Gm M M r M m i Am Hot— Enter Nw—ar a iN — iiite - n 2— teM — w P—i — 2— te Mom— M u - M ih te Eteag— oa Sfiam uj R am atteC m r GfiRCa— r M M n D m p M M fefyf—Ce— r Cucttlamy Aspesiwe (c) Our proposed taxonomy Figure 2.1: Alternative taxonomies of shape description techniques 20 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 2.2 Similarity Search As mentioned in Sec. 1.1, this work is different from the studies in the axea of pattern and object recognition as well as the area of computational geometry. Therefore, in this section, we focus on the related works in the database area in order to distinguish this study from those studies. Towards this end. we categorize those works into two groups. The first group investigates techniques to speed up the similarity between 2-D objects based on shape, while the second group focuses on 1-D sequences. The first group of studies [26, 35. 43, 36, 23, 24], investigates techniques to speed up the search of 2-D ^similar” objects to a target object based on their shapes. This is somewhat similar to our SIM query type. For retrieving similar 2D polygon shapes from a CAD database system, previous work is presented in [36. 23, 24]. In [36] two 2-D polygons are considered similar if they have similax proportions of area. It assumes that polygon objects are constructed by the union of rectangles of different sizes. The major problem of their algorithm is that the representation is not unique and very sensitive to small changes in the coordinates of the rectangles. Also, the algorithm is not invariant against rotations, and limited to representing only polygon objects with sides parallel to the coordinate system. Therefore it can not guarantee no false drops. Some other works [23, 24], collect features from objects as a collection of a few adjacent interest points. Each object has more than one entry in the index. The major 21 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. drawback of this approach is the use of nonlinear optimization, which is complex and time consuming, to calculate some parameters. There is also a variety of techniques that has been proposed in the multi- media information systems area for shape representation [26, 35, 43]. Examples of those techniques are Fourier descriptors method (FD) [26, 35, 61] (based on objects’ shape radii), grid-based method (GB) [40, 63] (based on chain codes). They, were used in some commercial systems [43] and as a basis for different comparison studies in [63, 64, 43, 40]. In addition, a new method based on a new indexing technique (i.e., Delaunay triangulation-DT) was proposed in [71]. With Delaunay triangulation, the shape features used are invariant under uni form translation, scaling, and rotation. However, with Delaunay triangulation, histogram-based representation is not very discriminative and is not unique, i.e.. objects of different shapes may have the same feature point histogram representa tion. In addition, choosing a histogram with a small number of bins provides less discriminating ability. Both Fourier descriptors and grid-based methods tire vari ant to translation, rotation, and scaling. Therefore, shape signatures obtained for the same object with a different orientation in space or with a different scale will be different. Hence, given the shape signature of an object, a normalization pro cedure is required to normalize the object such that its boundary has a standard size, and orientation. In addition, the GB, FD, and DT methods are unable to support S-RST query type. With the GB and FD methods, normalization 22 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. is used so that the objects fit into a prespecified mesh, or force the boundaries to have a standard size, and orientation, respectively. While DT method repre sentation provides no information about the size, and orientation of the original objects. The second group [1, 19] of approaches in the database literature focuses on speeding up the similarity search for one dimensional sequences. Most of the techniques conceptually depend on the reduction of the dimensionality of the problem. First, they map the vectors from the original space into a space of the same dimensionality using a transformation that preserves all information available about the original vectors. Second, they select the most significant components from the transformed vectors and build up an index on the reduced size vectors. These studies can be considered as a complement to our work. This is because we use object features in order to reduce the dimensionality into single dimension sequences and then we can utilize their proposed techniques to speed up the search further. In [1] an indexing method to process similarity search queries for 1 -D se quences of real numbers (time-sequences) in a sequence database was proposed. They reduce the high dimensionality of time sequences to a lower dimensionality space by using a data-independent method like Discrete Fourier Transformation of the time sequence elements. Subsequently, they use traditional spatial access methods, like the R*-tree, to index the objects. For [19], the work was extended 23 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. to searching for subsequences, and to search in the presence of noise, scaling, and translation in time series databases. Our similarity shape retrieval of objects depends only on the tingle sequences (.45) of the objects. We build an index on the f c coefficients of the Fourier transform of the AS of the objects. Then we search in the index for the objects that tire within an e of the object Fourier transform. Our methods are rotation, scaling, and translation invariant and also guarantees no false drops. 2.3 Spatial Queries Here we present the techniques used to answer spatial queries based on minimum bounding rectangle {MBR) approximation of objects, and how this work could be extended for minimum bounding circles {MBC) approximations. In [51] topological relations between objects are studied based on their min imum bounding rectangles {MBRs). In [50. 21, 53], direction relations between objects are also studied based on MBRs. All of the studies based on M BR of objects use R-tree index structure to store and manage the MBRs. They describe the direction relations between objects based on either the projection- based method [50, 21], or cone-directions method [53]. For our study, since we investigate shape retrieval based on MBC, we also utilize the MBCs to answer spatial queries. We use Sphere-tree [45] (which is an indexing technique based on MBCs) to store and manage the objects’ M BC approximations. 24 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Chapter 3 A General Background and Overview In this chapter we describe the definitions and notations [67] we will use through out the study. 3.1 MBC Features We first describe a set of six features that could be extracted from the objects MBC s. These features are very important in our study since we will be using them for both indexing the objects and expediting the comparison between two (a): Original object (b): M B C of the original object with it’s center C, radius r. T P ’s (c): TPAS: (d): VAS:[s?l,^2,^3,^4, are denoted by X’s and SP by bul- [vl.^2,<p3.ip4] ^5,^6.^7,^p8,^)9] let Figure 3.1: MBC features 25 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. o (a): Simple Polygon (b): Non Simple Polygon Figure 3.2: Polygons objects. The six MBC features that can be identified for each simple polygon object. A simple polygon is a polygon that has no pair of non-consecutive edges sharing a point (see Fig.3.2). In the rest of this paper we refer to simple polygon as polygon. The six MBC features are: 1. r: the radius of MBC 2. C: the coordinates of the center of MBC 3. T P : the set of touch points on MBC 4. TPA S : touch points angle sequence 5. VAS : vertex angle sequence 6. SP: the start point of the angle sequence Fig. 3.1 provides an example of an object with its six identified features. For the algorithms to extract the MBC features see Appendix A.I. Definition 3.1.1: Minimum Bounding Circle-MBC of an object is the closed disk of sm<dlest radius containing all the points in the object (see Fig. 3.1(b)). | 26 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. We denote M BC' as the minimum bounding circle enclosing the object O'. Each MBC' is identified by its radius r' and its center C'. D efinition 3.1.2: Touch Potnfs-TP of an object is the ordered set of points of the object that lays on the object’s MBC (see Fig. 3.1(b)). | D efinition 3.1.3: Angle Sequence-AS of an object is the sequence of angles contained between vectors connecting the center of the object's MBC and a subset of its points. I D efinition 3.1.4: Start Point-SP of an angle sequence is the point in the angle sequence that makes the smallest angle, counterclockwise; with the x-axis passing the center of the object’s MBC (see Fig. 3.1(b)). I The angle sequence of the touch points (TPAS) of object O' is TPAS' = [0j] ; for t = 0 ... n'Tp — 1. TPAS is a cyclic sequence of n'TP real numbers representing angles, where 9) is the angle between two vectors (see Fig. 3.1(c)). The angle sequence of all the vertices (VAS) of object O' is VAS' = [0j]: for t = 0 ... m' — 1; a cyclic sequence of m' real numbers representing angles (see Fig. 3.1(d)). Given an object with m vertices, we could have m different .45s. Each repre sentation depends on which vertex of the object is used as the start vertex from which the 4 5 is computed. To reduce the number of possible ,45 representations of an object, we create the /45s of the objects by choosing the SPs as the start vertex. Since SP is a vertex in the set of touch points of an objects, then in the 27 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. worst case we might have the number of different AS representations equals to titp- For VAS we do not use the TP information, hence the number of starting points equals to the number of vertices of the object. We now define some extra features that could also be extracted from M BC and used later to reduce the number of false hit in the filter step. Hence, reducing the refinement step processing time by reducing the number of invocations of complex geometric algorithms. D efinition 3.1.5: Separator-Diameter of a circle is the diameter that separates the circle into two halves, one is empty and the other half containing the object (see Fig. 5.3(a)). I D efinition 3.1.6: Half-filled circle is a circle that has a separator-diameter (see Fig. 5.3(a)). | D efinition 3.1.7: Fully-filled circle is a circle in which any drawn diameter separates it into two halves, each half containing a part of the contained object (see Fig. 5.3(b)). | L em m a 3.1.8: If a circle is half-filled, then at least two vertices of the actual object lays on the end points of the separator-diameter (see Fig. 5.3(c)). Proof: The proof is by contradiction. Assume that we have an object q such that its M BC {MBC, with diameter Dq) is half-filled, but has one vertex on the separator-diameter. In general, the largest Euclidean distance {Dmax) between 28 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. the vertices of an object (p) and any point in its MBC (MBCP) should be equal to the diameter of MBCP. In a half-filled circle, the equality occurs if and only if at least one vertex of the object is on an end point of the separator- -line (diameter). Since we we assumed that we have only one vertex of q on the separator-line, then the Euclidean distance between any vertex of q and a point in the half circle (except for the points on the separator-line) is < Dq (i.e.. Dmax < Dq). Consequently, we could find another circle with a diameter Dnevi. such that Dnew < Dq and includes all the vertices of q. This contradicts our assumption that the first circle was the MBC of the object. Therefore, for Dmax to be equal to MBCP , we must have two vertices of q to be at the end points of the separator-diameter (which also contradicts our assumption). I We refer to the MBC of object q as qf, and use RELAT ION(p,q) to de fine that p is related to q according to the relation RELATION. The query object I MBC is referred to as the primary object/A/BC (p/pf). The object in the database to which the primary object/MBC is compared is referred to as the reference object/M B C (q/qt)- In the examples hereafter, the reference object, q, is the grey object, while the primary object p is the transparent object. 29 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Chapter 4 2D Similarity Queries in the World of Minimum Bounding Circles This chapter starts by describing three alternative matching query types that utilize different subsets of the MBC features [ 68]. We then use those features for both indexing the objects and expediting the comparison between two objects [67. 68], 4.1 Query Types Here, we describe three alternative matching query types that utilize different subsets of the MBC features: 1. With the first query type, we investigate whether two objects are exactly identical in shape (termed, EM ). 30 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 2. With the second query type, we investigate whether two objects are iden tical in shape but are rotation, scaling, and translation invariant (termed I-RST) or identical objects with a specified rotation angle (R), scaling fac tor (5), translation vector (T), or any combination of the three (S-RST). 3. With the third query type, we investigate whether two objects are similar in shape per our definition of similarity (termed, SIM). Therefore, for different query types, different MBC features are used to sup port the query. Later in Sec. 4.2, we describe three index structures on different subsets of object’s MBC features in order to expedite these query types. For the remainder of this section we explain each query type in more details. 4.1.1 Exact Match Shape Retrieval - EM With this type of object retrieval we are interested in answering the query “ find all objects in a set of objects that are exactly identical to the query objecf. Two objects are identical if they have the same orientation, size, number of vertices and edges, and the exact same dimensions. Some necessary conditions (but not sufficient) for two objects to be identical are: 1. They should have the same number of vertices (m). 31 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. (a): Two object, with different number of TPs. (b> : obj‘ c“ 'Vth the *ame number of TPi (c): Two object, with the same number of TPs (d): Two different object, with the same number and the tam e TPASs but with different SPs. otTPs, the tam e TPASs, and the w ine SPs. Figure 4.1: Examples of objects with their touch points TP\ denoted by X; and start point SPs: denoted by bullets. 2. They should have the same number of touch points { t i t p ) . The number of touch points of an object depends on its MBC. MBC of an object is unique. 3. They should have identical TPAS. 4. They should have identical SP. 5. Their MBCs should be of the same size with identical radii. 6. The coordinates for the center C of their MBC’s should be identical. Fig. 4.1 shows some examples of objects with identical size of MBC's, but with different njp, different .45, or different SP. 32 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. (a): Original object and its (b): Original object with its (c): Original object with its uniform scaled version rotated version scaled and rotated version Figure 4.2: Objects considered identical under R S T queries 4.1.2 RST Shape Retrieval With this type of object retrieval we are interested in answering two types of queries: • “ find all objects in a set of objects that are exactly identical to the query object regardless of its size and orientation” (l-RST query type). • “ find all objects in a set of objects that are exactly identical to the query object with a specified size and/or orientation” (S-RST query type). We now consider each query in turn. For [-RST. it is important that the matching objects be invariant with respect to translation, rotation and scaling. To support the I-RST queries, we use those MBC features of polygons that are translation, scaling and rotation independent. These are .45. either TPAS or V.45, and njp- See Fig. 4.2, for examples of objects that match with uniform scaling, rotation, and combination of uniform scaling and rotation. Two objects are identical if they meet some necessary conditions: that is they should have: the same number of vertices, the same nrp, and identical AS. For S-RST , it is 33 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. important that the matching objects be within a specified rotation angle, scaling factor, translation vector, or any combination of the three. We use object’s SP to check if it is rotated, use object’s r to check if it is seeded, and the vertex coordinates of the object’s C to check if it is translated. The description of I-RST is straightforward, hence we will only discuss the details for answering 5- RST query type. Consequently, we consider four different types of exact match queries: • Exact Match with Uniform Scaling With this type of query, we are interested in retrieving all the objects that exactly match our query object but might be at different scales. Hence, the retrieved objects should have the same number of vertices, titp. .45, SP, coordinates of centers C of MBCs as the query object 0 q but might have different radii r. When applying uniform scaling to an object, we are only changing its size and not its shape (see Fig. 4.3-(a)). Hence, the new scaled object will have the same number of TT as the original object. These TP are on the extension of the vectors connecting the center of the old M BC and the old TP. Therefore, the new object’s .45 is equivalent to the old object’s .45 (see Fig. 4.3-(b)). Since, the distance between a touch point and the center of the MBC defines the radius r of the MBC. Therefore, the radius of the scaled MBC rf should be equal to ar (where a is the scaling factor). From the above discussion, we can conclude that scaling does not change 34 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. (a): Original object with its scaled version and (b): The T P AS 3 of both objects: <^i. si. - 3 . ■ -'< ) their MBC a *nd Figure 4.3: MBCs, TPs, and TPASs of an object and its scaled version the angle sequence .45 of an object. The same discussion applies when we represent the object by its l'\45. • Exact Match with Rotation With this type of query, we are interested in retrieving all objects that exactly match our 0 q but might be rotated. Hence, the retrieved objects should have the same number of vertices, the same njp. .45, coordinates of centers C of MBCs and the same MBC's radii as the 0 q but might have different SPs. Given the set of candidate objects for exact match, we could find out how much the 0 q is rotated by using their SPs. If the coordinates of SPs of the query and the matched objects are (x, y) and (x;, y1 ) respectively, then the rotation angle p could be computed by cos p = To determine the direction of the rotation we compute x" = x cos p — y sin p and y" = x sin + y cos Since 0 < < p < jt, then the point (x", y") = (x', y') implies that we have a counterclockwise rotation. Otherwise, (i.e. the point (x",y") ^ (x;,y') ) 35 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. we have a clockwise rotation. Note that the same discussion applies when we represent the object by its VAS. • Exact Match with Uniform Translation With this type of queries we look for the objects that their shapes are identical to that of 0 q without caring about the position of their vertices in the local coordinate system used to describe them ( e.g. the same object appears in different positions in a plane). Hence, the retrieved objects should have the same number of vertices, the same n jp , .45, MBC's radii, and the same SP as the 0 q but might have different coordinates for centers C of MBCs. With our model, we can retrieve objects with identical shapes from the database regardless of their positions in the coordinate system. This independence is achieved by representing the objects by their .45s (which is independent of the local coordinate system). Given the set of candidate objects for exact match, we could find out how much the Oq is translated by using the coordinates of the centers C of their MBCs. If the coordinates of C of the query and the matched objects are (Ct ,C y) and (C '.C ') respectively, then the translation vector T = (Tx,Ty) could be computed by Tx = C 'X — Cx and Ty = C' — Cy. Note that the same discussion applies when we represent the object by its VAS. • Exact Match with Uniform Scaling, Rotation, and Translation- — RST This method of retrieval is just a combination of the above three 36 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. methods. Therefore, we could retrieve exact match objects even if they were scaled, rotated, and translated version of the O’ . We could also specify the scale factor by using the radius factors of the MBCs, specify the rotation factor by using the angle between the SP points of the objects, and specify the translation vector as the difference between the coordinates C of the MBCs of the objects. 4.1.3 Similarity Shape Retrieval - SIM With this type of object retrieval we are interested in answering the query "find all objects in a set of objects that are similar to the query objecf. There are many notions of similarity which depends on the application domain. The application domain or the user may specify and describe the properties of the notion of similarity. For example, a property might be the invariance of similarity of objects under some kind of transformation such as scaling and rotation. This type of notation can be supported by our RST query types. Our notion of similarity is that two objects are considered similar if the difference between their VASs is within a specified error margin; this error depends on two parameters 3, and 7 . Where 7 is the percentage of the vertices of the original object that were changed, and 3 is the percentage of change in the angle of the vector connecting the center of the MBC of the object to one of the object’s vertices (see Fig. 4.4). Note that 37 permission of the copyright owner. Further reproduction prohibited without permission. Figure 4.4: 0 and 7 factors our similarity search is also scaling, rotation, and translation invariant: since we are using VMS as a measure of similarity. 4.2 Index Structures All six M BC features described in Sec. 3.1 are stored in the database to expedite the processing of the three query types. From the six MBC features, three are stored only with the object: r. C and S P . The other three are used to index the objects: TP, TPAS , and VMS. We propose three types of index structures on these three M BC features. The first structure, I t p a s , indexes the objects according to their number of vertices (m ). titp, and their TPASs. The second structure, I v a s , uses VMS of the objects for indexing purpose. Finally, the third index structure, I t p v a s • is a hybrid of the first two structures, where it uses the information provided by both the vertices of the objects (VMS and m) and their TPs. For the purpose of comparison, we start by describing a naive index structure, Itfaive , which only uses objects’ m's for indexing purpose. Note that m is not a feature extracted from the MBC of an object. With I t p v a s and I v a s • we only use a few coefficients of Discrete Fourier Transformation-D FT of the angle 38 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. M ii& H a h T a b k oonumbaof v«tit C^Cl index structure H a h TbM khi oa B U te r ofTPi » » t Rx3 (b): It p a S index structure R'-trae on Fourier TnnfonsofVAS (c): Iv a s index structure M a m H s h T s b k w w t e ofTPi S * U M (t« U o ita T u c t f s m o f V A 5 S * 4 jM ( ( ) a a P o a n TraataraofVAS (d): I t p v a s index structure Figure 4.5: Index structures iNaive • I t p a s . I vas • and It p v a s 39 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. sequences in order to reduce the dimensions of the index. With the information kept by all the three structures, we can answer both EM and RST query types. However, to support the SIM query type, we need the information on the entire vertex angle sequences as the first (and only) level of the index. Therefore, only the I v a s index structure can be used to support the SIM query type. To build an index structure, we use the extracted MBC features for every object in the database. Subsequently, to support a query, the same MBC features are also extracted from the query object Oq. Consequently, 0 q's MBC features can be used as a key in searching the index. The index only helps to identify a set of candidates that satisfy the query, i.e., we might have false hits but no false drops. This set is then filtered in two steps in order to eliminate all the false hits. In the first step, we use a subset of MBC features that are stored with the object (i.e.. SP, r, and C). to identify rotated, scaled and/or translated candidates. Finally, in the last step, the final candidates can be compared to 0 q by employing any known algorithm proposed in the area of computational geometry. Instead, we continue utilizing M BC features for the final comparisons. Towards this end, we employ our feature-based comparison algorithms, termed PC EM, PC RST, and PCSIM , which are used for EM, RST, and SIM queries, respectively (see Appendix A.2 for further details). Our feature-based comparison algorithms are explained in Secs. 4.2.2.0.1, 4.2.3.0.2, and 4.2.4.0.3, and their time complexities axe compared to a known computational geometric algorithm in Appendix A.2. 40 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. For the remainder of this section we describe each index structure in more details. Fig. 4.5 provides a graphical representation of these index structures. 4.2.1 Ijvaive Index S tru ctu re The naive index structure is simply a hash table build on objects* m's (see Fig. 4.5(a)). To support all three query types, we first identify the number of vertices of the query object 0 q. and then access the hash table to retrieve all the objects with the same number of vertices. The returned set of objects from the index, in response to a query, forms the candidate set which trivially contains false hits. To eliminate the false hits, we apply a polygon comparison algorithm PC proposed in [3]. The complexity of the proposed algorithm to compare two s • objects 0 l and 0 ] is 0(m' ); where in our case m‘ = mJ = m. This computation complexity does not account for examining scaling-invariance, it only checks for translation and rotation invariance. 4.2.2 I t p a s Index S tru ctu re This index structure uses an object’s m, the nrps and TPASs to construct the index, and can be used to solve the EM and RST queries (see Fig. 4.5(b)). The I t p a s index structure consists of three levels. At the first level, we index the objects according to their m ’s using a hash table. At the second level, we use a hash table based on their nrps. Finally, at the third level the objects with the 41 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. same m and njp are indexed using a multi-dimensionai index structure (R’-tree) according to their TPAS. To eliminate false hits, further filtering is done by comparing the final set of objects to 0 q to check if they are exactly the same. The overall complexity for EM queries using I t p a s index structure is of order O(m), and for RST queries is of order 0(nrp x m2). Our intuition is that nrp would be a small number greater than 2. With a very large database of objects, we expect that a large number of objects will have identical njp. Therefore, we index the objects at the second level according to their njp. Since our index structure depends on TP AS, it trivially results in false hits. This is due to the fact that two or more different objects in the database may have the same TPASs. 4.2.2.0.1 Query Processing The I t p a s index structure can be used to solve the EM and RST queries. For EM queries, given a query object Oq we use its number of vertices mq to access the first hash table to find the objects that have the same number of vertices as m q. Subsequently, we use its rijP to access the second hash table to find the objects that have identical mq and nq rp. Finally, we use Oq's TP AS to access the R ' tree to find the objects that could be candidates for exact match. Further filtering is done by eliminating objects with different r, coordinates for C, or different SPs. Then the final set of objects could be compared to the query object Oq to check if they are exactly the same. Towards this end, we employ one of our feature-based comparison algorithms, 42 of the copyright owner. Further reproduction prohibited without permission. termed PC EM. PC EM starts by overlaying each candidate object O ’ with the query object. Overlaying means that we have the same MBC centers and we align the SP on top of each other. Then, we have to check the following: a- The number of vertices between each two consecutive touch points of 0 q is the same as the number of vertices between each two consecutive touch points of O ’: this is of order 0(1). If not, then they do not match exactly. Otherwise continue with the next step. b- Find the Euclidean distance between the corresponding vertices of Oq and 0 C ; this is of order 0(c)- If the Euclidean distance is close to zero, then the two objects exactly match. Therefore, the overall complexity for exact match EM of polygons using I t p a s index structure; O e m - t p a s \ is of order 0 { v ). For R S T queries, we follow the same steps taken to support EM . The only exception is in the queries that involves rotations. We mentioned in Sec. 3.1 that having an object with a different SP leads to a different .45: especially for the rotated objects. Therefore, given a query object, we have to perform njp queries to find the candidate objects for match. This is due to the fact that we have nrp-different SPs and ail of these are considered identical under rotation. Note that this was not the case for E M queries, since with EM two objects cannot be candidates for exact match if they do not have the same SP. This is due to our choice of the start point. Two objects would be exactly identical; not rotated; 43 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. if and only if their SPs lay on the same line through the center of MBC (see Fig. 4.3(a)). Further filtering is done by comparing the final set of objects to the query object Oq to check if they are exactly the same. Towards this end. we employ one of our feature-based comparison algorithms, termed PC RST. PC RST starts by overlaying each candidate object with the query object. Subsequently, we eliminate the objects with different m. Finally, we check the following: a- The size of the radii of MBC9 and MBCC . If they are not the same, then scale up/down the Oq such that rq = rc; this is of order 0{v). b- Check if the SP of Oq has the same coordinates as the candidate object. If they are not the same, then rotate Oq by 8 degrees until its SP is on top of the SP of the candidate object. This is of order 0{ t i t p x v); since we need to rotate v vertices of Oq njp times and for each time we do : 1 - Check if the number of vertices between each two consecutive touch points of the Oq is the same as the number of vertices between each two consecutive touch points of the candidates object; this is of order 0(1). If not, then they do not match exactly. Otherwise continue with the next steps. 2- Find the Euclidean distance between the corresponding vertices of Oq and 0 C ; this is of order 0(u). If the Euclidean distance is close to zero, then the two objects exactly match. 44 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Therefore, the overall complexity of RST queries using I t p a s index struc ture, O r s t - t p a s »is of order 0 { t i t p x v 2 ). 4.2.3 I v a s Index Structure The I v a s index structure uses the AS s of all the vertices of the objects to construct the index, and can be used to solve the EM, RST and SIM queries. It consists of a single R’-tree on the fourier transform of the VAS of the objects (see Fig. 4.5(c)). Experiments [47] have shown that R’-tree based methods work well for up to 20 dimensions. In addition, in [1] they showed that using an f c < 3 is more than efficient to index data sequence of sizes larger than 256 elements. Therefore, we use only the first f c coefficients of the fourier transforms of the VASs to both reduce and fix the dimensionality of the problem. The Euclidean distance between sequences is used as a measure of similarity of two sequences. In [46] Parsevals theorem shows that the Euclidean distance is preserved under orthonormal transforms such as DFT. This would guarantee that we have no false drops, but note that we might produce some false hits. For the EM or RST queries, using the fourier transformation of the VAS provides us with an extra information. The real part of the first fourier coefficient is the summation of all the angles in the angle sequence divided by the square root of the number of angles in the sequence. For our problem, the angles in an angle sequence could be positive or negative but the summation of the angles in an 45 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. angle sequence is always equals to 2~. The first coefficient satisfies the equation Zq = 2ir/y/nsv. Hence, this equation can be used to compute the number of vertices in an object, given the first fourier coefficient of its .45. To eliminate the false hits, further filtering is done by employing our feature-based comparison algorithms. The overall complexity for EM,RST, and SIM queries using I v a s index structure is of order 0(m ), <3(m3), and <9(m3), respectively. 4.2.3.0 .2 Query Processing The I v a s index structure can be used to solve the EM, RST and SIM queries. For EM queries, given a query object 0 q we use its VAS to access the R’-tree to find the objects that could be candidates for exact match. Further filtering is done by employing PC EM. We could skip step-(a) but the complexity would still be the same. i.e.. O e m - v a s = O e m = 0 ( v ) . For RST queries, the same steps used to answer EM queries would be re quired here. The only exception is in the queries that involves rotations. We have to to perform k queries to find the candidate objects for match, where k is the number of touch points of the query object. Further filtering is done by employ ing PC RST. We can skip step-(a-l) and for step-(b) the number of rotations would be equal to v. Hence, O r s t - v a s would be of order 0 { v 3). For SIM queries, we have to perform more queries. Since we do not use the touch points information, then any vertex of an object (not only its touch points) could be used as the SP. Therefore, each object would have m diiferent AS 46 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. representations. Consequently, we have to apply m queries in order to find all the objects that could be similar to the query object. With each of the m queries, we use the same steps required for answering EM and RST queries. Further filtering is done by employing one of our feature-based comparison algorithms, termed PC SIM . PC SIM starts by overlaying each candidate object with the query object. Then, we have to check the following: a- The size of the radii of MBCq and MBCC . If they are not the same, then scale up/down the Oq such that rq = rc; this is of order O(v). b- Check if the 0 q overlaid with the candidate object has matching V'.4Ss. If they are not the same, then rotate the Oq by 6 degrees until the vertices are aligned in a way such that the VAS of the objects matches. This is of order 0 ( r 2 ), and for each time we do : - Find the Euclidean distance between the corresponding vertices of 0 q and Oc\ this is of order O(u). If the Euclidean distance is close to a certain t, then the two objects are similar. The overall complexity for SIM queries using I v a s index structure: O s im - v a s \ is of order 0(v3). 4.2.4 I t p v a s Index Structure This index structure is similar to I v a s index structure except that we use the extra information provided by the same nxp. The I t p v a s index structure could 47 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. be used to solve the EM and RST queries. The I t p v a s index structure consists of two levels. In the first level we index the objects according to their njp- At the second level, we index the objects with the same n-rp, using R'-tree (see Fig. 4.5(d)). As in I v a s , the R*-tree is build on the first f c fourier coefficients of the object’s VAS. The overall complexity for EM,RST, and SIM queries using I t p v a s index structure is of order 0(m) and 0 (m3), respectively. 4.2.4.0.3 Query Processing The Itp v a s index structure could be used to solve the EM and RST queries. For EM queries, we use 0 q,s t i t p to access the hash table to find the objects that have identical njp as nq TP. At the last step, we use 0 q's TPVAS to access the R* tree to find the objects that could be candidates for exact match. Further filtering is done by employing PC EM. We can skip step-(a) but the complexity would still be the same, O e m - t p v a s = O e m = 0{v). For RST queries, the same steps used to answer EM queries would be re quired here. The only exception is in the queries that involves rotations. We have to perform k queries to find the candidate objects for match, where k equal titp of the query object. With each of the k queries, we use the same steps required for answering EM queries. Then we use the same steps used in processing of RST queries in I t p a s • Further filtering is done by employing PC RST. We can skip step-(a-l) and for step-(b) the number of rotations would be equal to v. Therefore, O r s t - t p v a s would be of order 0 (v3). 48 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Chapter 5 2D Spatial Queries in the World of Minimum Bounding Circles This chapter describes how to support spatial queries such as topological and direction relations between objects using their M BC s [56]. We also show the similarities and differences between approximating objects by their MBR and MBC. 5.1 Spatial Queries with MBC In a spatial database system, objects are organized and accessed using spatial access methods (SAMs). Since SAMs are not able to organize complex polygon objects directly, a common strategy is to store objects’ approximations. Con sequently, those approximations axe used to access the spatial data structures. 49 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Approximations maintain the most important features of the objects. There fore, spatial queries can be efficiently processed on the basis of approximations. However, spatial relations {e.g., topological, direction, and distance) between ap proximations does not necessarily coincide with the spatial relations between the actual objects. In most cases, if the approximations of the actual objects satisfy a given spatial relation, the actual objects may satisfy a number of possible spatial relations (see Fig. 5.2). Therefore, if the spatial relations of interest cannot be determined by using the approximations, then the original objects would have to be loaded into memory. Subsequently, complex geometric algorithms would be employed to determine the exact relations. For example, suppose the topological relation of interest is whether two objects meet or not. If the approximations of these two objects do not share common points, we can conclude that the objects do not meet. On the other hand, if the approximations of these two objects have common points, no conclusion cam be immediately drawn about the topo logical relation between the actual objects (i.e., the actual objects might meet, overlap,.. .etc.). In general, the approximation-based spatial query processing is performed in two steps. First, a filter step identifies, based on approximations, a set of the objects that could satisfy the query (candidate set). The candidate set may contain objects that do not satisfy the query (i.e. false hits). Therefore, a refinem ent step is required to inspect the exact representation of each object 50 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Figure 5.1: Topological, direction and distance features of the candidate set and eliminate the false hits. In this step, complex and CPU-time intensive geometric algorithms are used to detect and eliminate the false hits. The strategy could also be extended to include more filter steps with finer approximations in order to exclude more false hits from the candidate set. If the relations between the objects are unambiguously determined by examining the spatial relations between the approximations of the objects, the refinement step could be completely avoided. Topological, direction, and approximate distance relations between two ob jects are examples of spatial relations. A sample spatial composition incorporat ing topological, direction and distance features is shown in Fig. 5.1. It depicts two objects p and q that are disjoint, q is W eak-N orth.East of p. and the mini mum Euclidean distance between them is bounded by d. For this study, distance relations will not be discussed any further. The performance of approximation-based query processing depends on the type of approximation used. A suitable approximation is crucial for reducing the 51 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. size of the candidate set (i.e. reducing the number of false hits). M B R as approx imation has been studied extensively in the literature. Several other approaches have been suggested to maintain non-rectangular approximations by adequate spatial access methods, e.g. circles in the Sphere-tree, or convex polygons in the Cell-tree, Polyhedra-tree or P-tree. Here, we focus on M B C as approximation and in Secs. 5.2 and 5.3, we explain how M B C s can be employed to approxi mate topological and direction relations between two objects. We identify the topological and direction information that M BC s convey about the actual ob jects they enclose with respect to the 9-intersection model [16. 51]. In addition, we discuss how Sphere-trees can be utilized to index M B C s to expedite spatial queries. The spatial relations between objects based on the minimum bounding rectangles (M B R s) approximation as described in [73. 51] are summarized in Appendix B. 5.2 Topological Relations Topological relations are described based on the intersection of the objects topo logical interiors, boundaries, and exteriors. They are crucial for describing the concepts of neighborhood, inclusion and incidence [51]. Although approximations maintain the most important features of the ob jects, topological relations between approximations do not necessarily coincide with the topological relations between the actual objects. For example, if two 52 permission of the copyright owner. Further reproduction prohibited without permission. M B C s meet, then the relation between their actual objects might be either meet or disjoint (see Fig. 5.2(b)). Moreover, different approximations of objects would lead to different sets of topological relations that could be deducted between the objects. When approximating objects by MBRs, the topological relations be tween M B R s are determined by the relation between the lower and upper points of the bounding rectangles of the objects. On the other hand, when approximat ing objects by M B C , the topological relations between objects are determined by the relation between the radius and the center of the bounding circles of the objects. For example, with M B R approximation, if M B R of p equals the M B R of q, then the relation between p and q could be : equal, coveredjby. overlap, covers, m eet, or disjoint. While with M B C approximation, the relation between p and q could be the same as for M B R except that it cannot be disjoint. In general, we could classify the relations between M B R s as follows: • Intersect at no point (i.e., represents the topological relations inside or disjoint). • Intersect at one point (represents meet). • Intersect at two points (represents overlap). • Intersect at a line (represents meet or covers). • Equal (represents equal). and with M B C we get different relations as follows: 53 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. • Intersect at no point (represents inside or disjoint). • Intersect at one point (represents meet or covers). • Intersect at two points (represents overlap). • Equal (represents equal). Therefore, we need to describe those relations that M B C s could convey about their corresponding objects (see Fig. 5.2). Those relations can also be expressed with the following rules, where p/ and qi are M B C s of p and q. respectively (eq: equal, cu: covers, cb: covered-by, ct: contains, in: inside, dj: disjoint, mt: meet, ol: overlaps): • disjoint{pt, ql) — > dj(p,q) • meet(pi,qt) — ► dj(p,q) V mt{p,q) • overlaps(pt,qf) — ► dj[p,q) V mt{p,q) V ol{p,q) V ct[p,q) V cv(p.q) V in(p,q) V cb{p,q) • covers{pl,qi) — ► dj{p,q) V mt(p,q) V ol[p.q) V ct(p,q) V cv(p.q) • covered-by(pi,qt) — ¥ dj{p,q) V mt{p,q) V ol(p,q) V in(p,q) V cb(p,q) • contains(pt,ql) — ► dj{p,q) V mt(p,q) V ol(p,q) V ct(p,q) V cv(p,q) • inside[pi, ql) — ► dj[p,q) V mt{p,q) V ol(p, q) V in[p,q) V cb(p,q) • equal{pi,qi) — ► mt(p,q) V o/(p,g) V c6(p,<f) V cv(p,?) V eq[p,q) This section studies the topological information that M B C s convey about the actual objects they enclose with respect to the 9-intersection model [16, 51]. We 54 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. also investigate the possible topological relations between M B C s and the corre sponding topological relations between the actual objects that they approximate. When the topological relation between approximations is overlap (see Fig. 5.2(c)), the number of possible topological relations between the actual objects is large; hence, leads to a large number of false hits. Therefore, we define some spe cial cases that depends on the topological relations between M B C s (e.g. overlap relations). For the case where the M B C s of the objects overlap, we can have more information about the actual objects by knowing the relation between the centers and radii of the M BCs. Furthermore, we define a feature that could be extracted from M B C of an object to classify it as h alf-filled or fully-filled. Consequently, those special cases and features are used to reduce the number of false hits of the filter step of approximate-based topological relation query processing. 5.2.1 Topological Relations using M BC In order to retrieve objects that satisfy a particular relation with q, we need to know what relation exist between the M B C of q and the M B C of those objects. For instance, in order to answer the query “find all objects that contains object q”, the candidate M B C s are those that satisfy the relations contains, covers or overlaps with the M B C of q. Table 5.1, lists all of the possible topological queries and the possible relations between their corresponding candidate M BCs. 55 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. (a) MBC of p disjoint with MBC of q (b) MBC of p meet with MBC of q $ # disjoin gas ovwtap covws ia id s colored-by (c) MBC of p overlaps MBC of q disjoint meet overlap contains coven (d) MBC of p coven MBC of q mm disjoint overlap inside eovertd-by (e) MBC of p covered J>y MBC of q ♦ disjoint meet overlap contains coven (f) MBC of p contains MBC of q # # disjoint meet overlap inside coveted-by (g) MBC of p inaide MBC of q ♦ meet overlap covend-by covets equal (h) MBC of p equal MBC of q Figure 5.2: Possible relations between actual objects given the relation between their MBCs 56 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Actual object Actual object Sepmor-diamcter X. Separator-diameter (a) Half-filled circle (b) Fully-filled circle Actual object Sepmcr-diameter (c) Half-filled circle with least number of touching vertices Figure 5.3: Half and fully filled circles m p’ pi contains qi and p is inside q Figure 5.4: Relations cannot be identified between actual objects given the MBC relations 57 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. In Fig. 5.2. we present all possible relations between actual objects when their M B C s are related by one of the 8 possible relations between M B C s. Some relations between M B C s may identify few relations between the actual objects, while other relations between M B C s may identify more relations between the actual objects. For example, if two M B C s meet, then the relation between the actual objects is either meet or disjoint (see Fig. 5.2(b)). On the other hand, if two M B C s are equal, the the relation between the actual objects could be meet, overlap, coveredjby, covers, or equal. To answer a query about objects that have a particular relation with the query object, we need to find the set of candidate M BCs. This set contains M BCs that satisfy a particular relation with the M B C of the query object (see cases in Fig. 5.2). Only those M BCs could include objects that could satisfy the query. For instance, in order to answer the query “find all objects that contain object c f. the candidate M B C s would be those that satisfy the relations contains, covers or overlaps the M B C of the q. However, candidate M BCs, may also satisfy other relations. For example, to answer the query “find all objects p equal to object <f, the only candidate M B C s are those that satisfy the relation equal. On the other hand, those candidate M B C s may also enclose objects that satisfy the relations meet, overlap, coveredJxy or covers with respect to q (see Fig. 5.2(h)). Therefore, a refinement step is required if the candidate M B C s are not disjoint. 58 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Table 5.1: Queries and the candidate M B C s to answer them. T h e q u e r y to b e a n s w e re d t 'h e re la tio n s t h a t t h e r e tr ie v e d M B C s m u s t sa tisfy “find all objects p eq to object q" eq(pl.qi) “find all objects p th a t co n tain s object 7” ct(pl,ql)Vcv(p/,qt)V ol(pt,ql) “find all objects p inside object q" tn(p/,qi)Vcb(p/,q*)V ol(pl,ql) “find all objects p th a t covers object q" ct(P, >7, )Vcv(p/,q/)V eq(pl,ql)Vol(pl,ql) “find all objects p covered-by object q" *n(p/,7»)Vc6(p/,?/)V eq(pl, q>)Vol(pl,ql) “find ail objects p th a t overlaps object 7" cb(pt, qt)Vct(p/, q/)V cv(p/, q/)Vtn(p/, q/)V eq(pt,qt)Vol(pl,qi) “find all objects p th a t meet object q” c6(p/,7/)vct(p/,7/)v cv(p/,7/)V m (p/,g/)v mt(pi,ql)Veq(pl,ql)V ol(pt,ql) “find all objects p disjoint with object 7” cb(pl, ql)Vct(pl,ql)V cv(p/, q/)Vtn(pt, ql)V mt(p/,q/)vdj(pl,q/)V ol(p/,qt) eq: equal, cv: covers, cb: covered-by, ct: contains, in: inside, dj: disjoint, mt: meet, ol: overlaps Sometimes by knowing the relation between the MBCs of objects, one could deduce what relations between the actual objects could not be satisfied. For example, Fig. 5.4 depicts M B C pt contains M B C qi. Consequently, one can deduce that p cannot be inside q because if p is inside q, then pt cannot be the M B C of p. 5.2.2 Special Cases of Topological Relations There are some special cases, in which we could utilize the topological relations between M B C s to reduce the number of false hits from the filter step. We define two such cases, where in the first case we use the information provided by knowing what class of overlap the relation between M B C s belongs to (see Fig. 5.5 for classes of overlap). For instance, if M B C s pt and qt are as in Fig. 5.5(overlap-a), 59 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. then the actual objects p and q cannot satisfy the relations contains, m sidt. covers and covered-by (see Table 5.2 for other configurations). For the second case, if the two M B C s are equal we examine if M B C s of the objects are hal f- filled or fu lly-filled (see Defs 3.1.6 and 3.1.7 in Sec. 3.1). For instance, in the case where the M B C s of the objects are equal and given that M B C pt is half- -filled and M B C qf is fully-filled, then object p cannot satisfy the relations covers(p,q) or equal(p,q) (see Table 5.3 for other configurations). The two cases tire discussed in details as follows: M BCs of objects overlap. Here, we assume that the relation between M B C s is overlap. We can have more information about the actual objects if we knew the relation between the centers of the M B C s. Such relation would be whether each M B C contains the center of the other M B C or not. Fig. 5.5 depicts the 9 different cases in which two object’s M BCs could overlap, they differ in whether their centers are contained in the M B C s of each other or not. For instance, if M B C s pt and qf overlap but pt does not contain the center of qt and vice versa (see Fig. 5.5(overlap-a)), then the actual objects p and q cannot satisfy the relations contains, inside, covers and covered-by. Table 5.2 illustrates the configurations for which the refinement step is not required when the M B C s of the objects overlap. Each row of the table presents a different type of overlap between the M B C s of the objects. Each X in a row means that the relation between the actual objects cannot be satisfied according 60 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. overlap-a overlap-b overlap-c overlap-d overlap-e overlap-f # overlap-g overlaf^h overlap-i Figure 5.5: Different overlap cases according to the centers of the MBC s Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. to the heading of the column. For example, in row 3, the relation between M B C s is overlap-c. Hence, the relations between the actual objects cannot be contains but could be inside. Therefore, if the relation between M B C s is overlaps then a refinement step is required in some cases, and not in other cases. Fig. 5.6 shows some examples where a refinement step is required to identify the relation between the two actual objects. These examples correspond to the cases where the entries in Table 5.2 are blanks. For example, Fig. 5.6(a) demonstrates cases where two M B C s overlap are of type overlap-g, overlap-h, or overlap-i (as defined in Fig. 5.5), but we do not know if the actual object p contains q or not. On the other hand, there are cases where a refinement step is not required to define the exact relation between the two actual objects. Theorems 5.2.1 and 5.2.2 define two such cases that correspond to entries in Table 5.2 that are marked by an X. An example is shown in Fig. 5.7(a), where two M B C s overlap of type overlap-d and we want to know if the actual object p contains q or not. Theorem 5.2.1: If p overlaps (overlap-d) with q. then the object contained by p cannot contain the object contained by q. Proof: Since the overlap is of type overlap-d, then the relation between the M B C s of p and q should be as shown in Fig. 5.6(c). For p to contain q, q must be only in the dark shaded area (in Fig. 5.6(c)). If q is in the shaded area, then q' is h alf-filled and has only one vertex on the separator-line or none. This leads to a contradiction of Lemma 3.1.8. I 62 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Table 5.2: Configurations for which a refinement step is not required when MBCs of the objects overlap MBCs overlap contain*(p,q) iaside(p.q) covers(p.q) cvd.by(p.q) OverLap-a X X "............ X X Overlap-b X X X X Overlap-c X X Overlap-d X X X X Overtake X X X X Overlap-f X X Overlap-g X X Overlap-h X X Theorem 5.2.2: If p overlaps (overlap-e) with q, then the object contained by p cannot be inside the object contained by q. Proof: Since the overlap is of type overlap-e, then the relation between the M B C s of p and q should be as shown in Fig. 5.6(d). For p to be inside q. p must be only in the dark shaded area (in Fig. 5.6(d)) and has no point on the separator-diameter. Thus, p’ is half-filled and has no vertex on the separator- line. This leads to a contradiction of Lemma 3.1.8. I MBCs of objects are equal. Here, we describe another way to reduce the number of false hits from the filter step. Suppose the relation between MBC s is equal, we can obtain more information about the actual objects if we know whether their M B C s axe half-filled or fu lly-filled (see Defs 3.1.6 and 3.1.7). Table 5.3 illustrates the configurations for which the refinement step can be en tirely eliminated when the M B C s of the objects are equal. Each row of the table presents a different type of M BCs. Each X in a row means that the relation between the actual objects cannot be satisfied according to the heading of the 63 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Figure 5.6: Examples where two MBCs are overlapped and a refinement step is required Scptntoi overlap-d overlap-e (a) Example where p cannot contain q (b) Example where p cannot be inside q Figure 5.7: Examples in which the two MBCs are overlapped and a refinement step is not required 64 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Table 5.3: Configurations for which a refinement step is not required when MBCs of the objects are equal MBCs equal covered.by(p,q) covers (p,q) equal(p,q) p half-filled, q fully-filled X X p fully-filled, q half-filled X X column. For instance, in the case where the M BC s of the objects are equal and given that the M B C pt is half-filled and the M B C qf is fully-filled (row * 2 ). then the object p cannot satisfy the relations covers(p,q) or equal(p.q) (column 2 and 3). 5.3 Direction Relations Direction relations describe the order of objects in space (e.g. north, south), and are crucial for establishing spatial location and path finding [80]. With M BR approximation, a project-based method [50, 21] is typically used to define direction relations between objects. With this method a plane is partitioned into some subpartitions and the direction relation between two objects is defined by the subpartitions they occupy. This method, however, is not suited when approximating objects with M B C . Therefore, we utilize another method named cone-directions [53] that could be easily adapted to M BCs. With cone-based, a plane is divided into 5 partitions that defines the primitive direction relations (see 65 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Fig. 5.8(d)). Now, it is necessary to investigate what direction relations MBCs could convey about their actual objects. Section 5.3.1 presents the direction relations between objects based on the concept of cone-directions, in which the direction domain is divided into a num ber of cones (or triangles) with a similar resolution (size). We show how the cone-direction is well suited for MBCs. As the case with topological relation query processing, since we use MBC as object approximation to answer the queries, a filter and a refinement steps are required. Therefore, we introduce two methods to reduce the number of false hits of the filter step by breaking the M BC s of the objects into 4 partitions and further partitioning the same-level regions of the objects. Subsequently, the refinement step is needed to eliminate all the false hits produced by the filter step. 5.3.1 Cone-Based Direction Relations This section presents the direction relation between objects based on the concept of cone-directions. With this concept, the direction domain is divided into a number of cones (or triangles) with a similar resolution (size) and a single point qi is used to represent the reference object (q). The cones are consequently used to define the direction relation ; relative to the cone that contains the point Pj, which represents the primary object (p). In addition, the direction relation between two objects can be specified more accurately using the angle between 66 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. N ’actb IX ° Sooth (a) Primitive points (b) A point and an object Noflh South (c) Two objects (d) Using MBCs Figure 5.8: Primitive direction relations using cone-shaped method. a line connecting the objects and a fixed direction in space. For example, in Fig. 5.8(a), the direction relation of p relative to q is represented as : p is north of q with an angle value of 100 deg. The relation between two points could also be extended to define direction relations between actual objects. We illustrate that by the two examples shown in Fig. 5.8(b) and Fig. 5.8(c), in which we define the direction relation between a point and an object, and between two objects. The cone-based method could be easily adapted to our representation of ob jects as MBC s. The direction relation between any two objects can be computed by using their MBCs as object representative. We define these relations accord ing to the direction relations in Fig. 5.8(d), where the plane is represented by 5 direction partitions. The circle represents the MBC of the reference object, the 67 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. South S oum (a) Objects spanning more than one partition (b) Incorrect inferences Figure 5.9: Special cases part/s of the primary object that lay in the MBC of the reference object are considered to be at the same level with the reference object. Some objects could span more than one partition of the 5 direction partitions (see Fig. 5.9(a)); for example an object could have parts in the North partition and other parts in the East partition. In order to define such relations correctly, we define the direction relation between two objects as a permutation from the set {N: n o rth , S: south , E: east, W : w est, SL: sam e level}. Therefore, for the objects pi, p‘ 2, p3, and p4 in Fig. 5.9(a) we could define their direction rela tions with respect to the reference q as {N},{N,E},{YV.N.E}, and {N,E,S,W}, respectively. Using MBCs as representative for objects when finding the direction relations between objects may lead to incorrect inferences (i.e. false hits). For example, in Fig. 5.9(b) the direction relation between p and pt with respect to q is a member of {North,East} but the actual objects do not satisfy these relations (i.e., p 68 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. (a) Partition* on MBCf (b) Direction relations on partitions Figure 5.10: Minimum bounding circle partitioning satisfies {East} and r satisfies {North}). A naive solution to this problem could be a refinement step which requires the retrieval of the original objects. Our proposed solution, however, is to filter out more false hits in the filter step. We achieve that by dividing the MBCs and the same-level regions into 4 partitions (see Fig. 5.10(a)). For the partitions where the actual object lays in. we assign a 1, otherwise we assign a 0. Subsequently, the direction relation between two objects could be defined by using only the partitions marked 1. For example, in Fig. 5.10(b) the direction relation between q and pi is defined as {N} only and not {N,E}. The same concept could be used for the case of objects at the same level. For instance, in Fig. 5.11(c) the direction relation between p and q could be defined more accurately as {North} instead of {North,East,West}. The definition of direction relations could be extended to define direction relations between 3D objects. In 3D world, we approximate each object by its minimum bounding sphere. Given a point in 3D plane, we define eight direction relation partitions with the reference point as its center (see Fig. 5.12). Four of 69 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. (a) Partitions of the same level direc- (b) Partitions of objects p tion <tnd q (c) The direction relation between p and q Figure 5.11: Same level partitioning the partitions are considered to be above the reference point and the other four are considered to be below the reference point. The following is a list of all direction partitions: • partitionl: till points in this partition and its extension (to the outside) are considered to be Below-Front-Left of the reference point. • partition2: Below-Front-Right • partition3: Below-Back-Right • partition4: Below-Back-Left • partitiono: Above-Front-Left • partitions: Above-Front-Right 70 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Above Below Below Figure 5.12: Primitive direction relations in 3-D space. e partition! : Above-Back-Right e partitions: Above-Back-Left All the discussion for the 2-D objects direction relations could be easily ex tended for 3-D objects. The only difference is that we divide each M B S to 9 partitions instead of 5 partitions of M B C s ( as for 2-D objects). The M B S of the reference object is considered as partition-0. We divide the rest of the space into 8 different sub-spaces, where each one of them is the extension of the partitions in the M B S of the reference objects (see Fig. 5.13). 5.4 Observations on MBC and M BR Approaches To expedite the processing of spatial queries, objects could be organized and indexed using the Sphere-tree index structure. Sphere-tree is a spatial access 71 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Figure 5.13: Primitive direction relations partitions in 3-D. method used for storing and retrieving objects approximated by their MBC s; as opposed to the R-tree which is used for objects approximated by their MBRs. However, in order to utilize Sphere-tree to index XIBCs we need to address the mismatch between approximation relations and actual relations for intermediate nodes of the tree. Intuitively, since M BC approximations of objects are different than their M BR approximations; we expected that this would change the rules of propagation in the intermediate nodes of Sphere-tree compared to those of R-tree. On the contrary, our investigations showed that the relations that may be satisfied between an intermediate node P and qt (so that the node be selected for propagation in the Sphere-tree) are similar to those relations obtained for the case where R-tree was used in [51]. The same results were also obtained when investigating the empty results query optimization (i.e. where the result of the 72 permission of the copyright owner. Further reproduction prohibited without permission. query is know'll to be empty without running the query [51]). These observations are described in details in Secs 5.4.1 and 5.4.2. 5.4.1 Sphere Index for MBCs In order to retrieve the spatial relations using Sphere-trees, one need to define more general relations to propagate the intermediate nodes (may contain several MBCs) of the tree structure. By knowing the spatial relation between the MBC of the intermediate node (P) and that of the reference object q. one could conclude the possible spatial relations between q and all the primary objects contained in P. For instance, the intermediate nodes that could enclose pi that covers qf, may satisfy the more general constraint contains(P, qf) V covers{P. q> ). Otherwise, the intermediate node would not contain any pi that satisfies the relation cover s{pi,qi). Thus all the MBCs inside this intermediate node may be ignored from further search. Following this strategy, the search space is pruned by excluding the intermediate nodes P that do not satisfy the previous constraint. Fig. 5.14 provides examples of intermediate nodes (P) that may contain MBCs that covers the MBC of q. In Appendix B.l, we included Table B.l that presents the relations that may be satisfied between an intermediate node P and qf of the re ference object, so that the node be selected for propagation in the tree structure as in [51]. Notice that a similar relation between intermediate nodes and the reference object’s 73 permission of the copyright owner. Further reproduction prohibited without permission. (a) contains(P,t;/) (b) coven(P,?/) Figure 5.14: Intermediate nodes propagation MBC exists for all the levels of the tree structure. For instance, for the example shown in Fig. 5.14, an intermediate node (Pt), which encloses the intermediate node (P ) that satisfies the general constraint contains{P, qf) V cover s(P, qf); may also satisfy a similar constraint. This can be easily concluded from Table B.l and is applicable to all topological relations of Fig. B.2. The same concept could be applied to direction relations. In order to find all the objects to the North of a reference object q, we need to retrieve ail objects which has non-empty partitions (marked 1) in the north partition of the M BC of q. A similar partitioning could be applied to the intermediate nodes of the Sphere-trees, and could be used to prune the search space by excluding the intermediate nodes P that do not have non-empty partitions in the north partition of the MBC of q. 5.4.2 Complex Queries Sometimes topological relations could be defined as disjunction of the relations of mt2 (lower qualitative resolution). Consider the query “ find all the postal offices 74 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Figure 5.15: A query with two reference objects and empty results in a given county in a map”. The result should be all the offices that are inside or covered-by that county. Thus, the interpretation of in is inside V coveredJby. In general, the MBCs to be retrieved are the union of the MBCs to be retrieved by each of the relations that belongs to the disjunction. In some cases (e.g. empty results query), the results of a topological relation query could be returned without running the query (semantic query optimiza tion). The empty result is deduced from the relations required in the query between the reference object and the primary objects. An example of queries of this form is u find all objects that are coveredJby ql and are inside q'2”. We can determine that the result of this query is empty if we knew that ql meets q2. As Fig. 5.15 illustrates, if p is coveredJby ql and ql meets q2, it cannot be the case that p is inside q2. In Appendix B.l, we included Table B.2, that illustrates the relations between reference object and primary objects for which an empty result is returned without running the query. 75 permission of the copyright owner. Further reproduction prohibited without permission. Chapter 6 A Framework to Evaluate the Effectiveness of Shape Representation Techniques This chapter begins by addressing key methodological issues for the evaluation of shape retrieval methods with rezil data and under different scenarios [58, 59]. We describe several metrics and criterions to evaluate the effectiveness of a given shape representation technique based on : 1) accuracy in terms of recall and precision, 2) computation and storage costs, 3) sensitivity to noise and boundary points representing a shape, 4) support for different query types, and 5) impact of human perception. 6.1 Accuracy In severed applications, an important criterion for testing the efficacy of the shape retrieval methods is that for each query object the relevant items (similar shapes) 76 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. in the database should be retrieved. Therefore, one of the metrics by which we may evaluate a shape representation technique is recall and precision. Recall and precision are commonly used in the information retrieval literature, where recall measures the ability of retrieving relevant shapes in a database and is defined as the ratio between the number of relevant shapes retrieved and the total number of relevant shapes in the database. While, precision measures the retrieval accuracy and is defined as the ratio between the number of relevant shapes retrieved and the number of total shapes retrieved. To evaluate the accuracy of the alternative shape retrieval methods, the fol lowing steps can be followed: First, boundary features (based on shape) are extracted from the objects during the population of the database. Second, for a number of randomly selected query shapes from the database, several similar (rel evant) objects can be inserted in the database. The similar objects’ are variants of the original object constructed as: rotation clockwise/counter-clockwise variants, scaled up/down variants, translated variant, or any combination of them. Con sequently, we can simply assume that each shape is relevant only to itself and to its variants. Third, at query time, features axe extracted from the query object. Fourth, the query object is compared with the objects in the database on the basis of the closeness of the extracted features. Towards this end. the Euclidean distances between the shape signature of the query object and ail other objects’ shape signatures are computed. Then, the Euclidean distances sure ordered in an 77 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. ascending order and the system retrieves an ordered list of the relevant shapes from the database in decreasing order of similarity to the query shape. Finally, the accuracy of the retrieval methods can calculated as precision-recall curve. To wards this end, we identify the ranks of the relevant objects to the query object within the ordered list (according to Euclidean distance). Subsequently, we use 11-point average precision at recall values of 0%, 10%. 20%.........100%. in which we vary the number of items to be returned and compute the precision depending on a required recall value. Note that the retrieval can be done more efficiently using index structures, but since this is not the focus of this study we assumed the sequential scan of the database. 6.2 Cost One metric to evaluate the effectiveness of a shape representation technique is the cost. Cost analysis can compare the efficiency of different shape representation techniques in terms of storage requirement and computation cost during retrieval. Size of databases is growing, therefore it is vital that the shape representation be capable of representing the shapes with minimal storage requirement for their indices. The computation costs of indexing the shapes in the database is usu ally done off-line. Therefore, we will only concentrate on the computation cost endured during retrieval (query time), which is done on-line. During retrieval, given a query object, methods need to first derive the shape signature for the 78 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. query and then compare similarity between the query and shapes in the database to retrieve the relevant shapes. Hence, the major operations and required com putation cost for a query are: cost to compute the shape signature for the query object, and the cost to compute the similarity between the query object and the objects in the database. Computation cost can be measured by computing the time required to perform each operation (e.g., compute a shape signature), or can be estimated by the number of floating points operations (i.e., the complexity) to perform each operation. The storage cost can be measured as the total ca pacity (disk space in bytes) required to store the shape signatures of the objects in the database, and the temporary storage required during some of the required comparison operations. 6.3 Robustness to Noise Real data is always accompanied with noise (e.g., by using sensors, scanners, etc.). Hence, when evaluating the efficiency of a shape representation technique, perfect data cannot be expected. In addition, a shape representation technique is expected to be stable and not fail to retrieve a similar shape that is distorted (but not enough to make it different). Therefore, it is necessary to address the issues of robustness/stability of the alternative shape retrieval techniques in the presence of noise. 79 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. To evaluate the robustness of the alternative shape retrieval methods, a database of corrupted shapes can be used. Shapes can be corrupted by intro ducing random Gaussian noise, with a specified mean (/i) and standard deviation (<r) (termed N (fi,a 2)), to their vertices. Towards this end, we can consider two different methods for introducing noise to the vertices of a shape. With the first method (Noise-Ml), noise is introduced by adding random samples fol lowing Gaussian distribution to the boundary points according to the following approach: if the coordinates of a vertex (k th vertex) of a shape are (x(k), y(k)) then the coordinates of the corresponding vertex on the noisy shape (xn(k), yn(k)) are given by : xn(k) = x(k) + gn (6.1) Vn{k) = y(k) + gn (6.2) where gn is a sample from the Gaussian distribution N(0 ,1). With the second method (Noise-M2), noise is introduced to the shapes fol lowing the approach defined in [79] and used in other comparison studies [40, 63]. With this approach, if the coordinates of a vertex (k th vertex) of a shape are (x(k),y(k)) then the coordinates of the corresponding vertex on the noisy shape (xn(k),yn(k)) are given by : xn(k) = x(k) + d fc x r x c x cos(9k) (6.3) S O Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. yn(fc) = y{k) + 4 x r x c x sin{6k) (6.4) where dk is the distance of boundary point k to point k 4- 1, 6k is the angle from the x-axis to the normal direction of the boundary at point k, r is a sample from the Gaussian distribution N(0 ,1), and c is a parameter that controls the amount of distortion. Since our shapes are represented by their boundary vertices (i.e. discrete values), the normal direction of the boundary at point k is approximated by the direction of the vector passing through point k and the midpoint of the line connecting points k — 1 and k + 1. Example of a shape and how it is corrupted by introducing different types and values of noise to its vertices was shown in Fig. 6.1. Note that as the amount of noise increases, some boundary edges of the shape cross over each other. This cross over leads to different shape signatures of the same object. 6.4 Robustness to Boundary Points Selection For 2D objects, almost all shape representation techniques use the boundary of a shape as its representation. The boundary is usually defined by vertices identified by edge detection algorithms. However, different edge detection algorithms may identify different number of vertices for the same shape. In addition, since the boundary is usually defined by a large number of vertices, only a small collection of those vertices (termed comer points) is used and serves as the feature points 81 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. O riginal object Noiae-Ml Noi»e-M2 c — 0.3 Noise-M2 c = 0.5 Figure 6.1: Example of objects corrupted by Noise-Ml and Noise-M2 for representing the shape. Consequently, the corner points are used to define the polygonal approximations of the shape. Obviously, the polygon approximation of a shape is not unique and highly depends on the vertices used to represent the shape. Sometimes a shape representation technique may work well only in certain environments, and it’s performance may depend crucially on the edge detection algorithm used to identify its vertices and on the quality of the technique used to find the corner points. For example, with DT [71] corner points are defined as high-curvature points located along the crossings of an objects’ edges. However, a modified DT (see M-DT in our study [57]), was able to achieve better retrieval 82 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. performance than that of DT due to the use of a different method (i.e.. three pass algorithm) to identify corner points. A good shape representation technique should not be dependent on the edge detection algorithms and explicit distinguishable points (e.g., corners or inflec tion points). Therefore, it is vital to study the impact of using different polygonal approximations and comer points on the retrieval performance of the alternative shape representation techniques. Towards this end, we propose a new algorithm termed vert ex-reduction (VRA) to be used to identify corner points that rep resents a shape, and at the same time reduce the number of its vertices. VRA strives to reduce the number of vertices required to represent the straight lines in a shapes’ boundary by using two heuristics to decide when to delete or keep a vertex of a shape boundary: VRA algorithm deletes a boundary point of a shape if it meets the conditions described by both of the following two heuristics: Heuristic-1 The angle (0) between the vectors (Vi-! and V i) connecting vertex Pi and its two adjacent vertices (i.e., P,_l and PI+1) on the boundary of a shape is less than Threshold-l (see Fig.6.2(a)). 0(Vi_i,K) > Threshold1 83 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. a) Heuristic-1 P ,# 1 1 A b , u u Ps u u b) Heuristic-2 _ 8 i V h ,.••***** \ U b, U of fixed length 0i < Thenhold-l Heuristic-1 action: fe>Thenhoid-l DeleteP: 0 i « 0 5 Keep Pi b, U of fixed length, 61 = <h U approx = b and b « b Heumuc:-2 acuon: (it and b i« b and U 5* „ (b and l*i« b and U Keep Pi h/b>Threshold-2 b/U< Threshold-2 Figure 6.2: VRA algorithm heuristics H euristic-2 The length of V *_i {U-i) compared to the length of V , (/,) is less than Threshold-2. Moreover, U-i and /, are much smellier than ^_2 and li+i (see Fig.6.2-(b)). Optimally, a straight line could be represented by its two end points. However, typical edge detection algorithms introduce more than two points to represent a straight line. The extra points make the straight line looks like a jagged line (like saw edge). The intuition behind VRA , is that if a vertex (P,) of a shape satisfies the conditions in both heuristics, then Pi could be deleted without affecting the shape. To represent the same shape with different number of vertices and cor ner points, VRA could be applied using different threshold values and different number of passes of the algorithm. Fig. 6.3, shows an example of how the VRA algorithm identifies the corner points and reduces the number of vertices repre senting a shape while at the same time it maintains its general characteristics. 84 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. a) Original object (936 vertices) b) Pass-1 with 0 =140 (491 vertices) c) Pass-2 with 0 =150, d = 0.5 (395 vertices) c) Pass-2 with 0 =150, d = 0.5 (395 vertices) d) Pass-3 with 0 =160 (333 vertices) Figure 6.3: Example of applying 3-pass VRA algorithm 85 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 6.5 Support of Different Query Types A good shape representation technique should be capable of supporting several query types (i.e., similarity and spatial) using the same objects representation. For similarity search, a shape representation technique should be capable of sup porting different types of similarity search queries such as: 1) exact match. 2) exact match regardless of its size and orientation (termed I-RST), 3) exact match with a specified rotation angle (/?), scaling factor (S), translation vector (T ), or any combination of the three (S-RST ). The support for such query types (espe cially S-RST) is essential in some application domains. For example, searching for similar tumor shapes in a medical image database [38]. A tumor is repre sented by a set of 2D images, each corresponding to a slice cut through its 3D representation. A method for retrieving similar tumor shapes would help to dis cover correlations between tumor shape and certain diseases. Besides the shape, the size and the location of the tumor would help in the identification of patients with similar health history. Another essential query type to support is spatial query (i.e.. topological or direction query). Given a query object, the shape rep resentation technique should be capable of finding a set of objects satisfying some spatial relationship efficiently. 86 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 6.6 Human Perception Most of the studies assume that human beings ignore variations in shapes (i.e. affine transformations) for recognition and retrieval purposes. Hence, each shape is relevant only to itself and to its variants (e.g., rotation, or scaling variants). However, since humans are better than computers in extracting semantic informa tion from shapes [72, 71], human perceptions on shape similarity are appreciably different. For example, a human being could identify two shapes from a database to be similar even though they are considered irrelevant by the computer: i.e., their shape signatures derived using a shape representation technique are differ ent. Therefore, it is vital to incorporate human perception in the evaluation of the effectiveness of the shape matching methods. To this end, a system {e.g.. Web-based) with a shape database can be implemented, in which a number of query shapes can be selected randomly from the database. Then, the user selects the most similar shapes in the database per query shape. Finally, compare the accuracy of the alternative shape retrieval methods depending on the similarity of the objects returned from the system and the ones picked by humans. 87 permission of the copyright owner. Further reproduction prohibited without permission. Chapter 7 Optimization Techniques to Improve the Performance of MBC-Based Shape Retrieval This chapter explains two optimization techniques [60] to further improve the performance of MBC-based shape retrieval method in several aspects. First, we propose a more efficient algorithm to identify the minimum bounding circle (M BC ) of an object, that operates only on a subset of the object’s vertices. Sec ond, we propose a new technique to improve the response time of MBC-based methods for match queries under specified rotation angles. The technique relies on utilizing the symmetry property of the phase values of the Fourier transform of a real sequence under different rotations. The fundamental observations uti lized by our techniques can be adapted and extended to be applicable to other frameworks and application domains. 8 8 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Figure 7.1: Optimized MBC 7.1 Optimized MBC Computation Algorithm We start by describing the algorithm used to find the minimum bounding circle {MBC) of an object. MBC of any finite set of points (P) in a 2D plane is their smallest enclosing circle. The set of points of P can be divided into two sets Pin and Pan (touch points); where P,n is the set of all points that are contained by the M BC but are not laid on its boundary and Pon is the set of all points that a^e contained by the MBC and are laid on its boundary1. To compute the MBC of an object we use a simple randomized algorithm that computes the smallest enclosing disk (circle) of a set of n points in the plane in expected 0{n) (linear time). The algorithm is based on Seidel’s Linear Programming, that solves a Linear Program with n constraints and d variables in expected 0(n) time, provided d is constant (for details on MBC algorithm see [77]). In general, for a set of n points, the algorithm computes minimum disk containing P in an incremental fashion. It starts with the empty set and adding the points in P one after another while maintaining the smallest enclosing disk of the points lTo eliminate numerical errors, we use a circle with a wide boundary rather than its line contour. 89 permission of the copyright owner. Further reproduction prohibited without permission. considered so far. The expected complexity of the algorithm is independent from the input distribution; it averages over random choices made by the algorithm. In theory, there is no input that should force the algorithm to perform poorly. However, in practical situations, the algorithm sometimes does perform poorly. In [41], another deterministic linear time algorithm for computing smallest enclosing balls was proposed. However, their algorithm is not nearly as easy to describe and to implement as Seidel’s algorithm, and it highly depends on the constant d. In this study, we propose a technique to enhance the performance of the MBC computation algorithm. In [77], a lemma states that if P and R are finite point sets in the plane, and P is nonempty, then if there exists a disk containing P with R on its boundary, the minimum bounding disk of P and R is unique. Therefore, we can conclude that the set of point does not affect the MBC algorithm and that Pon is the set that uniquely determines MBC{P). In fact, there are at most three points (p) in Pm such that MBC{P) is not equal to MBC(P - p); i.e.. MBC(P) is determined uniquely by at most three points in Pon. Using the previous observations, we propose a new technique to speed up the MBC computation algorithm by identifying all those points that may belong to Pin and compute MBC{P — P,„). Note that beforehand, given P. we cannot exactly determine P0 „ and Pin without actually computing MBC{P). Therefore, we propose an approximation algorithm to find Pin. Towards this end, given P, we first compute MBR(P) (in O(n)), and identify the largest diagonal of MBR[P) 90 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. (maxR ). Second, we compute a reduced (scaled down) M BR (RedM BR{P)) with the largest diagonal (RedR) equal to maxR reduced by a factor RF (i.e.. RedR = RF x maxR). Third, we consider the points inside RedMBR{P) to be Pin. Finally, we compute the MBC(P — Pin)- See Fig. 7.1 for a graphical representation of the algorithm. Our approximation algorithm to find Ptn is highly dependent on the reduction factor RF. That is. for some values of RF. Pm may contain some points that belong to Pon. Hence, we might end up finding an approximated MBC[P). For example, in Fig. 7.2(a) we show an example of a set of points (P ) to which we applied two different values of RF. RedMBRl contains two points (the black vertices) that should belong to Pon. therefore, the calculated M BC is an approximation of the original MBC. However. RedMBR2 does not contain the two black vertices, hence, the algorithm finds the exact MBC. Therefore, we need to find the optimal values of RF that would produce the exact MBC. Given P and MBC{P ), the largest bounding rectangle of the points in P could be the circumscribed rectangle of MBC(P) {CirM BR), and their smelliest bounding rectangle that could fit inside MBC{P) is the inscribed rectangle of M BC{P ) (InsM BR) (see Fig. 7.2(b) for further details). InsMBR can be considered as the largest (and hence optimal) M BR that approximates P,n, and the points inside InsMBR (s) is a subset of Pin (in Fig. 7.2(b), the stripped area represents s, and the gray area represents P{n — s). The smallest reduction factor 91 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. RarfMBRl > RMMBR2 MBR MBR EwtM BC a) Approximated and Exact MBCt Inscribed rccpagle (InsMBR) * * ^ ^ MBC 1 Ciicumscnbed rectangle (CirMBR) b) Circumrcribed and Inscribed MBRs of MBC Figure 7.2: MBC and its MBRs RF for which MBC{P) is always exact should satisfy the following relation: RF > 1 — £ = RF > 1 — RF > 1 — In general maxR > r (as shown in Fig. 7.3), however. MBR(P) < CirMBR. Hence, by constraining RF to be > 1 — we are guaranteeing that RedMBR is always a subset of InsMBR. For example, in Fig. 7.3 the points inside the gray area belong to InsMBR. However, to guarantee that we compute the exact MBC{P ), those points were not included inside RedMBR (approximation of Pin). We conducted two experiments to evaluate our proposed method over real and synthetic data. In the first experiment, we used a database of 100 real objects 92 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. (contours of fish images) with an average number of points in an object equal to 100. We varied the reduction factor RF from 2% to 98% with an increment of 2. Fig. 7.4(a) illustrates the results where the X-axis is percentage of reduc tion factor (RF), and the Y-axis is the percentage of reduction in the number of vertices and percentage of reduction in the execution time of the optimized MBC computation algorithm as compared to the original MBC algorithm. The percentage of reduction in the number of vertices measures the quality of our proposed algorithm in identifying the points of an object that will not contribute in computing MBC(P). That is, it computes The percentage of re duction in the execution time of MBC computation algorithm measures the time saved by not considering the points in RedMBR in the computation of its MBC. That is, ^ in pig - 4(a) we can conclude that our proposed algorithm reduces the execution time of MBC(P) sig nificantly (up to 90% reduction for RF = 4%). As the value of RF increases, the percentage of reduction in the number of vertices and hence in the execution time decreases. As a consequence, the maximum reduction in the execution time of MBC(P) for values of RF > optimal value of RF was 60%. However, we were able to find the exact M BC even for cases where RF < optimal value of RF (i.e., RF < 1 — ^-). The smallest value of RF without producing approximate MBCs was 4%. 93 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. In the second experiment, we used a database of 100 synthetic objects with an average number of points in an object equal to 135. The synthetic data were generated with more points inside Pin than the real data. We varied the reduction factor RF from 2% to 98% with an increment of 2. Fig. 7.4(b) illustrates the results where the X-axis is percentage of reduction factor {RF), and the Y- -axis is the percentage of reduction in the number of vertices and percentage of reduction in the execution time of M BC computation. From the results in Fig. 7.4(b), we can conclude that the optimized MBC computation algorithm performed marginally better than the case where we were using real data (about 5% increase in performance). This is due to the fact that the real data had fewer points inside InsMBR and hence smaller values of reduction in the number of vertices. The smallest value of RF without producing approximate M BC s was 12%. Our experimental results were consistent with our analytical observations. In all our experiments the proposed method reduced the execution time of the MBC computation algorithm. In addition, even for values of RF < 1 — we still sometimes compute the exact MBC. 7.2 Phase Values Trends of Fourier Transform For similarity search, a shape representation technique should be capable of sup porting different types of similarity search queries such as: 1) exact match, 2) exact match regardless (invariant) of size and orientation 3) exact match under 94 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. MBC MBC y InsMBR RedMBR MBR Vertex maxR Figure 7.3: maxR 1 0 0 2 I O U l l ) t n i O ) l « 1 4 i : B I too 1 4 1 2 « * 2 1 0 I I k M 4 2 » I IB %RF(NtaCMi factor) faRFdodacnoofaest) a) Real D ata t>) Synthetic D ata Figure 7.4: Performance Improvement 95 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. specified rotation angles, scaling factors, translation vectors, or any combination of the three. The support for query types under a specified size and/or orientation is essential in some application domains. With MBC-based approaches, a subset of the MBC features (i.e.. radius r, center C, and start point SP) is utilized to support match queries under a specified size and/or orientation (see [68] for further details). Our analytical studies in [67] showed that the algorithm to find similar objects in a database under a specified rotation angle incurred the highest cost (0(:V3)); where V is the number of vertices of an object. This is due to the fact that rotating objects would lead to different SPs, and hence resulting in various angle sequences (.45s). As a consequence, given a query object, we have to submit more queries to the database to find the candidate objects for match. To address this problem, we study the impact of using different starting points {SPs) on the phase values of the Fourier transform of a real sequence. Consider an A’-dimensional real sequence .V = (xo, The Discrete Fourier transform (DFT ) of .Y is the .V-dimensional complex sequence .Y = (x0, ... ,xjv_i) given by .Y = F(X ) where */ = y = 2_, x< exP( — ) ; / = 0,1 A - 1 (/.l) where j is the imaginary unit (j = \/ — 1) of a complex number. In general, a complex number a = at+j/3 can be defined as the set || a || (i.e., the magnitude 96 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. of a ) and La (i.e., the phase of a). In our discussion hereon, we assume that .V is even for simplicity, although our observations extend to the case of arbitrary N. It is well known that Fast Fourier Transform (FFT) can be used to calculate the DFT coefficients in 0(Ar log iV) arithmetic operations. Some fundamental properties of the DFT are: I) if we start with an iV-dimensional nonnegative real sequence X, then X is a complex sequence with the exception of x0. which y s -i i( is a nonnegative real number (xo = ‘) - . 2) the phase values for x0 and X [-f£ l are always equal to zero regardless of the real sequence, 3) x, and x,v_, are conjugate complex numbers for i = 1, 2,..., [y ], hence, || x* ||=|| x/v_, || (i.e., their magnitudes are equal), and Li{ = -Z ijv -i (i.e., the absolute value of their phases are equal). Fig. 7.5 shows the symmetry of the magnitude and phase values of the Fourier transform of a real sequence, and 4) when applying a linear shift to a periodic sequence (or a circular shift of a sequence), we observe the circular shift property of the DFT [46] as follows: -Y[m] = exp- ^ 2 ^"*” -Y[m] (for 0 < m < N — I); where || a ||= yjct + and arctan(^) i / c * > 0 La = i axctan(^) + n : if a < 0 and /3 > 0 (^*2) arctan(^) — tt : i f a < 0 and j3 < 0 97 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Original S m s of N valuat i mQ i ^ 4 /2 * 1 i» N ’* < o < < N .... | .... jV N - 3I vN ., v*„ F o u rw r Trm fenn o f (tw S w iM ia O i W F, | F, | t* | ... | ... | ... | ... | ... | ... | ... | .;. .... .... U , f; L*J M a g n itu d e d F o u ria r T ra ra fo m ia O Fil iJIIM iJf/2 i.N -l ... I*W , H t e l .... 1 ... GZ1 * r w i P h aaa o f F o u ria r T ra n a to im »<*) i * 0 ia N S -1 ia N /2 I a N - 1 ... | ... Hhwfl fcO c. 1-**, H W .... 1 . . . ! GZ1 A 1 Figure 7.5: Symmetry in Fourier Transform In this study, we investigate how to improve the response time of MBC-based methods for match queries under a specified rotation angle by utilizing the cir cular shift property of the Fourier transform of a real sequence. In addition, from our following analytical models, we will show that only one single phase value (second phase value of a sequence) is stored instead of all the phase val ues for different rotations/shiftings to enhance the query response time of match queries under a specified rotation angle. To this end. we study the impact of using different starting points (i.e. rotating an object or shifting the angle se quence) on the second phase value of the discrete Fourier transform of a real sequence. If we consider an iV-dimensional real sequence X = (iq x/v-i), then the rotated (shifted) sequence of X is the A'-dimensional sequence X = (xn, . . . , x/v-2»% n- i,*o , • • -, in -i); where n is the number of rotations. From the circular shift property of DFT we can conclude that the magnitude values 98 permission of the copyright owner. Further reproduction prohibited without permission. of a Fourier transform does not change with different start points, and that the symmetry property of the phase values of the transformed sequence is still ob served. However, the phase values change depending on the number of rotations. Our study shows that by applying a transformation to the Fourier components with negative phase values we can observe a new trend in the phase values of the DFT of a sequence. Each Fourier component is a vector in complex plane, hence, if we replace the vectors with negative phase values with vectors with the same magnitude but in the opposite direction (same effect as adding a tt to the phase values) we observe the new trend. Fig. 7.6 shows the phase val ues of a Fourier transformation of a reed sequence for different number of ro tations/shifting (0 < number of rotations < N — 1) after adding it to the negative values. From Fig. 7.6 we observe that after y rotations of the original sequence, the phase values repeat, i.e., LX, = ZX^ + 1 i = 0 ,1,.... y — 1; where : is the number of times the original sequence (A") is rotated. To store the phase values of the Fourier transform of a real sequence of size N for different rotation values of 0,..., N — 1, a space of — ~ 2 2 * - would be required. However, using our observations about the symmetry of the phase values under rotation (for rotation values of 0,..., N — 1), only a space of N7~^xN is required (half the space). In addition, from our following analytical models, we will show that only one single phase value (second phase value of a sequence) is stored instead of all the 99 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Position i .i •Rotatnns 1 -0 I -NO-1 I -N O l-N/2-1 I-N O i-N-1 , 0 ^ ... n ... - P t M * - . Pl.N« ... ESSSii^ P e n s M M - ... ... ... ... ... m m m ... ^ K tN S i p B ... mm iM M fllE B E l ... ... ... iliipw* P tM * B B s i ... anss U m b r I ^ I ... ... ... M m K ■ ■ ■ ... i j L - ... ... | mm G Z [ ... ! 1 -1 ^•K N C a - Figure 7.6: Phase Trend with Rotation/Shifting phase values for different rotations/shiftings to enhance the query response time of match queries under a specified rotation angle. We define a function as follows: fa. ‘.j = ~ : liJk ~ L i\ ^ 0 LX fc - L x\ + n : if lxJ k — L x\ < 0 (7-3) for k, i.j = 1, _ _ .V; where Lxt lt and Zx* are the phase values of the kth com ponent of X after i — 1 and j — 1 rotations of the real sequence X, respectively. In Fig. 7.7 we show the value of the function Sk.ij for k = 2, j = 1,..., N, and i = 1, . . . , (y + 1). For i = (y + 1),..., N the values of 5k,i,j are the same as for i = 1,..., y but were not included in the table to save space. If we define 6 as follows: given two real sequences X I and X2 with the second phase values of their Fourier transforms ZXli and LX2i, then: 1 0 0 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. then, from Fig 7.7, we can conclude the following: if we have two similar real sequences X I and X2 (i.e., the Euclidean distance between the magnitude values of their Fourier transforms (X I and X2) is close to zero, then using the phase values LX 11 and iX2\ we can tell if X I and X2 are exactly the same or a rotated version of each other under a specific rotation value according to the following condition: • if S = 0 — > X I and X2 are exactly the same, or rotated clockwise y times • if 5 = n — > same real sequences but shifted to the left n times, or n + y where 1 < n < y — 1. To generalize our observations, if F l is the second Fourier coefficient of X, then second Fourier coefficient of X after k shifts can be computed as F l x ejM (see Fig. 7.8). 101 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Figure 7.7: Phase Difference Trend 0 * (2 jc/N) | • > ■ » » ! jF,I I |F.*«— « ^ F, j Figure 7.8: Trend in Second Phase Value Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Chapter 8 Performance Evaluation 8.1 Shape Description Techniques This section investigates how well our metrics can be used to distinguish and measure the effectiveness of different shape representation techniques as described in Chapter 6. We compare the performance of our proposed shape representation method (M BC -TPV AS ), with three more established boundary-based shape representation methods (i.e., FD, GB, and DT methods). 8.1.1 Experimental Setup To compare the performance of the alternate shape retrieval methods, we imple mented a prototype shape retrieval system in Java, on a SUN Ultra 60 workstation with 512MB of RAM (visit http://dimlab.usc.edu for an online demonstration). The user interface of the system is a window with three frames as shown in Fig.8.1. 103 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Figure 8.1: User interface The left frame displays the query object. The right upper frame shows the ob jects inside the database, and the right lower frame is where the user controls the system. This part allows the user to visually compare the shape signature of any object inside the database using the four alternative shape representation techniques (see Fig.8.2), and to run the tests. The shape database of the system consists of 351 fish and tool shapes provided to us by [24, 44]. Some examples of shapes inside the database are shown in Fig.8.3. In order to reduce the number of vertices used to represent the shapes while maintaining its general characteristics, we employed a three pass VRA algorithm. In each pass, we try to identify the straight lines on the boundary 104 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. - s b e w s o m b ! 2J'^<"Sa"ic ' ’ 3 S S ;a® f^ aaB .'< 5 n a 3iE g£9B K !B lS iisc -a a ^ a sa a ^ : » S ^ 3 S $ s 3 S K iA is ^ s a a s B ^ j l^ & stsiasasiis ISEii::3SSaiB® isa^ ^ 'isassiii^ I S E f f - ^ B f t a e i , m <T'. ' ’• . ■'.1 f r-i V > 3T1 «r>1 r j L a i fcs. Wi-j i-jr .'* —4 ii/. -•-! * • s a r ^ f . a s . ^ s } |2ia&££S3gif*I (b): Modified Delaunay Tri- angulation £g3S - 1 I @ B 1 ! ! I S (a): Original Object (d): Fourier Descriptors (e): MBC-TPVAS Figure 8.2: An Object and its 4 Shape Representations 105 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. of the shape and eliminate the extra points representing the line. Optimally, a straight line could be represented by its two end points. However, the edge detection algorithm that was used to generate the shape files introduced more than two points to represent a straight line. The extra points makes the straight line looks like a jagged line (like saw edge). For our experiments, boundary features (based on shape) are first extracted from the objects during population of the database. At query time, the user enters a query into the system and features are extracted from the query object. The query object is then compared with the database of objects on the basis of the closeness of the extracted features. For the experiments, fifteen shape queries were selected randomly from the database; where each query object has 10 similar (relevant) objects in the database. The ten similar objects’ variants were constructed as: three rotation variants, three rotation scaled up variants, three rotation scaled down variants, and one translated variant. Fig.8.4 shows a query object and its ten variants. For our experiments, we simply assume that each shape is relevant only to itself and to its ten variants, and use precision-recall curve to compare the performance of the several retrieval methods. Euclidean distance measures were used for the comparison between the shape representation of the query shapes and the shapes in the database. 106 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Figure 8.3: Examples of objects in the dataset Figure 8.4: A query object and its 3 variants 107 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 8.1.1.1 Grid-Based Method To measure the performance of the GB method, we had to decide on the size of grid cells and the length of the standardized major axis. It has been shown in [63] that the GB method has better performance when smaller grid cell sizes are used. This is due to the fact that smaller grid cell sizes allows the generation of more accurate binary numbers and hence the system performs better. On the down side, smaller grid cell sizes increases the storage requirements, and computation cost of similarity measure. The best grid cell size to achieve a good balance between performance, the storage requirements and the computation costs was found to be 12X12 pixels per grid cell. Therefore, for our experiments, we employed a grid cell size of 12X12 pixels and the length of the standardized major axis was fixed at 192 pixels. Note that the major axis was used as reference for scaling and rotation normalizations. To improve the efficiency of this method, another shape feature, called eccentricity [63], was used. Eccentricity of shape is the ratio of its major axis to the minor axis. Therefore, for two objects to be similar, their shape signatures and their eccentricities values should be similar. 8.1.1.2 Fourier Descriptors Method Using different number of Fourier coefficients to index a shape may effect the retrieval performance of the FD method. In [63] a study of the effect of indexing the shapes in the database using different number of Fourier coefficients was 108 permission of the copyright owner. Further reproduction prohibited without permission. performed. The conclusion was that the performance of the FD method does not change significantly when using 8,16,32, or 64 coefficients to index the shapes. This is due to the fact that the high frequency coefficients contain information about the fine details of the shape and not the global features of the shape. In a second study in [37], a number of types of shape signatures (e.g., curvature based, radius based, and boundary coordinates based) were tested. It was found that shape classification performances based on these different signatures do not differ significantly. Therefore, in our experiments, we used radius-based signature with 64 uniformly sampled (uniform angles) boundary points and thus 64 ordered radii are used as shape signature. In addition, in order to reduce storage requirements and computation costs only 8 low frequency coefficients for indexing and similarity measure of shapes was used in our experiments. To find the centroid of an object, we used Guibas-Stolfi [31] algorithm that computes the centroid based on the Delaunay triangulation of the object. 8.1.1.3 M B C -TP V A S Method For the same reasons explained for the FD method, only 8 low frequency coeffi cients for indexing and similarity measure of shapes was used in our experiments. To find the minimum bounding circles of the objects, we used an algorithm based on Seidel's Linear Programming algorithms [77]. 109 permission of the copyright owner. Further reproduction prohibited without permission. 8.1.1.4 Delaunay Triangulation Method In [71], an experiment was performed to measure the effect of using different angle resolutions (bin sizes) in the feature point histogram on the object shape discrimination. Various bin sizes were experimented and the conclusion was that the coarser the bin size of the feature point histogram is, the worse the overall effectiveness of shape matching becomes. The best bin size was found to be 1 0 degrees. In a second experiment, each shape was indexed by three feature point histograms: the two largest angle histogram, the two smallest angle histogram and three angle histogram, built respectively by counting the two largest angles, the two smallest angles, and all the three angles of each individual triangle in the resulting Delaunay triangulation of its feature point set with bin size of 10 degrees. It was concluded that two largest angle histogram indexing shows the best ability of discriminating object shape in combination with the Euclidean distance as the similarity measure function. Therefore, for our experiments, we used two largest tingle histogram with bin size of 10 degrees. We used Guibas- Stolfi [31] algorithm to generate the Delaunay triangulation of the objects. 8.1.2 Experimental Results 8.1.2.1 Cost Table 8.1 provides cost analysis for the different methods and compares their efficiency in terms of computation and storage costs. From Table 8.1(b) and 110 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. (c), we can conclude that all of the methods have a comparable computation cost to compute the similarity between two shape signatures, however, some techniques (e.g., M BC -TPV AS) have much lower computation cost to generate the shape signatures of the objects. Table 8.1(a) shows that some method (e.g.. DT, and GB) have large storage requirement. In addition, sometimes the storage requirement of some methods (e.g., GB) may increase depending on the data set used. For example, with GB. the storage requirement increases if the objects have multiple major axes. Moreover, methods like GB and DT, may sometimes require some additional temporary storage to perform their algorithms. Table 8.1(c) and (a), shows that even though a method may have a large storage cost (e.g., GB). however, they may have low computation cost to compute the similarity between two shape signatures. 8.1.2.2 Accuracy In many applications, an important criterion for evaluating the efficacy of the shape retrieval methods is that for each query object the relevant items (simi lar shapes) in the database should be retrieved. Therefore, an experiment was designed to measure the effectiveness of the similarity retrieval of four different shape representation methods in terms of recall and precision that are commonly used in the information retrieval literature. Recall measures the ability of re trieving relevant shapes in a database and is defined as the ratio between the 111 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Table 8.1: Costs a) Storage cost (n objects) | GB DT FD TPVAS 2 * n * 55 + 8 * n and temp pxf 8 4 * n * nb and temp 3 * N 8 * n* fn 8 * n * fn b) Shape signature generation cost GB DT FD TPVAS MJ: 0{N'1), MN: 0(!V), NR: 0{N), IN: 0(N), and SG: 0(JV3) DT: 0{NlogN), and SG: 0(N) DT: 0{NlogN), FC:0(r2 ), and SG: 0(r) MBC: O(iV), and SG (DFT): 0{N) c) Similarity computation cost GB DT FD TPVAS 8 *55 bit xor, and 8 * 55 bit add nb int sub, nb int mult, and nb - 1 int add fn float sub, fn float mult, and fn - I float add fn float sub, fn float mult, and fn - 1 float add MJ: major axis, MN: minor axis, CN: centroid, NR: normalization, IN: inside function, FC: FD coefficients, SG: shape signature, int: integer, add: addition, sub: subtraction_______________________ 1 1 2 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. number of relevant shapes retrieved and the total number of relevant shapes in the database. While, precision measures the retrieval accuracy and is defined as the ratio between the number of relevant shapes retrieved and the number of total shapes retrieved. Given a query object, the system retrieves relevant shapes from the database, in decreasing order of similarity to the query shapes. First, the shape features of the query object using the four different methods are extracted. Second, the Euclidean distances between the shape signature of the query object and all other objects’ shape signatures are computed l. Third, the Euclidean distances are ordered in an ascending order for all the methods. Finally, the accuracy of the retrieval methods was calculated as precision-recall. Towards this end, we identify the ranks of the relevant objects to the query object inside the ordered list (according to Euclidean distance). The recall and precision results for 15 query shapes are averaged and shown in Fig.8.5. From Fig.8.5(a), it is observed that the FD method performs worse than the other three methods. This poor performance is explained by the fact that the shape signature is constructed using shape radii of points uniformly sampled along the object boundary. These points are not the exact vertices of the object, therefore, using different sampled points leads to different shape signatures. In other words, the rotation normalization is not truly achieved by taking only the magnitude information from the Fourier coefficients (F(u)s) and ignoring ^ h e retrieval can be done more efficiently using index structures, but since this is not the focus of this experiment w e assumed the sequential scan of the database 113 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. its phase information as explained in [40]. Fig.8.5(b). shows the recall-precision curves of the methods excluding FD method. From Fig.8.5(b). we make the following observations. First, that the accuracy of our proposed method (M BC- TPVAS) is comparable to the other methods. Second, unlike what was expected, the results obtained for the DT method were better than what was reported in [71]. This is due to the fact that in their approach, they reduce the number of vertices used to represent an object by identifying high-curvature points called corner points. On the other hand, in our experiments, we used the three pass algorithm discussed in Sec.8.1.1. In their experiments, the number of vertices used to represent an object was approximately 20-26 points, however, in our approach it was from 50-90 points. Although our approach used more vertices to represent the objects, however, the representation is more discriminative in shape signatures. We can conclude that the DT method performance highly depends on the technique used to find the representative vertices of the objects. In general, we can conclude that most of the methods can have good and comparable accuracy, however, the accuracy of some methods {e.g., FD) can be low. 8.1.2.3 Robustness to Noise To address the issues of robustness/stability of the alternative shape retrieval techniques in the presence of noise, we conducted experiments by introducing 114 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 97 96 99 u I 93 92 91 100 JU cali Uoll (a): Four methods (b): Three methods Figure 8.5: Recall-precision curves noise to ail the vertices of the query shapes and the shapes in the database according to Noise-M 1, and Noise-M2. For Noise-M2 we set c to 0.1 and 0.5. Noise-M2 introduces more noise to the shapes than Noise-Ml. In addition, by increasing the value of c the amount of the noise added by Noise-M2 increases. Example of a shape and how it is corrupted by introducing different types and values of noise to its vertices was shown in Fig. 6.1. Note that as the amount of noise increases, some boundary edges of the shape cross over each other. This cross over leads to different shape signatures of the same object. The recall and precision results for 25 randomly chosen query shapes are averaged and shown in Fig.8.6, where the X-axis is the recall and the Y-axis is the precision. Note that N 1, JV2, and JV 3 refer to: Noise-Ml, Noise-M2 with c = 0.1, and Noise- M2 with c = 0.5, respectively. Fig. 8.6(a) shows the performance of the four methods when no noise is introduced. Our results in Fig. 8.6(b) shows that, 115 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. even though some methods have comparable accuracies under normal conditions, however, they may have different accuracies under noise. For example. MBC- T P V A S and M-DT have comparable accuracies under normal conditions (see Fig.8.5(b)), however, M B C -TP V A S outperformed M-DT in the presence of noise. We can also conclude from Figs. 8.6 that, under lower values of noise some methods might outperform others. However, as the amount of noise introduced increases, their performance may degrade sharply and be outperformed by other methods. For example, in Figs. 8.6(a) and (b), the performance of GB method was shown to be lower than that of M-DT method. However, from Figs. 8.6(c) and (d), it is observed that GB performs better than M-DT when larger noise is added to the shape vertices. The larger noise is due to the use of Noise- M 2 instead of Noise-M 1. The fail in the performance of M-DT is due to the fact that the Delaunay triangulation algorithm is highly dependent on the corner points, and that the corner points are more sensitive to small changes and noise. However, GB is less dependent on the comer points and hence less sensitive to small changes and noise. Another example is shown in Fig. 8.7. Since in [57] we showed that the performance of M BC -TPVAS was comparable to that of M-DT when no noise was introduced to the data, we decided to compare the performance of only those two methods as the amount of noise introduced to the data increases. In Fig. 8.7 we demonstrate the recall and precision results for the M-DT and M B C -T P V A S methods; respectively; with no noise and when 116 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. noise is added. It is clear from Fig. 8.7 that as the amount of introduced noise increases, the performance of the methods decreases. However, the accuracy of M BC -TPV A S was better than that of M-DT as the amount of noise increased. Fig. 8.7(b) shows that M BC-TPVAS maintained a precision of 70% and higher while the precision of M-DT (see Fig. 8.7(a)) dropped to lower than 40%. Hence, this shows that M BC-TPVAS is not very sensitive to noise and perturbations on the shape vertices. This is due to the fact that the angle sequences (.4S) and touch points {TP) used by M BC-T PVAS capture the general characteristics of a shape which tire less sensitive and more robust to small changes and noise once transferred to the frequency domain using Fourier transformation. The minor fall in the performance of the M BC-TPV AS method is because of the addition of Noise-M2 to the shape vertices that may cause some crossover on the boundary edges of the shapes (see [4]), and hence changes the angle sequences when computing the shape signatures. The results also show that M-DT is very sensitive to noise and perturbations on the shape vertices. This is due to the fact that the Delaunay triangulation algorithm is highly dependent on the corner points, and that the comer points are more sensitive to small changes and noise. In general, Figs. 8.6 and 8.7 show that the accuracy of some methods stays good even as the amount of noise increases. For example, this behavior is observed when using M BC-T PVAS as the shape representation technique. This is due 117 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. - < » • • m b c ip v a s • n i. o s - ^ . M j 4 - a r -h » - n i_fo - * - m . h a c t fv a s iao 9 » a) M o noise .♦ - mja.ot ^ . nunsc- t fv a s 100 90 90 TO 60 i I so 40 30 20 10 0 c) Noise-M2 with c = 0.1 100 iH 10 30 30 40 SO 60 70 SO 90 100 b) Noise-Ml + . H 3 J 3 * -*-N 3J*-O T ^ ^ N J .P D -^-N3..MSC TPVAS 1 0 0 d) Noise-M2 with c = 0.5 Figure 8.6: Retrieval performance of all methods when Gaussian noise is intro duced to the fact that the angle sequences (.45) and touch points {TP) used by MBC- TP V A S we less sensitive and more robust to small changes and noise once transferred to the frequency domain using Fourier transformation. 118 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. - M i t t ---------N l.M -0 7 ..............NJ.H-OT N3.M-0T 1 0 0 40 — -M IC T F V A S ..MJMCTFVa S ™ . M J * * C TPVAS S3 .MSC TPVAS 100 10 20 30 4 0 » 60 70 00 90 100 B a c i D .Vf-DT with noise M B C -T P V A S with noise Figure 8.7: Retrieval performance of M-DT and M BC -TPV AS when Gaussian noise is introduced 8.1.2.4 Robustness to Boundary Points Selection Sometimes a shape representation technique may work well only in certain en vironments, and its performance may depend crucially on the edge detection algorithm used to identify its vertices and on the quality of the technique used to find the corner points. Therefore, in this set of experiments, we study the impact of using different polygonal approximations and corner points on the retrieval performance of the alternative shape representation techniques. Toward this end we study the impact of VRA parameters on the accuracy of the corner points detection. Note that some methods (e.g., GB) depend on the general characteristics of a shape and is not directly dependent on any explicitly distinguished points such as comers points. Therefore, VRA parameters would have no major impact on its 119 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. performance. On the other hand, other methods {e.g., FD, M-DT. and MBC- T P V AS) methods depend on the corner points to create their shape signatures. Since our previous experiments have shown that FD always performed worse than the other methods, and unlike what was expected, the results obtained for our modified DT {M-DT) were better than what was reported in [71]. Therefore, we decided to compare the impact of the corner points detection algorithm only on the performance of the DT and M BC -TPV AS methods. We conducted two experiments. First, we varied the value of Threshold-1 from 120 to 170 with an increment of 10, and for each value of Threshold-1 we varied the value of Threshold-2 from 0.1 to 0.6 with an increment of 0.1. Fig. 8.8(a) depicts the results where the X-axis is the values of Threshold-1, the Y-axis is the values of Threshold-2 and the Z-axis is the average percentage of reduction in the number of vertices over 250 shapes. As shown in Fig. 8.8(a), the percentage of reduc tion in the number of vertices of a shape increases as we increase the value of Threshold-1 and decrease the value of Threshold-2. The best reduction percent age was achieved with values of 170 and 0.1 for Threshold-l and Threshold-2, respectively. Second, we evaluated the impact of the number of boundary points on the performance of M-DT and M BC-T P V A S by fixing the best value of Threshold- 2 at 0.1 and varying the value of Threshold-1 from 130 to 170 with an increment of 20. Fig. 8.8(b) depicts the results where the X-axis is the recall values, 120 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Percentage reduction in number of vertices mm M ATH— U ■ n c m q . m . . .. * . . m e ip» «• > ;m®.. 100 Recall and precision of M-DT and MBC-TPVAS Figure 8.8: Impact of accuracy in corner point detection and the Y-axis is the precision values. From Fig. 8.8(b) we can see that in general the precision is better for smaller values of Threshold-1. Comparing this result with the results obtained from Fig. 8.8(a), we can conclude that as the value of Threshold-l increases (while fixing the value of Threshold-2) the percentage of reduction in the number of vertices of a shape decreases. However, the accuracy (i.e. precision) also reduces. In addition. Fig. 8.8(b) demonstrates that the reduction in precision of M BC-TPVAS is much lower than that of M-DT. The largest reduction of precision for M BC -TPV AS was 5% (occurred at 100% recall), while the largest reduction for M-DT was 20%. Hence, we can conclude that DT performance highly depends on the technique used to find the representative vertices of the objects. This is due to the fact that the DT uses Delaunay triangulation algorithm that is highly sensitive and dependent on the corner points. 121 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Using different parameter values for VRA algorithm leads to different sets of identified corner points, hence, different shape signatures. Fig. S.9 shows an ex ample of applying VRA to a fish shape using three different values for Threshold- 1 (130, 150, and 170) while fixing the value of Threshold-2 at 0.1. The reduction in the number of vertices of the shape for the three Threshold-1 values were 28.15%, 52.91%, and 69.90%, respectively. Although the reduction percentage was increasing as the value of Threshold-1 increased, the shape maintained its general characteristics except for the case where the value of Threshold-l was 130 (see Fig. 8.9(d)). Therefore, when applying VRA algorithm, the choice of values for the parameters is a comprise between the processing time, the required space to store the shapes, and the precision reduction the user can tolerate. 8.1.2.5 Support of Different Query Types A good shape representation technique should be capable of supporting several query types (i.e., similarity and spatial) using the same objects representation. In this section, we will analysis the different shape representations techniques and identify the different types of queries that they can support. With M BC-T PVAS, a subset of the M BC features (i.e., radius r, center C, and start point SP) could be utilized to support both l-R ST and S-RST query types (see [68] for further details). On the other hand, the the GB, FD. and DT methods are unable to support both I-RST and S-RST. With GB and FD, 122 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. a) Original object (206 vertices) c) One pass with 6 = 150 d = 0.1 (97 vertices) b) One pass with 6 = 170 d = 0.1 (148 vertices) d) One pass with 0 = 130 d s 0.1 (62 vertices) Figure 8.9: Example of applying 1 pass VRA algorithm Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. G B M-DTT - * t — FD - B — M BC-TPV A S 1 0 0 B s i a . 10 20 30 40 50 60 70 80 90 100 Recall Figure 8.10: Recall-precision curves normalization is used so that the objects fit into a prespecified mesh, or force the boundaries to have a standard size, and orientation, respectively. Therefore, they can support I-RST but not S-RST. DT representation provides no information about the size, and orientation of the original objects, and hence can also support I-RST but not S-RST. In general, the lack of support for S-RST query types is due to either the use of normalization, or lack of extracted features that could support such queries. Moreover, our study in [57], shows that M BC-T PVAS is the only method that has direct support for spatial queries (e.g., topological and direction queries). 124 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Table 8.2: Ten relevant shapes (numbered 1 to 10) with reference to five queries according to human perception Relevant shape / Query object Qi Q2 Q3 Q4 Q5 1 l 31 34 53 76 2 30 32 21 54 63 3 2 9 69 82 7 4 89 78 38 55 14 5 56 5 68 52 78 6 67 8 95 43 5 7 87 64 22 80 17 8 88 4 39 96 64 9 23 15 23 50 4 10 60 17 65 12 18 8.1.2.6 Impact of Human Perception To incorporate human perception in the evaluation of the effectiveness of the shape matching methods, we implemented a Web-based (Java) system with a shape database of 100 fish shapes. 25 users participated in the experiment, who selected the most 10 similar shapes to the 5 query shapes out of the 100 shapes in the database. To participate in the experiment, please visit http://dimlab.usc.edu. In order to compute the precision for different values of recall, the relevant shapes for each query should be identified. Towards this end, the ranking for the 100 shapes with reference to the 5 query shapes were computed, where for each query shape the ranking of a shape in the database was computed as the total number of users who selected the shape as similar to the query shape. Then the top 10 shapes with the largest ranks were considered to be perceptually similar to the respective query shape. The results obtained are presented in Table 8.2. 125 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. For each of the 5 query objects, vve obtained the positions for the 10 similar shapes (according to human perception) in the ordered response set (according to Euclidean distance) using all methods (i.e., FD, GB, DT. and MBC-TPV .45). The results obtained are reported in Table 8.3. Using the results in Table 8.3. vve computed the precision as a function of recall averaged over 5 queries for all methods as shown in Fig. 8.10. Fig. 8.10 shows that all the methods observed low precision and did not perform well. Consequently, good precision were obtained only for recall values < 30. The results also show that human perceptions on shape similarity are appreciably different. However, the set of similar shapes chosen by the 4 methods was always a subset of the 10 shapes chosen by humans (see example in Fig. S.11). In Fig. 8.11. we show an example of shapes similar to a query shape using both our method {MBC-TPX AS) and human ranking. We can conclude that the first 2-3 objects returned from the system is almost always the same as the ones picked by humans. We noticed that humans consider shapes to be similar if their general description is the same and people do not pay attention to some specific details. For example, for the query object shown in Fig. 8.11, humans considered all oval shapes as matches. On the other hand, the four methods consider shapes to be similar if they have the same general description and in addition they have some common specific details. Hence, for the same query example in Fig. 8.11. the methods considered oval shapes with small fins as matches. 126 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Table 8.3: Positions of the 10 relevant shapes with reference to 5 queries using all methods " s i r "TCP" D T -TT5— ' M B£- T P V A S S istiU r o b je c t $ 2 <13 $4 Q3 Q2 <13 < 4 « Q5 < 1 1 $ 2 <*3 Q4 < J5 Q i Q2 Q3 Q4 I 1 1 1 1 l 1 I t 1 1 1 I I I 1 i t I I t 2 2 16 2 4 4 4 4 3 4 5 2 5 2 2 13 10 9 3 11 9 3 l4 if™ 3 16 4 46 09 13 i4 10 3 43 6 5 15 27 13 6 14 10 4 25 51 10 2 0 9 39 15 14 14 14 4 32 15 11 16 66 30 13 19 11 5 34 59 16 4 V i4 44 35 44 15 16 13 41 16 16 25 91 31 15 32 16 6 4a 66 43 44 42 s4 36 40 16 44 i4 55 i f 23 60 94 34 2 2 40 20 7 38 76 26 33 23 59 46 41 16 45 16 70 16 35 67 95 40 28 58 26 a 44 66 37 47 27 62 49 63 34 70 29 72 26 36 74 96 52 30 64 31 9 s4 45” 44 44 44 63 74 69 4f 95 64 f4 Si 4f 9 * 99 55 31 65 39 10 82 93 52 f4 56 64 4f 90 54 49 62 66 S3 43 1 00 1 00 63 92 83 53 t H H f l Original object and its relevant objects according to our system f t u n Original object and its relevant objects according to human perception experiment Figure 8.11: Examples of relevant objects 127 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 8.1.3 Discussion From the previous experiments we can conclude the following (see Table S.4 for summarized results): S u p p o rt for S-RST queries With M BC -TVPAS method, a subset of the M BC features {e.g., r, C, and SP) could be utilized to support S-RST query types. On the other hand, the GB, FD, and DT methods are unable to support such query type. With the GB and FD methods, normaliza tion is used so that the objects fit into a prespecified mesh, or force the boundaries to have a standard size, and orientation, respectively. While DT method representation provides no information about the size, and orientation of the original objects. N orm alization To support SIM queries, it is important that the matching ob jects are invariant to scale, size, and orientation. For the GB and FD methods, the shape representations obtained for the same object with dif ferent orientation in space or with a different scale are different. Therefore, the normalization of the object boundaries prior to indexing is crucial to meet the uniqueness criteria of the shape descriptor. The DT and MBC- T P V A S methods use simple shape attributes such as the angles of the resulting Delaunay triangles of a set of points, minimum bounding circles and angle sequences. However, these attributes were shown to be transla tion, rotation, and scale invariant. Therefore, their similarity measures are 128 permission of the copyright owner. Further reproduction prohibited without permission. independent of object's position, scale, and rotation (i.e. objects does not have to be normalized). Different shape signatures per object GB method performs rotation nor malization by rotating the original object until its major axis is parallel with the x-axis. The object could be rotated either clockwise or counter clockwise. Hence, two or different shape signatures are maintained for each object. Furthermore, an object may have multiple major axes. Therefore, two more shape signatures should be maintained for the object for each additional major axis. With FD method, a shape signature is constructed using shape radii of points uniformly sampled along the object boundary. These points are not the exact coordinates of the object vertices, therefore, using different sampled points leads to different shape signatures. Size of shape signature With the GB method, there is a tradeoff between the number of grid cells and the time required to create object’ s signature similarity computation time during retrieval. The smaller the cells the greater the accuracy with which the shapes can be indexed but the signature generating and the similarity measure will be computationally expensive. In addition, depending on the minor axis, the binary number obtained for each shape might be of different lengths. Consequently, would be more difficult to index using spatial indices that require fixed dimension. 129 permission of the copyright owner. Further reproduction prohibited without permission. Shape p resentation inaccuracy For the GB method, the binary numbers ob tained for shapes when using a grid of fixed cell size becomes increasingly inaccurate for shapes with larger eccentricities. A proposed solution in [63] is the use of an adaptive grid size which will vary the grid layout in a man ner that the shape is most effectively indexed while generating a binary number of fixed length. A draw back is that it is no longer possible to cluster (classify) objects according to their eccentricities. Choice of p aram eters With GB method, both the shape and the grid size af fect the derivation of the binary number. Hence, an optimum standardized major axis size, and the number of pixels inside a grid should be selected carefully. For the DT method, choosing a histogram with a small number of bins provides less discriminating ability. The coarser the bin size of the feature point histogram is, the worse the overall effectiveness of the shape matching becomes. Therefore, the size and the number of histogram bins should be selected carefully. In addition, the choice of the angle selection criterion influences the ability of object shape discrimination. Moreover, the methods performance depends on the shape representation scheme, which depends on the quality of the technique used to find the corner points (high-curvature points). 130 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Table 8.4: Comparison Criteria GB DT FD TPVAS Storage Cost High (worse for multi ple major axis) Average Low Low Temporary Storage Yes Yes Yes No Computation Cost Signa High Average Average Low ture generation Computation Cost Low Average Average Average Similarity Robustness to Noise Average Low Average High Robustness to Number of High Average Average High Boundary Points Support for I-RST Yes (with Yes Yes (with Yes normalizati<m ) normalizati<> n ) Support for S-RST No No No Yes Support for Spatial No No No Yes Queries 131 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 8.2 Index Structures We conducted three sets of experiments to evaluate the performance of the pro posed shape-retrieval index structures. For the first two sets we focused on I-RST query type. This is because EM and S-RST queries are special cases of I-RST query type, where the final results of a I-RST query is the superset of the objects retrieved by submitting the corresponding EM or S-RST queries. Therefore, if our indexing techniques perform well for I-RST queries, they will perform well for EM and S-RST queries as well. With the first set of experiments we in vestigated the impact of changing the number of vertices of the objects on the performance of the proposed index structures. The second set of experiments was conducted to see how our methods scales up as the database size increases. Finally, with the third set of experiments, we focus on the SIM query type to investigate the sensitivity of our similarity to 7 and 0 parameters. 8.2.1 Experimental Setup The original database consists of 99 objects provided to us by [24]. These objects were created by scanning high-contrast shape images and by using line drawings created by hand with a drawing package. To increase the database size for dif ferent experiments we changed the size and the orientation of the objects as well as creating new objects by randomly altering the vertices of the original data objects. We made sure that the new objects are still simple. 132 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. We implemented our simulations in C++ and ran the performance compar isons on Sun Sparc workstation with 32 MB of main memory. We fixed the number of Fourier coefficients at 3 (i.e., f c = 3) resulting in Ft"-trees of 6 di mensions. At the final filtering step where we compare two polygon objects, we used Euclidean distance with e as the measure of similarity. For EM and f-R ST queries e should be equal to zero. However, to avoid numerical errors due to incorrect representations of objects we fixed t at 0.1 for all the experiments. To compare the performance of our techniques, we used two measures: I/O cost and CPU cost. The methods to compute these costs per indexing technique are described in Appendix A.2. 8.2.2 Experimental Results With the first set of experiments, we increased the size of the database to 2100 objects. We generated 21 different groups of objects where each group consists of 100 objects with the same number vertices. We varied the number of vertices from 7 to 27 where the objects in the first group had 7 vertices and the last group 27. We submitted a total of 2100 I-R ST queries; 100 queries per group where each query is an S-R ST query for one of the objects in that group. We measured the I/O and CPU costs to serve each query and averaged them out within each group. 133 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Fig. 8.12 demonstrates the results where the X-axis is the number of vertices of 100 objects within a group. In Fig. 8.12(a), the Y-axis is the CPU cost. Since all the three index structures outperformed iNaive with a very wide margin, in Fig. 8.12(a) their performance curves are not distinguishable. Therefore, in Fig. 8.12(b), we reported the same result, but we removed INaive from the graph. Comparing Fig. 8.12(a) and 8.12(b), the CPU cost of INaive was in the order of 101 3 while for the other methods it was decreased to the order of 104 (a 109 improvement in CPU cost). I t p v a s and I t p a s outperformed I v a s by an average of 75% (see Fig. 8.12(b)). At the first glance this seems counter-intuitive because V A S of an object is the superset of its T PASs and hence one expect to see more false hits for an index based on TPA Ss. However, note that I v a s is based on the first three coefficients of the fourier transform of V A S and not on the .45s themselves. Second, the reason that I t p v a s resulted in less false hits as compared to I v a s is because of utilizing the hash tables on titp as the extra filter. An interesting observation is that as the number of vertices increases the degradation in I v a s performance is higher than that of I t p v a s and I t p a s • This is because the total summation of the angles in I v a s is fixed at 2 * rr. With higher number of vertices, 2 * ir gets divided into smaller angles. Consequently, this results in more objects with identical V A S s and by retaining only the first few coefficients of the fourier transform it increases the number of false-hits with I v a s - 134 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Fig. 8.12(c) concludes the first set of experiments by reporting on the per centage of improvement in the I/O cost as compared to INaive as the number of the vertices for each group of objects increases. The I t p v a s index structure had the best I/O cost improvement followed by I t p a s and I v a s • Both I t p v a s and I t p a s outperformed INaive consistently by at least 40%. The performance of I v a s , on the other hand, degrades as we increase the number of vertices m due to both the increase in the number of false hits as explained before and the increase in the number of queries required to examine for rotation invariance. Recall that I v a s requires to do v queries by shifting angle sequences v times. With the second set of experiments, we fixed the number of vertices for all the objects in the database to 19. We varied the size of the database from 100 to 1000 objects (the X-axis of the graphs in Fig. 8.13). The number of l-R S T queries is 100 and they query for the 100 objects constitute the smallest database size. The results demonstrate identical trends to those of the first set of experiments (see Fig. 8.13). Note that at first glance it looks like that I v a s is not as sensitive to the change in the database size as compared to the change in the number of vertices when measuring I/O cost (see Fig. 8.13(c)). However, this is not true because the real reason that in Fig. 8.13(c) I v a s seems to have a better performance is due to the high sensitivity of INaive to the increase in the database size. That is, since the number of vertices was fixed in this set of experiments, INaive operates as if there is no index structure and hence its performance gets worse directly 135 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. (a): CPU cost of all four index itruc- (b): CPU co»t of I t p a s • I v a s • I t p v a s index structures rrrvu (c): Percentage of improvement in the I/O cost over INaive Figure 8.12: First set of experiments: fixing the database size and varying number of vertices Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. I (a): CPU cost of all four index struc- (b): CPU cost of I t p a s • I VAS • And Cures I t p v a s index structures (c): Percentage of improvement in the I/O cost over INaive Figure 8.13: Second set of experiments: fixing the number of vertices and varying the database size 137 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. proportional to the size of the database. Therefore, since the result in Fig. 8.13(c) is based on the INaive as its baseline, it seems as if I vas is improving. This was not the case in the first set of experiments when we were increasing the number of vertices. In sum, Jill three index structures outperformed INaive by a wide margin in both CPU and I/O costs. Furthermore, I t p v a s consistently performed better than I t p a s and I v a s • Note that the percentage of improvement in the I/O cost increases as the database size grows with I t p a s , I v a s • and I t p v a s index structures (see Fig. 8.13(c)). This shows that all our methods scale up as the size of the database increases. Some retrieval results for I-R ST queries are shown in Fig. 8.14. This figure shows the query object Oq, and the objects retrieved using I t p a s • I v a s - and I t p v a s index structures. All of the 3 index structures successfully retrieved the set of 5 objects that satisfied the I-R ST query (wrapped in boxes in Fig. 8.14). However, observe that the number of false hits is less with I t p v a s than that of I t p a s and I v a s • I v a s had the highest number of false hits. Note that the false hits from I t p a s are different from those of I v a s • With the third set of experiments, we focused on the S I M query type to study the impact of (3 and 7 on the distortion of an object. The objective of these experiments is to see how we can translate an error parameter provided by an application domain to the allowable variations in our Q and 7 parameters. 138 permission of the copyright owner. Further reproduction prohibited without permission. ! 7 i v (a): Query object (b): Objects retrieved with I t p v a s (5 object*) 1 ^ 1 (c): Objects retrieved with I t p a s (13 objects) (d): Objects retrieved with I v a s (16 objects) Figure 8.14: A visual example of a query 139 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. By choosing an object from the database we varied 3 and 7 to generate distorted objects. The Euclidean distance between the Fourier coefficients of the l'.45s of the original object and a distorted object is considered as the error. For our experiments, we assumed that a change of 90 degrees in 3 is considered as 100% change in the 3 value. We varied 3 from -50% to 50% with an increment of 4% and 7 from 5% to 100% with an increment of 5%. A negative change in 3 means than we rotate the vertex clockwise, and a positive change means a counterclockwise rotation. The results are reported in Fig. 8.15. Fig. 8.15(a) demonstrates the observed error when varying both 7 and 3- To report on the impacts, let us look at the less complex, two dimensional versions of this graph. Fig. 8.15(b) shows the observed error when varying 3 and fixing 7. Each curve represents a fixed value of 7. The results indicate that as 3 increases/decreases from 0, for the same value of 7, the error increases. This graph can be used in the following fashion. Suppose that the application domain specifies that two objects can be considered similar as long as the error is under 14%. Utilizing Fig. 8.15(b), we can guarantee such an error rate by (say) fixing 7 at 5% and allow 3 to vary from — 50% to 50%. Fig. 8.15(c) shows the observed error when varying 7 and fixing 3 • Each curve represents a fixed value of 3 • One expect that the larger the value of 7, the larger the error should be. however, Fig. 8.15(c) shows that this is not true. Observe that as we increase the value of 7 , for a fix /3, we see a roller coaster effect for the 140 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. I (a): Varying 8 and i (b): Varying 3 for fixed values of t (c): Varying ~ r for fixed values of 8 Figure 8.15: The impact of changing /? and 7 with SIM error. This is because as we rotate more vertices (i.e., increasing 7 ). the distorted objects are getting more similar to the original. That is in the worst case, if we rotate all the vertices, the distorted object will be identical to the original object. It is important to note that for I/O cost calculation our implementations ig nore the typical optimizations performed by real systems such as memory caching. The I/O cost could have been improved if we have taken caching into consider ation. This is because we would have not needed to access the disk if the nodes 141 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. of the R-trees were memory resident due to caching. However, since all the techniques would have benefited almost identically, we do not expect any major changes in the observations. 8.3 Optimization Techniques Originally, to find the M B C of an object we used a simple randomized algorithm that computes the smallest enclosing disk (circle) of a set of n points in the plane in expected O(n) (linear time) [77]. While the expected complexity of the algorithm is independent from the input distribution, in practical situations the algorithm sometimes does perform poorly. To address this problem, we proposed a technique to enhance the performance of M BC computation algorithm that relies on the fact that only a small subset S of the points of an object uniquely determines the M BC of the object. Hence, to speed up the M B C algorithm we first find the M B R of the points. Then, we apply a reduction factor to produce a smaller M B R . The points that do not belong to the smaller M B R are considered as the points that belong to 5. Finally, we compute M BC [S). To evaluate the performance of our optimized M B C computation algorithm we conducted two experiments over real and synthetic data. In the first exper iment, we used a database of 100 real objects (contours of fish images) with an average number of points in an object equal to 100. We varied the reduction factor R F from 2% to 98% with an increment of 2. Fig. 8.16(a) illustrates the 142 of the copyright owner. Further reproduction prohibited without permission. results where the X-axis is percentage of reduction factor (R F ). and the Y-axis is the percentage of reduction in the number of vertices and percentage of reduction in the execution time of the optimized M BC computation algorithm as compared to the original M B C algorithm. The percentage of reduction in the number of vertices measures the quality of our proposed algorithm in identifying the points of an object that will not contribute in computing M BC{P). That is. it computes p-RedMBR -pke percentage of reduction in the execution time of M BC computa tion algorithm measures the time saved by not considering the points in RedM BR in the computation of its M BC . That is, Ttme{ MBC[pY } ^ j^ j* ™ lzeiM .BC[D) _ From the results in Fig. 8.16(a) we can conclude that our proposed algorithm reduces the execution time of M BC(P) significantly (up to 90% reduction for RF = 4%). As the value of RF increases, the percentage of reduction in the number of vertices and hence in the execution time decreases. As a conse quence, the maximum reduction in the execution time of M BC{P) for values of RF > optimal value o f RF was 60%. However, we were able to find the exact M B C even for cases where RF < optimal value o f RF (i.e., RF < ^ ) . The smallest value of RF without producing approximate M BCs was 4%. In the second experiment, we used a database of 100 synthetic objects with an average number of points in an object equal to 135. The synthetic data were generated with more points inside Pm than the real data. We varied the reduction factor R F from 2% to 98% with an increment of 2. Fig. 8.16(b) illustrates the 143 permission of the copyright owner. Further reproduction prohibited without permission. 100 2 10 II » M 42 50 31 fli 74 12 10 n 100 2 10 11 X H Q 9 I «ft 74 13 • u W < nteM i tenor) W to —nnwfcmr) a) Real D ata b) Synthetic D ata Figure 8.16: Performance Improvement results where the X-axis is percentage of reduction factor {RF). and the Y- -axis is the percentage of reduction in the number of vertices and percentage of reduction in the execution time of M BC computation. From the results in Fig. 8.16(b), we can conclude that the optimized M B C computation algorithm performed marginally better than the case where we were using real data (about 5% increase in performance). This is due to the fact that the real data had fewer points inside In sM B R and hence smaller values of reduction in the number of vertices. The smallest value of RF without producing approximate M B C s was 12%. Our experimental results were consistent with our analytical observations. In all our experiments the proposed method reduced the execution time of the M B C computation algorithm. In addition, even for values of RF < we still sometimes compute the exact M BC. 144 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Chapter 9 Conclusions and Future Work 9.1 Conclusions In this study, we showed the drawbacks of the categorization of the shape descrip tion techniques proposed in [43, 71, 72] and introduced a new shape description taxonomy. Furthermore, we added further techniques that were not described in [43, 72, 71] (e.g., turning angle, collinearity, ...etc.). We also presented a multi-step query processing method that efficiently sup ports the retrieval of 2D objects by shape. We proposed three index structures I t p a s • I v a s • a n d I t p v a s based on features that are extracted from the objects M BC . Those features are the center coordinate of the M B C , the radius of the M B C , touch points TP , starting point SP , touch point angle sequence T P AS, and vertex angle sequence V A S. Our index structures support similarity and exact match queries while guaranteeing no false drops and reducing the num ber of false hits. Our approach recognizes rotation, uniform scale and translation 145 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. invariance in the query objects by using the subset of the extracted features. Fur ther optimization and final elimination of false hits are achieved by using efficient comparison algorithms that are based on our identified features. Our simulation results indicate that while all three index structures outperformed INaive by a wide margin, I t p v a s is the superior index structure considering both I/O and CPU costs. To study the usefulness of our metrics in evaluating shape retrieval methods, we conducted a set of experiments using four different shape representation tech niques (i.e., Fourier descriptors (FZ?), grid based {GB), Delaunay triangulation (DT), and MBC-based methods). To this end, we implemented a prototype shape retrieval system in Java and our results showed the effectiveness of our metrics in distinguishing among different shape representation techniques. First, we measured the effectiveness of the similarity retrieval of the methods in terms of recall and precision that are commonly used in the information retrieved liter ature. The recall and precision results were shown in Fig.8.5. From the figure we conclude that the similarity retrieval accuracy of our method [M B C -TV P A S) was comparable to the other methods. Second, the size of databases is growing, therefore it is vital that the shape representation be capable of representing the shapes with minimal storage requirement for their index, and minimal computa tion time. Using the storage and computation cost metrics, our results showed that all of the methods may have a comparable computation cost to compute the 146 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. similarity between two shape signatures, however, some techniques (e.g.. M BC- T P V A S) have much lower computation cost to generate the shape signatures of the objects. On the other hand, other techniques [e.g. DT and FD) incurred higher costs due to the use of complex algorithms (i.e., Delaunay triangulation). Third, to study the effect of noise on the performance of the different techniques, we introduced noise to the shapes in the database and to the query objects us ing two different alternatives (N oise-M l, Noise-M2). The two differs in the amount and type of noise they introduced to the shapes. When using accuracy and sensitivity to noise metrics, our experiments showed that some methods have better accuracy than others in the presence of noise. For example, the results showed that M B C -T P V A S is not very sensitive to noise and perturbations on the shape vertices, and that it maintained a precision of 70% and higher (at least 30% higher than other methods). This is due to the fact that the angle sequences (A?) and touch points {TP) used by M B C -T P V A S are less sensitive and more robust to small changes and noise once transferred to the frequency domain using Fourier transformation. In addition, our experiments showed that, even though some methods (e.g., FD) have very low accuracy, however, they are robust in the presence of noise and have low storage requirement. Fourth, to study the impact of the number of boundary points used to define a shape, we investigated the impact of a parametric algorithm (V R A ) that identifies various sets of distin guishable vertices of a shape and at the same time strives to reduce the number 147 permission of the copyright owner. Further reproduction prohibited without permission. of its vertices using two heuristics. Our results showed that, when using the sensitivity to boundary points metric, we can distinguish the techniques that are less sensitive than others to the number of vertices used to represent a shape. For example, M -DT method was sensitive to the number of points used to represent a shape. This is due to the fact that it employs Delaunay triangulation algo rithm that is highly dependent on the number of vertices. However. GB was less dependent on the number of vertices and hence less sensitive to small changes. Moreover, M B C -T P V A S was also less sensitive to the number of boundary points, but at the same time it had a very low reduction in its precision than the other methods using different parameters for VRA. Fifth, we analyzed the capability of the different shape representations techniques to support different types of queries. Our results showed that only one method (i.e., M B C -TP V A S) has direct support for S-R ST query type using the same objects representation. With M BC -T P V A S, a subset of the M BC features (i.e., radius r, center C, and start point SP) could be utilized to support both [-RST and S-R ST query types. On the other hand, the G B , FD , and DT methods are unable to support both I-R ST and S-R ST . This is due to the use of normalization or that the methods provide no information about the size, and orientation of the original objects. Moreover, M BC -T P V A S is the only method that has direct support for spatial queries (e.g., topological and direction queries). Finally, the human perception experiments showed that human perceptions on shape similarity are 148 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. appreciably different, and that all the methods performed badly. However, good precision could be obtained for recall values < 30. We noticed that humans consider shapes to be similar if their general descriptions are the same or if they have similar parts, and people do not pay attention to some specific details. Furthermore, we proposed two optimization techniques to further improve the performance of our methods in several aspects. First, our experiments showed that the algorithm to find the minimum bounding circle sometimes does perform poorly, despite the fact that it has an expected complexity of 0 (n) (linear time). To address this problem, we proposed a technique to enhance the performance of the M B C computation algorithm. Our analysis showed that only a small subset S of the points of an object uniquely determines the M B C of the object. To identify the points in 5, we first compute the M B R of the object. Then, we identify a smaller enclosed M B R (RedM BR) with a specified reduction factor RF. Finally, 5 can be determined by removing all the points that are inside the RedM BR and apply M BC algorithm to 5. We evaluated our new algorithm over real and synthetic data. The results showed that our proposed algorithm reduces the execution time of M BC computation algorithm significantly (up to %90 reduction). Moreover, we were able to find the exact M B C even for cases where RF < optimal value o f RF (i.e., RF < ^-). Second, our analytical studies in A showed that the algorithm to find similar objects in a database under specified rotation angles incurred the highest cost 0 (N 3); where N is the 149 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. number of vertices of an object. This is due to the fact that, using different S P (due to the rotation of the object) generates different angle sequences (.45). As a consequence, given a query object, we have to submit more queries to the database to find the candidate objects for match. Each query differs in its SP, and hence differs in its phase values but not the magnitude values. Therefore, in this paper we proposed a new technique to improve MBC-based support for match queries under specified rotation angles by utilizing the phase values of the Fourier transform of a real sequence. Our studies showed that the magnitude values of a Fourier transform do not change with different start points. However, the phase values of the Fourier transform change depending on the number of rotations. In addition, we observed a symmetry property of the phase values of the transformed sequence that would reduce the space by storing only one single phase value (second phase value of a sequence) instead of all the phase values for different rotations/shiftings. Moreover, using a 6 function we can determine if two similar real sequences X I and X2 (i.e., the Euclidean distance between the magnitude values of their Fourier transforms is close to zero), are exactly the same or a rotated version of each other under a specific rotation value. Our optimized M B C computation algorithm and the trends in the phase val ues of the Fourier transform of real sequences could be adapted and extended to other frameworks and application domains. For example, in G IS systems, 150 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. M BC is sometimes used as an approximation for handling complex spatial ob jects to improve the performance of approximation-based query processing. Our optimized M B C computation algorithm can be used to speed up the process of generating object’s approximations. Another application domain could be pat tern matching, in which we try to find the occurrences of some pattern (P) in a sequence when also rotations of P are allowed. Using partial matching of the Fourier transform of the original sequence we can detect the occurrence of P in the sequence. In addition, using the phase value of the Fourier transform of the sequence we can determine if P is rotated/shifted as well as the exact number of shifts. Finally, we investigated how to support spatial queries (i.e. topological and direction queries) based on a subset of features extracted from the objects M BC. First, we focused on the support of topological relations as defined by the 9- intersection model. We proposed some filtering techniques based on special cases for M BC in order to reduce the number of false hits. Those cases depend on the topological relations between M B C s, such as kind of overlap relations or half-filled and fully-filled M BCs. Next, we proposed an extra filtering step to expedite direction relations between objects utilizing their MBCs based on cone-directions method. Moreover, we showed how the Sphere-tree could be used to store and manage M BCs and support spatial queries. 151 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. 9.2 Future Work We intend to extend this work in several directions. First, we plan to investigate how to handle objects with curved parts, holes, and open curves or lines. Second, we have noticed that humans consider shapes to be similar if their general descrip tions are the same or if they have similar parts, and people do not pay attention to some specific details. Therefore, we intend to extend this work to identify better features to be used for partial similarity match queries. Third, we plan to adapt and extend our optimized M B C computation algorithm and the trends in the phase values of the Fourier transform of real sequences to other frame works and application domains (e.g., G IS systems, pattern matching). Fourth, in our study, we focused on several metrics to evaluate the performance of differ ent shape representation techniques. Some technique may have good evaluation under certain metrics, but bad evaluation under other. Therefore, we intend to look at other metrics and measures to evaluate the techniques. Fifth, although we demonstrated that the techniques may support a limited types of queries, however, we need to investigate the support for other query types such as partied similarity and non uniform scaling. Sixth, we plan to study relationships be tween more than two objects. For example, define topological relations between three objects given that their M B C I M B S are overlapping. Seventh, we plan to design a topological-direction model for the specification of the spatio-temporal relationships among objects (e.g. objects in a video sequence). Finally, we want 152 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. to extend this work to support three dimensional objects. Our preliminary inves tigations show that analogous to M BC features for 2D objects, we can extract features from 3-D objects by using their minimum bounding spheres. 153 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Reference List [1] R. Agrawal, C. Faloutsos, and A. Swami Efficient Similarity Search In Se quence Databases FODO,1993. [2] R. Agrawal, K. Lin, H. Sawhney, and K. Shim Fast Similarity Search in the Presence of Noise, Seeding, and Translation in Time-Series Databases Proceedings of the 21st VLDB Conference Zurich, Switzerland, 1995. [3] H. Alt, Blomer J. Resemblance and Symmetries of Geometric Patterns Data Structures and Efficient Algorithms, in: LNCS, Vol. 594, pp. 1-24, Springer 1992. [4] G.N. Bebis, and G.M. Papadourakis Object recognition using invariant ob ject boundary representations and neural network models Pattern Recogni tion, Vol. 25, pp. 25-44, 1992. [5] R. Beckmann and H.P. Kriegel The R*-tree: An Efficient and Robust Ac cess Method for Points and Rectangles Proc. ACM SIGMOD Int. Conf. on Management of Data, Atlantic City, NJ, pp. 322-331, 1990 [ 6] S. Berchtold, D. Keim, and H.P. Kriegel The X-tree: An Index Structure for High-Dimensional Data Proceedings of the 22nd VLDB Conference Mumbai, India, 1996. [7] S. Berchtold, and H.P. Kriegel S3: Similarity Search in CAD Database Systems SIGMOD, 1997. [8] S. Berchtold, D. Keim. and H.P. Kriegel Using Extended Feature Objects for Partial Similarity retrieval VLDB,1997. [9] S. Berchtold, and D. Keim Section Coding; A Similarity Search Technique for the Car Manufacturing Industry ID AT, 1998. [10] T. Brinkhoff, H.P. Kriegel, and R. Schneider Comparison of Approxima tions of Complex Objects Used for Approximation-based Query Processing in Spatial Database Systems In the Proceedings of the 9th International Conference on Data Engineering, ICDE, 1993. 154 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. [11] P. Bruce Berra. F. Golshani, R. Mehrotra, and 0 . R. Sheng Guest Edi tors’ Introduction Multimedia Information Systems IEEE Transactions on Knowledge and data Engineering, Vol 5, No. 4, 1993. [12] A. Califano, and R. Mohan Multidimensional Indexing for Recognizing Vi sual Shapes IEEE Transactions on Pattern Analysis and Machine Intelli gence Vol. 16, NO. 4, April 1994. [13] C. Chung, S. Lee, S. Chun, D. Kim, and J. Lee Similarity Search for Mul tidimensional Data Sequences To appear in the Proceedings of the 16th In ternational Conference on Data Engineering (ICDE), San Diego, CA. USA. February 29 - March 3, 2000. [14] J.P. Eakins Retrieval of trade mark images by shape feature Proc. First In ternational Conference on Electronic Library and Visual Information System Research, de Montfort University, pp. 101-109, 1994. [ 1 5 ] J.P. Eakins , K. Sheilds and J.M. Boardman ARTISAN- a shape retrieval system based on boundary family indexing Storage and Retrieval for Image and Video Databases IV, (Sethi, I K and Jain, RC, eds), Proc SPIE 2670, p p . 1 7 - 2 8 . 1 9 9 6 . [16] M.J. Egenhofer Reasoning about Binary Topological Relations. In the Pro ceedings of the Second Symposium on the Design and Implementation of Large Spatial Databases, Springer-Verlag LNCS 1991. [17] M.J. Egenhofer On the Robustness of Qualitative Distance- and Direction- -Reasoning In the Proceedings of Auto-Carto 12, in Charlotte. North Car olina, pp. 301-310, 1995. [18] M.J. Egenhofer The Direction-Relation Matrix: A Represen tation for Direction Relations between Extended Spatial Objects http://www.spatial.maine.edu/max/max.html 1997. [19] C. Faloutsos, M. Ranganathan, and Y. Manolopoulos Fast Subsequence Matching in Time-Series Databases SIGMOD,1994. [20] A.U. Frank Qualitative Spatial Reasoning with Cardinal Directions Pro ceedings of the Seventh Austrian Conference on Artificial Intelligence, Wien, Springer, Berlin, pp. 157-167, 1991. [21] A.U. Frank Qualitative Spatial Reasoning about Distances and Directions in Geographic Space Journal of Visual Languages and Computing,3 pp. 343-371, 1992. 155 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. [22] C. Freksa Using Orientation Information for Qualitative Spatial Reason ing Appears in A.U. Frank. I. Campari, U. Formentini (eds.) Theories and Methods of Spatio-Temporal Reasoning in Geographic Space. LSCS 639. Springer- Verlag Berlin, 1992. [23] J. Gary, and R. Mehrotra Feature-Based Retrieval of Similar Shapes Inter national Conference on Data Engineering 1993. [24] J. Gary, and R. Mehrotra Similar-Shape Retrieval In Shape Data Manage ment IEEE, Computer September 1995. [25] S. Ghandeharizadeh Stream-Based Versus Structured Video Objects: Is sues, Solutions, and Challenges In S. Jajodia and V. Subrahmanian, eds. Multimedia DB Systems: Issues and Res. Direct., Springer-Verlag. 1995. [26] R.C. Gonzalez, and P. Wintz Digital Image Processing 2nd edition Addison- Wesley, Reading, Mass. 1987. [27] G.H. Granlund Fourier preprocessing for hand print character recognition IEEE Transactions on Computers, C-21, pp. 195-201, Feb. 1972. [28] D. Greene An Implementation and Performance Analysis of Spatial Data Access Methods In the Proceedings of the 5th International Conference on Data Engineering, ICDE, 1989. [29] W. Grosky, P. Neo, and R. Mehrotra A Pictorial Index Mechanism fir Model- Based Matching International Conference on Data Engineering, 1989. [30] W. Grosky, and R. Mehrotra Index-Based Object Recognition in Pictorial Data Management Computer Vision, Graphics, and Image Processing Vol. 52,p.416-436, 1990. [31] L. Guibas and J. Stolfi Primitives for the Manipulation of General Subdi visions and the Computation of Voronoi Diagrams ACM Transactions on Graphics, 4:74-123, April, 1986. [32] L. Guojun An approach to image retrieval based on shape Journal of Information Science, 23 (2), pp. 119-127, 1997. [33] A. Guttman R-trees: A Dynamic Index Structure for Spatial Searching Proc. ACM SIGMOD Int. Conf. on Management of Data, pp. 47-57, 1984. [34] R.H. Guting An Introduction to Spatial Database Systems Invited Contri bution to a Special Issue on Spatial Database Systems of the VLDB Journal, Vol. 3, No. 4, October 1994. 156 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. [35] Pitas, Ioannis Digital Image Processing Algorithms Prentice Hall. Engle wood Cliffs. N.J. 1993. [36] Jagadish H. V. A Retrieval Technique for Similarity Shapes Proc. ACM SIGMOD Int. Conf. on Management of Data, pp. 208-217, 1991. [37] H. Kauppinen, T. Seppanen, M. Pietikainen An experimental comparison of autoregressive and Fourier-based descriptors in 2D shape classification IEEE Transaction on Pattern Analysis and Machine Intelligence. 17(2):201- 207, 1995. [38] F. Korn, N. Sidiropoulos, C. Faloutsos, E. Siegel, and Z. Protopapas Fast Nearest Neighbor Search in Medical Image Databases Proc. 22nd VLDB Conference, pp.215-226, Mumbai, India, 1996. [39] C.S. Lin and C.L. Hwang New forms of shape invariants from elliptic Fourier descriptors Pattern Recognition, 20(5), pp. 535-545, 1987. [40] G. Lu, and A. Sajjanhar Region-based shape representation and similarity measure suitable for content-based image retrieval Multimedia Systems 7 . Springer-Verlag, pp. 165-174, 1999(2). [41] N. Megiddo Linear-Time Algorithms for Linear Programming in R3 and Related Problems SIAM Journal of Computation. 12. 108-116, 1984. [42] R. Mehrotra, and J.E. Gary Image retrieval using color and shape Second Asian Conference on Computer Vision , 5-8 December, Singapore. Springer, Berlin, ppII-529-II-533, 1995. [43] B.M. Mehtre, M.S. Kankanhalli, W.F. Lee Shape Measures for Content Based Image Retrieval: A Comparison Information Processing and Man agement, Vol.33, No.3, pp. 319-337, 1997. [44] F. Mokhtarian, S. Abbasi, and J. Kitter Efficient and Robust Retrieval by Shape Content through Curvature Scale Space Proceedings of International Workshop on Image Database and Multimedia Search, pp. 35-42, Amester- dam, Netherlands, 1996. [45] P.V. Oosterom, and E. Claassen Orientation Insensitive Indexing Methods for Geometric Objects International Symposium on Spatial Data Han dling, Zurich, Switzerland p.1016-1029, 1990. [46] A. V. Oppenheim and R.W. Schafer Digital Signal Processing Prentice Hall, Englewood Cliffs, N.J., 1975. 157 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. [47] M. Otterman Approximate Matching with High Dimensionality R-trees M.Sc. scholarly paper, Dept, of Computer Science. Univ. of Maryland. Col lege Park, MD, 1992. [48] D. Papadias, and T. Sellis The Semantics of Relations in 2D Space Us ing Representative Points: Spatial Indexes In Frank, A.U.. Campari. I. (eds.) Proceedings of the European Conference on Spatial Information The ory, COSIT Springer Verlag, 1993. [49] D. Papadias, and Y. Theodoridis Spatial Relations, Minimum Bounding Rectangles, and Spatial Data Structures Technical Report, KDBSLAB-TR- 94-06, National Technical University of Athen, Greece, 1994. [50] D. Papadias, Y. Theodoridis, and T. Sellis The Retrieval of Direction Rela tions using R-trees In the Proceedings of the 5th International Conference on Databases and Expert Systems Applications, DEXA Springer Verlag, LNCS. 1994. [51] D. Papadias, Y. Theodoridis, T. Sellis, and M.J. Egenhofer Topological Re lations in the World of Minimum Bounding Rectangles: A study with R-trees Proceedings of ACM SIGMOD International Conference on Management of Data, 1995. [52] C.H. Papadimitriou, D. Suciu. and V. Vianu Topological Queries in Spatial Databases ACM PODS, Montreal Quebec, Canada, 1996. [53] D. Pequet, and Z. Ci-Xiang An Algorithm to Determine the Directional Relationship between Arbitrarily Shaped Polygons in the Plane Pattern Recognition, Vol. 20 , No. 1, pp. 65-74 [54] E. Persoon and K.S. Fu Shape discrimination using Fourier descriptors IEEE Transactions on Systems, Man and Cybernetics, 7, pp. 170-179, 1977. [55] C.W. Richard Jr. and H. Hemami Identification of three-dimensional ob jects using Fourier descriptors of the boundary curve IEEE Transactions on Systems, Man and Cybernetics, SMC-4, pp. 371-378, July 1974. [56] M. Safar, and C. Shahabi 2D Topological and Direction Relations in the World of Minimum Bounding Circles In the Proceedings of IEEE 1999 Inter national Database Engineering and Applications Symposium (IDEAS), pp. 239-247, Montreal, Canada, August 2-4, 1999. [57] M. Safar, Shahabi C., and Sun X. Image Retrieval By Shape: A Compar ative Study To appear in the Proc. of IEEE International Conference on Multimedia and Exposition (ICME), New York, U.S.A., July 30 - August 2, 2000. 158 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. [58j M. Safar, Shahabi C., and Tan C.H. Resiliency and Robustness of Alter native Shape-Based Image Retrieval Techniques To appear in the Proc. of IEEE 2000 International Database Engineering and Applications Symposium (IDEAS), Japan, 2000. [59] M. Safar, Shahabi C. A Framework To Evaluate The Effectiveness Of Shape Representation Techniques To appear in Journal of Applied Systems Studies, special issue on “ Distributed Multimedia Systems and Applications", 2000. [60] M. Safar, Shahabi C. Two Optimization Techniques to Improve the Perfor mance of MBC-based Shape Retrieval To appear in the Sixth International Workshop on Multimedia Information Systems, 2000. [61] A. Sajjanhar, G. Lu and J. Wright An experimental study of moment in variants and Fourier descriptors for shape based image retrieval Proceedings of the Second Australia Document Computing Symposium, Melbourne, Aus tralia, pp. 46-54, April 5 1997. [62] A. Sajjanhar and G. Lu Indexing 2D non-occluded shape for similarity retrieval SPIE Conference on Applications of Digital Image Processing XX, Proceedings, Vol. 3164, San Diego, USA, pp.188-197, 30 July -1 August 1997. [63] A. Sajjanhar, and G. Lu A Grid Baaed Shape Indexing and Retrieval Method Special issue of Australian Computer Journal on Multimedia Storage and Archiving Systems, Vol. 29, No.4, pp. 131-140, November 1997. [64] A. Sajjanhar, and G. Lu A Comparison of Techniques for Shape Retrieval International Conference on Computational Intelligence and Multimedia Ap plications, Monash University, Gippsland Campus, pp.854-859, 9-11 Feb. 1998. [65] H. Samet Spatial Data Structures Appears in Modem Database Systems: The Object Model, Interoperability, and Beyond, W. Kim, e.d., Addison Wesley/ACM Press pp. 361-385, 1995. [66] B. Scassellatie, S. Alexopoulos, and M. Flickner Retrieving images by 2D shape: A comparison of computation methods with human perceptual judg ments SPIE Conference on Storage and Retrieval for Image and Video Databases II, San Jose, CA, USA. SPIE Proceedings Vol. 2185, pp. 2-14, February 6-10, 1994. [67] C. Shahabi, M. Safar, and A. Hezhi Multiple Index Structures for Effi cient Retrieval of 2D Objects In the Proceeding of IEEE 19th International Conference on Data Engineering (ICDE), Sydney, Australia, March 23-26, 1999. 159 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. [68] C. Shahabi. M. Safar Efficient Retrieval and Spatial Querying of 2D Ob jects In the Proceedings of IEEE International Conference on Multimedia Computing and Systems (ICMCS), pp.611-617, June 7-11. Florence. Italy. 1999. [69] C. Shahabi, M. Safar, and X. Sun An Experimental Study of Alternative Shape-Based Image Retrieval Techniques Submitted to ACM Journal on Multimedia Systems, 2000. [70] ChangWhan Sul, KeeChang Lee, and Kwangyun Wohn Virtual Stage: A Location-Based Karoke System IEEE Multimedia, pp. 42-52, 1998. [71] Y. Tao, and W.I. Grosky Delaunay triangulation for image object indexing: a novel method for shape representation Proceedings of the Seventh SPIE Symposium on Storage and Retrieval for Image and Video Databases, San Jose, California, pp.631-642, January 1999. [72] Y. Tao, and W.I. Grosky Object-Based image retrieval using point feature maps Proceedings of the International Conference on Database Semantics (DS-8), Rotorua, New Zealand, pp. 59-73, January 1999. [73] Y. Theodoridis, D. Papadias, and E. Stefanakis Supporting Direction Rela tions in Spatial Database Systems Technical Report KDBSLAB-TR-95-02, National Technical university of Athens, Greece. 1995. [74] Y. Theodoridis, and T. Sellis On the Performance Analysis of Multi- -dimensional R-tree-based Data Structures Technical Report KDBSLAB- TR-95-03, National Technical university of Athens, Greece, 1995. [75] T. Wallace and P.A. Wintz Fourier Descriptors for Extraction of Shape Information Final Report of Research for the Period Nov. 1. 1975 - Oct. 31, 1976., Contract No. F 30602-75-C-0150. [76] T.P. Wallace, and P.A. Wintz An Efficient Three-Dimensional Aircraft Recognition Algorithm Using Normalized Fourier Descriptors Computer Graphics and Image Processing, 13, 99-126, 1980. [77] Emo Welzl Smallest Enclosing Disks (Balls and Ellipsoids) "New Re sults and new Trends in Computer Science” , Lecture Notes in Computer Science,555(359-370), 1991. [78] C. Yang, and T. Lozano-Perez Image Database Retrieval with Multiple- Instance Learning Techniques To appear in the Proceedings of the 16th In ternational Conference on Data Engineering (ICDE), San Diego, CA, USA, February 29 - March 3, 2000. 160 permission of the copyright owner. Further reproduction prohibited without permission. [79] Zhisheng You, and Anil K. Jain Performance Evaluation of Shape Matching via Chord Length Distribution Proc. of Computer Vision. Graphics, and Image Processing, Vol. 28, pp. 129-142, 1984. [80] K. Zimmennann, and C. Freksa Qualitative Spatial Reasoning Using Ori entation, Distance, and Path Knowledge IJCAI Workshop on Spatial and Temporal Reasoning, Chambery, August 1993. 161 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Appendix A Cost Analysis of Index Structures This appendix describes algorithm used to find the minimum bounding circle of an object and provides the cost analysis for our methods. A .l MBC Algorithm A minimum bounding circle of tiny finite set of points ;P ; in a 2D plane is the smallest enclosing circle. We could divide the set of points of P into two sets P;„ and Pon (touch points); where Ptn is the set of all points that axe contained by the M B C but are not on its boundary and Pon is the set of all points that contained by the M B C and tire on its boundary. To compute the M B C of an object we use a simple randomized algorithm which computes the smallest enclosing disk(circle) of a set of n points in the plane in expected 0(n) (linear time) based on Seidels linear programming algorithm, for detailed information about M B C algorithm see [77]. 162 permission of the copyright owner. Further reproduction prohibited without permission. In [77] a lemma states that if P and R are finite point sets in the plane. P nonempty. Then, if there exists a disk containing P with R on its boundary, then the minimum bounding disk of P and R is unique. P roposition A. 1.1: The angle between any two consecutive points in a sequence of points on the MBC of a polygon (e.g. any two consecutive vertices in the set SV l) is less than or equal to i t . Proof: Assume that we have two consecutive points a and b. where a is before 6 in the sequence of touch points of MBC'. Assume also that the angle between them is greater than n and less than 2n . Without loss of generality , we take the example in Fig.A.l-(a). There is no point of the polygon section I3 (connecting a and 6 ) that is on M B C '. Let C' be the center of MBC' and r' be its radius. If we move MBC' upwards until it touches a point or more on the polygon section Z 3 , we will end up with a new minimum bounding circle MBC" that encloses the same object with the same radius but different center C" . This implies that we have two different minimum bounding circles for the same set of points (see Fig.A.l-(b)). This is a contradiction , since a minimum bounding circle of an set of points should be unique (according to lemma in [77]). Then our assumption that MBC' is the minimum bounding circle was incorrect. The second situation would be that the object has no points between a and 6 , then we could find a new minimum bounding circle MBCm which encloses the objects (see Fig.A.l-(c)) with a smaller radius r" and a different center, which 163 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. MBC MBC MBC . . _ . . . ,. . . (b): MBC' enclosing the (c): M BC" enclosing the M BC n *,n ° J *" 1 original object but with dif- original object but with dif ferent center ferent radius Figure A.l: Uniqueness of MBC also contradicts our assumption. The above two cases implies that if the angle between two points on a minimum bounding circle is greater than n , then we must have at least one point between them in the sequence that is on the minimum bounding circle of the object. Thus the angle between any two points between a and b is less than rr , since we are diving an angle between jt and less than 2tt between two intervals or more. I A .2 Index Cost Analysis This section provides the cost analysis for our methods. In [3] a computational '8 algorithm PC is given that tests two objects O' and 0 J for similarity in 0 (m‘ ); where m * = mJ. This complexity does not include testing for scaling-invariance nor similarity, it only tests if O' and 0 : would be similar under translation and 164 with permission of the copyright owner. Further reproduction prohibited without permission. rotation invariance. For our case, we have a reduced cost for testing for exact match between two polygons; since we get more information from the index. In computing the total cost for each technique, we consider two costs. The first is the I/O cost measured as the number of access to an index structure and the other cost would be the CPU cost measured as the number of CPU operations required to solve the problem. We also assume that the complexity of accessing the hash table is of 0(1). For computing the number of I/O operations assume that all objects take the same time to be retrieved from the disk. Let the total number of objects in a database equals to n and the total number of objects having the same number of vertices v equals to nv. * 1 Naive • COstfa^ jV g = Ohash— table T^vOpc • ^Vhere, Ohash— table is the total time required to search the hash table for the objects with the same number of vertices as the query object; 0 ( 1), plus the time required to retrieve those objects;0 (nv). Opc is the time required to compare a retrieved object with the 0 q; 0 (t> 8). • I t p a s • Let’s assume that t i j p a s determines the total number of objects in the database that have the same TPAS and the same number of vertices as the query Objects. CostrPAS = 0 group + Off-tree Search + riTpAsOpc-TPAS> where, OgroU p is the time required to find the objects with same t i t p and vertices as the query object using the hash tables. This cost would be of 0 (1). Off— tree Search is the total time required to search the index for the 165 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. objects with the same T P AS as 0 q: O ( t i t p a s )- plus the time required to retrieve those objects;0(nxp>ts)- O p c - t p a s would be 0(i?) for EM queries and 0{njp * u2) for RST queries. • I t p v a s • Suppose the total number of objects in the database that have the same V A S , the same n r p , and the same number of vertices as the query ob jects is TIJPVAS- CoStTPVAS = Oduster + O p — treeSearch+nTPVAsOpC-TPYAS- where, 0 gr,«,p is the time required to find the objects with same n j p as the the query object using the hash table; 0(1). O p> -treeSeareh is the total time required to search the index for the objects with the same V A S as 0 q; 0 ( t i t p v a s )- plus the time required to retrieve those objects; 0 (nxRv.4s)- O p c - t p v a s would be 0{v ) for EM queries and 0 (v 3) for RST queries. • I v a s • Suppose that the total number of objects in the database that have the same VAS , and the same number of vertices as the query objects equals to riVAS- C o s tv A S = O r * — treeSeare/i + V -V A s O p C -V A S * where. O r * —treeSearch is the total time required to search the index for the objects with the same VAS as O’ ; 0 { u v a s )> plus the time required to retrieve those objects: 0 { n v A s ) - O p c - v a s would be 0(v) for EM queries, and 0 (u 3) for both RST and SIM queries. 166 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Appendix B Spatial Relations Using Minimum Bounding Rectangles This appendix describes the primitive topological and direction relation sets as defined in [50, 49, 73, 51, 21). We start by defining the primitive topological relations as defined by the 9-intersection model for objects represented by their MBR. Then we define the two topological relation sets mt 1 and mt2 as defined in [51]. Finally, we present a table that presents the relations that should be satisfied in order to propagate into intermediate nodes in a tree structure and a table that shows the empty results queries. B .l Topological Relations Using MBRs We first start by showing all the possible topological relations between MBRs as defined by the 9-intersection model. These relations are illustrated in Fig. B.2. 167 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. The corresponding topological relations for object approximated by their MBC are shown in Fig. B.2. disjoint(p.q) meec(p.q) overlap(p.q) covers(p.q) > m if p ~ i p q containi(p.q) covered i>y(p,q) iniide(p.q) equal(p.q) Figure B.l: Possible topological relations between MBRs © T D * 5 ) dUjoint(p.q) meet(p.q) overlap(p.q) covers(p.q) contain*(p,q) cove red-by(p,q) inside(p,q) equal(p.q) Figure B.2: Possible topological relations between M BC s Topological relation set m/1 consists of the relations disjoint and not-dis joint. This set is used if the only topological relation of interest is to check if two objects share some common points or not. A second set of topological relations is named m/2 [51]. This set consists of the topological relations described in Fig. B.2: disjoint, meet, overlap, covers, contains, coveredJby, inside, and equal. 168 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Table B .l: Relations for the interm ediate nodes H a l a t i o n b a t w a a n MBd% H a l a t i o n s b a t w a a n m t a r m a d i a t a n o d a P ( t h a t m a y a n e lo a a M B C pt) a n d r a f a r a n e a M BC « q u o i( p /. qt) •quaHP.qt) v covtr»{P,qt) V c o n < a m « ( P. c o n l a i n « ( p '. c o n ta i n * qt\ tnstd*(pt, qt) ov»rlapg(p,qt) v equal[P, qt) v tngtd*{P,qt) ctyvtrtlP.qt) v c ovred ^ yiP .q t) V c o n t a m j f P . qt) cov*rg(pt,qt) c o * « r * ( P , v c o n t a i n e r , cov*rid^y(pt, qt) 09*rl*p»iP,qt) v « 9 u a i( A 9 ') v covgrg(P.qt) cav€rgd*by(P,qt) v c o n ta i n * ( P . 0 ') dtgjo*nt(pt, qt) ov*rlap*(P,qt) v m « « t( P , qt) v covers(P,qt) c o n t s i n t f P . v dt»io%nt(P. qt) qt\ e o n c a m « ( P , 9 #) v e o v t r « ( P , 0 ') v m « « r ( P , 0 f) <*>*rl*p»ip.qt) o v « r t a p ( p ', 4 M e o n t a t n « ( P . 9 #) v covtre(P.qt) v o v e r ia p « ( P . qt) Table B.l presents the relations that may be satisfied between an intermediate node P and the qt of the reference object, so that the node be selected for propagation in the tree structure as in [51]. Table B.2, illustrates the relations between reference object and primary ob jects for which an empty result is returned without running the query as in [51]. When a query involving two reference objects ql and q2 is given, if the topo logical relation between the reference objects exists in Table B.2. the output of the query is empty. For the above query, in addition to meet , if ql and q2 are related by equal, contains, disjoint or coveredJyy, the result is also empty. Each entry at row ri(p,ql) and column rj(p,q2) (where ri and rj are relations of mt'l) is the composition of the relations ri(p,ql) and rj(p,q2) with respect to mt2. 169 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Table B.2: MBCs relations and em pty results queries <*(p.qai m(p.qftj l(p.q« eb(p.qS) et(p.qJ) ev(p.q3) o(p.qi) d(P.q») e v ct v cv m v • v i v cb v ct V C V V o • v ct V cv • v ct V C V at v « V » V cb v ct v cv V 0 at v • V 1 v cb v ct y cv v 0 e v ct V cv m(p,ql) « V 1 V cb l V ct d v e v i v cb v ct V cv v o d v m v • v ct V cv d v € v ct v cv m v « V l V v cb v ct v ev v o • v i v cb v ct v cv v 0 « v C t V cv «(p.qO m v C V 1 V cb v ct V C V V 0 d v • v i v cb v C t V C V V 0 d v m v i v cb y ct V cv v o d v at V • v cb v ct V cv V 0 d V m v « v i v ct v cv V 0 d v m v * v t v cb v cv v o d v m v • v i v cb v ct d v m v • v i v cb v ct v cv i(p.ql) e v i v cb d v m v « v t v cb d v m v c v i v cb V cv V 0 d v m d V at v « v i v cb v 0 d V at v e v i v cb v cv v 0 d v at v * v tv cbv cv d v m v c v t v cb cb(p,ql) • V 1 V cb d v e v i v cb d y m v t v i v cb v ct V 0 d v m v « V ct V cv d v m v I v ct i v m v « V 1 V cb v cv V O d v m v • v t V cb V O d v at v • V 1 V cb « (p ,q lj m v « v i v cb v ct V cv V 0 m v e v i v cb v ct V cv v o d V m v e v cb v ct v C V V 0 d v m v • v cb v ct V cv v o d v m v • v cb v ct V cv y o f V ct v cv c v ct v cv cv(p.ql) m v • v i V cb V ct V cv V 0 t V I V cb v ct V C V V 0 < 1 v m v « v i v C t V C V V 0 d v m v « v cb v ct V cv V 0 d v m v • v ct v C V V 0 • V 1 V eb » v ct e v ct v cv o(p.ql) e v i v cb C V 1 v cb d v m v t v i v cb v ct V cv d v m v « v ct V cv d v at v «v ctv cv c v » v cb e v t v cb W h e re d: d i j j o i n t a r m tc * . «: e q u a l, c o : c o v e rc d J b y , c t: c o n t a i n j , c v covert, a n d a . o v e r la p 170 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. B.2 Direction Relations Using MBRs This section describes two sets of direction relation dl and d'2 as defined in [50]. The set dl is the set of primitive direction relation that is constructed based on projection-based method. It contains nine primitive relations defined as follows: • Restricted-North{pi,qj) = X(pi) = X{qj) A Y(pi) > >'(<£,) • North-East{pi,qj) = X{pi) > X{qj) A Y{pi) > V‘(<7j) • North-West(pi,qj) = X(p,-) < X(qj) A Y(pt) > Y(qs) • Restricted-South(pi,qj) = X(p,) = X(qj) A Y(pi) < Y(qs) • South-East{pi,q:) = X(pi) > X(qj) A Y{pi) < K (9j) • South-West{pi,qj) = X{pi) < X(qj) A Y{pi) < Y{qj) • Restricted-East[pi,qj) = X(pi) > X(qj) A Y(pi) = Y(qj) • Restricted-West(pi,qj) = X(pi) < .Y(qj) A Y(p,) = Y(qj) • Same-Position(pi,qj) = X{pi) = X(qj) A Y{px) = Y{q3) where X and Y are functions that return the i and y coordinates of a point. The set d2 of directional relations of contains more general relations generated from disjunction of relations of set dl. The relations of set d2 were defined as follows: 171 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. • North(pi.qj) = Ncrrth-West(px.q: ) A Restricted-North^,. q^) A Xorth- East{pi,qj) • East(pi,qj) = North-East(pi,qj) A Restricted-East(pi.qj) A South- East(pi, qj) • South(pi,qj) = South-West(pi,qj) A Restricted-South{pi,qj) A South- East{pi,qj) • West(pi,qj) = North-West(pi,qj) A Restricted-West(pt, q:) A South- West{pi,qj) • Same-Level(pi,qj) = Restricted-West{px,q}) A Same-Position{pi,qj) A Restricted-East{pi,qj) • Same-Width(pi,qj) = Restricted-North{pi,qj) A Same-Position(pixq: ) A Restricted-South(pi,qj) Using the both sets dl and d2 of directional relations between points, the directional relationships between objects could be defined as follows: • Strong-North(p,q) = Vp, V g _ ,Narth (p,, ^ ) • Weak-North(p,q) = 3piVqjNorth(pi,qj) A Vp, 3qjNorth(pi,qj) A 3p* 3^ South(pi,qj) • Strong-Bounded-North(p,q) = V p < 'iq3North(p,,q:) A V p ,- SqjNorth- East(pi,qj) A V pi 3 q, North-West(pi,qj) 172 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. • Weak-Bounded-North{p,q) = 3p, 'iq:North(p,,q:i) A 3p, 3qjSouth{pt.qj) A Vp, 3 < ? j North-East(pi,qj) A Vp, 3 ^ North-West(pi, ) • Strong-North-East(p,q) = Vp, 'iq:North-East(pi,q:) • Weak-North-East(p,q) = 3pi'iqjNorth-East{pi,qJ) A 3p, 3<?jSouf/i(p,. (fc) A V p ,- 3 qjNorth-East(pi,qj) • Just-North[p,q) = Vpi Vqj(North(pi,qj) A Same-Level(p„qj)) U 3pi 3qjSame-Level(pi,qj) A 3p, 3qjNorth(pi,qj) • North(p,q) = 3pi'iqjNorth{pi,qj) A 'ipi 3q]North{pi,qj ) Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Appendix C Alternative Shape Description Techniques This appendix describes in brief four boundary based methods for shape repre sentation and retrieval: Fourier descriptors method (FD) [26, 35, 61], grid-based method (GB ) [40, 63], Delaunay triangulation method [DT) [72, 71], and our proposed MBC-TPVAS method [67, 68]. C .l Fourier Descriptors Method The FD method [27, 43, 63, 64, 40, 35, 61] obtains the object representation in the frequency domain as complex coefficients of the Fourier series expansion of the objects’ shape signature. The method starts by obtaining a feature function of the object called shape signature f{k)-, which could be curvature based, radius based, or boundary coordinates based. f(k) is also called the Fourier descriptors (FDs) of the boundary. In the next step, a discrete Fourier transform of the shape signature is obtained. The Fourier coefficients obtained are then used for 174 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. shape representation, as index, and for shape similarity calculation. The discrete Fourier transformation (DFT) of a shape signature f(k) is given by: F(u) = — £ f(k)exp(-j2iruk/N) u = 0, 1, . . . , N - 1 (C.l) j f c = Q Where N is the number of samples of f{k). Direct representation (e.g., radii) captures each individual detail of a shape, however, it is very sensitive to small changes and noise. As a consequence, a small change in the coordinates of the objects’ boundary points may lead to a very different shape signature, hence, very poor retrieval performance. On the other hand, Fourier transformation captures the general feature of a shape by converting the sensitive direct representation measures into frequency domain. As a result, the data is more robust to small changes and noise. Therefore, Fourier transformation is used as shape representation instead of the direct rep resentation (see [40] for further details). The FDs are variant to rotation, and scaling. Therefore, given the FD of an object, a normalization procedure is re quired to normalize the object such that its boundary has a standard size, and orientation. In addition, the FD normalization should preserve all of the shape information. A popular shape signature is the shape radii (or centroidal distance) which computes the distance between points uniformly sampled along the object boundary and its centroid (its center of mass). When shape radii are used, only the distances between points are recorded and not the exact coordinates of the 175 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. points. Thus, the shape signatures of the objects are translation invariant. Since the magnitude information of F(u) (i.e., |F(u)|) is invariant to rotation. Hence, rotation normalization is achieved taking only the magnitude information from F(u) and ignoring its phase information. Moreover, |F(0)| reflects the energy of the shape radii, thus |F (u )|/ |F(0)| will be scale invariant. Therefore, in or der to scale normalize the objects’ FDs, the magnitude of all F(u)s are divided by the magnitude of F (0). As a result of normalization a new feature vector, which is invariant to translation, rotation and scale, can be generated as follows: FN = [|F (l)|/|F (0 )||F (2 )|/|F (0 )|...|F (iV )|/|F (0 )|F [40], The difference between two objects is defined as the Euclidean distance be tween their corresponding feature vectors. Hence, the similarity measure of FD method is that two objects are similar in shape, if and only if the Euclidean distance between their feature vectors is less than a prespecified threshold. In other words, they have the same set of distances between their centroids and their sampled boundary points. An example is illustrated in Fig.C.l, where Fig.C.1(a) shows an object with its 8 sampling points and its centroid, and Fig.C.l(b) shows the radii distances and the Fourier descriptors f{k) of the boundary. 176 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. (a): An object with 8 sampling points f(k) = [ri J2X3J4 js.rex7js] (b): Fourier descriptor of the object Figure C.l: Fourier descriptors method C.2 Grid Based M ethod An alternative approach for shape representation is GB method [62,40,63,64,43j With this method, am object is first normalized for rotation and scale. Then, the object is mapped on a grid of fixed cell size. Subsequently, the grid is scanned and a 1 or 0 is assigned to the cells depending on whether the number of pixels in the cell which are inside the object are greater than or less than a predetermined threshold. Finally, a unique binary number is obtained as the shape representa tion by reading the l ’s and 0’s assigned to the cells from left to right and top to bottom. To improve the efficiency of this method, another shape feature, called eccentricity [63]. was used. Eccentricity of shape is the ratio of the number of cells used in x-direction to the number of cells used in the y-direction to represent a shape. Therefore, for two objects to be similar, their shape signatures and their eccentricities values should be similar. 177 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. .ii.Lj„aiJ34-0-U4-U-LhQ . 1: 1: Is I slTl : 1:1 :1 j t l:Js H U J H : IjTf 1 rn *71T '1; t'T iT °- r° oto! lt r tr lo to to T o (»): Object-1 (b): Object-2 Figure C.2: Grid based method - object mapping and representation The difference between two objects is the number of cells in the grids which are covered by one shape and not the other, which is the same as the sum of l ’s in the result of the exclusive OR of their binary numbers. Hence, the similarity measure of GB method is that two objects are similar in shape, if and only if the difference between their binary representations is less than a prespecified threshold, and they have similar eccentricities. An example is illustrated in Fig.C.2, where the objects are mapped on to a grid of fixed cell size in a manner such that the objects are justified to the top left corner (i.e.. assuming that the objects do not need to be normalized). The binary numbers obtained for the objects in Fig.C.2(a) and (b) are "110001110 111111111 111111111 111111110 111111100 001110000" and “000000110 000011100 001111100 111111100 111111110 011111111" respectively. Hence, the difference between the objects is 20. 178 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. X Minor Axis! Major Axis y Major Axis y (a): Original object (b): After rotation normalization Figure C.3: Grid based method - rotation normalization Binary number obtained for the same object with a different orientation in space or with a different scale will be different. Therefore, the normalization of the object boundaries prior to indexing is crucial to meet the uniqueness criteria of the binary number. C.2.0.1 Rotation Normalization Rotation changes the spatial relationships between the grid cells and the objects’ boundaries, which leads to different binary number representations for the same object. Therefore objects must be normalized for rotation. This is achieved by obtaining the major axis of the shape, which is the line joining the two points on the shape boundary farthest away from each other. Subsequently, the shape is rotated to make the major axis parallel to the x-axis. An example of rotation normalization of an object is shown in Fig.C.3, where in Fig.C.3(a) an object is shown prior to rotation normalization and Fig.C.3(b) shows the same object after being rotated so that the major axis becomes parallel to the x-axis. 179 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. C.2.0.2 Scale Normalization Both the grid and the object sizes affect the binary number derived for an object. Therefore objects must be normalized for scale. This is achieved by choosing a fixed length of the major axis, called the standardized major axis. Subsequently, scaling normalization is achieved by scaling along the major axis of the object such that its major axis becomes equal to the length of the standardized major axis. To maintain the perceptual similarity of the object, it is also scaled along the minor axis proportionally. The minor axis is perpendicular to the major axis and of such length that a rectangle with sides of major axis and minor axis defines the minimum bounding rectangle of the object. An example of scale normalization of an object is shown in Fig.C.4, where in Fig.C.4(a) and (b) two similar objects are shown prior to scale normalization while Fig.C.4(c) shows the same objects after being scaled along the x-axis and y-axis such that the length of the major axis becomes equal to the standardized major axis. C.3 Delaunay Triangulation M ethod This approach of shape representation is histogram-based [72. 71]. Given an object, corner points are used as the feature points of the object. Corner points are generally high-curvature points located along the crossings of an object’s edges or boundaries. Then a Delaunay triangulation of these feature points is 180 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. X X Major Axis1 y (a): Original object (b): A similar object (c): After scale normalization Figure C.4: Grid based method - scale normalization constructed. Consequently, a feature point histogram is obtained by discretiza tion of the angles produced by this triangulation into a set of bins and counting the number of times each discrete angle occurs in the triangulation. In building the feature point histogram, a selection criteria of which angles will contribute to the final feature point histogram is chosen. For example, the selection criteria could be counting the two largest angles, the two smallest angles, or all three angles of each individual Delaunay triangle. The difference between two objects is the Euclidean distance between the cor responding bins of the objects' feature point histograms. Hence, the similarity measure of DT method is that two objects are similar in shape, if and only if the euclidean distance between their feature point histograms is less than a prespec ified threshold. In other words, they have the same set of feature points. Thus, 181 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. (a): An object with 10 points (b): Delaunay triangulation Feature Point Histogram I 2 } » 5 * 2 I • 10 1112 D M 12 I t I? IS Bin nqfpfrrr (c): Feature point histogram Figure C.5: Delaunay triangulation method each pair of the corresponding Delaunay triangles in the two resulting Delaunay triangulations must be similar to each other. The angles of the resulting Delaunay triangles of a set of points is invariant under uniform translations, scaling, and rotations. Therefore, the similarity measure is independent of object’s position, scale, and rotation (i.e. objects do not have to be normalized). This approach also supports an incremental approach to image object matching, from coarse to fine, by varying the bin sizes. An example is illustrated in Fig.C.5. where Fig.C.o(a) shows an object that consist of 10 feature points (corner points). Fig.C.5(b) shows the resulting De launay triangulation. While Fig.C.5 shows the resulting feature point histogram built by counting ail three angles of each individual Delaunay triangle with bin size of 10 degrees. 182 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. C.4 MBC-TPVAS Method This approach. T P V A S . for shape representation was proposed by us in Chap ter 4. A major observation is that MBC features are unique per object. In addition, a subset of the MBC features {e.g.. TPAS. VAS. and TPs) are trans lation, scaling and rotation independent. This subset of features could be utilized to support SIMand RSTquery types. We use object’s SP to check if it is ro tated, use object’s r to check if it is settled, and the vertex coordinates of the object’s C to check if it is translated. With TPVAS method, the shape descriptor of an object depends on a subset of the six M BC features. The method starts by obtaining a feature function of the object called shape signature f{k). To obtain f{k), four steps are required. The minimum bounding circles of the objects are first found. Second, MBC features such as angle sequences (V'.AS) and number of touch points (TP ) are identified. Third, the objects’ shape signature is identified as the sequence combination of TP and VAS. Finally, as with the FD method, a unique object representation is obtained as the discrete Fourier series expansion of the objects’ shape signature. The Fourier coefficients obtained are used for shape representation, as index, and for shape similarity calculation. The discrete Fourier transformation (D FT ) of a shape signature f(k) is given by: F ( « ) = - L 2 / ( * ) « p ( - j 2 i r » * / A f ) “ = 0.1 .V - 1 (C.2) vA k=o 183 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. where N is the number of points in the polygon representation of an object. Although TPVAS method uses simple attributes such as minimum bound ing circles and angle sequences, these attributes were shown to be translation, rotation, and scale invariant in Chapter 4. Therefore, the similarity measure is independent of object's position, scale, and rotation (i.e. objects does not have to be normalized). The difference between two objects is the Euclidean distance between their corresponding feature vectors. Hence, the similarity measure of TPVAS is that two objects are similar in shape, if and only if the Euclidean distance between their feature vectors is less than a prespecified threshold. In other words, they have similar vertex angle sequences and number of touch points. An example is illustrated in Fig.C.6. Fig.C.6(a) shows an object with 9 ver tices with its minimum bounding circle, and touch points. Fig.C.6(b) shows the vertex angle sequence of the object and its shape descriptors f{k). 184 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. TP (a): An object with it* MBC, center C, radius r. TP's, and SP VAS =[9l.92.93.<p4.95,(p6.97,<p8,<p9] f(k) = [TP.9l.92,93.94.95.96,97.9 8 .9 9] (b): Vertex angle sequence V.4S and shape descriptor J[k) Figure C.6: MBC-TPVAS method 185 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. Appendix D Computation and Storage Cost Analysis For Alternative Shape Representation Techniques This appendix provides cost analysis for the different methods and compares their efficiency in terms of computation and storage requirements. D .l Grid Based M ethod For the GB method, we assume that: the grid cell size gnXgn. the standardized major axis size mj. total number of pixels of the grid px = m j2, number of coordinates of object N. and binary sequence size 5 5 = (mj/gn )2/S bytes. Then the following storage is required for the shape signatures: • 8 bytes to store the eccentricity of each shape (one real number). • 5 5 = ({mj/gn)2)/S bytes to store one binary sequence. 186 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. • 2 * n * 5 5 + S * n bytes to store n shape signatures (assuming at least 2 sequences per object). • A temporary storage of px/8 bytes per object. To compute the shape signature for the query object and computing the similarity between the query object and the objects in the database the following major operations are required : • To find major axis 0 (N 2) • To find minor axis O(N) • To rotate and scale O(N) • To check if a point is inside a polygon 0(N) • To generate a binary number we need to check ail the grid cells/ pixels to see if they are inside the shape 0(px * N). Usually y/px > JV , therefore 0(px * ;V) as 0{N 3). • For each similarity calculation we need: exclusive OR between the query binary sequence and the stored-shape binary sequence, and count the num ber of ones in the result. Hence, similarity calculation takes around 8 * 55 bits XOR operations and 8 * 5 5 bits additions. 187 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. D.2 Fourier Descriptors M ethod For the FD method, we assume that: number of radii equals to r. number of Fourier coefficients is /n , number of coordinates of an object .V. Then the following storage is required for the shape signatures: • To store one shape signature: 8 * fn bytes. • To store n shape signatures: 8 * n * fn bytes. To compute the shape signature for the query object and computing the similarity between the query object and the objects in the database the following major operations are required : • To find centroid O(NlogN) (we compute the Delaunay triangulation to this end). • To find all radii and to compute FD coefficients 0 ( r 2). • To generate shape signature O(r) (required for normalization step). • For each similarity calculation we need: fn real-number subtractions, fn real-number multiplications, fn — 1 real-number additions. D.3 Delaunay Triangulation M ethod For the DT method, we assume that: number of bins nb. and number of coordi nates of object N. Then the following storage is required for the shape signatures: 188 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. • To store one shape signature: 4 * nb bytes. • To store n shape signatures: 4 * n * nb bytes. • Temporary storage: 3 * A T (per object). To compute the shape signature for the query object and computing the similarity between the query object and the objects in the database the following major operations are required : • To compute the Delaunay triangulation of a shape: O(NlogN). • To generate shape signature: O(N) (required to find all angles). • For each similarity calculation we need: nb integer-number subtractions, nb integer-number multiplications, nb — 1 integer-number additions. D.4 MBC-TPVAS M ethod For the MBC-TPVAS method, we assume that: number of Fourier coefficients f n , and number of coordinates of an object N. Then the following storage is required for the shape signatures: • To store number of touch points 1 byte. • To store one shape signature : 8 * fn bytes. • To store n objects: 8 * n * fn bytes. 189 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission. To compute the shape signature for the query object and computing the similarity between the query object and the objects in the database the following major operations are required : • To find MBC 0{N). • To compute angle sequence and find all DFT coefficients of an angle se quence 0{N). • For each similarity calculation we need: fn real-number subtractions, fn real-number multiplications, fn — 1 real-number additions. 190 Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.
Linked assets
University of Southern California Dissertations and Theses
Conceptually similar
PDF
Content -based video analysis, indexing and representation using multimodal information
PDF
Architectural support for efficient utilization of interconnection network resources
PDF
An adaptive soft classification model: Content-based similarity queries and beyond
PDF
Intelligent image content analysis: Tools, techniques and applications
PDF
Cost -sensitive cache replacement algorithms
PDF
An integrated environment for modeling, experimental databases and data mining in neuroscience
PDF
A syntax-based statistical translation model
PDF
An adaptive temperament -based information filtering method for user -customized selection and presentation of online communication
PDF
Energy and time efficient designs for digital signal processing kernels on FPGAs
PDF
Automatically and accurately conflating road vector data, street maps and orthoimagery
PDF
Concept, topic, and pattern discovery using clustering
PDF
Color processing and rate control for storage and transmission of digital image and video
PDF
Intelligent systems for video analysis and access over the Internet
PDF
Enabling clinically based knowledge discovery in pharmacy claims data: An application in bioinformatics
PDF
A unified mapping framework for heterogeneous computing systems and computational grids
PDF
Efficient PIM (Processor-In-Memory) architectures for data -intensive applications
PDF
An implicit-based haptic rendering technique
PDF
Building queryable datasets from ungrammatical and unstructured sources
PDF
Contributions to content -based image retrieval
PDF
Functional testing of constrained and unconstrained memory using march tests
Asset Metadata
Creator
Safar, Maytham Hassan (author)
Core Title
Efficient minimum bounding circle-based shape retrieval and spatial querying
Contributor
Digitized by ProQuest
(provenance)
School
Graduate School
Degree
Doctor of Philosophy
Degree Program
Computer Science
Publisher
University of Southern California
(original),
University of Southern California. Libraries
(digital)
Tag
Computer Science,OAI-PMH Harvest
Language
English
Advisor
Shahabi, Cyrus (
committee chair
), [illegible] (
committee member
), Sawchuk, Alexander (
committee member
)
Permanent Link (DOI)
https://doi.org/10.25549/usctheses-c16-134282
Unique identifier
UC11334661
Identifier
3041515.pdf (filename),usctheses-c16-134282 (legacy record id)
Legacy Identifier
3041515-0.pdf
Dmrecord
134282
Document Type
Dissertation
Rights
Safar, Maytham Hassan
Type
texts
Source
University of Southern California
(contributing entity),
University of Southern California Dissertations and Theses
(collection)
Access Conditions
The author retains rights to his/her dissertation, thesis or other graduate work according to U.S. copyright law. Electronic access is being provided by the USC Libraries in agreement with the au...
Repository Name
University of Southern California Digital Library
Repository Location
USC Digital Library, University of Southern California, University Park Campus, Los Angeles, California 90089, USA