一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种适于钢管轮廓测量的椭圆拟合方法

2022-11-30 15:47:50 来源:中国专利 TAG:


1.本发明涉及机器视觉技术领域,特别是指一种适于钢管轮廓测量的椭圆拟合方法。


背景技术:

2.钢管是由整支圆钢穿孔而成的,与圆钢等实心钢材相比,在抗弯抗扭强度相同时,钢管的重量较轻。在钢管生产过程中,钢管的轮廓尺寸是其品质保证的基本要求之一。
3.中小企业通常依靠人工的方式进行钢管的轮廓尺寸测量和记录,其工作效率和准确性往往受限于现场环境和测量人员的状态,易造成受主观影响大、检测精度不高等问题。
4.采用机器视觉的方法能有效弥补人工检测的不足。基于机器视觉的在线检测,通过采集设备在线获取钢管轮廓数据,然后对钢管轮廓进行形状拟合,从而达到对钢管轮廓测量的目的。实际的钢管生产任务中,生产环境往往较为复杂,采集到的钢管轮廓样本点的数量往往较多,而且现场的机械抖动和电磁干扰等环境因素会使所得数据产生随机噪声,甚至产生一些偏离主要点集的离群点,给钢管轮廓测量及形状拟合的过程增加了一定的难度。
5.在钢管轮廓的形状拟合方式方面,钢管轮廓的形状拟合方式主要包括圆拟合和椭圆拟合。与圆拟合这种方式相比,椭圆拟合参数中的长半轴和短半轴可更精细描述钢管的实际外形,是取得高精度轮廓测量的重要途径之一。
6.最小二乘法是椭圆拟合问题中常用的方法之一,该方法受样本点内的噪声影响小,但无法保证拟合出来的二次曲线是椭圆。更经典的椭圆拟合方法是用二次曲线的一般方程作为模型,运用线性最小二乘法以及结合点到椭圆的代数距离计算得到二次曲线,并加以约束条件来保证得到的形状为椭圆。
7.文献《去除离群点的改进椭圆拟合算法》提出了基于截断最小二乘法的改进椭圆拟合算法(记为lts),其基本思想是随机选取固定数量的样本点进行椭圆参数和误差矩阵的计算,然后结合误差矩阵和筛选后的样本点进行迭代计算,直至出现更小的拟合误差,最后在多次循环中选取最小的拟合误差,将其对应的椭圆代数参数作为拟合结果。该算法朝着更小的拟合误差的方向对样本点进行筛选,保证了算法的收敛性,而且拟合速度较快,但其应用在钢管轮廓等样本点和离群点数量较多的对象时,拟合准确度和拟合速度方面的表现往往不够理想,难以满足实际需求。
8.专利申请cn111780745a,一种面向深空探测光学导航的短弧椭圆拟合优化方法,公开了利用最小二乘拟合算法对目标边缘的投影样本点进行形状拟合,进而获得椭圆方程,实现对含有误差的部分椭圆样本数据进行高精度拟合的目的。
9.专利申请cn114283157a,一种基于椭圆拟合的椭圆形物体分割方法,公开了先提取出椭圆形对象的中心点,然后分割出椭圆形对象的边缘的部分,最后利用基于最小二乘的椭圆拟合算法对重叠对象被遮挡的部分进行补全,较好地解决了在相机视角下无法获取完整轮廓的问题。
10.专利申请cn112579968 a,一种基于l0范数代数距离最小化的椭圆拟合方法,公开了通过定义一种基于l0范数代数距离最小化的代价函数,并将此分裂为二次规划问题,进而使用基于l2范数的直接最小二乘法约束初始化算法的惩罚参数,针对各类输入数据可以获得较高精度的椭圆参数。
11.以上现有技术针对不同应用场景利用最小二乘法来辅助求解高精度的椭圆参数,为不同场景下进行轮廓形状拟合提供了新思路。但相对于现有技术中的应用场景而言,钢管轮廓数据的特点除了样本点集不完整与存在噪声外,还包括样本点数量偏多和分布密集的特征。样本点密集且存在离群点往往会使得椭圆曲率及方向都产生明显的变化,使得匹配精度下降。


技术实现要素:

12.为了解决现有技术中钢管轮廓测量过程中,椭圆拟合的样本点密集且存在离群点往往会使得椭圆曲率及方向都产生明显的变化,使得匹配精度下降的技术问题,本发明的一个实施例提供了一种适于钢管轮廓测量的椭圆拟合方法,所述椭圆拟合方法包括如下方法步骤:步骤s1、采集钢管轮廓数据,获取输入样本点集;步骤s2、设置椭圆拟合算法的参数,其中,椭圆拟合算法的参数包括:样本点集的样本点数,总循环次数,当前循环次数,操作子集的样本点数和移除样本点的下限值;步骤s3、移除样本点集中分布密集的样本点,包括:步骤s31、判断样本点数与移除样本点的下限值的大小;步骤s32、若样本点数大于移除样本点的下限值,则将样本点集中的所有样本点按照样本点的横坐标从小到大排序,将排序后的样本点集平均划分为个整数段;步骤s33、删除分段后的样本点集的每段中的一个样本点,并更新样本点集的样本点数,同时,更新操作子集的样本点数;步骤s4、通过截断最小二乘算法对样本点进行循环迭代,得到代数参数矩阵;步骤s5、将得到的代数参数矩阵转化为几何参数,拟合钢管轮廓的椭圆。
13.在一些较佳的实施例中,在步骤s1中,通过在钢管周围安装三台相互间隔120
°
角的检测相机,对钢管整个表面360度的检测,采集钢管轮廓数据;提取采集的钢管轮廓数据中,每个点的横坐标和纵坐标,获取输入样本点集:。
14.在一些较佳的实施例中,在步骤s2中,操作子集样本点数。
15.在一些较佳的实施例中,在步骤s33中,更新后的样本点集的样本点数为,,更新后的操作子集的样本点数。
16.在一些较佳的实施例中,步骤s4包括如下方法步骤:
步骤s41、比较当前循环迭代的循环次数与总循环次数;步骤s42、若当前循环次数小于总循环次数,则随机选取更新后样本点集中的个样本点作为操作子集,并设置上个次循环得到的拟合误差、当前次循环得到的拟合误差,以及次循环次数;并且,根据更新后样本点集的所有样本点构造第一矩阵,并创建第二矩阵;步骤s43、次循环次数,令上个次循环得到的拟合误差当前次循环得到的拟合误差,计算当前操作子集对应的代数参数矩阵,并更新操作子集,以及重新计算当前次循环得到的拟合误差;其中,操作子集对应的代数参数矩阵中的参数构成椭圆的一般二次曲线形式的代数方程;其中,当前操作子集对应的代数参数矩阵通过如下方法计算:利用当前操作子集构造第三矩阵,通过计算广义特征值问题,得到当前操作子集对应的代数参数矩阵,其中,为第三矩阵的转置矩阵,为求数,为第二矩阵。
17.在一些较佳的实施例中,利用当前操作子集对应的代数参数矩阵,计算更新后样本点集的所有样本点在当前操作子集对应的代数参数矩阵下对应的拟合残差矩阵,其中,为第一矩阵,为操作子集对应的代数参数矩阵。
18.在一些较佳的实施例中,将拟合残差矩阵的各个参数按照绝对值从小到大的顺序排序,得到更新残差矩阵,将更新残差矩阵的前个参数对应的样本点作为操作子集的样本点,更新操作子集;将更新残差矩阵的前个参数的绝对值之和,作为更新当前次循环得到的拟合误差。
19.在一些较佳的实施例中,步骤s4还包括如下方法步骤:步骤s44、比较上个次循环得到的拟合误差与当前次循环得到的拟合误差的大小;步骤s45、若次循环次数,并且上个次循环得到的拟合误差≤当前次循环得到的拟合误差,则将上个次循环得到的拟合误差,以及上个次循环得到的拟合误差下操作子集对应的代数参数矩阵,作为本次循环的结果,并且当前循环次数。
20.在一些较佳的实施例中,步骤s4还包括如下方法步骤:步骤s46、将次循环中拟合误差最小时操作子集对应的代数参数矩阵,作为用于转换为几何参数的代数参数矩阵,其中,为总循环次数。
21.在一些较佳的实施例中,在步骤s5中,
将得到的代数参数矩阵转化为椭圆的中心横坐标、中心纵坐标、长半轴、短半轴及长半轴朝向角的椭圆几何参数,拟合钢管轮廓的椭圆。
22.本发明实施例提供的技术方案带来的有益效果至少包括:本发明提出一种适于钢管轮廓测量的椭圆拟合方法,针对钢管轮廓测量的应用场景,对基于截断最小二乘法的椭圆拟合算法进行改进优化,通过样本排序分段和移除的方式对钢管轮廓中密集点集进行筛选后,运用截断最小二乘法的基本思路对椭圆参数进行迭代和优化,最后将椭圆的代数参数转化为更直观的几何参数,得到钢管轮廓的尺寸数据,拟合钢管轮廓的椭圆外形,从而得到钢管的最小管径和最大管径等尺寸信息,提高钢管外形尺寸的检测精度和效率,提高自动化程度。
附图说明
23.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
24.图1是本发明一个实施例中一种适于钢管轮廓测量的椭圆拟合方法的流程框图。
25.图2是本发明一个实施例中在钢管周围安装三台检测相机的示意图。
26.图3是本发明一个实施例中排序后的样本点集平均划分多个整数段的示意图。
27.图4是本发明一个实施例中拟合的钢管轮廓的椭圆的效果图。
具体实施方式
28.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
29.本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
30.如图1所示本发明一个实施例中一种适于钢管轮廓测量的椭圆拟合方法的流程框图,根据本发明的实施例,提供一种适于钢管轮廓测量的椭圆拟合方法,具体包括如下方法步骤:步骤s1、采集钢管轮廓数据,获取输入样本点集。
31.如图2所示本发明一个实施例中在钢管周围安装三台检测相机的示意图,根据本发明的实施例,通过在钢管周围安装三台相互间隔120
°
角的检测相机,对钢管整个表面360度的检测,采集钢管轮廓数据。
32.具体地,在钢管100周围安装第一检测相机200、第二检测相机300和第三检测相机400,第一检测相机200、第二检测相机300和第三检测相机400相互间隔120
°
角。
33.应当理解,第一检测相机200、第二检测相机300和第三检测相机400均应当是能够采集钢管100三维信息的设备,相互间隔120
°
角对钢管100轮廓进行同步采集。
34.提取采集的钢管轮廓数据中,每个点的横坐标和纵坐标,获取输入样本点集:。
35.步骤s2、设置椭圆拟合算法的参数。
36.根据本发明的实施例,椭圆拟合算法的参数包括:样本点集的样本点数,总循环次数,当前循环次数,操作子集的样本点数和移除样本点的下限值。在一个优选的实施例中,操作子集样本点数。具体地,椭圆拟合算法的参数如表1所示。
37.表1 椭圆拟合算法的参数步骤s3、移除样本点集中分布密集的样本点。
38.根据本发明的实施例,针对检测相机采集的样本点集中存在样本点偏多和样本点分布较为密集的情况,本发明对样本点偏多和样本点分布较为密集的样本点进行移除,具体包括如下方法步骤:步骤s31、判断样本点数与移除样本点的下限值的大小。
39.若样本点数不大于移除样本点的下限值,则不对样本点进行分段移除操作,直接转至步骤s4。
40.若样本点数大于移除样本点的下限值,则对样本点进行分段移除操作,转至步骤s32。
41.步骤s32、若样本点数大于移除样本点的下限值,则将样本点集中的所有样本点按照样本点的横坐标从小到大排序,将排序后的样本点集平均划分为个整数段。
42.在一个实施例中,输入的样本点集,所有样本点按照样本点的横坐标从小到大排序,排序后的样本点集为:。
43.如图3所示图3是本发明一个实施例中排序后的样本点集平均划分多个整数段的
示意图,将排序后的样本点集平均划分为个整数段,分段后的样本点集为:步骤s33、删除分段后的样本点集的每段中的一个样本点,并更新样本点集的样本点数,同时,更新操作子集的样本点数。
44.根据本发明的实施例,将分段后的样本点集的每段中的一个样本点,即每段中删除一个样本点,更新后的样本点集的样本点数减少为。
45.由于移除样本点后,总样本的数量减少了,为保证椭圆拟合的覆盖范围和拟合精度,重新设置更新后的操作子集的样本点数。
46.步骤s4、通过截断最小二乘算法对样本点进行循环迭代,得到代数参数矩阵。
47.根据本发明的实施例,运用截断最小二乘算法对样本点进行循环迭代,在每次循环中都迭代至更小的拟合误差,进而在所有循环中选出拟合误差最小的椭圆代数参数,具体地,步骤s4包括如下方法步骤:步骤s41、比较当前循环迭代的循环次数与总循环次数。
48.若当前循环次数总循环次数,则直接转至步骤s46。
49.若当前循环次数总循环次数,则转至步骤s42。
50.步骤s42、若当前循环次数小于总循环次数,则随机选取更新后样本点集中的个样本点作为操作子集,并设置上个次循环得到的拟合误差、当前次循环得到的拟合误差,以及次循环次数。这里所说的更新后样本点集是指步骤s3中移除样本点后的样本点集。
51.根据更新后样本点集的所有样本点构造第一矩阵,并创建第二矩阵:步骤s43、次循环次数,令上个次循环得到的拟合误差当前次循环得到的拟合误差,计算当前操作子集对应的代数参数矩阵,并更新操作子集,以及重新计算当前次循环得到的拟合误差。
52.根据本发明的实施例,当前操作子集对应的代数参数矩阵通过如下方法计算:利用当前操作子集构造第三矩阵,通过计算广义特征值问题,得到当前操作子集对应的代数参数矩阵,其中,为第三矩阵的转置矩阵,为求数,为第二矩阵。
53.计算广义特征值问题的等式仅有一个负的广义特征值,其对应的广义特征矢量构成了操作子集对应的代数参数矩阵:

54.操作子集对应的代数参数矩阵中的参数构成椭圆的一般二次曲线形式的代数方程:,其中,为操作子集对应的代数参数矩阵中的参数,同时构成椭圆的一般二次曲线形式的参数。
55.根据本发明的实施例,操作子集的更新过程为:利用当前操作子集对应的代数参数矩阵,计算更新后样本点集的所有样本点在当前操作子集对应的代数参数矩阵下对应的拟合残差矩阵。
56.其中,为第一矩阵,为操作子集对应的代数参数矩阵。
57.将拟合残差矩阵的各个参数按照绝对值从小到大的顺序排序,得到更新残差矩阵。
58.,其中,为更新残差矩阵的参数。
59.将更新残差矩阵的前个参数对应的样本点作为操作子集的样本点,更新操作子集,例如,更新后的操作子集为。
60.根据本发明的实施例,重新计算当前次循环得到的拟合误差的过程为:将更新残差矩阵的前个参数的绝对值之和,作为更新当前次循环得到的拟合误差。
61.步骤s44、比较上个次循环得到的拟合误差与当前次循环得到的拟合误差的大小。
62.若次循环次数,并且上个次循环得到的拟合误差≤当前次循环得到的拟合误差,则转至步骤s45,否则返回至步骤s43,继续对操作子集和拟合误差进行更新。
63.步骤s45、若次循环次数,并且上个次循环得到的拟合误差≤当前次循环得到的拟合误差,则将上个次循环得到的拟合误差,以及上个次循环得到的拟合误差下操作子集对应的代数参数矩阵,作为本次循环的结果,并且当前循环次数,返回至步骤s41。
64.步骤s46、将次循环中拟合误差最小时操作子集对应的代数参数矩阵,作为用于转换为几何参数的代数参数矩阵,其中,为总循环次数。
65.步骤s5、将得到的代数参数矩阵转化为几何参数,拟合钢管轮廓的椭圆。
66.根据本发明的实施例,在步骤s4通过截断最小二乘算法对样本点进行循环迭代,得到了用于转换为几何参数的代数参数矩阵,将得到的代数参数矩阵转化为椭圆的中心横坐标、中心纵坐标、长半轴、短半轴及长半轴朝向角的椭圆几何参数,拟合钢管轮廓的椭圆。
67.具体地,假设得到的次循环中拟合误差最小时操作子集对应的代数参数矩阵,其参数同时为椭圆代数方程中的参数,将其转换为椭圆的几何参数,转换过程为:令代数参数中的和都大于零,且令:,则:由此,通过椭圆的集合参数,完成对钢管轮廓的椭圆进行拟合。
68.如图4所示本发明一个实施例中拟合的钢管轮廓的椭圆的效果图,根据本发明在一个实施例中,将本发明一种适于钢管轮廓测量的椭圆拟合方法应用在典型钢管生产线上的钢管,对钢管轮廓的椭圆拟合结果与真实钢管轮廓的椭圆尺寸进行对比,如表2所示不同数量样本下的平均拟合正确率和平均拟合时间。
69.表2不同数量样本下的平均拟合正确率和平均拟合时间(a)平均正确率(b)平均消耗时间(单位:毫秒)
由表2在样本数量分别为500、550、600、650、700下的平均拟合正确率和平均拟合时间可知,当样本数量为700时,钢管轮廓的椭圆拟合的正确率更高,平均拟合时间未明显提升。本发明针对样本点集中存在样本点偏多和样本点分布较为密集的情况,能够更加精确的对钢管轮廓进行椭圆拟合,提高钢管轮廓检测的精度。
70.最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献