APP下载

基于随机采样一致性的规则棒料位姿识别*

2019-09-11吴庆华朱思斯

传感器与微系统 2019年9期
关键词:棒料单根圆柱体

吴庆华, 朱思斯, 周 阳, 万 偲, 何 涛

(1.湖北工业大学 机械工程学院,湖北 武汉 430068;2.现代制造质量工程湖北省重点实验室,湖北 武汉 430068)

0 引 言

工业生产中,引导机械手对规则堆放棒料实施抓取的过程中,准确识别出单根棒料的位姿信息是关键环节。如何从多根棒料中分割出单根棒料并准确识别其位姿,对于机械手自动抓取环节具有一定的研究意义。传统的二维视觉检测技术[1,2],占用空间大、易受环境光影响、识别准确性不高。因而提出基于三维点云分割的棒料位姿识别方法,充分利用规则堆放棒料点云的冗余数据,对棒料点云进行分析处理得到每根棒料的准确空间抓取位姿。

点云分割算法主要有区域增长算法、聚类算法、霍夫变换、随机采样一致性算法等[3,4]。区域增长算法是选取目标物体内一个小的种子区域,根据一定的准则在种子处进行邻域的扩展,直到停止生长,其性能对种子和区域增长策略的选取要求较高[5]。聚类算法是根据点邻域的点云精确计算该点的特征空间,该算法过于复杂、速度较慢。霍夫变换是在构建的点云高斯球中分别执行2D霍夫变换和3D霍夫变换。这种顺序分解计算上效率低,而且对属于空间不同轴的圆柱特征的点易被分割成同一个类[6]。随机采样一致性算法是一种经典的模型拟合算法,在异常点存在的情况下,依然可以得到比较理想的结果[7~9]。因此,采用了基于随机采样一致性的分割方法,可从规则堆放的棒料点云中分割出单根棒料的位姿信息。

1 棒料位姿识别原理

图1(a)为根据三角测量原理设计的位姿识别系统,其中由线结构光三维扫描仪获取规则堆放棒料的点云;图1(b)为扫描系统实物图;图1(c)为获得的棒料点云。根据图1(c)中棒料点云的分布特点,设计了规则堆放棒料位姿识别方法流程。先对获得的规则堆放棒料点云进行预处理,得到顶层棒料的点云,然后利用随机采样一致性(random sample consensus,RANSAC)算法将顶层棒料分割成单根棒料,再提取y值最大和最小的棒料点云,拟合出单根棒料的两个底面的圆心坐标,从而计算得到棒料的位姿。

图1 棒料位姿识别系统原理

2 基于RANSAC算法的位姿识别

2.1 点云数据预处理

由于环境以及被测对象表面光泽度等因素的影响,扫描出的圆柱体棒料点云不可避免地存在一些噪声点。根据图1(a)系统结构示意图,线激光沿y方向扫描,获得的点云如图1(c)所示,其中棒料点云沿z轴方向规律累积分布,且在x轴和y轴方向分布均处于有限范围内。根据棒料点云的分布特点,处于顶层的棒料,其z坐标较大,而接近于底层的棒料,其z坐标较小。通过对棒料点云基于z维度进行滤波处理,可以消除环境噪声点和非顶层棒料点云的影响,除去不在顶层棒料点云范围内的点云。式(1)为z向滤波的定义式,定义z坐标属于一定范围内的点云为顶层棒料点云

f(x,y,z)={(x,y,z)|z∈(z1,z2)}

(1)

2.2 圆柱体点云分割

在滤除非顶层棒料点云后,再将顶层棒料分割成单根的棒料来获取其位姿信息。

棒料的空间柱面模型如图2所示,进行RANSAC分割时输入适应于局内点的圆柱体模型的数学方程为

r2=(x-a)2+(y-b)2+(z-c)2-

(2)

式中 (a,b,c)为圆柱体轴线L上一点,(d,e,f)为圆柱体轴线L的方向向量,r为圆柱半径,(x,y,z)为圆柱面上任意一点。

图2 空间柱面模型

定义满足圆柱体模型的点为局内点,其他点称为局外点;那么,理论上局内点到圆柱面模型表面的距离为零。所以,基于RANSAC的圆柱体分割算法具体步骤:

1)任意抽选一些点,计算出上述圆柱体模型中a,b,c,d,e,f,r的初始值;

4)如图3所示,取距离阈值t=2σ,当di>t时,此点被认为是局外点,删除;反之,则为局内点,保留,并统计局内点的数目S。

5)重复步骤(1)~步骤(4),迭代k次,比较并选取含有局内点数目S最多的局内点集;

6)采用特征值法对局内点数量S最多的局内点集进行重新估计得到最终的圆柱模型参数。

图3 部分点云平视

3 棒料位姿识别实验

3.1 棒料仿真位姿识别

以图1(b)中直径为35.00 mm,长度为80.00 mm的规则堆积空心铝棒为仿真对象使用Solidworks仿真出如图4(a)所示与实际棒料堆放情况相同的10根圆柱模型,在软件中识别出所有圆柱的位置和姿态;同时,将图4(a)中的圆柱模型转换成如图4(b)所示的圆柱点云模型,并向该点云模型中添加一些噪声得到如图4(c)所示含噪声的圆柱点云模型,使用本文提出的棒料位姿识别方法识别出图4(c)中所有圆柱的位置和姿态。

图4 棒料仿真位姿识别

比较表1中分别通过这两种方法得到2组圆柱位姿,在有噪声的情况下,使用提出的方法也能较好识别出的圆柱位置和姿态,x值最大误差为0.014 mm,z值最大误差为0.028 mm。由此验证了所提出的棒料位姿识别方法的正确性和稳健性。

表1 圆柱模型的位姿

3.2 迭代次数k和阈值t对识别方法的影响

通过线结构光三维扫描仪采集如图1(b)中,直径35.00 mm,长度80.00 mm的规则堆放空心铝棒的初始点云个数为221251,扫描得到如图1(c)所示的棒料点云。设置z轴方向的滤波范围为(0.00,20.00)mm,保留范围内的点云,滤波后得到如图5所示的顶层棒料点云,点云个数为70 666。

图5 滤波结果

采用RANSAC算法对顶层棒料进行分割。在RANSAC算法中,参数的选择是影响分割精度的重要因素,所以在分割之前先设定参数。对迭代次数k和距离阈值t取不同的值,对同一根棒料点云进行多次分割分别得到如图6所示的结果。

图6 不同参数下的分割半径和时间

理论上,距离阈值t越小,分割的结果越好;迭代次数k越大,耗时越长。但从图6(a)可以看出,在迭代次数k≥20时,当距离阈值t<0.5 mm,分割出来的圆柱半径误差较大;当距离阈值t∈(0.5,1.2)mm时,分割半径则处在一个稳定的范围内r∈(17.20,17.40)mm;当距离阈值t>1.2 mm时,分割的圆柱半径不稳定。在图6(b)中,迭代次数k和距离阈值t的变化对分割时间T并无明显的影响,而处于一个相对稳定的时间区间内,每次分割所消耗的时间T∈(150,170)ms。所以,设定迭代次数k为大于等于20的值,距离阈值t为(0.5,1.2)mm区间内的值。

3.3 位姿识别数据分析

取迭代次数k=20,距离阈值t=0.7,通过RANSAC算法分割得到如图7所示的单根棒料点云,其点云个数为35027,消耗151 ms,并得到对应圆柱体模型的7个参数,即a=7.841,b=21.539,c=-4.035,d=0.002,e=1.000,f=-0.008,r=17.25。

图7 分割结果

再将这7个参数代入圆柱体模型的数学方程(2),拟合得到完整圆柱体如图8(a)所示。提取图7中y值最大和最小的棒料点云,分别拟合出棒料的2个底面,得到如图8(b)所示的两个底面拟合圆,同时得到棒料两个底面拟合圆的圆心坐标(7.850,23.500,-4.092)mm和(7.961,103.500,-4.624)mm,从而确定了图8(a)中的棒料轴心线;计算这两个底面圆心的中点得到如图8(a)所示棒料抓取位置(7.906,63.500,-4.358)mm。

使用上述方法,对扫描出的所有的棒料进行位姿识别,得到如表2所示的6个棒料位姿和棒料半径。从表2中可以看出所有扫描棒料的位置和姿态都能较好的识别;分割出的棒料半径的平均误差为0.30 mm,最大误差为0.47 mm;最小误差为0.12 mm。

图8 底面点云拟合圆拟合结果

mm

4 结 论

为引导机械手自动抓取规则堆放棒料,利用线结构光三维扫描仪采集规则堆放棒料的三维点云,通过z向滤波剔除非顶层棒料的点云,采用RANSAC算法分割出每一根顶层棒料,从而实现棒料的位姿识别。仿真实验验证了棒料位姿识别方法的正确性;实际棒料的位姿识别结果表明:当迭代次数k=20,距离阈值t=0.7时,分割结果较稳定,分割时间约160 ms左右;分割出的棒料半径的最大误差为0.47 mm。该方法对于机械零件的位姿识别,具有一定参考价值。

猜你喜欢

棒料单根圆柱体
仅吻合单根指动脉指尖再植的疗效分析
附加整流装置的圆柱体涡激振动数值研究
连杆脱碳原因分析及预防
大型水库消落带2种典型耐淹草本植物单根抗拉力学特性
熔融静电纺丝法制备单根聚合物微米纤维全可见光谱的放大自发发射特性研究
巧用假设来解题
车床自动送料机构的棒料振动变形分析
西宁盆地黄土区典型草本植物单根抗拉力学特性试验
找出圆柱体
圆柱体上的最短路径