欢迎来到天天文库
浏览记录
ID:57741705
大小:147.08 KB
页数:2页
时间:2020-03-26
《基于网格拟合的曲面实现.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、基于网格拟合的曲面实现刘金玲(徐州广播电视大学铜山分校,江苏徐州221116)[摘要]数据拟合问题在日常生活中经常遇到,点的拟合可以通过插值等方法来实现。提出了通过最小二乘法,并利用网格的特性实现点的拟合的方法。拟合过程简单,拟合出的表面光顺性较好。而且由于弹性板的柔性和抗弯性的折中,使得在测量数据存在噪声和数据出现重复的情况下也能得到需要的拟合表面。[关键词】柔性板;最小二乘法;网格;拟合;插值1.引言在工程勘探、考古、产品研发等各个领域经常要求从离散(或规则)的数据得到相应的拟合表面。由于数据的复杂性以及测量等原因造成数据不完整或者重复,一般需要通过插值得到表面
2、,插值结果往往会造成某些表面的不精确,或者可能是错误的结果。如果想在拟合过程中不进行插值,而且允许存在噪声和数据重复,那么可以通过网格拟合来实现。它根据已知的数据尽可能地逼近并表示出相应表面,数据描述更精确。2.网格拟合的理论基础假设有一个薄的柔性板,根据弹性范围将其放置到数据上,只沿Z方向伸展,在相应的弹性范围内与数据点对应。如果数据都落在一个简单的平面上:Z(x,y)=a0+alx+a2Y,那么该平面就足最小二乘平面。如果曲面z(x,y)获得的数据点不在一个平面,柔性板自身会根据数据点的分布变形,允许用户控制一些有限的、非零的抗弯刚性。数据的连接将拖动柔性板形成
3、弯曲的形状,而板的抗弯刚性将会反抗这种变形。由于板的相对刚度,将使一定弹性范围内的数据尽可能拟合成为平面。板的硬度使网格拟合超出数据本身平滑外推,当然,数据之外的外推会得到很好的控制,当没有数据使它变形时,板将扩展成局部的平面。板自身的抗弯性和有效的弹性常数范围连接板的数据允许用户选择纯平面拟合这种极端情况,比如突起或凹陷的噪音数据。3.网格拟合的原理给定一组数据的坐标()【,Y,z)拟合成函数(x,Y,Z为行向量)p-Iq-IZ(x,y)=∑∑孢对(a为pzq的系数矩阵)i一0j’0由最小二乘法得:n点(船∞⋯aap-lq-I)是多元函数s(‰⋯嬲内)=∑∞瓴,y
4、j)j=Ip-Iq-I【∑∑郴y—f(】【i,M)】:(to(x,y)为权函数,默认为1)的极小点,从而aaoo⋯啡⋯必须满足方程组:器一-o(i’j=o.”pq)仨≥=。Ooi)冀爿卧㈦lq-I【(‘Pp-1牛l,‘p伽)(‘Pp.1中1,⋯(‘Pp-I午l,‘Pp-l午1)JlaaP.1q-lJ【(‘Pp-,f)J其中‘P∞篁xoyO,‘Pol=XoYl,⋯,‘Pp_1午l=Xp-1旷1也就是A‘anffiB∑榭·榭⋯x。。yo·嘶h·∑删·带-∥∑牮t炉-·删⋯∑牮一”-·确伊...·∑带一yJl·牮1yJl.f粕00]a-n2
5、¨。Il踟b峙lJB=A为pq
6、阶矩阵,B为pq的列矩阵,这样就可以算出列矩阵an,然后转化成aa。在拟合的函数中权函数非常重要,它需要根据具体问题来取,为了计算的方便这里取值l。4.网格拟合的方法根据上面的理论分析,下面讨论网格拟合如何预测任意位置的值。网格拟合表面可以定义为:点的集合根据值形成矩形点阵,任意的数据点都是矩形格子元,它要求在(x,y)平面提供的数据形成每个格子边缘的包围盒。给定一个在格子单一矩形元内部的点,有三种方法得到网格拟合的值,分别是:a.最邻近插值法;b、三角(线性)插值;c、双线性(张量积线性)插值。上述插值方法是作用在“局部”的方法,它们要求栅格通过局部值预测每个点的
7、值。为了得到这些值,考虑使用具有局部特性的线性最小二乘法来实现,并能保持数据的最大稀作者简介:刘金玲,女,山东临沂人。硕士,讲师,研究方向:计算机图形学。--——74·-——疏性。如果我们考虑网格拟合必须是低阶样条,可以容易地实现在格子内部的插补,只需要在已知的点进行线性合并即可。因此就可以把插补问题表示成线性几何问题:A*x=Y,其中向量X长为nx。ny(nx是在x方向的结点数,ny是在Y方向的格子结点数),对应于用户给定的每个数据点,A是n行,nx*ny列。在拟合表而的结点时,网格拟合(用默认的“梯度”规则方法)利用了邻接元表面一阶偏导数相等的原理。线性等式的形
8、式:B*x=0,对于邻近结点,其表面的有限次差分和导数是逼近的。网格中可以选择的规则化方法是“拉普拉斯”方法,它尽量使二阶偏导数的和等于零。该方法接近于梯度方法,但用了一个巧妙的显性差分。这样的“弹性”规则化方法使网格拟合存在一定的缺陷,因此在非必要时尽量避免使用它。5.拟合的实现对n个三维坐标()【,y,z),下面给出函数拟合的部分代码:Z(x,”=aa(i,j)+x“i·州,i从0~>p,j从O一>q求和。functionA=lefimatrix(x,P,Y,q)%A*a=Ba为系数列矩阵%A为左边(p·1)(q—1)乘(p-1)(q.1)的矩阵%x,Y为长
此文档下载收益归作者所有