我有一个线性插值方法。当(x1,y1) (x2,y2)和x0已知时,它可以计算插值值,从而计算y0的值。但是我需要在已知多个点的情况下进行插值。我不是在谈论双线性或三线性插值。
对于多点插值,有三个选项:
分段线性插值
选择距离已知坐标最近的2个点,如果使用参数,则选择包含参数范围的点,并将参数范围/比例更改为插值范围(通常为<0,1>
),并进行线性插值。
这里有一个关于整数和更多的线性DDA示例:
多项式插值
这不是线性的!取所有已知点,从中计算n
次多项式(通过Lagrange多项式、边缘条件、回归/曲线拟合或其他方式)并计算参数点作为此多项式函数。通常每个轴都有一个多项式,点越多或多项式的次数越高,结果就越不稳定(振荡)。
分段多项式插值
这是#1,#2的组合(n
很低以避免振荡)。您需要正确调用点序列以管理片段之间的连续性,边缘条件必须考虑到前一个和下一个片段...
[笔记]
SPLINE,BEZIER等是近似曲线而不是插值曲线(它们不一定穿过控制点)。有一种方法可以通过重新计算控制点来在不同类型的曲线之间进行转换。例如,请参见此链接:
spline
,或者更普遍地讲就是spline
,确实是插值函数。这也是维基百科页面上所显示的。我错了吗? - Amir Sagiv