Upload
casey-thresher
View
225
Download
3
Tags:
Embed Size (px)
Citation preview
Map generalisation
Reasons, measures, algorithms
Cartographic generalisation
• Changes that are necessary when reducing the map scale
1 : 25.000
1 : 50.000
1 : 50.000 enlarged
point conversion(symbolisation)
aggregation (of polygons)
elimination
simplification
Reasons for generalization
• Less crowdedness, distracting detail on the map
• Improve visibility of objects that would become too small
• Better visualisation through symbolisation• Moving to avoid visual collisions
Framework (McMaster & Shea)
• Discover the need for generalisation- local need (conflict)- global need: too many details, themes
• Means: operators that change the map• Restrictions that prescribe what the
operators may do• Algorithms for the operators
Need for generalisation
• Imperceptibility (too small)• Coalescence (visual collision, too close)• Congestion (too crowded, too much detail)• Consistency preservation
Means: the operators
• Selection/elimination• Displacement• Shape change• Aggregation• Dissolution• Reclassification
• Typification
• Exaggeration• Point, line, area
conversion
deciduous forest, coniferous forest forest
Municipality boundaries province boundaries
Operators: more examples
Partial line conversion
Exaggeration (enlargement)
Point-to-area conversion
Restricting conditions (measures)
• Minimum area (against imperceptibility)• Minimum distance (against coalescence)• Minimum `width’ (against self-coalescence)• Maximum number of objects in some region
(against congestion)• Preservation global shape, size, orientation, ...• Preservation relative crowdedness
Restrictions: urban
• Global shape• Global position• Orientation
• Not: separate buildings, precise shape, size, position
Some problems and conflicts
• Aggregation can give new coalescence
• Selection can disturb relative crowdedness
Problems: four classes
• Geometric: too small objects, too close• Topologic: self-intersection, wrong face• Semantic: river that flows hill up after
generalisation contour lines and river• Gestalt (impression): map crowdedness too
much dispersed
Possible optimalisations of an operator
• Smallest displacement • Largest subset (selection; best represent.)• Smallest subset (selection; least clutter)• Smallest perimeter (shape change)• Smallest area of symmetric difference
(shape change, aggregation)• Smallest Hausdorff distance (shape change)
Measures for imperceptibility, coalescence, self-
coalescenceImperceptibility: area
Coalescence: smallest distance
Self-coalescence: small distance for points far apart on the line or curve. Possibilities e.g.:
1. Distance p,q < , distance on curve > 3 • d(p,q)
2. Each circle [center on curve] with radius 2x the line thickness is filled more than 70%
Measure for congestion?
• Influenced by line length, line style, color• Influenced by number and type of point
symbols, color• Influenced by boundary length between
region, color, contrast• Influenced by patterns, regularities
Examples of generalisation methods
• Settlement selection (Poiker, v. Oostrum et al.)
• Road selection (Thompson & Richardson)• River selection (Strahler order)• Region selection (GAP tree)• Aggregation (via triangulations)• Shape change (natural objects, buildings)• Displacement (iterative using VD)
Settlement selection
• Keep big (important) cities• Keep cities if there is no city close by• Input: cities (points) with importance
value
Eight biggest:
With spread model
Settlement spacing ratio (Langran & Poiker ‘86)
• Given a constant c, put circle with radius c/i with center on city with importance i
• For each city, in decreasing importance order:- if its circle doesn’t contain a previously chosen city (point), then choose it
Big city small circle good `chance’ to be selected
City close to chosen (hence bigger) city circle can contain it city won’t be chosen
Circle growth model(v. Kreveld, v. Oostrum, Snoeyink ‘97)
• Determines choice order, not one selection
• Desired number of cities can be specified• Settlement spacing model has no
monotonocity. For smaller c:– in principle more cities are selected, but not
always;– it can happen that a city that appears in a
small selection doesn’t appear in a bigger one
artifacts when zooming
Circle growth model
• Choose city with biggest importance i_max
• Given a constant c, put circle with radius c i with center on city with importance i
• Increase c and determine the city whose circle is covered last by the circle of the chosen city
• Assign the chosen city an importanceof i_max
Circle growth model
• Brute-force implementation: O( n³ ) time• By maintaining the nearest chosen city
for each not chosen city: O( n² ) time• With Voronoi diagrams and maintaining
nearest chosen city: O(n log n) typical– Voronoi diagram of chosen cities– Maintain heap on non-chosen cities in each
Voronoi cell– Update structures when a next city is chosen
Road selection
• Which roads of a network can stay when generalizing?
• Depends on classification road (highway, provincial road, local road, minor road)
• Depends on importance of the connection• ... more criteria ...
• Input: road network with classification, and important places (cities)
Road selection approach à la Thomson & Richardson ‘95
• For each pair of important places, determine shortest/fastest route in whole network
• Determine this way for each road segment how often it lies on a shortest/fastest route
• Choose threshold and choose all road segments are used more often than the threshold on a shortest/fastest route
Thomson & Richardson
• No guarantees on imperceptibility, coalescence, congestion
• Can be post-processed:- line simplification- line displacement- open up small loops - symbols for important junctions, roundabouts, intersections
River selection
• Of a river system with branches, determine relative importance
• E.g. by the Strahler order
Area selection
• For a subdivision, determine order to merge regions into a neighboring region
• GAP-tree approach (v. Oosterom ’94)(GAP = Generalized Area Partitioning)
• Input: Subdivision and for each region its type and importance. Also: “removal function” F to choose best neighbor
GAP-tree construction
• Determine least important region a.• Determine neighboring areas b1, b2, …• Determine removal value F( type(a),
type(bi), boundary length(a,bi)), for i = 1, 2, …
• Node for a becomes child of node for bi
for which F gives highest value (long boundary, types a and bi compatible)
• Remove boundary between a and bi and adjust the importance of bi
GAP-tree
• Compatibility table needed for types: heath and forest fairly compatible, lake and industry not so
• Importance can depend on typeand size
forest1
forest 2
Urban 1Urban 2lake
corn
Gras 1
Gras 2 Gras 3road 1road 2
1
2
3
12
1 2
island
Region aggregation à la Jones et al. ‘95
• Triangulate between objects to be aggregated
• Aggregate if:- the distance is small over a stretch- it reduces total boundary length
Region aggregation à la Jones et al.
• More general: triangulate all and test where aggregation is good
• Use constrained Delaunay triangulation
Delaunay and Constrained Delaunay Triangulation
• Delaunay: empty circle
• Constrained Delaunay: empty circle but with given edges
empty
Needn’t be empty
Constrained Delaunay Triangulation
Constrained Delaunay Triangulation
Places where aggregation is possible because objects are close enough and boundary length is reduced
Usage:
• Can be constructed in O(n log n) time (Chew, ’87) with sweep algorithm
• Incremental also possible
Aggregation buildings
• Flatten triangles in between• Reorient buildings• Test for possible conflicts
Area preservation and more or less shape preservation
Area preservation and more generalization
Shape change of natural objects
• No restrictions on shape needed• Problem is self-coalescence, among which
degree of detail
Shape change natural objects
• Using triangulations: constrained Delaunay
• Add triangles to polygon or remove them if that “improves” the shape
Shape change natural objects
• Using morphologic operators: dilation, erosion, opening and closure
Dilation: thicken with a disc
Shape change natural objects
• Dilation: thicken with disc, Minkowski sum• Erosion: make thinner by thickening
outside with a disc, Minkowski subtraction• Opening: first erosion, then dilation (same
radius circle)• Closure: first dilation, then erosion
Ero(X) Ope(X) X Clo(X) Dil(X)
Shape change natural objects
• Dilation: removes detail but takes more space (on map) and can change topology (make holes)
• Erosion: removes detail but can cause imperceptibility and change topology (make object disconnected)
• Opening, closure: removes detail, but can change topology, and doesn’t always solve self-coalescence
Shape change buildings
• Requirement to preserve axis-parallelity and character
Topo 1 : 25.000 Topo 1 : 50.000
Shape change buildings
• For example by edge-shifts to eliminate short edges
short edge
short edge
Displacement
• Against coalescence: needed if objects are too close- buildings near buildings- buildings near roads
• De-clustering too crowded regions at the cost of empty regions
• Apply moderately to keep map impression, i.e., relative crowdedness
• Risk of disturbing regularity, patterns
Displacement: two approaches
• Incremental approach: locate problems and solve one by one by displacement
• Global approach: no order needed for solution, iterative de-clustering with Voronoi diagrams
VD de-clustering: idea
• Set P of points:– Compute VD of P (in a bounded region)– Move each point to the center of gravity of
its Voronoi cel– Iterate (so: recompute VD, move, ...)
VD de-clustering
• Many iterations (too) even spread• Relative positions maintained more or
less• Can be applied to buildings, intersections
of roads, cities, ...
Generalisation - conclusion
• Difficult to automate problem• Many situations, conditions, possibilities,
exceptions• Order for applying operators is partially
unclear• Still an active research area