APP下载

在线产品智能搬运机械手系统视觉识别技术

2018-09-19马子领张瑞珠吴林峰

计算机测量与控制 2018年9期
关键词:机械手灰度光照

马子领,张瑞珠,吴林峰

(华北水利水电大学机械学院,郑州 450045)

0 引言

目前国内对基于视觉工业机械手抓取的已有研究有:(1)基于单目视觉的机械手智能抓取系统[1]。这类系统一般将摄像机安装在工业机械手工作空间的上方,同时观察目标和机械手末端执行器,利用摄像机作为中间媒介建立起目标与机械手之间的关系。(2)基于立体视觉的机器人控制系统[2]。这类系统一般是使用两台摄像机对目标同时进行拍摄,利用视觉差和立体匹配技术获取目标的空间位姿,从而对机械手抓取进行控制。这两种方法都有其局限性:第一种方法要求摄像机能够同时观察目标和机械手末端执行器,这对系统的配置要求较高,工作现场的条件时常不能满足。另外由于摄像机的安装位置原因,机械手会对目标产生遮挡,导致抓取失败;第二种方法由于使用到了两台摄像机,硬件成本提高,并且计算量大,视场角较小[3]。针对这些问题,杨贺然[4]等提出了单摄像机和工业机械手分别固定安装在传送带两端的智能抓取系统。这种配置的优点是:系统安装灵活,能够充分发挥视觉系统的功能,算法简单,计算量少。由于该方法中目标和机械手不能同时出现在摄像机视野中,因此也被称作末端开环视觉系统。显然,该配置方法不能满足同一传送带上有多个位置需要抓取产品的情况,不利于系统扩展。本文以苹果手机整机检测生产线上从传送带上抓取位置和姿态各异的手机并以固定姿态放置到检测设备卡槽或托盘里为研究背景,研究一种基于辅助定位机构的视觉识别技术。该技术的基本思想是将部分视觉功能交由辅助定位机构实现,从而简化视觉系统设计和降低成本。本文重点研究该技术中的图像识别算法。

1 智能搬运机械手系统组成

如图1所示,该系统由辅助定位机构[5]、视觉系统、搬运机械手、传送带、手机托盘等组成。

图1 智能搬运机械手系统三维结构原理图

辅助定位机构包括导向柱,转轮1,转轮2,导向槽,挡板。其功能是将传送带上过来的位姿各异的手机进行排列,一个接一个地进入到导向槽里面,最前面的手机到达挡板后即停止不动,等待机械手的抓取,当机械手将紧挨挡板的手机抓走后,导向槽里面的手机在传送带带动下继续向前移动到挡板并停止等待下一次抓取。

视觉系统包括摄像头支架、摄像头及图像处理程序。其工作原理是:经辅助定位机构初步定位后进入通道槽的手机将呈现正反面及上下方向倒置等组合成的四种不同姿态。假定手机出现正面的情况为A,反面为B,上下倒置的情况分别为C、D,于是AC表示A情况和C情况同时出现,其他三种状态同理。在系统中存储这四种状态典型图片的特征作为判断准则,对导向槽里面的图片进行识别以确定导向槽里面的图片属于哪一种状态,将这种状态对应的信号指令发给机械手,机械手即可进行相应的操作动作将手机以固定的姿态放置到手机托盘里面。显然,辅助定位机构的运用大大降低了手机位姿的不确定性,极大地减少了视觉处理的工作量,从而可以简化视觉系统软硬件配置,降低系统总成本。

2 图像识别算法

2.1 图像的预处理

2.1.1 图像裁剪

为识别手机姿态,需选择手机本身的特征目标作为识别对象,选择的原则是为了更好的获得每个图像的特征,选择的目标如图2所示。

图2 选择的目标

图像裁剪的目的是选择一组“少而精”的对分类有效的特征。如图2(c)中除了左边的有效目标外,还有右边的白色干扰目标,因此需要对图像进行裁剪。为了后续处理时不用考虑边缘像素,裁剪图形时以略大于包围有效目标最小矩形的矩形对采集图像进行裁剪,裁剪后的图像如图3所示。

为研究测试整体光照条件变化时该图像识别算法的有效性,采集了11组非极端光照下不同光照情况下的手机裁剪图片,图3所示是其中一组。这里所述极端情况是指超低照度和超高照度,这种情况在工业现场几乎不可能出现。

图3 裁剪后图像

2.1.2 两次中值滤波和灰度变换

图像噪声会使图像模糊,甚至淹没图像特征,从而使图像识别无法进行。因此,先要对图像进行滤波,消除干扰噪声信号。本文采用中值滤波,它能在滤除噪声的同时很好的保持图像边缘。实验发现,一次中值滤波后,图像中存在的突变点在很大程度上被消除了。但是,较高光照下的采集图像经过一次中值滤波后就进行灰度变换,发现由于干扰信号去除不够彻底导致灰度变换达不到要求,因此需再进行一次中值滤波。测试显示,所有采集图片经两次中值滤波后,后续处理效果都能满足要求了。

实验发现,采集图像经两次中值滤波后的直方图显示图像像素灰度只在某一灰度范围出现,这将使阈值分割非常容易出现失效,而且图像对比度不高,图像包含信息少。因此,采用线性变换的方法将像素灰度范围扩展到0~255之间以利于阈值分割等操作。

2.2 阈值分割

阈值分割的关键是确定合适的阈值。当然,确定阈值的原则只有一个,就是为了从背景中恰当的提取出目标[6]。

2.2.1 图像特征

在确定阈值之前,首先对四种手机姿态下各图像的直方图进行了分析,结果发现图像的灰度分布呈现两种情况,一种是图像背景低灰度值像素集中于低照度范围,而目标像素与背景像素相比较少;另一种是图像灰度值并不集中于某一区域,而是在各个范围内都有分布。

根据直方图呈现的两种情况,为方便阈值计算,研究了图像中灰度值出现次数最多的灰度值和所有像素的灰度值均值。采集的4种姿态11组图像除去边缘像素以外出现次数最多的灰度值 (maxcount)和灰度均值 (average)如表1所示。

表1 四种姿态图像的特征

2.2.2 阈值确定准则

确定阈值的方法很多,本文根据图像具体特性进行阈值选取。在选取阈值时采用线性运算,线性运算完全满足要求。

对于直方图呈现的第一种情况,多数像素灰度分布在低灰度区域,于是考虑将maxcount做线性运算作为阈值,这样就可将大部分背景置为0,余下的就是目标。不过经分析发现,在第一种情况中,maxcount和average非常接近,为了简化计算算法,可直接用average做线性运算作为阈值。而对于第二种情况,显然用与maxcount相关的函数值来选取阈值并不恰当,于是直接用average做线性运算来选取阈值。结论是,无论属于哪种情况,都用average做线性运算作为分割的阈值。

试验中发现,在0~255整个区域内实行单一的线性运算是不合适的,例如选取阈值时,对表1中所有的图像进行阈值分割是合适的,但是如果在实际情况中出现average为135时,阈值,显然在运算时会溢出,从而不能有效分割图像。

经进一步试验,最后采用分段方式确定了决定阈值的准则:

当average<50,阈值T用式 (1)计算。

当average>=50,阈值T用式 (2)计算。

该分段线性阈值分割准则能满足特征识别的要求。图4、图5、图6、图7分别是手机四种状态下average<50和average>=50情况下分割结果的一个例子。虽然图像边缘像素未经过直方图变换处理,但根据图像裁剪时的设定可知图像边缘与目标之间的距离较大,这里直接将边缘像素灰度置0,其并不影响结果。

式 (1)和式 (2)均是根据本文具体研究对象在正常光照环境下经过多次试验归纳出来的最佳结果,由于其涵盖了文中所述的多种情况,因此对其他对象也具有一定的适应性。如果应用对象过于复杂,则可通过调整式中的参数或average分段点的值以适应新对象,也可通过增加average分段即增加阈值判断的式子去适应新情况,具体如何调整则依据对象在正常光照环境下average的分布情况。

2.3 中值滤波和区域标记

图像经过直方图变换后进行的分割可能出现很多微小的目标区域,目标数目甚至会超过255个,这会对区域标记造成严重影响。因此,区域标记前对阈值分割后的图像进行一次中值滤波,以滤去图像中微小的无效目标。

区域标记[7]是对目标区域进行区分常采用的方式,本文采用一种基于区域生长的快速连通区域标记算法[8]进行区域标记。该方法的特点是在一次图像扫描中完成所有连通区域的标记,而且该方法不受所标记的图形形状的影响,能够对各种形状的区域进行标记处理。为计算简便,所有连通区域标记算法均采用4连通区域准则。

2.4 图像识别

图像特征是识别图像的根本依据[910]。本算法先采用面积特征找到面积最大的一个或两个目标,再采用其位置特征作为识别的依据。

从图6中可以看到,部分图像可能存在多个目标区域,造成识别困难,这里选取目标区域中面积最大的目标,因为这个目标才是图像中最能反应手机方位的最重要依据。但在图4(a)中,目标被割裂成两个小目标。所以并不能只选择面积最大的一个目标来识别图像,而是需要选择面积最大的两个主要目标作为图像的主要特征,这里分别称之为第一目标和第二目标。

图4 AC分割结果

图5 AD分割结果

图6 BC分割结果

图7 BD分割结果

表2是所采集11组图像中AC姿态时选择的目标特征,其中 sumx、sumy、ultraxl、ultraxr、ultrayu、ultrayd 的含义如下。

如果图像中只有一个有效目标,sumx和sumy分别表示该目标区域的质心x坐标和y坐标;如果图像中存在两个有效目标,sumx和sumy分别表示两个目标区域的质心x坐标和y坐标。

ultraxl、ultraxr、ultrayu、ultrayd分别表示第一目标的最小的x方向坐标、最大的x方向坐标、最小的y方向坐标、最大的y方向坐标。

表2 AC目标特征值

采用同样的方法计算AD、BC和BD姿态的目标特征值。然后对比AC、AD、BC和BD各姿态的目标特征值,发现不同光照下各组图像特征值之间的差值总体变化很小,只有AC的ultraxr特征值和BC的ultrayu特征值存在一个较大的跳变,其他各特征值的变化范围均不超过10。因此,考虑以差值变化范围小的特征值来确定图像识别的准则,首先计算各特征的平均值,如表3所示,其中的空单元格表示该特征值变化较大,不用其作为判别准则。

表3 各目标特征均值

AC、AD与BC、BD的sumx差别较大,所以可确定一个值M来确定图像属于AC、AD或是BC、BD。因AC、AD与BC、BD的sumx距离较远,故直接取其均值为M,即M=(59+36+258+227)/4=145。

在区别AC、AD时,其各特征区别并不是很大,但ultrayd-ultrayu的值却相差很大。

对于 AC,ultrayd-ultrayu=122-91=31。

对于 AD,ultrayd-ultrayu=152-58=94。

这里取AC和AD二者的均值来区别AC、AD并取之为N,即N=(31+94)/2=63。

在区别 BC、BD时,其各特征区别也不是很大,但ultraxr-ultraxl的值却相差很大。

对于 BC,ultraxr-ultraxl=274-244=30。

对于 BD,ultraxr-ultraxl=290-164=126。

于是取BC和BD二者均值来区别BC、BD并取之为Q,即Q=(30+126)/2=78。因此,图像识别的流程如图8所示。

图8 图像识别流程图

3 实验及结果分析

实验所用摄像头为普通视频聊天摄像头。根据市场价格计算,采用辅助定位机构+普通摄像头+低自由度机械手的识别方法相对于采用高端摄像头+多自由度机械手的方法在成本上至少降低50%以上。

在VC中的测试结果显示,采集的11组44张典型图片全部正确识别,但该识别算法本就来自于这些图片,所以该结果并不能证明算法完全正确。因此,又采集了4张普通光照下的图片来验证算法的适应性,实验过程如下:

1)将实验设备随机移动到一个新的室内环境;

2)用同型号的手机作为实验对象,AC、AD、BC和BD等4种姿态各拍摄一张图片;

3)将4张图片依次导入编制的VC程序进行测试。

采集的4张图像和处理的结果如图9所示。显然,新环境下拍摄的图像的处理结果也完全正确,这证明了在普通光照下该算法的适应性是很好的。

4 结论

本文以手机整机检测流水线上用机械手替代人工操作时手机位姿的识别为对象,提出了一种基于辅助定位机构的视觉识别方法,并介绍了基于该方法的系统组成和关键子系统的功能。然后通过对非极端光照条件下采集的不同光照下的11组共44张手机图像进行研究分析,给出了适应性很好的阈值分割准则和特征识别算法,并完成了对图像的识别。最后,以普通视频聊天摄像头为实验设备采集了一组共4张普通光照下的图片进了算法适应性验证。实验结果证明:在非极端光照且光源环境基本稳定的情况下,所提图像处理算法是完全正确的,该视觉方法能够稳定可靠地实现手机位姿识别。为避免工作现场几乎不可能出现的极端光照情况影响算法的稳定性,采用遮光罩将环境光源进行隔离,在遮光罩里面安装固定光源。根据该方法提出的实际环境,该方法可以广泛应用于类手机形状产品的生产线上。

图9 采集的图像及识别结果

猜你喜欢

机械手灰度光照
肉种鸡的光照不应性对养殖生产的不良影响分析
采用改进导重法的拓扑结构灰度单元过滤技术
基于机器视觉的开关操纵机械手研究
天津港智慧工作平台灰度发布系统和流程设计
Bp-MRI灰度直方图在鉴别移行带前列腺癌与良性前列腺增生中的应用价值
Arduino小车巡线程序的灰度阈值优化方案
人体体感感知机械手设计与实现
隐蔽的力量
拆弹帮手
基于单片机控制机械的压铸机械手优化设计