Map generalisation Reasons, measures, algorithms.

Slides:



Advertisements
Similar presentations
Guy EvenZvi LotkerDana Ron Tel Aviv University Conflict-free colorings of unit disks, squares, & hexagons.
Advertisements

CSE554Cell ComplexesSlide 1 CSE 554 Lecture 3: Skeleton and Thinning (Part II) Fall 2013.
1 Motion and Manipulation Configuration Space. Outline Motion Planning Configuration Space and Free Space Free Space Structure and Complexity.
CSE554Cell ComplexesSlide 1 CSE 554 Lecture 3: Shape Analysis (Part II) Fall 2014.
Efficient access to TIN Regular square grid TIN Efficient access to TIN Let q := (x, y) be a point. We want to estimate an elevation at a point q: 1. should.
Surface Reconstruction From Unorganized Point Sets
 Distance Problems: › Post Office Problem › Nearest Neighbors and Closest Pair › Largest Empty and Smallest Enclosing Circle  Sub graphs of Delaunay.
Searching on Multi-Dimensional Data
Label placement Rules, techniques. Labels on a map Text, name of map features No fixed geographical position Labels of point features (0-dim), line features.
Course Syllabus 1.Color 2.Camera models, camera calibration 3.Advanced image pre-processing Line detection Corner detection Maximally stable extremal regions.
Data Structure and Algorithms (BCS 1223) GRAPH. Introduction of Graph A graph G consists of two things: 1.A set V of elements called nodes(or points or.
Course Syllabus 1.Color 2.Camera models, camera calibration 3.Advanced image pre-processing Line detection Corner detection Maximally stable extremal regions.
1st Meeting Industrial Geometry Computational Geometry ---- Some Basic Structures 1st IG-Meeting.
Computational Geometry -- Voronoi Diagram
2. Voronoi Diagram 2.1 Definiton Given a finite set S of points in the plane , each point X of  defines a subset S X of S consisting of the points of.
Does Topology Control Reduce Interference? Martin Burkhart Pascal von Rickenbach Roger Wattenhofer Aaron Zollinger.
Computational Geometry and Spatial Data Mining
High-Quality Simplification with Generalized Pair Contractions Pavel Borodin,* Stefan Gumhold, # Michael Guthe,* Reinhard Klein* *University of Bonn, Germany.
I/O-Efficient Construction of Constrained Delaunay Triangulations Pankaj K. Agarwal, Lars Arge, and Ke Yi Duke University.
2-dimensional indexing structure
Graph Drawing Introduction 2005/2006. Graph Drawing: Introduction2 Contents Applications of graph drawing Planar graphs: some theory Different types of.
A Robust Interference Model for Wireless Ad-Hoc Networks Pascal von Rickenbach Stefan Schmid Roger Wattenhofer Aaron Zollinger.
1 Greedy Algorithms. 2 2 A short list of categories Algorithm types we will consider include: Simple recursive algorithms Backtracking algorithms Divide.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2007 Chapter 5: Voronoi Diagrams Wednesday,
University of CreteCS4831 The use of Minimum Spanning Trees in microarray expression data Gkirtzou Ekaterini.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2004 Chapter 5: Voronoi Diagrams Monday, 2/23/04.
Geometric Spanners for Routing in Mobile Networks Jie Gao, Leonidas Guibas, John Hershberger, Li Zhang, An Zhu.
Distance-Based Location Update and Routing in Irregular Cellular Networks Victor Chepoi, Feodor Dragan, Yan Vaxes University of Marseille, France Kent.
Randomized Planning for Short Inspection Paths Tim Danner Lydia E. Kavraki Department of Computer Science Rice University.
Mark Waitser Computational Geometry Seminar December Iterated Snap Rounding.
UNC Chapel Hill M. C. Lin Overview of Last Lecture About Final Course Project –presentation, demo, write-up More geometric data structures –Binary Space.
reconstruction process, RANSAC, primitive shapes, alpha-shapes
Label placement Rules, techniques. Labels on a map Text, name of map features No fixed geographical position Labels of point features (0-dim), line features.
Computing the Delaunay Triangulation By Nacha Chavez Math 870 Computational Geometry; Ch.9; de Berg, van Kreveld, Overmars, Schwarzkopf By Nacha Chavez.
R-Trees 2-dimensional indexing structure. R-trees 2-dimensional version of the B-tree: B-tree of maximum degree 8; degree between 3 and 8 Internal nodes.
1 University of Denver Department of Mathematics Department of Computer Science.
Area, buffer, description Area of a polygon, center of mass, buffer of a polygon / polygonal line, and descriptive statistics.
Visualization and graphics research group CIPIC January 21, 2003Multiresolution (ECS 289L) - Winter Surface Simplification Using Quadric Error Metrics.
E.G.M. PetrakisBinary Image Processing1 Binary Image Analysis Segmentation produces homogenous regions –each region has uniform gray-level –each region.
UNC Chapel Hill M. C. Lin Point Location Chapter 6 of the Textbook –Review –Algorithm Analysis –Dealing with Degeneracies.
Multi-Layered Navigation Meshes Wouter G. van Toll, Atlas F. Cook IV, Roland Geraerts ICT.OPEN 2011.
FEATURE EXTRACTION FOR JAVA CHARACTER RECOGNITION Rudy Adipranata, Liliana, Meiliana Indrawijaya, Gregorius Satia Budhi Informatics Department, Petra Christian.
A Navigation Mesh for Dynamic Environments Wouter G. van Toll, Atlas F. Cook IV, Roland Geraerts CASA 2012.
Minimal Spanning Trees What is a minimal spanning tree (MST) and how to find one.
More Graph Algorithms 15 April Applications of Graphs Graph theory is used in dealing with problems which have a fairly natural graph/network.
Primal-Dual Meets Local Search: Approximating MST’s with Non-uniform Degree Bounds Author: Jochen Könemann R. Ravi From CMU CS 3150 Presentation by Dan.
ADA: 14. Intro to CG1 Objective o give a non-technical overview of Computational geometry, concentrating on its main application areas Algorithm.
Surface Simplification Using Quadric Error Metrics Michael Garland Paul S. Heckbert.
A D V A N C E D C O M P U T E R G R A P H I C S CMSC 635 January 15, 2013 Quadric Error Metrics 1/20 Quadric Error Metrics.
Algorithms for Triangulations of a 3D Point Set Géza Kós Computer and Automation Research Institute Hungarian Academy of Sciences Budapest, Kende u
Chapter 9.  Mathematical morphology: ◦ A useful tool for extracting image components in the representation of region shape.  Boundaries, skeletons,
UNC Chapel Hill M. C. Lin Line Segment Intersection Chapter 2 of the Textbook Driving Applications –Map overlap problems –3D Polyhedral Morphing.
Voronoi Diagram (Supplemental)
Non-Manifold Multi-Tesselations From Meshes to Iconic Representations of Objects L. De Floriani, P. Magillo, E. Puppo, F. Morando DISI - University of.
Theme1 Generalisation and Symbolisation 《 Digital Cartography and Map Generalization 》
L9 – Generalization algorithms
References Books: Chapter 11, Image Processing, Analysis, and Machine Vision, Sonka et al Chapter 9, Digital Image Processing, Gonzalez & Woods.
Geometric Description
UNC Chapel Hill M. C. Lin Delaunay Triangulations Reading: Chapter 9 of the Textbook Driving Applications –Height Interpolation –Constrained Triangulation.
Zero Skew Clock Routing ECE 556 Project Proposal John Thompson Kurt Ting Simon Wong.
Example Apply hierarchical clustering with d min to below data where c=3. Nearest neighbor clustering d min d max will form elongated clusters!
CDS 301 Fall, 2008 Domain-Modeling Techniques Chap. 8 November 04, 2008 Jie Zhang Copyright ©
Course 3 Binary Image Binary Images have only two gray levels: “1” and “0”, i.e., black / white. —— save memory —— fast processing —— many features of.
Generalisation process and generalisation tools in Maanmittauslaitos
Game Theoretic Image Segmentation
Jonathan Damen Marc van Kreveld Bert Spaan
CS475 3D Game Development Level Of Detail Nodes (LOD)
Craig Schroeder October 26, 2004
CSE 554 Lecture 3: Shape Analysis (Part II)
Morphological Operators
Presentation transcript:

Map generalisation Reasons, measures, algorithms

Cartographic generalisation Changes that are necessary when reducing the map scale 1 : : : 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-coalescence Imperceptibility: area Coalescence: smallest distance Self-coalescence: small distance for points far apart on the line or curve. Possibilities e.g.: 1. Distance p,q 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 importance of 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 b 1, b 2, … Determine removal value F( type(a), type(b i ), boundary length(a,b i )), for i = 1, 2, … Node for a becomes child of node for b i for which F gives highest value (long boundary, types a and b i compatible) Remove boundary between a and b i and adjust the importance of b i

GAP-tree Compatibility table needed for types: heath and forest fairly compatible, lake and industry not so Importance can depend on type and size forest1 forest 2 Urban 1 Urban 2 lake corn Gras 1 Gras 2 Gras 3 road 1 road 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

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 : Topo 1 :

Shape change buildings For example by edge-shifts to eliminate short edges 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