基于线结构光测量的自动焊接在线跟踪检测技术综述
2022-11-10肖宏晓李伟明高兴宇
肖宏晓,李伟明,高兴宇*
(桂林电子科技大学 机电工程学院 广西制造系统与先进制造技术重点实验室,广西 桂林 541004)
0 引言
自动化是工业发展的潮流趋势,使用自动化机器设备来代替人工生产,能够有效提高生产质量和生产效率,降低人工成本。得益于光机电一体化技术以及计算机技术的快速发展,非接触式测量技术应运而生,整个测量过程无需设备与被测物体接触。结构光测量技术作为非接触式测量法中的重要组成部分,拥有操作简单、非接触、高效性、实时性、实用性强等优点,广泛应用于工业发展中的三维模型重建、物体表面三维信息测量等领域[1]。在自动焊接技术领域,快速有效的焊缝跟踪是实现焊接自动化的关键步骤[2],为了实现快速有效的自动焊接在线跟踪检测效果,结构光传感器也逐渐成为自动焊接系统中至关重要的一部分,例如加拿大Servo-Robot公司自主研发生产的焊缝检测系统,该系统集成了结构光传感器和感光元件,可以搭载在机器人上或者辅助焊枪轨迹校正,英国Meta Vision Systems公司也开发出多款与焊接机器人集成的焊缝跟踪系统。基于线结构光测量的自动焊接机器人具有高效率、高精度、自反馈等优点,可以对焊缝实际位置进行扫描、提取、定位与跟踪。本文对线结构光测量系统的关键技术研究现状进行了分析。
1 线结构光传感器工作原理
结构光传感器采用了激光三角测量原理进行测量(激光三角测量原理在三维测量理论中提出时间较早,也是应用最为广泛的主动非接触式三维测量技术[3])。根据投射到被测物体表面光源种类的不同,可以分为点激光位移传感器、线结构光传感器和面结构光传感器三类,如图1所示。其中,点激光位移传感器通过分析被测点与传感器的位置变化获取距离数据,线结构光传感器通过单次测量就可以获取待测物表面一条线状轮廓,面结构光传感器通过投影仪投射光栅获取图像以计算表面三维信息。针对焊缝的扫描、提取和定位一系列过程,线结构光传感器测量效率高,成本适中,且便于与其他运动测量场景的运动机构相集成,是自动焊接在线跟踪检测系统中的理想选择。
图1 结构光传感器分类
图2 线结构光传感器工作原理
2 线结构光测量系统关键技术研究
随着机器视觉技术的飞速发展,结构光测量技术被广泛应用于工业生产中的多个环节,也成为当下科研工作的研究热点[4]。基于线结构光测量的自动焊接在线跟踪检测系统工作过程为:将传感器进行准确标定,将激光条纹投射到焊缝上,提取焊缝坐标并计算其世界坐标,将坐标发送到机器人控制系统实现焊接跟踪检测效果。因此,相关线结构光测量技术的基础理论研究也包括三个领域:中心提取、传感器标定和焊缝特征提取。
2.1 中心提取
中心提取是整个线结构光测量系统的关键的部分之一,它决定了图像在CCD像元中的位置坐标是否准确,其准确程度是保证测量系统稳定性、精准性、实时性的前提。因此,中心提取成为许多国内外机器视觉领域研究人员的研究热点。在整个测量系统搭建过程中,保证线结构光测量系统输出结果精准度的关键在于能否在每一个采样位置准确采集识别并计算出光条的中心位置,在符合精准度要求的前提下提高系统的稳定性和实时性。
在线结构光测量技术的发展过程中,国内外相关领域专家学者提出、优化了多种中心提取算法,为中心提取过程提供了解决方案。在实际使用场景中,工程师们一般会结合实际情况对算法做出调整,或者使用多种算法综合求解,由于各种方法都有其特点和利弊,许多学者在传统方法的基础上提出了一些改进算法。
2.1.1 极值法
极值法的提取思路是在光条局部横截面上寻找亮度的极大值设定为光条中心点。由此可见,这种方法对于亮度呈理想高斯分布的光条图像有着良好的处理效果。极值法的思路清晰简洁,针对于理想光条图像具有计算高效性,但当光条图像中其他环境光线的灰度值接近或大于光条灰度值时,其提取的光条中心很大概率会偏离实际光条中心位置,因此极值法通常只适用于图像信噪比较小的情况下进行中心提取。为克服极值法对环境光线噪声敏感的缺点,杨雪娇等[5]提出了一种基于极值法的改进算法,思路是先使用基础极值法获得中心点,对其进行拟合,计算出光条各个中心点处的法线方向,然后在法线截面上使用遗传算法[6-8]优化得出灰度的极值点,即光条中心。这种改进算法的优点是通过优化光条法线截面从而避免陷入局部极值点误区,针对不同光条,选取合适的交叉率和变异率可以提高算法精度和适应性,而且该改进算法也适用于使用弯曲光条进行测量的环境。
2.1.2 灰度重心法
在借鉴的基础上,全科医生规范化培训教学方式既应当区别于医学生教学方式,也应当区别于专科医生培养模式。新型教学模式的实践在全科医生培训过程中也取得了一定成果。例如:微课教学,模拟医学教学。在“互联网+”的推动下,线上和线下相结合的混合式学习(blending learning)逐渐盛行[2]。但该模式在全科医生规范化培训中尚无深入研究。本文结合本单位全科医生培训基地经验,探讨全科医生线上“微课”+线下“模拟医学教学”培训教学方法。
灰度重心法是一种适用于亮度分布不均匀情况下的光条中心提取算法,其基本原理是按照光条纹横截面中选定区域内的灰度值分布计算出每列横截面上灰度权重质心作为光条中心位置,如图3所示。首先,设定灰度阈值,对滤波后的图像进行分离,大于灰度阈值则取其差值,否则就取零。计算灰度重心时,每个灰度值超过阈值的像素点都参与其计算,包括其中的极大值点。该方法降低了由于光条灰度值分布不均而产生的误差,提取精度可以达到亚像素级,但其抗干扰性依然不强,通常适用于图像噪点较少的情况。
图3 灰度重心法原理
为了提高灰度重心法的抗干扰性,Wang等[9]提出了一种改进算法,首先利用差分法和区域增长法降低图像的信噪比,然后采用灰度重心法获取条纹中心,使用Sobel算子获取其法线方向并再次使用灰度重心法确定光条中心,最后使用双线性插值法获取中心坐标,该算法对噪声较大的环境具有较强的适应性。熊会元等[10-11]提出了一种改进方法,引入灰度梯度来计算条纹的法线方向,然后在法线方向上应用灰度重心法提取条纹中心位置。该方法相比于基础灰度重心法,改进思路是先采用Sobel算子运算求解条纹梯度矢量,然后在法线方向上使用灰度重心法计算中心位置坐标,提高了精度、稳定性以及实时性。
2.1.3 曲线拟合法
曲线拟合法的原理是把光条表面灰度分布看作服从高斯分布,那么光条中心位置就处于光强最大值的位置。相机拍摄的图像初步经滤波后,使用高斯曲线来拟合光条每行像素点的灰度值,最后出现不同曲线最值的对应坐标就是中心位置,整个中心提取过程需要完成对光条的完整扫描。高斯函数表达式为:
式中,ymax、xmax和S分别为高斯曲线峰值、峰值位置和半宽度信息,将其两边取对数并用矩阵形式表示后求出xmax即为中心坐标。为了优化曲线拟合算法,国内外学者基于该算法提出了一些改进方法。Lukas等[12]在曲线拟合算法基础上提出了优化思路,先确定条纹中心的大致位置,然后以每个中心点坐标为参考点,取其周围若干个相邻的像素进行高斯拟合。该方法在激光条纹清晰、形变不大的情况下提取效果较好,但缺点是计算复杂度较高,运算时间较长。针对该问题,高世一等[13]综合极值法和边缘法,提出了变边限高斯拟合法,首先获得光条的近似像素中心位置,再对图像二值化以确定光条各列的宽度,根据每列宽度值和近似中心位置设定恰当的拟合范围,最后采用高斯曲线拟合求得光条中心位置。该算法的输出精度可以达到亚像素级,虽然精度较高,但存在的缺陷是当面临激光条纹宽度相差较大的情况时,提取效果不够好,而且整个拟合过程较为复杂,中心提取所需时间也会加长。
2.1.4 Steger算法
Steger算法是由Steger[14-15]最先提出的光条中心提取算法,利用Hessian矩阵求解激光条纹的法线方向,在光条图像中,Hessian矩阵H(x,y)可表示为:
其中,g(x,y)为二维高斯函数,z(x,y)为光条图像,rxx为x方向二阶导数,ryy为y方向二阶导数,rxy为二阶混合方向导数。光条上点的法线方向由该点处Hessian矩阵最大特征值的绝对值所对应的特征向量给出,然后在该点法线方向上求极值得到光条中心的亚像素中心位置。该方法能达到亚像素的提取精度,但计算复杂度高,难以实现光条中心的快速提取,很难满足工业在线检测的要求。
Steger算法复杂度高,计算时间长,因此有大量学者致力于优化该算法以提高其效率。胡坤等[16]基于Steger算法提出了优化算法,引入递归思想,利用高斯卷积递归得出光条纹各点的Hessian矩阵,在提高计算速度方面给出了思路。周富强等[17]为减少计算量,对文献[16]中的算法进一步优化,提出了一种把计算范围只限制在ROI(Region of Interest)内的方法,该方法在计算Hessian矩阵前对光条图像进行了预处理分割,使得计算量得到有效压缩,提高了计算速度。江洁等[18]考虑到用软件按时钟顺序执行指令的方式无法满足系统要求,对文献[16]的模型进行了优化,在其算法基础上引入大规模并行算法和串行流水技术,采用了并行硬件的中心提取算法,这是一种串并结合的处理结构,成为突破瓶颈的有效方法。
以上各种中心提取算法在计算复杂度、提取速率、精度和适应性方面的对比见表1。
表1 上述中心提取算法优缺点对比
2.2 传感器标定
准确标定系统参数是利用线结构光测量技术获得准确结果的关键所在,国内外学者对于标定过程的研究主要划分为两部分,分别是单相机透视模型标定和光平面标定。
单相机透视模型包含相机内部的焦距、主点、畸变系数等参数,目前,有关单相机透视模型的标定方法研究已经相对成熟[19]。Zhang[20]提出了一种基于平面靶标的标定方法,解决了单相机的现场标定,该方法通过相机拍摄不同位姿的多幅靶标,利用平行映射关系矩阵对相机进行标定。张曦等[21]针对于大视场相机,提出了构建虚拟立体靶标的标定方法,获得了较高的标定精度和标定效果。光平面标定主要指结构光传感器结构参数的标定,即光平面相对摄像机的位置,该过程获取的光平面方程可以将世界坐标系下的三维点转换为相机坐标系下的三维点,近几十年内,大量学者和研究人员针对光平面标定技术展开了研究。Dewar[22]最先开创的拉丝法可以实现光平面标定,由于当时对于测量参数要求不高,同时受限于工业制造业水平,其标定效果不够理想。段发阶等[23]提出的齿型法,在光平面标定过程中引入了运动构件,其实现过程是利用精密机械结构的运动解决了控制点提取和光平面标定问题。Hyunh等[24]提出一种基于交比不变原理的标定方法,在实现过程中使用了三维靶标,虽然标定效果较为理想,但靶标难以获取且成本较高。周富强等[25]利用一维靶标实现了光平面标定,与使用三维靶标的标定过程相比,一维靶标既节约了标定成本,又简化了标定过程。除此之外,相关领域学者和研究人员借助机器人或其他类型的靶标提出了新的标定方法。陈天飞等[26]提出了无需特制标定靶物的标定方法,该方法基于机器人的高精度运动约束实现自标定。Liu等[27]提出了一种具有其他形状的靶标类型——球型靶标,该方法的优势在于球型靶标的轮廓成像不受位置变化的影响,而且其标定精度与使用平面靶标相当。Wei等[28]提出了平行线靶标标定方法,该方法基于消隐点和消隐线的等距平行线模型来完成光平面标定。
在传感器标定过程中,标定靶物的形状特性也对标定方法的选用以及标定结果产生了很大影响。首先,标定靶物形状特点区别导致其提供的几何约束不尽相同,也就导致了标定方法的不同;其次,由于不同标定靶物的生产标准不同,导致其表面特征也各不相同,这直接影响了标定方法的选择以及标定结果的准确度。通常按照维度将靶标由三维到一维划分为三类,由于三维靶标自身就可以提供三维约束,通常在单幅视图下就可以完成光平面标定过程,但其制造工序复杂,加工标准较高,成本昂贵。相比之下,一维或二维靶标辅助完成标定的过程就相对便捷,提高了标定效率。
针对于不同应用场景,为了提高标定精度,研究学者提出了具有其他特点的靶物。华南理工大学的邝泳聪等[29]提出的线纹尺靶标是小视场范围内标定精度最高的靶标。目前,在不降低标定精度的情况下,如何使标定步骤更加简便、更易于现场标定和后期维护是传感器标定中值得研究的问题。
2.3 焊缝特征提取
在搭载自动焊接在线跟踪检测系统的机器人实现焊接的过程中,线结构光传感器需要提供实时焊缝空间坐标数据给系统以规划机器人运动轨迹或实现反馈。为实现这一过程,需要在传感器标定以及中心提取的基础上,进一步提取焊缝特征信息。
目前,基于线结构光传感器的焊缝特征提取方法有斜率分析法、投影法等。斜率分析法有简单、计算速度快的优点,对于理想V型焊缝识别较为准确,但在多数情况下抗干扰性和精度不高,无法识别其他形状的焊缝。雷正龙等[30]提出一种优化提取算法,按照焊缝夹角特征将其分为两类,算法运行时先判断夹角类别,再对应使用斜率极值法或斜率截距法来提取焊缝特征。截距法相比于斜率法,对于非理想V型焊缝特征提取时精度和算法稳定性更高,因此这种改进算法对于不同情况的焊缝特征提取精度高,抗干扰能力强。
投影法是对中心提取后的二值图像进行行或列投影,首先找到中心线的最低点,此处为焊缝根部特征点,再使用投影法将图像向垂直方向投影,产生的峰值交点即为此处的焊缝特征点,这种方法的缺点在于当出现较多环境光干扰,或者光条水平度较差时,提取误差明显。为了优化投影法,杨雪君等[31]引入了最小二乘法,使用投影法找到基础坐标后,在该点先划分出四个区域,再分别在区域内使用最小二乘拟合,交点即为焊缝特征点。
在焊接环境中,会有一些焊渣、弧光和复杂环境光等噪声对焊缝图像处理过程引起干扰,这时就需要使用滤波算法对干扰信息进行筛除,单一使用传统滤波算法几乎无法有效消除干扰,一些学者对这些算法进行了优化和改进。刘习文[32]、何银水等[33]采用频域滤波方法对图像先做出预处理工作,但由于算法计算量较大,运行过长,无法保证系统运行时的实时性。王平[34]采用连续的多帧图像进行运算,可以消除图像中不同区域的噪声干扰,但无法过滤掉图像中相同区域的噪声干扰。除了使用算法进行滤波之外,也可以在硬件方面采取措施,如在视觉传感器上加装挡板来阻隔飞溅的焊渣或烟尘,在视觉传感器前端加装滤光片以滤除弧光等环境光干扰[35]。滤除这些干扰因素以获得高质量的焊缝图像,可以为提取焊缝特征做好前期工作,以期获得更好的提取效果。
3 当前研究存在的问题及展望
线结构光测量技术目前存在的问题可总结为以下两个方面:
(1)传感器的适应性不足。线结构光测量技术属于机器视觉测量领域,准确获取光条图像并避免噪声干扰是测量精准的前提条件。除了使用高清工业相机、提高激光器亮度、优化算法之外,还要考虑被测物体表面材质、制造工艺、反光度等因素对中心提取产生的干扰。除此之外,工业现场还可能存在其他各种环境光源干扰,这些干扰光可能会导致提取到的图像亮度分布不均匀、图像中出现噪点等不利因素,不仅会对测量精度产生影响,甚至可能直接致使测量的失败。
(2)实时性不足。在基于线结构光的自动焊接在线跟踪检测系统运行过程中,要想得到较为理想的焊接效果,系统需要很强的实时性来保证焊接轨迹准确、焊接过程连贯。当采用较为简单的中心提取算法,例如极值法和灰度重心法时,这一过程提取速度较快,但依赖外界干扰低、光条质量高等条件,精准度和适应性不高。其他算法精度较高但运算速度慢,可能会导致焊接轨迹运行不连贯,焊接过程中出现卡顿、停滞现象,无法得到良好的焊接效果。
针对存在的问题,提出一些未来展望:
(1)提高系统的适应性,在设计和开发系统时要考虑其应用场景并进行模拟实验,提高算法抗干扰性。通常一种算法只能解决某一类环境噪声影响,面对环境中多种复杂干扰的情况下,先考虑硬件辅助减少干扰,再考虑多种滤波算法和优化算法相结合来处理噪声问题。例如在开发自动焊接在线跟踪检测系统时就要考虑焊接时焊渣飞溅以及弧光干扰对焊缝中心提取和焊缝跟踪效果的影响。
(2)提高系统实时性,在系统开发过程中,针对于不同焊接件或者不同形状的焊缝,选取不同的中心提取算法和特征提取算法,并且根据算法识别和提取的速率,设定适宜的机器人末端移动进给速度,确保识别准确的情况下让系统能够连贯且流畅地完成焊接过程,也可以添加反馈机制来保证系统的实时性。
除此之外,未来线结构光测量技术还可以朝向深度学习领域发展,由于深度学习具有强大的适应性和学习能力、强大的函数拟合以及模型训练能力,可以有效提高算法效率,不仅可以缩短系统的开发周期,系统的适应性和实时性也会得到保障。
4 结语
本文从结构光传感器的分类及原理入手,对比了其各自的特点,在线结构光测量技术的过程中,中心提取、传感器标定以及特征提取至关重要。本文分别对极值法、灰度重心法、曲线拟合法和Steger算法进行了原理阐述,根据国内外学者的研究和改进算法对中心提取法进行综述。接着对传感器标定中的相机标定和光平面标定进行描述,分析对比了国内外学者简化标定方法、提高标定精度的改进算法。然后对焊缝特征提取进行分析概括,列举了斜率分析法和投影法并综述了一些改进算法。最后对目前线结构光测量中存在问题及未来发展趋势进行了分析,提出线结构光传感器在提高适应性和实时性上的展望。