Keywords

1.1 The Why and How of Surface Approximation

The advance of contactless laser range scanners, either terrestrial, airborne or underwater as well as sonars, enables to capture 3D data of large areas rapidly and with a high accuracy [Weh99, Eno19]. The applications of such sensors are diverse, going from forest inventory to agricultural monitoring, deformation analysis of bridges and dams, underwater or seafloor shell fragment characterization but also cultural heritage, to name only but a few (see, e.g., [Muk16] or [Wu22] for a review of applications). While working directly with the recorded point clouds may be adequate for visualization, or animation purposes, the manipulation of millions of points is less attractive as soon as shape analysis is needed [Flo02]. Within the context of geospatial data approximation or reverse engineering [Raj08], it is favorable to convert the observations to a mathematical surface. Here the latter are defined by parametric equations and approximate data by minimizing the distance between the point clouds and the approximated surface.

Throughout the book, we define an ā€œapproximationā€ as a counterpart to mathematical ā€œinterpolationā€ for which the resulting surface passes through all the data points (see, e.g., [Fol86]). In the context of Geographic Information Systems (GIS), the term ā€œspatial interpolationā€ is given a more broad definition. It is the process of using points with known values to estimate values at other points. Spatial interpolation can further be divided into exact or inexact interpolation. We will reserve the term ā€œinterpolationā€ to mean an exact fitting of a set of data points while inexact fitting will be denoted ā€œapproximationā€. Interpolation is unfavorable when a huge number of points is available. The approximation of noisy, unstructured and scattered point clouds transforms data to information: The resulting surfaces are less redundant and complex than when interpolation is performed.

Rigorous statistical testing of the deformation of objects such as bridges, dams or tunnels with underlying safety applications, can be best performed with mathematical surfaces. Within a geodetic context, they further make huge point clouds easy to handle and manipulate. Unfortunately, many practitioners are hesitating to use parametric surfaces to approximate their data, expressing concerns such as ā€œis it accurate enough?ā€, ā€œis it time consuming?ā€, ā€œI donā€™t understand formulasā€. Thus, the use of mathematical approximations of point clouds can only grow if easy-to-use and easy-to-understand approximation methods are proposed. The following criteria have to be considered:

  1. 1.

    Accuracy: The error between the fitted and original data set should be kept small.

  2. 2.

    Smoothness: Surface ripples due to the approximation of outliers or voids should be avoided.

  3. 3.

    Conciseness: The resulting surface should contain as few parameters as possible.

  4. 4.

    Automaticity and interoperability with existing GIS software: the format should be flexible.

  5. 5.

    Computational time: The processing has to be fast. It is one of the major requests from a practitioner perspective, and slowness strongly deters the use of parametric modelling.

The approach we follow in this SpringerBrief is to use Locally Refined B-spline surfaces, abbreviated as LR B-spline surfaces, for approximating geospatial data [Dok13, Sky15].

1.2 Surface Representation of Geospatial Data

There are many other data representations in addition to LR B-spline surfaces that can be used to approximate point clouds. In the following sections, we present two prominent examples: Raster representation and triangulated irregular network (TIN). We provide a short comparison of these methods with LR B-spline surface fitting. Other representations such as radial basis functions used, e.g., for gravity field modelizationĀ [Ten08] and trend surfaces are not directly applicable for approximation of large datasets and therefore omitted. We note that in GIS the term ā€œsplineā€ most often refers to splines in tension or regularized splines, which differ from tensor product (TP) B-splines surfaces. In Computer Aided Design (CAD) a rational version of TP B-spline surfaces is used, the so-called Non Uniform Rational B-splines (NURBS) surfaces.

1.2.1 Raster Representation

The raster representation is the most frequently used data format in GIS,Ā [Bis18]. The digital elevation model (DEM) is often represented as a raster. The raster is an approximate representation as the scattered input data are not exactly fitted. A given cell contains a single value, often the elevation, so that the level of detail is restricted by the raster cell resolution. If this resolution is low compared to the variation in the data, meaning that there is a large height difference between points in a cell, then the result may be inaccurate. On the contrary, if the resolution is too high, the data volume grows more than necessary. A trade-off between accuracy and data volume must be made, and this is particularly mandatory when there are large differences in the local variation of the data in different areas. However, the raster remains a compact, highly structured and efficient representation. Proposals have been made based on a compact data structure to access a given datum or portion of the data more rapidly,Ā [Sil21].

Fig. 1.1
figure 1

Raster representation of terrain. a Point cloud from FjĆølĆøy in Norway, b raster representation visualized with Python Rasterio

FigureĀ 1.1a shows a cloud of 999,751 points consisting of classified ground points and points from the sea surface. A raster representation with 1 m resolution is shown in Fig.Ā 1.1b. The raster is computed using inverse distance weighting (IDW,Ā [She68]). It has size \(800 \times 600\) and the average number of points used for estimating the raster points is 5676.79. The accuracy of this raster representation is addressed in Sect.Ā 1.2.5.1.

Several approaches are available to estimate values between the existing samples. We mention the selection in the cell center or the bivariate evaluation. Alternatively, the estimated value can be computed from a bivariate surface interpolating the four surrounding sample values. Kriging or IDW can be also used in this context, seeĀ [Oli90] orĀ [She68]. The reader is referred to, e.g.,Ā [Wis11],Ā [Mit05] orĀ [Fis06] for more details and specific comparisons between methods.

1.2.2 Triangulated Irregular Network (TIN)

A TIN is a continuous surface representation frequently used in GIS. This is a flexible format for geospatial data that allows adaptation to local variations, and is highly accurate. Similarly to raster representations and LR B-splines, an approximation is required to restrict the data size. The nodes of a TIN are distributed variably to create an accurate representation of the terrain. TINs can, thus, have a higher resolution in areas where a surface is highly variable or where more detail is desired and a lower resolution in areas that are less variable. They are typically used for high-precision modelling of smaller areas. InĀ [Nel94] a triangulated surface is used to represent drainage-basins while hydrological similarity is used in the TIN creation inĀ [Viv04].

TINs have a more complex data structure than raster surfaces and tend to be more expensive to build and process. Points in-between the corner points in a triangle are calculated by linear interpolation. This can give a jagged appearance of the surface. The problem is especially visible at sharp or nearly sharp edges, but can be remedied by methods like constrained Delaunay triangulation. A comprehensive discussion on various aspects with triangulation in terrain modelling is presented inĀ [Li09].

Fig. 1.2
figure 2

A small triangulated point set. The data points are red and the triangulation edges are shown in blue

The triangulation shown in Fig.Ā 1.2 is interpolating a sparse set of terrestrial data points and created with unconstrained Delaunay triangulation. The data is fetched from LIDAR measurements of the island FjĆølĆøy in Norway and is subsampled to improve visibility.

1.2.3 B-Spline Curves and Tensor Product Surfaces

B-spline curves are piecewise polynomial curves with continuity between adjacent polynomial pieces embedded in the curve formulation. The joints between the polynomial pieces are defined by the so-called knot vector. The polynomial degree can be chosen but is often selected to be three. A B-spline curve is described as a linear combination of a set of coefficients and corresponding B-splines basis functions, seeĀ [Pie91]. The maximum possible continuity between the polynomial pieces is equal to the polynomial degree minus one.

The B-spline basis functions are themselves piecewise polynomials and have several attractive properties:

  • Non-negativity

  • Partition of unity (the B-splines in a given parameter always sum up to one)

  • Linear independence

  • Limited support, i.e., the values of the basis functions are different from zero in a limited interval given by the knot vector, implying that a modification of one surface coefficient will change the curve only locally.

The properties of the B-splines imply that the representation is numerically stable and that a B-spline curve is bounded by its coefficients. The curve will always lie inside the polygon described by its coefficients. A B-spline curve is locally refinable, i.e., new knots can be inserted into the curve description as required.

A bivariate tensor product (TP) B-spline surface is constructed by taking the tensor product of the basis functions defined over knot vectors in two parameter directions, and defining appropriate coefficients. This construction carries over the attractive properties of non-negativity, limited support of the B-spline basis functions, partition of unity and linear independence. Unfortunately, the TP B-spline surface formulation does not allow local refinement. If a new knot is entered in one of the parameter directions, it will cover the entire parameter domain in the other direction.

1.2.4 Locally Refined B-Spline Surfaces

The LR B-spline surfaceĀ [Dok13] is one approach to solve the problem of lack of local refinability of TP B-spline surfaces. Other approaches include hierarchical B-splinesĀ [For88, Bra18], its variation called Truncated Hierarchical B-splines [Gia12], and T-splinesĀ [Sed03]. For LR B-splines, the starting point is always a TP B-spline surface with a corresponding mesh of lines defined by the knots in the two parameter directions (a TP mesh). The TP mesh is converted into an LR mesh and new meshlines are inserted into the mesh to refine the surface. The surface coefficients are updated accordingly. The new meshlines do not need to cover the entire region, but must traverse the support of at least one B-spline. Each new meshline leads to one or more B-splines being split to give rise to more B-splines and consequently more approximation freedom. The TP mesh is a special case of an LR mesh. FigureĀ 1.3 illustrates how a TP mesh can be extended to an LR mesh through multiple mesh refinements.

Fig. 1.3
figure 3

TP and LR meshes. a The initial TP mesh with the support of one biquadratic B-spline highlighted, b LR mesh after insertion of several meshlines with the support of one biquadratic B-spline highlighted

For LR B-spline surfaces the construction of the TP B-splines spanning the spline space is similar to the construction of the TP B-splines spanning the spline space of TP B-spline surfaces. In both cases they are TP B-splines that are defined from a subset of the knot vectors in the two parameter directions. The TP B-splines are regular except for possible variation in the width and height of mesh cells due to varying intervals between adjacent knots. The LR B-splines can differ greatly both in terms of the size of the support and the number of LR B-splines overlapping a particular parameter point in the surface domain. The LR B-splines are non-negative, have limited support, and possess the partition of unity property. The collection of LR B-splines are not linearly independent by default, but possible occurrences of linear dependency can be detected and removed.

Fig. 1.4
figure 4

LR B-spline representation of the point cloud shown in Fig.Ā 1.1. a The approximating surface, b the associated LR mesh

FigureĀ 1.4a shows a biquadratic LR B-spline surface approximating the point cloud in Fig.Ā 1.1 (tolerance 0.5 m and 5 iteration steps in an adaptive surface fitting algorithm, see Chap.Ā 3). Here the advantages of local refinement are highlighted:

  1. 1.

    The surface is locally refined by the algorithm where the accuracy requirement is not met.

  2. 2.

    The final LR mesh in Fig.Ā 1.4b is considerably more dense in the steep areas of the data set than where the surface represents the sea surface.

The accuracy of this surface representation will be addressed in Sect.Ā 1.2.5.1.

1.2.5 Comparison Between Approximation Strategies

TableĀ 1.1 provides an overview over the surface representations described previously. TINs and LR B-spline surfaces are created by adaptive algorithms, so that the degrees of freedom in the surface can be determined according to the need, and the accuracy of the fit is directly available. The raster representation and the TP B-spline surfacesā€”a generalization of the raster representationā€”are less flexible. The TP B-spline surface description is more flexible than the raster due to the choice of polynomial bidegree and/or variable knot vectors. However, the raster representation is slightly more compact than the TP B-spline surface for the representation of a piecewise constant or piecewise bilinear function. The TP B-spline and LR B-spline methods provide smoother surfaces than the other methods. The lack of local refinement, however, implies that the TP B-spline surface size grows much faster compared with LR B-spline surfaces.

Table 1.1 Summary of surface formats for representing terrain and seabed
Fig. 1.5
figure 5

The point cloud from Fig.Ā 1.1, a coloured according to the distance to the raster surface with 1 m resolution shown in Fig.Ā 1.1, b the LR B-spline surface in Fig.Ā 1.4. The size of the most distant points is increased compared to points closer to the surface for improved visibility. White points lie closer to the surface than 0.5 m, green points lie below the surface and red points above

1.2.5.1 Comparison Raster/LR B-Spline Surfaces

Here we wish to point out the advantages of an LR B-spline surface approximation with respect to the raster approximation. To that end, we come back to the point cloud approximated in Sects.Ā 1.2.1 andĀ 1.2.4. FigureĀ 1.5 shows the point cloud coloured according to the distance to (a) the approximated raster surface, and (b) the LR B-spline surface. The raster surfaces were created with IDW and evaluated by linear interpolation. This is not necessarily the optimal approximation method, but it is a method frequently used in GIS. Visually, the distance between the point cloud and the surface is largest for the raster surface: The most distant points are concentrated in areas with much shape variation in the terrain whereas the sea surface is accurately represented in both cases. These results are summarized in TableĀ 1.2. The file sizes of the raster surfaces (GeoTIFF) are generally larger than for LR B-spline surface (ASCII), so are the distances between the points and the surface. This data set favours the LR B-spline surface with one part representing the horizontal sea surface and one part a terrain with considerable height variations. The property to allow for local variations is the main advantage of LR B-spline surface approximation, not to mention the strong reduced data size of the final surface.

To summarize, LR B-spline surfaces:

  1. 1.

    Allow a smooth representation of point clouds,

  2. 2.

    Avoid the ragged appearance that can occur for TIN,

  3. 3.

    Are particularly advantageous in terms of the number of coefficients to estimate for fitting huge terrain and seabed data.

We will highlight these properties in Chaps.Ā 5 and Ā 6.

Table 1.2 Comparison between raster representation and LR B-spline surface

1.2.5.2 Summary

Many applications can be derived from approximation of point clouds withĀ  mathematical surfaces, such as the drawing of contour lines, or rigorous deformation analysis based on statistical tests. The result of the approximation and the choice of the method depend on the characteristics of the data, the purpose of the surface generation and user defined criteria, such as the computational time. For GIS applications, the LR B-spline surface with adaptive local refinement is favourable and the principle intuitive and understandable ([Sky22] for some examples, [Ker21] for geodetic applications). We point out that neither LR B-spline surfaces, nor raster nor TIN is the most appropriate representation: This latter does not exist. The definition of goodness of fit depends on the applications and the data at hand.

1.3 Reminder of the Present SpringerBrief

In Chap.Ā 2, we will present in details the concepts of LR B-splines and review alternative local approximation methods, such as hierarchical B-splines and T-splines. In the LR B-spline surface approximation with adaptive refinement,Ā  parameters are inserted locally, when needed. For geodetic objects such as a bridge or for landslides, this approach is favourable as more details can be needed in domains where, e.g., strong deformations are likely to happen or the object has edges.

The procedure of adaptive refinement will be developed in Chap.Ā 3. The algorithms are optimized for a wide use within a GIS or geodetic context. For approximating geospatial points, biquadratic surfaces have proven to be a good choiceĀ [Sky22]. They provide a good balance between smoothness and flexibility. Once an LR B-spline surface representation of some scattered data is obtained, terrain information can be derived such as, e.g., contour curves, slope and aspect ratio. Deformation analysis and statistical tests can be performed at the level of the surface approximation [Sky22, Ker20, Ker21]. We will develop such applications in Chaps.Ā 5 and 6 and present how specific challenges such as data gaps and outliers can be handled efficiently. The concept of LR B-splines volumes will be described. The optimal determination of approximation parameters such as the tolerance with respect to the noise level of the point cloud, is part of Chap.Ā 4, which addresses how to choose less empirically some refinement parameters or strategies.