基于约束的三维直线拟合方法与流程

文档序号:30446387发布日期:2022-06-18 00:46阅读:118来源:国知局
基于约束的三维直线拟合方法与流程

1.本技术涉及3d视觉领域,尤其涉及一种基于约束的三维直线拟合方法。


背景技术:

2.在3d视觉的检测和测量项目中,通常需要对工件轮廓进行直线的形状检测和直线度的测量,则需要对工件表面轮廓点云数据进行三维直线拟合。
3.目前,通过传感器采集工件表面轮廓点云数据,轮廓点云数据通过最小二乘进行三维直线拟合,得到拟合直线以及其参数;当拟合轮廓点云数据中存在局外点时,如图1所示,基于最小二乘上进行直线拟合时,得到的拟合直线10与轮廓点云数据(图1中轮廓点云数据中存在局外点)存在偏差。
4.然而,在一些检测或测量项目的应用中需要在约束条件下的拟合直线及其参数,通过上述方法得到的拟合直线及其参数存在误差,不符合场景应用需求。


技术实现要素:

5.本技术提供了一种基于约束的三维直线拟合方法,以解决目前拟合直线存在误差,不符合场景应用需求技术问题。
6.为了达到上述目的,本技术实施例采用以下技术方案:
7.本技术提供一种基于约束的三维直线拟合方法,所述拟合方法包括如下步骤:
8.确定待拟合点云数据;
9.所述待拟合点云数据通过预设拟合方法确定空间拟合直线以及所述空间拟合直线的参数,所述预设拟合方法包括带局外点拟合和最小二乘拟合;
10.所述空间拟合直线在预设平面投影得到平面拟合直线以及平面拟合直线的参数,所述平面拟合直线的参数中第二偏移量和第二rms由所述空间拟合直线的参数确定。
11.在一种可实现方式中,所述待拟合点云数据是通过预设索引需求从待测物的点云数据中提取的,所述点云数据包括索引信息和数据信息,所述预设索引需求是由索引信息构成的。
12.在一种可实现方式中,当预设拟合方法为带局外点拟合时,所述空间拟合直线的确定包括:
13.所述待拟合点云数据基于ransac的随机迭代确定次优直线;
14.根据所述次优直线确定空间拟合直线。
15.在一种可实现方式中,所述待拟合点云数据基于ransac的随机迭代确定次优直线,包括:
16.获取每次迭代的总次数;
17.获取每次迭代的当前直线及其内点数,所述当前直线由所述待拟合点云数据中随机选取2个点拟合的,所述内点数为到当前直线的距离在预设距离阈值之内的点的数量;
18.根据所述当前直线的内点比例确定每次迭代的最大迭代次数,所述内点比例为所
述内点数占所述待拟合点云数据的总点数的比例;
19.当最大迭代次数小于每次迭代的总次数时,确定对应的当前直线为次优直线。
20.在一种可实现方式中,每次迭代的最大迭代次数的确定,包括:
21.获得内点比例,所述内点比例按照下式计算获得:
[0022][0023]
式中,t为内点比例,m为当前直线的内点数,n为待拟合点云数据的总点数;
[0024]
获得置信度,所述置信度按照下式计算获得:
[0025]
p=1-(1-t2)k[0026]
式中,p为置信度,k为当前内点比例的最大迭代次数;
[0027]
上式变形,得到最大迭代次数:
[0028][0029]
在一种可实现方式中,所述待拟合点云数据基于ransac的随机迭代确定次优直线,还包括:
[0030]
当最大迭代次数不小于每次迭代的总次数时,继续迭代。
[0031]
在一种可实现方式中,所述次优直线的确定,包括;
[0032]
根据索引步长采样和/或随机采样对所述待拟合点云数据采样,得到采样点云数据;
[0033]
所述采样点云数据基于ransac的随机迭代确定次优直线。
[0034]
在一种可实现方式中,所述空间拟合直线的确定,包括:
[0035]
根据所述次优直线和预设距离阈值确定第一内点;
[0036]
所述第一内点根据最小二乘拟合得到中间直线,以及所述中间直线和预设距离确定第二内点;
[0037]
当相邻两次内点的数量不再增加时对应的中间直线为空间拟合直线。
[0038]
在一种可实现方式中,所述平面拟合直线的参数中第二偏移量和第二rms由所述空间拟合直线的参数确定,包括:
[0039]
所述平面拟合直线和所述空间拟合直线确定构造平面;
[0040]
确定所述平面拟合直线的参数中第二rms和第二偏移量,所述第二偏移量和所述第二rms等价于点云对于所述构造平面的第三偏移量和第三rms。
[0041]
在一种可实现方式中,所述空间拟合直线的参数包括第一方向向量、第一位置点、第一内点索引、第一内点数量、第一rms和第一偏移量;所述平面拟合直线的参数包括第二方向向量、第二位置点、第二内点索引、第二内点数量、第二rms和第二偏移量。
[0042]
由以上技术方案可知,本技术提供的一种基于约束的三维直线拟合方法,包括确定待拟合点云数据;所述待拟合点云数据通过预设拟合方法确定空间拟合直线以及所述空间拟合直线的参数,所述预设拟合方法包括带局外点拟合和最小二乘拟合;所述空间拟合直线在预设平面投影得到平面拟合直线以及平面拟合直线的参数,所述平面拟合直线的参数中第二偏移量和第二rms由所述空间拟合直线的参数确定。本技术通过预设拟合方法克服局外点对直线拟合的干扰,提高直线拟合的精度,减小点云投影运算的复杂度。
附图说明
[0043]
为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0044]
图1为本技术现有技术中存在局外点时直线拟合的示意图;
[0045]
图2为本技术实施例一种基于约束的三维直线拟合方法的流程图;
[0046]
图3为本技术实施例预设拟合方法为带局外点拟合时确定空间拟合直线的流程图;
[0047]
图4为本技术实施例基于ransac随机选取待拟合点云数据中两个点来构造直线的示意图;
[0048]
图5为本技术实施例确定次优直线的示意图;
[0049]
图6为本技术实施例确定空间拟合直线的示意图;
[0050]
图7为图1通过本技术带局外点拟合的方法后拟合直线的示意图;
[0051]
图8为本技术实施例预设平面投影=的直线拟合的示意图;
[0052]
图9为图8的俯视图;
[0053]
其中:10-带局外点情况下的拟合直线;20-去局外点情况下的拟合直线;30-待拟合点云数据;31-内点;32-外点;33-次优直线;34、41-空间拟合直线;42-平面拟合直线;43-投影平面;44-构造平面。
具体实施方式
[0054]
为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。
[0055]
需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0056]
目前对于三维直线拟合通常对全局点云进行拟合,当拟合数据中存在局外点时,导致拟合得到的三维直线的参数存在误差,导致约束条件下的三维直线拟合误差增加,且不能快速计算均方根(rms)和偏移量;导致后续拟合直线在形状检测和直线度的测量等应用中的误差。
[0057]
因此,为解决上述问题,本本技术实施例提供一种基于约束的三维直线拟合方法,如图2所示,所述方法包括如下步骤:
[0058]
s101、确定待拟合点云数据。
[0059]
所述待拟合点云数据是通过预设索引需求从待测物的点云数据中提取的。
[0060]
在一些实施例中,待拟合点云数据也可通过本领域人员常用的点云提取方式获得。
[0061]
s102、所述待拟合点云数据通过预设拟合方法确定空间拟合直线以及所述空间拟合直线的参数。
[0062]
所述预设拟合方法包括带局外点拟合和/或最小二乘拟合。所述空间拟合直线的参数包括直线第一方向向量、第一直线位置点、第一内点数量、第一rms、第一偏移量和第一内点索引。
[0063]
当预设拟合方法为带局外点拟合时,如图3所示,所述空间拟合直线的确定包括如下步骤:
[0064]
s1021、待拟合点云数据基于ransac的随机迭代获取次优直线。
[0065]
基于ransac(random sample consensus)算法框架,ransac算法根据一组包含异常数据的样本数据集,计算出数据的数学模型参数,得到有效样本数据的算法。如图4所示,首先基于ransac原理随机选取待拟合点云数据30中两个点来构造直线,然后计算所有的点到该直线的距离,根据预设距离阈值分出内点和外点,重复上述随机过程,当满足迭代终止条件时获取内点数量最多的直线为最终结果。
[0066]
每次迭代时,获取当前迭代的总次数k,并从待拟合点云数据中随机选取2个点拟合当前直线,将到当前直线的距离在预设距离阈值之内的点作为内点,并获得当前直线的内点数,由于存在预设距离阈值的约束,此时获得的当前直线已经在很大程度上减少局外点对其参数的干扰。根据当前直线的内点比例确定最大迭代次数,具体通过如下公式获得:
[0067][0068]
式中,t为内点比例,m为当前直线的内点数,n为待拟合点云数据的总点数。
[0069]
p=1-(1-t2)k[0070]
式中,p为置信度,k为当前内点比例的最大迭代次数。上式变形,得到最大迭代次数k如下:
[0071][0072]
当k≥k时,继续迭代;
[0073]
当k<k时,确定次优直线,所述次优直线为迭代过程中内点数最大的直线,如图5所示,外点32,内点31,次优直线33。
[0074]
在一种实施方式中,可根据索引步长采样和/或随机采样对所述待拟合点云数据进行采样,得到采样点云数据。因为ransac算法本身具备随机性,使用采样后的采样点云数据只对迭代次数产生影响,后续通过迭代寻找最优直线的仍然能够得到准确的直线参数,可降低算法的时间复杂度。
[0075]
s1022、根据所述次优直线确定空间拟合直线及所述空间拟合直线的参数。
[0076]
迭代寻优的思想是依据拟合直线和预设距离阈值获取内点再重新拟合直线,拟合方法为最小二乘,不断迭代该过程,当内点数量不再增加时得到的结果为最优直线。
[0077]
基本迭代寻优,由次优直线和预设距离阈值获得内点,对内点进行最小二乘拟合得到直线;该直线和预设距离阈值重新获取内点,再拟合,循环迭代此过程。当内点的数量不再增加时的对应直线为最优直线,即空间拟合直线,如图6所示,外点32,内点31,空间拟合直线34,此时,空间拟合直线的内点数大于或等于次优直线的内点数,因此,具有更高的精度。
[0078]
根据所述空间拟合直线确定其参数,包括直线第一方向向量、第一直线位置点、第一内点数量、第一rms、第一偏移量和第一内点索引;其中,第一偏移量为点云到直线的最远距离。
[0079]
如图7所示,背景技术中的例子,本技术通过带局外点拟合的方法,得到去局外点的拟合直线20,克服了局外点对直线拟合的干扰。
[0080]
当预设拟合方法为最小二乘拟合时,所述空间拟合直线的确定是待拟合点云数据通过最小二乘法得到空间拟合直线,并得到空间拟合直线的第一方向向量、第一位置点、第一内点索引、第一内点数量、第一rms和第一偏移量。
[0081]
s103、所述空间拟合直线在预设平面投影得到平面拟合直线以及平面拟合直线的参数。
[0082]
如图8所示,粗实线为空间拟合直线41,虚线为投影到投影平面43上的平面拟合直线42,通过平面拟合直线和空间拟合直线得到构造平面44,如图9所示,为图8的俯视图,此时点云对所述构造平面的rms和偏移量等价于点云对直线的rms和偏移量,通过等价计算的方式获取平面拟合直线的第二偏移量和第二rms,避免大量的点云投影运算,降低复杂度。
[0083]
由以上技术方案可知,本技术提供本技术提供的一种基于约束的三维直线拟合方法,包括确定待拟合点云数据;所述待拟合点云数据通过预设拟合方法确定空间拟合直线以及所述空间拟合直线的参数,所述预设拟合方法包括带局外点拟合和最小二乘拟合;所述空间拟合直线在预设平面投影得到平面拟合直线以及平面拟合直线的参数,所述平面拟合直线的参数中第二偏移量和第二rms由所述空间拟合直线的参数确定。本技术通过预设拟合方法克服局外点对直线拟合的干扰,提高直线拟合的精度,减小点云投影运算的复杂度。
[0084]
以上内容仅为说明本技术的技术思想,不能以此限定本技术的保护范围,凡是按照本技术提出的技术思想,在技术方案基础上所做的任何改动,均落入本技术权利要求书的保护范围之内。
[0085]
此外,除非权利要求中明确说明,本技术所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本技术流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本技术实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的系统。
[0086]
同理,应当注意的是,为了简化本技术披露的表述,从而帮助对一个或多个实施例的理解,前文对本技术实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本技术对象所需要的特征比权利要求中提及的
特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
[0087]
针对本技术引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本技术作为参考。与本技术内容不一致或产生冲突的申请历史文件除外,对本技术权利要求最广范围有限制的文件(当前或之后附加于本技术中的)也除外。需要说明的是,如果本技术附属材料中的描述、定义、和/或术语的使用与本技术所述内容有不一致或冲突的地方,以本技术的描述、定义和/或术语的使用为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1