18
Lecture 09: Data Structure Transformations Geography 128 Analytical and Computer Cartography Spring 2007 Department of Geography University of California, Santa Barbara

Lecture 09: Data Structure Transformations Geography 128 Analytical and Computer Cartography Spring 2007 Department of Geography University of California,

  • View
    219

  • Download
    1

Embed Size (px)

Citation preview

Lecture 09: Data Structure Transformations

Geography 128

Analytical and Computer Cartography

Spring 2007

Department of Geography

University of California, Santa Barbara

Why Transform Between Structures?

"In virtually all mapping applications it becomes necessary to convert from one cartographic data structure to another. The ability to perform these object-to-object transformations often is the single most critical determinant of a mapping system's flexibility" (Clarke, 1995)

Geocoding stamps coordinate system, resolution and projection onto objects

Data usually in generic formats at first

Can save space, gain flexibility, decrease processing time

Suit demands of analysis and modeling

Suit demands of map symbolization (e.g. fonts)

Generalization Transformations- Why Generalize?

Conversion of data collected at higher resolutions to lower resolution. Less data and less detail.

Simplicity -> clarity

Information will be lost

John Krygier and Denis Wood, Making Maps: a visual guide to map design for GIS

Generalization Transformations - Point-to-Point

Centroid

Map projections

Usually be seen as a part of Geocoding process

USGS 1:250,000 3-arc second DEM format (1-degree block)

Generalization Transformations - Line-to-Line Generalization

N-th Point retention

Equidistant re-sampling

Douglas-Peucker

Douglas-Peucker line generalization

Generalization Transformations - Line-to-Line Enhancement

Splines

Bezier Curves

Polynomial Functions

Trigonometric Functions (Fourier-based)

Generalization Transformations - Area-to-Area

Problem is given one set of regions, convert to another

– Example: Convert census tract data to zip codes for marketing

– Example: Convert crime data by police precinct to school district

May require dividing non-divisible measures, e.g population

– Areal Interpolation

Greatest common geographic units: Full overlap set for reassignment

0 2 4 6

x 105

3.6

3.7

3.8

3.9

4

4.1

4.2

4.3

4.4

4.5

4.6

x 106

Population at counties

0 2 4 6

x 105

3.6

3.7

3.8

3.9

4

4.1

4.2

4.3

4.4

4.5

4.6

x 106

Population at watersheds=?

Generalization Transformations - Area-to-Area

Algorithm for Overlay – 1. Intersections – 2. Chain splitting – 3. Polygon reassembly

– 4. Labeling and attribution

Generalization Transformations Volume-to-Volume

Common conversion between two major data structures, vector (TIN) and grid

Often via points and interpolation– Change cell size– Generate a new grid– Compute the intersect– Interpolate from neighboring cells

Problem of VIPs

www.soi.city.ac.uk/~jwo/phd/04param.php

Vector-to-Raster Transformations

Easy compared to inverse, a form of re-sampling

Grid must relate to coordinates (extent, bounds, resolution, orientation)

Rasters can be square, rectangular, hexagonal.

Resample at minimum r/2

Problem: What value goes into the cell?– Dominant criterion– Center-point criterion

Separate arrays for dimensions and binary data?

Index entries & look up tables

Vector-to-Raster Transformations (cnt.)- Algorithm

Convert form of vectors (e.g. to slope intercept)

Sample and convert to grid indices

Thin fat lines

Compute implicit inclusion (anti-alias)

www.inf.u-szeged.hu/~palagyi/skel/skel.html

Vector-to-Raster Transformations (cnt.)- Example

Raster-to-Vector Transformations

Much harder, more error prone.

May involve cartographer intervention

Importance of alignment

Can do points, lines, area

Raster-to-Vector Transformations- Algorithm

Skeletonization and Thinning – Peeling – Expanding

– Medial Axis

Feature Extraction

Topological Reconstruction

Raster-to-Vector Transformations- Edge Detection

Grid Scan

Matrix Algebra - filtering

fourier.eng.hmc.edu/.../gradient/node9.html

Data Structure Transformations

Scale transformations are lossy

(re)storage produce error

algorithmic error, systematic and random

Types are: scale, structural (data structure), dimensional, vector-to-raster

The Role of Error

Kate Beard: Source error, use error, process error

Morrison: Method-produced error

Error is inherent, can it be predicted, controlled or minimized?

XT = X'

X' T^-1 = X + E

Errors are– positional – attribute – systematic – random – known – uncertain – Errors can be attributed to

poor choice of transformations

– Incompatible sequences of T's (non-invertible)

– "Hidden" Error=use error, not process error

Next Lecture

Map Design