Data Structure Transformation I

advertisement
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 (1degree 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
Population at counties
6
x 10
4.6

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
4.5
4.4
4.3
4.2
4.1
4
3.9
3.8
3.7
3.6
0
2
4
6
5
x 10
Population at watersheds=?
6
x 10
4.6
4.5
4.4
4.3

Greatest common geographic units: Full
overlap set for reassignment
4.2
4.1
4
3.9
3.8
3.7
3.6
0
2
4
6
5
x 10
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.uszeged.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/.../gr
adient/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
Download