System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于轴类工件参数测量,具体涉及一种基于三维点云的轴类工件的参数测量方法及装置。
技术介绍
1、目前轴类工件的测量主要是人工测量,不仅效率低还容易出错,此时通过三维点云测量就可以很好地解决这个问题。对于测量轴类工件的点云,难点在于需要确保其适用性,对复杂工件的特性获取和形状的识别,以及生产线上的自动测量。如果当前想要快速的测量出轴类工件的参数,则只能检测简单参数,复杂参数只能手动检测,这对于复杂的轴类工件参数会是一大难题。
2、基于三维点云的轴类工件参数测量方法的关键是三维点云中点云的分割。目前,常用的点云分割方法为欧式聚类分割算法。基本原理是通过计算点云中点之间的欧式距离来判断它们的相似度,从而实现点云的聚类。这种算法适用于点云中存在明显的聚类结构或分割边界的情况,可以用于目标识别、场景分割等应用中。但是,这种方法的缺点是对于噪声和异常值比较敏感,导致聚类结果不准确。
3、传统的ransac算法的缺点是它计算参数的迭代次数没有上限,如果设置迭代次数的上限,得到的结果可能不是最优的结果,甚至可能得到错误的结果。ransac只有一定的概率得到可信的模型,概率与迭代次数成正比。ransac的另一个缺点是需要手动设置一些参数,如采样次数、阈值等。这些参数的选择对算法的性能和结果质量具有重要影响,但往往需要经验和试错来确定。
技术实现思路
1、为解决现有技术中的不足,本专利技术提供一种基于三维点云的轴类工件的参数测量方法及装置,提高了轴类工件三维点云的聚类、
2、为达到上述目的,本专利技术所采用的技术方案是:
3、第一方面,提供一种轴类工件的参数测量方法,包括:获取指定轴类工件的点云数据;利用改进的欧式聚类分割算法将所述点云数据分割为若干轴段点云数据;使用改进的ransac算法对各轴段点云数据拟合圆柱模型,获得对应的圆柱模型参数,包括:各轴段的半径和轴向向量;通过点云旋转分别将各轴段点云数据的中轴线旋转至与z轴平行,通过对z轴坐标值作差计算各轴段的长度。
4、进一步地,获取指定轴类工件的点云数据,包括:用三维图像传感器采集指定轴类工件的原始点云数据;对原始点云数据进行直通滤波,并利用统计滤波的方法去除噪声点,得到指定轴类工件的点云数据。
5、进一步地,利用改进的欧式聚类分割算法将所述点云数据分割为若干轴段点云数据,包括:从所述点云数据中随机选取一个种子点作为初始点进行分割,计算所有点与种子点之间的欧氏距离和法向量角度,将距离和角度小于预设阈值的点划为同一类,并将其从数据集中移除;直到所有的点都被分割为不同的类别,得的若干轴段点云数据。
6、进一步地,使用改进的ransac算法对各轴段点云数据拟合圆柱模型,获得对应的圆柱模型参数,具体为:随机选择一部分轴段点云数据作为内点集合,并拟合圆柱模型;将轴段点云数据中的所有点代入拟合出的圆柱模型,计算轴段点云数据中各点到圆柱模型的距离di{i=1,2,...m},计算与m个点距离的中位数m:
7、m=med|di|{i=1,2,...m}
8、当m是奇数时,选择距离排序的中间距离值为中位数;当m是偶数时,选择距离排序为m/2和m/2+1两个距离值的平均值为中位数;在中位数基础上发展来的mad表达式σ为:
9、σ=1.4826med|di-m|{i=1,2,...m}
10、式中,1.4826补偿了中位数估计的偏差;
11、计算每个点到圆柱模型的距离di的判定系数ω,用于对点云数据平面的异常值筛选剔除:
12、
13、当ω值大于给定阈值时,就认定当前点为异常点,进行剔除;
14、内外点判断完成后得到内点数目,完成一次迭代,重复迭代前述步骤,直到达到迭代结束条件,得到最终的拟合模型,即可得到各轴段的半径和轴向向量。
15、进一步地,迭代结束条件为:当前迭代次数得到的内点数与前一次得到的内点数目一致,并且内点数与总点数的比率大于设定值。
16、进一步地,通过点云旋转分别将各轴段点云数据的中轴线旋转至与z轴平行,通过对z轴坐标值作差计算各轴段的长度,包括:先对拟合出的圆柱进行坐标转换,使每个轴段的轴线方向向量(a,b,c)变换为平行z轴的向量即为(0,0,a2+b2+c2),设旋转矩阵为r3*3,并使
17、
18、即
19、将旋转矩阵与圆柱面上的点的坐标(x,y,z)相乘,即可得到经过旋转之后的新坐标(x',y',z');通过对z坐标值作差,即可求得每个轴段的轴长。
20、进一步地,在得到各轴段的长度后,还包括:计算各轴段的方向向量之间的夹角,并和设定夹角阈值相比较,当计算得到的夹角大于设定夹角阈值,则认为两轴段不共轴,反之,则可以认为两轴段共轴。
21、第二方面,提供一种轴类工件的参数测量装置,包括:数据获取模块,用于获取指定轴类工件的点云数据;轴段分割模块,用于利用改进的欧式聚类分割算法将所述点云数据分割为若干轴段点云数据;数据拟合模块,用于使用改进的ransac算法对各轴段点云数据拟合圆柱模型,获得对应的圆柱模型参数,包括:各轴段的半径和轴向向量;轴段测量模块,用于通过点云旋转分别将各轴段点云数据的中轴线旋转至与z轴平行,通过对z轴坐标值作差计算各轴段的长度。
22、与现有技术相比,本专利技术所达到的有益效果:本专利技术通过利用改进的欧式聚类分割算法将所述点云数据分割为若干轴段点云数据;使用改进的ransac算法对各轴段点云数据拟合圆柱模型,获得对应的圆柱模型参数,包括:各轴段的半径和轴向向量;通过点云旋转分别将各轴段点云数据的中轴线旋转至与z轴平行,通过对z轴坐标值作差计算各轴段的长度;提高了轴类工件三维点云的聚类、分割精度,并提高了计算效率,解决了较复杂工件特征参数测量难的问题。
本文档来自技高网...【技术保护点】
1.一种轴类工件的参数测量方法,其特征在于,包括:
2.根据权利要求1所述的轴类工件的参数测量方法,其特征在于,获取指定轴类工件的点云数据,包括:
3.根据权利要求1所述的轴类工件的参数测量方法,其特征在于,利用改进的欧式聚类分割算法将所述点云数据分割为若干轴段点云数据,包括:
4.根据权利要求1所述的轴类工件的参数测量方法,其特征在于,使用改进的RANSAC算法对各轴段点云数据拟合圆柱模型,获得对应的圆柱模型参数,具体为:
5.根据权利要求4所述的轴类工件的参数测量方法,其特征在于,迭代结束条件为:当前迭代次数得到的内点数与前一次得到的内点数目一致,并且内点数与总点数的比率大于设定值。
6.根据权利要求4所述的轴类工件的参数测量方法,其特征在于,通过点云旋转分别将各轴段点云数据的中轴线旋转至与z轴平行,通过对z轴坐标值作差计算各轴段的长度,包括:
7.根据权利要求6所述的轴类工件的参数测量方法,其特征在于,在得到各轴段的长度后,还包括:
8.一种轴类工件的参数测量装置,其特征在于,包括:
【技术特征摘要】
1.一种轴类工件的参数测量方法,其特征在于,包括:
2.根据权利要求1所述的轴类工件的参数测量方法,其特征在于,获取指定轴类工件的点云数据,包括:
3.根据权利要求1所述的轴类工件的参数测量方法,其特征在于,利用改进的欧式聚类分割算法将所述点云数据分割为若干轴段点云数据,包括:
4.根据权利要求1所述的轴类工件的参数测量方法,其特征在于,使用改进的ransac算法对各轴段点云数据拟合圆柱模型,获得对应的圆柱模型参数,具体为:
5.根据权利要求...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。