Tessellation Data Structures

Slides:



Advertisements
Similar presentations
Algorithms (and Datastructures) Lecture 3 MAS 714 part 2 Hartmut Klauck.
Advertisements

Geographic Information Systems GIS Data Models. 1. Components of Geographic Data Spatial locations Attributes Topology Time.
Geographic Information Systems
Chapter 5 Raster –based algorithms in CAC. 5.1 area filling algorithm 5.2 distance transformation graph and skeleton graph generation algorithm 5.3 convolution.
Raster Based GIS Analysis
1 Computer Graphics Chapter 6 2D Transformations.
GIS: The Grand Unifying Technology. Introduction to GIS  What is GIS?  Why GIS?  Contributing Disciplines  Applications of GIS  GIS functions  Information.
Spatial indexing PAMs (II).
Data Structures For Image Analysis
Cartographic and GIS Data Structures
Geographic Information Systems
Spatial Information Systems (SIS) COMP Raster-based structures (2) Data conversion.
Regionalized Variables take on values according to spatial location. Given: Where: A “structural” coarse scale forcing or trend A random” Local spatial.
Lecture 06: Map Data Structures Geography 128 Analytical and Computer Cartography Spring 2007 Department of Geography University of California, Santa Barbara.
CSci 6971: Image Registration Lecture 2: Vectors and Matrices January 16, 2004 Prof. Chuck Stewart, RPI Dr. Luis Ibanez, Kitware Prof. Chuck Stewart, RPI.
GI Systems and Science January 23, Points to Cover  What is spatial data modeling?  Entity definition  Topology  Spatial data models Raster.
Circle Drawing algo..
Chapter 7 Matrix Mathematics Matrix Operations Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Concept of Map Projection. Map Projection A map projection is a set of rules for transforming features from the three- dimensional earth onto a two-dimensional.
Basics of Linear Algebra A review?. Matrix  Mathematical term essentially corresponding to an array  An arrangement of numbers into rows and columns.
Spatial data models (types)
Cartographical Whispers Dr Nigel Trodd Coventry University.
Relative Location of a Point with Respect to a Straight Line (0,0) 5 5 (2, 2) (4, 5) (0, 5) (6, 3) -3x + 2y +2 = 0 s = A x t + B y t + C s < 0 s > 0.
UNIT THREE REVIEW Geometry 217. True/False  A translation is an arrangement of shapes that covers a plane completely without gaps or overlaps.  False,
CS654: Digital Image Analysis Lecture 3: Data Structure for Image Analysis.
Applied Cartography and Introduction to GIS GEOG 2017 EL Lecture-2 Chapters 3 and 4.
Edge Linking & Boundary Detection
CS654: Digital Image Analysis Lecture 12: Separable Transforms.
Chapter 3 Digital Representation of Geographic Data.
8. Geographic Data Modeling. Outline Definitions Data models / modeling GIS data models – Topology.
Raster Data Model.
1 Data models Vector data model Raster data model.
Magnitude of a Vector The magnitude of a vector, denoted as |a|, is defined as the square root of the sum of the squares of its components: |a| = (x 2.
Matrices A matrix is a table or array of numbers arranged in rows and columns The order of a matrix is given by stating its dimensions. This is known as.
Space-Filling Curves in Information Visualization Jiwen Huo
Computer Graphics 2D Transformations. 2 of 74 Contents In today’s lecture we’ll cover the following: –Why transformations –Transformations Translation.
UNIT THREE REVIEW Geometry 217. True/False  A translation is an arrangement of shapes that covers a plane completely without gaps or overlaps.
Raster data models Rasters can be different types of tesselations SquaresTrianglesHexagons Regular tesselations.
Routine Performed for Each Origin Cell There is another set of loops that cycle through Origin Cells once the D8 Neighbor procedure completes.
Cartographic Objects Digital Images of a Map Vector Data Model Raster Data Model.
Spatial Databases - Representation
Module 6 Mid-Chapter Test Review. Describe the Transformation from the Given Pre-Image to the Given Image 1. Pre-Image: Shape 1 Image: Shape 4 1. Answer:
CS654: Digital Image Analysis Lecture 4: Basic relationship between Pixels.
Computer Graphics, KKU. Lecture 41 The Computer Programming Laws Any given program, when running, is obsolete. Any given program costs more and.
Final Exam review Dr. Ahmad Bin Touq GEO 221: (GIS.1) Geographic Information Systems.1.
Rendering Pipeline Fall, D Polygon Rendering Many applications use rendering of 3D polygons with direct illumination.
What is GIS? “A powerful set of tools for collecting, storing, retrieving, transforming and displaying spatial data”
Geometry 4-3 Rotations.
Reflections Geometry.
Digital Image Processing Lecture 20: Representation & Description
Geometry Rotations.
Review Graph Directed Graph Undirected Graph Sub-Graph
Bell Ringer   9/18/2018.
7.2 Reflections.
Spatial Data Models Raster uses individual cells in a matrix, or grid, format to represent real world entities Vector uses coordinates to store the shape.
Grids Geometry Computational Geometry
Grids Geometry Computational Geometry
4.2 Reflections Goals: Perform Reflections Perform Glide Reflections
Grids Geometry Computational Geometry
Cartographic and GIS Data Structures
Mod 16.1: Dilations Essential Question: What can you say about the interior and exterior angles of a triangle and other polygons? CASS: G-SRT.1a, G-SRT.2b.
Chapter 1: Lesson 1.1 Rectangular Coordinates
Spatial Databases - Representation
Spatial Databases - Representation
Reflections Geometry.
Transformations - Rotations
Chapter 5 Congruent Triangles.
ECE 692 – Advanced Topics in Computer Vision
Presentation transcript:

Tessellation Data Structures Squares Properties: Orientation consistency Recursively subdividable? Radial symmetry Compatible with array data structures and a cartesian coorninate system. Triangles Tessellation models are an alternative to the vector approach. The basic data unit in a tessellation model is a unit of area corresponding to the interior of a region. The three basic areal units that have been used in regular tessellations are squares, triangles, and hexagons. Each shape has different geometric properties that distinguish it from the others. One characteristic is orientation; objects in both square and hexagonal patterns have the same orientation while, in a triangular mesh, objects have a different orientation. A second characteristic is whether two-dimensional space can be recursively subdivided using that shape; both squares and triangles can be subdivided infinitely while a hexagon cannot. Hexagons however have the property of radial symmetry; all neighboring cells of a given cell are the same distance to the centerpoint of that cell. Hexagons also form the most compact shape good for spatial sampling. The square mesh on the other hand is most compatible with array data structures and a cartesian coordinate system. Digital remotely sensed data and output devices such as line printers and the color raster terminals also favor the grid cell structures. The advantages of a square mesh sufficiently outweigh the other two so that it is the most frequently used. Hexagons

Rasterization of a Map The simplest data structure for encoding a map in a square tessellation is a rasterization of the map. The area of the map is converted into a grid cell overlay; each cell (pixel) is assigned to a region based on some rule (e.g., if all or most of the grid is within the vector polygon, it is assigned with the gray value for the foreground, otherwise, with the gray value for the background). This information is then stored as a matrix of data. Depending on the size of the raster units, the stylized representation of the map can be very crude; the representation can be improved by making the pixels smaller but this increases the volume of data that is stored in the digital representation. These data can easily be retrieved and a display formed. However, in a rasterization the integrity of a region and the graph topology between regions is lost; only connections between pixels are implicitly retained by their row and column index. A second disadvantage of this approach is that the matrix of data values has very little informational content. A large homogeneous region is now replaced by many pixels having the same value as the original region.

Scan Line Structure B A B B A B B A B B P B A B B A B B A B B A B B A To increase the informational content and thereby reduce storage requirements, the scan line concept was introduced. A scan line is one row of the matrix. Instead of stopping at individual pixels, region segments were identified. The only items recorded for each scan line were the number of regions transversed by the scan line, the region ID value for each region crossed and the column where a region segment ended on the line. This structure is more compact for storing regionalized categories. It is also called the run length coding. B A B L B A B B A B B A B A B B

Quad-Tree Structure A 1 2 5 3 4 B C 5 6 7 8 6 9 10 1 2 3 4 7 8 9 10 Scan lines, however, only improve compactness in one dimension. The encoding of areas still includes a lot of redundant data. To improve the overall informational content of objects presented in the data model, maximal blocks are used. A maximal block is the largest square block that contains a homogeneous area. The region also can be represented by the recursive subdivision of two-dimensional space into quadrants stored in a tree structure. It is also called the „Quad-tree structure“. The root vertex of the tree represents the geographic domain of the mapping space. If the entire space of the root vertex is not occupied by the region, it is subdivided into quadrants; each quadrant is a leaf of the root vertex and the eldest sibling is the northwest quadrant followed in turn by the northeast, southwest, and southeast quadrants. If the region fully occupies one of these leaves, subdivision of that leaf is terminated and is colored black (signifying it‘s an element of the region). If none of the region is contained within the area of a leaf, subdivision of that leaf is also terminated and colored white to signify that it is not an element of the region but of its complement. If only part of the leaf area is occupied by the region, then the leaf is colored gray and must be further subdivided to find smaller maximal blocks. If the region of the mapping space is composed of more than one attribute, black leaves are given different gray values that correspond to the appropriate regions and white leaves correspond to the background. In addition to the compactness, quad-trees have several important properties. First, spatial detail can rapidly be attained by recursive division by a power of four. This division can be proceeded until the resolution of the image being encoded is reached. Secondly, it is possible to perform union and intersection operations on quad-tree as leaf operations. Third, the neighbors of a particular block can easily be retrieved. 6 9 10 1 2 3 4 7 8 9 10

Linear Indexing Transformations Transformation of a graph topology into a path topology with the aim to order the objects in a linear sequence while preserving some of the spatial connections between the objects The requirements to space-filling curves (Peano scans): 1. passes once through every object 2. objects close in the space should be near one another in the path transform 3. An inverse operation exists to recover the original space There has been recent interest in the transformation of a graph topology (which may be a tree) into a path topology. The purpose of this transformation is to order the objects of the data model in a linear sequence while preserving some of the spatial connections between objects. A spatial transformation can be applied to any set of spatial units, either polygons, irregular spaced control point data or regular tessellations. Space-filling curves, also known as Peano scans, have several properties. First, the curve must pass once through every object in the space. Secondly, objects close to one another in the original space should be near one another in the path transform. Finally, the curve is a transformation of space such that an inverse operation exists to recover the original space.

A Y-Coordinate Projection Path Transformation For an irregular distribution of points, one path topology would be to connect the points based on their Y-coordinate value in a descending manner. Such a curve would preserve the nearness of points based on the projection of their Y-coordinate. P14 P12 P10 P5 P2

A Minimal Distance Path Transformation An alternative would be a minimal distance path. The minimal distance path passes through every object in space once given an origin and a final destination such that the total distance travelled between the origin and destination is minimized. However, no exact efficient algorithm exists to determine this path and different heuristics are normally used to find a close approximation to the true minimal distance path. P14 P12 P10 P2 P5

Row Order More interest has been shown in the space tranformation of tessellations. A number of Peano scans have been proposed to transform a square mesh. Each of these scans has certain desirable properties. The row-order, of course, is the simplest manner to organize all the cells of a square mesh.

Row-Prime The row-prime order minimized the total distance associated with the entire path.

Morton Order The Morton and Pi orders recursively subdivide the original space and are related to quad-trees in this manner. The address or sequence number of each object in the Morton and row orders can be easily computed.

Pi Order The Pi order, like the row-prime order, minimizes the total distance associated with the entire path.

Diagonal Order Diagonal order is also one of the common Peano scans.

Spiral Order It is also possible to store and retrieve tessellation data with spiral order.

Address Computation of Morton Order X | 1 2 3 4 5 6 7 Y 000 001 002 003 004 005 006 007 0 000 1 001 4 010 5 011 16 100 17 101 20 110 21 111 000 2 002 3 003 6 012 7 013 18 102 19 103 22 112 23 113 X 0 1 1 1 001 1 0 0 1 0 1 8 020 9 021 12 030 13 031 24 120 25 121 28 130 29 131 2 002 Y 1 0 0 10 022 11 023 14 032 15 033 26 122 27 123 3 30 132 31 133 003 32 200 33 201 36 210 37 211 48 300 49 301 52 310 53 311 4 004 For the Morton order, the binary digits of the X- and Y-coordinates are interlaced and the resulting bit string is partitioned into digit pairs. For example, the address of a point at coordinate (3, 4) in the original space is found by interweaving the binary strings 011 and 100 to form the string 100101. This digit string is next partitioned into 10-01-01 or 211 which is the base four representation of address 37. The ability to compute this address permits the back and forth transformation between the space-filling curve and the original space. These two properties have enabled the Morton order to be used in conjunction with quad-tree structures to construct linear quad-trees. For the row order, the binary string of the Y-coordinate is simply adjoined to the binary string of the X-coordinate. The address of the point at the coordinate (3, 4) is found by adjoining 100 to 011 to form the binary string 100011 which is the binary representation of address 35. 34 202 5 35 203 38 212 39 213 50 302 51 303 54 312 005 55 313 40 220 56 320 6 006 41 221 44 230 45 231 57 321 60 330 61 331 42 222 43 223 46 232 47 233 58 322 59 323 62 332 63 333 7 007

Summary Data organization remains an important topic in digital cartography. The structure that is chosen depends on the type of base map being stored and the purpose of the digital cartographic information processing system. Data organization remains an important topic in digital cartography. The structure that is chosen depends on the type of base map being stored and the purpose of the digital cartographic information processing system.

Questions for Review Which are the mainly used three tessellation data structures? Which properties do they have? What is the mostly used data structure for raster data? What are the data representations in raster data for points, lines, and regions? What is the scan line structure (or run- length coding)? How does a quad-tree record and restore a map image? Which are the mainly used three tessellation data structures? Which properties do they have? What is the mostly used data structure for raster data? What are the data representations in raster data for points, lines, and regions? What is the scan line structure (or run- length coding)? How does a quad-tree record and restore a map image?

Questions for Review What are the requirements for the space-filling curves (Peano scans)? According to your knowledge, what are the commonly used Peano scans? What are their advantages and disadvantages? Can you calculate the linear path topology address from the original cartesian coordinate system using Morton order? What is the reversal formula for the address transformation using the Morton order? What are the requirements for the space-filling curves (Peano scans)? According to your knowledge, what are the commonly used Peano scans? What are their advantages and disadvantages? Can you calculate the linear path topology address from the original cartesian coordinate system using Morton order? What is the reversal formula for the address transformation using the Morton order?