PFA算法.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PFA算法

3.3 抛物线拟合算法(Parabola fitting algorithm) 现在有很多方法用一条曲线来拟合二维空间的散射点。其中,最小二乘法(least square method)是工程中最常见的一种方法。考虑到任何一组散射点都能用一个多项式函数(a polynomial function)来拟合,我们选择抛物线(parabola)作为拟合曲线。对最小二乘法来说,尽管拟合的精度(the fitting precision)随多项式的阶数(degree)的增加而增强。但它的时间复杂度(time complexity)也随之有极大增长。所以这篇文章采用抛物线来拟合边缘点,虽然它不能保证拟合精度,却降低了时间复杂度。 我们假定要拟合的边缘点集合用来表示,拟合抛物线表达式(expression)为。现在和之间的均方误差(MSE)(the mean square error)可用下式表示: (3) 根据多变量函数(multi-variable functions)的极大值定理(the maximum-principle),的最小值满足: (4) 由公式(4)可推出拟合抛物线的一般方程如下: (5) 方程(5)能用下面的简单符号重新表示如下: (6) 解方程(6),能得到: (7) 现在,我们来考虑上面3个方程式中的某些分母(denominator)等于0的特殊情况。首先,我们假定当前系统的坐标原点(the coordinates origin)为图像的第一个点,水平坐标轴(horizontal coordinates)的正方向为从左到右,纵坐标(vertical coordinates)的正方向为从上到下。则所有点的坐标位置(the coordinates positions)都分属于自然数(natural number)。如果它们用表示,则。 特殊情况的讨论如下: 因为∈N并且=,能推导出总是比0大,这也就说明了方程组(7)的第3个等式在任何条件下都是成立的。 通过分析要拟合点的位置,我们发现当它们的横坐标x的值彼此大致相等时,第一个方程式的分母和第二个方程式的分母大致等于0。这就是说,如果一组要拟合的点近似于一条与竖坐标轴平行的直线,则没有抛物线能拟合它们。这种现象的原因是因为在理论上,抛物线不能拟合y坐标轴的平行线。然而,这个缺陷不会影响这篇文章的拟合效果。从符合此种特殊情况的点集来看,我们能发现这些点能用y轴的一条平行线来拟合,它也可以看做是一条令的成功的拟合。 根据上面的分析,PFA算法的详细描述如下。它的代码能在附录A中找到,其中的一些简单的操作用蓝颜色标出。 步骤1: 根据邻域所包含的边界点的位置,计算出下列系数(coefficients): 步骤2: 根据方程(5)和(6),计算出。 步骤3: 根据方程组(7),计算拟合抛物线m-curve的系数,。 步骤4: 根据边缘点与m-curve的关系,从中分离出有效地拟合点。输出有效的拟合点和m-curve。中剩下的所有边缘点为新的ADDA算法和PFA算法保存下来。 边缘点的数据结构 struct Edge point { int x;// 边缘点的横坐标位置 int y;//边缘点的纵坐标位置 double level;// 拟合水平 EdgePoint *link;// 指向下一个边缘点的指针 }; 算法地伪代码如下: A.2.2 PFA算法代码 FitEdgepoints(EdgePoint edgepoint) { EdgePoint otherpoint=NULL float ===0; Integer m=flag=0 Loop for each element of edgepoint { m++ //Number of edge points to be fitted increases by 1 Compute ,,i=1,2,3,j=1,2,3 //According to the corresponding //relationship between eq

文档评论(0)

abf4675328 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档