张 宽,王 晗,陈新度,蔡 念,曾耀斌, 何国锐
(1. 广东工业大学 机电工程学院,广州 510006;2. 佛山市质量计量监督检测中心,广东 佛山 528225)
点胶系统应用广泛,从半导体封装工业、集成电路产业、汽车装配业到一般工业的焊接、注涂和密封,都起着重要作用[1-4]。传统点胶系统依赖于技术人员根据点胶位置进行示教编程,不同的工件类型需示教不同的点胶程序,因此,生产效率低下,无法适应工件尺寸误差,不符合复杂轨迹点胶要求,影响系统点胶精度[5-6]。
基于机器视觉的点胶设备研发是该行业研究热点,常见视觉点胶系统大致分两种,一种是通过导入工件模型或示教等方法获得基准工件点胶坐标,接着利用视觉系统定位实时工件位置,通过上述坐标与位置信息的变换确定点胶路径,执行点胶任务。文献[7]把机器视觉应用到工业点胶中,该系统首先在工件上示教点胶轨迹,然后通过模版匹配找出实时工件位置相对于基准工件位置的偏移量,再计算工件偏移后的轨迹坐标,最后由执行机构完成点胶动作。该方法不需要制作相应的定位夹具,大大缩减了生产成本,同时,在上料过程中,工件可以在相机视野内随意摆放,也提高了工作效率,但无法适应工件尺寸误差,影响点胶精度。另一种是直接使用工业相机采集工件图像,利用图像处理算法获取当前工件点胶路径,执行点胶任务。文献[8]设计了一种可完成图像识别与处理的新型点胶系统,该系统通过图像二值化、边缘检测和去杂点等一系列图像处理步骤,最终生成任意复杂轨迹点胶路径。该系统解决了传统点胶机生成复杂点胶轨迹困难和点胶单一的问题,但是不能很好适应工件类型变化。文献[9]对点胶机器人智能系统的视觉部分进行了研究,并在系统中引入了模式识别、基于图像的NC代码生成、胶线表面质量检测等关键技术。该系统提高了点胶系统的智能化和自动化程度,但是利用图像R、G、B颜色直方图0阶矩匹配标准图像的方法不够鲁棒,并且在工件库较大时匹配速度受到限制。
本文点胶系统是针对陶瓷行业点胶需求而设计,在部分陶瓷器皿生产过程中,需要在陶瓷器皿底部涂覆一层胶,起到防滑、防刮伤餐桌及地板等作用。由于陶瓷器皿色彩丰富、纹理结构复杂、种类繁多,所以后续图像处理过程中分割阈值等参数选择差异较大,影响系统通用性。为解决上述问题,本文提出一种基于工件自动识别的视觉点胶系统。该系统提取输入图像的HOG特征并通过已训练好的OVO SVMs分类器进行工件分类与识别,同时,选择自适应分割阈值,指导图像分割、边缘检测,获取初步点胶路径。然后,通过局部加权线性回归和关键控制点提取方法平滑点胶路径,生成最终任意复杂点胶路径,执行点胶任务。
本文以工业计算机为核心,设计一种基于工件自动识别的视觉点胶系统,该系统由机械部分、控制部分和视觉部分组成,具体结构如图1所示。
图1 系统结构图
系统机械部分包括点胶机构、机架、机壳及XYZ直线运动轴等,其中XYZ轴组合运动可实现复杂路径点胶;系统控制部分则由四轴运动控制卡、多通路I/O控制卡等组成,系统通过调用运动控制卡函数发送控制指令,再由电机驱动器控制伺服电机实现轴运动,系统通过I/O控制卡控制真空阀配合轴运动实现点胶,并采集传感器信号实现系统监控;系统视觉部分主要包括图像采集卡、工业相机和LED光源,系统通过控制LED光源、图像采集卡及工业相机完成采集图像工作,并通过图像处理实现工件分类及初步点胶路径提取。
在上述系统结构设计上,系统算法流程可大致归纳为图像采集、图像识别、图像处理、路径优化及点胶,具体如图2所示。监视系统检测工件运动到位情况并发送工件到位信号给控制系统,系统接收信号并完成图像采集。该图像经已训练的分类模型完成工件分类与识别,选择自适应分割阈值,指导图像分割。图像处理过程则是通过上述选择出的相应预设参数进行图像分割、边缘检测以及形态学处理等图像后处理完成图像边缘轮廓提取。
图2 算法流程图
图像处理过程返回工件边缘轮廓,即初步点胶路径,通过路径平滑及关键控制点提取生成最终点胶路径,系统将该点胶路径送入运动控制器执行点胶任务。
一副图像可以通过提取的图像特征来表示,目前常用的特征描述子有Haar特征、SIFT特征、LBP特征、HOG特征等[10]。HOG特征是通过将图像划分区域,统计各区域梯度方向直方图,并将这些直方图组合而得到的,如图3所示,HOG特征可以有效地保持图像的几何和光学特性,可以有效地应用于工件分类中陶瓷器皿特征提取。HOG特征本质则是梯度的统计,而梯度主要存在于图像边缘处,对图像颜色特征不敏感。此特性符合本系统依赖于黑白工业相机的图像采集过程。避免了RGB图像到灰度图像的转化,节省时间开销,与工业点胶系统实时性需求相吻合。HOG特征提取算法的基本步骤如下[11]:
(a)样本图 (b)样本HOG特征
S1:图像归一化:通过gamma校正法对输入的图像进行归一化处理,以调节图像对比度,降低图像局部阴影和光照变化造成的影响,提高对光照变化的鲁棒性。
S2:梯度计算:首先输入当前像素点的像素值到式(1)、式(2)计算当前像素点的水平和垂直方向梯度,然后根据式(3)、式(4)得到当前像素点的梯度幅值和梯度方向。
Gx(x,y)=H(x+1,y)-H(x-1,y)
(1)
Gx(x,y)=H(x,y+1)-H(x,y-1)
(2)
(3)
(4)
式中,H(x,y),Gx(x,y),Gy(x,y),G(x,y),α(x,y)为当前像素点的像素值、水平方向梯度、垂直方向梯度、梯度幅值和梯度方向。
S3:构建梯度方向直方图:如图4所示,将480×360大小的图像划分为6×6个cell,其中每个cell内包含80×60个像素,并且每个cell采用9个直方图通道来统计梯度信息,接着将每4×4个cell组成一个block,则可组成3×3个block,据此,HOG特征维数为4×4×9×3×3=1296。
图4 目标区域分块示意图
S4:区间归一化:为了进一步减小光照和对比度变化对图像梯度的影响,需要对block内的特征向量进行归一化处理,本系统采用L2-norm的归一化方法:
(5)
支持向量机是一种经典的机器学习模型,常用于解决分类和回归问题。支持向量机的主要思想是将低维向量映射到高维空间,并通过寻找高维特征空间上的最优超平面来将数据分类。见图5,x是位于超平面的点,w是垂直于超平面的向量,b是位移间隔,通过求取最大间隔来寻找最佳超平面。当训练数据线性可分时,可通过此方法求取最优超平面,同时所有的样本数据点xi应满足yi[wxi+b]≥1,i=1,2,…,n,公式描述如下:
(6)
图5 SVM最佳超平面
当训练数据不完全可分时,使用核函数将数据映射到高维空间,数据也在高维空间变成线性可分,最终通过求解对偶问题来得到最优解:
(7)
而本点胶系统中工件分类环节并不只是简单的二分类问题,为应对多类型陶瓷器皿的分类问题,本系统采用了基于one-versus-one的支持向量机[12](OVO SVMs)。one-versus-one 支持向量机分类思想是通过在任意两类样本之间设计一个二分类支持向量机,当输入未知类别的样本时,每一个二分类器都需要对其进行分类,并统计各类别的得分数,分数最高的类别则为该样本类别。最后由识别出的图像归属类实现工件自适应分割阈值的选择,工件分类流程如图6所示。
图6 工件分类流程图
点胶路径提取,即图像边缘轮廓提取。在图像采集完成后,通过工件分类获取工件所属类别,进而自适应选择预设分割阈值等参数并指导图像自适应分割及边缘检测。受图像采集过程、自身环境电子干扰及工件本身污渍等噪声影响,图像分割及边缘检测过程中存在噪点,因此,通过形态学处理以及一定先验阈值去噪完成整个图像后处理过程,并获取最终前景目标边缘轮廓,即初步点胶路径。点胶路径提取大致流程图如图7所示。
图7 点胶路径提取流程图
3.2.1 路径点平滑
初步提取的路径点连线是连续微小折线,若直接输入到运动控制器中会造成机械系统抖动,影响机械系统加工效率、精度及使用寿命。在输入到运动控制器之前需要对初步提取的路径点进行平滑,在此使用局部加权线性回归方法[13]对其进行平滑。局部加权线性回归是一种非参数回归建模方法[14],包括核回归、局部多项式回归、近邻回归及稳健回归等方法,本文选用核回归方法进行平滑[15],其基本思想是: 先选取与当前预测点xpredict相邻的k个数据点作为局部数据集,再选取合适的核函数计算局部数据集中各数据点对应的权值,最后采用加权最小二乘估计当前预测点对应的局部加权线性回归模型参数,进而得到预测点估计值。建模基本步骤如下[16]:
S1:以预测点xpredict为中心,选择与之相邻的k个数据点作为局部数据集P。
S2:选取核函数,通过计算预测点与P中各数据点的距离大小求得对应的权值大小。在此选用Tricube核函数,定义局部数据集中各个数据点的权值为:
(8)
式中,K(·)为核函数,h=2max|xi-xpredict|,(xi∈Q,i=1,2,…,k)表示带宽。
S3:根据最小二乘原理,选择加权误差平方和作为目标函数并进行优化,得到预测点的值。
(9)
式中,ωi表示第i个样本点的权值,a,b表示模型的待定回归系数。
局部加权线性回归模型是选取与预测点近似的局部数据集,局部数据集中的样本点代表性强,减少了差异较大的样本对预测点的干扰,较好提高了预测效果。近邻个数k是模型的主要参数,当k值较大时,曲线比较光滑,但是预测效果较差,当k值较小时则容易出现过拟合现象。系统根据大量实验确定k值为9时,路径点平滑效果较好。
3.2.2 关键控制点提取
若将所有平滑后的路径点作为点胶路径,会产生非常庞大的插补计算量,考虑到相邻路径点之间的相似性,拟先对所有路径点进行分区,再利用各区域路径点间相关性提取控制点代表各区域,以降低路径点密度,并且最大程度上保留原轮廓信息。本文将r个控制点作为一个区域,以此将路径点划分为n个区域R={r1,r2,…,rn},接着计算各区域坐标均值作为关键控制点集合S={s1,s2,…,sn},得到最终点胶路径点。
基于工件自动识别的视觉点胶系统如图8所示。本文点胶实验在随机挑选的6种工件上进行,具体工件样本如图9所示,分别对6种工件进行20次点胶实验,工件1到工件6的点胶平均耗时分别为8.241s、8.332s、10.327s、7.314s、5.534s、9.148s,因工件型号不同,其路径长度及复杂程度存在差异,因此点胶过程存在一定耗时差距,但整体符合点胶需求。
图8 点胶系统
图9 工件样本
采用基于HOG特征的SVM实现工件分类,获取该工件相应分割阈值实现后续图像自适应阈值分割。在上述工件类型中随机挑选3600张样本作为测试数据集,并在此数据集进行工件分类实验。具体工件分类结果如表1所示。
表1 分类器测试结果
从表1看出,工件2、工件3、工件5及工件6出现不同程度的误检情况,受HOG特征尺度不变性影响,工件2和工件5、工件3和工件6在纹理结构相似的情况下,样本尺寸差异导致了工件的错误识别。工件1和工件4因纹理结构差异明显,故在HOG特征和SVM的分类识别下,其识别结果为100%。上述实验结果表明,系统平均识别准确率在98%以上,虽存在误检,但同种纹理结构、不同尺寸大小的工件在近似相同的环境下生产,后续图像处理中自适应分割阈值接近,对整体点胶精度影响可近似忽略。无漏检情况发生则避免了因无法自适应挑选后续图像处理分割阈值而导致的系统点胶过程中断,保证了基于工件自动识别的视觉点胶系统的稳定性、通用性。
在上述工件分类获取图像自适应分割阈值后,对图像进行二值化操作获取图像边缘。针对图像边缘信息,本文点胶路径优化方案—关键控制点提取与阈值分割、轨迹点平滑方案进行对比,便于平滑效果可视化,此处对图像轮廓内部进行了填充。其直观平滑效果如图10所示。
关键控制点提取对平滑效果造成一定影响,从图10可看出,其平滑效果较路径平滑的平滑效果稍差,但其分割精度变化不大。为度量轨迹优化情况下分割精度的变化情况,提出一种基于面积比的度量指标,即二值图像与人为标注的ground truth的面积比。具体结果如表2所示。
图10 平滑效果
表2 轨迹优化结果
从上述图表看出,本文对点胶路径优化后,分割精度变化1.012%左右,可近似忽略,在保证系统精度的前提下延长了系统使用周期。
本文提出一种基于工件自动识别的视觉点胶系统,系统通过工业相机采集图像,提取工件样本HOG特征,输入到已训练好的OVO SVMs进行工件分类与识别,同时,选择自适应分割阈值,即根据类别信息调用预设参数,再利用此参数指导图像分割、边缘检测等图像处理算法,获取初步点胶路径,然后,通过局部加权线性回归方法平滑初步点胶路径,最后,提取关键控制点,进一步优化点胶路径。实验结果表明,该方法对工件识别分类准确率较高,通过平滑和提取关键点方法可在保留原有轮廓信息的基础上,起到优化点胶路径的作用。