Thin plate splines (TPS) are a
spline-based technique for data
interpolation
In the mathematics, mathematical field of numerical analysis, interpolation is a type of estimation, a method of constructing (finding) new data points based on the range of a discrete set of known data points.
In engineering and science, one ...
and
smoothing
In statistics and image processing, to smooth a data set is to create an approximating function that attempts to capture important patterns in the data, while leaving out noise or other fine-scale structures/rapid phenomena. In smoothing, the d ...
. They were introduced to
geometric design by Duchon.
They are an important special case of a
polyharmonic spline. Robust Point Matching (RPM) is a common extension and shortly known as the TPS-RPM algorithm.
Physical analogy
The name ''thin plate spline'' refers to a physical analogy involving the bending of a
plate or thin sheet of metal. Just as the metal has rigidity, the TPS fit resists bending also, implying a penalty involving the smoothness of the fitted surface. In the physical setting, the deflection is in the
direction, orthogonal to the plane. In order to apply this idea to the problem of coordinate transformation, one interprets the lifting of the plate as a displacement of the
or
coordinates within the plane. In 2D cases, given a set of
corresponding control points (knots), the TPS warp is described by
parameters which include 6 global affine motion parameters and
coefficients for correspondences of the control points. These parameters are computed by solving a linear system, in other words, TPS has a
closed-form solution
In mathematics, an expression or equation is in closed form if it is formed with constants, variables, and a set of functions considered as ''basic'' and connected by arithmetic operations (, and integer powers) and function composition. C ...
.
Smoothness measure
The TPS arises from consideration of the integral of the square of the second derivative—this forms its smoothness measure. In the case where
is two dimensional, for interpolation, the TPS fits a mapping function
between corresponding point-sets
and
that minimizes the following energy function:
:
The smoothing variant, correspondingly, uses a tuning parameter
to control the rigidity of the deformation, balancing the aforementioned criterion with the measure of goodness of fit, thus minimizing:
:
For this variational problem, it can be shown that there exists a unique minimizer
.
The
finite element discretization of this variational problem, the method of
elastic maps, is used for
data mining
Data mining is the process of extracting and finding patterns in massive data sets involving methods at the intersection of machine learning, statistics, and database systems. Data mining is an interdisciplinary subfield of computer science and ...
and
nonlinear dimensionality reduction
Nonlinear dimensionality reduction, also known as manifold learning, is any of various related techniques that aim to project high-dimensional data, potentially existing across non-linear manifolds which cannot be adequately captured by linear de ...
. In simple words, "the first term is defined as the error measurement term and the second regularisation term is a penalty on the smoothness of
."
It is in a general case needed to make the mapping unique.
Radial basis function
The thin plate spline has a natural representation in terms of radial basis functions. Given a set of control points
, a radial basis function defines a spatial mapping which maps any location
in space to a new location
, represented by
:
where
denotes the usual
Euclidean norm
Euclidean space is the fundamental space of geometry, intended to represent physical space. Originally, in Euclid's ''Elements'', it was the three-dimensional space of Euclidean geometry, but in modern mathematics there are ''Euclidean spaces'' ...
and
is a set of mapping coefficients. The TPS corresponds to the radial basis kernel
.
Spline
Suppose the points are in 2 dimensions (
). One can use ''homogeneous coordinates'' for the point-set where a point
is represented as a vector
. The unique minimizer
is parameterized by
which consists of two matrices
and
(
).
:
where d is a
matrix representing the affine transformation (hence
is a
vector) and c is a
warping coefficient matrix representing the non-affine deformation. The kernel function
is a
vector for each point
, where each entry
. Note that for TPS, the control points
are chosen to be the same as the set of points to be warped
, so we already use
in the place of the control points.
If one substitutes the solution for
,
becomes:
:
where
and
are just concatenated versions of the point coordinates
and
, and
is a
matrix formed from the
. Each row of each newly formed matrix comes from one of the original vectors. The matrix
represents the TPS kernel. Loosely speaking, the TPS kernel contains the information about the point-set's internal structural relationships. When it is combined with the warping coefficients
, a non-rigid warping is generated.
A nice property of the TPS is that it can always be decomposed into a global affine and a local non-affine component. Consequently, the TPS smoothness term is solely dependent on the non-affine components. This is a desirable property, especially when compared to other splines, since the global pose parameters included in the affine transformation are not penalized.
Applications
TPS has been widely used as the non-rigid transformation model in image
alignment and shape matching.
An additional application is the analysis and comparisons of archaeological findings in 3D
and was implemented for
triangular meshes in the
GigaMesh Software Framework.
The thin plate spline has a number of properties which have contributed to its popularity:
#It produces smooth surfaces, which are infinitely differentiable.
#There are no free parameters that need manual tuning.
#It has closed-form solutions for both warping and parameter estimation.
#There is a physical explanation for its energy function.
However, note that splines already in one dimension can cause severe "overshoots". In 2D such effects can be much more critical, because TPS are not objective.
See also
*
Elastic map (a discrete version of the thin plate approximation for
manifold learning)
*
Inverse distance weighting
Inverse distance weighting (IDW) is a type of Deterministic algorithm, deterministic method for multivariate interpolation with a known homogeneously scattered set of points. The assigned values to unknown points are calculated with a Weighted m ...
*
Polyharmonic spline (the thin plate spline is a special case of a polyharmonic spline)
*
Radial basis function
In mathematics a radial basis function (RBF) is a real-valued function \varphi whose value depends only on the distance between the input and some fixed point, either the origin, so that \varphi(\mathbf) = \hat\varphi(\left\, \mathbf\right\, ), o ...
*
Smoothing spline
*
Spline
*
Subdivision surface
In the field of 3D computer graphics, a subdivision surface (commonly shortened to SubD surface or Subsurf) is a curved Computer representation of surfaces, surface represented by the specification of a coarser polygon mesh and produced by a re ...
(emerging alternative to spline-based surfaces)
References
[
]
[
]
[J. Duchon, 1976, Splines minimizing rotation invariant semi-norms in Sobolev spaces. pp 85–100, In: Constructive Theory of Functions of Several Variables, Oberwolfach 1976, W. Schempp and K. Zeller, eds., Lecture Notes in Math., Vol. 571, Springer, Berlin, 1977. doibr>10.1007/BFb0086566]
/ref>
[{{cite web , title=Tutorial No. 13: Apply TPS-RPM Transformation , url=https://gigamesh.eu/?page=tutorials&topic=13._Apply_TPS_RPM_Transformation , website=GigaMesh Software Framework, accessdate=3 March 2019]
External links
Explanation for a simplified variation problemTPS in templated C++TPS in JS
Splines (mathematics)
Multivariate interpolation