基于双目视觉的钣金件边缘检测技术研究与系统开发

2020-07-01 11:02
航空制造技术 2020年7期
关键词:钣金件条纹轮廓

(南京航空航天大学机电学院,南京210016)

钣金零件是组成现代飞机机体的重要部分,其数量约占飞机零件总数的20%~50%,具有种类多、尺寸大、厚度薄、刚度小易变形、形状不规则等特点[1–3]。钣金件上的内/外轮廓边缘是表征钣金零件外形的重要信息,对于钣金件的生产和装配十分关键。传统的钣金件边缘检测采用以模拟量传递为基础的实物对比式检测方法,测量效率低、精度差,人工劳动强度大[4–6]。目前应用较为广泛的数字化检测装置如三坐标测量机[7]、iGPS[8]和激光雷达[9]等,难以对钣金件边缘进行细节特征的完整精确测量。

视觉测量技术是近年来迅速发展起来的一种光电检测技术,具有非接触、全视场、高精度、自动化程度高、稳定性好、适用范围广等优点[10],在理论和实践中都有很高的价值,已成为提高生产效率和保证产品质量的重要手段。但是钣金件形状大小各异且厚度极薄(通常仅有1mm 左右),现有的视觉测量设备难以对其边缘进行有效测量。其中,结构光扫描仪虽然可以实现对大型曲面的快速三维点云重建,但是对于曲面边缘部位,其测量得到的点云数据容易缺失,难以精确表达零件的边缘轮廓;带精密机械转台的激光扫描仪的测量对象体积和重量均受转台大小限制,而钣金件种类众多、尺寸大小各不相同,因此这种设备同样不适合钣金件边缘的现场测量使用。

本文针对钣金件边缘检测具体需求,设计开发了一套手持式双目视觉检测原型系统(SMEIS),能够实时、高精度测量各类钣金零件的边缘,提高薄壁零件边缘检测的质量和效率。

SMEIS系统结构和工作流程

1 SMEIS系统结构

SMEIS系统的测量传感器硬件装置如图1所示,主要包括两个CMOS 相机及其光学镜头、多线激光发射器、触发控制器、带有45°斜面的相机支架、铝合金框架、圆弧形手柄。由于钣金件厚度通常仅有约1mm,使得常规结构的相机+线激光测量传感器在钣金件边缘处极薄侧面上的激光条纹特征成像效果较差,难以进行图像提取。为了解决这一问题,SMEIS系统将相机通过带有45°斜面的相机支架安装在铝合金框架的上方,线激光发射器水平固定在铝合金框架的下方。这种布局方式有两个优点:(1)显著改善线激光在钣金件边缘处薄壁侧面的成像质量,同时减小标记点的成像畸变,大幅提升边缘侧面上的数据完整性和测量精度;(2)在图像中突出钣金件边缘处极薄侧面的激光条纹特征的同时弱化钣金件主曲面上的激光条纹特征,便于对边缘侧面上的激光条纹进行分割,进而直接获得只包含边缘信息的测量数据。触发控制器通过触发控制线同时与两个相机和激光发射器连接,实现对相机和激光的同步控制;两个相机通过USB3.0 集线器及数据线与计算机连接,确保系统与计算机之间图像传输的实时性;圆弧形手柄方便测量人员以手持方式灵活地对钣金件边缘进行扫描测量。

SMEIS 原型系统由传感器硬件装置和系统软件两部分构成,如图2所示。测量时,SMEIS系统测量传感器硬件装置向表面贴有圆形标记点的钣金件边缘薄壁侧面投射线激光条纹并连续移动拍摄同步图像,计算机接收同步图像并通过系统软件进行实时计算,获取钣金件边缘薄壁侧面上的三维点坐标,从而实现对钣金件边缘的检测。

图1 SMEIS系统测量传感器硬件装置Fig.1 System sensor hardware device used for edge inspection

图2 SMEIS系统总体结构Fig.2 SMEIS system architecture

2 SMEIS系统工作流程

SMEIS系统工作流程如图3所示,主要包括检测系统参数标定、钣金件边缘检测图像同步采集、增量式三维重建和全局光束平差优化4个流程。

测量前,首先要对系统参数进行标定,确定每个相机各自的成像参数及两个相机之间的位姿参数,这些参数是后续进行增量式三维重建和光束平差优化流程的基础;标定完成后,打开激光发射和图像采集同步触发信号,触发控制器按照设定频率向线激光发射器和双目相机连续发射同步触发信号,线激光发射器接收触发信号并向钣金件边缘处薄壁侧面投射线激光,双目相机接收触发信号并采集同步图像传输至计算机;计算机对每一帧同步图像中的薄壁侧面上的激光条纹中心点列进行三维重建,同时利用标记点坐标对应关系将测量数据统一转换到全局坐标系下;测量完成后停止触发信号,对测量得到的激光中心点列全局三维坐标进行全局光束平差优化,得到最终的钣金件边缘测量数据。

SMEIS系统关键技术

1 激光条纹中心点列实时提取

本文对钣金件边缘的检测方法本质上是对投射在钣金件边缘薄壁侧面上的激光条纹中心点列进行三维重建,因此激光条纹中心点列提取的速度和准确性直接影响系统测量的实时性和精度。

SMEIS系统测量时处理的实时图像如图4所示。该图像为1280×1024 大小的单通道灰度图像,其中包含钣金件边缘薄壁侧面上的激光条纹图案、圆形标记点、噪声等信息,背景相对复杂。如果对每一采样时刻的图像都单独进行激光条纹中心点列提取,算法的时间开销过于庞大,系统的实时性将难以保证;同时,激光条纹的分割也容易受到背景中圆形标记点和噪声的干扰。为此,本文利用图像序列的相关性,将图像序列中任意两个相邻时刻图像中的激光条纹位置相关联,提出了一种基于ROI(Region of Interest)的激光条纹中心点列提取算法,此算法可以显著缩小图像处理的区域,大幅提升系统实时性。需要说明的是,SMEIS原型系统硬件配置了6个线激光发射器,在对钣金件边缘的手持式扫描中,实际采用3 线激光即可获得良好的扫描效果。

基于ROI的激光条纹中心点列提取算法的核心是激光条纹ROI初始化模块,其流程如图5所示,具体包括:

(1)对原始图像二值化处理;

(2)提取二值化图像中的轮廓特征信息,得到包含激光条纹轮廓、标记点轮廓、噪声的轮廓特征信息图;

(3)在轮廓特征信息图中,先通过轮廓圆度值滤除圆形标记点轮廓,再通过左右图像极线相互校验滤除部分杂质轮廓,得到包含激光条纹轮廓和少量杂质轮廓的轮廓特征信息图;

图3 SMEIS系统工作流程图Fig.3 SMEIS system workflow

图4 SMEIS系统检测过程实时图像Fig.4 Real-time image of SMEIS system inspection process

(4)在第(3)步处理完成的轮廓特征信息图中,每次任选3个轮廓,首先判断其最小包围盒尺寸是否相近,再判断这3个轮廓的最小包围盒中心连线构成的矢量是否平行,如果同时满足以上两个条件则说明选取的3个轮廓就是激光条纹轮廓,否则重新选取3个轮廓重复上述判断,直至找到符合约束条件的3个激光条纹轮廓;

(5)以第(4)步中选取的3个激光条纹轮廓的最小包围盒中心点为中心,选取适当大小的矩形区域作为激光条纹ROI。需要说明的是,在本文进行的大量试验中,单个激光条纹最小包围盒的宽度小于10像素,高度约为10像素,任意两个相邻激光条纹最小包围盒中心点在宽度方向上的间距大于50像素,因此矩形区域的宽度取值应当在10~50像素之间,矩形区域的高度取值应当大于10像素;在取值范围内,矩形区域的宽度和高度越大,算法的鲁棒性越强,因此本文实际选取的激光条纹ROI的尺寸为50×50像素。

基于ROI的激光条纹中心点列提取算法流程如图6所示,主要包括:

(1)通过检查激光条纹ROI是否已经初始化或者发生了丢失、错误(连续若干帧图像中无法正确提取到激光条纹中心点)来判断ROI是否正确,如果不正确则跳转到激光条纹ROI初始化模块,重新进行激光条纹ROI初始化,否则执行下一步;

(2)分别对每个ROI进行二值化处理;

(3)分别提取每个ROI内的轮廓信息,得到3 幅轮廓特征信息图;

(4)从每个ROI的轮廓特征信息图中各取一个轮廓并计算其最小包围盒,分别判断这3个包围盒尺寸、形状与最新的ROI 内的激光条纹最小包围盒尺寸、形状是否相近,如果其最小包围盒尺寸的比值满足设定阈值则说明选取的轮廓就是激光条纹轮廓,否则在不符合条件的ROI 轮廓特征信息图内重新选取轮廓执行上述判断;

(5)在第(4)步选取的激光条纹轮廓最小包围盒中,逐行计算其灰度质心,得到激光条纹中心点。

激光条纹中心点实时提取的结果如图7所示。

2 点云实时拼接

图5 激光条纹ROI初始化流程Fig.5 Laser stripes ROI initialization workflow

图6 基于ROI的激光条纹中心点提取算法流程图Fig.6 ROI-based laser stripe center points extraction algorithm workflow

图7 激光条纹中心点实时提取结果Fig.7 Laser stripe center points real-time extraction results

在对钣金件边缘进行实时测量的过程中,由于钣金件大小、形状各异,而仅靠一个采样时刻的单次测量无法实现对整个钣金件边缘的检测,因此需要通过连续移动SMEIS系统硬件装置不断改变激光条纹在钣金件边缘的位置,同时对其进行实时三维重建,再将各次测量得到的点云同步转换到同一坐标系下,即点云实时拼接。

如图8所示,S1,S2,…,Sn分别是SMEIS系统传感器硬件装置处于位置1,位置2,…,位置n时的左相机坐标系,即测量坐标系,令S1与全局坐标系SG重合,S2,S3,…,Sn到全局坐标系SG的变换分别记为T1,T2,…,Tn。Tn形式如式(1)所示,其中,Rn是3×3 旋转矩阵,tn是3×1平移向量。

假设Sn坐标系下有一点PC=[xc yc zc1]T,其在全局坐标系下的坐标PG=[xGyGzG1]T可通过式(2)计算:

点云拼接的本质就是实时计算当前位置相机坐标系到全局坐标系的刚体变换矩阵Tn。本文采取在钣金件表面粘贴若干黑白圆形标记点的方式,通过标记点的空间位置对应关系实时计算Tn。算法流程如图9所示,具体包括:

(1)根据极线约束、视差梯度约束、顺序一致性约束等多视图几何基本约束,将当前时刻左、右相机中的同名标记点中心进行正确配对并三角化重建,得到当前测量坐标系下的一组标记点中心三维坐标(假设其数量为H),记为点集P:

(2)对点集P中每一点Pm,计算其与除自身之外的其他所有点的欧氏距离d:

选取与其欧氏距离d最小的两个点pa、pb作为三角形的另外两个顶点,则pm对应的欧氏空间三角形信息Triangle_m为:

图8 点云实时拼接示意图Fig.8 Point cloud real-time registration diagram

(3)将当前时刻的所有三角形信息与上一时刻的所有三角形信息逐个对比,若存在一对三角形信息使得其对应的三边长度的差值均小于指定阈值,则认为这两个三角形的顶点对应欧氏空间中的3个同名点。需要说明的是,在欧氏空间中,刚体变换并不改变空间三角形的尺寸和形状,因此,理论上在任意两个测量坐标系下,同一个空间三角形的三边长应当对应相等;然而由于在实际的标记点中心三维重建过程中存在一定误差,同一个空间三角形的三边长在不同测量坐标系下并不严格相等,因此需要设置一定的阈值,该阈值的选取应当略大于系统测量精度,本文进行的试验中实际选取的阈值为0.1mm。

(4)假设第(3)步中获取的欧氏空间同名点分别记为点1、2、3,在当前测量坐标系下的坐标分别为p1、p2、p3,其在前一时刻测量中获得的三维坐标已变换至全局坐标系下,相应的全局坐标分别记为q1、q2、q3,先分别计算两组点的质心坐标p、q,再计算每个点的去质心坐标:

记去质心坐标pi'、qi'的向量形式分别为pi'、qi',定义矩阵W:

其中,W是一个3×3的矩阵,对W进行SVD 分解[11]可求得刚体变换矩阵Tn。

图9 点云实时拼接算法流程图Fig.9 Point cloud real-time registration algorithm workflow

(5)利用第(4)步中求得的Tn将点集P中的每一点变换至全局坐标系下,并与前一时刻测量获得的标记点中心全局坐标逐一对比,如果二者的欧氏距离小于指定阈值(本文中为0.1mm),则为一对同名点,记录所有同名点对。

(6)利用第(5)步中获取的所有同名点对信息,分别计算两组点的质心坐标p'、q',按照式(8)计算每个点的去质心坐标,其中,NUM是同名点对数量。

记去质心坐标pi''、pi''的向量形式分别为pi''、pi'',按照式(9)构造W'矩阵并对其进行SVD 分解,用此次求得的刚体变换矩阵更新Tn的值。

点云实时拼接的一个示例如图10所示。其中,图10(a)是SG视角下重建的激光条纹中心和标记点中心,图10(b)是Sn视角下重建的激光条纹中心和标记点中心,图10(c)是将Sn视角下的重建结果拼接到SG坐标系后的结果(其中绿色点代表SG视角下和Sn视角下的同名标记点中心)。

3 全局优化

在点云实时拼接过程中,三角化重建标记点三维坐标时不可避免地会产生一定的误差,进而导致刚体变换矩阵的计算值与真实值之间也产生误差,当测量图像序列较大时,这种误差不断累积将对系统测量精度带来较大影响。为此,本文采用光束平差法作为全局优化手段,通过最小化重投影误差的方式优化标记点全局坐标和刚体变换矩阵的计算结果,显著减小拼接带来的累积误差,进一步提升系统测量精度。

光束平差法优化模型为

其中,residualL为左相机重投影误差;residualR为右相机重投影误差;n为图像序列的帧数;m为第i帧图像对应测量坐标系下重建的标记点个数;project()是描述空间点三维坐标到其对应的成像平面上的实际投影点二维像素坐标的投影函数;KL是左相机内参矩阵;KR是右相机内参矩阵;MLR是左相机坐标系到右相机坐标系的刚体变换矩阵;Ti是第i帧图像对应测量坐标系到全局坐标系的刚体变换矩阵;imgRij分别是第i帧图像对应测量坐标系下重建的第j个标记点的全局坐标的齐次坐标、左相机图像像素坐标、右相机图像像素坐标。

图10 点云实时拼接示例Fig.10 An example of point cloud real-time registration

系统软件开发

1 软件功能模块简介

本系统基于Visual Studio 2013集成开发环境,以组件模块化方式开发,其软件功能模块分解图如图11所示。钣金件边缘检测系统软件主要分为硬件控制、在线检测、图形图像可视化3个部分。各个功能模块内部具有高聚合性,保证了算法的轻量性和运算速度;各个功能模块之间具有低耦合性,便于后续检测系统的维护和进一步开发。不同功能模块之间通过系统标准数据结构或自定义数据文件进行数据交互。

2 并行处理模式

SMEIS系统进行在线检测时,需要实时对采集到的同步图像进行一系列的处理,串行处理模式可以使得程序在结构上相对简单,但同时也使得程序的时间开销变大,导致系统实时性降低。为此,本系统采用图12所示的并行处理模式,充分利用各模块之间的独立性,使用多线程方法并行处理多个子模块,具体包括:对在线检测模块和可视化模块并行处理;对左、右相机激光条纹图像处理子模块和标记点图像处理子模块并行处理;对相机实时画面可视化子模块和三维点云可视化子模块并行处理。在并行处理的每一个环节中,利用互斥体对各个子线程之间传递的数据进行保护,确保检测结果的稳定性和正确性。这种并行处理模式极大提升了算法的实时性,使得检测系统能够以大于30fps的速度实时处理同步图像。

检测结果与讨论

1 与ATOS®的测量效果对比试验

为了验证本文所研发的SMEIS系统的实时性和测量效果,选取了图13(a)所示的3种航空工业中常见的钣金零件作为试验对象,对这3个试验对象的边缘进行了实时检测,并将检测结果分别与ATOS®结构光扫描仪(单次测量标称精度0.025mm)的检测结果进行了对比。该试验采用XIMEA MQ013MGE2 工业数字相机,6mm 短焦镜头,3DLL20 线激光发射器,在普通室内环境下进行。

在试验钣金零件的表面靠近边缘处随机粘贴若干数量的圆形标记点,将其放置在黑色吸光背景布上,手持SMEIS系统测量传感器硬件装置围绕试验对象连续移动进行实时检测,分别统计每个试验零件的检测帧数和每帧图像的处理用时,并计算单帧图像处理用时的平均值和检测过程的平均帧率,结果如表1所示。表1中数据显示,对以上3个试验零件的检测平均帧率分别为33.40fps、34.04fps、33.48fps,实时性较好。

使用SMEIS系统对3种试验零件边缘进行检测的结果如图13(b)所示,使用ATOS®结构光扫描仪对相同试验条件下的试验对象进行检测的结果如图13(c)所示。需要说明的是,为了突出边缘检测效果,图13(c)只显示了ATOS®系统在边缘附近的测量数据。从放大图中可以看出,ATOS®结构光扫描仪在各试验零件的边缘处获得的三维点云中出现了大量的数据缺失,而SMEIS系统对侧壁的检测数据明显更加完整、均匀、致密,细节表现更佳。

2 精度验证试验

图11 SMEIS系统功能模块分解Fig.11 Module decomposition of SMEIS system software

图12 并行处理模式架构Fig.12 Parallel processing mode architecture

表1 试验零件检测速度Table1 Inspection speed of test parts

为了验证SMEIS系统的测量精度,对图14所示的精磨加工的台阶面零件进行了重复性精度验证试验。具体测量对象是该零件表面高度为1mm的竖直台阶侧面,该小平面经过精磨处理,平面度为0.02mm。使用SMEIS系统对该竖直台阶面进行了3次独立检测,获得的数据点总量分别为18028个、19340个、17276个,其中,每条激光点列约10个点,其检测结果如图15所示。分别利用这3次检测得到的数据点拟合平面,并统计每个点到其对应平面的距离,将统计结果绘制成频率分布直方图(图16),统计结果的具体数值分别如表2~4所示。数据显示,SMEIS系统对竖直台阶平面的第1次检测结果的平面偏差平均值μ1为0.0394mm,标准差σ1为0.0301mm,在置信区间(–0.1,0.1)内的置信度为95.5%;第2次检测结果的平面偏差平均值μ2为0.0328mm,标准差σ2为0.0245mm,在置信区间(–0.1,0.1)内的置信度为98.7%;第3次检测结果的平面偏差平均值μ3为0.0383mm,标准差σ3为0.0302mm,在置信区间(–0.1,0.1)内的置信度为95.3%。以上数据表明该系统具有较高的测量精度和测量稳定性。

图13 试验零件实物及检测结果Fig.13 Test parts and inspection results

图14 精度验证试验对象实物Fig.14 Test object of accuracy verification

图15 竖直台阶面检测结果Fig.15 Inspection results of test objects

结论

针对钣金类零件边缘检测这一难点问题,本文开发了一套基于双目视觉和多线激光的边缘检测原型系统SMEIS。详细介绍了系统硬件构成和测量方案,讨论了激光条纹中心点实时提取、点云实时拼接、全局光束平差优化等关键技术。在系统软件开发过程中,以模块化、组件化的方式组织系统架构,便于系统后续的维护和扩展;广泛使用多线程方式并行处理多个子流程,使得整个系统能够以较高的帧率进行实时检测和同步显示。

钣金件的现场试验结果表明,SMEIS系统能够对现有测量手段难以测量的钣金件边缘进行实时、高精度的检测,显著提升钣金件边缘检测的效率和质量并减轻人工检测的强度。该方法也可以广泛应用于小阶差高度的侧面特征的测量。

虽然手持式扫描测量方式方便灵活,适用性强,但对于某些需要自动化检测的应用,后续也可以将SMEIS系统传感器硬件装置安装在机器人末端,令机器人按照预定规划的路线连续运动,实现检测过程自动化。

图16 竖直台阶面检测结果平面偏差分布直方图Fig.16 Plane deviation histogram of inspection results

表2 竖直台阶侧面第1次检测结果平面偏差Table2 Plane deviation of first inspection results

表3 竖直台阶面第2次检测结果平面偏差Table3 Plane deviation of second inspection results

表4 竖直台阶面第3次检测结果平面偏差Table4 Plane deviation of third inspection results

猜你喜欢
钣金件条纹轮廓
飞机钣金件冲压成型工艺研究
汽车钣金类零件激光选区熔化成形尺寸控制与数值模拟
机床钣金件加工工艺的优化设计
钣金件加工工艺的优化设计
谁是穷横条纹衣服的人
跟踪导练(三)
别急!丢了条纹的斑马(上)
别急!丢了条纹的斑马(下)
条纹,条纹,发现啦
儿童筒笔画