白话B样条曲线(一)

很多介绍B样条曲线的文章,上来就是给出了公式,让想学习新手云里雾里。有的即使已经用到程序中了,也不一定明白这个曲线构造的原理。这不该是一个有意思的事情该有的样子,本文试图通过一些普通的案例,带大家一步一步地走进B样条曲线。

首先,考虑下面的问题:给定二维平面上的一组点(X i,Y i),求横坐标为x的某点的y值。
抛开已有的各种方法,如果让你把这个当做一个新问题研究的话,你会如何考虑呢?
1、找一条函数曲线,经过这些给定点,或尽可能经过这些给定点的附近,然后把待求的x代入曲线方程,求出y。
但是这种方法不具有普适性。比如说你知道了这个曲线大概是个直线,就可以用最小二乘法拟合出一条直线。如果你不知道这些曲线的类型呢?
生活、工作中的很多事物的关系并不是这么简单的,可能是直线,可能是多项式,也可能是三角函、幂函数等等,还可能是多种函数的组合。
2、抛开已知类型的曲线类型,从概率统计的角度进行考虑。
我们知道给定点中的每个点都会对未知x的y值产生影响,那个每个点的影响有多大呢?这个影响该如何度量呢?
人们很直观的一个认识就是,距离这个x越近的x对它y值产生的影响越大。不妨用距离的倒数作为权值。
在这里插入图片描述
如果你想让这个距离的影响更大些,可以用距离倒数的高次幂来修改公式,如果你想让距离的影响自然平滑些,可以把距离倒数代入高斯正态分布曲线。
这种方法很淳朴自然,而且应用也很广泛,叫做反距离权重插值(IDW:Inverse Distance Weighted)。
这种方法简单、易用,而且万能,但普适的方法往往对于具体的问题并不是最优的。
比如说对于上面的问题,一个比较有名的方法就是克里金插值法(Kriging method)。这是以南非矿业的一个工程师名字命名的方法,也是地质统计学的核心。
相比反距离插值反距离插值 IDW,克里金插值公式更加抽象:
在这里插入图片描述
这里的 λi是权重系数。它同样是用空间上所有已知点的数据加权求和来估计未知点的值。但权重系数并非距离的倒数,而是能够满足点 (xo,yo)处的估计值与真实值 zo的方差最小的一套最优系数,即::
同时满足无偏估计的条件:
在这里插入图片描述
看似复杂,实际是对给定点又加了一些约束。类似最小二乘法去除离群点一样,这些约束也是为了使得离群点对预测点的影响最小。比如说在预测点附近刚好有个样本点,而这个样本点刚好采样误差很大,如果直接用距离的倒数作为权值会有很大偏差。
克里金插值法的具体原理就不介绍了,有兴趣的可以自己去研究。
这种加权的方法在其它很多地方也都有应用,比如说图像处理中的滤波:为了消除个别像素点的颜色深度太突兀,就听过它周边的一些点的像素深度对它进行修正,有取中值的,有取最大最小值的,有取均值的,有按照某些曲线按距离加权的。本质上这也是用已知点的信息对其它点进行影响。
以上算是引子吧,大家了解了一下这些插值拟合的背景,下面就该大聪明(数学家)出场了,让我们感受一下这些“大家”们是如何思考问题的。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码猿杂谈

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值