Misplaced Pages

Thin plate energy functional

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.

The exact thin plate energy functional (TPEF) for a function f ( x , y ) {\displaystyle f(x,y)} is

y 0 y 1 x 0 x 1 ( κ 1 2 + κ 2 2 ) g d x d y {\displaystyle \int _{y_{0}}^{y_{1}}\int _{x_{0}}^{x_{1}}(\kappa _{1}^{2}+\kappa _{2}^{2}){\sqrt {g}}\,dx\,dy}

where κ 1 {\displaystyle \kappa _{1}} and κ 2 {\displaystyle \kappa _{2}} are the principal curvatures of the surface mapping f {\displaystyle f} at the point ( x , y ) . {\displaystyle (x,y).} This is the surface integral of κ 1 2 + κ 2 2 , {\displaystyle \kappa _{1}^{2}+\kappa _{2}^{2},} hence the g {\displaystyle {\sqrt {g}}} in the integrand.

Minimizing the exact thin plate energy functional would result in a system of non-linear equations. So in practice, an approximation that results in linear systems of equations is often used. The approximation is derived by assuming that the gradient of f {\displaystyle f} is 0. At any point where f x = f y = 0 , {\displaystyle f_{x}=f_{y}=0,} the first fundamental form g i j {\displaystyle g_{ij}} of the surface mapping f {\displaystyle f} is the identity matrix and the second fundamental form b i j {\displaystyle b_{ij}} is

( f x x f x y f x y f y y ) {\displaystyle {\begin{pmatrix}f_{xx}&f_{xy}\\f_{xy}&f_{yy}\end{pmatrix}}} .

We can use the formula for mean curvature H = b i j g i j / 2 {\displaystyle H=b_{ij}g^{ij}/2} to determine that H = ( f x x + f y y ) / 2 {\displaystyle H=(f_{xx}+f_{yy})/2} and the formula for Gaussian curvature K = b / g {\displaystyle K=b/g} (where b {\displaystyle b} and g {\displaystyle g} are the determinants of the second and first fundamental forms, respectively) to determine that K = f x x f y y ( f x y ) 2 . {\displaystyle K=f_{xx}f_{yy}-(f_{xy})^{2}.} Since H = ( k 1 + k 2 ) / 2 {\displaystyle H=(k_{1}+k_{2})/2} and K = k 1 k 2 , {\displaystyle K=k_{1}k_{2},} the integrand of the exact TPEF equals 4 H 2 2 K . {\displaystyle 4H^{2}-2K.} The expressions we just computed for the mean curvature and Gaussian curvature as functions of partial derivatives of f {\displaystyle f} show that the integrand of the exact TPEF is

4 H 2 2 K = ( f x x + f y y ) 2 2 ( f x x f y y f x y 2 ) = f x x 2 + 2 f x y 2 + f y y 2 . {\displaystyle 4H^{2}-2K=(f_{xx}+f_{yy})^{2}-2(f_{xx}f_{yy}-f_{xy}^{2})=f_{xx}^{2}+2f_{xy}^{2}+f_{yy}^{2}.}

So the approximate thin plate energy functional is

J [ f ] = y 0 y 1 x 0 x 1 f x x 2 + 2 f x y 2 + f y y 2 d x d y . {\displaystyle J=\int _{y_{0}}^{y_{1}}\int _{x_{0}}^{x_{1}}f_{xx}^{2}+2f_{xy}^{2}+f_{yy}^{2}\,dx\,dy.}

Rotational invariance

Rotating (x,y) by theta about z-axis to (X,Y)
Original surface with point (x,y)
Rotated surface with rotated point (X,Y)

The TPEF is rotationally invariant. This means that if all the points of the surface z ( x , y ) {\displaystyle z(x,y)} are rotated by an angle θ {\displaystyle \theta } about the z {\displaystyle z} -axis, the TPEF at each point ( x , y ) {\displaystyle (x,y)} of the surface equals the TPEF of the rotated surface at the rotated ( x , y ) . {\displaystyle (x,y).} The formula for a rotation by an angle θ {\displaystyle \theta } about the z {\displaystyle z} -axis is

( X Y ) = ( cos θ sin θ sin θ cos θ ) ( x y ) = R ( x y ) . {\displaystyle {\binom {X}{Y}}={\begin{pmatrix}\cos \theta &-\sin \theta \\\sin \theta &\cos \theta \end{pmatrix}}{\binom {x}{y}}=R{\binom {x}{y}}.} 1

The fact that the z {\displaystyle z} value of the surface at ( x , y ) {\displaystyle (x,y)} equals the z {\displaystyle z} value of the rotated surface at the rotated ( x , y ) {\displaystyle (x,y)} is expressed mathematically by the equation

Z ( X , Y ) = z ( x , y ) = ( z x y ) ( X , Y ) {\displaystyle Z(X,Y)=z(x,y)=(z\circ xy)(X,Y)}

where x y {\displaystyle xy} is the inverse rotation, that is, x y ( X , Y ) = R 1 ( X , Y ) T = R T ( X , Y ) T . {\displaystyle xy(X,Y)=R^{-1}(X,Y)^{\text{T}}=R^{\text{T}}(X,Y)^{\text{T}}.} So Z = z x y {\displaystyle Z=z\circ xy} and the chain rule implies

Z i = z j R i j . {\displaystyle Z_{i}=z_{j}R_{ij}.} 2

In equation (2), Z 0 {\displaystyle Z_{0}} means Z X , {\displaystyle Z_{X},} Z 1 {\displaystyle Z_{1}} means Z Y , {\displaystyle Z_{Y},} z 0 {\displaystyle z_{0}} means z x , {\displaystyle z_{x},} and z 1 {\displaystyle z_{1}} means z y . {\displaystyle z_{y}.} Equation (2) and all subsequent equations in this section use non-tensor summation convention, that is, sums are taken over repeated indices in a term even if both indices are subscripts. The chain rule is also needed to differentiate equation (2) since z j {\displaystyle z_{j}} is actually the composition z j x y : {\displaystyle z_{j}\circ xy:}

Z i k = z j l R k l R i j {\displaystyle Z_{ik}=z_{jl}R_{kl}R_{ij}} .

Swapping the index names j {\displaystyle j} and k {\displaystyle k} yields

Z i j = z k l R j l R i k . {\displaystyle Z_{ij}=z_{kl}R_{jl}R_{ik}.} 3

Expanding the sum for each pair i , j {\displaystyle i,j} yields

Z X X = R 00 2 z x x + 2 R 00 R 01 z x y + R 01 2 z y y , Z X Y = R 00 R 10 z x x + ( R 00 R 11 + R 01 R 10 ) z x y + R 01 R 11 z y y , Z Y Y = R 10 2 z x x + 2 R 10 R 11 z x y + R 11 2 z y y . {\displaystyle {\begin{array}{lcl}Z_{XX}&=&R_{00}^{2}z_{xx}+2R_{00}R_{01}z_{xy}+R_{01}^{2}z_{yy},\\Z_{XY}&=&R_{00}R_{10}z_{xx}+(R_{00}R_{11}+R_{01}R_{10})z_{xy}+R_{01}R_{11}z_{yy},\\Z_{YY}&=&R_{10}^{2}z_{xx}+2R_{10}R_{11}z_{xy}+R_{11}^{2}z_{yy}.\end{array}}}

Computing the TPEF for the rotated surface yields

Z X X 2 + 2 Z X Y 2 + Z Y Y 2 = ( R 11 2 + R 01 2 ) z y y 2 + 2 ( R 10 R 11 + R 00 R 01 ) 2 z x x z y y + 2 ( 2 R 10 2 R 11 2 + R 00 2 R 11 2 + 2 R 00 R 01 R 10 R 11 + R 01 2 R 10 2 + 2 R 00 2 R 01 2 ) z x y 2 + 4 ( R 10 R 11 + R 00 R 01 ) ( R 11 2 + R 01 2 ) z x y z y y + 4 ( R 10 2 + R 00 2 ) ( R 10 R 11 + R 00 R 01 ) z x x z x y + ( R 10 2 + R 00 2 ) z x x 2 . {\displaystyle {\begin{aligned}Z_{XX}^{2}+2Z_{XY}^{2}+Z_{YY}^{2}&=(R_{11}^{2}+R_{01}^{2})z_{yy}^{2}\\&+2(R_{10}R_{11}+R_{00}R_{01})^{2}z_{xx}z_{yy}\\&+2(2R_{10}^{2}R_{11}^{2}+R_{00}^{2}R_{11}^{2}+2R_{00}R_{01}R_{10}R_{11}\\&\qquad +R_{01}^{2}R_{10}^{2}+2R_{00}^{2}R_{01}^{2})z_{xy}^{2}\\&+4(R_{10}R_{11}+R_{00}R_{01})(R_{11}^{2}+R_{01}^{2})z_{xy}z_{yy}\\&+4(R_{10}^{2}+R_{00}^{2})(R_{10}R_{11}+R_{00}R_{01})z_{xx}z_{xy}\\&+(R_{10}^{2}+R_{00}^{2})z_{xx}^{2}.\\\end{aligned}}} 4

Inserting the coefficients of the rotation matrix R {\displaystyle R} from equation (1) into the right-hand side of equation (4) simplifies it to z x x 2 + 2 z x y 2 + z y y 2 . {\displaystyle z_{xx}^{2}+2z_{xy}^{2}+z_{yy}^{2}.}

Data fitting

The approximate thin plate energy functional can be used to fit B-spline surfaces to scattered 1D data on a 2D grid (for example, digital terrain model data). Call the grid points ( x i , y i ) {\displaystyle (x_{i},y_{i})} for i = 1 N {\displaystyle i=1\dots N} (with x i [ a , b ] {\displaystyle x_{i}\in } and y i [ c , d ] {\displaystyle y_{i}\in } ) and the data values z i . {\displaystyle z_{i}.} In order to fit a uniform B-spline f ( x , y ) {\displaystyle f(x,y)} to the data, the equation

i = 1 N ( f ( x i , y i ) z i ) 2 + λ c d a b ( f x x 2 + 2 f x y 2 + f y y 2 ) d x d y {\displaystyle \sum _{i=1}^{N}(f(x_{i},y_{i})-z_{i})^{2}+\lambda \int _{c}^{d}\int _{a}^{b}(f_{xx}^{2}+2f_{xy}^{2}+f_{yy}^{2})\,dx\,dy} 5

(where λ {\displaystyle \lambda } is the "smoothing parameter") is minimized. Larger values of λ {\displaystyle \lambda } result in a smoother surface and smaller values result in a more accurate fit to the data. The following images illustrate the results of fitting a B-spline surface to some terrain data using this method.

  • Original terrain data Original terrain data
  • Fitted B-spline surface with large lambda and more smoothing Fitted B-spline surface with large lambda and more smoothing
  • Fitted B-spline surface with smaller lambda and less smoothing Fitted B-spline surface with smaller lambda and less smoothing

The thin plate smoothing spline also minimizes equation (5), but it is much more expensive to compute than a B-spline and not as smooth (it is only C 1 {\displaystyle C^{1}} at the "centers" and has unbounded second derivatives there).

References

  1. ^ Greiner, Günther (1994). "Variational Design and Fairing of Spline Surfaces" (PDF). Eurographics '94. Retrieved January 3, 2016.
  2. Moreton, Henry P. (1992). "Functional Optimization for Fair Surface Design" (PDF). Computer Graphics. Retrieved January 4, 2016.
  3. ^ Eck, Matthias (1996). "Automatic reconstruction of B-splines surfaces of arbitrary topological type" (PDF). Proceedings of SIGGRAPH 96, Computer Graphics Proceedings, Annual Conference Series. Retrieved January 3, 2016.
  4. Halstead, Mark (1993). "Efficient, Fair Interpolation using Catmull-Clark Surfaces" (PDF). Proceedings of the 20th annual conference on Computer graphics and interactive techniques. Retrieved January 4, 2016.
  5. ^ Kreyszig, Erwin (1991). Differential Geometry. Mineola, New York: Dover. pp. 131. ISBN 0-486-66721-9.
  6. Hjelle, Oyvind (2005). "Multilevel Least Squares Approximation of Scattered Data over Binary Triangulations" (PDF). Computing and Visualization in Science. Retrieved January 14, 2016.
Category:
Thin plate energy functional Add topic