APP下载

大型自由曲面零件的机器人视觉快速定位方法

2021-08-12林俊义杨梅英张雪枫江开勇

计算机集成制造系统 2021年7期
关键词:冲压件测量点分块

林俊义,吴 雷,杨梅英,张雪枫,江开勇

(华侨大学 厦门市数字化视觉测量重点实验室/福建省特种能场制造重点实验室,福建 厦门 361021)

0 引言

大型自由曲面类零件在汽车、轮船、航空等领域的应用越来越广泛,如汽车覆盖件、冲压件、螺旋桨、大型叶片等。但是这类工件往往缺少规则特征,表面几乎全部为自由曲面,定位极其困难。目前主要采用专用夹具进行人工定位,成本高、效率低且定位精度难以保证。近年来,基于3D点云模型的配准技术被广泛应用于三维重建[1]、智能抓取[2]、误差检测与评估[3-5]、目标识别与定位[6]等领域。其中,最经典的是由BESL等[7]提出的迭代最近点(Iterative Closest Point, ICP)算法,但该算法收敛速度慢,对初值敏感、易陷入局部最优,故常作为两步配准法中的精配准使用[8]。

在粗配准阶段,由于点云数据量大,粗配准时间长且配准精度差。为了稀疏点云以减小计算量,需要对点云提取稳健的特征关键点,因此寻找一种好的关键点提取方法成为粗配准的关键。李仁忠等[9]提出基于内部形态描述子关键点(Intrinsic Shape Signatures, ISS)的点云配准方法,提高了配准效率,但仅结合改进的ICP算法,配准精度无明显提升[10];陆军等[11]提出以邻域半径内法向量的变化信息设定约束条件提取关键点,该方法仅适用于细节特征丰富的模型;ZHANG等[12]采用尺度不变特征变换(3D-Scale Invariant Feature Transform, 3D-SIFT)关键点提取算法,该算法需要首先对图像进行Harris特征提取,同样适用于特征丰富的零件;THEILER等[13]提出结合高斯差分和Harris算法的关键点提取方法,该方法可以显著提高配准效率,但对大型自由曲面提取效果不佳;KLEPPE等[14]提出考虑形状因子和局部协方差矩阵的关键点提取方法,该方法提高了关键点提取的稳定性,但不适用于密度差异大的点云配准。

基于散乱点云提取的关键点往往不具备唯一性,而特征描述子包含丰富的局部特征信息,具有较好的区分度,但对于稠密的点云数据,计算每个点的特征描述子会严重影响点云配准的效率,且稠密点云包含大量特征相近的点。因此,将关键点与特征描述子相结合已成为特征配准的研究热点。常用的特征描述子包括:快速特征点直方图(Fast Point Feature Histograms, FPFH)[15]、方向特征直方图(Signature of Histograms of Orien Tations, SHOT)[16]、归一化对齐径向特征(Normal Aligned Radial Feature, NARF)[17]、局部特征直方图(Local Feature Statistics Histogram, LFSH)[18]等。其中,FPFH具有描述性强、特征维度低、计算速度快等特点,广泛应用于点云配准中。如彭真等[19]利用体素格滤波,再结合法向距离提取关键点,并以FPFH进行特征配准,显著提升了配准效率;刘剑等[20]提出一种结合FPFH与Delaunay三角剖分的点云配准算法,通过三角网格建立局部关联性,缩小点对匹配的搜索范围,提高了配准效率;李新春等[21]提出以k邻域特征参数(法向量、距离等)和曲率参数提取关键点,结合FPFH的点云配准算法,提高了噪声干扰和数据缺失情况下的算法鲁棒性和配准精度。

在精配准阶段,目前存在各种改进的ICP算法,其中全局优化可以获得较高的配准精度,但往往降低了配准效率。如PARRA等[22]通过嵌套分支定界(Branch and Bound, BNB)算法和ICP算法对旋转矩阵进行全局优化,但降低了配准速度;YANG等[23]通过结合BNB和ICP算法对转换矩阵实现了全局优化,克服了ICP算法陷入局部最优的限制,但增加了计算复杂度。

本文针对大型自由曲面零件缺乏显著特征,难以采用现有方法提取关键点的问题,提出一种基于自适应分辨率的聚类分块,并以分块质心作为关键点的新方法,利用质心点的曲率、夹角和FPFH特征信息高效解决稠密点云的粗配准问题。进一步,基于ISS关键点结合BNB嵌套ICP算法进行精配准,提高了配准效率,实现大型自由曲面零件的快速视觉定位。

1 算法流程

本文将三维点云配准技术扩展应用于零件视觉定位领域,试图通过机器人视觉系统对零件进行单次测量,将局部测量点云与完整CAD模型点云进行配准,从而求解被测零件在机器人坐标系下的空间位姿。算法流程如图1所示,主要包括3个方面:自适应分辨率超体素聚类分块、基于质心点的重叠区域识别与配准和基于关键点的精配准。

2 快速定位方法

2.1 自适应分辨率超体素聚类分块

采用面结构光视觉系统测量得到的3D数据往往存在噪声且数据量大,基于CAD模型的离散点云数据,为了保持特征细节也存在数据量大的问题。因此,首先采用统计滤波算法[24]进行点云预处理。

对数据量庞大的点云分割后再进行后续处理,不仅可以提高运算效率,还可以增强点云的局部一致性,避免陷入局部优化。超体素聚类分块[25]本质上是将点云分割为很多小块,并研究每个小块之间的关系,找到具有一致性的点云块作为整体进行求解。然而采用现有的超体素聚类算法直接对不同模型的点云数据进行分块,会造成不同模型分块大小差异明显,影响算法的稳定性。为此,本文提出自适应分辨率的超体素分块算法,主要包括自适应分辨率的确定和区域生长规则两个步骤。具体如下:

(1)自适应分辨率的确定

聚类分辨率对点云分块结果具有直接的影响,包括体素分辨率Rv和种子分辨率Rs,自适应分辨率考虑点云的大小与面积比例两个因素。点云大小利用AABB包围盒算法[26]计算点云的最小包围盒,以最小包围盒对角线长的一半(Cd)作为参数;面积比例通过实验调整分割后的点云块面积与原点云面积的比值来确定。如在比值取0.015时,利用测试的数据拟合出自适应分辨率的确定公式,如式(1)所示:

Rv=0.01×Cd+0.8,

Rs=0.037×Cd+3.0。

(1)

(2)区域生长规则

区域生长规则是一个由色彩信息、空间信息和法向信息构成的度量,具有39维特征,记为:

F=[x,y,z,R,G,B,FPFH1.33]。

(2)

式中:x,y,z为超体素种子点的3D坐标;R,G,B为色彩空间的颜色信息;FPFH1.33为文献[15]提出的快速点特征直方图的33维特征描述子。种子点的特征距离可由下式得出:

(3)

式中:Dc为点云数据色彩空间的欧式距离;Ds为被种子分辨率归一化后的空间欧式距离;Dn为法向量之间的夹角;Rs为种子点分辨率的大小;wc、ws、wn分别为调整颜色、空间、法向量的权重。设定距离阈值即可对点云进行分割。

2.2 基于质心点的重叠区域识别与配准

提取每块点云的质心点,并以质心点为对象计算质心点的几何形状特征,识别出与测量点云对应的CAD模型质心点集。反求质心点在原始CAD模型上的点云,预估出重叠区域。主要步骤如下:

(1)提取CAD模型点云的各点云块质心点集P{m1,m2,…,mn}以及测量点云的各点云块质心点集Q{n1,n2,…,nn}。

(2)计算质心点集P、Q中每个质心点的主曲率。

(3)计算质心点集P、Q中每个质心点的法向量与查询质心点到邻域重心的连线之间的夹角。

首先计算k邻域的重心点Pc、Qc。点集P、Q中查询质心点到其重心的连线分别为‖Pc-Pi‖、‖Qc-Qj‖;nPi、nQi为点集P、Q中各查询点的法向量,它们之间的夹角记为αP和αQ,其值分别为:

αP=accos〈nPi,‖Pc-Pj‖〉,

(4)

αQ=accos〈nQi,‖Qc-Qj‖〉。

(5)

(4)由步骤(2)可以得到质心点集P、Q中每个查询质心点的最大主曲率分别记为Pi_k1、Qj_k1;最小主曲率分别记为Pi_k2、Qj_k2。因此,判别准则不等式为:

‖Pi_k1-Qj_k1‖≤ε1,

‖Pi_k2-Qj_k2‖≤ε2,

‖αP-αQ‖≤ε3。

(6)

其中ε1、ε2、ε3为各不等式设定的阈值。

以判别准则筛选出符合要求的查询质心点,计算出查询质心点的FPFH特征描述子,具体步骤如下:

(1)对于任意查询质心点,计算其与邻域点的位置关系,以特征组{α,φ,θ,d}表示,如图2所示。其中npq和npk分别为查询质心点Pq与其邻域点Pk的法向量。各特征定义如下:

α=V·npk,

(7)

(8)

θ=arctan(W·npk,U·npq),

(9)

d=‖Pk-Pq‖。

(10)

(2)以邻近的简化点特征直方图(Simplified Point Feature Histograms, SPFH)来计算FPFH特征值:

FPFH(Pq)=SPFH(Pq)+

(11)

式中ωk表示权重,在一定的度量空间中表示查询质心点与其邻域点的距离。

基于FPFH特征,采用KD树最近邻搜索算法,先从局部测量点云质心点集P到CAD模型质心点集Q查找对应点。由于噪声等因素的影响,存在错误匹配点对,而随机采样一致性算法常被用来去除错误匹配点,具有良好的稳健性和抗噪性[27]。运用该算法建立正确的对应匹配点,并求解粗配准转换矩阵。

2.3 基于关键点的精配准

由于ICP算法存在局部收敛问题,且直接利用全部点云数据进行精配准将非常耗时,受文献[23]启发,提出一种基于关键点的分支定界(BNB)嵌套ICP精配准算法来提高精配准的效率。本算法关键点提取主要考虑以下几个因素:①关键点应该在比较稳定的区域,以方便法向的提取;②关键点的分布要求比较均匀,且不造成数据缺失。分析比较ISS、Harris、3D-SIFT三种关键点提取效果后,本文采用ISS关键点提取算法。

3 算法结果分析与定位实验

机器人视觉定位实验平台如图3所示,其中硬件主要包括:减震工作台、UR5机器人、视觉测量系统(两个CCD工业相机(DMK51BU02)、一台DLP投影仪(伊莱斯柯)、两个Computar工业镜头(MP1614))、计算机(CPU:Intel(R)Core(TM)i5-4200 H,2.80 GHz,内存:4 GB)。在Windows 7平台下,基于VC++2013编程环境,采用MFC(microsoft foundation classes)结合OpenCV开元库等实现本文算法。

3.1 算法结果分析

基于自适应分辨率的超体素聚类分块实验:首先以固定分辨率对冲压件A和冲压件B两模型进行分块,设置Rv=5.0和Rs=6.0,点云分块效果如图4所示,而依据式(1)进行自适应分辨率取值,分割结果如图5所示。可以看出,对不同模型,自适应分辨率聚类分块算法分割差异小、算法更稳定。

对冲压件A的局部测量点云与CAD模型点云进行点云块的质心点提取,结果如图6所示,其中深色标志点即为各点云块的质心,可以看出质心点分布稀疏、均匀,数据量大大减少,有利于提高算法的效率。

基于质心点特征对冲压件B进行重叠区域识别,结果如图7所示,右图上半部分为提取出与测量点云重叠的区域。可以看出,通过本文设定的判别准则可以有效地提取出重叠区域。

根据质心点及其特征参数,对点云粗配准进行测试,结果如图8所示。其中深色代表CAD模型点云,浅色代表测量点云。从图中可以看出算法达到了粗配准的要求。

分别采用ISS、Harris、3D-SIFT三种提取算法对冲压件A的局部测量点云(浅色)进行提取,实验结果如图9所示。可以看出,ISS算法提取到的关键点分布均匀、合理。该算法既可保留具有显著特征的点,又可大大减少数据量,可提高精配准的效率。

基于ISS关键点,采用BNB分支定界嵌套ICP算法实现点云的精配准,配准结果如图10所示。

为了进一步阐明分块的优势,将本文算法与不分块直接基于FPFH的特征点云迭代配准算法(D_FPFH)进行对比分析。两种算法的效果如图11所示,其中图11a为D_FPFH算法效果图,图11b为本文算法效果图。从两图中可以看出:对于完整模型中特征变化明显的模型,两种算法都可以满足要求,如冲压件B;而对于完整模型中特征几乎一致的模型,D_FPFH算法失效,而本文算法可以满足要求。因此对于大部分区域结构相似,只存在大小区别的模型,本文算法具有较高的稳定性。在效率方面,本文虽然增加了基于点云分块的重叠区域提取的时间(约1 s),但采用稀疏质心点进行粗匹配,模型A和B整个粗配准时间仅为2.958 s和3.202 s(如表1和表2),效率得到了显著提高。

表1 模型A不同算法比较结果

表2 模型B不同算法比较结果

同样,在精配准阶段,将基于关键点的BNB嵌套ICP算法与D_FPFH算法和直接ICP算法(D_ICP)作对比,结果如表1和表2所示。从表中可以看出,对两个不同的模型,本方法的精度得到了显著的提高;虽然采用BNB嵌套ICP算法比D_ICP算法耗时较长,但基于关键点的匹配算法提高了配准效率,节省了超过30%的配准时间。

3.2 定位实验

以冲压件B为实验对象,对视觉定位的准确性进行实验验证。具体实验步骤如下:

(1)通过眼在手上的视觉系统对冲压件B进行测量,得到冲压件B的局部测量点云如图12所示。

(2)将局部测量点云与CAD模型点云配准,使CAD模型点云配准到实际冲压件B的位姿下。

(3)利用手眼关系将CAD模型点云转换到机器人基座坐标系下。

(4)利用机器人末端执行器(探针)点触标记在冲压件B上的4个标志点(如图13的圆周上),计算获得此4个点在机器人基座坐标系下的三维坐标。

将步骤(4)中的4个点映射到步骤(3)中的CAD模型点云上,如图14所示,比较分析4个标记点的位置误差。

经多次重复试验,位置误差保持在1 mm之内,验证了本文方法对实现大型自由曲面零件视觉定位的有效性。

4 结束语

本文提出一种面向大型自由曲面类零件的机器人视觉快速定位方法。通过自适应分辨率聚类算法对大量点云数据进行了有效分割,并利用分块质心的几何特征信息与FPFH特征信息,实现了局部测量点云数据与CAD模型点云数据的重叠区域识别与粗配准;采用基于关键点的分支定界(BNB)嵌套ICP算法进一步提高了精配准的效率。通过算法对比分析与冲压件视觉定位实验对算法的有效性进行了验证,结果表明本文算法能够实现大型自由曲面零件的快速定位,定位误差小于1 mm,可满足冲压件机器人切割、下料等需求。下一步将研究多方位视觉定位方法,进一步提高大型件的定位精度。

猜你喜欢

冲压件测量点分块
飞机部件数字化调姿定位测量点的优选与构造算法
基于PLC的冲压件生产线自动控制系统设计
分块矩阵在线性代数中的应用
浅析冲压件测量点的规划
基于3D扫描的冲压件质量检测
浅谈汽车镀金冲压件回弹的解决方法
基于CAD模型的三坐标测量机测量点分布规划
PM2.5空中探测器的设计
反三角分块矩阵Drazin逆新的表示
基于自适应中值滤波的分块压缩感知人脸识别