Finding Shortest Path on Land Surface

Similar documents
Mesh Repairing and Simplification. Gianpaolo Palma

Anna Porazilová THE SHORTEST PATH. 1 Introduction 25. KONFERENCE O GEOMETRII A POČÍTAČOVÉ GRAFICE

An Approximation Algorithm for Shortest Descending Paths

Indexing Land Surface for Efficient knn Query

An Optimal Algorithm for the Euclidean Bottleneck Full Steiner Tree Problem

Scalable Shortest Paths Browsing on Land Surface

Algorithms for GIS. Spatial data: Models and representation (part I) Laura Toma. Bowdoin College

(Master Course) Mohammad Farshi Department of Computer Science, Yazd University. Yazd Univ. Computational Geometry.

Mesh Decimation. Mark Pauly

Applications. Oversampled 3D scan data. ~150k triangles ~80k triangles

Algorithms for GIS csci3225

Generalized Higher-Order Voronoi Diagrams on Polyhedral Surfaces

Mesh Decimation Using VTK

Geodesic Paths on Triangular Meshes

Approximate Geodesics on Smooth Surfaces of Arbitrary Topology

Fast query structures in anisotropic media

Constraint shortest path computation on polyhedral surfaces

Aggregate-Max Nearest Neighbor Searching in the Plane

Geodesic Paths on Triangular Meshes

A Developer s Survey of Polygonal Simplification algorithms. CS 563 Advanced Topics in Computer Graphics Fan Wu Mar. 31, 2005

January 10-12, NIT Surathkal Introduction to Graph and Geometric Algorithms

Distance Preserving Terrain Simplification An Experimental Study

Approximate Shortest Path on a Polyhedral Surface Based on Selective Refinement of the Discrete Graph and Its Applications

Level Set Extraction from Gridded 2D and 3D Data

Geometric Modeling. Mesh Decimation. Mesh Decimation. Applications. Copyright 2010 Gotsman, Pauly Page 1. Oversampled 3D scan data

Computational Geometry Algorithmische Geometrie

A General Algorithm for Triangular Meshes Simplification

A Comparison of Mesh Simplification Algorithms

1/60. Geometric Algorithms. Lecture 1: Introduction. Convex Hulls

Proceedings of the 5th WSEAS International Conference on Telecommunications and Informatics, Istanbul, Turkey, May 27-29, 2006 (pp )

KiMPA: A Kinematics-Based Method for Polygon Approximation

Study on Delaunay Triangulation with the Islets Constraints

Detection of constrictions on closed polyhedral surfaces

Approximating Geodesic Distances on 2-Manifolds in R 3

Geometric Modeling. Bing-Yu Chen National Taiwan University The University of Tokyo

Testing Euclidean Spanners

A Short Survey of Mesh Simplification Algorithms

Navigation Queries from Triangular Meshes

Chapter 7 Spatial Operation

Advanced Computer Graphics Project Report. Terrain Approximation

In Proceedings of ACM Symposium on Virtual Reality Software and Technology, pp , July 1996.

Lecture 3: Art Gallery Problems and Polygon Triangulation

Surface k-nn Query Processing

Surface Simplification Using Quadric Error Metrics

Shortest Path Approximation on Triangulated Meshes. By Annie Luan

Expansion-Based Algorithms for Finding Single Pair Shortest Path on Surface

Morse Theory. Investigates the topology of a surface by looking at critical points of a function on that surface.

How Do Computers Solve Geometric Problems? Sorelle Friedler, University of Maryland - College Park

CS 860 Fall Lecture 6. Anna Lubiw, U. Waterloo. one more paper on dynamic graphs (connectivity rather than shortest paths)

Shape from LIDAR Data. Univ. of Florida

A General Simplification Algorithm

GEOMETRIC SEARCHING PART 1: POINT LOCATION

Euclidean Shortest Paths in Simple Cube Curves at a Glance

Indexing Land Surface for Efficient knn Query

Information Processing Letters

Handling degenerate cases in exact geodesic computation on triangle meshes

Overview. Efficient Simplification of Point-sampled Surfaces. Introduction. Introduction. Neighborhood. Local Surface Analysis

Method of Solving the Volume Between Triangulated Mesh Surfaces

Extensible Point Location Algorithm

Determining Differences between Two Sets of Polygons

Research Article Quadratic Error Metric Mesh Simplification Algorithm Based on Discrete Curvature

Convex Hull of the Union of Convex Objects in the Plane: an Adaptive Analysis

Exact Geodesic Metric in 2-Manifold Triangle Meshes Using Edge-based Data Structures

The Full Survey on The Euclidean Steiner Tree Problem

Range Tree Applications in Computational Geometry

Simplification of Meshes into Curved PN Triangles

Justin Solomon MIT, Spring Numerical Geometry of Nonrigid Shapes

View-Dependent Selective Refinement for Fast Rendering

Mesh Simplification. Mesh Simplification. Mesh Simplification Goals. Mesh Simplification Motivation. Vertex Clustering. Mesh Simplification Overview

Algorithms for Euclidean TSP

Planar Point Location

Applications of Geometric Spanner

Higher-Order Voronoi Diagrams on Triangulated Surfaces

Bottleneck Steiner Tree with Bounded Number of Steiner Vertices

Fast marching methods

On the Euclidean Bottleneck Full Steiner Tree Problem

Approximate Shortest Path Queries on Weighted Polyhedral Surfaces

Approximate Algorithms for Touring a Sequence of Polygons

Improved Visibility Computation on Massive Grid Terrains

Numerical Geometry of Nonrigid Shapes. CS 468, Spring 2013 Differential Geometry for Computer Science Justin Solomon and Adrian Butscher

Adjacency Data Structures

An Efficient Visual Hull Computation Algorithm

A Simplex based Dimension Independent Approach for Convex Decomposition of Nonconvex polytopes

CMSC 425: Lecture 9 Geometric Data Structures for Games: Geometric Graphs Thursday, Feb 21, 2013

Geometric Data Structures Multi-dimensional queries Nearest neighbour problem References. Notes on Computational Geometry and Data Structures

arxiv: v1 [cs.cg] 16 Apr 2009

arxiv: v1 [cs.cg] 16 Mar 2014

Medial Residues of Piecewise Linear Manifolds

Maps as Numbers: Data Models

Fuzzy Voronoi Diagram

Half-edge Collapse Simplification Algorithm Based on Angle Feature

ENCODING AND DECODING OF PLANAR MAPS THROUGH CONFORMING DELAUNAY TRIANGULATIONS

arxiv: v1 [cs.ni] 28 Apr 2015

Computational Geometry

3-Dimensional Object Modeling with Mesh Simplification Based Resolution Adjustment

REPRESENTING EXTRATED EDGES FROM IMAGES BY USING CONSTRAINED DELAUNAY TRIANGULATION

Approximating geometric bottleneck shortest paths

Dijkstra's Algorithm

AHD: The Alternate Hierarchical Decomposition of Nonconvex Polytopes (Generalization of a Convex Polytope Based Spatial Data Model)

Simplification. Stolen from various places

Transcription:

Finding Shortest Path on Land Surface Lian Liu, Raymond Chi-Wing Wong Hong Kong University of Science and Technology June 14th, 211

Introduction Land Surface Land surfaces are modeled as terrains A terrain is the graph of a continuous function f : R 2 R that assigns every point on a horizontal plane to an elevation[3] Property of a terrain: Every vertical line intersects it at no more than one point (a) Eagle Peak, U.S.A (b) Bear Head, U.S.A Figure: Land surface

Introduction TIN model Terrains can be represented by the TIN (Triangular Irregular Network) model A TIN is a graph G = (V,E,F) formed by a set F of adjacent non-overlapping triangular faces, where V is the vertex set and E is the edge set The complexity of a TIN is represented by n = F in this paper (a) A TIN with more faces (b) A TIN with less faces Figure: TIN model

Introduction Different Types of Shortest Paths Euclidean shortest path (p e ) Surface shortest path (p s ) As indicated in previous papers[7], there is p s p e s p e Figure: Euclidean shortest path vs. Surface shortest path S p s t

Introduction Shortest Gentle Path In TIN model, a Shortest Gentle Path (SGP) p is formed by a sequence of adjacent straight line segments The slope of all segments in p is θ m, where θ m (,π/2] is a parameter specified by the user There does not exist another SGP p such that p < p n p f θ H (a) A segment (b) A face S t p 2 p 1 p 3 s (c) Shortest gentle path Figure: Shortest gentle path

Introduction Problem Definition Given a source point s, a destination point t on a terrain surface S, maximum slope value θ m and approximation factor ǫ. Our goal is to find a path p between s and t such that p satisfies the following two requirements: Slope requirement: p is a gentle path with maximum slope θ m Distance requirement: p (1 + ǫ) p o, where p o is the SGP between s and t When θ m = π/2, there is no slope constraint, so our problem degenerates to the conventional approximate surface shortest path problem

Introduction Motivation High complexity Applications O(n 2 ) complexity[2] if the slope constraint is not considered At least as hard as the surface shortest path problem Application to the industry Navigation Path planning Application to the academia Surface k-nearest neighbor search Natural sciences Figure: Shahabi et al., Indexing land surface for efficient knn query, PVLDB 8[7]

Related Work Finding Shortest Paths Exact algorithms Ref Author Time Technique [5] Mitchell et O(n 2 log n) Continuous Dijkstra al. [2] Chen, Han O(n 2 ) One angle one split Approximation algorithms Ref Author Time Technique [1] Aleksandrov et al. O( n ǫ log n ǫ log 1 ǫ ) Steiner point insertion [8] Xing et al. Shortest path oracle

Related Work Surface Simplification In computer graphics, surface simplification means transforming a complex, highly detailed model into a less detailed one while the shape of the model is maintained Vertex decimation[6] Edge contraction[4] Figure: Surface simplification (Image cited from [4])

Algorithm Framework S S s s t t (a) (b) S S s p s p t t (c) (d) Figure: An overview of our algorithm

Algorithm Path Mapping Step 1: Shadowing Compute the projective path of p on S From the property of a terrain, any path p on S has exactly one corresponding projective path p on S Step 2: Adjusting For each path segment p i = ab, if its slope is larger than θ m, then we apply the path finding algorithm A to find the SGP p i between a and b, and replace p i with p i S p S p f p θ (a) f p p θ (b) (c) Figure: Path mapping

Algorithm Distance Bound Though the slope requirement is satisfied, the distance bound, p (1 + ǫ) p o, is required The distance error is determined by the difference between S and S, denoted by (S, S) If S is exactly the same as S, that is (S, S) =, no error will be caused, but the computation is slow If S is over-simplified, S contains much less faces than S, the computation is fast, but the error may be too large Given a TIN terrain S, find a simplified surface S such that For any pair of p o and the mapped path p found by our algorithm, p (1 + ǫ) p o The number of faces in S is minimized

Algorithm Distance Bound Due to the difference between the slope of f and f, when a path segment p is mapped from f to f, error might be caused for two reasons: Error caused by shadowing p cos θ = p (1) cos θ Error caused by adjusting f f p θ θ p (a) Shadowing f p p θ p = max{1, sinθ sinθ m } p (2) (b) Adjusting Figure: Causes of error

Algorithm Distance Bound We define (S, S), the difference between S and S as follows: (S, S) = λ λ (3) λ: the largest possible mapping error from S to S λ : the largest possible mapping error from S to S λ and λ are extracted from the geometric parameters of S and S Theorem (Distance Bound) Let p o be the SGP between a given pair of points on S and p be the path found by our algorithm. And let S be the simplified surface. If (S, S) 1 + ǫ, then p (1 + ǫ) p o.

Algorithm Surface Simplifier Given a terrain surface S, maximum slope θ m and approximation ratio ǫ, the algorithm Simplifier simplifies S based on a greedy approach such that Theorem 1 is satisfied: 1: Sort the vertices of S by an error metric[6] 2: for all vertices v do 3: Check whether v can be removed according to Theorem 1 4: if yes then 5: Removed v from S 6: Triangulate the hole left by v s removal remove (a) (b) (c) Figure: Triangulation

Experiment Settings We did experiments on both real data sets and synthetic data sets. The real data set is available to the public for free at Geo Community, which was also used by previous research[7, 9, 8] CPU: 2xQuad Core 3GHz Memory: 32GB RAM Language: C++ (a) Eagle Peak (b) Bear Head Figure: Real data sets

Experiment Illustration of the Results (a) Original surface (b) ǫ =.1 (c) ǫ =.25 (d) ǫ =.5 Figure: Result of surface simplification (Eagle Peak where θ m =.3)

Experiment Effect of θ m Preprocessing time (1 3 s) 16 14 12 1 8 6 4 2.1.2.3.4.5.6.7.8 Number of faces (1 3 ) 4 35 3 25 2 15 1 5 No. of faces in orig. suface No. of faces remained.1.3.5.7 7 6 5 4 3 2 1 Storage (MB) θ m θ m (a) (b) Time for path finding (s) 4 35 3 25 2 15 1 5 Time for finding p o Time for finding p Time for finding p c.1.2.3.4.5.6.7 θ m (c) Path length (m) 9 8 7 6 5 4 3 The length of p o The length of p The length of p c Worst-case bound 2.1.2.3.4.5.6.7 θ m (d) Figure: Effect of θ m (Eagle Peak where ǫ =.1)

Experiment Effect of ǫ Preprocessing time (1 3 s) 3 25 2 15 1 5.5.1.25 ε.5.75 1 Number of faces (1 3 ) 4 35 3 25 2 15 1 5 No. of faces in orig. surface No. of faces remained.5.1.25 ε.5.75 1 7 6 5 4 3 2 1 Storage (MB) (a) (b) Time for path finding (s) 18 16 14 12 1 8 6 4 2 Time for finding p o Time for finding p Time for finding p c.2.4.6.8 1 ε (c) Path length (m) 65 6 55 5 45 4 35 3 The length of p o The length of p The length of p c Worst-case bound.2.4.6.8 1 ε (d) Figure: Effect of ǫ (Eagle Peak where θ m =.3)

Experiment Results for the Traditional Problem Preprocessing time (1 3 s) 3 25 2 15 1 5.1.25.5 ε.75 1 Number of faces (1 3 ) 4 35 3 25 2 15 1 5 No. of faces in orig. suface No. of faces remained.1.25.5 ε.75 1 7 6 5 4 3 2 1 Storage (MB) (a) (b) Time for path finding (s) 12 1 8 6 4 2 Time for finding p o Time for finding p.2.4.6.8 1 ε (c) Path length (m) 5 45 4 35 3 25 2 The length of p o The length of p Worst-case bound.2.4.6.8 1 ε (d) Figure: Effect of ǫ (Eagle Peak where θ m = π/2)

Reference I L. Aleksandrov, A. Maheshwari, and J.-R. Sack. Determining approximate shortest paths on weighted polyhedral surfaces. J. ACM, 52:25 53, January 25. J. Chen and Y. Han. Shortest paths on a polyhedron. In SCG 9: Proceedings of the sixth annual symposium on Computational geometry, pages 36 369, New York, NY, USA, 199. ACM. M. de Berg, O. Cheong, M. van Kreveld, and M. Overmars. Computational Geometry: Algorithms and Applications. Springer, Berlin, 3rd ed. edition, 28. M. Garland and P. S. Heckbert. Surface simplification using quadric error metrics. In SIGGRAPH, 1997.

Reference II J. S. B. Mitchell, D. M. Mount, and C. H. Papadimitriou. The discrete geodesic problem. SIAM J. Comput., 16(4):647 668, 1987. W. J. Schroeder, J. A. Zarge, and W. E. Lorensen. Decimation of triangle meshes. In SIGGRAPH, 1992. C. Shahabi, L.-A. Tang, and S. Xing. Indexing land surface for efficient knn query. PVLDB, 1(1):12 131, 28. S. Xing and C. Shahabi. Scalable shortest paths browsing on land surface. In Proceedings of the 18th SIGSPATIAL International Conference on Advances in Geographic Information Systems, GIS 1, pages 89 98, New York, NY, USA, 21. ACM.

Reference III S. Xing, C. Shahabi, and B. Pan. Continuous monitoring of nearest neighbors on land surface. PVLDB, 2(1):1114 1125, 29.

Q & A Frequently Asked Questions Q1: The details of distance bound?

Q & A I Q1: Distance Bound We introduce the following term called MRS to denote the overall length ratio between p and p when mapping a specific path segment p from f to f, which is an immediate result from Eq. 1 and 2: MRS(< p,f >,< p, f >) = max{1, sinθ cos θ } sinθ m cos θ (4) Let MR(f, f ) be the greatest possible mapping ratio of an arbitrary p. That is, MR(f, f ) = max MRS(< p,f >,< p, f >) (5) p f MR(f, f ) can be written as a function of n and ñ, the normal vectors of f and f. And MR( f,f ) can be similarly defined

Q & A II We say that face f overlaps f if there exists a vertical line that intersects both f and f We then define a face pair set CS(S, S) that contains all overlapping face pairs from S and S as follows: CS(S, S) = {(f, f ) f F, f F and f overlaps f } (6) Let λ be the largest possible MR(f, f ) for all face pairs in CS(S, S), so λ = And λ is similarly defined as λ = max MR(f, f ) (7) (f, f ) CS(S, S) max MR( f,f ) (8) (f, f ) CS(S, S)