L10 – Map labeling algorithms NGEN06(TEK230) – Algorithms in Geographical Information Systems L10- Map labeling algorithms by: Sadegh Jamali (source: Lecture.

Slides:



Advertisements
Similar presentations
Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps
Advertisements

Nelder Mead.
Neural and Evolutionary Computing - Lecture 4 1 Random Search Algorithms. Simulated Annealing Motivation Simple Random Search Algorithms Simulated Annealing.
Simulated Annealing Premchand Akella. Agenda Motivation The algorithm Its applications Examples Conclusion.
Thematic Map Design Thematic Map: Map that represents a particular theme or topic. Population Density, Literacy Rate, Temperature, etc. >>>> A limited.
Text Scaffolds for Effective Surface Labeling Gregory Cipriano and Michael Gleicher.
Recovering Human Body Configurations: Combining Segmentation and Recognition Greg Mori, Xiaofeng Ren, and Jitentendra Malik (UC Berkeley) Alexei A. Efros.
Acoustic design by simulated annealing algorithm
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.
Map Labeling Basic of Feature Labeling. What’s the difference?
CHAPTER 8 A NNEALING- T YPE A LGORITHMS Organization of chapter in ISSO –Introduction to simulated annealing –Simulated annealing algorithm Basic algorithm.
Clustering & image segmentation Goal::Identify groups of pixels that go together Segmentation.
Convex Hulls in Two Dimensions Definitions Basic algorithms Gift Wrapping (algorithm of Jarvis ) Graham scan Divide and conquer Convex Hull for line intersections.
Advanced Topics in Algorithms and Data Structures Lecture 7.1, page 1 An overview of lecture 7 An optimal parallel algorithm for the 2D convex hull problem,
Robert Pless, CS 546: Computational Geometry Lecture #3 Last Time: Convex Hulls Today: Plane Sweep Algorithms, Segment Intersection, + (Element Uniqueness,
Content Based Image Clustering and Image Retrieval Using Multiple Instance Learning Using Multiple Instance Learning Xin Chen Advisor: Chengcui Zhang Department.
Date:2011/06/08 吳昕澧 BOA: The Bayesian Optimization Algorithm.
1 Complexity of Network Synchronization Raeda Naamnieh.
Lecture 6: Huffman Code Thinh Nguyen Oregon State University.
MAE 552 – Heuristic Optimization Lecture 6 February 6, 2002.
GREEDY RANDOMIZED ADAPTIVE SEARCH PROCEDURES Reporter : Benson.
Prénom Nom Document Analysis: Data Analysis and Clustering Prof. Rolf Ingold, University of Fribourg Master course, spring semester 2008.
MAE 552 – Heuristic Optimization
Point Location Computational Geometry, WS 2007/08 Lecture 5 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät für.
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.
Simulated Annealing Van Laarhoven, Aarts Version 1, October 2000.
Point Feature Label Placement Bert Spaan. Overview  Introduction  Types of point labeling problems  Good and bad labeling  Complexity of point labeling.
MAE 552 – Heuristic Optimization Lecture 10 February 13, 2002.
Lecture 6: Point Location Computational Geometry Prof. Dr. Th. Ottmann 1 Point Location 1.Trapezoidal decomposition. 2.A search structure. 3.Randomized,
Introduction to Simulated Annealing 22c:145 Simulated Annealing  Motivated by the physical annealing process  Material is heated and slowly cooled.
Optimization of thermal processes2007/2008 Optimization of thermal processes Maciej Marek Czestochowa University of Technology Institute of Thermal Machinery.
Chapter 7 Visualization of Geographic Information and Generation of Information Products.
UNC Chapel Hill M. C. Lin Point Location Reading: Chapter 6 of the Textbook Driving Applications –Knowing Where You Are in GIS Related Applications –Triangulation.
Self-organizing map Speech and Image Processing Unit Department of Computer Science University of Joensuu, FINLAND Pasi Fränti Clustering Methods: Part.
RNA Secondary Structure Prediction Spring Objectives  Can we predict the structure of an RNA?  Can we predict the structure of a protein?
Heuristic Optimization Methods
Simulated Annealing.
Automatic Image Annotation by Using Concept-Sensitive Salient Objects for Image Content Representation Jianping Fan, Yuli Gao, Hangzai Luo, Guangyou Xu.
Thursday, May 9 Heuristic Search: methods for solving difficult optimization problems Handouts: Lecture Notes See the introduction to the paper.
Easiest-to-Reach Neighbor Search Fatimah Aldubaisi.
Non-Photorealistic Rendering and Content- Based Image Retrieval Yuan-Hao Lai Pacific Graphics (2003)
Simulated Annealing. Difficulty in Searching Global Optima starting point descend direction local minima global minima barrier to local search.
Probabilistic Algorithms Evolutionary Algorithms Simulated Annealing.
Local Search and Optimization Presented by Collin Kanaley.
Bryan Willimon IROS 2011 San Francisco, California Model for Unfolding Laundry using Interactive Perception.
CURE: EFFICIENT CLUSTERING ALGORITHM FOR LARGE DATASETS VULAVALA VAMSHI PRIYA.
Optimization Problems
1 Motion Fuzzy Controller Structure(1/7) In this part, we start design the fuzzy logic controller aimed at producing the velocities of the robot right.
L9 – Generalization algorithms
Heuristic Methods for the Single- Machine Problem Chapter 4 Elements of Sequencing and Scheduling by Kenneth R. Baker Byung-Hyun Ha R2.
Autonomous Robots Robot Path Planning (3) © Manfred Huber 2008.
Nottingham Image Analysis School, 23 – 25 June NITS Image Segmentation Guoping Qiu School of Computer Science, University of Nottingham
Lecture 6 – Local Search Dr. Muhammad Adnan Hashmi 1 24 February 2016.
Parameter Reduction for Density-based Clustering on Large Data Sets Elizabeth Wang.
ICCV 2007 National Laboratory of Pattern Recognition Institute of Automation Chinese Academy of Sciences Half Quadratic Analysis for Mean Shift: with Extension.
March 1, 2016Introduction to Artificial Intelligence Lecture 11: Machine Evolution 1 Let’s look at… Machine Evolution.
2IMA20 Algorithms for Geographic Data Spring 2016 Lecture 7: Labeling.
Optimization Problems
Scientific Research Group in Egypt (SRGE)
Heuristic Optimization Methods
Van Laarhoven, Aarts Version 1, October 2000
Summary on symbol design
Sheqin Dong, Song Chen, Xianlong Hong EDA Lab., Tsinghua Univ. Beijing
Optimization Problems
Module 6.
Introduction to Simulated Annealing
5.2.3 Optimization, Search and
Synthesis of Motion from Simple Animations
Xin-She Yang, Nature-Inspired Optimization Algorithms, Elsevier, 2014
Artificial Intelligence
Presentation transcript:

L10 – Map labeling algorithms NGEN06(TEK230) – Algorithms in Geographical Information Systems L10- Map labeling algorithms by: Sadegh Jamali (source: Lecture notes in GIS, Lars Harrie) 1

Labels are an essential aspect of maps. For example, on maps for mobile applications, it is necessary to label roads, landmarks, and …. to help users understand their location and the environment. The labels should be easy to read and should follow basic cartographic rules. The cartographic rules are analytically defined and implemented in computer programs. L10- Map labeling algorithms Background 2

 to provide some basics of algorithms for automated map labelling. L10- Map labeling algorithms Aim 3 Content 1. Basic cartography theory 2. Label placement by combinatorial optimization 3. Label placement by slider model

L10- Map labeling algorithms 4 Generally, there are two things that are important for labels: proper font type and size good position. 1. Basic cartography theory

L10- Map labeling algorithms 5 Font type and size Figure. The two main font families (From Jenny et al. 2008). Example of Sans Serif family: Verdena and Frutiger Font size: at least 12 points. Note: to distinguish between different label types, you could use wide letter spacing, varying font size and bold/italic style.

L10- Map labeling algorithms 6 Label position To be good positioned, the labels should: 1) not overlap 2) not obscure other map objects 3) placed in a good position relative to the referent.

Preferred positions for point labels Slocum et al. (2005) L10- Map labeling algorithms 7

Slocum et al. (2005) L10- Map labeling algorithms 8 Preferred positions for line labels

Slocum et al. (2005) L10- Map labeling algorithms 9 Preferred positions for area labels

L10- Map labeling algorithms Label placement by combinatorial optimization Label placement can be defined as a combinatorial optimization problem. To find the optimal combination of placement a cost function (f) is created.

L10- Map labeling algorithms 11 Cost function The best solution: the solution with the smallest cost.

L10- Map labeling algorithms 12 So how to find the best possible solution? we can adopt an iterative improvement algorithm. Challenge!

13 simulated annealing allows moving towards both lower (better) and upper (worse) neighboring positions, where a worse position is accepted with a probability decreasing over time the probability is controlled by a parameter denoted as temperature, which decreases over time and thus forms a number of temperature stages by accepting worse positions with a decreasing probability, simulated annealing may escape from a local optimal position and reach the global optimal position (Russell and Norvig 1995). L10- Map labeling algorithms Iterative improvement algorithm can be illustrated as a search process on the surface of a landscape each position = a specific configuration, i.e., a solution, with an elevation representing the “cost” of the solution moves around to find the lowest position on the landscape can be realized by a slope descending algorithm slope descending may be terminated at local lowest positions

14 L10- Map labeling algorithms Combinatorial optimization schema 1) Labels are initially placed at the position with best placement properties. 2) Create a cost function to reflect cartographic requirements and aesthetic principles. 3) Start an optimization using the simulated annealing schema. For each iteration a label is randomly selected. 4) Run the process until a minimum of the cost function is found.

L10- Map labeling algorithms Label placement by slider model In the combinatorial optimization: a fixed number of positions are allowed. Slider model: much more positions are allowed (leads to enhanced cartographic quality of the labels). Constraints: 1)labels should be legible 2)each label should be properly associated to the feature that it describes (i.e. feature and its label are not separated).

L10- Map labeling algorithms 16 Slider Model ( Zhang and Harrie(2006a,b) ) Phases: 1)all possible positions for the label are computed. 2)the candidate positions are reduced according to conflict detection. 3)finally a position is selected from the reduced candidate set to label the feature.

L10- Map labeling algorithms 17 Slider Model: point labeling algorithm Input data: a point set (to be labeled) and other feature classes (acting as obstacles) Algorithm workflow: 1.Select a point sequentially from the point set, and create four rectangular boxes around the point (“range boxes”). Figure: (a) The top range box of a point feature.

L10- Map labeling algorithms 18 The workflow: 2. Select the range boxes of a point feature sequentially, and search for the obstacles in conflict with this box. 3. For each conflicting obstacle, compute the intersection between the obstacle and the range box. If any intersection exists, reduce the range box using the intersection. Figure: (b) The reduced range boxes (left and bottom) of a point feature in conflict with a line feature.

L10- Map labeling algorithms 19 Reduction of a range box: depends on the location and size of the intersection between the range box and the obstacle. If there is an object O (label or cartographic feature) that overlaps the range box RB, then the intersection I has the properties: where MBR is the minimum bounding box function.

L10- Map labeling algorithms 20 Then the range box RB will be reduced to a new range box RBnew as follows (if it is a top or bottom range boxes; left and right range boxes are treated similarly): Figure: Reduce a range box in conflict with an obstacle

L10- Map labeling algorithms 21 The workflow: 4. select a position to place the label inside the reduced range box according to position preference. 5. Go back to step 1) to deal with the next point’s labelling. The computational complexity: O (nk+nm) Step 2): O (nk) n: the number of point features to be labeled k: the number of obstacles Step 3): O (nm) m: the average number of conflicting obstacles for each point to be labeled

L10- Map labeling algorithms 22 Slider Model: line labeling algorithm Steps: 1)search for all the long line segments along a line as candidate positions. 2)Candidate positions along each segment are reduced to a part of the original positions, without conflict to any obstacles.

L10- Map labeling algorithms 23 Input data: a line set (to be labeled) and several feature classes (acting as obstacles) Algorithm workflow: 1.Select a line sequentially, and create its generalized version using the Douglas-Peucker algorithm. 2.Search for segments long enough for label placement. 3.Search for the longest segment. 4.Create a range box with orientation along the longest segment. 5.Search for obstacles in conflict with the range box, and shrink the range box according to conflict detection. 6.If the reduced range box is long enough, then reduce its size to the size of corresponding label text, shrinking its two sides towards the centroid. Otherwise, search for the second longest segment, then go back to step 4) to find a labelling position for the line. 7.Go back to step 1) to deal with the next line’s labelling.

L10- Map labeling algorithms 24 The computational complexity: O (nk+nm) n: the number of line features to be labeled k: the number of obstacles m: the average number of conflicting obstacles for each line to be labeled.

L10- Map labeling algorithms 25 A case study Note: only one label is created for each road feature. So the routine for merging the road segments was successful in this case study. Figure: Labels placed automatically by the slider method (source: National Land Survey of Finland)