Document not found! Please try again

A hierarchical triangle-based model for terrain description - UMIACS

1 downloads 20 Views 938KB Size Report
This article describes a new hierarchical model for representing a ter- rain. The model ..... time complexity of the structure accessing algorithms operating on it.
A hierarchical triangle-based model for terrain description Leila De Floriani Dipartimento di Informatica e Scienze dell'Informazione Universitk di Genova Viale Benedetto XV, 3 - 16132 Genova- ITALY

Enrico Puppo Istituto per la Matematica Applicata Consiglio Nazionale delle Ricerche Via L.B. Alberti, 4 - 16132 Genova - ITALY

Abstract This article describes a new hierarchical model for representing a terrain. The model, called a Hierarchical Triangulated Irregular Network (HTIN), is a method for compression of spatial data and representation of a topographic surface at successively finer levels of detail. A HTIN is a hierarchy of triangle-based surface approximations, where each node, except for the root, is a triangulated irregular network refining a triangle face belonging to its parent in the hierarchy. In this paper we present an encoding structure for a HTIN and we describe an algorithm for its construction.

1

Introduction

In the last few years hierarchical surface models have been developed to describe terrains at different levels of resolution. Variable-resolution surface models provide a d a t a compression m e c h a n i s m which allows a reduction of the number of points needed to describe a surface: fewer points, for instance, should be used to represent large surface regions of almost constant slope. Such models are also used for robot navigation on a terrain, since a coarse m a p of the terrain is necessary to plan an initial path for the robot, while a more detailed description is required to plan local motions.

237

Hierachical models are used in a wide range of applications for representing point data, planar regions, surfaces, and 3D objects [Sam90]. Such models allow the manipulation of a geometric entity at different levels of resolution. Usually, they are classified into space-dependent representations (like the quadtree, the octree and their variants), which are based on a recursive decomposition of the space occupied by an object, and object-dependent representations (like different hierarchical triangulations or the Delaunay pyramid), which provide a description of the object in an object-centered coordinate frame. A terrain can be described by a mathematical model, expressed as a pair A4 = (D, f ) , where z = f ( x , y) is a function (with suitable continuity properties) defined over a domain D in the x-y plane. In practice, a terrain is known through elevation values given at a discrete set of points in the x-y plane. Thus, we are interested in a discrete model of the terrain based on such data. A Digital Elevation Model (DEM) can be defined as a pair 9r = (~, F), where E is a partition of the domain D into regions { R 1 , . . . , R,~} and F is a family of continuous functions z = fi(x, y), each defined on a region Ri of E, which provide a piecewise continuous approximation of the terrain. Digital elevation models are usually classified into Regular Grids (RGs) and Triangulated Irregular Networks (TINs) depending on the characteristics of the domain subdivision E: The great advantage of TINs lies in their capability of adapting to the changes in the roughness of terrain. Also, surface specific points (peaks, pits, passes) and lines (ridges or valleys), which characterize the surface independently of the data sampling, can be included in a TIN as vertices and edges. Hence, in spite of the simplicity of regular grids, TINs provide a more appropriate and flexible means for describing a terrain. An arbitrary triangulation of the domain does not usually represent an acceptable basis for building a TIN, because of numerical interpolation problems. Thus, TINs are generally based on a Delaunay triangulation of the projections of the data points on the x-y plane. Delaunay triangulation has some important properties, like local definition, equiangularity (i.e., its triangles are as much equiangular as possible), minimal roughness (i.e., the surface described by a Delaunay-based TIN is as less rough as possible, independently of the elevation values) [Rip90]. In a Delaunaybased TIN, the domain subdivision depends only on the point distribution on the x-y plane. In [Dyn90] some domain triangulations that depend also on the elevation values are discussed, and corresponding TINs are compared with a Delaunay-based TIN. In this paper, we present a new terrain model, which is based on an irregular domain triangulation and is hierarchical as well, thus providing a triangle-based representation at increasingly higher levels of resolution. The basic idea in such model, called a hierarchical TIN, is to combine the advantages of a TIN with the benefits of a hierachical description (for instance, local refinement in areas of interest). At a higher abstraction level, a hierarchical TIN consists of a Delaunay-based TIN, while each other node is a TIN refining a triangle belong-

238

ing to its parent in the hierarchy. The refinement of a triangle is performed by inserting new points in its interior and/or on its edges and computing a Delaunay triangulation of such points. Thus, the underlying triangulation is locally a Delaunay one. The remainder of the paper is organized as follows. Section 2 briefly reviews hierarchical models for terrain description both for regularly and irregularly spaced data. Section 3 introduces the hierarchical model we propose by giving the basic definitions and aome examples. Section 4 describes a data structure for encoding a hierachical TIN, while Section 5 presents an algorithm for building such a model.

2

Hierarchical terrain models: an overview

We call Hierarchical Digital Elevation Model (HDEM) any DEM which provides a multiresolution description of a terrain. As standard DEMs, HDEMs can be classified depending o n t h e shape of the underlying subdivision into: quadtreebased models and hierarchical triangulated models. Quadtree-based models require regularly spaced data: they are based on a subdivision of the domain defined by the recursive partition of a rectangle enclosing the projections of the data points into a set of nested rectangles having vertices at such projections. Each rectangle is split into four subrectangles by joining each internal point to its projections on the four sides of the recatngle. Chen and Tobler evaluate different interpolation techniques for approximating a surface defined by a quadtree in terms of accuracy, computational speed and storage cost [Che86]. The problem with such interpolants is the difficulty in preserving the continuity of the surface approximation along the sides of the subdivision. Von Iterzen and Barr propose a method for avoiding discontinuities [Von88]. Such method uses a modified version of the quadtree (that they call a restricted qnadtree), and triangulates the leaves in the quadtree to achieve continuity at the borders of adjacent regions. Hierachical triangulated models can be further classified into strictly hierarchical triangulations, which are described by a domain partition tree, and multiresolution triangulations, which are basically sequences of TINs. The first hierarchical triangulated models appeared in the literature are the ternary and the quaternary hierarchical triangulations [Gom79,Bar84,DeF84,Fek84,Pon87]. These models are based on the recursive subdivision of an initial triangle (with vertices at data points and containing all the other points inside) into a set of nested subtriangles with vertices at the data points. In a ternary triangulation, a subdivision of a triangle ~ consists of joining an internal point P to the three vertices of t, while, in a quaternary triangulation, each triangle is subdivided into four triangles formed by joining three points, each lying on a

239

different triangle side. The major problem with a ternary triangulation lies in the elongated shape of its triangles, which leads to inaccuracies in numerical intel;polation. On the other hand, a quaternary triangulation is only well suited when the data are regularly distributed and suffers of the same discontinuity problems at the boundaries of adjacent triangles as quadtree-based models. A quaternary triangulation, called triarcon, has been applied by Goodchild and Shiren as a hierarchical representation of the globe in a geographic information system [Goo92]. More recently, Scarlatos and Pavlidis have proposed a hierarchical triangulated model, which generalizes the ternary triangulation, by allowing splitting of the triangles along the edges as well [Sca90]. The idea of the method is to define alternative ways of refining a triangle either by adding internal points or by splitting its edges. The objective is to insert into the model significant terrain characteristics hpproximating critical lines and points at different levels of detail. The authors show experimentally that the number of edge and triangle splits necessary to achieve a certain degree of approximation is less than the number of refinements required in a ternary triangulation. The Delaunay pyramid described in [DeF89] is a multiresolution hierarchical model consisting of an ordered sequence of Delaunay based TINs, each of which contains an increasing number of points and provides a more accurate surface description. Any two consecutive TINs are connected by a set of links which join the triangles modified between the two levels. The Delaunay pyramid has been extended to include also a set of segments as edges in the model at increasing resolution, thus producing a constrained Delaunay pyramid [Jon91]. This allows the explicit representation of surface-specific lines as well as their refinement when the resolution increases. A constrained Delaunay pyramid can be built by using the incremental method described in [DeF92]. A Delaunay pyramid cannot be described by a tree, since a triangle belonging to the triangulation at a given level i can intersect a portion of the domain covered by several triangles in the triangulation at level i - 1. A Delaunay pyramid is encoded as a sequence of TINs plus a set of links which describe the connections among the triangles. One drawback of such model is thus its high storage cost. Moreover, it is difficult to reconstruct a surface approximation in which the approximation error is different in different regions of the domain.

3

Hierarchical Triangulated Irregular Network

In this section we introduce the definitions of Hierarchical Triangulation (HT) and of Triangulated Irregular Network (TIN), and we combine such concepts to define our new hierarchical triangle-based surface model cMled the Hierarchical

Triangulated Irregular Network (HTIN).

240

Figure 1: Two adjacent triangles and their refinement All the structures we define are based on the triangulation of a finite set of points V in the Euclidean plane, defined as follows: a triangulation T(V) of set V is a maximal Planar Straight Line Graph having V as set of vertices [Pre85].

T(V) is a planar subdivision formed by triangular faces and covering the convex hull of V in IR2; in the following, the domain of a triangulation T will be denoted D(T). We also say that an edge e of a triangulation T is a boundary edge for T if it lies on the boundary of D(T).

3.1

Hierarchical Triangulation

A Hierarchical Triangulation (117') is obtained by applying the concept of recursive refinement to the triangulation model. Intuitively, given a triangulation, any of its triangles is seen as an individual entity. We can expand any such triangle at a higher level of detail into another triangulation, whose domain covers the triangle. Different triangles can be refined independently; nevertheless, the refinement of one triangle can produce splitting of its edges into chains of edges. As edges are entities shared by adjacent triangles, we enforce adjacent triangles to be expanded into triangulations that "match" along their common

241

edge; this requirement will avoid discontinuities along the boundaries of each new triangulation (see Figure 1). A I-IT is described by a tree 7-I = (T,E), where T = {T0,...,T2v} is a family of triangulations with triangular domains (possibly except D(To)), and s = {(T, T ~) I T, T ~ E T} is a set of directed arcs linking pairs of elements of T. In order to define the properties that characterize a HT, we introduce the following definitions: 9 SONS(T)={Tj I (T, Tj) E E}; 9 F A T H E R ( T ) = ~ such that (Ti, T) e ~; 9 ANCESTORS(T)={Tj t there exists a path in ~/from Tj to T}; 9 D E S C E N D A N T S ( T ) = { ~ ! there exists a path in ~ from T to Tj}; A Hierarchical Triangulation satisfies the following properties: 9 h i e r a r c h y rule: for every Tj E SONS(T) there exists exactly one triangle tj in T such that tj = D(Tj); in other words, each triangulation~ except for the root, is the refinement of some triangle of another (coarser) triangulation in the hierarchy; we say that Tj refines tj and we denote: - tj = A B S T R A C T I O N ( T j ) - ~ =REFINEMENT(tj) 9 m a t c h i n g rule: let T ~ and T ~/be two triangulations of T and let V ~ and V I~ be the sets of vertices of T ~ and T" respectively; we say that T ~ and T ~ are adjacent along a straight line I segment if their domains intersect only along/; we say that T ~ and T '~ are matching along l if they are adjacent along l and l M V ~ = l M V"; then, if T~,T ~ E T are adjacent along l, one of the following conditions must hold: (a) T I and T" are matching along l; (b) 1 M V' C l M V" and there exists T* EDESCENDANTS(T') that is matching with T" along I; (c) l M V' D l M V" and there exists T** EDESCENDANTS(T *') that is matching with T ~ along I. In practice, the hierarchy rule guarantees the consistency of the hierarchical relations between triangulations in ~/, while the matching rule ensures that any edge of any triangulation T of T is always refined consistently in the subtree rooted at T.

242

Figure 2: An approximation of terrain represented by a TIN 3.2

Triangulated

Irregular

Network

Let z = f(x, y) be a function of two variables describing a terrain. A Triangulated Irregular Network (TIN) approximating such terrain is a continuous function interpolating f at a discrete set of points V = {vt, ..., yr,} in the plane, defined over a two-dimensional triangulation T(V) of the points of V. A TIN is defined as a pair f = (T(V), F), where triangulation T(V) is formed by triangles { t t , . . . , tn} and F = { f l , . . . , fn} is a family of functions, where each function fi is defined over ti and interpolates f at the vertices of ti. Here, we restrict to piecewise linear TINs, i.e., we impose that F is a set of linear functions. In practice, for every triangle ~i of T, a corresponding triangular planar patch ~ in ]R3 approximates f(x, y), for all (x, y) lying inside ti. The precision of .T in approximating function f is measured by some distance E(f, F) between functions f and the linear interpolants over each triangle. Here, we define the precision of function fi E F over triangle ti as Ei(f, fi) = maxt, l f ( z ) - f,(z)l, and we define E ( f , : ) = max~=lE,(f,f, ). We will call E the error function. In Figure 2 a perspective view of a terrain represented by a TIN is shown.

243 3.3

Hierarchical

Triangulated

Irregular

Network

In order to define a hierachical model of terrain surface, we combine the concept of TIN with the one of hierarchical triangulation. Given a function f defined as above, a Hierarchical Triangulated Irregular Nelwork (HTIN) approximating f is a hierarchy of n TINs such that: 9 for every i-- 1,..., n, TIN 5ri = (T/(~), Fi) approximates f in D(Ti); | triangulations T/(V/), i = 1 , . . . , n, form a Hierarchical Triangulation 7/. In the following, we will refer interchangeably to a TIN ~" and to the triangulation T describing it, whenever no ambiguity arises. Similarly, we will refer to the precision of a triangulation or of a triangle by meaning the approximation error of the corresponding TIN or triangular patch, respectively. For simplicity, we will also denote with E(T) the error of a TIN described by triangulation T, and with E(t) the error of a triangular patch corresponding to triangle t.

A Hierarchical Delaunay TIN (HDT) is a HTIN with the further property that any triangulation in the hierarchy is a Delaunay triangulation. The above definitions do not yield any particular criterion of refinement. For instance, one could build the HTIN by imposing that each triangle is refined into a triangulation containing no more than a maximum number nrnax of triangles (such an approach could be useful, for instance, to speedup point location). In the next Section, we will show how a HTIN (a HDT) can be built based on a finite sequence of decreasing tolerance values, in such a way that each refinement causes an increase in the precision of the approximation of a portion of terrain.

4

A d a t a s t r u c t u r e for e n c o d i n g a hierarchical TIN

In this Section, we describe a data structure for encoding a hierarchical TIN. The information stored in the data structure allow fast traversal of the model, as required by algorithms that build an "expanded" TIN at a specified level of accuracy, or more generally, which navigate the model at different degrees of resolution. Navigation algorithms are the basis, for instance, of algorithms for contour extraction or for visibility computation. The internal encoding structure of a hierarchical TIN is a combination of individual data structures representing the various TINs composing the HTIN, and information describing the hierarchy as well as adjacency relations between triangulations sharing common boundaries.

244

Several data structures have been proposed in the literature for encoding a triangulation [Gui83,Pre85,Woo85]. Here, we use a variant of the symmetric structure developed by Woo [Woo85] for describing the triangulations forming the hierarchy. For each trianglulation T E T, we encode its three basic entities, namely vertices, edges and triangles, together with four incidence relations. Each edge e of T is described by its two extreme vertices (Edge-Vertex relation), and by the two triangles sharing it (Edge-Triangle relation). Each triangle t is related to its bounding edges (Triangle-Edge relation). Finally, we store with each vertex v one of the edges of T incident on v (partial Vertex-Edge relation). It can be shown that the data structure is optimal with respect to both storage cost and time complexity of the structure accessing algorithms operating on it. The following information are stored to describe the hierarchical organizaition of a HTIN. For every node T in the HTIN, we store: o a link to its parent triangulation in the hierarchy FATHER(T) together with an indirect link to triangle ABSTRACTION(T) in FATHER(T); 9 for every triangle t in T that is refined in the hierarchy, a link to triangulation REFINEMENT(t); | three sequences of boundary edges, corresponding to the refinements of the three edges of ABSTRACTION(T) respectively; 9 for each boundary edge e of T, the sequence of boundary edges containing e and the position of e in such a sequence. Information on boundary edges allow maintaining links towards the exterior of triangulation T in an implicit form.- Such links allow navigation of the hierarchical structure at a given level of detail. Let e be a boundary edge of T. We denote, for analogy, ABSTRACTION(e) the edge of ABSTRACTION(T) that is expanded in T into a sequence s containing e. Let us suppose for now that ABSTRACTION(e) is not a boundary edge of FATHER(T). Then, there must exist a triangle t ~ belonging to FATHER(T) and adjacent to ABSTRACTION(T) along ABSTRACTION(e); in the general case, ~ is expanded in the hierarchy into a triangulation T ~ that matches with T aIong s. Then the position of e in s can be used to locate its corresponding edge in the corresponding boundary chain of T ~. If also ABSTRACTION(e) is a boundary edge in FATHER(T), then the position of e is pushed onto a stack and upper levels in the hierarchy are searched following the same rule, until a non-boundary edge e* is found. Then, the hierarchy is descended from e* using the stack of positions, until the edge corresponding to e at the same level of detail is found (see Figure 3).

245

/

/ /

/

I

t 1 /

Figure 3: Navigation of a HTIN

246

5

Building a hierarchical T I N

We are interested in building a hierarchical terrain model at various levels of resolution. We assume to have an "exact" representation of a terrain (typically, an interpolation function based on a dense regular grid of sampled data), and to build our model by extracting points from it. Techniques to obtain a TIN at a fixed level of resolution from a dense set of data have been described in [Fow79,DeF85,Sca90,Pup92]. In [DeF85] an algorithm was proposed that refines an existing Delaunay-based TIN by inserting one point at a time and updating the Delaunay triangulation until the required precision is met. The point inserted at each cycle is the one that causes the maximum error in the approximation; this criterion is named the Delaunay selector. In [Pup92] a parallel algorithm based on the Delaunay selector is proposed, that performs refinement by inserting many points at a time (namely, one per existing triangle). Let {c0,..., ok} be a given decreasing sequence of positive real values, called the tolerance values. We build first the root of the HTIN To, which is a TIN at level of precision c0 (i.e., E(To) < c0). Then each triangle ti of To refined into a triangulation T~ such that E ( ~ )

Suggest Documents