基于机器视觉的码垛机器人系统研究*

2014-07-18 11:56刘振宇李中生
组合机床与自动化加工技术 2014年4期
关键词:码垛高斯尺度

刘振宇,李中生,2,,张 涛,赵 雪

(1.沈阳工业大学 信息科学与工程学院,沈阳110870;2.空军驻沈阳地区军事代表室,沈阳110016;3.新松机器人自动化股份有限公司,沈阳 110168;4.沈阳防锈包装材料有限责任公司,沈阳110084)

基于机器视觉的码垛机器人系统研究*

刘振宇1,李中生1,2,3,张 涛3,赵 雪4

(1.沈阳工业大学 信息科学与工程学院,沈阳110870;2.空军驻沈阳地区军事代表室,沈阳110016;3.新松机器人自动化股份有限公司,沈阳 110168;4.沈阳防锈包装材料有限责任公司,沈阳110084)

文章针对传统码垛机器人作业时存在的不足,从视觉的角度研究了相关技术难点,为实现生产自动化提供了解决方案。文章完成了基于机器视觉的码垛机器人系统平台的搭建,首先通过摄像机对传送带上进入工作区的工件进行图像采集,然后对图像处理分析,接着用不变矩对工件进行粗略快速识别,之后用SIFT算法对工件进行局部特征匹配,最后通过中心矩计算出工件的位置,引导机器人对工件进行抓取,机器人对抓取后的工件进行分类码垛。同时,文中还提出了多目标分块处理算法、SIFT和HU特征融合的单目视觉识别算法。实验结果表明,该码垛系统可以有效解决工件的分类码垛的问题。

机器人; 机器视觉;码垛;SIFT特征;图像处理;

0 引言

伴随着物流产业的飞速发展,国内外码垛技术实现了跨越式的进步。早期的人工码垛,负载量低,吞吐量小,劳动成本高,搬运效率低,不能够满足自动化生产的需求,在工业生产中,普遍用于自动化生产中的码垛机器人实质上是一种普通的工业搬运机器人,主要负责执行装载和卸载的任务,且一般都采用示教的方法,预先设定好抓起点和摆放点。这种工作方式不能够对生产线的情况分析判断,如不能够区分工件大小,不能够判断工件是否合格,不能够对工件进行分拣,而只是被动的搬运,适应性极差。

机器视觉技术指用摄像机来模拟人眼的视觉功能来对客观事物进行测量和判断。视觉技术在工业中得到了越来越广泛的应用,对提高生产效率,达到生产智能化的目的起着至关重要的作用[1]。而将机器视觉与码垛机器人结合起来,使之具有人眼识别功能,对于保证产品质量、降低劳动成本、优化作业布局、提高生产效率、增长经济效益、实现生产的自动化等方面具有十分重要的意义。

工件的识别与定位是机器人抓取码垛的前提和基础,其识别和定位的正确与否直接影响到后续操作结果的准确性。基于机器视觉技术识别算法研究已经从最初的实验室逐渐走向实际应用阶段。例如,Zhu Junchao等研究了相关视觉处理算法,提出了一种区分行人和车辆的识别算法[2]。Wen Ying等人提出一种提出了一个新颖的阴影去除技术和字符识别算法,该算法应用于智能交通系统的车牌识别[3]。Xie F等人提出了一种改进型细化算法,该算法应用于人体姿势识别系统[4]。Noor A等介绍了一种对指纹模板形成和匹配的自动识别算法,该算法保持了很高的精度误差错误率不到3.5%[5]。

本文搭建立了基于视觉的码垛系统试验平台,同时研究了相关的图像处理算法,提出了多目标分块处理算法、基于SIFT和HU特征融合的单目视觉识别算法,两者结合可以有效解决工件的识别问题。

1 码垛机器人系统平台构成

本文以新松六自由度机械臂SRH6工业机器人为基础,搭建了如图1所示的基于机器视觉的码垛机器人系统平台。该实验平台主要由工件放置模块、摄像机模块、视觉分拣模块、机器人RC控制模块和机器人码垛模块等五大模块组成。

图1 基于机器视觉的码垛机器人系统实验平台

工件放置模块由工件、传送带、工件放置台组成。工件如图2所示为两种牛奶盒,左边为真果粒牛奶盒,尺寸: 14cm×5 cm×4 cm (长×宽×高);右边为优酸乳牛奶盒,尺寸:10.5 cm×6 cm×4 cm(长×宽×高)。选用黑色的传送带有助于与工件的颜色形成反差,便于从图像中提取出目标,方便于算法的实现。工件放置台用于对工件进行码垛放置使用。

图2 码垛所使用的工件

摄像机模块主要由GM1400千兆以太网工业相机、摄像机支架和光源组成。悬挂在支架上的工业相机的作用是获取试验台上进入工作区的工件图像。光源采用白色LED面式光源,为相机采集图像提供照明,其固定在工件的上方,用来消除工件自身的阴影。

视觉分拣模块由PC机和视觉软件组成。主要是由视觉系统对工业相机采集的图像进行处理,识别出目标种类,计算出工件的质心坐标。再根据图像坐标系和物体坐标系的关系,计算出目标的空间位置,之后将信息参数传入控制柜。

机器人RC控制模块主要由示教盒、控制柜和RC控制器组成。示教盒:对机器人进行参数的初始化设置和机器人位姿的控制。机器人控制柜:与计算机相连,接受来自计算机的数据并控制工业机器人执行指定的动作,负责对参数进行分析,然后对机器人进行相关的操作。

机械人码垛模块主要由机械臂和吸盘组成。机械臂:完成控制器对电机的相关运动,以方便控制机械手作业。吸盘:采用真空吸盘来完成对目标的抓取和码垛工作。

2 码垛实现流程

基于机器视觉的码垛机器人系统的图像处理流程如图3所示,整个分拣流程从视觉算法上分为四个部分:图像预处理、目标识别、目标定位、分拣抓取。①图像预处理:将图像按照目标分块进行处理,可以提高识别速率。②目标识别:首先采用Hu不变矩提取全局特征,进行粗略识别,然后采用SIFT算法进行更准确局部特征匹配。③目标定位:首先首先求取多凸目标轮廓上的角点,然后用中心矩求取质心坐标。④码垛抓取:将工件目标质心坐标和外接矩形轮廓特征通过RS232发送特征信息给机器人控制柜,从而控制机器人的吸盘机械手进行抓取码垛操作。

图3 视觉算法流程图

2.1 摄像机标定

机器视觉中CCD摄像头的作用是采集目标图像,摄像头选用DALAS公司生产的GM1400千兆以太网工业相机。相机内参数为:焦距:4.2864 mm;精度:1.3020mm/像素(长)、精度:0.9765mm/像素(宽);焦距:5mm;精度:1.116mm/像素。为了方便计算,可以近似认为1像素为1mm。

摄像机标定是视觉系统开发的关键步骤,它的基本任务就是通过对从摄像机采集到的图像进行处理,以获得三维空间中物体的几何信息,并由此重建和识别物体[6],是机器视觉在工业分拣生产线上得以应用的一个必要前提。摄像机标定的目的是建立各相关坐标系,获得空间点在图像坐标系和空间坐标系下的对应关系[7]。针孔模型是摄像机模型中最简单的模型,本分拣系统以小孔成像为标定算法的模型,采用了张正友标定法。只需要拍摄2张相片,并根据图像点之间对应关系即可标定出摄像机内参数与外参数[8]。如图4所示,为了提高摄像机标定的精度,本文采用7张相片作为标定模板。摄像机标定是分拣系统跟踪和抓取目标的前提,为后续抓取工作提供了基础保证。

图4 摄像机标定图

标定结果:摄像机内参数fx=2241.1510,fy=2213.0495,u0=681.86539,v0=478.60121;摄像机畸变参数k1=0.053131,k2=0.944376,p1=0.001223,p2=0.00131。对实验数据进行误差分析,如表1所示。

表1 标定误差分析(单位为像素)

2.2 多目标分块

图5 工件的外围矩形

在图像处理中,一般的算法都是把一张图像作为整体来研究,每次对图像处理分析都要扫描整个图像。本文采用多目标分块处理,把一副图像分割为基于N个目标的不同目标块BlockN(i,j)。这样可以在处理目标图像时,只针对目标块这一小部分,有效的减小算法处理时间。如图5所示,将多目标工件按照分块进行处理。每个目标工件都有外围矩形将每个目标都分开。

2.3 特征识别

2.3.1 Hu不变矩

矩的定义源于概率理论,是一种重要的数字特征,同时也具有直观的物体意义[9]。Hu不变矩是1962年Hu最早提出的二维不变矩理论,是提取图像平移、大小、旋转情况等形态特征的方法[10]。图像匹配实质是根据已知图像特征从目标待测图像中寻找相同图像特征的过程[11]。本文使用Hu不变矩来提取三维物体的特征信息。

对于一幅大小为M×N的图像I(i,j),其(p+q)阶矩为:

(1)

为了保证在图像平移、缩放、旋转保持不变性,定义中心矩为:

(2)

中心距Upq反映了区域中的灰度相对于灰度重心是如何分布的度量。为了得到矩的不变特征,定义归一化的中心距为:

(3)

利用归一化的中心矩,可以获得利用式(3)中Upq表示的7个具有平移、比例和旋转不变性的矩不变量。

φ1=ν20+ν02

(4)

(5)

φ3=(ν30-3ν12)2+(3ν21-ν03)2

(6)

φ4=(ν30+ν12)2+(ν03+ν21)2

(7)

φ5=(ν30-3ν12)(ν30+ν12)[(ν30+ν12)2-3(ν03+ν21)2]

+(3ν21-ν03)(ν21+ν03)[3(ν30+ν12)2-(ν03+ν21)2]

(8)

φ6=(ν20-ν02)[(ν30+ν12)2-(ν03+ν21)2]

+4ν11(ν30+ν12)(ν03+ν21)

(9)

φ7=(3ν21-ν03)(ν30+ν12)[(ν30+ν12)2-3(ν03+ν21)2]

+(3ν21-ν30)(ν21+ν03)[3(ν30+ν12)2-(ν21+ν03)2]

(10)

这七个不变矩称为Hu不变矩的七阶不变矩,在图像平移、约束缩放、旋转下具有不变性的。该全局特征反应了三维物体图像的整体信息。之后SIFT就可以根据三维目标的大致信息进行局部的特征提取匹配,有效加快了SIFT识别算法。

2.3.2SIFT目标识别

虽然全局特征反应了三维物体图像的整体信息,但是还需要在全局特征中更准确的进行特征匹配。SIFT(尺度不变特征转换)从尺度不变关键点中获取图像的特征[12-14]。SIFT算法是一种提取局部特征的算法,在尺度空间寻找极值点,提取位置、尺度、旋转不变量[15-16]。本文在SIFT算法基础上实现目标识别过程,并在搜索策略和剔除错误匹配上进行了改进,大大提高了实时性和鲁棒性。SIFT特征匹配算法主要包括两个阶段,第一个阶段是SIFT特征的生成;第二个阶段是SIFT特征向量的匹配。

SIFT特征的生成一般包括以下几个步骤:

(1)构建尺度空间,检测极值点,获得尺度不变性。高斯卷积核是实现尺度变换的唯一变换核,所以一幅二维图形尺度空间定义为:

(11)

其中,I(x,y)二维图像,G(x,y,σ) 为二维高斯函数,(x,y)为空间坐标。σ是尺度空间因子,值越小表示图像被平滑的越少,相应的尺度也就越小。大尺度对应于图像的概貌特征,小尺度对应于图像的细节特征。为了检测尺度空间的稳定的关键点,采用不同尺度的高斯差分核与图像卷积生来检测那些在局部位置的极值点。LOG算子的尺度归一化近似DOG算子为:

D(x,y,σ)=(G(x,y,kσ)-G(x,y,σ))*I(x,y)

=L(x,y,kσ)-L(x,y,σ)

(12)

DOG算子与尺度归一化的高斯拉普拉斯函数非常近似。构造D(x,y,σ)可以采用高斯金字塔的方法。如图6所示为构造的不同尺度的高斯图像。

图6 不同层尺度的高斯图像

首先采用不同尺度因子的高斯核对图像进行卷积以得到图像的不同尺度空间,将这一组图像作为金子塔图像的第一层。接着对第一层图像进行2倍尺度采样来得到金子塔图像的第二层中的第一幅图像,对该图像采用不同尺度因子的高斯核进行卷积,以获得金字塔图像中第二层的一组图像。再以金字塔图像中第二层中的图像进行2倍尺度采样来得到金字塔图像的第三层中的第一幅图像,对该图像采用不同尺度因子的高斯核进行卷积,以获得金字塔图像中第三层的一组图像。这样依次类推,从而获得了如图6所示的高斯图像。

对图6所示的不同尺度的高斯图像每一层相邻的高斯图像相减,就得到了如图7的高斯差分图像。因为高斯差分函数是归一化的高斯拉普拉斯函数的近似,所以可以从高斯差分结构中提取极值点作为候选特征点。对DOG尺度空间每个点与相邻尺度和相邻位置的点逐个进行比较,得到的局部极值位置即为特征点所处的位置和对应的尺度。

图7 高斯差分图像

(2)极值点的精确定位,删除边缘特征点得到关键点,并且确定关键点的位置和所处的尺度。如图8所示,计算图像相关点在每一尺度下DoG的响应值,与同尺度的8个相邻点和上下相邻尺度对应的9×2个点共26个点比较,如果该点值最大或者最小,则该点将作为一个局部极值点,记下它的位置和对应尺度。

图8 DoG尺度空间局部极值检测

利用Hessian矩阵H,过滤掉边缘处的低对比度特征点。也就是通过计算高斯差分算子的主曲率来滤除不稳定的边缘响应点,从而确立特征点,公式如下:

(13)

矩阵H的特征值与D的主曲率是成正比的,假设α是矩阵H较大的特征值,β是矩阵H较小的特征值,可以通过公式(14)和(15)计算出α、β的比例γ。

Tr(H)=Dxx+Dyy=α+β

(14)

Det(H)=DxxDyy-(Dxy)2=αβ

(15)

其中Tr(H)表示矩阵H的迹,Det(H)表示矩阵H行列式的值矩阵。令α=γβ,则有:

(16)

对γ取一阀值,当γ大于阀值时即作为边缘特征点删除。

(3)为特征点方向分配方向值,使用极值点邻域梯度的主方向作为关键点的方向特征,以实现算子对尺度和方向的无关性。利用特征点邻域像素的梯度方向分布特性为每个关键点指定方向参数,使算子具备旋转不变性。利用关键点邻域像素的梯度及方向分布的特性,可以得到梯度模值和方向如下:

m(x,y)=

(17)

θ(x,y)=

tan-1(L(x,y+1)-L(x,y-1)/L(x+1,y)-L(x-1,y))

(18)

在以关键点为中心的邻域窗口内采样,并用直方图统计邻域像素的梯度方向。如图9所示,为八个方向的直方图计算结果。梯度直方图的范围是0~360o,其中每10o一个方向,总共36个方向。

图9 八个方向的直方图计算结果

至此,图像的关键点已检测完毕,每个关键点有三个信息:位置、所处尺度、方向。

(4)关键点描述子生成。如图10所示,为由关键点邻域梯度信息生成特征向量。每个特征点使用4×4邻域内共16个种子点来描述,这样对于一个关键点就可以产生128个数据,最终形成128维的SIFT特征向量。此时SIFT特征向量已经去除了尺度变化、旋转等几何变形因素的影响,再将特征向量的长度归一化,则可以进一步去除光照变化的影响,从而精确描述特征点。

邻域梯度方向 关键点特征向量图10 由关键点邻域梯度信息生成特征向量

本文采用最近邻算法(NearestNeighbor-NN)配准,即采用样本特征点的最近邻特征点距离与次近邻特征点距离的比值来对特征点进行匹配。最近邻特征点是指目标图像中与模板图像特征点具有最短欧几里德距离的特征点。次近邻特征点是指具有比最近邻距离稍长的欧几里德距离的特征点。用最近邻与次近邻比值来进行特征点的匹配可以取得很好的效果 。其内容如下:

(1)采用欧式距离作为特征点间的相似性度量。

(2)采用优先K-D树近似BBF(Best-Bin-First)搜索算法行搜索来查找每个特征点的最近邻和次近邻特征点。K-D树搜索算法是二叉检索树的扩展,K-D树的每一层将空间分成两个,树的顶点结点按一维进行划分,下一层结点按照另一维进行划分,以此类推各个维循环往复。K-D树的实质就是一种数据结构,用于搜索高维最邻近点,同事也是一种二叉树,每个节点是一个高维向量。

(3)计算特征点到最近邻距离与次近邻距离的比值,若小于阈值T,则该特征点与最近邻特征点匹配成功。

(4)利用RANSAC随机抽样一致性算法去除错误匹配,提高鲁棒性。

根据NN算法对工件图像进行特征点的匹配,首先对两幅图像进行特征点集提取,然后设置最近邻距离与次近邻距离比值为0.6,其中检测出的两幅图像特征点分别为513和651个,匹配特征点结果为203对,如图11所示,匹配的特征点对之间用绿色直线相连。

图11 SIFT对工件匹配结果

2.4 几何中心计算

在工件的码垛操作中,首先要对工件进行抓取,即要知道工件的质心坐标,一般来说对物体的几何中心计算,都是背景下有单一目标,不能进行多目标的几何中心计算。本文提出了一种多目标物体的质心计算快速方法。首先利用多目标分块处理的结果,保存下外接矩形的四个顶点坐标:

(19)

然后针对每单一目标的外接矩形的所有角点求取x轴向坐标值的最小坐标值、最大坐标值;y轴向坐标的最小坐标值、最大坐标值。

(20)

然后分别对于目标进行求取质心。求取工件的质心过程采用图像的中心矩来计算。

(21)

(22)

(23)

图12 工件质心

2.5 抓取码垛

拍摄运动物体的时候,拍摄目标与摄像系统之间存在相对运动极易形成拖影。对于尺寸测量的项目,拖影对测量精度会有严重影响,在这种情况下,就会要求拖影长度尽可能短,本实验要求拖影不超过1/3像素。在硬件固定的情况下,直接影响拖影长度的参数是物体的运动速度和曝光时间。一般情况下由下式就可以保证:

物体运动速度Vp×曝光时间Ts<允许最长拖影s单位系统精度

根据选取的相机曝光时间为22μs到1000ms和确定的测量精度为0.9375mm/像素,可以得到物体的运动速度Vp,即传送带Vmax为42.613 m/s。结合实际情况,设定传送带速度0.3m/s。

得到工件的质心坐标后,将其通过RS232传送至控制柜,从而引导机器人机械手进行抓取。

通过识别出的特征信息,来匹配工件的种类,其中工件的高度已知,机器人根据不同工件类型进行不同位置的码垛,如图所示:

放置台尺寸:120cm×100cm(长×宽)

码垛类型:5×3×3(长×宽×高)。

码垛方式如图13所示采用逐层码垛。

图13 码垛类型

3 实验结果

根据工件的质心坐标,机器人控制吸盘机械手能够精准的抓取物体,能够顺利的将物体分类码垛,实验效果如图14所示。本方法能够对奶盒、纸箱、木块等纹理性较强的物料进行分拣码垛。在实验中,工件正确识别率达到98.65%,抓取成功率达到99.23%,定位误差小于1.5mm,码垛误差小于2mm。实验表明该方法鲁棒性好,速度较快,抓取成功率高。

(a)

(b)

(c)

4 结束语

本文搭建了基于机器视觉的码垛机器人系统实验平台,并详细介绍了所使用的主要算法,首先采用目标分块的方法减少后续识别算法的大范围扫描所带来的识别时间上的浪费。其次采用图像几何不变矩对工件图像进行快速粗略检测,大大提高了识别效率,最后运用SIFT特征对局部特征进行识别匹配。运用中心矩计算工件质心坐标,以引导机器人准确的完成抓取工作,抓取后对工件进行分类码垛,实验结果算法有很好的鲁棒性,为工业自动化生产提供了方法。

[1]李婷,柳宁. 基于机器视觉的圆定位技术研究[J]. 计算机工程与应用, 2012(9):153-156.

[2]Junchao Zhu, Jie Zhou, Baofeng Zhang.Research on moving human and vehicle's recognition algorithm [C].Qinhuangdao: ICCDA,2010.

[3]Ying Wen, Yue Lu, Jingqi Yan, et al.An Algorithm for License Plate Recognition Applied to Intelligent Transportation System[J].IEEE Intelligent Transportation Systems Society,2011, 13(3): 830-845.

[4]Xie F, Xu G, Cheng Y, et al.Human body and posture recognition system based on an improved thinning algorithm [J].Institution of Engineering and Technology,2011, 5(5): 420-428.

[5]Noor A, Manivanan N, Balachandran W.Transformation invariant algorithm for automatic fingerprint recognition [J].Institution of Engineering and Technology,2012, 48(14): 834-835.

[6]陈天飞,马孜,李鹏。一种基于非量测畸变校正的摄像机标定方法[J]. 控制与决策控制与决策,2012,27(2):243-246,251

[7]Zheng you Zhang. A Flexible New Technique for Camera Calibration[J]. IEEE Transactions On Pattern Analysis And Machine Intelligence, 2000, 22(11):1330—1334.

[8]Elsayed E.Hemayed. A Survey of Camera Self—Calibration[J]. Proceedings of the IEEE Conference on Advanced Video and Signal Based Surveillance, 2003.

[9]张伟,何金国. Hu不变矩的构造与推广[J].计算机应用, 2010, 30(9): 2449-2452.

[10]田秋红, 孙政荣. 基于Hu不变矩和BP网络的条形码图像识别方法[J].计算机工程与设计, 2012, 33(4): 1563-1568.

[11] 王洪涛,丁国清. 基于不变矩图像匹配的工件种类判别应用研究[J].制造业自动化, 2012, 34(1): 141-144.

[12] 熊英,马惠敏.3维物体SIFT特征的提取与应用[J].中国图象图形学报,2010, 15(5): 814-819.

[13] 刘立,万亚平,刘朝晖,等.基于SIFT匹配算法的移动机器人单目视觉定位研究[J].系统仿真学报,2012, 24(9): 1-4.

[14] 朱飞,王兴起.基于SIFT算法的体育类图像分类与应用研究[J].计算机应用与软件,2011, 28(10): 231-234.

[15] 董蓉, 李勃, 陈启美. 基于SIFT特征的目标多自由度mean-shift跟踪算法[J].控制与决策, 2012, 27(3): 399-407.

[16] 息朝健, 郭三学. 基于简化Forstner算子改进的SIFT无人机图像识别算法[J].计算机应用与软件, 2012, 29(5): 254-300.

(编辑 赵蓉)

Research of Palletizing Technology Based on Industrial Robot of Machine Vision

LIU Zhen-yu1,LI Zhong-sheng1, 2, 3,ZHANG Tao3,ZHAO Xue4

(1.Information Science and Engineering School, Shenyang University of Technology, Shenyang 110870, China;2.Airforce Military Representative Office Resident in Shenyang Region, Shenyang 110016, China)

For the existing palletizing workpieces problems in the industrial production lines, this paper has discussed the technical difficulties in visual perspective and providing a solution to realize automation. Firstly, this paper built the grasping intelligently platform on the industrial production line. Firstly, the experimental system using the industrial camera which on the production line acquired pictures of workpieces that placed on the platform, next preprocessed the digital image and distinguished the models quickly by moment invariants, then recognized the workpieces by sift, later calculated the geometric center coordinates of the model and guided the manipulator to sort the models,finally the robot placed the workpieces regularly. Experimental shows that the palletizing system can effectively solve the placements of workpieces.

robot; machine vision; palletize; sift ; image processing;

1001-2265(2014)04-0009-06

10.13462/j.cnki.mmtamt.2014.04.003

2013-07-10

国家高技术研究发展863计划:机器人模块化技术的典型行业应用示范(2012AA041405);沈阳市工业科技攻关项目:工业机器人智能化关键技术研究(F12-010-2-00)

刘振宇(1973—),男,辽宁复县人, 沈阳工业大学副教授,博士,主要研究方向为视觉伺服及离线编程,(E-mail)Liu_zhenyu0419@sina.com。

TH264;TG65

A

猜你喜欢
码垛高斯尺度
可控机构式码垛机器人的运动学误差分析
财产的五大尺度和五重应对
移动式码垛机器人移动臂的优化设计
GSK工业机器人码垛程序编写技巧
数学王子高斯
天才数学家——高斯
宇宙的尺度
从自卑到自信 瑞恩·高斯林
9
机器人码垛输送系统改造