曲线拟合方法浅析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
曲线拟合方法概述
工业设计 张静 1014201056
引言:在现代图形造型技术中,曲线拟合是一个重要的部分,是曲面拟合的基础。
现着重对最小二乘法、移动最小二乘法、NURBS 三次曲线拟合法和基于RBF 曲线拟合法进行比较,论述这几种方法的原理及其算法,基于实例分析了上述几种拟合方法的特性,以分析拟合方法的适用场合,从而为图形造型中曲线拟合的方法选用作出更好的选择。
1 曲线拟合的概念
在许多对实验数据处理的问题中,经常需要寻找自变量和对应因变量之间的函数关系,有的变量关系可以根据问题的物理背景,通过理论推导的方法加以求解,得到相应关系式。
但绝大多数的函数关系却很复杂,不容易通过理论推导得到相关的表达式,在这种情况下,就需要采用曲线拟合的方法来求解变量之间的函数关系式。
曲线拟合(Curve Fitting),是用连续曲线近似地刻画或比拟平面上离散点组所表示的坐标之问的函数关系的一种数据处理方法。
在科学实验或社会活动中,通过实验或观测得到量x 与y 的一组数据对(x i ,y i ),i =1,2,3…,m ,其中各x i 是彼此不同的。
人们希望用一类与数据的规律相吻合的解析表
达式y =f(x)来反映量x 与y 之间的依赖关系。
即在一定意义下“最佳”地逼近或拟合已知数据。
f(x)称作拟合函数,似的图像称作拟合曲线。
2 曲线拟合的方法
2.1最小二乘法
最小二乘法通过最小化误差的平方和寻找数据的最佳函数匹配,是进行曲线拟合的一种早期使用的方法 一般最小二乘法的拟合函数是一元二次,可一元多次,也可多元多次。
该方法是通过求出数据点到拟合函数的距离和最小的拟合函数进行拟合的方法令f(x)=ax 2+bx+c ,计算数据点到该函数所表示的曲线的距离和最小 即:
δ=∑-=n i y x f i i 02)
)((
对上式求导,使其等于0,则可以求出f(x)的系数a,b,c ,从而求解出拟合函数。
2.2 移动最小二乘法
移动最小二乘法在最小二乘法的基础上进行了较大的改进,通过引入紧支概
念(即影响区域,数据点一定范围内的节点对该点的拟合函数值有影响),选取适合的权函数,算出拟合函数来替代最小二乘法中的拟合函数 从而有更高的拟合精度及更好的拟合光滑度。
2.2.1 移动最小二乘法的拟合函数
设拟合函数为f(x)在求解域Ω内的n 个节点P i (i =1、2、3、……、n ),则:
f(x)=)()(1x x K i m i i ∑=α=)()(x x K T
α 式中,α(x)为待求系数;K(x )为线性基函数。
一般令K(x)=[1,x,y]T ,m=3;求解过程可以参照文献[1],从而可求α(x),得到f(x)。
2.2.2 移动最小二乘法的算法流程
(1)将区域进行分段。
(2)对每个分段点进行循环:
① 确定网格点的影响区域大小;
② 确定包含在网格点的影响区域内的节点;
③ 计算型函数;
④ 计算网格点的节点值。
(3)连接网格点形成拟合曲线。
2.3 NURBS 三次曲线拟合
NURBS 作为定义工业产品几何形状的唯一数学方法,是现代图 形 学 的 基 础 ,因此NURBS 曲 线 拟 合 有 着 重 要 的 实 际 意 义。
NURBS 曲线的数学模型和数学方法可以参考文献[2]。
本文采用VC 技术,利用OpenGL 的NURBS 曲线拟合函数,即可得到曲线。
2.4基于RBF 的曲线拟合
RBF (Radial Basis Function ),径向神经网络是以径向基函数(RBF )作为隐单元的“基”,构成隐含层空间,隐含层对输入矢量进行变换将低维的模式输入数据变换到高维空间内,使得在低维空间内的线性不可分问题在高维空间内线性可分。
这是一种数学分析方法,具有较快的收敛速度 强大的抗噪和修复能力。
RBF 神经网络结构图如图1所示。
图1 RBF神经网络结构图
各算法流程如下:
最小二乘法通过建立二次函数进行拟合。
建立拟合函数f(x)=ax2+bx+c,求所有数据点与二次曲线的距离和最小的二次曲线,得到a,b,c,从而得到二次曲线图像。
移动最小二乘法的流程是:
(1)NURBS曲线拟合:
确定节点矢量,通过弦长累加来确定节点矢量。
在NURBS 曲线拟合时,设置最前4个节点矢量的值相同和最后4个节点矢量的值相同,那么拟合的曲线将通过给定型值点的第一个点和最后一个点。
由于OpenGL有现成的NURBS曲线拟合函数,借助VC进行编程,实现NURBS三次曲线拟合。
(2)基于RBF曲线拟合流程:
采用高斯函数作为RBF函数的核函数。
1)采用K- 均值法,确定聚类中心;2)按聚类中心分组;3)计算样本均值;4)重复2)、3),直到聚类中心不再变化;5)确定半径;6)调节输出层权。