- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 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
您可能关注的文档
最近下载
- 千级无尘室工程施工方案(3篇).docx VIP
- 深度解析《GBT 44037-2024焦炭溶损率及溶损后强度试验方法》.pptx
- 2025 中级注册安全工程师《金属非金属矿山安全》速记口诀.pdf
- 2025年中国吸顶式车载显示器数据监测研究报告.docx
- 九年级化学酸、碱、盐、氧化物知识小结 “三表一图”(二)天津版.doc VIP
- 部编版六年级上册语文第一周(草原-丁香结)达标测评卷 含答案.docx VIP
- 建筑电气安装工程管线预留预埋阶段质量管理.doc VIP
- 激光原理 全套课件.ppt
- 第1.2课《宁夏闽宁镇:昔日干沙滩,今日金沙滩》(课件)-【中职专用】高二语文同步精品课件(高教版2023·职业模块).pptx VIP
- 部编版语文六年级上册 周测卷(一)1草原+2丁香结(含答案).pdf VIP
文档评论(0)