Abstract
Geospatial data acquisition of terrains with contact-free sensors such as Terrestrial or Airbone Laser Scanners generates scattered and noisy point clouds. Performing a surface approximation is an efficient way to reduce and structure the recorded point clouds. To that end, LR B-splines are attractive as they allow a local refinement, on the contrary to the tensor product B-spline and raster surfaces. By comparing the approximation error with a given tolerance, a local refinement is performed. We apply this adaptive refinement strategy to landslides data sets from Alpine terrain in Austria. We show how different epochs of the point clouds can be analyzed with LR B-spline volumes for spatio-temporal visualisation of deformation. We highlight the potential of a time-differenced LR B-splines volume for analysing geomorphological changes. A further application of this method is the drawing of contour lines.
You have full access to this open access chapter, Download chapter PDF
Keywords
- GIS data set
- Geospatial data set
- LR B-splines
- Adaptive surface fitting
- Spatio-temporal deformation analysis
- Contour lines
- LR B-spline volumes
- Geomorphological analysis
6.1 Introduction
Terrestrial Laser Scanners (TLS) are contact-free measuring sensors. They record dense point-clouds of objects or scenes by acquiring coordinates of points and an intensity value; this latter depends, e.g., on the reflected surface or atmospheric propagation, see Wujanz et al. [Wuj17]. TLS range measurements can be either based on phase shift or time-of-flight. We refer to Vosselman and Maas [Vos10] or Pfeifer and Briese [Phe07] for more details. Typically, the range measurement in phase shift is more accurate than time-of-flight TLS but the maximum range is smaller. Due to its high scanning rate, it is not uncommon that a point cloud contain millions of points, which need to be processed in some way. Well-known software are, e.g., the freely available CloudCompare [CC22], or MeshLab [Cig08]. Within a geodetic context, prominent applications using TLS point clouds are deformation analysis for objects such as tunnels [Jia21], dams [Gon08] or bridges [Zog08], see also Mukupa et al. [Muk16]. Because TLS enables fast and precise mapping, they are currently used for monitoring forest canopy [Gri15] or landslides [Bar13].
The processing of huge point clouds can quickly become computationally unfavourable. Parametric spline surface approximation techniques address the challenge by reducing “data” into “information”. The point clouds are efficiently compacted into a a manageable number of coefficients that are often estimated by least-squares (LS) adjustment. The mathematical modelization enables deformation analysis and rigorous statistical testing based on the estimated surfaces rather than on the original point clouds. Unfortunately, the Non Uniform Rational B-splines (NURBS, [Pie95]) do not allow for local refinement. This approximation method is unfavourable when the point clouds are scattered and noisy. Here the risk of overfitting should not be undertaken as it leads to unwanted ripples and oscillations in the approximated surface, see Bracco et al. [Bra18]. This latter may be confounded with deformations.
Starting from a first approximation of the point cloud using a coarse NURBS mesh, there exist three main approaches to perform an adaptive local refinement:
-
Hierarchical B-splines (HB-splines) were introduced in Forsey and Bartels [For88]. The refinement is said to be dyadic and the cells of the mesh to be refined are halved at each iteration.
-
T-splines are described, e.g., in Sederberg et al. [Sed03]. Here the refinement is performed by successively adding new control points in-between two adjacent control points in the T-mesh, Kermarrec and Morgenstern [Ker22] for an application to sand dunes point clouds from TLS.
-
LR B-splines were developed by Dokken et al. [Dok13]. They are based on the concept of “splitting the B-splines”, i.e., introducing new meshlines. Each meshline inserted has to split the support of at at least one tensor product (TP) B-spline. They were shown to be advantageous within GIS context, Skytt et al. [Sky15].
The remainder of this chapter is as follows: in a first step, we will shortly review the surface approximation with LR B-splines. The reader is referred to Chap. 2 and Chap. 3 for more details. We will introduce LR-B-spline volume as a promising tool for visualising and analysing spatio-temporal deformations. We will develop how contour lines can be computed from LR B-spline surfaces in a dedicated appendix. The chosen point cloud to illustrate the surface approximation is from the Alpine region in Austria.
6.2 Description of the Data Set
In the context of climate changes and the expansion of areas of urban settlement, e.g., in Alpine regions, early warning system for risk management necessitates high-quality data sets that are both spatially and temporally detailed. In this chapter, we perform spatio-temporal deformation analysis with mathematical approximations from a data set recorded in Austria, which will be shortly described in the following section.
6.2.1 Deformation Monitoring with a Terrestrial Laser Scanner
The data set studied in this chapter was recorded in the Valsertal region in Austria as part of HORIZON 2020 via the RFCS (Research Fund for Coal and Steel) funded research project \(i^2\)MON-“Integrated Impact MONitoring for the detection of ground and surface displacements caused by coal mining”. Here we focus on the observations from the TLS (VZ-2000i, see http://www.riegl.com/nc/products/terrestrial-scanning/produktdetail/product/scanner/58/), Further information about the experiment can be found in dedicated publications, e.g., Schröder and Klonowski [Sch20].
The monitoring of the Valsertal aims to analyse deformation with the help of a long-range TLS, for underlying safeguard applications. A continuous series of measurements are available from August 13, 2020 up to and including September 8, 2020. In this contribution, we have selected a small excerpt from August 20, 2020 to August 22, 2020. We focus on an area in the lower part of an alpine slope where some rearrangements of the facilities took place in this period. The measurements were made in a refuge opposite an area affected by a rock fall as shown in Fig. 6.1. A geodetic instrument called a total station was installed on one of the two measuring pillars in the hut measuring 16 reflectors at a distance of approximately 250–800 m every hour. On the second pillar, a laser scanner was used for the permanent installation. One point cloud of the whole area was recorded every two hours resulting in 36 point clouds in total. In order to separate the expected apparent deformations within the time series from the influences of the georeferencing, the laser scanner was expanded to include a platform with inclination sensors in the horizontal plane of the local scanner coordinate system. The GNSS antenna on the scanner was used for time synchronization. This set up allows us to highlight the potential of surface approximation with LR B-splines from TLS observations with the aim to visualize spatio-temporal deformation based on mathematical surfaces and volumes.
6.2.2 Data Set Preparation
The point clouds differ in size, depending on the epochs when they were recorded. Figure 6.2 illustrates the three different extensions of the selected point clouds. We have harmonized the point clouds so that they all fit with the smallest extension shown at the bottom right. The long tail to the left is excluded from the approximation. Obvious outliers are removed using the method of Chap. 5, Sect. 5.3.2.3. We note that the data sets from the first epochs include a large tree that later disappeared. In the later part of the period, the vegetation was filtered out to gain in accuracy. Figure 6.3 shows two examples of the point clouds processed for our study, with and without the tree. The tree was intentionally kept in the first point clouds to spice the spatio-temporal analysis. This way, we can show the potential of LR B-spline volume to detect such changes, with applications in forestry inventory, see, e.g., Liang et al. [Lia6].
6.3 Surface Approximation of the Selected Data Set
Approximating point clouds with tensor product (TP) B-spline surfaces does not allow for local refinement. LR B-splines are a way to locally refine the spline space and are shown to provide well-behaved mathematical surfaces for remote sensing applications, Skytt et al. [Sky22]. More specifically, an adaptive surface fitting is performed when the L1 norm—called in the following “error” or difference in absolute value—between the mathematical surface and the points inside a cell of the mesh exceeds a tolerance at a given step of the algorithm. The surface approximation obtained with LR B-splines depends on the tolerance from which the refinement is performed, the refinement method itself and the bidegree of the spline space. We have reviewed in Chap. 4 statistical methods to fix these parameters optimally.
6.3.1 General Principle of Adaptive Approximation Combining Least Squares and Multilevel B-Spline Approximation
We parameterize the data points by their x- and y-values, and approximate the z-values by an LR B-spline surface (function). The starting point of the iterative surface approximation with LR B-splines is a tensor product B-spline surface. Here a B-spline surface grid (also called also mesh) corresponds to the initial setting of the topology. Then an optimization is performed to compute the best LR B-spline surface corresponding to the initial mesh for approximating the point cloud. Once the initial surface is obtained, the error term between the mathematical surface and the points in the z-direction is computed. We consider the L1 norm, see Al-Subaihi et al. [AlS04]. If this value exceeds a given tolerance, a refinement is performed in the cells containing the corresponding points. The adaptive fitting is performed until a given number of iterations is reached or until no more error terms exceed the tolerance.
Extra degrees of freedom are inserted in the LR B-spline surfaces locally, where needed. The main advantage is that noise overfitting is avoided and the growth in data volume is limited, on the contrary to global fitting strategies where all cells are refined at every iteration steps. Clearly, with locally adaptive refinement methods, there will be cells that remain unchanged after a given iteration step because the error term is smaller than the chosen tolerance or there is no point in the cell. Intuitively, few cells are refined with a large tolerance whereas, all cells will be divided for a very low tolerance.
In the first iteration steps, the fitting is made using the LS method, i.e., the L2 norm or Euclidean distance between the parametrized point cloud and the parametric surface is minimised. As the number of refinement steps increases, it is favourable to switch to the Multilevel B-spline Approximation (MBA) developed by [Lee97], see also [Sky15] and Chap. 3 for more details on the procedure. For the MBA strategy, no equation system is solved as the coefficients are computed locally and explicitly: the residuals of the data points obtained from the last fitted surface are recursively approximated using finer meshes.
6.3.2 Approximation of the Selected Data Set
In this section, we present the results of the approximation of the domain under consideration, see Fig. 6.4.
6.3.2.1 Goodness of Fit
The goodness of fit is assessed using the usual criteria, as described in Chap. 3:
-
The mean absolute distance abbreviated as MAE referring to the point cloud with respect to the approximated surface
-
The maximum error \({Max}_{err}\)
-
The number of points outside tolerance \(n_{out}\)
-
The number of coefficients \(n_{cp}\)
-
The computational time CT. We used an 64-bit operating system with 8 GB RAM and an Intel(R) Core(TM) i5-63000U CPU @ 2.40 and 5.8 GHz.
6.3.2.2 Dealing with Outliers and Voids
Voids and outliers are typical challenges related to geospatial data, which will be shortly addressed in this section.
Voids
The point clouds contain voids which come from the scanning configuration and generate domains where no points are recorded. Data gaps challenge the approximation as the surface will try to extrapolate the known information in these areas, creating artificial oscillations. This drawback is particularly emphasized when LS approximation is used. MBA is more robust due to its explicit formulation and its similarity with a L1 norm fitting, see Kermarrec and Morgenstern [Ker22] for a discussion. To face that challenge, we apply a 2-steps procedure:
-
Restricting the values of the coefficients to an interval depending on the height range of the data points.
-
Trimming: Trimming is a well known method within the context of Computed Aided Design, Medland and Mullineux [Med88]. Here the points are bounded by curves in the xy-plane. The curves are arranged in one loop for the outer boundary and one curve for each hole and associated to the parameter domain (xy-plane for points parameterized by their x- and y-values) of the surface. We refer to Chap. 5 for a detailed explanation.
Outliers
The point clouds under consideration contain noise and artifacts. These latter need to be removed prior to the surface approximation in order to avoid the fitting of outliers, which is unfavorable for further interpretation of the results.
Different methods exist to detect outliers. They are reviewed and applied in Chap. 5, Sect. 5.3.2.
Following strategies can be applied besides eliminating outliers:
-
A smoothing term can be added to the function to minimize in the first step of the approximation [Sky15]. This way, smooth surfaces are obtained and ripples are avoided. Additionally, the MBA is known to be robust against outliers due to the use of the L1 norm of the error term to perform the adaptive refinement, Aigner and Jüttler [Aig07].
-
It is possible to perform a classification previous to the fitting, as, e.g., in [Che118], Li et al. [Li16] or Xue et al. [Xue20] for a random forest classification algorithm. This way, objects such as trees or cars can be eliminated and only points corresponding to the ground approximated.
The data sets used in this chapter is cleaned for obvious outliers using the last procedure described in Chap. 5, Sect. 5.3.2.3.
6.3.3 Visualization of the Approximation at Different Iteration Steps
In this section, we will present some results of the surface approximation with the aim of being didactic and visual to improve the understanding of iterative surface approximation with LR B-splines.
6.3.3.1 The Adaptive Surface Approximation, Step by Step
A tolerance of 0.5 m is selected for the approximation of the selected point cloud. If a smaller tolerance is used, the risk of overfitting increases, which is unfavorable for a smooth and reliable surface fitting. A higher tolerance leads to a convergence after only few iterations, without the advantages of local refinement being visible, i.e., the approximation remains coarse.
We start the approximation with an initial biquadratic TP B-spline surface of 10 times 10 coefficients to approximate the point cloud. This corresponds to iteration 0 as shown in Fig. 6.5. Then the algorithm is allowed to run for 7 iterations, ending as shown in Fig. 6.12. The final surface output is shown in Fig. 6.12. We additionally draw the trimmed surface with respect to the point cloud domain (Fig. 6.13). Here the domains with no point are “cut” so that no unwanted effects such as, e.g., oscillations or drops occur in the domain without any observation.
6.3.3.2 Goodness of Fit
The results of the approximation are summarized in Table 6.1. Combined with Figs. 6.5, 6.6, 6.7, 6.8, 6.9, 6.10, 6.11 and 6.12, the impact of increasing the number of iteration steps is visible: after 5 iterations, the MAE does not decrease significantly (from 0.095 to 0.083 m), but the maximum distance does (from 0.095 to 0.083 m). This difference highlights the main advantage of local refinement: only specific domains are approximated locally with a higher accuracy by letting the main part of the point cloud untouched. The meshes allow to visualize more clearly the property of the iterative local refinement, although it is hardly possible to distinguish the differences in the last two iterations. Here the increase in the number of coefficients between iteration 5 and 7 (from 5700 to 14,000) is more descriptive (Table 6.1).
Figures 6.5, 6.6, 6.7, 6.8, 6.9, 6.10, 6.11 and 6.12 further highlight how the original coarse mesh from the first iteration is refined at each step. The number of meshlines, and so the number of coefficients, increases to account for local details only. Figure 6.13a shows where the points outside tolerance are located on the final surface after 7 iterations. The underlying final mesh is depicted additionally. There remain domains where the approximation cannot be further improved: Table 6.1 shows that increasing the number of iterations does not lead to a smaller MAE after the sixth iterations. Indeed, the number of points outside tolerance decreases but in % of the total number of points, the difference is irrelevant (99.3 vs. 99.1% between the sixth and the sevenths iteration). At the same time, the number of coefficients increases from 9000 to 14,000. The computational time increases as well, but remains at a moderate level (a few sec). Thus, when searching for an optimal surface approximation, a balance has to be found between the number of iterations, the MAE and its relevance, the maximum distance and the computational time for a given tolerance. This choice is let to the practitioner which should judge the risk of fitting the noise as the number of iterations increases. An indication can be provided by searching the minimum of AIC, as describe in Chap. 4. In our particular case, a minimum could be found after the eighth iteration. We point out that the AIC gives an indication about the turning point from which further refinement is not leading to a strong decrease of the root mean square error with respect to the increase of coefficients. It is a global criterion, that does not provide information about the local adjustment.
6.4 LR Spline Volumes to Analyse Spatio-temporal Deformation
The domain under consideration was scanned every two hours during three consecutive days. This leads to a large amount of point clouds, making the use of surface and volume approximations relevant to visualize and analyze the deformations or changes that may occur during that time. The main advantage is not having to work with the noisy and scattered point clouds. This is computationally advantageous and allows for a simpler interpretation.
6.4.1 Principle of Volume Approximation
To get an impression on the continuous development of the landscape in the selected area, the time component is added as a third parameter direction in the data set allowing an interval of 0.5 between each set in the time direction. Figure 6.14 shows the structure of the composed raw point clouds, before the volume approximation. The block of point clouds is narrow in the time direction compared to the space directions, and the time layers are distinguished by colour. The distances between these layers are larger than the distances between points in the xy-plane, but still small enough to control the behaviour of the spline volume approximation. The height range corresponding to the different epochs is very dependent of the presence of the aforementioned tree, i.e., the data set shown in Fig. 6.3a has a range of \([-42.69,17.77]\) while the range for the points in (b) is \([-42.7, 8.55]\). The total height range in including all point sets is \([-42.71,17.89]\).
A point cloud assembled from all epochs is approximated by an LR B-spline volume. Following Sect. 6.3.3, we apply a tolerance of 0.5 m and perform 7 iterations. Figure 6.16 shows the corresponding LR volume. The visualization is performed with a dedicated viewer as proposed in [Fuc17]. The colours are linked with elevation. Here we do not perform a surface approximation of each of the 36 point clouds independently and individually, as shown in the previous section: we approximate the block of point clouds as a whole.
The trivariate point cloud is approximated by an LR B-spline volume following the same approach as for surface approximation explained in Chap. 3.
-
1.
The starting point is a TP B-spline volume, which is refined in an adaptive procedure.
-
2.
The refinement is performed in a volumetric mesh cell when the distance between the value of the trivariate point and the LR B-spline volume exceeds a specified tolerance.
-
3.
Then a mesh rectangle splitting at least one trivariate B-spline is inserted.
At each iteration step, an updated approximation using MBA is computed. The iteration stops when the given tolerance is met or a maximum number of iteration steps is applied. Figure 6.15 shows a mesh corresponding to a triquadratic LR B-spline volume with initially three inner knots in each parameter direction after one iteration. The refinement is performed only in the first parameter direction and the inserted mesh rectangles are highlighted with yellow colour.
We will refine in all three parameter directions simultaneously. The maximum distance between the point cloud and the volume after 7 iterations is 29 m. The most distant points are associated to the tree, which cannot be well fitted by a smooth surface. The average distance is 0.17 m and 1,507,346 out of 37,785,650 points have a distance to the volume larger than the tolerance of 0.5 m, meaning that 96% of the points are within the resolution. The maximum distance is kept at approximately the same level throughout the computation indicating a feature unsuitable to be fitted with a smooth volume, while the average distance is gradually reduced. The final number of coefficients is 93,829. The computational time is 10 min and 7 s excluding file operations, which is manageable from a practitioner perspective.
The domain of the LR B-spline volume approximation to the point cloud corresponds to the axis parallel bounding box surrounding the parameter points \(\{x_i,y_i,t_i\}_{i=1}^N\) where N is the total number of points. As the boundaries of the point cloud do not adapt to axis parallel lines, for some parts of the volume shown in Fig. 6.16 there are no corresponding data points. The figure visualizes the height field corresponding to the point cloud with colours. The volume is cut at the position of the tree, which is present in the point clouds at the beginning of the acquisition period only. The tree can be recognized in the volume approximation and is marked by a circle in the figure.
The presence or absence of the tree is the largest difference between the different data sets and the transition from tree to no-tree is totally dominant in the LR volume description of the landscape throughout the three days of acquisition. Some smaller differences between the data sets can be distinguished in the volume, see the marked area in Fig. 6.17. The corresponding marks is weak: to get clearer indications of change, we turn to the derivative of the volume in the time direction.
6.4.2 Volume Changes in the Time Direction
A partial derivative of a polynomial TP B-spline volume is a polynomial TP B-spline volume with the polynomial degree decreased by one in the direction of differentiation, and very simple formulas exist for computing the derivative. As a spline volume the partial derivative of an LR B-spline volume in some direction is also an LR B-spline volume, but the local structure of the LR B-spline volume implies that the differentiation procedure becomes complex. In the following, we represent, for each cell, the field as a spline volume without inner knots and differentiate cell by cell.
6.4.2.1 Partial Derivative of the Volume for Spatio-temporal Analysis
A non-zero derivative of the height field reveals changes in height: by focusing on the time direction only, we exclude landscape formations that do not change over time.
Figure 6.18 shows changes in time revealed by the time derivative of the LR B-spline volume. The visualization focuses on derivatives within a \([-3,3]\) range. Higher values for the derivative field exist, but are not highlighted explicitly. The field is hidden for derivatives close to zero. We see that changes in the height field occurs as blobs in the total volume. The figure presents an overview of the volume (top) and looks into it from the x-direction (bottom). The blobs of change are local in the time direction. They corresponds to (i) an object that appears and disappears or (ii) a modification of the landscape that is later left untouched. The spot marked with “A” represents the tree that is present in the first part of the time line. “B” is outside the point cloud and indicates that the height field is gradually decreased after removal of the tree. “C” and “D” are areas of interest to be discussed in the following.
Figure 6.19 focuses on the area marked with “C” in Fig. 6.18. Here it is marked with a circle. Green colour means no change in time, red means that the height increases while blue means that it decreases. The activities performed in period of time in this area are discussed in further detail in Sect. 6.4.3.
In Fig. 6.20 the area “D” is marked with an ellipse. In the cut to the right, we can see from the colours that the height field increases and then decreases again. In between, there is a narrow green strip indicating that the observed object, probably an excavator, is present. The incident to the right happens at an earlier point in time than the one to the left (right picture). This indicates a movement of the excavator from position “1” to position “2”.
6.4.2.2 Spatio-temporal Changes Visualized as Medical Images
In Fig. 6.21, a visualization dedicated to medical images [ITK] is used to give an alternative view of the height changes. The volume is represented as a \(255 \times 255 \times 255\) raster and the values are computed by averaging a number of sample points in the raster cells. The views in “a” and “d” show the same snapshot in time for different features of the volume. The derivative of the height field in the time direction for August 20th 11 PM is shown in Fig. 6.21, “a”. Views “b” and “c” show cuts through the volume with constant y and constant x, respectively. The three views are connected by the blue cross. In “d” the average difference in point elevation for each cell is shown. The circle indicates the position of the tree in the views where it is present. Views “a” and “d” indicates that two objects of significant size are situated close to the blue cross and there are some smaller additional modifications of the elevation in the vicinity of the cross. The duration of the elevation changes can be seen from view “b” and “c” where the development in time is shown in the vertical direction. This reveals that the highlighted elevation changes were temporary. Note that a permanent change in elevation will appear only as a limited white spot in view “b” and “c”. View “d” can be used to place an incidence in the landscape as the intensity map gives an indication of the terrain. White indicates steep areas or rapid landscape changes in time, while plains and areas without points are black.
Figure 6.22 provides another visualization of the situation in Fig. 6.20. The descent from the tree is completed as can be seen in view “b”. Note that the derivative has its largest values when the volume adapts to a change and not when the peak or dump is at its largest. The time of the ring is when the tree is no longer present. The two positions of the excavator are shown in views “a” and “b”. Due to the position of the cut, the appearance and disappearance of only one excavator are visible in “c”.
6.4.3 Difference of Surfaces
In this section, we propose to analyse more specifically changes in the point cloud with LR B-splines surfaces. Here we look at the surface approximation of the point clouds acquired at 11 PM and 5 AM at August 20th, see Fig. 6.23. The maximum distance between the points and the surface is 28.58 m for (a) and 28.30 m for (b). The average distances are 0.178 and 0.179 m, and the number of points with a distance larger then 0.5 m is 25,583 and 24,801. The numbers of data points are 1,071,938 for (a) and 1,068,546 for (b). The main obstacle for an accurate approximation is the tree in the upper left corner, but also some excavators in the right half of the figures are impossible to represent exactly with a smooth surface. Some differences between Fig. 6.23a and b can be identified, but the general impression is that there is little difference in the landscape between the two epochs. Figure 6.24 reveals some more details. Here the difference surface between the two surfaces in Fig. 6.23 is computed and represented as an LR B-spline surface, difference surface = surface b - surface a. The surface is trimmed according to the point cloud at 11 PM. Contour curves are computed for every 0.25 m between \(-5\) and 5 m. Some details concerning the computation of these curves are given in Appendix 1. The green curves visualize material that is removed from (a) to (b) and red curves material that is added. The black curves show the zero level for the difference surface. Most of the surface is oscillating slightly below and slightly above zero. This is an effect of differences in the point clouds and the approximation error and does not represent a change in the landscape. The red and green curves in most cases represent change. At the point marked with “A” is the aforementioned tree and the difference here is not due to a real change. At “B”, an excavator is added an at “C” one is removed. Snow is removed at “E” and moved to “D”. Some local changes in the snow cover take place at “F”. This short analysis highlights the potential of surface approximation to analyse deformation with application for geomorphological analysis. We refer to [And21] for an example based on the noisy and scattered point clouds.
6.5 Conclusion
We have presented a local adaptive refinement strategy to approximate efficiently scattered and noisy point clouds from TLS. Prominent applications are deformation analysis or monitoring, without having to manipulate or filter a huge amount of data. To that end, we have used LR B-spline surfaces, which were shown to be well adapted to fitting terrains and seabeds. This approach refines the point clouds locally, avoiding the computation of unnecessary surface coefficients: the output is a compact surface in a short amount of time. This mathematical representation is favorable for further analysis of the point cloud; the noise is filtered out, and voids can be handled efficiently with CAD techniques such as trimming. The approximation method is based on a combination of LS, to which a smoothing term can be added in the first iteration steps, and MBA. Outliers are to be eliminated prior to the surface approximation. A classification can be performed in advance to eliminate, e.g., trees or cars if only the ground is of interest for deformation analysis.
We have applied the algorithm to TLS point clouds recorded in the Alpine region in Austria. The domain under consideration was scanned every two hours during three consecutive days. This large amount of data allows a visualization of change pattern from the mathematical approximations, without having to manipulate the original point clouds. To that end, we have introduced the LR B-spline volume and its derivative as a possibility to visualize spatio-temporal changes. The story of the point clouds could be guessed, paving the way for new applications of surface approximation within a GIS context. We have used images inspired by medical applications to visualize and analyse geomorphological changes. These examples highlight the potential of combining different visualization techniques to extract spatio-temporal information from a high number of point clouds.
The source codes to perform the approximation with bivariate (lrsplines2D) and trivariate (lrsplines3D) LR B-splines are made available by SINTEF Digital, Department of Mathematics and Cybernetics for downloading at the link:
https://github.com/SINTEF-Geometry/GoTools.
The hardware requirements are Windows, Linux or MacOS. The program language is C++. Following software are required: Cmake, Boost, Qt for the viewer used to visualize the approximated surfaces in this chapter.
References
Aigner, M., & Jüttler, B. (2007). Robust fitting of parametric curves. PAMM. https://doi.org/10.1002/pamm.200700009
Al-Subaihi, I., & Watson, G. A. (2004). The use of the L1 and l\(\infty \) norms in fitting parametric curves and surfaces to data. Applied Numerical Mathematics. https://doi.org/10.1002/anac.200410004
Anders, K., Winiwarter, L., Mara, H., Lindenbergh, R., Vos, S. E., & Höfle, B. (2021). Fully automatic spatiotemporal segmentation of 3D LiDAR time series for the extraction of natural surface changes. ISPRS Journal of Photogrammetry and Remote Sensing. https://doi.org/10.1016/j.isprsjprs.2021.01.015
Barbarella, M., & Fiani, M. (2013). Monitoring of large landslides by Terrestrial Laser Scanning techniques: Field data collection and processing. European Journal of Remote Sensing. https://www.tandfonline.com/doi/abs/10.5721/EuJRS20134608
Bracco, C., Giannelli, C., Großmann, D., & Sestini, A. (2018). Adaptive fitting with THB-splines: Error analysis and industrial applications. Computer Aided Geometric Design. https://doi.org/10.1016/j.cagd.2018.03.026
Chen, M., Pan, J., & Xu, J. (2018). Classification of terrestrial laser scanning data with density-adaptive geometric features. IEEE Geoscience and Remote Sensing Letters. https://doi.org/10.1109/lgrs.2018.2860589
Cignoni, P., Callieri, M., Corsini, M., Dellepiane, M., Ganovelli, F., & Ranzuglia, G. (2008). MeshLab: An open-source mesh processing tool. In Sixth Eurographics Italian Chapter Conference (pp. 129–136).
CloudCompare (version 2.12) [GPL software]. (2022). Retrieved from http://www.cloudcompare.org/
Dokken, T., & Skytt, V. (2007). Intersection algorithms and CAGD. In Geir. Hasle, Knut-Andreas. Lie et Ewald. Quak, coord.: Geometric modelling, numerical simulation, and optimization. Applied mathematics at SINTEF (pp. 41–90), Springer, SINTEF.
Dokken, T., Pettersen, K. F., & Lyche, T. (2013). Polynomial splines over locally refined boxpartitions. Computer Aided Geometric Design. https://doi.org/10.1016/j.cagd.2012.12.005
Dokken, T., & Skytt, V. (2021). SISL-SINTEF spline library, reference manual, version 4.7. https://github.com/SINTEF-Geometry/SISL/
Forsey, D. R., & Bartels, R. H. (1988). Hierarchical B-spline refinement. In SIGGRAPH 88 Conference Proceedings, vol. 4, pp. 205–212.
Fuchs, F. G., Barrowclough, O. J. D., Hjelmervik, J. M., & Dahl, H. E. I. (2017). Direct interactive visualization of locally refined spline volumes for scalar and vector fields. http://arxiv.org/abs/1707.01170
González-Aguilera, D., Gómez-Lahoz, J., & Sánchez, J. (2008). A new approach for structural monitoring of large dams with a three-dimensional laser scanner. Sensors. https://doi.org/10.3390/s8095866
Griebel, A., Bennett, L. T., Culvenor, D. S., Newnham, G. J., & Arndt, S. K. (2015). Reliability and limitations of a novel terrestrial laser scanner for daily monitoring of forest canopy dynamics. Remote Sensing of Environment. https://doi.org/10.1016/j.rse.2015.06.014
ITK-SNAP. http://www.itksnap.org/pmwiki/pmwiki.php
Jia, D., Zhang, W., & Liu, Y. (2021). Systematic approach for tunnel deformation monitoring with terrestrial laser scanning. Remote Sensing. https://doi.org/10.3390/rs13173519
Kermarrec, G. (2020). On estimating the hurst parameter from least-squares residuals. Case study: Correlated terrestrial laser scanner range noise. Mathematics. https://doi.org/10.3390/math8050674
Kermarrec, G., & Morgenstern, P. (2022). Multilevel T-spline approximation for scattered observations with application to land remote sensing. Computer-Aided Design. https://doi.org/10.1016/j.cad.2022.103193
Lee, S., Wolberg, G., & Shin, S. Y. (1997). Scattered data interpolation with multilevel B-splines. IEEE Transactions on Visualization and Computer Graphics. https://doi.org/10.1109/2945.620490
Li, Z., et al. (2016). A three-step approach for TLS point cloud classification. IEEE Transactions on Geoscience and Remote Sensing. https://doi.org/10.1109/tgrs.2016.2564501
Liang, X., Kankare, V., Hyyppä, J., Wang, Y., Kukko, A., Haggrön, H., et al. (2016). Terrestrial laser scanning in forest inventories. ISPRS Journal of Photogrammetry and Remote Sensing. https://doi.org/10.1016/j.isprsjprs.2016.01.006
Medland, A. J., & Mullineux, G. (1988). Principles of CAD. A coursebook. Kogan Page. Online. https://ebookcentral.proquest.com/lib/kxp/detail.action?docID=3082883
Mukupa, W., Roberts, G. W., Hancock, C. M., & Al-Manasir, K. (2016). A review of the use of terrestrial laser scanning application for change detection and deformation monitoring of structures. Survey Review. https://doi.org/10.1080/00396265.2015.1133039
Patrikalakis, N. M., & Maekawa, T. (2002). Shape interrogation for computer aided design and manufacturing. Springer.
Pfeifer, N., & Briese, C. (2007) Laser scanning—Principles and applications. In GeoSiberia 2007—International Exhibition and Scientific Congress. European Association of Geoscientists and Engineers. https://doi.org/10.3997/2214-4609.201403279
Piegl, L. (1995). The NURBS book. Springer. ISBN: 978-3-642-97385-7.
Schröder, D., & Klonowski, J. (2020). i MON–Integriertes monitoring von Oberflächen-und Untergrundbewegungen verursacht durch den Kohlebergbau. Ingenieurvermessung (pp. 19–20). Internationaler Ingenieurvermessungskurs.
Sederberg, T. W., Zheng, J., Bakenov, A., & Nasri, A. (2003). T-splines and T-NURCCs. ACM Transactions on Graphics. https://doi.org/10.1145/882262.882295
Skytt, V., Barrowclough, O., & Dokken, T. (2015). Locally refined spline surfaces for representation of terrain data. Computers & Graphics. https://doi.org/10.1016/j.cag.2015.03.006
Skytt, V., & Dokken, T. (2022). Scattered data approximation by LR B-spline surfaces. A study on refinement strategies for efficient approximation. In C. Manni & H. Speleers (Eds.), Geometric challenges in isogeometric analysis (Vol. 49). Springer INdAM Series.
Vosselman, G., & Maas, H.-G. (2010). Airborne and terrestrial laser scanning. Whittles Publishing (Distributed in North America by CRC).
Wujanz, D., Burger, M., Mettenleiter, M., & Neitzel, F. (2017). An intensity-based stochastic model for terrestrial laser scanners. ISPRS Journal of Photogrammetry and Remote Sensing. https://doi.org/10.1016/j.isprsjprs.2016.12.006
Xue, D., Cheng, Y., Shi, X., Fei, Y., & Wen, P. (2020). An improved random forest model applied to point cloud classification. In IOP Conference Series: Materials Science and Engineering. https://doi.org/10.1088/1757-899X/768/7/072037
Zogg, H. M., & Ingensand, H. (2008). Terrestrial laser scanning for deformation monitoring: Load tests on the Felsenau Viaduct (CH). The International Archives of the Photogrammetry, Remote Sensing. https://doi.org/10.3929/ETHZ-B-000011210
Author information
Authors and Affiliations
Corresponding author
1 Appendix: Contour Curves
1 Appendix: Contour Curves
In Fig. 6.24, we showed contour curves corresponding to the underlying surface. The calculation of contour curves is supported in all GIS systems. For LR B-spline surfaces, contour curves are curves where the value of the spline function is constant.
To compute the contour curves, we search for curves \(f_a(t)=(f_1(t),f_2(t))^T \in R^2\) such that \(F(f_1(t),f_2(t)) = a\) for an LR B-spline surface F and an elevation value a. To that end, we split the LR B-spline surface into a number of TP B-spline surfaces. The division into TP B-spline surfaces is performed by a recursive algorithm. At each level, we consider how the current surface can be split by extending one meshline to cover the entire surface domain. The candidate meshline must contain T-joints, i.e., at least one meshline in the other parameter direction must end at this meshline. The number of surface elements overlapping the meshline extension should be minimized and at the same time the meshline should divide the current surface into two surfaces with roughly the same number of knots. The balance between the two criteria varies throughout the recursion levels. When an appropriate split is found, the algorithm proceeds to look for splits in the two sub-surfaces. The splitting algorithm stops when no sub-surface contains more meshlines that don’t traverse the surface domain than a given threshold. Each sub-surface is expanded to a TP B-spline surface by adding missing mesh line segments.
Figure 6.25 illustrates the division of the difference surface presented in Sect. 6.4.3 into TP B-spline surfaces. Our aim is to study the computation of contour curves with zero height with some detail.
We use the interrogation functionality of SINTEF’s spline library, SISL [Dok21] on each sub surface after the LR B-spline surface is split into TP B-spline surfaces. The contouring problem corresponds to computation of intersections between a parametric spline surface and an algebraic surface, a problem that is discussed in [Pat02].
The applied algorithm can be divided into three parts:
-
1.
Divide the LR B-spline surface into a set of TP B-spline surfaces
-
2.
For each value a and each TP B-spline surface:
-
(a)
Compute the topology of the contour curves using SISL. This is a recursive algorithm that finds a set of “guide points” on each curve branch.
-
(b)
Trace each identified curve branch starting from an identified “guidepoint”. Represent the curves traced out as spline curves.
-
(a)
-
3.
For each value a, combine sub curves from different TP B-spline surfaces into contour curves for the entire LR B-spline surface.
An LR B-spline surface approximating an area with large shape variations will contain many details, which again will lead to a complex pattern of contour curves. Efficiency and robustness of the algorithm is reached through good interception methods and a clever strategy for dividing the surface into subsets. A discussion on subdivision strategies for surface intersections can be found in [Dok07]. A general rule is to subdivide at singularities and internal in closed loops. A complex situation leads to more subdivisions and consequently more guide points.
Figure 6.26 illustrates the computation of the contour curves. The red guide points in (b) are found at boundaries between sub surfaces. In such a complex situation, several recursion levels are required to be able to separate the different branches of the contours and ensure that no more closed contour curves exist. The last sub surface domain is shown in the upper right corner of the picture. All coefficients of the corresponding TP B-spline surface are negative. Thus, there is no possibility of a contour curve in this area and the computation can be finalized.
Given information about all contour curve branches in the area of interest, the curves can be drawn. Here the objective is to describe the curve with sufficiently accuracy, handle sharp turns in the curve and avoid jumping to a different contour curve. A marching procedure is applied. Given one point on the curve, a guess for the next point is made. The new point is moved to the contour curve and the segment between the two points is checked for consistence. The distance between the points is diminished if necessary. Figure 6.26c shows the tracing results. The density of the points is increased at sharp corners and when two curves pass within a small distance. Fragments of the contour curves are computed separately for each sub surface and the final step is to merge curve fragments across subset boundaries.
Rights and permissions
Open Access This chapter is licensed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license and indicate if changes were made.
The images or other third party material in this chapter are included in the chapter's Creative Commons license, unless indicated otherwise in a credit line to the material. If material is not included in the chapter's Creative Commons license and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder.
Copyright information
© 2023 The Author(s)
About this chapter
Cite this chapter
Kermarrec, G., Skytt, V., Dokken, T. (2023). LR B-Spline Surfaces and Volumes for Deformation Analysis of Terrain Data. In: Optimal Surface Fitting of Point Clouds Using Local Refinement. SpringerBriefs in Earth System Sciences. Springer, Cham. https://doi.org/10.1007/978-3-031-16954-0_6
Download citation
DOI: https://doi.org/10.1007/978-3-031-16954-0_6
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-16953-3
Online ISBN: 978-3-031-16954-0
eBook Packages: Earth and Environmental ScienceEarth and Environmental Science (R0)