Thin Plate Spline薄板样条

自变量 x = [ x 1 , x 2 ] \mathbf{x}=[x_1,x_2] x=[x1,x2] 是2维空间中的一个点,函数值 y = [ y 1 , y 2 ] \mathbf{y}=[y_1,y_2] y=[y1,y2]也是2维空间中的一点,并且都在笛卡尔坐标系下表示。已知存在K个控制点 c = { c i 1 , c i 2 , i = 1... K } \mathbf{c}=\{c_{i1},c_{i2},i=1...K\} c={ci1,ci2,i=1...K} —> r = { r i 1 , r 12 , i − 1... K } \mathbf{r}=\{r_{i1},r_{12},i-1...K\} r={ri1,r12,i1...K},现给定 N N N 个自变量 x k \mathbf{x}_k xk,如何利用薄板样条函数进行插值得到对应的函数值 y k \mathbf{y}_k yk
设定插值函数为:
Φ ( x ) = [ Φ 1 ( x ) Φ 2 ( x ) ] \Phi(\mathbf{x})=\begin{bmatrix} \Phi_1(\mathbf{x}) \\ \Phi_2(\mathbf{x}) \end{bmatrix} Φ(x)=[Φ1(x)Φ2(x)]
按照薄板样条函数的形式, Φ ( x ) \Phi\mathbf(x) Φ(x)应为:
Φ i ( x ) = a 0 + a T x + w T s ( x ) 其中 i = 1 , 2 \Phi_i(\mathbf{x})=a_0+\mathbf{a}^T \mathbf{x}+\mathbf{w}^T \mathbf{s}(\mathbf{x})\quad\quad 其中i=1,2 Φi(x)=a0+aTx+wTs(x)其中i=1,2
展开后,即:
Φ i ( x ) = a 0 + [ a 1 , a 2 ] ⋅ [ x 1 x 2 ] + [ w 1 , w 2 . . . w k ] ⋅ [ s ( x 1 , x 2 , c 11 , c 12 ) s ( x 1 , x 2 , c 21 , c 22 ) . . . s ( x 1 , x 2 , c k 1 , c k 2 ) ] \Phi_i(\mathbf{x})=a_0+[a_1,a_2]\cdot\begin{bmatrix} x_1\\x_2\end{bmatrix}+[w_1,w_2...w_k]\cdot\begin{bmatrix} s(x_1,x_2,c_{11},c_{12})\\s(x_1,x_2,c_{21},c_{22})\\...\\s(x_1,x_2,c_{k1},c_{k2})\end{bmatrix} Φi(x)=a0+[a1,a2][x1x2]+[w1,w2...wk] s(x1x2,c11,c12)s(x1x2,c21,c22)...s(x1x2,ck1,ck2)
由于 σ ( r ) = r 2 log ⁡ ( r ) \sigma(r)=r^2\log(r) σ(r)=r2log(r), 所以:
s ( x 1 , x 2 , c i 1 , c i 2 ) = [ ( x 1 − c i 1 ) 2 + ( x 2 − c i 2 ) 2 ] × log ⁡ ( [ ( x 1 − c i 1 ) 2 + ( x 2 − c i 2 ) 2 ] ) s(x_1,x_2,c_{i1},c_{i2})=[(x_1-c_{i1})^2+(x_2-c_{i2})^2]\times\log(\sqrt{[(x_1-c_{i1})^2+(x_2-c_{i2})^2])} s(x1,x2,ci1,ci2)=[(x1ci1)2+(x2ci2)2]×log([(x1ci1)2+(x2ci2)2])
根据相关推导1,公式中的参数需满足以下约束条件:
∑ i = 1 K w i = 0 \sum_{i=1}^{\mathbf{K}}w_i=0 i=1Kwi=0 ∑ i = 1 K c i 1 w i = 0 \sum_{i=1}^{\mathbf{K}}c_{i1}w_i=0 i=1Kci1wi=0 ∑ i = 1 K c i 2 w i = 0 \sum_{i=1}^{\mathbf{K}}c_{i2}w_i=0 i=1Kci2wi=0
对于 Φ 1 ( x ) \Phi_1(\mathbf{x}) Φ1(x)的参数,最终形成如下求解方程:
[ 1 c 11 c 12 s ( c 11 , c 12 , c 11 , c 12 ) s ( c 11 , c 12 , c 21 , c 22 ) . . . s ( c 11 , c 12 , c k 1 , c k 2 ) 1 c 21 c 22 s ( c 21 , c 22 , c 11 , c 12 ) s ( c 21 , c 22 , c 21 , c 22 ) . . . s ( c 21 , c 22 , c k 1 , c k 2 ) . . . . . . . . . . . . . . . 1 c k 1 c k 2 s ( c k 1 , c k 2 , c 11 , c 12 ) s ( c k 1 , c k 2 , c 21 , c 22 ) . . . s ( c k 1 , c k 2 , c k 1 , c k 2 ) 0 0 0 1 1 . . . 1 0 0 0 c 11 c 21 . . . c k 1 0 0 0 c 12 c 22 . . . c k 2 ] [ a 0 a 1 a 2 w 1 w 2 . . . w k ] = [ r 12 r 21 . . . r k 1 0 0 0 ] \begin{bmatrix} 1&c_{11}&c_{12}&s(c_{11},c_{12},c_{11},c_{12})&s(c_{11},c_{12},c_{21},c_{22})&...&s(c_{11},c_{12},c_{k1},c_{k2})\\1&c_{21}&c_{22}&s(c_{21},c_{22},c_{11},c_{12})&s(c_{21},c_{22},c_{21},c_{22})&...&s(c_{21},c_{22},c_{k1},c_{k2})\\\quad&\quad&...&...&...&...&...\\1&c_{k1}&c_{k2}&s(c_{k1},c_{k2},c_{11},c_{12})&s(c_{k1},c_{k2},c_{21},c_{22})&...&s(c_{k1},c_{k2},c_{k1},c_{k2})\\0&0&0&1&1&...&1\\0&0&0&c_{11}&c_{21}&...&c_{k1}\\0&0&0&c_{12}&c_{22}&...&c_{k2}\end{bmatrix}\begin{bmatrix}a_0\\a_1\\a_2\\w_1\\w_2\\...\\w_k\end{bmatrix}=\begin{bmatrix}r_{12}\\r_{21}\\...\\r_{k1}\\0\\0\\0\end{bmatrix} 111000c11c21ck1000c12c22...ck2000s(c11,c12,c11,c12)s(c21,c22,c11,c12)...s(ck1,ck2,c11,c12)1c11c12s(c11,c12,c21,c22)s(c21,c22,c21,c22)...s(ck1,ck2,c21,c22)1c21c22.....................s(c11,c12,ck1,ck2)s(c21,c22,ck1,ck2)...s(ck1,ck2,ck1,ck2)1ck1ck2 a0a1a2w1w2...wk = r12r21...rk1000
其中: s ( c i 1 , c i 2 , c i 1 , c i 2 ) = 0 s(c_{i1},c_{i2},c_{i1},c_{i2})=0 s(ci1,ci2,ci1,ci2)=0
同理可以计算得到 Φ 2 ( x ) \Phi_2(\mathbf{x}) Φ2(x)


  1. https://www.jianshu.com/p/2cc189dfbcc5#fn3 ↩︎

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值