精华内容
下载资源
问答
  • 文中利用Arc GIS软件,分别采用反距离权重、样条函数和普通克里格法对1982年全国684个气象台站观测的年均气温数据进行空间插值,并对每种插值方法产生的结果进行对比。通过研究发现,对于给定数据的年均气温插值而言,...
  • 基于地震干涉插值方法的海洋数据插值,许卓,,在常规地震勘探尤其是海洋地震勘探中,由于操作条件的限制,记录的炮集数据中近偏移距道集往往是缺失的。到目前为止,已经提出并
  • 空间数据插值方法的分析与比较,李海永,,本文对地理信息系统空间分析中的空间数据插值方法进行了介绍。通过具体的插值运算,采用不同的参估点搜索策略,得到相关数据来对
  • 气温空间插值方法比较-以福建省为例,陈淑桂,彭锋,ArcGIS软件拥有强大的地统计功能。本文以福建省70个地面气象观测资料中的1976年1月、7月平均气温、高程及DEM数据为数据源,采用反距离�
  • matlab插值方法

    2018-07-24 09:29:53
    matlab应用中有关插值方法的教程,适合正在学习matlab或者学习数学建模的人使用
  • 实验室的同门总结的GIS中不同插值方法的比较,整理的很好~
  • Surfer等值线绘制中的十二种插值方法介绍
  • 某公司实现lanczos插值的定点化实现代码,可以高效实现任意大小的resize,同时保证图像质量
  • 常见的插值方法

    2015-07-20 15:11:24
    这里讲解了好几种的插值方法,里面还有还有三个图像插值的介绍和比较
  • lagrange插值方法+分段线性插值+三次样条插值+报告,包括c语言及matlab程序
  • MATLAB实现不同插值方法的GUI界面设计,学习matlab的一个例子
  • 为求取较为精确PT励磁特性曲线,引入了线性插值方法. 首先时测量的伏安特性数据的线性区数据进行线性插值,线性区数据和整体数据增多,相应地增加了线性区数据的权重;然后对于PT励磁特性曲线模型,在深度饱和区之前...
  • arcgis插值方法与原理

    2015-05-18 16:39:12
    该文档详细介绍了arcgis插值的各种方法及其原理,并给出了相关的连接,以便获得更多的帮助
  • 最近在学习思维导图,闲来无事,就把之前写过的博客,四元数插值方法Slerp、Squad、Spicv和Sping知识点总结整理为思维导图,有了这张图,复习时就不用再看十几万字的文章了。
  • 都是MATLAB代码,一共有五个m文件,还有几个图像插值的文档,文件中带有实验图片。
  • 径向基函数(Radial Basis Functions,以下简称RBF)在数值和科学计算等领域被广泛应用,例如解微分方程、人工神经网络、曲面重建、计算机辅助设计、计算机图形...RBF 插值方法不受输入参数的限制,可以进行高维插值。
  • 九种常见的二维插值方法

    千次阅读 2021-03-08 13:40:01
    1、Bilinear interpolation双线性插值 双线性插值在数学上,双线性插值是线性插值的一种推广,用于在二维直线网格上插值两个变量(如x和y)的函数。 双线性插值首先在一个方向上使用线性插值,然后在另一个方向上...

    1、Bilinear interpolation双线性插值

    双线性插值在数学上,双线性插值是线性插值的一种推广,用于在二维直线网格上插值两个变量(如x和y)的函数。

    双线性插值首先在一个方向上使用线性插值,然后在另一个方向上使用线性插值。虽然每一步在采样值和位置上都是线性的,但是插值作为一个整体在采样位置上不是线性的而是二次的。

    双线性插值是计算机视觉和图像处理中最基本的重采样技术之一,也称为双线性滤波或双线性纹理映射

    2、Bicubic interpolation双三次插值

    在数学中,双三次插值是三次插值(不要与三次样条插值混淆,请参阅三次样条)的一种扩展,用于在二维规则网格上插值数据点。该插值曲面比双线性插值或最近邻插值得到的相应曲面更为光滑。双三次插值可以使用拉格朗日多项式、三次样条或三次卷积算法来实现。

    在图像处理中,当速度不是一个问题时,在图像重采样中通常选择双三次插值而不是双线性插值或最近邻插值。与仅考虑4个像素(2×2)的双线性插值不同,双三次插值考虑16个像素(4×4)。使用双三次插值重采样的图像更平滑,插值伪影更少。

    3、Non-uniform rational B-spline(NURBS)非均匀有理B样条插值

    非均匀有理基样条(NURBS)是计算机图形学中常用的一种基于基样条(B样条)表示曲线曲面的数学模型。它提供了极大的灵活性和精度来处理分析(由通用数学公式定义)和模型形状。它是一种曲线造型,与多边形造型或数字雕刻相对。NURBS曲线常用于计算机辅助设计(CAD)、制造(CAM)和工程(CAE)中。它们是众多行业标准的一部分,如IGES、STEP、ACIS和PHIGS。用于创建和编辑NURBS曲面的工具可以在各种三维图形和动画软件包中找到。
    它们可以由计算机程序有效地处理,但也允许简单的人机交互。NURBS曲面是三维空间中两个参数映射到一个曲面上的函数。曲面的形状由控制点决定。在紧凑的形式中,NURBS曲面可以表示简单的几何形状。对于复杂的有机形状,T样条曲线和细分曲面更适合,因为与NURBS曲面相比,它们将控制点的数量减少了一半。

    4、Inverse Distance Weighted反距离加权插值

    反距离加权法是一种常用而简单的空间插值方法,IDW是基于“地理第一定律”的基本假设:即两个物体相似性随他们见的距离增大而减少。它以插值点与样本点间的距离为权重进行加权平均,离插值点越近的样本赋予的权重越大,此种方法简单易行,直观并且效率高,在已知点分布均匀的情况下插值效果好,插值结果在用于插值数据的最大值和最小值之间,但缺点是易受极值的影响。

    5、样条插值法(Spline)

    样条插值是使用一种数学函数,对一些限定的点值,通过控制估计方差,利用一些特征节点,用多项式拟合的方法来产生平滑的插值曲线。这种方法适用于逐渐变化的曲面,如温度、高程、地下水位高度或污染浓度等。该方法优点是易操作,计算量不大,缺点是难以对误差进行估计,采样点稀少时效果不好

    样条插值法又分为:张力样条插值法(Spline with Tension),规则样条插值法(Regularized Spline)

    薄板样条插值法 (Thin-Plate Splin)

    6、Minimum Curvature最小曲率法

    最小曲率法,广泛用于地球科学,试图在尽可能严格地尊重数据的同时,生成尽可能圆滑的曲面。

    最小曲率法广泛用于地球科学。用最小曲率法生成的插值面类似于一个通过各个数据值的,具有最小弯曲量的长条形薄弹性片。最小曲率法,试图在尽可能严格地尊重数据的同时,生成尽可能圆滑的曲面。 使用最小曲率法时要涉及到两个参数:最大残差参数和最大循环次数参数来控制最小曲率的收敛标准。

    对于离散点曲面插值问题,最小曲率法所采用的插值约束条件为:

    E=int ( k_1^2 + k_2^2 ) rightarrow min

    即要求对通过已知点集(xi,yi,zi),i=1,2,3,…,n的插值曲面上两主曲率k1,k2的平方和的积分值为最小。上述积分被成为曲面能(blending energy)或粗糙度(roughness)。由于曲面率具有不依赖于坐标空间系统的内在独立性,因而它是衡量曲面弯曲变化程度的最佳参数。符合上述准则的曲面将是通常所期望的“最光滑”的理想曲面。但事实上考虑到曲面曲率计算的复杂性,一般采用下式作为替代的约束条件:

    即要求对曲面函数的二次偏导函数项的平方和在插值区域内的积分值为最小。对它的显式全局解即常见的样条插值(tin plate spline, TPS),可以写作:

    7、Dscrete Smoothing Interpolation, DSI,离散光滑插值

    DSI方法是法国南锡大学J.L.Mallet教授提出的,该方法依赖于网格结点的拓扑关系,不以空间坐标为参数,是一种不受维数限制的差值方法。DSI插值基本思想:欲在一个离散化数据点间建立相互联络的网络,如果网络上的已知节点值满足某种约束条件,则未知节点上的值可以通过解线性方程而得到。

    DSI方法建立了计算网格结点上最优解的目标函数 ,其中为全局粗糙度函数, 为线性约束违反度函数。通过使用目标函数 达到最小,实现两方面的目标:

    ①使全局粗糙度函数 达到最小,从而尽可能使 在任意结点上的函数值逼近该点邻域内结点 值的均值,也就是使每个结点的 值尽可能平滑:

    ②将原始采样数据转化成定义在一些结点上的线性约束,使线性约束的违反度函数 达到最小,也就是说线性约束的符合程度达到最大,从而使相关结点的 值竟可能逼近采样数据。

    DSI插值算法的数学描述:在有节点连接构成的网格Ω内部,已知网络节点集成为L,未知网络节点集为I(I+L=Ω);f(*)为Ω内的一个分段连续函数,函数f(*)在节点集合L上假设一直,插值算法的目的通过f(*)推测出在集合I上的内插值函数Φ(*)表达式。

    显然,插值函数只能无穷逼近未知网格节点,为了选择一个“最优”表达式,DSI算法利用二次检验函数(全局平滑度函数)R(ψ)来检验一个可能的插值函数,二次检验函数如下式所示。R(ψ)=ψ*[W]* ψ 其中[W]是给定的正定对称矩阵,R(ψ)由多个局部平滑度函数在线性约束下确定,通过检验函数的约束,可以得到最优的插值函数表达式,进而求得内插值函数Φ(*)集,在实际应用中,可以结合专家经验来现则合适的插值函数。

    8、克里金法(Kriging)

    克里金方法最早是由法国地理学家Matheron和南非矿山工程师Krige提出的,用于矿山勘探。这种方法认为在空间连续变化的属性是非常不规则的,用简单的平滑函数进行模拟将出现误差,用随机表面函数给予描述会比较恰当。(克里金中包括几个因子:变化图模型、漂移类型和矿块效应)

    克里金方法的关键在于权重系数的确定,该方法在插值过程中根据某种优化准则函数来动态地决定变量的数值,从而使内插函数处于最佳状态。克里金方法考虑了观测的点和被估计点的位置关系,并且也考虑各观测点之间的相对位置关系,在点稀少时插值效果比反距离权重等方法要好。所以利用克里金方法进行空间数据插值往往取得理想的效果。

    在地质统计学中,根据应用目标的区别,发展了多种克里格方法如:简单克里格(Simple-Kriging)、

    普通克里格(Ordinary-Kriging)、泛克里格(Universal-Kriging)、对数正态克里格(Log-Normal Kriging)、协同克里格(Cokriging)、拟协克里格(Pseudo-Kriging)、指示克里格(Indicator-Kriging)、

    离析克里格(Disjunctive-Kriging)

    在三维地质建模过程中,克里格被作为插值方法,能过最大的程度的保证地质界面与原始数据的吻合,且不依赖于网络。

    9、趋势面光滑插值(Trend Surface)

    作为一个非精确的插值方法,趋势面插值用多项式表示的线或面按最小二乘法原理对数据点进行拟合,并用于估算其它值的点,线和面多项式的选择取决于数据是一维还是二维。包括线性或一阶次趋势面的数学模拟模型、二次趋势面的数学模拟模型、三次趋势面的数学模拟模型(二维)。

    趋势面分析的优点:它是一种极易理解的技术,至少在计算方法上易于理解。另外,大多数数据特征可以用低次多项式来模拟。

     

    参考文献

    https://www.docin.com/p-795224773.html

    http://blog.sina.com.cn/s/blog_6316e2af0101l548.html

     

    展开全文
  • 平滑轨迹插值方法之多项式插值(附代码)

    千次阅读 多人点赞 2020-10-27 20:57:04
    前言 今天我们来聊聊轨迹插值,在机器人的运动规划和控制领域,参考轨迹的生成是一个历史悠久的问题,已经发展出了一系列的方法。今天我们就来聊一聊轨迹插值领域中最常见的轨迹插值方法:多项式插值...

    前言

    今天我们来聊聊轨迹插值,在机器人的运动规划和控制领域,参考轨迹的生成是一个历史悠久的问题,已经发展出了一系列的方法。 今天我们就来聊一聊轨迹插值领域中最常见的轨迹插值方法: 多项式插值

    说明:本文约5000字,全部看懂需要一定的时间,建议先收藏。本文所涉及的代码全部开源,提供Matlab和Python两个版本,仓库地址详见文末。

    首先,我们定义一下问题:

    如下图所示,给定一些离散的数据点,我们需要通过插值的方式生成一条能够通过所有给定数据点的参考曲线。

    并且,根据实际应用对于“平滑”的要求,通常会有以下不同的约束:

    1. 要求生成的参考曲线是连续的;

    2. 在1的基础上,要求参考曲线的速度是连续的;

    3. 在1和2的基础上,要参考曲线的加速度是连续的;

    注意:速度是位置对时间的导数,加速度是速度对时间的导数,加速度对时间的导数我们称之为jerk。

    通常情况下,在机器人高速运动的时候,想要得到非常连续、平滑、噪音低的运动控制,第3个约束条件是必不可少的,有的甚至还要求加速度的导数jerk都是连续的。

    在多项式插值里面,给定多项式的阶次越高,能拟合的函数曲线就越复杂,但越高阶次的多项式对于计算资源的要求越多。因此对于这3个要求,我们可以分别用不同阶次的多项式函数来拟合,实际应用时根据需求选择合适的方法。

    1. 线性插值(一阶,恒定速度)

    线性插值,顾名思义,就是使用线性的方法来进行插值。即将给定的数据点依次用线段连起来,点与点之间运动的速度是恒定值。假设我们用 来表示插值以后的曲线,则用数学的方式来表示线性插值就是:

    其中, 是待确定的常量参数。 表示初始时刻, 表示初始时刻的位置, 表示斜率,也就是速度,这里为常量。因此,给定下一个时刻 处的位置 ,我们就有:

    可以计算得到两个常量参数:

    曲线的速度为:

    线性插值的实验结果为:

    红圈内为给定的中间点值,黑色实线为插值的结果。

    从图中可以明显地看到,线性插值带来的最大问题就是在各个数据点交接处会出现一个急剧的“拐弯”,在这个拐弯处其速度不连续,因此对于运动控制来说,在这里会有一个速度的阶跃。例如,对于电机来说,这里会导致控制电流急剧变化,使得电机的输出不稳定,从而引发“抖动”问题,严重者还会损坏机构本身。因此,线性插值本身的问题导致其在控制领域应用范围受限。

    2. 抛物线插值(二阶,恒定加速度)

    抛物线差值(Parabolic Spline)是二阶多项式插值方法。与线性插值法将各个数据点用线段连起来不同,抛物线插值方法是用二次曲线将各个数据点连接起来,在连接处使用平滑的曲线来过渡,而避免速度不连续导致的“急剧拐弯”。抛物线差值的特征是具有恒定的加速度/减速度,一般是由两个多项式的组合来得到。为什么是两个多项式呢?因为一个用于“加速阶段”,一个用于“减速阶段”。“加速阶段”和“减速阶段”的分割点叫flex point。

    考虑2个数据点之间插值的情况。假设初始时刻是 , 在flex point处对应的时刻是 ,最终时刻为

    先来看一个特殊情况,flex point的位置是起点和终点的中间位置(也可以任意设定,后面我们会讨论,这里先讨论在中间位置的情况),即 。我们做几个符号定义:

    2.1 加速阶段

    对于加速阶段,其数学表达式为:

    其中, 是待确定的常量参数,当我们给定 以及初始时刻的速度 以后,有如下关系:

    因此,常量参数可以计算为:

    这样,我们可以计算得到当 时,插值曲线为:

    在flex point的速度可以这样计算:

    大家可能注意到了,与线性插值不同的是,除了指定初始时刻的位置,我们还需要给定初始时刻的速度

    在flex point处,由加速阶段进入减速阶段,因此此时加速度的符号是会反转的,会导致加速度不连续。

    2.2 减速阶段

    对于减速阶段,其数学表达式为:

    其中, 为待定的常量参数。如果给定最终时刻的速度 ,则有如下关系:

    因此,我们可以计算得到:

    这样,当 时,插值曲线为:

    这里值得注意的是,如果 ,那么在 处(flex point),速度曲线是不连续的。

    如果在 处, 不处于起点和终点的中间位置,即不满足 ,那么,为了保证速度曲线的连续,即 ,我们有以下关系:

    其中, ,则联立多项式我们可以得到:

    从图中我们可以看到,插值的结果中,加速度并不恒定,在 时刻,加速度存在一个阶跃,但加速度和减速度的绝对值是一样的,因此,这种情况属于加速度对称的情况,加速时间和减速时间也一致,都为

    本文附带的代码里面实现了加速度对称的情况,但是留了设置不对称加速度的接口,非常容易实现。

    下面我们来看一下加速度不对称的情况。

    2.3 加速度不对称的情况

    直观上,加速度不对称也就是表示加速时间和减速时间不一致,也就是说 ,但是不局限于 可以是区间内的任意值。此时,我们可以结合前面的两个多项式来构造插值的曲线:

    $$\begin{array}{ll} q_{a}(t)=a_{0}+a_{1}\left(t-t_{0}\right)+a_{2}\left(t-t_{0}\right)^{2}, & t_{0} \leq t<t_{f} \\="" q_{b}(t)="a_{3}+a_{4}\left(t-t_{f}\right)+a_{5}\left(t-t_{f}\right)^{2}," &="" t_{f}="" \leq="" t<t_{1}="" \end{array}="" $$="" 和最终时刻 处的位置和速度信息,且在给定在 处要保证位置和速度曲线的连续性,则我们可以计算得到插值曲线:

    假定加速时间为 ,减速时间为 ,则由上述多项式可以计算得到:

    因此,在 阶段,曲线的速度和加速度可以计算为:

    阶段,曲线的速度和加速度可以计算为:

    值得注意的是,如果 ,那么就与前面我们讨论的加速度对称的情况结果一致了。

    实验结果如下:

    从图中可以看到,位置曲线是“平滑”的,速度曲线是连续的,加速度也是恒定的(在加速和减速阶段内保持恒定),但是加速度曲线在 时刻存在一个阶跃。

    3. 三次多项式插值(三阶,加速度可变)

    三次多项式插值方法(Cubic Spline)是一种常用的插值方法,其位置和速度曲线是连续的,加速度是可变的,但加速度不一定连续。考虑2个数据点之间插值的情况,其数学表达式为:

    其中, 为待确定的参数。

    3.1 给定每一个点的位置和速度信息

    考察给定2个数据点进行插值的情况,如果给定了在初始时刻 和最终时刻 处的位置与速度信息( ),设 ,则这些参数可以使用以下公式计算:

    对于给定 个一系列数据点进行插值的情况,只需要对所有相邻的两个数据点使用上述公式即可依次计算得到整条插值曲线。

    3.2 给定每一个点的位置信息,但中间点的速度未给定

    如果我们只是通过给定一系列的位置信息( ),而中间点的速度信息并未给定,整条曲线最开始的起点和最终的终点速度需要直接给定,一般为零, 。中间各个数据点的速度我们可以通过启发式方法得到,即通过求解位置对时间的导数得到,那么对于第 个中间点,我们有:

    其中,,表示曲线的导数或者“斜率”, 为符号函数,返回值为 或者 。直观上的理解也就是说,考察第 个数据点,如果其导数在该点进行了符号反转,则该点速度为0,否则,该点速度为其导数。

    三次多项式插值能够保证位置曲线和速度曲线是连续的,但加速度曲线不一定连续。虽然已经可以满足许多应用上对于“平滑”的要求了,但是在高速控制领域,一般要求加速度也要是连续的。因此,我们需要引入更高阶次的多项式插值方法。

    实验结果如下:

    从图中可以看到,位置曲线是“平滑”的,速度曲线是连续的,加速度曲线是可变的,但是不连续。这样,对于高速控制的场合来说,控制器的输入仍然会存在阶跃,导致不连续的情况。

    4. 五次多项式插值(五阶,加速度连续)

    考虑2个数据点之间插值的情况,与其他阶次的多项式形式类似,五次多项式插值方法的数学表达式为:

    其中, 为待确定的参数。这里我们一共需要6个约束条件,即起点 和终点 的位置、速度和加速度信息。即给定如下条件:

    ,则我们可以计算得到:

    对于具有 个数据点的情况,可以对所有相邻的2个点应用上述公式,最终得到最终的插值曲线。

    实验结果如下:

    从图中可以看出,位置、速度、加速度三条曲线都是连续的,并且位置和速度还是“平滑”的。到这里,我们已经满足了本文最开始所提到的三个要求。因此,五阶的多项式插值已经能够覆盖大多数应用场景。如果我们对加速度曲线也要求是平滑的,那么就需要更高阶次的多项式插值方法了,例如七阶多项式插值。

    5. 七次及更高阶次的多项式插值

    理论上,多项式的阶次越高,我们可以获得越“平滑”的曲线,但是同时带来的是对运算资源要求的急剧上升,所以一般情况下,七次及更高阶次的多项式方法只用于某些特殊的场合,因此这里我们不再做深入的分析,有兴趣的读者请参考经典书籍《Trajectory Planning for Automatic Machines and Robots》,在本微信公众号【博士的沙漏】底部点击菜单栏或后台回复【TPA】可以获取下载链接。

    网上类似的书籍如下:

    6. 实验结果对比

    在实际的实验中,我们除了实现给定位置点,还给定了速度点和加速度点。这里我们放一张所有方法插值结果的对比图,从中可以直观地看到使用各个阶次多项式进行插值的结果差异。

    本文所涉及的代码全部开源,提供Matlab和Python两个版本,Github仓库地址:https://github.com/chauby/PolynomialInterpolation

    参考

    《Trajectory Planning for Automatic Machines and Robots》

    展开全文
  • 基于python仿真中拉格朗日(Lagrange)插值法以及牛顿(Newton)插值法进行内插的分析与实验,对这两种常见的插值方法进行比较,分析其适用性。随着科学技术的不断发展,在各种复杂工作的研究中仿真是一种不可或缺的手段。...
  • surfer11 中九种插值方法,包括反距离加权插值法,克里金插值法,最小曲率,改进谢别德法,自然邻点插值,最近邻点插值法,多元回归法,径向基函数法,线性插值三角网法,移动平均法,局部多项式法
  • 不同空间插值方法的比较研究--以气候舒适期为例,孙美淑,冯涛,气象相关要素的空间插值能够大大提高资料获取、数据处理和地图测绘的效率,对生态环境治理、资源管理以及全球变化研究显得尤为重
  • 反距离加权插值方法,可以参考我的博客http://blog.csdn.net/dahongdahong/article/details/51959018
  • 插值方法总结

    千次阅读 2020-05-11 20:07:47
    插值方法总结 转自 : https://blog.csdn.net/jia_zhengshen/article/details/11802147 “牛眼”现象现象是某些偏大或偏百小的数据在插值过程中,所形成的以插值点为圆度心的圈状现象。造成问这一现象的原因是...

    插值方法总结

    转自 :   

    https://blog.csdn.net/jia_zhengshen/article/details/11802147

    “牛眼”现象现象是某些偏大或偏百小的数据在插值过程中,所形成的以插值点为圆度心的圈状现象。造成问这一现象的原因是插值区域监测井分布不均匀,而IDW插值过程中仅答以距离为权重,忽略了方位专等其他因素的影响,所以插值结果会与属实测值有较大偏差.

     

    1、最邻近元法

      这是最简单的一种插值方法,不需要计算,在待求象素的四邻象素中,将距离待求象素最近的邻象素灰度赋给待求象素。设i+u, j+v(i, j为正整数, u, v为大于零小于1的小数,下同)为待求象素坐标,则待求象素灰度的值 f(i+u, j+v) 如下图所示:

     

     

    如果(i+u, j+v)落在A区,即u<0.5, v<0.5,则将左上角象素的灰度值赋给待求象素,同理,落在B区则赋予右上角的象素灰度值,落在C区则赋予左下角象素的灰度值,落在D区则赋予右下角象素的灰度值。

    最邻近元法计算量较小,但可能会造成插值生成的图像灰度上的不连续,在灰度变化的地方可能出现明显的锯齿状。

     

    2、双线性内插法

    双线性内插法是利用待求象素四个邻象素的灰度在两个方向上作线性内插,如下图所示:

     

     

    对于 (i, j+v),f(i, j) 到 f(i, j+1) 的灰度变化为线性关系,则有:

          f(i, j+v) = [f(i, j+1) - f(i, j)] * v + f(i, j)

    同理对于 (i+1, j+v) 则有:

                      f(i+1, j+v) = [f(i+1, j+1) - f(i+1, j)] * v + f(i+1, j)

    从f(i, j+v) 到 f(i+1, j+v) 的灰度变化也为线性关系,由此可推导出待求象素灰度的计算式如下:

                      f(i+u, j+v) = (1-u) * (1-v) * f(i, j) + (1-u) * v * f(i, j+1) + u * (1-v) * f(i+1, j) + u * v * f(i+1, j+1)

    双线性内插法的计算比最邻近点法复杂,计算量较大,但没有灰度不连续的缺点,结果基本令人满意。它具有低通滤波性质,使高频分量受损,图像轮廓可能会有一点模糊。

     

    3、三次内插法

    该方法利用三次多项式S(x)求逼近理论上最佳插值函数sin(x)/x, 其数学表达式为:

    待求像素(x, y)的灰度值由其周围16个灰度值加权内插得到,如下图:

     

     

    待求像素的灰度计算式如下:

     

    f(x, y) = f(i+u, j+v) = ABC

     

    其中: 

     

    三次曲线插值方法计算量较大,但插值后的图像效果最好。

     

    插值方法总结:                                                                                                                                                       

    “Inverse Distance to a Power(反距离加权插值法)”、
    “Kriging(克里金插值法)”、
    “Minimum Curvature(最小曲率)”、
    “Modified Shepard's Method(改进谢别德法)”、
    “Natural Neighbor(自然邻点插值法)”、
    “Nearest Neighbor(最近邻点插值法)”、
    “Polynomial Regression(多元回归法)”、
    “Radial Basis Function(径向基函数法)”、
    “Triangulation with Linear Interpolation(线性插值三角网法)”、
    “Moving Average(移动平均法)”、
    “Local Polynomial(局部多项式法)”

    1、距离倒数乘方法
    距离倒数乘方格网化方法是一个加权平均插值法,可以进行确切的或者圆滑的方式插值。方次参数控制着权系数如何随着离开一个格网结点距离的增加而下降。对于一个较大的方次,较近的数据点被给定一个较高的权重份额,对于一个较小的方次,权重比较均匀地分配给各数据点。
    计算一个格网结点时给予一个特定数据点的权值与指定方次的从结点到观测点的该结点被赋予距离倒数成比例。当计算一个格网结点时,配给的权重是一个分数,所 有权重的总和等于1.0。当一个观测点与一个格网结点重合时,该观测点被给予一个实际为 1.0 的权重,所有其它观测点被给予一个几乎为 0.0 的权重。换言之,该结点被赋给与观测点一致的值。这就是一个准确插值。
    距离倒数法的特征之一是要在格网区域内产生围绕观测点位置的"牛眼"。用距离倒数格网化时可以指定一个圆滑参数。大于零的圆滑参数保证,对于一个特定的结 点,没有哪个观测点被赋予全部的权值,即使观测点与该结点重合也是如此。圆滑参数通过修匀已被插值的格网来降低"牛眼"影响。

    2、克里金法
    克里金法是一种在许多领域都很有用的地质统计格网化方法。克里金法试图那样表示隐含在你的数据中的趋势,例如,高点会是沿一个脊连接,而不是被牛眼形等值线所孤立。
    克里金法中包含了几个因子:变化图模型,漂移类型 和矿块效应。

    3、最小曲率法
    最小曲率法广泛用于地球科学。用最小曲率法生成的插值面类似于一个通过各个数据值的,具有最小弯曲量的长条形薄弹性片。最小曲率法,试图在尽可能严格地尊重数据的同时,生成尽可能圆滑的曲面。
    使用最小曲率法时要涉及到两个参数:最大残差参数和最大循环次数参数来控制最小曲率的收敛标准。

    4、多元回归法
    多元回归被用来确定你的数据的大规模的趋势和图案。你可以用几个选项来确定你需要的趋势面类型。多元回归实际上不是插值器,因为它并不试图预测未知的 Z 值。它实际上是一个趋势面分析作图程序。
    使用多元回归法时要涉及到曲面定义和指定XY的最高方次设置,曲面定义是选择采用的数据的多项式类型,这些类型分别是简单平面、双线性鞍、二次曲面、三次曲面和用户定义的多项式。参数设置是指定多项式方程中 X 和 Y组元的最高方次 。

    5、径向基本函数法
    径向基本函数法是多个数据插值方法的组合。根据适应你的数据和生成一个圆滑曲面的能力,其中的复二次函数被许多人认为是最好的方法。所有径向基本函数法都 是准确的插值器,它们都要为尊重你的数据而努力。为了试图生成一个更圆滑的曲面,对所有这些方法你都可以引入一个圆滑系数。你可以指定的函数类似于克里金 中的变化图。当对一个格网结点插值时,这些个函数给数据点规定了一套最佳权重。

    6、谢别德法
    谢别德法使用距离倒数加权的最小二乘方的方法。因此,它与距离倒数乘方插值器相似,但它利用了局部最小二乘方来消除或减少所生成等值线的"牛眼"外观。谢别德法可以是一个准确或圆滑插值器。
    在用谢别德法作为格网化方法时要涉及到圆滑参数的设置。圆滑参数是使谢别德法能够象一个圆滑插值器那样工作。当你增加圆滑参数的值时,圆滑的效果越好。

    7、三角网/线形插值法
    三角网插值器是一种严密的插值器,它的工作路线与手工绘制等值线相近。这种方法是通过在数据点之间连线以建立起若干个三角形来工作的。原始数据点的连结方法是这样:所有三角形的边都不能与另外的三角形相交。其结果构成了一张覆盖格网范围的,由三角形拼接起来的网。
    每一个三角形定义了一个覆盖该三角形内格网结点的面。三角形的倾斜和标高由定义这个三角形的三个原始数据点确定。给定三角形内的全部结点都要受到该三角形的表面的限制。因为原始数据点被用来定义各个三角形,所以你的数据是很受到尊重的。


    8.自然邻点插值法
    自然邻点插值法(NaturalNeighbor)是Surfer7.0才有的网格化新方法。自然邻点插值法广泛应用于一些研究领域中。其基本原理是对于 一组泰森(Thiessen)多边形,当在数据集中加入一个新的数据点(目标)时,就会修改这些泰森多边形,而使用邻点的权重平均值将决定待插点的权重, 待插点的权重和目标泰森多边形成比例。实际上,在这些多边形中,有一些多边形的尺寸将缩小,并且没有一个多边形的大小会增加。同时,自然邻点插值法 在数据点凸起的位置并不外推等值线(如泰森多边形的轮廓线)。

    9.最近邻点插值法
    最近邻点插值法(NearestNeighbor)又称泰森多边形方法,泰森多边形(Thiesen,又叫Dirichlet或Voronoi多边形)分 析法是荷兰气象学家A.H.Thiessen提出的一种分析方法。最初用于从离散分布气象站的降雨量数据中计算平均降雨量,现在GIS和地理分析中经常采 用泰森多边形进行快速的赋值。实际上,最近邻点插值的一个隐含的假设条件是任一网格点p(x,y)的属性值都使用距它最近的位置点的属性值,用每一 个网格节点的最邻点值作为待的节点值。当数据已经是均匀间隔分布,要先将数据转换为SURFER的网格文件,可以应用最近邻点插值法;或者在一个文 件中,数据紧密完整,只有少数点没有取值,可用最近邻点插值法来填充无值的数据点。有时需要排除网格文件中的无值数据的区域,在搜索椭圆 (SearchEllipse)设置一个值,对无数据区域赋予该网格文件里的空白值。设置的搜索半径的大小要小于该网格文件数据值之间的距离,所有的无数 据网格节点都被赋予空白值。在使用最近邻点插值网格化法,将一个规则间隔的XYZ数据转换为一个网格文件时,可设置网格间隔和XYZ数据的数据点之间的间 距相等。最近邻点插值网格化法没有选项,它是均质且无变化的,对均匀间隔的数据进行插值很有用,同时,它对填充无值数据的区域很有效。

     

    Reference                                                                                                                      

    http://blog.csdn.net/coy_wang/article/details/5027872

    http://blog.sina.com.cn/s/blog_6e51df7f0100vb4b.html

    展开全文
  • 各种插值方法

    2016-05-12 10:35:23
    三次样条插值,拉格朗日插值,牛顿插值,B样条插值,cardinal样条插值。使用Romberg积分求弧长,使用二分法在曲线上找特定弧长的点
  • 针对常用的空间插值方法在精度分析方面比较的不足,从地质统计学、数学函数 和几何方法方面分别选取普通克里金插值法、三次样条函数法和距离权重倒数法进行插 值精度的比较与分析
  • 一种保持图像边缘的插值方法
  • 双线性插值方法及实现

    热门讨论 2014-03-08 21:45:09
    双线性插值方法及实现,用c语言编写,有注释
  • 函数的几种插值方法

    2014-01-09 11:46:09
    对于函数f(x),利用牛顿插值、拉格朗日插值和三次样条插值,并将插值函数与原函数画在同一坐标系下
  • 计算方法作业-拉格朗日插值方法,使用c语言实现。剩下的看代码就行。
  • 针对飞行仿真建模过程中气动参数以矩阵的形式给出, 大都存在着非线性关系, 提出一种基于自适应惯性权重的混沌粒子群优化(AIWCPSO) 算法的三次样条气动参数插值方法. 首先建立粒子与三次样条插值函数中系数的映射关系...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 89,269
精华内容 35,707
关键字:

插值方法