张 驰,廖华丽,周 军
(河海大学 机电工程学院,江苏 常州 213022)
在目前工业生产的过程中,绝大多数的工业机器人均是依靠精确的示教进行抓取和放置工件,但这种方式存在着较大的局限性,因为这种结构化的环境要求工件必须以特定的方位处于固定的位置上,如果外界环境或工件的状态发生变化导致这一要求不能满足时,机器人往往不能适应这种变化,导致任务中断或失败[1]。而机器视觉技术因其信息量大、精度高、检测范围大等特点,将其引入工业自动化中实现工件的自主识别和定位越来越成为不可或缺的技术应用[2]。王健强等[3]提出通过两台或多台CCD摄像机获取工况图像,进行分析计算实现目标的识别与位姿计算的方法,但基于双目或多目视觉的抓取系统计算量较大,影响系统的实时性;李星云等[4]提出了一种嵌入式平台上的单目视觉定位方法,该系统集成性高,使用起来简单方便,但嵌入式系统开发起来难度较大。
本研究将单目视觉引入到工业机器人智能抓取系统设计中,并通过实验验证。
机器人工作时,机器人抓取零件的流程如图1所示。
图1 工业机器人零件抓取流程
首先本研究由单目视觉对工作环境进行扫描检测,检测到工件到位,摄像机开始拍照并将拍摄到的图像传递给上位机。上位机利用已经开发好的程序对图像进行预处理,包括中值滤波,阈值分割和寻找连通域的轮廓,然后进行模板匹配识别出当前将要抓取的零件且计算出其在图像中的位置和姿态,进一步地通过摄像机标定[5],机器人的手眼标定建立抓取系统的参数化模型[6],通过参数化的模型将获得的目标工件在图像中的位姿信息转化成目标工件相对于机器人基坐标的位姿信息[7]。得到目标工件相对于机器人基座标的位姿信息后,本研究将PC作为服务器,ABB机器人作为客户端,采用TCP/IP协议建立SOCKET通信,将位姿信息通过建立的SOCKET传递给机器人控制系统,从而引导机器人进行路径规划,完成对目标物的抓取。
假定工业机器人要抓取的工件为立方体薄片,要在众多工件中对目标工件进行识别定位,本研究提出的图像处理算法包括以下几个步骤:(1)图像预处理;(2)模板匹配;(3)目标位姿计算。
图像预处理主要包括中值滤波、阈值分割、寻找连通域的轮廓[8]。图像滤波可以在尽量保留图像细节特征的条件下对目标的图像噪声进行抑制。中值滤波是一种典型的非线性滤波技术,基本思想是用像素的邻域灰度值的中值来代替该像素点的灰度值,让周围像素值接近真实值,从而消除孤立的噪声。在图像处理中,常常需要对图中的像素做出取舍与决策。阈值化可以被视作最简单的图像分割方法。这样的图像分割方法基于图像中物体与背景之间的灰度差异,属于像素级的分割。为了从一幅图像中提取出研究者需要的部分,应该用图像中的每一个像素点的灰度值与选取的阈值进行比较,并作出相应的判断。当进行完阈值化分割后,本研究生成包含目标物体位置的二值化图像。即在图像中目标物成为一个个连通域,此时对目标物形成的连通域进行轮廓提取,系统性地扫描图像直到遇到连通区域的一个点,以它为起始点,跟踪它的轮廓,标记边界上的像素,当轮廓完整闭合,扫描回到上一个位置,直到再次发现新的成分,提取出目标物的轮廓后将其保存,用于下面进行的模板匹配。预处理前后摄像机获取的工况图像分别如图(2,3)所示。
图2 多目标工况原图
图3 预处理后的图像
常用的模板匹配算法主要有基于灰度值的匹配和基于形状特征的匹配。基于灰度值的匹配因为是基于一个个像素点的灰度值的比较,实时性较差,且受光照和环境的的影响比较大。而为了满足机械臂准确的实时抓取,所选取的算法必须具有良好的实时性,并对环境因素和光照变化具有足够的鲁棒性。对物体的形状特征匹配进行研究后,本研究提出一种快速的基于轮廓的Hu不变矩的模板匹配算法即通过图像预处理后提取目标物与模板的轮廓,然后通过对两个轮廓的Hu矩进行计算,并根据提供的标准进行比较从而实现轮廓的匹配达到对目标物的识别。经验证该算法对于物体的形状描述较好,且具有平移、灰度、尺度、旋转不变性,适合用于对零件的匹配识别,具体算法如下:
三峡水库自2003年试验性蓄水以来,每年的水位调度过程基本相似且都具有“骤升缓降”的特点(见图2),即每年的8月—11月为水位骤升段,大约历时3个月,而每年的11月至次年6月为水位缓降段,大约历时8个月。
定义一个轮廓的p+q阶矩如下:
(1)
式中:p-对应x维度上的矩,p=0,1,2...n;q—对应y维度上的矩,q=0,1,2...;n—边界轮廓上像素点的个数。
接着由公式(1)可计算得出轮廓的中心矩公式:
(2)
式中:p,q=0,1,2...。
其中:
(3)
进一步计算得出轮廓的归一化的中心矩为:
(4)
式中:p,q=0,1,2...;ρ=(p+q)/2+1。
最后本研究利用二阶和三阶归一化的中心矩构造了下式,7个基于轮廓的Hu不变矩(h1到h7),这些矩对某些变化如缩放,旋转和镜像映射具有不变性:
(5)
Hu不变矩构造完成后,本研究可以简单地提供两个物体并提取两个物体的轮廓。然后计算它们的Hu矩并根据提供的标准进行比较,以判别两个物体是否相似。所提供的3种比较标准如下:
(6)
(7)
本研究根据计算公式(6)中的值来判定两个物体的相似程度,完全相同的两个物体则计算的值为0,若计算的值越靠近1,则代表两个物体的相似程度越差。在用于模板匹配识别时,可以设定一个阈值,低于此阈值则认为匹配成功,确认为要寻找的目标物体,否则则认为匹配失败,继续进行对下一个目标进行匹配。
以公式(6)中,为计算标准,模板零件与工况中各零件相匹配计算出的部分实验数据I1值如表1所示。
表1 模板零件与工况中各零件的匹配值表
若将阈值设为0.05,由表1的结果可看出,模板与目标零件的匹配值远低于该值,而模板与非目标零件匹配值远高于此值,故该算法中,以模板零件与目标工件和非目标工件之间匹配值具有较大数值差为基础,通过阈值设定可成功将目标零件匹配出。
预处理后的用于匹配的三角形模板轮廓图如图4所示。
图4 预处理后的模板
通过上述算法,匹配识别出的三角形目标工件轮廓图如图5所示。
图5 匹配出的目标工件
对于材质均匀的工件来说,工件的质心既是工件的形心。在匹配出目标工件后,分别计算出目标工件轮廓的轮廓矩m00、m01和m10,然后按照公式(3)即可算出目标工件的形心。
(8)
对公式(8)做θ的导数并使之为0,则可得方程:
(9)
解该方程可得θ值,即:
(10)
当获得目标工件在图像中的位姿之后,还需要对抓取系统进行标定,包括相机标定和手眼标定。相机标定主要是利用张正友法标定,确定相机的内外参,从而确定图像坐标系到摄像机坐标系的转换关系;手眼标定利用Tsai-Lenz法进行标定,可确定摄像机坐标系和机器人末端坐标系的转换关系;而机器人末端坐标系和基坐标系的转换关系可通过控制器读出,所以本研究经过上述步骤,可建立抓取系统的参数化模型,确立位姿的转换关系,从而计算得出目标工件相对机器人基坐标系的位置,引导机器人实现抓取[10]。
为了验证本研究提出的算法有效性,笔者在六自由度的IRB120机器人上进行智能抓取实验,实验采用集成性高,成本低的网络摄像机。首先,在自然光及一般照明条件下,笔者对机器人视场范围内工作平台上任意放置的几个大小形状不同的典型工件进行拍照,随后对采集到的图像进行预处理,模板匹配,位姿计算得到工件在图像中的位姿,利用之前建立的系统参数模型,换算得到目标工件在机器人基坐标系中的坐标位置及姿态,将该位姿与机器人抓取时机械手末端相对基坐标系的位姿相比较(该位姿可在机器人示教器上直接读出),得出位置误差在14 mm以内,姿态角度误差在15°以内,在误差范围允许之内。实验装置实物图如图6所示。
图6 实验装置实物图
部分实验结果如表2所示(由于使用单目摄像机结构,不考虑Z坐标的值)。
表2 单目视觉系统视觉定位与实际结果对比表
本研究将单目视觉技术应用于工业机器人智能抓取系统设计中,通过提取工件的轮廓、模板匹配、位姿计算等可让系统准确地对目标工件进行识别和定位,具有系统结构简单、实时性好,成本低廉等特点。经搭建的实验平台验证得出的结果表明了该系统的可行性,且能够达到实时准确抓取目标工件的预期目的,对实现工业自动化,提高生产效率具有重要意义。
由于本研究中引入的是单目视觉,系统中存在对工件的深度信息无法进行准确获取的不足,若在生产中需要获取工件精确的深度信息,则需要在系统中引入双目视觉或结构光,进行准确的三维姿态测量,这是完善系统的方法,也是今后进一步研究的方向。
[1] NIKU S B. Introduction to robotics: analysis, control, applications, second edition[M]. 2th ed. Beijing: Publishing House of Electronics Industry,2013.
[2] 张广军.视觉测量[M].北京:科学出版社,2008.
[3] 王健强,吕 游.一种面向工业机器人智能抓取的视觉引导技术研究[J].机械设计与制造,2009(9):172-174.
[4] 李星云,李众立,廖晓波.基于单目视觉的工业机器人定位系统的设计[J].机床与液压,2015,43(9):35-38.
[5] 马颂德,张正友.计算机视觉[M].北京:科学出版社,1998.
[6] TSAI R Y, LENZ R K. A new technique for fully autonomous and efficient 3d roboticsh and/eye calibration[J].IEEETransactionsonRoboticsandAutomation,1989,5(3):345-358.
[7] 翟敬梅,董鹏飞,张 铁.基于视觉引导的工业机器人定位抓取系统设计[J].机械设计与研究,2014,30(5):45-49.
[8] 李福运.工业机器人TCP自标定精度叠加方法的设计与应用[J].机械,2017(8):50-53.
[9] 冯伟兴,贺 波,王臣业.Visual C++数字图像模式识别技术详解[M].2版.北京:机械工业出版社,2013.
[10] 张 振.基于单目视觉的工件位姿识别与抓取系统[D].杭州:中国计量大学机电工程学院,2016.