基于机器视觉的工件自动分拣系统的研究
2014-12-02管经纬周虎杨慧斌
管经纬,周虎,杨慧斌
(1.东华大学,上海 201620;2.上海工程技术大学,上海 201620)
0 引言
随着图像处理技术的发展,将图像处理技术与自动化生产线中的分拣系统结合,用CCD 代替各种繁杂的传感器组合,应用机器视觉技术,具有检测速度快、可靠性高、实时性好等特点,可以实现无接触、无损检测。本文提出了一种基于机器视觉的工件分拣系统,该系统把机器视觉技术应用到工件分拣问题中,研究了相关图像处理算法,采用轮廓外接形心计算图像中心位置和角度,解决了工件识别问题以及定位工件中心,并采用模式识别的的方法快速高效地分拣出不同类别的产品。
1 基于机器示教的工件自动识别算法
图1 所示为福特汽车门铰链生产线。
图1 福特汽车门铰链生产线
如图2,工件识别算法分为两部分:第一部分是机器示教部分,通过标准模板CCD 成像,建立待分拣物的模板并存储在计算机硬盘中;第二部分是待测物识别部分,通过CCD 成像后与标准模板进行比较,此成像图暂时存放在计算机内存中。用相似度来判断是否为同类零件:如果是,则分拣至指定通道;如果否,则继续循环判断。
检测流程如图3 所示。
图2
2 关键算法
2.1 图像预处理
图像的预处理主要是为了提高图像数据中的信噪比,进行背景噪声的抑制,以减轻后续图像处理压力。图像的噪声对后续成像零件的识别带来误差。本课题采用加权平均滤波方法进行图像去噪。
加权平均滤波算法是能保留图像边缘细节的局部平滑算法。考虑的重点是领域的大小、形状和方向的选择,各点权值系数的选取等。这类对各点选取不同权值的方法称为加权平均法。
处于领域中心待处理的像素点P(i,j)称为中心像素点。选取权值的一般原则如下:
图3 检测流程图
1)中心像素点P(i,j)赋予较大的权值,其他像素点的权值均较小。
2)按照与中心像素点P(i,j)的距离确定权值。距离较近的像素点赋予较大的权值,距离较远则赋予权值较小。
3)按照与中心像素点P(i,j)的灰度值接近程度确定权值。灰度值越接近的像素点,赋予较大的权值,反之,赋予的权值较小。
下面的改进算法以灰度梯度的倒数作为权值,简称这种加权平均梯度倒数加权平均算法。以3×3 领域为滤波窗口。在领域内的灰度矩阵为
相应的灰度梯度的倒数作为权值的矩阵为
注意:式(3)和式(4)在计算w(i+k,j+l)和d(i+k,j+l)中的条件(k,l)≠(0,0),即k 与l 不能同时等于0。最后,加权平均输出是
2.2 目标物的位姿检测
由于待测物体的成像位置和偏转角度与模板物有偏差,必须检测出这个位姿偏差,然后应用仿射变换使两个图像在同一坐标系下进行比较。针对机械零件大批量测量时图像精确配准的难题,本文提出了一种基于机械零件图像边缘轮廓形心与最小外接矩形的图像配准方法。该方法通过确定图像边缘轮廓的形心位置,以及最小外接矩形特殊边与坐标轴的夹角,得到图像的仿射变换参数,从而完成机械零件图像的配准工作。实验表明,该方法用于机械零件图像配准可达到像素级精度要求,并具有速度快的特点。
确定各图像中每个边缘像素点的图像坐标位置,连续截面形心坐标的计算公式为:
其中,XC、YC为形心坐标。
确定零件图像边缘的极值点,并以此为定点,建立包容零件轮廓的最小外接矩形。选择其最短边,计算其与x 轴方向的夹角(逆时针为正方向),根据式Δθ=θ2-θ1得出截面图像之间的夹角,并将其作为旋转基本角,如图4 所示。图4 中,Δθ=θ2-θ1=90°-60°=30°。
针对不同图像的形心位置坐标,计算出零件截面图像之间的水平与垂直方向的偏移量:
图4 工件与图像旋转图
根据式(7),平移图像,使其每幅零件图像形心与图片中心重合。
2.3 图像仿射变换和相似度判断
由于工件放置的偏差,待测零件的形心坐标与数据库中标准零件的形心坐标不可能一致,故须通过图像的位姿变换、旋转及平移使两图像重合。本文采用仿射变换进行图像变换。仿射变换可分解为线性变换和平移变换,二维仿射变换公式如下:
式中:tx和ty为平移量;θ 为旋转角度;s 是缩放尺度,此处s=1。
经过仿射变换后的零件与标准模板零件可进行逐像像素相减并求和后比较,用相似面积除以模板零件的最大面积作为相似度。如相似度大于某阈值,则认为该待测件与模板零件是同一类零件,否则认为不是同一类零件。
其中,sim 为零件相似度,area 为零件的相似面积,areamax为模板零件的最大面积。
3 实验验证
3.1 建立模板零件图像
工作现场需要识别两个零件,一是钣金件A,另一个是六角螺母B。现分别对其成像并建立模板,如图5 所示。本实验成像大小为1200×1024。
3.2 流水线待测物成像
工作流水线上,由于加工完后零件摆放位姿的随意性,实际成像图如图6 所示。
图5 零件A 与零件B 模板
图6 零件A 与零件B
3.3 算法验证
首先对待测物进行加权平均滤波算法,然后利用上述算法对零件进行形心和旋转角度检测,实际结果如表1。
表1 零件与模板的形心和角度
表2 零件与模板的比较值
基于以上检测数据,可以计算两个零件的位置偏差(deltX,DeltY)和旋转角度deltTheta,分别利用仿射变换和标准模板进行比较,得到误差数据如表2 所示。
设置相似度阈值为0.8,显然系统成功地判别出了两类不同的零件,自动分拣系统可以根据相似度判别不同的零件,为后续零件分流作依据。
4 工件分拣运动的实现
由图像处理算法生成的工件形心位置,为机械手抓取提供了坐标点。上位机将处理得到的坐标点作为运动控制参数发送给运动控制卡,运动控制卡内事先编写好的底层控制程序中含有接收位置参数的变量,当变量接收到参数后会发出驱动脉冲来控制伺服电机,使Z 轴精确定位于工件上方,随后控制Z 轴下降并由气动夹爪抓取工件,从而实现了目标抓取功能。
5 结论
本文设计了一种基于机器视觉技术的工件自动分拣系统,以常用紧固件六角螺母为检测对象,用二值化进行图像分割,凯西算子提取图像边缘。采用轮廓外接形心计算图像中心位置和角度,使待测螺母与模板形心重合。最后通过相似度来判断是否合格。此系统是一个开放性平台,对后续开发多种用途的系统是一种有益的尝试。可进一步应用在复杂零件尺寸、形状误差的检测中。
[1]刘振宇,赵彬,邹风山.机器视觉技术在工业分拣中的应用[J].计算机应用与软件,2012(12):88.
[2]杜荣.基于机器视觉的工业机器人分拣系统的研究[D].南京:南京林业大学,2009.
[3]刘凌云.基于3D 标靶的摄像机标定方法的改进[J].湖北汽车工业学院学报,2008,22(1):33-36.
[4]孙燮华.数字图形处理Visual C#.NET[M].北京:机械工业出版社,2010.
[5]孙燮华.数字图像处理-原理与算法[M].北京:机械工业出版社,2010.
[6]陈栋梁,李蓓智,周虎.基于零件轮廓形心与最小外接矩形的图像配准方法[J].制造业自动化,2012(8):48-51.
[7]韩九强.机器视觉技术及应用[M].北京:高等教育出版社,2009.
[8]陈贤巧.基于特征的图像配准算法研究[D].合肥:中国科学技术大学,2009.