第4讲:曲线曲面的插值与拟合方法(第1次课)_第1页
第4讲:曲线曲面的插值与拟合方法(第1次课)_第2页
第4讲:曲线曲面的插值与拟合方法(第1次课)_第3页
第4讲:曲线曲面的插值与拟合方法(第1次课)_第4页
第4讲:曲线曲面的插值与拟合方法(第1次课)_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第四讲第四讲 曲线曲面的曲线曲面的插值与拟合方法插值与拟合方法1第四讲 插值与拟合之插值(上)内容:内容:插值是离散函数逼近的重要方法,利用它插值是离散函数逼近的重要方法,利用它 可通过函数在有限个点处的取值状况,估可通过函数在有限个点处的取值状况,估 算出函数在其他点处的近似值算出函数在其他点处的近似值目的:目的:学习插值的基本思想和方法,掌握学习插值的基本思想和方法,掌握Matlab 的的一维一维/二维等距和非等距二维等距和非等距插值函数插值函数要求:要求:掌握掌握Matlab插值函数,处理插值应用问题插值函数,处理插值应用问题了解拉格朗日和分段线性插值的基本思想了解拉格朗日和分段线性插值

2、的基本思想了解三次样条插值的提法和思路了解三次样条插值的提法和思路(条件数条件数)掌握插值函数掌握插值函数 interp interp1 interp2 griddata掌握水塔用水量的计算掌握水塔用水量的计算(水位水位-体积体积-流速流速-积分积分)第四讲第四讲 曲线曲面的曲线曲面的插值与拟合方法插值与拟合方法2关于插值与拟合的区别 面对工程实践和科学计算中的采集得到数据面对工程实践和科学计算中的采集得到数据(xi,yi),我们总是试图去揭示我们总是试图去揭示x与与y之间的关系之间的关系,即,即用近似的用近似的y=f(x)来表示,那么我们通常可以采用两来表示,那么我们通常可以采用两种方法:种

3、方法:插值与拟合插值与拟合(均要求自变量单调均要求自变量单调) 插值与拟合的插值与拟合的区别区别在于在于插值试图去通过插值试图去通过已知点已知点了解了解未知未知点点处的函数值;而拟合则在于在处的函数值;而拟合则在于在整体上用某种整体上用某种已知函数已知函数去拟合数去拟合数据点列所在据点列所在未知函数未知函数的性态。的性态。 关键区别关键区别在于插值要求在于插值要求必须经过必须经过已知点列,拟已知点列,拟合只求合只求尽量靠近尽量靠近不必经过!拟合将在本讲下介绍不必经过!拟合将在本讲下介绍第四讲第四讲 曲线曲面的曲线曲面的插值与拟合方法插值与拟合方法3引例引例1 函数查表问题:函数查表问题:已知标

4、准正态分布函数表,求已知标准正态分布函数表,求表中没有的值表中没有的值 (2.34)=0.99036 (2.35)=0.99061求求 (2.3457) (2.35-2.3457)/(2.35-2.34)* (2.34)+ (2.3457-2.34)/(2.35-2.34)* (2.35)引例引例2 地图绘制问题:地图绘制问题:假如我们在地图边界获取了一些边界点的坐标,假如我们在地图边界获取了一些边界点的坐标,连接这些边界点形成闭合曲线,可以用来近似表连接这些边界点形成闭合曲线,可以用来近似表示真实边界线,如何示真实边界线,如何更准确地逼近更准确地逼近真实边界线?真实边界线?函数查表与地图边界

5、线绘制 (2.3457)=?第四讲第四讲 曲线曲面的曲线曲面的插值与拟合方法插值与拟合方法4如何更准确地逼近真实边界线?第四讲第四讲 曲线曲面的曲线曲面的插值与拟合方法插值与拟合方法5插值在数码图像放大中的应用引例引例3 图像插值放大:图像插值放大:数码相机运用插值的方法可以数码相机运用插值的方法可以创造出创造出比传感器实比传感器实际像素更多的图像,这种处理称为际像素更多的图像,这种处理称为“数码变焦数码变焦”。106*40原始图像:原始图像:左边:左边:最近邻插值最近邻插值放大放大450%右边:右边:双三次插值双三次插值放大放大450%第四讲第四讲 曲线曲面的曲线曲面的插值与拟合方法插值与拟

6、合方法6插值在图像三维重建中的应用Surface recostruction from scattered points cloud 第四讲第四讲 曲线曲面的曲线曲面的插值与拟合方法插值与拟合方法7分段线性插值和拉格朗日插值分段线性插值:分段线性插值:用直线用直线(线性线性)连接数据点列上相邻的两点。连接数据点列上相邻的两点。比如比如在两点在两点xi-1,xi上线性插值函数为上线性插值函数为11111( ),0,1,2,.,iiiiiiiiiixxxxq xyyxxxxxxxin拉格朗日插值:拉格朗日插值:用用n次拉格朗日插值多项式次拉格朗日插值多项式0()()nnkkkLxylx连接数据点列

7、上相邻的连接数据点列上相邻的n+1个点。个点。Pszjs71第四讲第四讲 曲线曲面的曲线曲面的插值与拟合方法插值与拟合方法8拉格朗日插值基函数的构造比如比如 在三个点在三个点x0,x1,x2上上lagrange插值函数为插值函数为(线性插值线性插值是拉格朗日插值是拉格朗日插值最简单最简单的情形的情形) 2200011221220010202110120122021()()()()()() ()()() ()() ()() ()() ()() ()kkkLxylxylxy lxylxxxxxLxyxxxxxxxxyxxxxxxxxyxxxx第四讲第四讲 曲线曲面的曲线曲面的插值与拟合方法插值与拟

8、合方法9拉格朗日插值基函数的构造题例题例 f(x)=ln(x)的数值表为的数值表为用用Lagrange插值计算插值计算ln(0.54)的的近似值近似值x=0.4, 0.5, 0.6, 0.7, 0.8; xi=0.54;y=-0.916291, -0.693147, -0.510826, -0.357765, -0.223144;n=length(x); L=zeros(n,1); yi=0;for i=1:n L(i)=1; for j=1:n if j=i L(i)=L(i)*(xi-x(j)/(x(i)-x(j); end end yi=yi+y(i)*L(i);endx0.40.50.

9、60.70.8ln(x)-0.916291-0.693147-0.510826-0.357765-0.223144第四讲第四讲 曲线曲面的曲线曲面的插值与拟合方法插值与拟合方法10分段三次埃尔米特插值条件数分段三次埃尔米特插值:分段三次埃尔米特插值:线性插值线性插值在每一小段上在每一小段上(两点之间两点之间),用到,用到2个个条件条件q(xi)=yi,所以确定了一个所以确定了一个线性线性插值函数;插值函数;三次埃三次埃尔米特插值尔米特插值在每一小段上,用到在每一小段上,用到4个个条件条件q(xi)=yi, q(xi)=yi,所以确定一个所以确定一个3次多项式次多项式插值函数。插值函数。 分段插

10、值主要是为了避免高次插值可能出现的分段插值主要是为了避免高次插值可能出现的大幅度振荡大幅度振荡现象,在实际应用中通常采用分段低现象,在实际应用中通常采用分段低次插值来次插值来提高近似程度提高近似程度,比如可用分段线性插值,比如可用分段线性插值或分段三次埃尔米特插值来逼近已知函数,但它或分段三次埃尔米特插值来逼近已知函数,但它们的们的总体光滑性较差总体光滑性较差,为了克服这一缺点,三次,为了克服这一缺点,三次样条插值成为比较理想的工具。样条插值成为比较理想的工具。第四讲第四讲 曲线曲面的曲线曲面的插值与拟合方法插值与拟合方法11三次样条(spline)插值的概念 样条的概念出自工程设计和机械加工

11、样条的概念出自工程设计和机械加工(飞机、船飞机、船舶外形曲线设计舶外形曲线设计)中的绘图工具中的绘图工具(曲线尺曲线尺),简单说,简单说就是具有就是具有连续二阶导数的三次插值多项式函数。连续二阶导数的三次插值多项式函数。 第四讲第四讲 曲线曲面的曲线曲面的插值与拟合方法插值与拟合方法12三次样条(spline)插值的条件数 首先从段数首先从段数n=2分析:我们知道在每一小段的分析:我们知道在每一小段的三次多项式有三次多项式有4个系数,所以如下图,总共需要有个系数,所以如下图,总共需要有4*2=8个方程来确定;个方程来确定; 由由q(xi)=yi可以确定可以确定2*2=4个个方程,又由内部节点方

12、程,又由内部节点q1(xi)= q2(xi)和和q1(xi)= q2(xi)可以确定可以确定2*(2-1)=2个方程,看来剩下的个方程,看来剩下的8-(4+2)=2个方程只有靠个方程只有靠外部给定外部给定(边界条件边界条件)了了q1q2x0 x1x2第四讲第四讲 曲线曲面的曲线曲面的插值与拟合方法插值与拟合方法13一维曲线等距插值函数interpinterps syntaxOne-dimensional r times longer data interpolation y = interp(y,r)题例题例 在原始数据点中在原始数据点中增倍增倍插值插值x=0:0.001:1; y=sin(2

13、*pi*30*x)+sin(2*pi*60*x); yi=interp(y,4);subplot(1,2,1); stem(y(1:30); title(Original Points);subplot(1,2,2); stem(yi(1:120); title(Interpolated Points);第四讲第四讲 曲线曲面的曲线曲面的插值与拟合方法插值与拟合方法14一维曲线等距插值函数interp1interp1s syntaxOne-dimensional data interpolation yi = interp1(x,y,xi,method)nearest Nearest neig

14、hbor interpolationlinear Linear interpolation (default)spline Cubic spline interpolationcubic Piecewise cubic Hermite interpolation题例题例 在一天在一天24小时内小时内,从零点开始每间隔从零点开始每间隔2小时测小时测得的环境温度,推测在得的环境温度,推测在15点点6分的的温度分的的温度x=0:2:24; y=12,9,9,10,18,24,28,27,25,20,18,15,13;plot(x,y,-ro); hold on; xi=15.1; yi=interp

15、1(x,y,xi,spline),xi=0:1/3600:24; yi=interp1(x,y,xi,spline); plot(xi,yi,b-);第四讲第四讲 曲线曲面的曲线曲面的插值与拟合方法插值与拟合方法15二维曲面等距插值函数interp2interp2s syntaxTwo-dimensional data interpolation ZI = interp2(X,Y,Z,XI,YI,method)nearest Nearest neighbor interpolationlinear Bilinear interpolation (default)spline Cubic spl

16、ine interpolationcubic Bicubuc interpolation第四讲第四讲 曲线曲面的曲线曲面的插值与拟合方法插值与拟合方法16二维曲面等距插值函数interp2动画展示:三维空间中的曲面等距格点动画展示:三维空间中的曲面等距格点第四讲第四讲 曲线曲面的曲线曲面的插值与拟合方法插值与拟合方法17二维曲面等距插值函数interp2题例题例 粗糙山顶曲面的平滑处理粗糙山顶曲面的平滑处理(等距情形等距情形)load mountain.mat %载入山顶地形数据载入山顶地形数据mesh(x,y,z) %绘制原始山顶地形图绘制原始山顶地形图xi=linspace(0,5,50)

17、; yi=linspace(0,6,80); xii,yii=meshgrid(xi,yi); zii=interp2(x,y,z,xii,yii,spline); %三次样条插值三次样条插值%zii=interp2(x,y,z,xii,yii,nearest); %最近邻插值最近邻插值%zii=interp2(x,y,z,xii,yii,linear); %线性插值线性插值figure;surf(xii,yii,zii) %绘制平滑处理后的山顶曲面绘制平滑处理后的山顶曲面hold on;xx,yy=meshgrid(x,y);plot3(xx,yy,z+0.1,ob);第四讲第四讲 曲线曲面

18、的曲线曲面的插值与拟合方法插值与拟合方法18二维曲面等距插值函数interp2题例题例 粗糙山顶曲面的平滑处理粗糙山顶曲面的平滑处理(等距情形等距情形)第四讲第四讲 曲线曲面的曲线曲面的插值与拟合方法插值与拟合方法19二维曲面散乱插值函数griddatagriddatas syntaxData interpolation for scattered points ZI = griddata(x,y,z,XI,YI)XI,YI,ZI = griddata(x,y,z,xi,yi). = griddata(.,method)linear Triangle-based linear interpol

19、ationcubic Triangle-based cubic (default) nearest Nearest neighbor v4 MATLAB 4 griddata methodMATLAB二维插值函数二维插值函数griddata,可以将平面或曲面上的可以将平面或曲面上的散乱点散乱点插值为插值为规则网格规则网格第四讲第四讲 曲线曲面的曲线曲面的插值与拟合方法插值与拟合方法20二维曲面散乱插值函数griddata题例题例 粗糙山顶曲面的平滑处理粗糙山顶曲面的平滑处理( (散乱情形散乱情形) )rand(seed,0)x = rand(100,1)*4-2; y = rand(100,1)*4-2;z = x.*exp(-x.2-y.2);plot3(x,y,z,o);hold onti = -2:.25:2; XI,YI = meshgrid(ti,ti);ZI = griddata(x,y,z,XI,YI);mesh(XI,Y

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论