620 likes | 1.27k Views
Map generalisation. Reasons, measures, algorithms. C artogra ph ic generalisati on. Changes that are necessary when reducing the map scale. 1 : 50.000. 1 : 25.000. 1 : 50.000 enlarged. p oi nt conversi on (symbolisati on ). eliminati on. simplificati on. aggregation ( of polygon s ).
E N D
Map generalisation Reasons, measures, algorithms
Cartographic generalisation • Changes that are necessary when reducing the map scale 1 : 50.000 1 : 25.000 1 : 50.000 enlarged
point conversion (symbolisation) elimination simplification aggregation (of polygons)
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 needfor generalisation- local need (conflict)- global need: too many details, themes • Means: operatorsthat change the map • Restrictionsthat prescribe what the operatorsmay do • Algorithmsfor the operators
Needfor generalisation • Imperceptibility (toosmall) • Coalescence (visual collision, tooclose) • Congestion (toocrowded, toomuch detail) • Consistencypreservation
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 Point-to-area conversion Exaggeration (enlargement)
Restricting conditions (measures) • Minimum area(against imperceptibility) • Minimum distance(against coalescence) • Minimum `width’(against self-coalescence) • Maximum number of objects in someregion(against congestion) • Preservation global shape, size, orientation, ... • Preservation relative crowdedness
Restrictions: urban • Global shape • Global position • Orientation • Not: separate buildings, precise shape, size, position
Aggregation can give new coalescence Selection can disturb relative crowdedness Some problems and conflicts
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 ofan operator • Smallestdisplacement • Largestsubset(selection; best represent.) • Smallestsubset(selection; least clutter) • Smallestperimeter(shape change) • Smallestareaof symmetric difference(shape change, aggregation) • Smallest Hausdorff distance(shape change)
Measuresfor imperceptibility, coalescence, self-coalescence Imperceptibility: area Coalescence: smallestdistance Self-coalescence: smalldistancefor pointsfar aparton the line orcurve. Possibilitiese.g.: 1. Distancep,q < , distance oncurve > 3 •d(p,q) 2. Each circle [center oncurve] withradius 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 radiusc/iwith center oncity with importancei • For eachcity, in decreasing importance order:- ifits circledoesn’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) • Determineschoice order, not one selection • Desired number of cities can be specified • Settlement spacing model has no monotonocity. For smallerc: • in principle morecitiesare selected, but not always; • it can happen that a city that appears in a small selectiondoesn’tappear in a bigger one artifacts when zooming
Circle growth model • Choose city with biggest importancei_max • Given a constant c, put circlewith radiusc iwith center on city withimportance i • Increasecand determine the city whose circleis covered last by the circle of the chosen city • Assign the chosencity an importanceofi_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 regiona. • Determineneighboring areasb1, b2, … • Determineremoval valueF( type(a), type(bi), boundary length(a,bi)), fori = 1, 2, … • Nodefor abecomes child of node forbi for whichFgives highest value (longboundary, types aandbicompatible) • Removeboundarybetweenaandbi and adjust theimportance ofbi
GAP-tree 2 • Compatibility table needed for types: heath and forest fairly compatible, lake and industry not so • Importance can depend on typeand size 1 2 1 2 1 3 Gras 1 Gras 2 Gras 3 road 1 road 2 Urban 1 lake Urban 2 forest 2 forest1 corn 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: empty circle Constrained Delaunay: empty circle but with given edges Delaunay and Constrained Delaunay Triangulation empty Needn’t be empty
Constrained Delaunay Triangulation • Can be constructed in O(n log n) time (Chew, ’87) with sweep algorithm • Incremental also possible Usage: Places where aggregation is possible because objects are close enough and boundary length is reduced
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