Foundations of Multidimensional and Metric Data Structures

Size: px
Start display at page:

Download "Foundations of Multidimensional and Metric Data Structures"

Transcription

1 Foundations of Multidimensional and Metric Data Structures Hanan Samet University of Maryland, College Park ELSEVIER AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE SYDNEY TOKYO Morgan Kaufmann Publishers is an imprint of Elsevier MORGAN KAUFMANN PUBLISHERS

2 Contents Foreword Preface xv xvii 1 Multidimensional Point Data Introduction Range Trees Priority Search Trees Quadtrees Point Quadtrees Insertion Deletion Search Trie-Based Quadtrees MX Quadtree PR Quadtrees Comparison of Point and Trie-Based Quadtrees K-d Trees Point K-d Trees Insertion Deletion Search Point K-d Tree Variants Trie-Based K-d Trees PR K-d Tree, 71, Sliding-Midpoint K-d Tree Bucket PR K-d Tree and PMR K-d Tree Path-Compressed PR K-d Tree Path-Level Compressed PR K-d Tree BD-Trees Balanced Box-Decomposition Tree (BBD-Tree) , Conjugation Tree j One-Dimensional Orderings * Bucket Methods atree Directory Methods K-d-B-Tree Hybrid Tree 101 /i LSD Tree hb-tree K-d-B-Tries BV-Tree Definition _ Building a BV-Tree 120 IX

3 Contents Searching a BV-Tree ' Performance Summary Static Methods Grid Directory Methods Grid File EXCELL Linear Hashing Adapting Linear Hashing to Multidimensional Data Multidimensional Extendible Hashing (MDEH) , Dynamic Z Hashing Linear Hashing with Partial Expansions (LHPE) Alternative Implementations of Linear Hashing Quantile Hashing Piecewise Linear Order Preserving (PLOP) Hashing Spiral Hashing Summary Comparison Storage Utilization PK-Trees Motivation Overview Definition Comparison with Bucket Methods : Operations Representation and Searching Insertion Deletion Discussion Conclusion : Object-Based and Image-Based Image Representations Interior-Based Representations Unit-Size Cells Cell Shapes and Tilings Ordering Space Array Access Structures Tree Access Structures Blocks Decomposition into Arbitrarily Sized Rectangular Blocks Medial Axis Transformation (MAT) Irregular Grid Region Quadtree and Region Octree ATree 220 ^ Bintree Adaptation of the Point Quadtree for Regions Adaptation of the K-d Tree for Regions 223 A f X-Y Tree, Treemap, and Puzzletree Hexagonal Blocks Triangular Blocks 231» Nonorthogonal Blocks BSPTree 233 n K-Structure Separating Chain Overview 242 / Layered Dag Arbitrary Objects Coverage-Based Splitting Density-Based Splitting Hierarchical Interior-Based Representations 264

4 Image-Based Hierarchical Interior-Based Representations Contents (Pyramids), Object-Based Hierarchical Interior-Based Representations (R-trees, Bounding Box Hierarchies) Overview Ordering-Based Aggregation Techniques Extent-Based Aggregation Techniques R*-Tree : Bulk Insertion Bulk Loading Shortcomings and Solutions Disjoint Object-Based Hierarchical Interior-Based Representations (k-d-b-tree,.r+-tree, and Cell Tree) Boundary-Based Representations The Boundary Model (BRep) Overview Edge-Based Methods Using Winged Edges Vertex-Based and Face-Based Methods Using Laths Lath Data Structures for Manifold Objects Lath Data Structures for Meshes with Boundaries Summary Voronoi Diagrams, Delaunay Graphs, and Delaunay Triangulations Constrained and Conforming Delaunay Triangulations Delaunay Tetrahedralizations Applications of the Winged-Edge Data Structure (Triangle Table, Corner Table) Image-Based Boundary Representations Line Quadtree MX Quadtree and MX Octree Edge Quadtree Face Octree Adaptively Sampled Distance Fields PM Quadtrees PM Octree ; Bucket PM Quadtree and PMR Quadtree Sector Tree Cone Tree Object-Based Boundary Representations Strip Tree, Arc Tree, and BSPR Prism Tree, HAL Tree Simplification Methods and Data Structures Surface-Based Boundary Representations Difference-Based Compaction Methods ,1 Runlength Encoding Chain Code Vertex Representation Historical Overview Intervals and Small Rectangles Plane-Sweep Methods and the Rectangle Intersection Problem 428 3Tl.1 Segment Tree Interval Tree Priority Search Tree L4 Alternative Solutions and Related Problems Plane-Sweep Methods and the Measure Problem Point-Based Methods Representative Points Collections of Representative Points Corner Stitching _. 459 XI

5 \ Contents Balanced Four-Dimensional K-d Tree ' Grid File! LSD Tree Two-Dimensional Representations Summary Area-Based Methods ' MX-CIF Quadtree Definition Operations Comparison with Other Representations Alternatives to the MX-CIF Quadtree Multiple Quadtree Block Representations High-Dimensional Data Best-First Nearest Neighbor Finding Motivation Search Hierarchy Algorithm Algorithm with Duplicate Instances of Objects Algorithm Extensions (K-Nearest, AT-Farthest, Skylines) Nearest Neighbors in a Spatial Network Related Work The Depth-First /st-nearest Neighbor Algorithm Basic Algorithm Pruning Rules Effects of Clustering Methods on Pruning Ordering the Processing of the Elements of the Active List Improved Algorithm Incorporating MAXNEARESTDIST in a Best-First Algorithm Example Comparison Approximate Nearest Neighbor Finding Multidimensional Indexing Methods X-Tree Bounding Sphere Methods: Sphere Tree, SS-Tree, Balltree, and SR-Tree Increasing the Fanout: TV-Tree, Hybrid Tree, and A-Tree Methods Based on the Voronoi Diagram: OS-Tree Approximate Voronoi Diagram (AVD) Avoiding Overlapping All of the Leaf Blocks Pyramid Technique Methods Based on a Sequential Scan Distance-Based Indexing Methods Distance Metric and Search Pruning Ball Partitioning Methods Vp-Tree Structure Search 606 f Vp sb -Tree Mvp-Tree Other Methods Related to Ball Partitioning Generalized Hyperplane Partitioning Methods Gh-Tree 613 s GNAT Bisector Tree and Mb-Tree 617 f Other Methods Related to Generalized Hyperplane Partitioning / M-Tree Structure Search Sa-Tree Definition..." Search 633 Xll

6 4.5.6 knn Graph 637 Contents Distance Matrix Methods AESA LAESA Other Distance Matrix Methods SASH: Indexing without Using the Triangle Inequality Dimension Reduction Methods Searching in the Dimension Reduced Space Range Queries Nearest Neighbor Queries Using Only One Dimension Representative Point Methods Transformation into a Different and Smaller Feature Set SVD Discrete Fourier Transform (DFT) Summary Embedding Methods Introduction." Lipschitz Embeddings Definition Selecting Reference Sets Example of a Lipschitz Embedding SparseMap FastMap Mechanics of FastMap Choosing Pivot Objects Deriving the First Coordinate Value Projected Distance Subsequent Iterations Pruning Property Expansion Heuristic for Non-Euclidean Metrics Summary and Comparison with Other Embeddings Locality Sensitive Hashing 711 Appendix A: Overview of B-Trees 717 Appendix B: Linear Hashing 729 Appendix C: Spiral Hashing 735 Appendix D: Description of Pseudocode Language 743 Solutions to Exercises 747 References 877 Reference Keyword Index 947 Author and Credit Index 953 Subject Index 969 XU1

Similarity Searching:

Similarity Searching: Similarity Searching: Indexing, Nearest Neighbor Finding, Dimensionality Reduction, and Embedding Methods, for Applications in Multimedia Databases Hanan Samet hjs@cs.umd.edu Department of Computer Science

More information

SORTING IN SPACE HANAN SAMET

SORTING IN SPACE HANAN SAMET SORTING IN SPACE HANAN SAMET COMPUTER SCIENCE DEPARTMENT AND CENTER FOR AUTOMATION RESEARCH AND INSTITUTE FOR ADVANCED COMPUTER STUDIES UNIVERSITY OF MARYLAND COLLEGE PARK, MARYLAND 2742-34 USA e mail:

More information

CS535 Fall Department of Computer Science Purdue University

CS535 Fall Department of Computer Science Purdue University Spatial Data Structures and Hierarchies CS535 Fall 2010 Daniel G Aliaga Daniel G. Aliaga Department of Computer Science Purdue University Spatial Data Structures Store geometric information Organize geometric

More information

Branch and Bound. Algorithms for Nearest Neighbor Search: Lecture 1. Yury Lifshits

Branch and Bound. Algorithms for Nearest Neighbor Search: Lecture 1. Yury Lifshits Branch and Bound Algorithms for Nearest Neighbor Search: Lecture 1 Yury Lifshits http://yury.name Steklov Institute of Mathematics at St.Petersburg California Institute of Technology 1 / 36 Outline 1 Welcome

More information

doc. RNDr. Tomáš Skopal, Ph.D. Department of Software Engineering, Faculty of Information Technology, Czech Technical University in Prague

doc. RNDr. Tomáš Skopal, Ph.D. Department of Software Engineering, Faculty of Information Technology, Czech Technical University in Prague Praha & EU: Investujeme do vaší budoucnosti Evropský sociální fond course: Searching the Web and Multimedia Databases (BI-VWM) Tomáš Skopal, 2011 SS2010/11 doc. RNDr. Tomáš Skopal, Ph.D. Department of

More information

Algorithmic Graph Theory and Perfect Graphs

Algorithmic Graph Theory and Perfect Graphs Algorithmic Graph Theory and Perfect Graphs Second Edition Martin Charles Golumbic Caesarea Rothschild Institute University of Haifa Haifa, Israel 2004 ELSEVIER.. Amsterdam - Boston - Heidelberg - London

More information

Engineering Real- Time Applications with Wild Magic

Engineering Real- Time Applications with Wild Magic 3D GAME ENGINE ARCHITECTURE Engineering Real- Time Applications with Wild Magic DAVID H. EBERLY Geometric Tools, Inc. AMSTERDAM BOSTON HEIDELRERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE

More information

CAR-TR-990 CS-TR-4526 UMIACS September 2003

CAR-TR-990 CS-TR-4526 UMIACS September 2003 CAR-TR-990 CS-TR-4526 UMIACS 2003-94 September 2003 Object-based and Image-based Object Representations Hanan Samet Computer Science Department Center for Automation Research Institute for Advanced Computer

More information

Out-of-core Multi-resolution Terrain Modeling

Out-of-core Multi-resolution Terrain Modeling 2 Out-of-core Multi-resolution Terrain Modeling Emanuele Danovaro 1,2, Leila De Floriani 1,2, Enrico Puppo 1, and Hanan Samet 2 1 Department of Computer and Information Science, University of Genoa - Via

More information

MULTIDIMENSIONAL SIGNAL, IMAGE, AND VIDEO PROCESSING AND CODING

MULTIDIMENSIONAL SIGNAL, IMAGE, AND VIDEO PROCESSING AND CODING MULTIDIMENSIONAL SIGNAL, IMAGE, AND VIDEO PROCESSING AND CODING JOHN W. WOODS Rensselaer Polytechnic Institute Troy, New York»iBllfllfiii.. i. ELSEVIER AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD

More information

Module 4: Index Structures Lecture 16: Voronoi Diagrams and Tries. The Lecture Contains: Voronoi diagrams. Tries. Index structures

Module 4: Index Structures Lecture 16: Voronoi Diagrams and Tries. The Lecture Contains: Voronoi diagrams. Tries. Index structures The Lecture Contains: Voronoi diagrams Tries Delaunay triangulation Algorithms Extensions Index structures 1-dimensional index structures Memory-based index structures Disk-based index structures Classification

More information

Geometric Modeling in Graphics

Geometric Modeling in Graphics Geometric Modeling in Graphics Part 10: Surface reconstruction Martin Samuelčík www.sccg.sk/~samuelcik samuelcik@sccg.sk Curve, surface reconstruction Finding compact connected orientable 2-manifold surface

More information

GEOMETRIC TOOLS FOR COMPUTER GRAPHICS

GEOMETRIC TOOLS FOR COMPUTER GRAPHICS GEOMETRIC TOOLS FOR COMPUTER GRAPHICS PHILIP J. SCHNEIDER DAVID H. EBERLY MORGAN KAUFMANN PUBLISHERS A N I M P R I N T O F E L S E V I E R S C I E N C E A M S T E R D A M B O S T O N L O N D O N N E W

More information

Outline. Other Use of Triangle Inequality Algorithms for Nearest Neighbor Search: Lecture 2. Orchard s Algorithm. Chapter VI

Outline. Other Use of Triangle Inequality Algorithms for Nearest Neighbor Search: Lecture 2. Orchard s Algorithm. Chapter VI Other Use of Triangle Ineuality Algorithms for Nearest Neighbor Search: Lecture 2 Yury Lifshits http://yury.name Steklov Institute of Mathematics at St.Petersburg California Institute of Technology Outline

More information

Heuristic Search. Theory and Applications. Stefan Edelkamp. Stefan Schrodl ELSEVIER. Morgan Kaufmann is an imprint of Elsevier HEIDELBERG LONDON

Heuristic Search. Theory and Applications. Stefan Edelkamp. Stefan Schrodl ELSEVIER. Morgan Kaufmann is an imprint of Elsevier HEIDELBERG LONDON Heuristic Search Theory and Applications Stefan Edelkamp Stefan Schrodl AMSTERDAM BOSTON HEIDELBERG LONDON ELSEVIER NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE SYDNEY» TOKYO Morgan Kaufmann

More information

Ray Tracing: Intersection

Ray Tracing: Intersection Computer Graphics as Virtual Photography Ray Tracing: Intersection Photography: real scene camera (captures light) photo processing Photographic print processing Computer Graphics: 3D models camera tone

More information

Computers as Components Principles of Embedded Computing System Design

Computers as Components Principles of Embedded Computing System Design Computers as Components Principles of Embedded Computing System Design Third Edition Marilyn Wolf ELSEVIER AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE SYDNEY

More information

Structured Parallel Programming Patterns for Efficient Computation

Structured Parallel Programming Patterns for Efficient Computation Structured Parallel Programming Patterns for Efficient Computation Michael McCool Arch D. Robison James Reinders ELSEVIER AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO

More information

Collision Detection based on Spatial Partitioning

Collision Detection based on Spatial Partitioning Simulation in Computer Graphics Collision Detection based on Spatial Partitioning Matthias Teschner Computer Science Department University of Freiburg Outline introduction uniform grid Octree and k-d tree

More information

Space-based Partitioning Data Structures and their Algorithms. Jon Leonard

Space-based Partitioning Data Structures and their Algorithms. Jon Leonard Space-based Partitioning Data Structures and their Algorithms Jon Leonard Purpose Space-based Partitioning Data Structures are an efficient way of organizing data that lies in an n-dimensional space 2D,

More information

18 Multidimensional Data Structures 1

18 Multidimensional Data Structures 1 18 Multidimensional Data Structures 1 Hanan Samet University of Maryland 18.1 Introduction 18.2 PointData 18.3 BucketingMethods 18.4 RegionData 18.5 RectangleData 18.6 LineDataandBoundariesofRegions 18.7

More information

Advanced Algorithms Computational Geometry Prof. Karen Daniels. Fall, 2012

Advanced Algorithms Computational Geometry Prof. Karen Daniels. Fall, 2012 UMass Lowell Computer Science 91.504 Advanced Algorithms Computational Geometry Prof. Karen Daniels Fall, 2012 Voronoi Diagrams & Delaunay Triangulations O Rourke: Chapter 5 de Berg et al.: Chapters 7,

More information

Spatial data structures in 2D

Spatial data structures in 2D Spatial data structures in 2D 1998-2016 Josef Pelikán CGG MFF UK Praha pepca@cgg.mff.cuni.cz http://cgg.mff.cuni.cz/~pepca/ Spatial2D 2016 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 1 / 34 Application

More information

CMSC 425: Lecture 10 Geometric Data Structures for Games: Index Structures Tuesday, Feb 26, 2013

CMSC 425: Lecture 10 Geometric Data Structures for Games: Index Structures Tuesday, Feb 26, 2013 CMSC 2: Lecture 10 Geometric Data Structures for Games: Index Structures Tuesday, Feb 2, 201 Reading: Some of today s materials can be found in Foundations of Multidimensional and Metric Data Structures,

More information

Nearest Neighbor Search by Branch and Bound

Nearest Neighbor Search by Branch and Bound Nearest Neighbor Search by Branch and Bound Algorithmic Problems Around the Web #2 Yury Lifshits http://yury.name CalTech, Fall 07, CS101.2, http://yury.name/algoweb.html 1 / 30 Outline 1 Short Intro to

More information

Embedded Systems Architecture

Embedded Systems Architecture Embedded Systems Architecture A Comprehensive Guide for Engineers and Programmers By Tammy Noergaard ELSEVIER AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE

More information

CPSC / Sonny Chan - University of Calgary. Collision Detection II

CPSC / Sonny Chan - University of Calgary. Collision Detection II CPSC 599.86 / 601.86 Sonny Chan - University of Calgary Collision Detection II Outline Broad phase collision detection: - Problem definition and motivation - Bounding volume hierarchies - Spatial partitioning

More information

Simulation in Computer Graphics Space Subdivision. Matthias Teschner

Simulation in Computer Graphics Space Subdivision. Matthias Teschner Simulation in Computer Graphics Space Subdivision Matthias Teschner Outline Introduction Uniform grid Octree and k-d tree BSP tree University of Freiburg Computer Science Department 2 Model Partitioning

More information

Acceleration Data Structures

Acceleration Data Structures CT4510: Computer Graphics Acceleration Data Structures BOCHANG MOON Ray Tracing Procedure for Ray Tracing: For each pixel Generate a primary ray (with depth 0) While (depth < d) { Find the closest intersection

More information

Applications. Oversampled 3D scan data. ~150k triangles ~80k triangles

Applications. Oversampled 3D scan data. ~150k triangles ~80k triangles Mesh Simplification Applications Oversampled 3D scan data ~150k triangles ~80k triangles 2 Applications Overtessellation: E.g. iso-surface extraction 3 Applications Multi-resolution hierarchies for efficient

More information

An Introduction to Parallel Programming

An Introduction to Parallel Programming F 'C 3 R'"'C,_,. HO!.-IJJ () An Introduction to Parallel Programming Peter S. Pacheco University of San Francisco ELSEVIER AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO

More information

Course 16 Geometric Data Structures for Computer Graphics. Voronoi Diagrams

Course 16 Geometric Data Structures for Computer Graphics. Voronoi Diagrams Course 16 Geometric Data Structures for Computer Graphics Voronoi Diagrams Dr. Elmar Langetepe Institut für Informatik I Universität Bonn Geometric Data Structures for CG July 27 th Voronoi Diagrams San

More information

Geometric data structures:

Geometric data structures: Geometric data structures: Machine Learning for Big Data CSE547/STAT548, University of Washington Sham Kakade Sham Kakade 2017 1 Announcements: HW3 posted Today: Review: LSH for Euclidean distance Other

More information

Geometric Modeling. Mesh Decimation. Mesh Decimation. Applications. Copyright 2010 Gotsman, Pauly Page 1. Oversampled 3D scan data

Geometric Modeling. Mesh Decimation. Mesh Decimation. Applications. Copyright 2010 Gotsman, Pauly Page 1. Oversampled 3D scan data Applications Oversampled 3D scan data ~150k triangles ~80k triangles 2 Copyright 2010 Gotsman, Pauly Page 1 Applications Overtessellation: E.g. iso-surface extraction 3 Applications Multi-resolution hierarchies

More information

Structured Parallel Programming

Structured Parallel Programming Structured Parallel Programming Patterns for Efficient Computation Michael McCool Arch D. Robison James Reinders ELSEVIER AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO

More information

Data Partitioning. Figure 1-31: Communication Topologies. Regular Partitions

Data Partitioning. Figure 1-31: Communication Topologies. Regular Partitions Data In single-program multiple-data (SPMD) parallel programs, global data is partitioned, with a portion of the data assigned to each processing node. Issues relevant to choosing a partitioning strategy

More information

Computer Architecture A Quantitative Approach

Computer Architecture A Quantitative Approach Computer Architecture A Quantitative Approach Third Edition John L. Hennessy Stanford University David A. Patterson University of California at Berkeley With Contributions by David Goldberg Xerox Palo

More information

On the data structures and algorithms for contact detection in granular media (DEM) V. Ogarko, May 2010, P2C course

On the data structures and algorithms for contact detection in granular media (DEM) V. Ogarko, May 2010, P2C course On the data structures and algorithms for contact detection in granular media (DEM) V. Ogarko, May 2010, P2C course Discrete element method (DEM) Single particle Challenges: -performance O(N) (with low

More information

An Introduction to Geometrical Probability

An Introduction to Geometrical Probability An Introduction to Geometrical Probability Distributional Aspects with Applications A. M. Mathai McGill University Montreal, Canada Gordon and Breach Science Publishers Australia Canada China Prance Germany

More information

Voronoi Diagram. Xiao-Ming Fu

Voronoi Diagram. Xiao-Ming Fu Voronoi Diagram Xiao-Ming Fu Outlines Introduction Post Office Problem Voronoi Diagram Duality: Delaunay triangulation Centroidal Voronoi tessellations (CVT) Definition Applications Algorithms Outlines

More information

Computer Animation. Algorithms and Techniques. z< MORGAN KAUFMANN PUBLISHERS. Rick Parent Ohio State University AN IMPRINT OF ELSEVIER SCIENCE

Computer Animation. Algorithms and Techniques. z< MORGAN KAUFMANN PUBLISHERS. Rick Parent Ohio State University AN IMPRINT OF ELSEVIER SCIENCE Computer Animation Algorithms and Techniques Rick Parent Ohio State University z< MORGAN KAUFMANN PUBLISHERS AN IMPRINT OF ELSEVIER SCIENCE AMSTERDAM BOSTON LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO

More information

Data Structures for Approximate Proximity and Range Searching

Data Structures for Approximate Proximity and Range Searching Data Structures for Approximate Proximity and Range Searching David M. Mount University of Maryland Joint work with: Sunil Arya (Hong Kong U. of Sci. and Tech) Charis Malamatos (Max Plank Inst.) 1 Introduction

More information

Data Organization and Processing

Data Organization and Processing Data Organization and Processing Spatial Join (NDBI007) David Hoksza http://siret.ms.mff.cuni.cz/hoksza Outline Spatial join basics Relational join Spatial join Spatial join definition (1) Given two sets

More information

9. Three Dimensional Object Representations

9. Three Dimensional Object Representations 9. Three Dimensional Object Representations Methods: Polygon and Quadric surfaces: For simple Euclidean objects Spline surfaces and construction: For curved surfaces Procedural methods: Eg. Fractals, Particle

More information

COMPUTER AND ROBOT VISION

COMPUTER AND ROBOT VISION VOLUME COMPUTER AND ROBOT VISION Robert M. Haralick University of Washington Linda G. Shapiro University of Washington A^ ADDISON-WESLEY PUBLISHING COMPANY Reading, Massachusetts Menlo Park, California

More information

Tutorial 3 Comparing Biological Shapes Patrice Koehl and Joel Hass

Tutorial 3 Comparing Biological Shapes Patrice Koehl and Joel Hass Tutorial 3 Comparing Biological Shapes Patrice Koehl and Joel Hass University of California, Davis, USA http://www.cs.ucdavis.edu/~koehl/ims2017/ What is a shape? A shape is a 2-manifold with a Riemannian

More information

Spatial Data Structures

Spatial Data Structures CSCI 420 Computer Graphics Lecture 17 Spatial Data Structures Jernej Barbic University of Southern California Hierarchical Bounding Volumes Regular Grids Octrees BSP Trees [Angel Ch. 8] 1 Ray Tracing Acceleration

More information

SILC: Efficient Query Processing on Spatial Networks

SILC: Efficient Query Processing on Spatial Networks Hanan Samet hjs@cs.umd.edu Department of Computer Science University of Maryland College Park, MD 20742, USA Joint work with Jagan Sankaranarayanan and Houman Alborzi Proceedings of the 13th ACM International

More information

Visualizing and Animating Search Operations on Quadtrees on the Worldwide Web

Visualizing and Animating Search Operations on Quadtrees on the Worldwide Web Visualizing and Animating Search Operations on Quadtrees on the Worldwide Web František Brabec Computer Science Department University of Maryland College Park, Maryland 20742 brabec@umiacs.umd.edu Hanan

More information

Overview. Efficient Simplification of Point-sampled Surfaces. Introduction. Introduction. Neighborhood. Local Surface Analysis

Overview. Efficient Simplification of Point-sampled Surfaces. Introduction. Introduction. Neighborhood. Local Surface Analysis Overview Efficient Simplification of Pointsampled Surfaces Introduction Local surface analysis Simplification methods Error measurement Comparison PointBased Computer Graphics Mark Pauly PointBased Computer

More information

Information Modeling and Relational Databases

Information Modeling and Relational Databases Information Modeling and Relational Databases Second Edition Terry Halpin Neumont University Tony Morgan Neumont University AMSTERDAM» BOSTON. HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO

More information

Collision and Proximity Queries

Collision and Proximity Queries Collision and Proximity Queries Dinesh Manocha (based on slides from Ming Lin) COMP790-058 Fall 2013 Geometric Proximity Queries l Given two object, how would you check: If they intersect with each other

More information

CSG obj. oper3. obj1 obj2 obj3. obj5. obj4

CSG obj. oper3. obj1 obj2 obj3. obj5. obj4 Solid Modeling Solid: Boundary + Interior Volume occupied by geometry Solid representation schemes Constructive Solid Geometry (CSG) Boundary representations (B-reps) Space-partition representations Operations

More information

Quadstream. Algorithms for Multi-scale Polygon Generalization. Curran Kelleher December 5, 2012

Quadstream. Algorithms for Multi-scale Polygon Generalization. Curran Kelleher December 5, 2012 Quadstream Algorithms for Multi-scale Polygon Generalization Introduction Curran Kelleher December 5, 2012 The goal of this project is to enable the implementation of highly interactive choropleth maps

More information

An Introduction to Programming with IDL

An Introduction to Programming with IDL An Introduction to Programming with IDL Interactive Data Language Kenneth P. Bowman Department of Atmospheric Sciences Texas A&M University AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN

More information

Quadtrees and Meshing

Quadtrees and Meshing Computational Geometry Lecture INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Tamara Mchedlidze Darren Strash 14.12.2015 Motivation: Meshing PC Board Layouts To simulate the heat produced

More information

Solid Modelling. Graphics Systems / Computer Graphics and Interfaces COLLEGE OF ENGINEERING UNIVERSITY OF PORTO

Solid Modelling. Graphics Systems / Computer Graphics and Interfaces COLLEGE OF ENGINEERING UNIVERSITY OF PORTO Solid Modelling Graphics Systems / Computer Graphics and Interfaces 1 Solid Modelling In 2D, one set 2D line segments or curves does not necessarily form a closed area. In 3D, a collection of surfaces

More information

Spatial Data Structures

Spatial Data Structures CSCI 480 Computer Graphics Lecture 7 Spatial Data Structures Hierarchical Bounding Volumes Regular Grids BSP Trees [Ch. 0.] March 8, 0 Jernej Barbic University of Southern California http://www-bcf.usc.edu/~jbarbic/cs480-s/

More information

Other Voronoi/Delaunay Structures

Other Voronoi/Delaunay Structures Other Voronoi/Delaunay Structures Overview Alpha hulls (a subset of Delaunay graph) Extension of Voronoi Diagrams Convex Hull What is it good for? The bounding region of a point set Not so good for describing

More information

FPGAs: Instant Access

FPGAs: Instant Access FPGAs: Instant Access Clive"Max"Maxfield AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE SYDNEY TOKYO % ELSEVIER Newnes is an imprint of Elsevier Newnes Contents

More information

Continuous. Covering. Location. Problems. Louis Luangkesorn. Introduction. Continuous Covering. Full Covering. Preliminaries.

Continuous. Covering. Location. Problems. Louis Luangkesorn. Introduction. Continuous Covering. Full Covering. Preliminaries. Outline 1 Full IE 1079/2079 Logistics and Supply Chain Full 2 Full Empty University of Pittsburgh Department of Industrial Engineering June 24, 2009 Empty 3 4 Empty 5 6 Taxonomy of Full Full A location

More information

Overview of Unstructured Mesh Generation Methods

Overview of Unstructured Mesh Generation Methods Overview of Unstructured Mesh Generation Methods Structured Meshes local mesh points and cells do not depend on their position but are defined by a general rule. Lead to very efficient algorithms and storage.

More information

Mesh Decimation. Mark Pauly

Mesh Decimation. Mark Pauly Mesh Decimation Mark Pauly Applications Oversampled 3D scan data ~150k triangles ~80k triangles Mark Pauly - ETH Zurich 280 Applications Overtessellation: E.g. iso-surface extraction Mark Pauly - ETH Zurich

More information

Multidimensional Indexes [14]

Multidimensional Indexes [14] CMSC 661, Principles of Database Systems Multidimensional Indexes [14] Dr. Kalpakis http://www.csee.umbc.edu/~kalpakis/courses/661 Motivation Examined indexes when search keys are in 1-D space Many interesting

More information

CMSC724: Access Methods; Indexes 1 ; GiST

CMSC724: Access Methods; Indexes 1 ; GiST CMSC724: Access Methods; Indexes 1 ; GiST Amol Deshpande University of Maryland, College Park March 14, 2011 1 Partially based on notes from Joe Hellerstein Outline 1 Access Methods 2 B+-Tree 3 Beyond

More information

Spatial Data Structures

Spatial Data Structures 15-462 Computer Graphics I Lecture 17 Spatial Data Structures Hierarchical Bounding Volumes Regular Grids Octrees BSP Trees Constructive Solid Geometry (CSG) April 1, 2003 [Angel 9.10] Frank Pfenning Carnegie

More information

MPEG-l.MPEG-2, MPEG-4

MPEG-l.MPEG-2, MPEG-4 The MPEG Handbook MPEG-l.MPEG-2, MPEG-4 Second edition John Watkinson PT ^PVTPR AMSTERDAM BOSTON HEIDELBERG LONDON. NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE SYDNEY TOKYO Focal Press is an

More information

A Fast and Simple Surface Reconstruction Algorithm

A Fast and Simple Surface Reconstruction Algorithm A Fast and Simple Surface Reconstruction Algorithm Siu-Wing Cheng Jiongxin Jin Man-Kit Lau Abstract We present an algorithm for surface reconstruction from a point cloud. It runs in O(n log n) time, where

More information

The Algorithm Design Manual

The Algorithm Design Manual Steven S. Skiena The Algorithm Design Manual With 72 Figures Includes CD-ROM THE ELECTRONIC LIBRARY OF SCIENCE Contents Preface vii I TECHNIQUES 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 1.10 2 2.1 2.2 2.3

More information

Outline of the presentation

Outline of the presentation Surface Reconstruction Petra Surynková Charles University in Prague Faculty of Mathematics and Physics petra.surynkova@mff.cuni.cz Outline of the presentation My work up to now Surfaces of Building Practice

More information

Geometry Vocabulary. acute angle-an angle measuring less than 90 degrees

Geometry Vocabulary. acute angle-an angle measuring less than 90 degrees Geometry Vocabulary acute angle-an angle measuring less than 90 degrees angle-the turn or bend between two intersecting lines, line segments, rays, or planes angle bisector-an angle bisector is a ray that

More information

Pivoting M-tree: A Metric Access Method for Efficient Similarity Search

Pivoting M-tree: A Metric Access Method for Efficient Similarity Search Pivoting M-tree: A Metric Access Method for Efficient Similarity Search Tomáš Skopal Department of Computer Science, VŠB Technical University of Ostrava, tř. 17. listopadu 15, Ostrava, Czech Republic tomas.skopal@vsb.cz

More information

Algorithms for GIS:! Quadtrees

Algorithms for GIS:! Quadtrees Algorithms for GIS: Quadtrees Quadtree A data structure that corresponds to a hierarchical subdivision of the plane Start with a square (containing inside input data) Divide into 4 equal squares (quadrants)

More information

Efficient Representation and Extraction of 2-Manifold Isosurfaces Using kd-trees

Efficient Representation and Extraction of 2-Manifold Isosurfaces Using kd-trees Efficient Representation and Extraction of 2-Manifold Isosurfaces Using kd-trees Alexander Greß and Reinhard Klein University of Bonn Institute of Computer Science II Römerstraße 164, 53117 Bonn, Germany

More information

Spatial Data Structures

Spatial Data Structures 15-462 Computer Graphics I Lecture 17 Spatial Data Structures Hierarchical Bounding Volumes Regular Grids Octrees BSP Trees Constructive Solid Geometry (CSG) March 28, 2002 [Angel 8.9] Frank Pfenning Carnegie

More information

Code Transformation of DF-Expression between Bintree and Quadtree

Code Transformation of DF-Expression between Bintree and Quadtree Code Transformation of DF-Expression between Bintree and Quadtree Chin-Chen Chang*, Chien-Fa Li*, and Yu-Chen Hu** *Department of Computer Science and Information Engineering, National Chung Cheng University

More information

CS 532: 3D Computer Vision 14 th Set of Notes

CS 532: 3D Computer Vision 14 th Set of Notes 1 CS 532: 3D Computer Vision 14 th Set of Notes Instructor: Philippos Mordohai Webpage: www.cs.stevens.edu/~mordohai E-mail: Philippos.Mordohai@stevens.edu Office: Lieb 215 Lecture Outline Triangulating

More information

Quadrilateral Meshing by Circle Packing

Quadrilateral Meshing by Circle Packing Quadrilateral Meshing by Circle Packing Marshall Bern 1 David Eppstein 2 Abstract We use circle-packing methods to generate quadrilateral meshes for polygonal domains, with guaranteed bounds both on the

More information

Voronoi Diagrams in the Plane. Chapter 5 of O Rourke text Chapter 7 and 9 of course text

Voronoi Diagrams in the Plane. Chapter 5 of O Rourke text Chapter 7 and 9 of course text Voronoi Diagrams in the Plane Chapter 5 of O Rourke text Chapter 7 and 9 of course text Voronoi Diagrams As important as convex hulls Captures the neighborhood (proximity) information of geometric objects

More information

Spatial Data Management

Spatial Data Management Spatial Data Management [R&G] Chapter 28 CS432 1 Types of Spatial Data Point Data Points in a multidimensional space E.g., Raster data such as satellite imagery, where each pixel stores a measured value

More information

Object-Based and Image-Based Image Representations

Object-Based and Image-Based Image Representations 2 Object-ased and Image-ased Image Representations The representation of spatial objects and their environment is an important issue in applications of computer graphics, game programming, computer vision,

More information

PATTERN CLASSIFICATION AND SCENE ANALYSIS

PATTERN CLASSIFICATION AND SCENE ANALYSIS PATTERN CLASSIFICATION AND SCENE ANALYSIS RICHARD O. DUDA PETER E. HART Stanford Research Institute, Menlo Park, California A WILEY-INTERSCIENCE PUBLICATION JOHN WILEY & SONS New York Chichester Brisbane

More information

Geometric and Solid Modeling. Problems

Geometric and Solid Modeling. Problems Geometric and Solid Modeling Problems Define a Solid Define Representation Schemes Devise Data Structures Construct Solids Page 1 Mathematical Models Points Curves Surfaces Solids A shape is a set of Points

More information

EXPERIENCING GEOMETRY

EXPERIENCING GEOMETRY EXPERIENCING GEOMETRY EUCLIDEAN AND NON-EUCLIDEAN WITH HISTORY THIRD EDITION David W. Henderson Daina Taimina Cornell University, Ithaca, New York PEARSON Prentice Hall Upper Saddle River, New Jersey 07458

More information

Spatial Data Management

Spatial Data Management Spatial Data Management Chapter 28 Database management Systems, 3ed, R. Ramakrishnan and J. Gehrke 1 Types of Spatial Data Point Data Points in a multidimensional space E.g., Raster data such as satellite

More information

Optimizing triangular meshes to have the incrircle packing property

Optimizing triangular meshes to have the incrircle packing property Packing Circles and Spheres on Surfaces Ali Mahdavi-Amiri Introduction Optimizing triangular meshes to have p g g the incrircle packing property Our Motivation PYXIS project Geometry Nature Geometry Isoperimetry

More information

Voronoi Diagrams and Delaunay Triangulation slides by Andy Mirzaian (a subset of the original slides are used here)

Voronoi Diagrams and Delaunay Triangulation slides by Andy Mirzaian (a subset of the original slides are used here) Voronoi Diagrams and Delaunay Triangulation slides by Andy Mirzaian (a subset of the original slides are used here) Voronoi Diagram & Delaunay Triangualtion Algorithms Divide-&-Conquer Plane Sweep Lifting

More information

Computational Geometry

Computational Geometry Planar point location Point location Introduction Planar point location Strip-based structure Point location problem: Preprocess a planar subdivision such that for any query point q, the face of the subdivision

More information

1. Meshes. D7013E Lecture 14

1. Meshes. D7013E Lecture 14 D7013E Lecture 14 Quadtrees Mesh Generation 1. Meshes Input: Components in the form of disjoint polygonal objects Integer coordinates, 0, 45, 90, or 135 angles Output: A triangular mesh Conforming: A triangle

More information

Computational Geometry

Computational Geometry Motivation Motivation Polygons and visibility Visibility in polygons Triangulation Proof of the Art gallery theorem Two points in a simple polygon can see each other if their connecting line segment is

More information

Coding for Penetration

Coding for Penetration Coding for Penetration Testers Building Better Tools Jason Andress Ryan Linn ELSEVIER AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE SYDNEY TOKYO Syngress is

More information

Surfaces, meshes, and topology

Surfaces, meshes, and topology Surfaces from Point Samples Surfaces, meshes, and topology A surface is a 2-manifold embedded in 3- dimensional Euclidean space Such surfaces are often approximated by triangle meshes 2 1 Triangle mesh

More information

Voronoi Diagrams. A Voronoi diagram records everything one would ever want to know about proximity to a set of points

Voronoi Diagrams. A Voronoi diagram records everything one would ever want to know about proximity to a set of points Voronoi Diagrams Voronoi Diagrams A Voronoi diagram records everything one would ever want to know about proximity to a set of points Who is closest to whom? Who is furthest? We will start with a series

More information

Week 8 Voronoi Diagrams

Week 8 Voronoi Diagrams 1 Week 8 Voronoi Diagrams 2 Voronoi Diagram Very important problem in Comp. Geo. Discussed back in 1850 by Dirichlet Published in a paper by Voronoi in 1908 3 Voronoi Diagram Fire observation towers: an

More information

Accelerating Geometric Queries. Computer Graphics CMU /15-662, Fall 2016

Accelerating Geometric Queries. Computer Graphics CMU /15-662, Fall 2016 Accelerating Geometric Queries Computer Graphics CMU 15-462/15-662, Fall 2016 Geometric modeling and geometric queries p What point on the mesh is closest to p? What point on the mesh is closest to p?

More information

Three-Dimensional Shapes

Three-Dimensional Shapes Lesson 11.1 Three-Dimensional Shapes Three-dimensional objects come in different shapes. sphere cone cylinder rectangular prism cube Circle the objects that match the shape name. 1. rectangular prism 2.

More information

K-structure, Separating Chain, Gap Tree, and Layered DAG

K-structure, Separating Chain, Gap Tree, and Layered DAG K-structure, Separating Chain, Gap Tree, and Layered DAG Presented by Dave Tahmoush Overview Improvement on Gap Tree and K-structure Faster point location Encompasses Separating Chain Better storage Designed

More information

Speeding up Queries in a Leaf Image Database

Speeding up Queries in a Leaf Image Database 1 Speeding up Queries in a Leaf Image Database Daozheng Chen May 10, 2007 Abstract We have an Electronic Field Guide which contains an image database with thousands of leaf images. We have a system which

More information

Understand and Implement Effective PCI Data Security Standard Compliance

Understand and Implement Effective PCI Data Security Standard Compliance PCI Compliance Understand and Implement Effective PCI Data Security Standard Compliance Second Edition Dr. Anton A. Chuvakin Branden R. Williams Technical Editor Ward Spangenberg ELSEVIER AMSTERDAM BOSTON

More information

Moving to the Cloud. Developing Apps in. the New World of Cloud Computing. Dinkar Sitaram. Geetha Manjunath. David R. Deily ELSEVIER.

Moving to the Cloud. Developing Apps in. the New World of Cloud Computing. Dinkar Sitaram. Geetha Manjunath. David R. Deily ELSEVIER. Moving to the Cloud Developing Apps in the New World of Cloud Computing Dinkar Sitaram Geetha Manjunath Technical Editor David R. Deily AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO

More information