Upload
matteo
View
28
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Homotopic Polygonal Line Simplification Lasse Deleuran PhD student. Content. Motivation Our Results Restricted simplification Unrestricted simplification Simplifying massive data. Motivation – Contour Lines. Motivation – Contour Lines. Motivation – Contour Lines. - PowerPoint PPT Presentation
Citation preview
Lasse Deleuran1/37
Homotopic Polygonal Line Simplification
Lasse DeleuranPhD student
Lasse Deleuran2/37
ContentMotivationOur ResultsRestricted simplificationUnrestricted simplificationSimplifying massive data
Lasse Deleuran3/37
Motivation – Contour Lines
Lasse Deleuran4/37
Motivation – Contour Lines
Lasse Deleuran5/37
Motivation – Contour Lines
Lasse Deleuran6/37
Motivation – Contour Lines
Lasse Deleuran7/37
Our Results “Improving Homotopic Shortest Paths Using
Homotopic X-Shortest Paths”, M. Abam and L. Deleuran, TBS
“Computing Homotopic Line Simplification in a Plane”, M. Abam, S. Daneshpajouh, L. Deleuran, S. Ehsani and M. Ghodsi, EuroCG 2011, Submitted to CGTA 2012
“Simplifying Massive Contour Maps”, L. Arge, L. Deleuran, T. Mølhave, M. Revsbæk, and J. Truelsen, ESA, 2012
Lasse Deleuran8/37
Definitions Polygonal line: P=p1,p2, … ,pn |P| = n-1
Homotopic poly. lines:
Lasse Deleuran9/37
Homotopic X-Shortest Paths n polygonal paths of combined size m
Endpoints are the obstacles
Compute x-shortest path while maintaining homotopy
Lasse Deleuran10/37
Shortest Paths – Previous Work Efrat et al. ’06: expected time O(nlogε+1n+mlogn) Bespamyathnikh ’03: O(nlogε+1n+mlogn)
2-part approach: 1) Compute homotopic x-shortest paths2) Compute homotopic shortest paths
Use their 2. part to achieve O(nlogε+1n+m)
Lasse Deleuran11/37
Restricted - Problem DefinitionGiven a path of size n, compute the paths with fewest points while
Only using original points Maintaining some error constraint Maintaining homotopy to m obstacle points
Strong vs weak homotopy:
Lasse Deleuran12/37
Restricted - Previous ResultsPrevious ResultsImai & Iri ‘88: Framework for the problemHausdorff: Chan & Chin ’92 O(n2)Frechét Distance: Alt & Goday ’95 O(n3)L1 and Uniform metric: Agarwal & Varadarajan ’00 O(n4/3+ ε )
Our Results Compute strongly homotopic ”links”
X-monotone path in O(mlog(nm) + nlogn log(nm) + k) Any path in O(n(m + n)log(nm))
Compute homotopic shortest path in O(n6m2)
Lasse Deleuran13/37
Previous ResultsProblemsOur AlgorithmExperimental Results
Simplifying a Massive Ammount of Polygons
Lasse Deleuran14/37
Previous Results: Terrain vs PolygonsSimplifying terrain
Agarwal, et. al. ’98 (I/O efficient contour generation) Agarwal, et. al. ’08 (I/O efficient map generation) Carr, et. al. ’10 (DEM Simplification) Garland & Heckbert ’97 (Surface Simplification) Agarwal, et. al. ’06 (I/O efficient conditioning)
Simplifying polygons See surveys by Mitchell ‘97, ‘98
Lasse Deleuran15/37
Challenges when SimplifyingToo many detailsMassive dataMaintain precisionMaintain topologyPrevent intersections
Lasse Deleuran16/37
Challenges – Too Many Details
Lasse Deleuran17/37
Challenges - Massive Data Denmark: 26B LIDAR points
12.4B grid cells
Lasse Deleuran18/37
Challenges - Massive Data: I/O ModelRAM/internal memory size MUnbounded disk/external memoryTransfer in blocks of size BCPU only works on internal memory
M BCPU Disk
RAM
Lasse Deleuran19/37
Massive Data - Practical AssumptionsAny polygon fits in memory (smaller than M)Segments intersecting any vertical line is < M
Lasse Deleuran20/37
Challenges - Maintain Precision Simplification algorithms typically only consider
movement in the plane (x and y)
Lasse Deleuran21/37
Challenges - Maintain Topology Topology: Parent / child relationships
Maintain topology through homotopy
Lasse Deleuran22/37
Problems – Prevent Intersections Intersections with other polygons / self intersections
Lasse Deleuran23/37
Algorithm Overview 1: Collect polygons (I/O-efficient) 2: I/O efficient polygon visiting (I/O-efficient) 3: Simplify polygons (internal)
Lasse Deleuran24/37
1/3 - Collect Polygons
Lasse Deleuran25/37
Polygons are neighbors if no other poly. divides them A polygon must be considered together w. neighbors
2/3 - I/O Efficient Polygon Visiting
Lasse Deleuran26/37
3/3 Simplify Polygons Basic Algorithm: Douglas Peucker
Lasse Deleuran27/37
Problems with Douglass Peucker Running time O(n2), but O(nlogn) in practice No z-constraint / not constrained by other polygons Introduces self intersections, no homotopy
Lasse Deleuran28/37
Simplifying – Adding Boundaries Construct Trapezoidal decomposition O(nlogn) Continue DP until inside of decomposition O(n2logn) Add contraint for z
Lasse Deleuran29/37
Simplifying – Removing Intersections Sweep to find intersections O(nlogn) Continue DP on intersecting segments Repeat => O(n2logn)
Lasse Deleuran30/37
Simplifying – Maintain Homotopy Trapezoidal sequence: ABCDCFCDEDE Contract XYX -> X Canonical Sequence: ABCDE
Lasse Deleuran31/37
Simplifying – Maintain Homotopy Check segment for homotopy: O(n)
=> O(n2logn)
Lasse Deleuran32/37
Practical Optimizations
Lasse Deleuran33/37
Optimization 1 - Conditioning the Terrain
Fill up all holes with depth of less than 0.5m Do so for small hills too.
Lasse Deleuran34/37
Optimization 2 - Exploit Bounding Boxes
Lasse Deleuran35/37
Optimization 3 - Minimal Decompositions Too much time will be spent constructing
decompositions Only use edges that intersect bounding box
Lasse Deleuran36/37
Setup Code in C++ using TPIE and TerraSTREAM Machine:
8-core Intel Xenon CPU @ 3.2GHz 12GB of RAM disk speed: 400MB/s
Lasse Deleuran37/37
Results Results for Denmark dataset (12B points):
49 hours to simplify 4B segments on 7M contours Z-diff: 0.5m (Border contours: 0.2m) DP-error: 5m 600.000 self intersections
8.2% of the points remained after simplifying
Thank You