一种快速的机器人固定视觉标定方法
2018-11-12谢丰隆韩建海李向攀
谢丰隆,韩建海,李向攀
1 引言
随着我国工业的发展,工业机器人的使用不断普及,基于视觉的应用是工业机器人应用的一个重要的方向,一般情况下,基于视觉的机器人系统可根据相机安装位置的不同分为固定视觉系统和“手-眼”视觉系统[3-5]。基于视觉的应用点之一就是传送带分拣作业。由于并联机器人具有高速和高精度的特点,在分拣作业中,大部分采用并联机器人[6]。但并联机器人在实际作业中会有一定的局限性,最显著的问题在于活动范围小。相对而言,六自由度串联型机器人具有更大的活动范围,对物体抓取时的角度和位置也可以更加灵活。
机器视觉在实际的应用中,首先要解决的问题就是怎样将工业相机中图像的坐标系与机器人的坐标系建立起联系,这一过程称为视觉标定[7-8]。首先介绍了基于视觉的工业机器人零件分拣系统和一种简单的视觉标定方法,可以在机器人保持现有坐标系不变的情况下,实现了工业相机坐标系的标定。然后设计了验证实验,测量了标定后相机坐标系的实际精度,从数字的角度反映了标定方法的可行性。最后通过零件的实际抓取试验,从实际应用的角度证明了该算法的可行性。
2 基于视觉工业机器人零件分拣系统
整个系统由广州数控设备有限公司的GR-C型六自由度工业机器人、气动机械手、大恒USB2.0工业相机、传送带、佳乐PC-50CNT20R光电开关和计算机组成,如图1所示。
图1 工业机器人零件分拣系统Fig.1 Parts Sorting System of the Industrial Robot
传送带自左向右移动,当传送带上的零件触发光电开关时,光电开关将信号送至机器人,机器人控制传送带停止,并触发工业相机进行拍照,工业相机将拍得照片送至计算机,计算机通过图像处理计算出工件中心坐标与判定结果并发送给机器人,机器人收到结果后执行相应的零件分拣动作。
若要实现基于视觉的机器人零件分拣控制,首先要根据相机拍得的图像信息计算出实际物体的几何特征和位置关系。可根据经典的针孔摄像机模型理论,建立相应数学模型,并解出其中的未知参数,即可将数字图像还原到现实坐标系[9]。通过一些已知条件,结合一定的实验与计算获得这些参数的过程称为视觉标定。
3 小孔摄像机模型及其简化
小孔摄像机模型理论中包含了4个基本坐标系:世界坐标系Ow-XwYwZw;相机坐标系Oc-XcYcZc;图像物理坐标系o-xy和图像像素坐标系o-uv。要将世界坐标系下的坐标转化至图像像素坐标系,需要经历刚体变换、透视投影和图像离散化这三步[1-2]。接下来将介绍如何对三个过程简化,来实现机器视觉的快速标定。
图2 世界坐标Ow、摄像机坐标Oc和投影坐标o-xyFig.2 World Coordinate Ow,Camera Coordinates Oc and Projection Coordinates o-xy
3.1 刚体变换以及其简化
首先要通过刚体变换,将世界坐标系Ow-XwYwZw通过一定的平移与旋转,最终转化为相机坐标系Oc-XcYcZc。其数学表达式为:
可简记为Oc=ROw+T,式中:T—世界坐标的平移变换;R—世界坐标的旋转变换。转换为齐次坐标表示,可记为:
其中,R可分解为绕XW轴旋转α、绕YW轴旋转β和绕ZW轴旋转γ,即:
在本实验的视觉系统中,取机器人坐标系为世界坐标系,而相机在安装时的光轴ZC与机器人ZW轴方向大致平行,即刚体变换中绕X轴旋转的角度α和绕Y轴旋转的角度β非常小,对于2D平面标定,可忽略小角度α和β带来的影响,将α=0和β=0代入,可得:
3.2 透视投影
即实际物体通过相机镜头后,最终会投影到成像平面上,由于凸透镜要成清晰的实像,像距须和焦距f相等,根据相似三角形关系,该过程可以有如下的数学表达式:
3.3 图像离散化
相机投影平面获得投影后,要想将物理图像转化为数据传送计算机,还要进行图像离散化,从物理坐标系o-xy转化至图像坐标系o-uv。在投影平面上均匀分布有传感器阵列,图像投影到投影平面时,阵列上的每个传感器就可获得其对应区域的灰度值(黑白)或RGB强度值(彩色),即像素点,这一过程叫做图像的离散化,数学表达式为:
式中:dx—单位像素在x方向上的物理尺寸;dy—单位像素在y方向上的物理尺寸。最后将(1)(2)(3)相乘,可得图像坐标与世界坐标转换关系:
3.4 矩阵简化
在该零件分拣系统中,由于被分拣零件最大高度远小于竖直平移坐标TZ,可近似认为零件高度恒为0,所以只关心物体在世界坐标系下的XW和YW坐标,去掉ZW坐标,再令k1=fdx、k2=
3.5 计算角度γ
为方便视觉标定,该实验设计了圆形点阵加十字线的标定板,如图3所示。
图3 带十字的圆形标定板Fig.3 Circular Calibration Board with Cross
每个圆的半径为R=15mm,相邻两圆的圆心距D=45mm,在标定板的中心,画有一个十字,十字中心相对与其周围圆心距离为45mm,取机器人坐标系为世界坐标系。
在需要求解的5个参数中,只有先求出刚体变换中世界坐标系绕ZW轴的转角γ,才方便下一步的进行。γ可简化为最终图像的u(v)轴相对世界坐标系的XW(YW)轴的夹角,只需求出图像中标定板的转角,取反即可得到转角γ。对图像进行一定预处理并进行霍夫变换,即可获得一组霍夫圆,对4条边界上的各个圆心分别使用线性拟合,即可获得4条拟合线,对4条线相对水平或垂直坐标轴的旋转角度取平均值,得到转角为-0.27°,取反可得旋转角度γ=0.27°。
图4 圆提取结果Fig.4 Extraction Results of the Circle
3.6 计算参数 k1、k2、b1、b2
获得γ后将图像以γ角度对图像进行旋转,旋转后的图像坐标系u、v两坐标轴就与机器人坐标系的XW、YW两坐标轴重合。此时可通过图像处理获得十字中心的图像坐标(u0,v0),可通过机器人夹持标定针运动到十字上方,读取十字实际坐标(X0,Y0)。最终得到 u0=413,v0=781,X0=830.25mm,Y0=-447.92mm。
再次进行霍夫变换,对获得的圆的半径取平均值,记为R¯,根据十字中心位置(u0,v0)和R¯,即可将图像划分为M×N个边长为3 R¯的方格,如图5所示。若方格中包含有圆,可计算出该圆圆心在图像坐标系下的坐标(un,vn)和在世界坐标系下的坐标(Xn,Yn)。
图5 区域划分Fig.5 Regional Division
遍历图像中所有方格,即可获得34对图像坐标与世界坐标关系。对X-u和Y-v坐标进行线性拟合,可获得剩下4个未知量k1=2.2845,k2=2.2882,b1=-1587.1,b2=1699.6。
4 标定结果验证实验
4.1 误差计算实验
将带有一组十字的标定板置于工业相机下方进行拍照,根据之前的标定结果,可计算图像中各个十字中心在世界坐标系下的坐标。
之后使用机器人气爪夹持标定针分别移动到每个十字的正上方,如图6所示。从示教盒中可测出世界坐标系下的实际坐标,并计算出误差值,如表1所示。
从最终的验证结果来看,测得Y向的标定最大误差为-0.58,而X向的最大误差为0.61。经分析,误差的主要来自于四个方面:(1)忽略了相机镜头径向和切向畸变;(2)相机距离物体较远,导致像素精度下降;(3)对图像的平滑处理对精度造成了影响;(4)标定针位置是否准确通过人眼直接观测与微调,不可避免会产生误差。
图6 气动手夹持标定针Fig.6 Pneumatic Clamp Calibration Pin
表1 利用标定结果计算的世界坐标与实际测得的世界坐标关系Tab.1 The World Coordinate Using the Calibration Results to Calculate and the World Coordinate Measured Actually
4.2 标定结果在实际分拣中的验证
为验证结果的可行性,以圆环为零件分拣对象,并设计了相应的上位机软件与机器人和相机进行配合实现零件分拣。具体的实验过程,如图7所示。在获得图像后,软件会通过图像二值化和轮廓提取,获得目标的轮廓与形心,之后通过刚刚的标定结果,计算出目标在世界坐标系坐标,并将坐标发送给机器人,机器人获得坐标后运动到物体位置并执行抓取动作。
经过多次的分拣实验验证,该标定结果能够满足对圆环的抓取需要,可以用在实际的工业机器人分拣系统中。
图7 机器人根据坐标抓取的实验图Fig.7 Experiment Diagram Robot Grasping According to Coordinate
5 总结
为降低标定难度,同时能够满足工业分拣需要,提出了一种简化的标定算法,只需要一张标定板和一个标定针,并操作机器人运动到一个位置,即可获得简化模型中的所有参数。通过测量误差和实际抓取实验,验证了参数的准确性,这在实际的生产生活中具有一定的应用价值。但该标定方法的精度还有待提高,且只能用于2D分拣系统,在后期将对这两方面问题进行研究,从而使快速标定能够获得更加广泛的应用。