三次样条曲线CubicSpline

本文参考老张在上海轨迹规划 之 三次样条曲线(概念+性质) - 知乎 (zhihu.com)

  • 什么是三次样条曲线 之 三次

样条是一种数据插值的方式,在多项式插值中,多项式是给出的单一公式来尽可能满足所有的数据点,而样条则使用多个公式,每个公式都是低阶多项式,其能够保证通过所有的数据点。

  • 什么是三次样条曲线 之 样条

早期工程师制图时,把富有弹性的细长木条(所谓样条)用压铁固定在采样点上,在其他地方让它自由弯曲,然后沿木条画下曲线,称为样条曲线。

  • 什么是三次样条曲线 之 曲线

在样条两个采样点之间自由弯曲的线段则为曲线段。求解三次样条曲线的本质就是求解两两采样点之间的曲线段表达公式。

三次样条曲线理解

我的理解就是三次样条曲线与多项式插值不同的是,多项式插值始终是一个多项式对路径点的拟合,三次样条曲线对每两个点之间都有一个多项式(三次多项式)。而cubic_spline就是通过一些性质和定义,来求解每两个点之间的多项式。

直观体现

如下分别是一次样条曲线,二次样条曲线和三次样条曲线。

我们可以看到对于一次样条曲线就是线性线段的连接。

三次样条曲线的性质:

这个很重要,因为三次样条曲线的推导就是根据几个性质来完成推导的。

1.三次样条曲线在纽结处连续。

2.三次样条曲线在纽结处斜率相同。

 

 3.三次样条曲线在纽结处曲率相同。

 4.三次自然样条端点条件。

5.斜率调整三次样条曲线/钳制三次样条(给定初始速度,终点速度)端点条件。

 

6.曲率调整三次样条曲线(给定初始加速度,终点加速度)端点条件。

 

通过了解这几个性质,我们来推导三次样条曲线。

 1.三次样条曲线的定义:

为了更精确的求解三次样条曲线,我们假设给定n个点(x1,y1),(x2,y2),(x3,y3),......,(xn,yn),其中xi升序且不同,通过各个点的三次样条曲线是一组三次多项式:

 2.根据性质推导:

  • 由性质1(曲线在纽结处要求平滑)得到n-1个公式,其中含有3n-3个未知量。

 

所以我们可以得到:

 

  •  由性质2(曲线在纽结处要求斜率相等)得到n-2个公式,其中含有3n-6个未知量。

  • 由性质3(曲线在纽结处要求曲率相等)得到n-2个公式,其中含有3n-3个未知量。 

所以我们可以得到:

 

  • 由性质4(曲线起点,终点条件)得到2个公式,对于自由三次样条曲线条件如下。 

 通过将性质1,3得到的di,bi带入性质2中的式子,我们可以得到ci

对于自然样条曲线 C0=0,Cn=0。

在实际应用中,求出每两个点间的步长,先求出Ci的值,再根据性质1,性质3可求解出bi和di的值,然后就可以得到每两个点之间的三次样条多项式。

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值