叶汉民,刘英志, 程小辉
(1.桂林理工大学 信息科学与工程学院, 广西 桂林 541004,2.广西嵌入式技术与智能系统重点实验室,广西 桂林 541004)
焊接加工一直以来都是工业加工和智能制造的重要步骤。近年来,随着人工智能技术的发展,在大多数加工情况下,自动化焊接取代了传统人工焊接的方式,尤其是在一些无人工厂和超级工厂[1]。但在实际加工过程中,由于焊接的质量很大程度上由视觉的定位精度决定,存在由于飞溅和强弧光干扰出现的定位偏移问题[2],因此提升视觉焊缝跟踪系统的精度尤为重要。基于激光结构光视觉的焊缝跟踪系统由于适应性强和稳定性良好,通过处理图像中的特征信息,可进行定位跟踪,已广泛应用于自动化焊接设备当中[3]。文献[4]提出了一种快速的激光条纹中心提取算法,比传统的中心算法提取速度快将近4.48倍,比Steger算法提取速度快将近70.37倍。
激光视觉焊缝跟踪系统普遍依赖于所获的图像信息,因此,焊接过程中的图像获取尤为重要。在焊接过程中又存在着许多强烈的弧光和飞溅干扰,实际工作时,焊缝区域的原图像不足以精确判断焊缝位置,通常相机一次曝光下只能获取60 dB左右的动态范围[5],所捕获的信息量有限,造成图像细节的丢失。文献[6]提出了一种基于方向梯度直方图(histogram of directional gradient,Hog)粒子滤波的V形焊缝跟踪算法,通过提取焊缝工件坡口区域的Hog建立模板,进行相似度计算,得到最优的焊缝位置信息,运用Hog良好的集合和光学形变不变性,实现了焊缝实时跟踪。文献[7]提出并设计了一款基于组合激光结构光的新型多功能单目视觉传感器,同时通过十字线激光器和一字线激光器获取位置信息,有效解决了常规单目视觉存在的图像深度信息丢失问题。文献[8]提出了一种无需更改参数,利用高斯混合模型(Gaussian mixture model,GMM)法分割来获取图像,通过对高亮区域进行面积过滤和形态学闭操作消除噪声,强化了激光条纹的特征,使信息获取更加有效。但在一些恶劣环境条件下,如强烈的弧光干扰,通过图像的处理无法进行信息的获取和特征提取。
针对以上问题,本文提出了一种基于生成对抗网络的图像修复算法。该算法由一种新的神经网络架构而成,提取多种条件下焊缝位置图像的特征信息,对存在强弧光干扰时刻的焊缝图像进行修复,能够获得更清晰、更可靠的焊缝数据。
激光视觉传感器是一种光电传感器,通过采集焊缝结构光信息,经过处理转化成图像位置信息和形状[9]。单条纹线激光结构光的视觉跟踪系统,在现阶段焊接相关制造业中针对V形坡口焊缝和定位跟踪应用最为广泛,有识别速度快、跟踪速度快等优点[10]。焊接开始前,先对传感器、相机位置等进行标定,焊枪与零件坡口的检测区域之间的三维空间位置,在焊接过程中始终处于相对静止状态,通过相机获取图像信息,计算机对图像做出预处理,拐点位置定位,回传位置信息。其中,激光视觉模块与焊枪固定在一起,保证了检测信息的准确性和有效性[11]。
焊缝跟踪系统的激光视觉部分主要由工业相机、线激光发生器和滤光片构成[12]。根据一种半导体激光发生器衍射而出的激光线,照射在焊接工件上,形成的线性结构称之为结构光,具有光线亮度均匀、直线精确度高、照射性能稳定等优点[13]。在V形焊缝的识别过程中,激光结构光主要成一种梯形或三角折线状,中间的3到4个折点的位置信息是决定识别精准度的重要部分。测量过程中,通过图像的二维像素坐标,运用三角测量方法计算出激光条纹的三维坐标。由标定的距离、相机的水平角度和图像像素三者之间关系,分析计算出激光条纹的位置信息。
生成对抗网络(generative adversarial networks,GAN)由文献[14]提出。GAN框架包含两种模型:一个生成器G和一个判别器D,同时进行对抗训练。生成器G对输入数据进行捕获,生成新数据;判别器D估测获得的样本属于数据集或生成器G,通常为该样本来自数据集的概率。整个对抗网络训练过程为G使D误判概率最大化,D尽可能区分真假数据信息。两个模型在对抗过程中进行训练,最终达到最优解,从而获得一个经过对抗训练的图像生成器,生成图像的判别器判断的概率接近于50%。
基于GAN原理,对V形焊接图像进行修复,将恶劣环境下拍摄的焊接图像作为输入数据,同时输入生成器和判别器,生成器根据噪声图像生成修复图像。建立修复焊接图像的神经网络,在网络中植入空间变换网络(spatial transformer networks,STN)[15]对特征信息区域增加不变性,提高网络训练时采样过程对图像做出的破坏和梯度损失,再由经训练优化后的生成器合成对应的无干扰V形焊缝图像。
空间变换网络是一种空间转换器模块,可包含在任意神经网络结构中,提高网络的旋转、平移、尺度等不变性,进而在对抗网络针对焊缝图像合成的训练过程中降低图像的信息缺失和梯度损失,增强网络的不变性。空间变换网络的工作示意图见图1。
图1 空间变换网络的工作示意图
将STN作为发生器,构建新的GAN+STN对抗网络[16],可以进一步提高相机前景物体的真实几何校正能力,有效地提高在网络训练过程中对原图像的信息保留。在STN中,要对输入特征信息映射执行扭曲,通过特定位置为中心的采样来计算每个输出像素,形成一个输出特性映射V∈RH’×W’×C,其中,H’和W’分别为网格的高度和宽度,C为通道数量,模型的输入和输出通道数量相同。STN网络是一个自包含模块,可嵌入在神经网络架构中任意点和数量,具有计算速度快、不影响训练速度等优点,可以让网络学习积极地转换特征图像,帮助网络在训练过程中最小化网络的总体函数容量。STN网络由以下3部分模块组合而成:
(Ⅰ)在定位网络模块中,取宽度为W、高度为H、通道数为C和输出为θ的卷积层输入特征映射U∈RH×W×C,将变换参数Tθ输入输出数据θ=floc(U),参数的变换类型由θ的大小决定。
(Ⅱ)在网格发生器模块中,假定Tθ为Aθ的一个二维映射变换,变换公式如下:
(1)
(Ⅲ)在采样器模块中,通过获取采样点Tθ(G)和输入特征映射U,得到生成的采样输出特征映射来进行空间变换,输入的空间位置由采样点中的每个坐标定义,采样应用于所获取的输出特征映射V中特定像素的值,如下:
(2)
由生成网络和判别网络分别构成生成器G和判别器D,生成器和判别器共同组成图像修复网络,生成器G由输入的强干扰焊缝图像学习生成对应的映射,生成修复的焊缝图像。该生成网络主要由U-Net体系网络[17]改进而成,为避免计算的冗余,采用5个卷积层和5个反卷积层来构建生成网络,在每个卷积层中间添加STN模块,用来保留和加强图像梯度并减少生成的修复焊缝图像特征信息丢失,生成网络结构见图2。图2中,5个卷积层每层均采用卷积加Batch_normalize进行归一化操作,之后用稀疏度较小的LReLU进行非线性激活,在除第5次外的其他每次卷积后添加STN模块进行参数校正。反卷积层由4个反卷积加Batch_normalize进行归一化操作,使用稀疏度较大的ReLU进行激活,和1个反卷积加Tanh激活减少网络中的坏死,并在除最后一个反卷积层外添加4个STN模块。该生成网络中,卷积核大小为3*3,步长均为2。
判别网络主要由无噪声图像(xi|yi)和有噪声或生成图像(G(yi)|yi)连接而成,并产出它们的损失函数,是一个标准的卷积神经网络,由3个卷积层组成,如图3所示。图3中,判别器的网络结构主要由3个卷积层分别加上LReLU激活函数、Batch_normalize+LReLU和Tanh构成,结果输出损失函数LGAN。每层卷积核大小为3*3,前两层步长为2,最后一层步长为1。判别器网络只在对抗训练过程中调用。其中,损失函数由均方误差损失、梯度损失和对抗损失构建[18]。对结果进行L2正则化[19],使用权重参数限制优化参数,防止训练过拟合。
焊缝图像修复网络框架如图4所示。
图3 判别网络结构图 图4 焊缝图像修复网络框架图
使生成器在生成图像时尽可能不改变原始图像中的特征信息,通过获取的强噪声图像进行学习得到修复后的焊缝图像的映射,具体训练过程分为以下3步:
图5 焊缝路径示意图
(Ⅰ)对焊接工件坡口使用激光视觉进行焊缝图像采集,焊缝路径示意图如图5所示。使用机器示教方式先采集无焊接图像,然后采集焊接中图像,图像采样过程中帧数和时间相同,再采集500组图像,每组图像包含1张无污染图像和有焊接过程中强干扰图像,如图6所示。图6分别为采集的两种同类型焊缝的清晰图像和污染图像。图像原始尺寸为2 592 pixels×1 944 pixels。
(Ⅱ)对采集的500组焊缝图像进行随机偏移,同组图像偏移量相同,降低数据的拟合程度,使网络训练更加有效。最终获得1 000组焊缝图像。
(Ⅲ)对每组图像进行裁剪,保留特征信息的区域。裁剪后图像大小为500 pixels×500 pixels。
(a) 反射面工件清晰图像 (b) 标准工件清晰图像
(c) 反射面工件污染图像 (d) 标准工件污染图像
由于焊缝图像均为灰度图像,信息量不大,网络收敛速度较快。设置训练迭代次数为20次,初始学习率为0.000 2,mini-batch梯度下降尺寸为1组图像,式(7)中参数设为100。将处理后的焊缝图像数据集输入修复网络进行对抗训练,使用Tensorflow中tf.train.AdamOptimizer函数进行参数优化,减小梯度损失。
在焊接过程中,对焊接工件焊缝位置坡口进行测量定位,通过获取图像中特征节点坐标获取焊机与焊缝三维坐标位置,采取如下三角测量的原理[20],高度误差判断示意图见图7。
图7 高度误差判断示意图
相机、激光器、观测点和工件位置存在以下关系:
A=Ytanβ;
(3)
(4)
其中:A为相机观测位置与焊机焊接位置距离,mm;Y为工件与焊缝的垂直距离,mm;B为相机与观测位置相对直线距离,mm;β为相机的垂线与观测点的夹角,(°)。通过标定相机所获取图像中心位置,可获得焊机垂直高度误差。水平误差关系如下式:
(5)
(6)
(7)
其中:Z为相机与观测中心位置水平距离,mm;X为相机与激光器水平位置距离,mm;α为激光器与工件平面夹角,(°);C为超出观测中心位置距离,mm;D为相机观测的中心点位置与标定的焊缝观测位置距离,同时D也为焊枪的水平误差,mm;M为所要求的误差高度,mm。水平误差由标定的激光成像预设角度与相机像素点的比例运算可得。
使用1台用于训练图像修复网络的计算机。CPU:Intel(R)Core(TM) i7-4720HQ 2.60 GHz;GPU:NVIDIA GeForce GTX-980M;内存:16 GB。软件环境:MATLAB R2016b软件,安川MOTOCALV-EG软件,MotoSimEG-VRC校准和仿真软件。相机使用大恒MER-503-20GM/C-P型相机,镜头为8 mm M0824-MPW2,2 592 pixels×1 944 pixels。
使用尺寸为500 pixels×500 pixels的强噪声焊缝图像进行焊缝图像修复效果测试。将焊接过程中有强弧光和飞溅的焊缝图像输入进经过对抗训练的图像修复网络中,输出对应修复后的焊缝图像,所提出的图像修复方法与其他4种图像修复方法分别进行6组实验对比。图像修复效果对比见图8。图像修复算法参数见表1。
(a) 无噪声图像
表1 图像修复算法参数
续表1
由图8和表1可见:本文焊缝图像修复方法可以很好地对污染的焊缝图像进行修复,去除噪声,对焊缝的特征信息做出了很好的保留,在平均梯度、空间频率和人眼感知上均优于其他算法指标,焊缝修复图像在平均梯度上相较于GAN方法可提升60%以上,使焊接过程中的焊缝图像更加清晰。对于图像污染较小的情况,与其他算法处理相差很小,相较于单纯的生成对抗网络STN模块,更好地保留了特征点的位置信息,此方法对焊缝图像修复速度约为30帧/s,达到焊接视觉实时跟踪的要求。
采用所提出的GAN+STN图像修复算法和三角测量法进行焊缝跟踪实验,实验中模拟富氩混合气体保护焊(metal active gas arc welding,MAG)焊接方式,常用80%(体积分数,下同)氩气混合20%二氧化碳气体作为保护气,焊缝形状为V形坡口焊缝,具体焊接参数见表2。为验证图像修复算法在实际应用中的准确性,对焊缝先进行未焊接路径跟踪,确定焊缝准确位置,使用三角测量法,根据特征点坐标进行三维位置获取,进行定位跟踪。使用安川校准仿真软件进行实验,通过25点法原点校正,校准计算结束后,再通过平均偏移量判断校准是否合格,更改绝对原点数据、工具数据进行二次校准。之后,运行焊机按照示教的路径运动,获取3组不同焊接工件情况下,不同焊接电压和电流的焊接过程中的焊缝图像,实验中为获取更准确的横向偏移误差,工件水平高度不变,对相机获取的焊缝图像进行逐帧处理排序,图像处理各步骤对比如图9所示。
表2 焊接参数
(a) 标准工件清晰图像 (b) 标准工件污染图像 (c) 标准工件修复图像
(d) 非标准工件清晰图像 (e) 非标准工件污染图像 (f) 非标准工件修复图像
(g) 反射面工件清晰图像 (h) 反射面工件污染图像 (i) 反射面工件修复图像
图10 模拟跟踪路径
将修复后的焊缝图像中的特征点进行keypoint提取,获取特征点坐标。通过MATLAB软件仿真模拟,对经过算法修复的图像进行特征提取,获取三维位置信息,根据3组焊缝图像,对焊缝跟踪的误差进行比较,模拟跟踪路径如图10所示。
在实验过程中,根据实际焊接工艺,分别对Q195、Q215和Q235这3种不同材质的焊接工件进行焊接跟踪,分别对应不同的焊接电压和电流,对比未在焊接过程中获得的焊缝跟踪数据,均有较为良好的跟踪效果,在跟踪过程中路径的平均误差可以控制在0.2 mm以内。虽然实验中由于第3组实验焊接工件的结构较为复杂,导致误差增大,但也满足了焊接的跟踪需求,优化后的焊缝图像修复网络具有良好的图像修复效果,鲁棒性更好,修复得更准确。
(1)讨论了一种激光结构光视觉的焊缝跟踪方法,能够在自动化焊接领域针对V形焊缝特征进行特征点信息提取,与图像处理相结合,提高了自动焊接效率和质量。
(2)针对焊接过程中的污染图像无法定位纠偏问题,提出一种GAN与STN相结合的图像修复方法,修复后的图像在平均梯度参数上有显著提高,整体焊缝图像清晰干净,对依靠像素判断的视觉跟踪系统提升明显。
(3)将本文提出的方法结合三角测量法进行焊接模拟实验,随机取样跟踪误差在0.2 mm以内,达到二氧化碳保护焊等常见焊接工艺的焊缝跟踪精度要求,跟踪效果稳定。