48
Map generalisation Reasons, measures, algorithms

Map generalisation Reasons, measures, algorithms

Embed Size (px)

Citation preview

Page 1: Map generalisation Reasons, measures, algorithms

Map generalisation

Reasons, measures, algorithms

Page 2: 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

Page 3: Map generalisation Reasons, measures, algorithms

point conversion(symbolisation)

aggregation (of polygons)

elimination

simplification

Page 4: Map generalisation Reasons, measures, algorithms
Page 5: Map generalisation Reasons, measures, algorithms

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

Page 6: Map generalisation Reasons, measures, algorithms

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

Page 7: Map generalisation Reasons, measures, algorithms

Need for generalisation

• Imperceptibility (too small)• Coalescence (visual collision, too close)• Congestion (too crowded, too much detail)• Consistency preservation

Page 8: Map generalisation Reasons, measures, algorithms

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

Page 9: Map generalisation Reasons, measures, algorithms

Operators: more examples

Partial line conversion

Exaggeration (enlargement)

Point-to-area conversion

Page 10: Map generalisation Reasons, measures, algorithms

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

Page 11: Map generalisation Reasons, measures, algorithms

Restrictions: urban

• Global shape• Global position• Orientation

• Not: separate buildings, precise shape, size, position

Page 12: Map generalisation Reasons, measures, algorithms

Some problems and conflicts

• Aggregation can give new coalescence

• Selection can disturb relative crowdedness

Page 13: Map generalisation Reasons, measures, algorithms

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

Page 14: Map generalisation Reasons, measures, algorithms

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)

Page 15: Map generalisation Reasons, measures, algorithms

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%

Page 16: Map generalisation Reasons, measures, algorithms

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

Page 17: Map generalisation Reasons, measures, algorithms

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)

Page 18: Map generalisation Reasons, measures, algorithms

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

Page 19: Map generalisation Reasons, measures, algorithms

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

Page 20: Map generalisation Reasons, measures, algorithms

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

Page 21: Map generalisation Reasons, measures, algorithms

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

Page 22: Map generalisation Reasons, measures, algorithms

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

Page 23: Map generalisation Reasons, measures, algorithms

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)

Page 24: Map generalisation Reasons, measures, algorithms

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

Page 25: Map generalisation Reasons, measures, algorithms
Page 26: Map generalisation Reasons, measures, algorithms

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

Page 27: Map generalisation Reasons, measures, algorithms

River selection

• Of a river system with branches, determine relative importance

• E.g. by the Strahler order

Page 28: Map generalisation Reasons, measures, algorithms

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

Page 29: Map generalisation Reasons, measures, algorithms

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

Page 30: Map generalisation Reasons, measures, algorithms

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

Page 31: Map generalisation Reasons, measures, algorithms

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

Page 32: Map generalisation Reasons, measures, algorithms

Region aggregation à la Jones et al.

• More general: triangulate all and test where aggregation is good

• Use constrained Delaunay triangulation

Page 33: Map generalisation Reasons, measures, algorithms

Delaunay and Constrained Delaunay Triangulation

• Delaunay: empty circle

• Constrained Delaunay: empty circle but with given edges

empty

Needn’t be empty

Page 34: Map generalisation Reasons, measures, algorithms

Constrained Delaunay Triangulation

Page 35: Map generalisation Reasons, measures, algorithms

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

Page 36: Map generalisation Reasons, measures, algorithms

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

Page 37: Map generalisation Reasons, measures, algorithms

Shape change of natural objects

• No restrictions on shape needed• Problem is self-coalescence, among which

degree of detail

Page 38: Map generalisation Reasons, measures, algorithms

Shape change natural objects

• Using triangulations: constrained Delaunay

• Add triangles to polygon or remove them if that “improves” the shape

Page 39: Map generalisation Reasons, measures, algorithms

Shape change natural objects

• Using morphologic operators: dilation, erosion, opening and closure

Dilation: thicken with a disc

Page 40: Map generalisation Reasons, measures, algorithms

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)

Page 41: Map generalisation Reasons, measures, algorithms

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

Page 42: Map generalisation Reasons, measures, algorithms

Shape change buildings

• Requirement to preserve axis-parallelity and character

Topo 1 : 25.000 Topo 1 : 50.000

Page 43: Map generalisation Reasons, measures, algorithms

Shape change buildings

• For example by edge-shifts to eliminate short edges

short edge

short edge

Page 44: Map generalisation Reasons, measures, algorithms

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

Page 45: Map generalisation Reasons, measures, algorithms

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

Page 46: Map generalisation Reasons, measures, algorithms

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, ...)

Page 47: Map generalisation Reasons, measures, algorithms

VD de-clustering

• Many iterations (too) even spread• Relative positions maintained more or

less• Can be applied to buildings, intersections

of roads, cities, ...

Page 48: Map generalisation Reasons, measures, algorithms

Generalisation - conclusion

• Difficult to automate problem• Many situations, conditions, possibilities,

exceptions• Order for applying operators is partially

unclear• Still an active research area