中空玻璃上下片机械手视觉检测系统设计
2022-11-02杜太行李亚杰孙曙光安春晖
杜太行,李亚杰,孙曙光,刘 辉,梁 杰,安春晖
(1.河北工业大学人工智能与数据科学学院,天津 300130;2.河北省工业机械手控制与可靠性技术创新中心(河北水利电力学院),河北沧州 061000;3.河北水利电力学院,河北沧州 061000)
0 引言
自动化生产是制造业长期发展的目标之一[1],机械手采用自动化技术代替人力,降低劳动强度的同时保证抓取的稳定程度,提升生产效率,有力地提高了企业市场竞争力。中空玻璃上下片机械手主要用于钢化玻璃贴合、磨砂以及锻造等工序,生产过程中需要根据玻璃尺寸变化调整抓取结构;同时工件台到机械手的距离并不固定,因此距离测量的快速与准确性影响到机械手抓取的效率。为实现机械手的自动生产,文献[2]采用光电传感器作为控制开关实现机械手抓取,整体设计较为完整但对物料大小和玻璃机械手进给距离仍需人工设定。周晶等[3]设计了气动回路和电气控制系统实现玻璃贴标机自动上料,但是其测量效率低且在物料变换后不能自动调整控制策略。潘宁等[4]设计了基于运动控制指令实现数控机床的自动上下料,系统未对物料的尺寸信息、深度信息等进行测量。
目前上下料机械手系统大多采用运动控制指令实现上下料操作,工作流程不能对物料尺寸和工件台到机械手的距离变化进行自动测量与调整。因此为解决上述问题,引入视觉系统实现对玻璃尺寸和工件台与机械手之间距离的测定,提升机械手工作效率与智能程度。
在机械手视觉系统方面,文献[5]提出了基于多目立体视觉构建机械臂智能控制系统,实现对目标物体的自动识别与定位。文献[6]基于树莓派控制器配合高清摄像头组成嵌入式机器视觉系统,实现机械手对产品的精确定位和分类。文献[7]利用摄像头采集目标图像并传输到上位机,基于Opencv视觉库对图像进行处理,确定目标信息,实现机械手对目标的控制。以上研究引入视觉系统,使得机械手的生产效率与智能化水平显著提升。
针对视觉系统中测距方法的设计,目前多采用单目测距与双目测距的方法,文献[8]基于双目视觉设计了电力巡线机器人障碍物定位测距系统,实现对障碍物的定位测距。文献[9]基于单目视觉,实现了与前方车距的测量。文献[10]采用单目视觉,基于目标物体成像尺寸的变化进行距离测量,提高了单目视觉检测精度。通过对比发现双目视觉精度相对较高,但其配置时需要基线和摄像机光轴处于同一平面,操作复杂且造价高。单目视觉操作简单且成本低,通过采用固定参照物可以实现中近距离的测量。
综上所述,本文设计中空玻璃上下片机械手的视觉检测系统,基于玻璃边缘与滚轮所独有的颜色特征进行识别,利用改进骨架提取算法实现玻璃尺寸测量;采用单目视觉测量方法基于滚轮的长宽比与像素区域面积实现机械手进给距离测量。该视觉系统可实现玻璃边缘和滚轮多个目标检测,且处理速度和精度满足实际生产需要,提升了中空玻璃上下片机械手抓取效率。
1 机械手视觉测量系统设计
1.1 机械手工作需求分析
中空玻璃上下片机械手整体结构如图1所示。机械手通过电机驱动伸缩轴进行前进后退,通过调节翻转角度,保证机械手末端与工件台保持平行,之后吸盘进行真空操作,实现对玻璃的抓取。引入视觉系统后,即通过相机采集图像并处理得到机械手伸缩轴进给距离和玻璃尺寸。
图1 系统整体结构
实际生产测量中,玻璃生产线上玻璃测量尺寸测量如图2所示,允许误差范围值在2 cm以内,同时经观察发现,由于玻璃本身透光性的影响导致图形产生重影,玻璃检测困难。
机械手进给距离误差在5 cm以内不影响吸附强度,其抓取的工作效率为6~7片/min,针对单片抓取时,测量与调整的时间允许范围约为8 s,因此对视觉系统高效准确测量提出了新要求。
1.2 视觉测量系统设计
基于机械手工作需求分析,测量的快速与准确性是视觉测量系统设计的主要问题。针对测距问题,根据本文的需求与误差分析,采用单目视觉测距。同时为提高处理的快速性,视觉测距的同时实现玻璃尺寸的检测,因此需要设计针对性的测量方法实现目标检测。
系统构成包括视觉硬件和软件系统。本设计检验的玻璃目标可达150 cm,按照每个像素最低1 mm的精度,最终选用GigE Vision V2.0协议的1 280 pixel×1 024 pixel CMOS相机,镜头焦距为3.3 mm。采用LED灯为光源,垂直照射玻璃。软件处理系统通过Windows系统下的QT开发环境进行设计。
机械手整体系统由图像采集与处理模块和运动控制模块组成,如图3所示。图像采集与处理模块由相机、镜头、光源、计算机等组成,运动控制模块通过PLC控制步进电机和气缸,得到参数后控制机械手运动,实现机械手对玻璃的抓取。
图3 系统总体结构图
2 视觉检测系统测量方法
为保证视觉测量系统的准确与快速性,需要设计具有针对性的检测方法对目标进行检测获取所需参数。采集玻璃图像时由于玻璃的透光性导致检测困难,采用单侧垂直光源对玻璃进行照射,由于不同介质间的光传播产生散射效应,玻璃边缘部分产生绿色光条区域且无重影现象,如图4所示。同时观察发现工件台上的滚轮位置固定且形状颜色特征明显,且光条部分与滚轮区域两者之间存在明显差异。
图4 相机采集图像
因此通过测量绿色边缘部分即可获取玻璃尺寸;进给距离采用单目视觉成像几何关系法测量,将滚轮作为目标对象;对所采集图像信息进行图像预处理,提取不同特征实现检测。由于两者目标区域均由其颜色特征进行提取,因此只需在图像预处理过程中设置不同参数大小即可实现目标区域提取。图像预处理完成后分别设计了玻璃尺寸和距离测量算法。
2.1 图像预处理
玻璃边缘光条部分与滚轮的颜色特征差异较大,RGB图像转化为HSV图像可以减少干扰信息,突出目标区域。并采用伽玛变换对光照矫正,增强图像效果,设f(i,j)为输入的待处理图像,fmax为图像f的最大像素值,1-cf(i,j)整体为伽玛参数,cf(i,j)为与邻域信息与直方图相关的加权累计概率和,G(i,j)为伽玛变换处理完成的图像,从而可得:
(1)
为提取目标区域采用基于HSV参数值方法对图像进行双阈值分割,对HSV图像色调、饱和度和亮度的值进行选取,确定双阈值分割的高阈值与低阈值。双阈值分割过程可以用式(2)表示。
(2)
式中:I(i,j)为双阈值分割后图像;Tl、Th分别为双阈值分割时的阈值下限与阈值上限。
整体代表意义为将参数值位于灰度值区间的区域赋值为0;低于低阈值与高于高阈值部分赋值为1,即可得到分割后区域。通过对玻璃边缘光条部分和滚轮部分的阈值分别进行筛选确定目标区域,为后续的测量打下基础。
2.2 基于改进骨架化算法提取玻璃尺寸
双阈值分割后获取到玻璃边缘部分图像如图5所示,测量玻璃的尺寸就是将获取提取部分区域的长度。
图5 玻璃边缘绿色光条部分分割效果图
观察发现由于边缘部分光散射效果的存在,导致图像处理效果并不是平整的矩形区域,因此为了更准确地测量长度值,需要实现边缘部分的直线拟合误差减小。因此对玻璃边缘部分进行细化处理,采用骨架提取算法获得符合整体特征的直线特征。其原理为:对于一幅二值图像的一个区域T,其边界为F,对T中的点P,寻找P到F最接近的邻点。如果P有多个最近邻点,则认为点P属于T的中轴。图像内每个像素点与其周围的邻域像素点组成3×3矩阵,各像素点位置及编号如图6所示。
图6 骨架提取细化算法的相邻关系排列
P1为像素值为1的点。N(P1)为P1非零邻点的个数,S(P1)是P2~P9按序排列时点的值从0到1变化的次数。通过以下2个步骤实现:
步骤1:循环遍历所有前景像素点,对同时满足下列条件的边界点,进行删除处理(置 0),如下式所示。
2≤N(P1)≤6
(3)
S(P1)=1
(4)
P2·P4·P6=0
(5)
P4·P6·P8=0
(6)
步骤2:重复上述步骤,再次循环遍历所有前景像素点,进行删除处理。
由于步骤条件中的S(P1)=1阻止了多余像素点的删除,为避免骨架提取后骨架中出现多余毛刺,影响整幅图像的结构。对算法进行改进,增加2个对角方向的删除模板,即图像与删除模板进行与操作,即图像内的像素点需同时满足如下要求:
(P2·P8=1)&P5=0
(7)
(P4·P6=1)&P9=0
(8)
(P8·P6=1)&P3=0
(9)
(P2·P4=1)&P7=0
(10)
2.3 基于卡尔曼滤波器的进给距离实时测量
单目视觉中心投影透视成像模型如图7所示。
图7 成像模型图
根据成像模型可知,目标到光轴的距离Z和像平面到光轴的距离D满足几何光学中相似三角形的线性关系,如式(11)所示:
(11)
式中:X为实际物体长度;x为图像平面长度。
将滚轮的尺寸特征作为目标进行测量。同时由成像原理可知对于同一目标,距离与图像中对象的像素大小成反比。因此引入像素区域进行测距,从而提高测距的稳定性。经过检测之后设定x为目标像素宽度,y为目标像素高度;X为目标实际宽度,Y为目标实际高度。fx为相机x方向焦距,fy为相机y方向焦距,因此可得:
(12)
引入像素面积s,其与距离d关系如下:
(13)
(14)
距离测量过程中,由于生产过程振动对相机和工件台的影响,在相同距离测量时所得的目标像素宽度x,高度y存在误差。为提高测量精度,采用卡尔曼滤波器对目标像素宽度与高度进行处理,得到优化后的目标像素宽度与高度,之后带入距离测量公式(15)。
Xk=FkXk-1+wk
Zk=HkXk+νk
(15)
式中:Zk为系统k时刻的系统状态观察值;Xk、Xk-1为系统k、k-1时刻的测量值;Fk为状态转移矩阵;Hk为观测矩阵;wk、νk分别为过程和测量噪声,满足正态分布。
卡尔曼滤波是一种递归的估计,即只要获知上一时刻状态的估计值以及当前状态的观测值就可以计算出当前状态的估计值,如下所示:
(16)
(17)
(18)
Pk|k=Pk|k-1-KkHkPk|k-1
(19)
3 系统测试结果分析
设计开发的中空玻璃上下片机械手检测系统主界面如图8所示,系统包括结果视频监控、图像采集与效果处理、测量结果显示等功能。为验证系统有效性,对卧式中空玻璃上下片机械手测试,其进给距离范围为0~150 cm。将相机固定于机械手平台侧方,且与伸缩轴初始位置保持同一水平线。采用各型号玻璃共100片,进行分析验证。
图8 测量系统主界面
3.1 玻璃尺寸检测结果分析
选用骨架算法和最小矩形框法依次对玻璃图像进行检测,测量效果如图9所示。
(a)骨架算法
(b)最小外接矩形
(c)改进骨架图9 提取效果对比图
通过对比图9(c)与图9(a)可知,改进骨架算法实现了骨架毛刺的剔除,保证了所得骨架是单像素宽度,为长度测量减少干扰信息。对比图9(c)与图9(b)可知,改进骨架提取得到边缘提取效果更符合提取轮廓,对玻璃尺寸测量更准确。
在此基础上,基于改进骨架提取方法,对不同尺寸的玻璃进行测量,数据结果如表1所示。
表1 玻璃尺寸测量结果
通过表1可知,整体的测量时间在0.9 s左右,同人工测量相比大大缩短了检测时间,系统的误差范围在5 cm左右,满足抓取要求。
3.2 进给距离测量结果分析
在实验过程中,采用相机帧率为30帧/s,焦距为固定值3.3 mm,为体现基于卡尔曼滤波的进给距离实时测量效果,设定工件台到机械手的距离匀速变化,对测距方法进行测试,测距效果如图10所示。
图10 测距效果图
通过图10可以看出在测量过程中无滤波的测量值较实际位置差异明显,对距离变化不能准确跟随,相比较之下经卡尔曼滤波处理后可以使测量更加准确和稳定。
进一步对部分特殊距离进行多次测距取均值,结果如表2所示。系统可以实现距离测量的准确实时测量,整体的测量时间在0.5 s以内,同人工测量相比大大缩短了检测时间。并且通过观测中间测量结果发现,系统的误差范围在0.2 cm左右,满足系统抓取要求。
表2 距离测量效果
4 结束语
本文设计了中空玻璃上下片机械手视觉检测系统,基于玻璃边缘区域颜色特征和单目视觉测距的方法,采用改进骨架化提取实现玻璃尺寸测量,测量时间在0.9 s内,平均误差范围在5 cm以内;基于卡尔曼滤波和滚轮尺寸特征实现进给距离测量,测量时间在0.5 s以内,平均误差范围在2 cm以内;从整体的测量速度和精度来看,完全满足系统的检测需求。提高了机械手在生产线上的生产效率,与行业内其他型号的机械手相比检测更加智能化。