l9 – generalization algorithms ngen06 & tek230: algorithms in geographical information systems...
TRANSCRIPT
L9 – Generalization algorithms
NGEN06 & TEK230: Algorithms in Geographical Information Systems
by: Sadegh Jamali (source: Lecture notes in GIS, Lars Harrie)1
L9- Generalization algorithms
2
Background
Cartographic generalization: • an application where previous algorithms support it.• has always been a central issue in map production. • the process of simplifying a representation to suit the
scale and purpose of a map.• such as generalizing a map at a scale of e.g. 1:10 000
to produce a map at a smaller scale of e.g. 1:50 000.
• By the use of digital maps, in the 1970s, studies of automating the generalization process was initialized.
• since then some of the developed algorithms have been implemented in commercial mapping and GIS software.
L9- Generalization algorithms
3
Aim
• to learn about cartographic generalization• to get examples of the use of previous described algorithms
(foremost in LN4 to LN8)
Content
1. Introduction to cartographic generalization
2. Generalization operatros
L9- Generalization algorithms
4
Introduction
Definition of cartographic generalisation
“Selection and simplified representation of detail appropriate to the scale and/or the purpose of a map” (ICA, 1973, p. 51.10).
Types of cartographic generalization methods
Raster versus vector generalisationRaster methods: applied to raster dataVector methods: applied to vector data
Real-time versus map production generalization Real time: - only concerned with displaying data (no new data-set)
- a multiple-scale geographic information system - low computational complexity prerequisite
Map production: - the computational efficiency demands are not so important - higher requirements for cartographic quality
L9- Generalization algorithms
© Lantmäteriverket, Sweden. Printed by permission 507-98-4091
5
L9- Generalization algorithms
Examples of cartographic generalisation
Figure: manually generalization of a vector-format topographic map.
Scale = 1:10 000 Scale = 1:50 000
6
Figure: Automatic raster-based generalization of CORINE land-cover data (modified from Jaakola, 1997).
2525m 100100m
225225m 500500m
L9- Generalization algorithms
7
Generalization is a complex problem!
There is no simple algorithm to generate generalized maps!
L9- Generalization algorithms
To simplify the automation of generalization, the process is divided into some
sub-processes (operators)
8
Generalization operators
• Simplification • Smoothing • Aggregation • Amalgamation• Selection• Classification • Displacement • Collapse
L9- Generalization algorithms
9
Simplification
It reduces the number of points in a line, while retaining the most representative points.
Figure: Simplification transformation.
L9- Generalization algorithms
10
Douglas-Peucker algorithm (Douglas and Peucker, 1973)
• the most commonly used simplification algorithm• computationally efficient • it requires O(n log n) time where n= the number of points on the line.• the algorithm is based on computing the distances between points and lines
(LN5)
Figure: The Douglas-Peucker algorithm
L9- Generalization algorithms
11
Wang and Müller algorithm (1998):
• line generalization based on an analysis of bends using rules, such as:
- small bends should be removed - two similar consecutive bends should be
combined into one bend - three bends can be represented as two, etc
L9- Generalization algorithms
12
Figure: A comparison of a line simplified with Douglas-Peucker algorithm and Wang- Müller algorithm. (Wang and Müller, 1998, p. 14)
L9- Generalization algorithms
13
Smoothing Smoothing aims at reducing the angularity of lines
Figure: Smoothing transformation
Commonly used smoothing algorithms:• spline-functions and B-splines, Gaussian smoothing and
frequency filters. • B-splines are continuous (continuous first and second
derivatives) and, accordingly, have a smooth appearance (LN5).
L9- Generalization algorithms
14
Gaussian smoothing The original line is represented by a vector:
L9- Generalization algorithms
15
Aggregation This operator reduces the number of objects by aggregating objects of any dimension to area objects.
Figure: Aggregation transformation
L9- Generalization algorithms
16
Joubran and Gabay (2000) algorithm:
- creating Delaunay triangulation to the original objects - removing the edges longer than a given threshold
Figure: Aggregation of a building cluster. (Joubran and Gabay, 2000, p. 422)
L9- Generalization algorithms
17
Amalgamation
It combines area objects to accomplish a simpler appearance of the objects.
Figure: Amalgamation transformation.
Note: it is mainly performed for land use and land cover data (raster data).
L9- Generalization algorithms
18
L9- Generalization algorithms
Morphological operators
Shrink
Expand
19
Figure: Example of simplification and amalgamation of a raster map (Schylberg, 1993, p. 103)
the original raster map
An example
the simplified and amalgamated map
L9- Generalization algorithms
20
Selection Selection aims at solving problems associated with too high density of objects by leaving some of them out.
Figure: Selection transformation
L9- Generalization algorithms
21
Steps of a selection algorithm: 1) identifying regions of high density of objects
This is performed by a clustering technique of building objects (e.g., a minimum spanning tree (LN3; O’Rourke,
1993 for details)).
2) removing some of the objects within these regions
When clusters were defined as connected building objects, a density analysis is performed and then objects are removed.
L9- Generalization algorithms
Radical law: the ratio of the number of objects in two maps should equal the square root of the ratio of the map scales
22
Classification reclassifying objects to a new object type
Figure 9.12: Classification transformation
L9- Generalization algorithms
23
Figure: Membership functions for classical set theory (a), fuzzy set theory (b) and rough set theory (c).
Problem: maps use classical set theory (i.e. unique object type for each object) but classic set operations do not always give satisfactory results for e.g. geographic entities.
Note: non-classically set based operators are useful for thematics data such as soil and vegetation.
L9- Generalization algorithms
Mem
bers
hip
func
tion
24
Displacement
Figure: Displacement transformation
Visualization of geographic data on small-scale and mid-scale maps often leads to spatial conflicts, mainly due to the exaggeration of the symbol size. In the displacement transformation spatial conflicts are solved by moving and/or distorting objects
L9- Generalization algorithms
25
Types of optimization techniques used for displacement: 1) combinatorial 2) optimization with continuous variables.
Figure (the combinatorial method): a) Original map. b) Map at reduced scale, c) Spatial conflicts have been resolved by displacement. d) Trial positions; tp1 is the original position of the object in question; Ddisp is the maximum displacement distance. (Ware and Jones, 1998)
L9- Generalization algorithms
n objects, each with k possible positions, so it’s a combinatorial optimization problem with a search space of size .
26
Optimization with continuous variables
The main idea is to define a set of constraints (rules) that the generalized map should obey, such as:
there should be no proximity conflicts between the objects and that the objects’ characteristics should not change.
Then by using mathematical methods the map is stretched (as in a rubber sheet transformation, cf. LN1) to find a solution that is optimal (according to the constraints).
L9- Generalization algorithms
27
Harrie (2001)
Bader (2001)
Figure: Automatic displacement of road objects using continuous variables.
L9- Generalization algorithms
28
Collapse The collapse operator decomposes an area object into a point (or line) object, or two line objects into one line object.
Figure: Collapse transformation
Note: a common approach to collapsing an area object into a point object is to set the geometry of the point object equal to the center of the minimum bounding rectangle of the area object.
L9- Generalization algorithms