You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Bicubic Interpolation计算中间点f(0.5,0.5)?求测试用例

双三次插值计算f(0.5,0.5)的具体步骤

核心前提

双三次插值需要目标点周围4×4共16个已知网格点的4类值:

  • 函数值 f(i,j)(i,j为网格点索引,范围0-3)
  • x方向偏导 f_x(i,j)
  • y方向偏导 f_y(i,j)
  • 混合偏导 f_xy(i,j)

假设目标点位于网格的(0,0)-(1,1)单元格内,相对坐标为(x=0.5, y=0.5)(即距离单元格左下角的比例)。


步骤1:计算一维三次基函数值

双三次插值的核心是一维三次基函数的张量积,四个基函数为:

h00(t) = 1 - 3t² + 2t³
h10(t) = t - 2t² + t³
h01(t) = 3t² - 2t³
h11(t) = -t² + t³

代入t=0.5(目标点的相对x/y坐标),得到:

  • h00(0.5) = 1 - 3*(0.5)² + 2*(0.5)³ = 0.5
  • h10(0.5) = 0.5 - 2*(0.5)² + (0.5)³ = 0.125
  • h01(0.5) = 3*(0.5)² - 2*(0.5)³ = 0.5
  • h11(0.5) = -(0.5)² + (0.5)³ = -0.125

将这些值组成向量:H = [0.5, 0.125, 0.5, -0.125]


步骤2:构造16维系数矩阵

将4×4网格点的4类值按顺序排列成4×4矩阵(每个单元格存储[f, f_x, f_y, f_xy]),或者整理为16×1的向量。通常的排列规则是:按行遍历网格点,每个点依次存入f(i,j)、f_x(i,j)、f_y(i,j)、f_xy(i,j)。

例如,网格点(0,0)对应向量前4个元素:[f(0,0), f_x(0,0), f_y(0,0), f_xy(0,0)],网格点(0,1)对应接下来4个元素,以此类推直到网格点(3,3)。


步骤3:执行插值计算

双三次插值的最终值可通过张量积计算:

f(0.5, 0.5) = H × M × H^T

其中:

  • H是步骤1得到的行向量
  • M是4×4的系数矩阵,每行对应一个网格点的4类值
  • H^T是H的转置列向量

简化计算方式(逐行逐列插值)

  1. x方向插值:对4个y行(j=0到3),分别用H向量与该行的4个点的4类值做点积,得到4个中间值g0, g1, g2, g3
  2. y方向插值:用H向量与[g0, g1, g2, g3]对应的y方向偏导等组成的向量做点积,最终得到目标值

测试用例验证

测试用例1:常数函数

已知所有4×4网格点的f(i,j)=1,f_x(i,j)=0,f_y(i,j)=0,f_xy(i,j)=0。
计算过程:

  • x方向每行插值结果:g_j = 0.5*1 + 0.125*0 + 0.5*1 + (-0.125)*0 = 1(4个行结果均为1)
  • y方向插值结果:0.5*1 + 0.125*0 + 0.5*1 + (-0.125)*0 = 1
  • 预期结果:1,与计算一致。

测试用例2:线性函数f(x,y)=x+y

已知网格点f(i,j)=i+j,f_x(i,j)=1,f_y(i,j)=1,f_xy(i,j)=0,目标点(0.5,0.5)预期值为1。
计算过程(取网格点i=0-3, j=0-3):

  • 对y=0行(点(0,0):0, (1,0):1, (2,0):2, (3,0):3),x方向插值:
    g0 = 0.5*0 + 0.125*1 + 0.5*1 + (-0.125)*1 = 0 + 0.125 + 0.5 - 0.125 = 0.5
  • 对y=1行(点(0,1):1, (1,1):2, (2,1):3, (3,1):4),x方向插值:
    g1 = 0.5*1 + 0.125*1 + 0.5*2 + (-0.125)*1 = 0.5 + 0.125 + 1 - 0.125 = 1.5
  • 对y=2行,x方向插值结果g2=2.5;y=3行结果g3=3.5
  • y方向插值:
    f(0.5,0.5) = 0.5*0.5 + 0.125*1 + 0.5*1.5 + (-0.125)*1
    计算:0.25 + 0.125 + 0.75 - 0.125 = 1
  • 预期结果:1,与计算一致。

内容的提问来源于stack exchange,提问作者Razark

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 03:35:55