欢迎来到天天文库
浏览记录
ID:11814466
大小:479.63 KB
页数:10页
时间:2018-07-14
《bezier曲线和bspline曲线的拟合问题》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Bzeier曲线和BSpline曲线的插值拟合问题目录一、问题重述1二、Bezier曲线的插值和拟合12.1Bezier曲线的定义12.2Bezier曲线的性质22.3三次Bezier曲线的插值22.3.1工程应用中常用的三次Bezier插值的算法22.3.2改进的三次Bezier插值的算法32.3.3两种Bezier插值的算法比较42.4Bezier曲线的拟合4三、BSpline曲线的插值和拟合43.1BSpline曲线的定义43.2B样条性质53.3均匀B样条53.4三次B样条插值算法63.4
2、结合实际情况的三次样条插值算法改进73.5两种BSpline插值的比较8四、Bezier曲线与BSpline曲线的区别和联系8五、上述算法在实际血管提取中的应用9一、问题重述在图像中任意点两个点,软件能自动提取出以这两点为端点的一段血管,要求提取到的血管必须经过客户所点的两点作为提取血管的两个端点。在OnGetEdge()的函数里,首先通过自动增长获取血管两条边缘的采样点数据,接下来的问题就是要拟合这些采样点,生成两条比较光滑的血管边缘曲线。得到的拟合(插值)曲线有以下4点要求:1、精确插入客户所
3、点的起始点终点,作为曲线的两个端点;2、拟合的曲线具有较好的光滑性3、具有较高的拟合精度和较快的拟合速度4、要求拟合曲线点八连通上述的实际问题转化为有序离散点的插值拟合问题。所谓插值拟合,就是通过诸如采样、实验等方法获得若干离散的数据,根据这些数据,得到一个连续的函数(也就是曲线)或者更加密集的离散方程与已知数据相吻合。这个过程叫做拟合。插值是曲线必须通过已知点的拟合。常用的插值方法有拉格朗日插值、牛顿插值、埃尔米特插值、样条函数插值等。其中,样条插值可以使用低阶多项式样条实现较小的插值误差,这样
4、就避免了使用高阶多项式所出现的龙格现象,所以样条插值得到了流行。三次B样条插值不仅运行速度较快,而且因为其分段连续带来的特有的卓越的性能,有效提高了血管边缘的平滑程度,锯齿状的现象大大减少。本文接下来将主要介绍Bezier曲线和B样条的插值拟合。二、Bezier曲线的插值和拟合2.1Bezier曲线的定义【定义1】n次Bezier曲线是由n+1个控制点和以Bernstein多项式为基底共同生成的参数曲线,其数学表达式为:,其中,为控制点,为Bernstein基。Fig.1是一条三次的Bezier曲
5、线,有四个控制点。工程应用上常使用二次或三次Bezier曲线做采样点的插值拟合以及制图设计。Fig.1三次Bezier曲线2.2Bezier曲线的性质1、插值于两个端点,即Berize曲线开始于并结束于。2、Bezier曲线的起始点(结束点)相切于控制多边形(控制点以此首位连接所形成的封闭的多边形)的第一节(最后一节),即。3、Bezier曲线是直线的充分必要条件是控制点共线。2.3三次Bezier曲线的插值插值要求得到的曲线精确的通过采样点,四个控制点决定一条Bezier曲线,插值M个点(M>4
6、)设计到曲线拼接连续性的问题,要求达到切线连续。2.3.1工程应用中常用的三次Bezier插值的算法三次Bezier曲线的数学表达是为:Fig.2三次Bezier曲线的结构【算法一】Step1:已知采样点,两端各自增加一个虚拟控制点,分别求出的中点。Step2:分别求出的中点。Step3:将沿着的方向移到,对应的移到。Step4:保持点不变收缩线段到,且。记为,为。Step5:分别以为4个控制点按照(1)式画出一条三次的Bezier曲线,得到的Bezier曲线插值于每一个采样点,且分片一次连续。F
7、ig.3算法一的示意图2.3.2改进的三次Bezier插值的算法由于采样点本身就存在着误差和噪音等诸多因素的影响,插值于每一个采样点得到的Bezier曲线不一定能完全反映真实的数据情况。所以不要求精确的插值每一个采样点。改进的算法步骤如下:【算法二】Step1:已知采样点,分别求出的中点。Step2:依次以分别画出一条三次的Bezier曲线。依次下去,若剩下的点不足四个控制点,则添加相同的虚拟点,,直至满足四个点画一条Bezier曲线,这样得到的Bezier曲线精确的插值与两个端点及部分中间点,且
8、分片一次连续。Fig.4算法二的示意图2.3.3两种Bezier插值的算法比较1)两种算法都精确插值了两端端点,且都是分片一次连续的。2)算法一精确插入了每一个采样点,算法二精确插入了接近一半的采样点及采样点的中点。在采样误差较大的情况下,算法二对算法一的改进也不是很大。3)整体来说,算法二比算法一的计算量要少,更易理解,也更能贴近实际数据。4)在实际数据有很大尖点的情况下,由于算法二不是点点插值,可能拟合不好,不能拟合出尖点的情况,理论上减少分段长度可以避免这种情况。2.4Bez
此文档下载收益归作者所有