直线拟合基于两个及以上的已知点拟合成直线,先检测顶点再拟合成直线。
本节内容包含:
直线拟合用于将一组特征点拟合成一条直线,不能拟合成多条直线,往往用在直线查找提取特征点之后的阶段。使用直线拟合的前提是输入的特征点(至少为2个点)能大致组成一条直线。直线查找可用于直线的测量。
如下图所示,紫色的点为输入的特征点,拟合这些边缘点后可得到一条绿色的直线。
直线拟合根据初始拟合方式得到初始直线,然后根据不同的权重函数迭代进行拟合,直到拟合结果满足要求。另外,在拟合的过程中会根据剔除的点数和剔除的距离舍弃偏离的点,所以直线拟合具有部分抗干扰点的能力。
直线拟合可通过一组特征点状态情况拟合出一个标准的直线,通过对该拟合直线的信息进行评估,检测该组特征点是否符合标准要求,常应用于“宽度检测”、“车道检测”等。
直线拟合模块一般与点集模块进行配合使用,示例效果如下图所示。
选择需输入的图像源。
选择流程中采集到的点集作为拟合来源。
误差过大而被排除不参与拟合的最小点数量。一般情况下,离群点越多,该值应设置越大,为获取更佳查找效果,建议与剔除距离结合使用。
允许离群点到拟合直线的最大像素距离,值越小,排除点越多。
包括全局法和局部最优两种。
局部最优:按照局部的特征点拟合直线,如果局部特征更加准确反映直线所在位置,则采用局部最优,否则采用全局最优。
全局法:以查找到的全局特征点进行圆拟合。
包括最小二乘、huber和tukey三种。三种拟合方式只是权重的计算方式有些差异。随着离群点数量增多以及离群距离增大,可逐次使用最小二乘、huber、tukey。
拟合算法的最大执行次数。
该模块的模块结果介绍请见直线拟合。