Interpolation in digital terrain modeling is used to determine the height value of a point by using the known heights of neighboring points.. There are two implicit assumptions behind in
Trang 1Interpolation Techniques for Terrain Surface Modeling
6.1 INTERPOLATION TECHNIQUES: AN OVERVIEW
Interpolation is an approximation problem in mathematics and an estimation problem
in statistics Interpolation in digital terrain modeling is used to determine the height value of a point by using the known heights of neighboring points There are two implicit assumptions behind interpolation techniques: (a) the terrain surface is con-tinuous and smooth and (b) there is a high correlation between the neighboring data points Interpolation is one of the core techniques in digital terrain modeling because
it is involved in the various stages of the modeling process such as quality control, surface reconstruction, accuracy assessment, terrain analysis, and applications Interpolation techniques can be classified according to different criteria and they can be used for different purposes Table 6.1 attempts to provide a simple classification
By the size of the area for interpolation, two approaches are identified
(Petrie 1990a), that is, area based and point based In the area-based approach the
surface is constructed by using all the reference (known) points within this area and the height of any point within this area can be determined by using this
con-structed surface Area-based interpolation could be either global or local Global interpolation involves the construction of a single complex 3-D surface from the
complete data set of measured points, from which the height values of all other points can be obtained This is an extreme approach The usefulness of this type of technique depends on the complexity of the terrain surface and the actual size of the area A more adaptive solution is to divide a large area into a series of patches
of identical shape and size This is called local or patchwise interpolation A
sur-face is constructed for each patch by using all the reference points and heights of all points (to be interpolated) within this patch are obtained from this patch surface The size of the patch is determined by the complexity of the area and there could be
115
Trang 2Table 6.1 A Classification of Interpolation Techniques
Size of area for interpolation Point based, area based
(patchwise or global) Exactness of the surface Exact fitting, best fitting Smoothness of the surface Linear, nonlinear Continuity of the surface Step, continuous Preciseness of the function Precise, approximate Certainty of the problem Functional, stochastic Domain of interest Spatial, spectral (i.e., frequency) Complexity of the phenomenon Analytical, numerical iteration
a certain degree of overlap between neighboring patches to ensure smooth connec-tion between patches At the other extreme, a surface could be constructed for the
interpolation of each point, leading to pointwise interpolation This requires heavy
computation
In the construction of a surface for interpolation, (whether global, patchwise, or pointwise), the surface may or may not pass through all the reference points If it
does pass through all the points, it is an exact reconstruction and is called exact fitting However, the surface may not pass through all the reference points, due to
errors in the reference points In this case, there might be a deviation from each of these reference points If such deviations are limited to a minimum, then the surface
is a best fit This type of interpolation is called best fitting.
A surface could be in the form of steps, as shown inFigure 4.2.This is a discon-tinuous surface In many applications, continuity is a requirement, at least visually,
thus a continuous surface can be constructed The continuous surface may or may not
be smooth For example, as discussed inChapter 4,a surface comprising a set of con-tiguous linear facets is not continuous in the first derivative and thus is not smooth Both triangular facets and bilinear surfaces are linear surfaces Usually, a smooth surface is constructed by using some kind of higher-order polynomials
It is also possible to use an approximate function for interpolation if the original function is too complex or the approximate function is good enough but much simpler For example, when x is a very small angle, the value of sin(x) can be
nicely approximated byx itself In other words, y = x is a very good approximation
of the functiony = sin(x) under this condition In fact, it is also possible (but not
in terrain modeling) that the nature of a phenomenon is too complex and one is not able to establish an analytical function for the problem, so numerical approximation
by iteration is used
A problem could be deterministic or probabilistic For the former, a deterministic function can be used and for the latter a stochastic model must be used Sometimes the small variations on the terrain are so complex that the variation is then treated as
a stochastic process
Interpolation can take place in either the space or the spectral domain Most interpolation techniques for terrain modeling are for spatial interpolation However,
it is also possible to transform the data into a frequency domain and perform interpolation there
Trang 3It should be emphasized that interpolation techniques are well discussed within the mathematical community and a large body of literature is available Therefore, only those widely used in digital terrain modeling are described in this chapter In other
words, some interpolation functions, such as Kriging, are omitted here due to their
complexity Furthermore, in photogrammetric community, it was found that sampling
is the single vital step in digital terrain modeling because information lost at the sampling stage can never be reconstructed by whatever interpolation function This
is why no complicated interpolation is used in digital terrain modeling
6.2 AREA-BASED EXACT FITTING OF LINEAR SURFACES
This section discusses interpolation of a linear surface that fits exactly to the reference points In other words, each reference point is honored
6.2.1 Simple Linear Interpolation
As discussed in Chapter 4, a plane can be determined by three points on it and
a triangular facet is a typical example of such a surface The mathematical function
of a plane is as follows:
wherea0,a1, anda2are the three coefficients and(x, y, z) is the set of coordinates
of a surface point To compute these three coefficients, three reference points with known coordinates, for example, P1(x1,y1,z1), P2(x2,y2,z2), and P3(x3,y3,z3),
are required to establish three equations as follows:
a a01
a2
=
11 x x12 y y12
1 x3 y3
−1
z z12
z3
Once the coefficientsa0,a1, anda2are computed, then the heightzi of any pointi
with a given set of coordinates(xi,yi ) can be obtained by substituting (xi,yi ) into
Equation (6.1)
6.2.2 Bilinear Interpolation
Bilinear interpolation from a square grid has been mentioned in Section 4.5 and illustrated inFigure 4.14.Bilinear interpolation can be performed for any four points (not along a line) The mathematical function is as follows:
wherea0,a1,a2,a3is the set of coefficients They are to be determined by four equa-tions that are formed by making use of the coordinates of four reference points,
Trang 4say, P1(x1,y1,z1), P2(x2,y2,z2), P3(x3,y3,z3), and P4(x4,y4,z4) The
mathe-matical formula is as follows:
a0
a1
a2
a3
=
1 x1 y1 x1y1
1 x2 y2 x2y2
1 x3 y3 x3y3
1 x4 y4 x4y4
−1
z1
z2
z3
z4
Once the coefficients a0, a1, a2, and a3 are computed, then the heightz i of any pointi with a given set of coordinates (x i,y i ) can be obtained by substituting (x i,y i )
into Equation (6.3)
If data (reference) points are distributed in the form of square grids, then the following formula can be used:
zp= z1
1− x
d
1− y
d
+ z2
1− y
d
x d
+ z3
x d
y d
+ z4
1− x
d
y d
(6.5)
In the formula, points 1, 2, 3, and 4 are the four nodes of the square grid, andd is
the length of the grid interval(Figure 6.1a)
In fact, interpolation on a triangular facet can also be done in a similar way
to grid-based bilinear interpolation As shown in Figure 6.1(b), the height of point
p(xp,yp,zp) can be interpolated from points 1 and 2 as follows:
zp= z1 + (z2 − z1 ) × (xp− x1 )/(x2− x1 ) (6.6)
and
z1= zA + (zB − zA ) × (x1− xA )/(xB− xA ) (6.7a)
z2= zA + (zC − zA ) × (x2− xA )/(xC− xA ) (6.7b)
whereyp = y1 = y2, and points 1 and 2 lie on lines AB and AC, respectively.
Alternatively, the local area coordinates of Figure 5.13 may be used for linear interpolation using a weighted average, that is,
zp= z1× a1 + z2 × a2 + z3 × a3
This guarantees continuity between adjacent triangles Indeed, if the distribution of the reference points is not good (e.g., nearly along a straight line), then Equation (6.2)
is not stable and the use of Equation (6.6) is recommended in such a case
Trang 5B
C p
3 4
∆y
∆x P
d
(b) (a)
Figure 6.1 Bilinear interpolation: (a) for square grids and (b) for triangles.
6.3 AREA-BASED EXACT FITTING OF CURVED SURFACE
Bilinear interpolation is widely used in DTM interpolation because it is simple, intuitive, and reliable But the resulting surface is not smooth To make the surface smooth, a polynomial surface might be fitted to a set of contiguous linear surfaces Alternatively, exact fitting of curved surfaces is also possible, such as a bicubic spline function
6.3.1 Bicubic Spline Interpolation
To overcome the shortcomings of bilinear functions, a bicubic spline function can be used to construct a smooth DTM surface over a patch consisting of four grid nodes, for example, points A, B, C, and D inFigure 6.2.The mathematical function of a bicubic function is as follows:
z = f (x, y) =
3
j=0
3
i=0 ai,j x i y j
= a00 + a10 x + a20x2+ a30 x3
+ a01 y + a11xy + a21x2y + a31x3y + a02 y2+ a12 xy2+ a22 x2y2+ a32 x3y2
+ a03 y3+ a13 xy3+ a23 x2y3+ a33 x3y3
(6.9)
wherea00,a01,a10, , a33are the 16 coefficients to be determined
Sixteen equations are needed to solve the 16 coefficients With the coordinates of the four grid nodes known, four equations can be established Therefore, another 12 equations are needed and will come from the conditions for the connections between patches, that is,
1 the slopes at each node (i.e., the joint between four adjacent patches) should be continuous inx, y directions
2 the torque of the joint of adjacent patches is also continuous
Trang 6D(i+1, j–1) C(i, j–1)
(i–1, j–1)
(i–1, j+1)
(i, j+1) (i+1, j+1)
B(i+1, j) (i–1, j) A(i, j)
x z
Figure 6.2 Bicubic spline interpolation.
Let R and S be the slopes in x and y directions, respectively, and T be the
torque, then
R = ∂z
∂x, S =
∂z
∂y, T =
∂2z
As the reference points are located at square-grid nodes, the height differences can
be used to compute these values as follows:
R i,j = ∂z
∂x =
z i+1,j − z i−1,j
2
S i,j = ∂z
∂y =
zi,j+1 − z i,j−1
2
T i,j = ∂2z
∂x∂y =
(zi−1,j−1 + z i+1,j+1) − (zi+1,j−1 − z i−1,j+1)
4
(6.11)
There will be 12 such equations for a patch with four nodes as there are three equations for each node
After these coefficients are solved, then for a point P with coordinates(xp,yp),
the height can be computed by Equation (6.9)
The connection requirements between patches are adopted from elastic mechanics and the results of such interpolation may be not as desirable as expected because terrain patches are not elastic crusts in the narrow sense
6.3.2 Multi-Surface Interpolation (Hardy Method)
Multi-surface interpolation is also known as the Hardy method (Hardy 1971) The basic idea is that any (regular or irregular) continuous curved surface can be approx-imated by the sum of a series of simple surfaces (i.e., single-value mathematical surfaces), with a desired accuracy This might be regarded as an analogy of the Fourier series The actual process establishes a curved surface for each reference point using a basic function (called kernel function) and the height of any point between reference
Trang 7points will take a weighted average from these curved surfaces In this way, the final surface will be continuous and pass through all reference points The mathematical expression of multi-surface overlapping is:
z = f (x, y) =
n
i=1
ki Q(x, y, xi,yi )
= k1 Q(x, y, x1,y1) + k2Q(x, y, x2,y2) + · · · + knQ(x, y, xn,yn) (6.12) whereQ(x, y, x i,y i ) is the simple (single-value) mathematical surface, called the
kernel function in multi-surfaces;n is the number of simple mathematical surfaces
(or the number of surface layers) the value of which is equal to the number of reference points within the patch; andki (i = 1, 2, 3, , n) is the coefficient, that represents
the contribution of theith kernel function to the final surface To make computation
simple, the kernel functions are usually simple functions of the same type and formed
by rotating around an axis (which just passes through the reference point) Examples
of such simple functions are:
1 Conic function:
Q1(x, y, x i,y i ) = C + [(x − x i )2+ (y − y i )2]1/2 (6.13)
where[(x−x i )2+(y−y i )2]1/2is the horizontal distance between the interpolation
point(x, y) and the reference point (x i,y i ).
2 Hyperbolical function:
Q2(x, y, x i,y i ) = [(x − x i )2+ (y − y i )2+ σ]1/2 (6.14)
whereσ is a nonzero parameter Equation (6.14) represents a curved surface that
is formed through the rotation of a hyperbola curve around a vertical axis When
σ = 0, this curved surface degenerates to become a conic surface.
3 Cubic function:
Q3(x, y, x i,y i ) = C + [(x − x i )2+ (y − y i )2]3/2 (6.15)
4 Geometric function:
Q4= 1 −D
2
i
5 Exponential function:
Q5= C0× e−a2D2i (6.17)
whereC0anda are the two parameters.
The following kernel functions are well known and widely used (Li 1988):
1 Arthur function:
Q(d) = e −25d2/a2 (6.18) whered is the distance between two points and a is the longest distance among
various data points
Trang 82 Lu function:
3 Wild function:
Q2(x, y, x i,y i ) = 1+(x − x i )2+ (y − y i )2
(d ki )2 min
1/2
(6.20)
where(d ki )2
minrepresents the distance between data pointi and its closest data
pointk When n = m, Q matrix is an asymmetric matrix, because each data point
has its own reference(d ki )min
The Wild function is the result of modifying Equation (6.14) This is because the surface obtained by using Equation (6.14) will become smoother asσ becomes larger.
Figure 6.3 shows this trend, where a set of values forσ (i.e., 0, 0.6, and 10) were
3 2 1
di
= 0
3 2 1
x
3 2 1
di
3 2 1
x
3 2 1
di
3 2 1
x
Figure 6.3 Variousσ values and interpolation curves for Equation (6.14).
Trang 9used The advantage of the Wild function is that the terrain feature points and lines can be used during the interpolation process even with very small(d ki )minas long as the set of points are dense enough As a result, a steep slope could be produced on the top of the curved surface In this way, abrupt changes in the terrain surface can
be accommodated
If the number of reference pointsm is larger than the number of kernel surfaces,
then a least-square solution is taken, which will be discussed later in this chapter One advantage of multi-surface interpolation is that different types of kernel surfaces could be designed to accommodate different features and terrain surfaces This is useful when the density of sampled reference points is low but the accuracy
of such points is relatively high On the other hand, the process is rather complicated and inefficient, and thus this method is not widely used
6.4 AREA-BASED BEST FITTING OF SURFACES
It is understandable that if the terrain surface is complicated, it is impossible to use any mathematical function to completely describe it Instead, one uses an interpola-tion funcinterpola-tion to approximate the terrain surface The accuracy of such approximainterpola-tion will be discussed inChapter 8.It must be noted here that a surface passing through all the reference points is not necessarily a better approximation than other sur-faces If the area is big and there are many reference points available, one needs
to use very high-order polynomials to achieve exact fitting of the surface Indeed,
it is dangerous to do so because unstable oscillation can be caused by such a high-order polynomial function Figure 6.4 illustrates such an oscillation There-fore, best fitting (instead of exact fitting) of curved surfaces is a method widely
in use and will be described in this section The theory behind best fitting is that small variations on the terrain surface are so complex that they can be treated as
a stochastic process
6.4.1 Least-Squares Fitting of a Local Surface
There are many possibilities for best fitting depending on the definition of “best.”
A simple definition could be that the sum of the absolute values of the errors is at
a minimum Another popular definition is the sum of the square errors being minimum, leading to the least squares, which is widely used in error theory The mathematical
Figure 6.4 Oscillation of high-order polynomial surface.
Trang 10expressions are as follows:
n
i=1
n
i=1
e2
wheree i is the deviation of theith reference point from the fitting surface and n is
the total number of reference points
For a set of reference points and a fitting function, there is an infinite number of fitting.Figure 6.5shows such a case by using linear surface as the fitting function This figure shows that there can be a deviation at each reference point from the fitted surface and the deviation is also called residual in error theory The best-fitting result
is the one with the smallest sum of square residuals
The surface fitted to the data could be linear (Figure 6.6a) or a smooth curved surface(Figure 6.6b).There are different types of curved surfaces as discussed in the previous section For the same set of data, if the surface fitted is different, then the residual at each reference could be different In Figure 6.5, there are three surfaces (one linear and two curved) fitted to the same set of data and three sets of residuals can be obtained, that is,
SumLinear=
n
i=1
z2
i, L
SumCurved−1= n
i=1
z2
i,c−1
SumCurved−2=
n
i=1
z2
i,c−2
where z i, Lis the residual at theith point in the case of linear surface (i.e., the vertical
distance from the point to the linear line); SumLinear = n i=1 z2
i, L is the sum
of the squares of the residuals; and zi,c−1 is the residual at theith point for the
first type of curved surface (i.e., the vertical distance from the point to the curved surface) The least-squares condition says that the surface that produces the least sum of square errors is the best In this example, among SumLinear, SumCurved−1, and SumCurved−2, if SumCurved−2 is the smallest, then curve 2 is regarded as the best fit
The above discussion is about which types of surface to be considered The com-monly used functions for curved surface fitting are the second-order and third-order polynomials and bicubic functions No matter which function it is, the principles and procedures of the least-square solution are identical Therefore, the simpler
... considered The com-monly used functions for curved surface fitting are the second-order and third-order polynomials and bicubic functions No matter which function it is, the principles and procedures... residuals; and< i> zi,c−1 is the residual at theith point for thefirst type of curved surface (i.e., the vertical distance from the point to the curved surface) The least-squares... sum of square errors is the best In this example, among SumLinear, SumCurved−1, and SumCurved−2, if SumCurved−2 is the smallest, then curve is regarded