双线性插值

双线性插值又成为双线性内插,双线性插值是有两个变量的插值函数的线性插值扩展,其核心思想是在两个方向分别进行一次线性插值。

 

如果我们想得到函数f(x, y)在点 P(x,y)处的值,并且我知道函数f(x,y) 在点 A(x1,y1),B(x2,y1),C(x1,y2),D(x2,y2)处的值分别为V1,V2,V3, V4。

                                                                  插值说明

                    图  一

我们现在X方向上插值:

得到函数f(x,y) 在R1(x,y1),R2(x,y2)处的值分别为:

  VR1 = V1 * (x2 - x) / (x2-x1) + V2 * (x - x1) / (x2 - x1);                                                         (1)

  VR2 = V3 * (x2 - x) / (x2-x1) + V4 * (x - x1) / (x2 - x1);                                                         (2)

然后再Y方向上插值:

得到函数f(x,y) 在P 点处的值:

  f(x,y) = VR1 *(y2 - y)/(y2 - y1) + VR2*(y - y1) / (x2 - x1);                                                         (3)

将VR1 和VR2 带入  (3) 式:

得:

        f(x,y) = V1*(x2- x)(y2 - y)/(x2 - x1)(y2 - y1) +  V2*(x- x1)(y2 - y)/(x2 - x1)(y2 - y1) + 

                    V3*(x2- x)(y - y1)/(x2 - x1)(y2 - y1) +  V4*(x- x1)(y - y1)/(x2 - x1)(y2 - y1);

如果我们令已知的四点的坐标分别为A(0,0),B(1,0),C(0,1),D(1,1);

那么 f(x,y) 简化为:

      f(x,y) = V1 * (1 - x)(1 - y) + V2  * x(1 - y) + V3 * (1- x)y + V4 * xy;

整理的到:

      f(x,y) = V1 + (V2-V1) * x + (V3-V1) * y + (V4 + V1 - V2 - V3) * xy;

令: a0 = V1;

       a1 = (V2 - V1);

       a2 = (V3 - V1);

       a3 = (V1 - V2 - V3 + V4);

则: 

      f(x,y) = a0 + a1x + a2y + a3xy;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值