Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto...
-
Upload
hannah-white -
Category
Documents
-
view
218 -
download
3
Transcript of Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto...
![Page 1: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/1.jpg)
Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps
Missae YamamotoGilberto CamaraLuiz Antonio Nogueira Lorena
![Page 2: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/2.jpg)
Schedule Definition
Label placement potential label positions cartographic preference
The combinatorial explosion of possible solutions
Conflict graph and adjacency matrix FALP - Fast Algorithm for Label Placement Results Sample of label placement for 1000 points Conclusion
![Page 3: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/3.jpg)
Label placement (FONTE: Edmondson et. al. (1996, p. 14).
![Page 4: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/4.jpg)
The label placement problem
We want our maps to be legible
Name placement can be one of the most time-consuming aspects of map production,
Names must not overlap
Names must be clearly associated with the features they annotate
![Page 5: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/5.jpg)
A good map must be easily readable Source: ESRI
![Page 6: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/6.jpg)
Why fast algorithms for label placement?
Web maps are very popular Map servers allow the user to combine
many layers Layers have text associated Unfeasible to pre-compute all label
arrangements
We need fast ways to generate good quality maps for web map servers
![Page 7: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/7.jpg)
Source: Institute for Cartography and Geoinformation, University of Bonn
![Page 8: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/8.jpg)
A set of potential label positions and their cartographic preference
(best = 1; worse = 4)
![Page 9: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/9.jpg)
the combinatorial explosion of possible solutions
P1/L0 P1/L1
P2/L1P2/L0 P2/L0 P2/L1
P3/L1P3/L0P3/L1P3/L0
•
•
•
•
•
• •
•
•
•
•
• •
1 point2¹ configurations
2 points2² configurations
3 points2³ configurations
•
•
•
1000 points2¹ººº configurations
• •
L0 L1•
![Page 10: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/10.jpg)
Two points – potential label positions and corresponding conflict graph
Candidate label positions Conflict graph (linked nodeshave conflicts)
![Page 11: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/11.jpg)
A conflict graph as an adjacency matrix
Number of conflicts (node degree): L5 = 4
![Page 12: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/12.jpg)
Fast Algorithm for Label Placement (FALP)
![Page 13: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/13.jpg)
A fast algorithm for label placement
1. Create the conflict graph (done off-line).
2. Use the conflict graph to label as many points as possible.
3. Create a labeling for the remaining points
4. Use local search to improve map quality.
![Page 14: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/14.jpg)
The maximum nonconflict labeling algorithm
(Uses the conflict graph to label as many points as possible.)
![Page 15: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/15.jpg)
Example of label arrangement
![Page 16: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/16.jpg)
Adjacency matrix for example
![Page 17: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/17.jpg)
Label with least conflicts is L24Solution1 = {(P6, L24)}
![Page 18: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/18.jpg)
Label with least conflicts is L02Solution 2 = {(P6, L24), (P1,
L02)}
![Page 19: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/19.jpg)
Label with least conflicts is L05 Solution3 = {( P6, L24), (P1, L02),
(P2, L05)}
![Page 20: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/20.jpg)
Two labels with 4 conflicts (L12 or L18)P3 = {L11, L12 } or P5 = {L18 , L19,
L20}?
We choose {P3, L12} since P3 has two possible label positions and P5 has
three
![Page 21: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/21.jpg)
Label with least conflicts is L12Solution4 = {( P6, L24), (P1, L02), (P2,
L05), (P3, L12)}
![Page 22: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/22.jpg)
Label with least conflicts is L15S= {( P6, L24), (P1, L02), (P2, L05), (P3,
L12), (P4, L15)}
![Page 23: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/23.jpg)
Remaining label is L18 final solution S= {( P6, L24), (P1,
L02), (P2, L05), (P3, L12), (P4, L15), (P5,
L18)}
![Page 24: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/24.jpg)
Processing labels with conflicts(Create a labeling for the
remaining points)
![Page 25: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/25.jpg)
Processing of labels with conflicts
S* = {(P1, L02), (P2, L05), (P3, 0), (P4, L14), (P5, 0), (P6, L23)}
Point P3 has candidate labels L = {(L09, 1), (L10, 2), (L11, 1), (L12,0)}
S* = {(P1, L02), (P2, L05), (P3, L12), (P4, L14), (P5, 0), (P6, L23)}
Point P5 has candidate labels L= {(L17, 3), (L18, 1), (L19, 1), (L20, 2)}
S* = {(P1, L02), (P2, L05), (P3, L12), (P4, L14), (P5, L18), (P6, L23)}
![Page 26: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/26.jpg)
Local search algorithm(Use local search to improve
map quality)
![Page 27: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/27.jpg)
Local search algorithm
S* = {(P1, L02), (P2, L05), (P3, L12), (P4, L16), (P5, L18), (P6, L22)
P1 List = {(L01, 1), (L02, 0)}
S* = {(P1, L02), (P2, L05), (P3, L12), (P4, L16), (P5, L18), (P6, L22)}
P2 List = {(L05, 0)}
S* = {(P1, L02), (P2, L05), (P3, L12), (P4, L16), (P5, L18), (P6, L22)}
P3 List = {(L09, 1), (L10, 2), (L11, 2), (L12,1)}
S* = {(P1, L02), (P2, L05), (P3, L09), (P4, L16), (P5, L18), (P6, L22)}
![Page 28: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/28.jpg)
Results
![Page 29: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/29.jpg)
Standard sets of randomly generated points
conditions described by Christensen et al. (1995)
grid size of 792 by 612 units
fixed size label of 30 by 7 units
page size of 11 by 8.5 inch
![Page 30: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/30.jpg)
Test set
Number of the points: N = 100, 250, 500, 750, 1000
Configurations: For each problem size, 25 different configurations with random placement of point features using different seeds;
4 label positions were considered for each point
![Page 31: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/31.jpg)
Percentage of labels without conflict for different number of points
![Page 32: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/32.jpg)
Computational times to reach the good solutions for different number of points (sec)
![Page 33: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/33.jpg)
After FALP application for 1000 random points (labels without overlap = 911)
![Page 34: Fast Point-Feature Label Placement Algorithm for Real Time Screen Maps Missae Yamamoto Gilberto Camara Luiz Antonio Nogueira Lorena.](https://reader035.fdocuments.us/reader035/viewer/2022062511/55151b0a550346a87d8b4f3b/html5/thumbnails/34.jpg)
Conclusion
The FALP showed quality results in label placement and excellent runtime performance
We recommend to use FALP to solve point feature label placement for real time screen maps