基于单目视觉的工业机器人定位系统的设计

2015-04-25 01:44李星云李众立廖晓波
机床与液压 2015年9期
关键词:单目像素点坐标系

李星云,李众立,廖晓波

(西南科技大学制造科学与工程学院,四川绵阳621010)

0 前言

视觉定位技术是机器人领域的一个重要研究方向[1],它综合运用了机械学、电子学、光学、图像处理等学科,将其应用到工业生产中,可以对目标尺寸和位姿进行测量,具有非接触、速度快、柔性好等优点,在现代制造行业中具有非常广泛的应用前景。G PENG[2]介绍了视觉技术的关键问题,实现了对目标的定位。但该方法的缺点是利用单个特征点进行测量,容错率较低;沈慧杰[3]建立了单目视觉测距的模型,但是要通过设置在场地上特征点与摄像机之间构成三角关系后求出坐标,加大了运算量。周娜[4]建立了基于平面模板的摄像机定位方法,但为了获得图像间以及模板与图像之间对应点的匹配,需要人为干预,不能实现实时定位。

单目视觉定位在理论上有很多的研究,但图像处理主要是在计算机上进行,所以集成性较低,成本较高。论文从实际生产情况出发,提出了一种在嵌入式平台上的单目视觉定位方法,选用S3C2440 微处理器和OV3640 图像传感器,以工件为目标,设计出一套集成高,计算快,测量准确的单目定位系统。

1 单目视觉定位系统的组成

1.1 静态图像采集平台

图1 静态图像采集平台结构

为了保证目标的空间位置和姿态准确测量,测量模块要固定在目标的正上方,并且镜头的光轴与地面垂直[5]。定位系统的静态图像采集平台结构如图1 所示。其中f 为摄像机焦距,r 为视场角,c 为测量模块,1 为光源。

1.2 测量模块

为了提高测量精度和计算速度,应选择计算速度快的微处理器以及像素高的图像传感器[6]

(1)微处理器的选择

微处理器选择的是三星公司生产的一款高性能、低功耗、体积小的S3C2440[7]处理芯片。由于该处理芯片有一个专用的Camera-Interface (CAMIF)接口,该接口支持YCrCb8 位的数字视频接口标准,并且无需接口转换电路,便可以和图像传感器直接连接使用。

(2)图像传感器的选择

图像传感器选择的是OV 公司生产的300W 像素的CMOS 传感器OV3640[8]。该芯片在QXGA (2 048×1 536)格式下,处理速度高达15 帧/s,可输出YCb-Cr422、RGB565 等多种格式,并可通过设置其内部寄存器来控制其曝光时间、白平衡、饱和度、增益等参数。

(3)光学镜头的选择

光学镜头须选择固定焦距、固定视场角和景深比较大的防畸变光学镜头。

在测量平台的硬件设计中,将微处理器与图像传感器集成在一块电路板上,并固定在保护外壳的内部,在保护外壳上连接光学镜头,构成测量模块,如图2 所示。

图2 测量模块

1.3 系统的主要工作流程

视觉定位系统的主要硬件连接图如图3 所示。

图3 视觉定位系统的主要硬件连接图

首先微处理器向图像传感器发出采集图像的信号,收到信号后,图像传感器将光学图像转换成电子信号,经过信号放大处理将数据结果通过DMA 传送到存储单元;然后微处理器将图像数据从储存单元中读取出,通过计算得到目标的空间位置和姿态;最后通过通信接口将得到的数据发送到机器人控制器去控制机器人运动。

2 单目视觉定位系统的算法设计

单目视觉定位原理是利用一个摄像机获取目标图片,然后将图像空间中的目标信息通过相关算法,转化成真实空间中的目标信息[9]。在该系统中,将得到的图像坐标(u,v)通过相关算法,计算出目标的空间位置与姿态。

2.1 定位系统中各坐标系的定义与关系

(1)成像平面坐标系

如图4 所示,O-XY 为成像平面坐标系,其中点O 是镜头光轴与成像平面的交点,位于图像中心。XY 平面与地面平行。

(2)图像坐标系

如图4 所示,o-uv 为图像坐标系,由于图像信息储存在矩阵中,所以其坐标(u,v)表示图像中各像素点的行数和列数,其原点o 位于图像的左上角。u 轴和v 轴分别平行于成像平面坐标系的X 轴和Y 轴。

(3)摄像机坐标系

如图4 所示,Oc-XcYcZc为摄像机坐标系,其中点Oc为镜头的光心,Xc轴和Yc轴与成像平面坐标系的X 轴与Y 轴平行,Zc轴为镜头的光轴,与成像平面垂直。

(4)世界坐标系图

如图4 所示,Ow-XwYwZw为世界坐标系,用来描述目标的空间位置,为了提高运算速度,此系统定义的世界坐标系的原点Ow为镜头光轴与地面的交点,XwYw平面与地面重合。

图4 定位系统坐标系

2.2 图像坐标系与成像平面坐标系的转化

在图像坐标中,像素点坐标(u,v)为该像素在数组中的位置,并非实际的物理坐标值,所以需要转换到成像平面坐标系中。已知图像中心的坐标为(uo,vo)和一个像素点的尺寸为dx、dy,通过坐标系之间的关系可得其转化公式为:

2.3 三维空间坐标的计算

由各坐标系之间的几何关系可知:点O 为镜头的光心,Xc轴和Yc轴与成像平面的X 轴和Y 轴平行,Zc轴为镜头的光轴,它与成像平面垂直,其交点即为成像平面的坐标原点O。OOc为摄像机的焦距f。根据图4 中的各坐标系关系,可以得到成像平面坐标系与摄像机坐标系之间的转换公式:

通过齐次坐标转换公式,可以得到摄像机坐标系与世界坐标系的转换公式:

由于定义的世界坐标系的原点Ow为镜头光轴与地面的交点,且摄像机坐标系和世界坐标系没有相对旋转,只在Zc轴正方向进行平移,距离为a,所以可以得到R 为3 ×3 的单位矩阵,T 为[0,0,a]T,联立(1)(2)(3)3 个公式,可以得到公式:

从公式(4)可以看出,只要求出Zc的坐标值,世界坐标(Xw,Yw,Zw)即可求出。

由于已知图像传感器的像素阵列为m ×n、靶面长度和宽度为Lu与Lv以及目标的长度和宽度为Lx与Ly,并且通过图像处理可以得出目标长边和宽边的像素点个数分别lx和ly,通过图像空间与真实空间的转化关系,可以得到公式:

为了减少误差,可以通过公式(5)(6)分别求出Zc的值,取其平均值,然后将得到的结果代入公式(4),即可求出目标的空间坐标。

2.4 目标姿态的测量

目标的姿态测量主要是计算目标中心线与Xw轴正方向之间的夹角来确定的。经过图像处理,已知目标两条平行长边上像素点的坐标(u,v),因此可以通过计算出对应像素点坐标的斜率来确定其夹角角度。为了缩短计算时间以及减少误差,通过反复的测试,决定每条长边取相同间距的10 个像素点。

3 单目视觉定位系统的软件设计

3.1 图像分量的选择以及选择依据

定位系统采用的图像数据格式是YCbCr422,其中Y 表示明亮度,而Cb和Cr表示色度,其作用是描述图像色彩及饱和度,用于指定像素的颜色。在该格式下,每个像素点保存一个Y 值,每2 个像素点保存一个Cb和Cr值。由图像处理原理可知,图像的像素点越多,识别与计算精度越高。所以选择Y 分量图像来进行二值化处理和计算。

3.2 图像的二值化处理与目标的边缘提取

目标Y 分量的灰度图像及其直方图和阀值分隔后的二值化图像如图5 所示。

图5 Y 分量图像及其直方图和分割后二值化图像

如图5 (a)为目标Y 分量的灰度图像,5 (b)为其灰度直方图,通过灰度直方图可以看出,目标与非目标之间的灰度峰值有较大的间隔,可以较好地提取出目标特征(因此尽量提高目标与非目标之间亮度差),通过阈值分割,得到二值化图像,如图5 (c)所示,并在二值图像中,通过边缘连接法[10]求出目标边界像素点。

3.3 软件系统的处理流程

该视觉定位系统图像处理的主要流程是:首先进行系统初始化,其次采集目标图像并对图像Y分量进行二值化处理,然后通过二值化图像,得到目标边缘像素点,最后通过目标边缘的像素点,确定目标的空间位置和姿态。图像处理的软件流程图如图6所示。

图6 图像处理的软件流程图

4 系统的测试及误差分析

为了保证空间位置和姿态计算的准确性,应该注意以下几点:

(1)镜头的光心尽量是成像平面坐标系的原点,若偏差较小,则需要调整(u0,v0)的坐标值,如果偏差较大,必须进行校正。

(2)图像传感器的靶面尺寸必须和光学镜头的靶面尺相同,若图像传感器的靶面尺寸大于光学镜头的靶面,则采集到图像周围会有黑影,若小于,则采集图像的会出现边缘缺失。

(3)如果作业现场环境光线变化很大,会影响二值化图像的阈值选取,从而影响计算出的位姿信息。所以在光线变化很大的环境中,应该采用自适应阈值提取法[11]。

在数据采集的过程中,分别让采集模块在不同高度对目标图像进行采集,以判断不同高度下的系统误差,采集到的数据如表1 所示。

表1 不同高度下的图像采集数据

通过表1 的数据可计算出目标上表面中心的世界坐标,结果如表2 所示。

表2 不同高度下的图像处理结果

在对目标姿态的测量过程中,分别选择了0°,15°,30°,45° 4 种角度,计算结果如表3 所示。

表3 不同角度的图像处理结果

通过表1、表2 可知,测量模块分别距地面为1 600、1 850、2 100 mm 时,系统测量误差均小于5 mm,通过表3 可知,在不同偏移角度下,测量误差小于0.5°。通过以上数据可知,目标空间位置与姿态测量的误差均在操作允许的范围内,因此该单目视觉定位系统是可行的。

5 结论

通过选用S3C2440 与OV3640 的硬件配置,提出了一种处理简单、计算准确的单目视觉定位系统。将该系统应用在工业机器人上,可以准确地获取工件目标的位置和姿态的信息,从而降低了工人的劳动强度,提高了工作效率。随着微处理器与图像传感器性能的不断增强,测量精度也会不断提高,因此具有很高的推广价值。

[1]倪受东,刘洋,袁祖强.机器人视觉伺服综述[J].机床与液压,2007,35(9):1-5.

[2]PENG G,HUANG X H,GA0 J,et al .Vision Based Intelligent Control for Mobile Robot[C]//Intelligent Control and Automation,2006.WCICA 2006.The Sixth World Congress,2006,2:9124-9128.

[3]沈慧杰.基于单目视觉的摄像机定位方法的研究[D].长春:吉林大学,2009.

[4]周娜.基于单目视觉的摄像机定位技术研究[D].南京:南京航空航天大学,2007.

[5]曹毓,冯莹,赵立双.相机姿态安装误差对单目视觉定位精度的影响[J].传感器与微系统,2012,31(12):23-26.

[6]彭章君,廖晓波,罗亮,等.拉铆钉多参数高精度在线检测系统的设计[J].计算机测量与控制,2011,19(2):260-265.

[7]Samsung Electronics.S3C2440 user's manual[M].Republic of Korea,2004.

[8]OmniVision Technologies.OV3640 user's manual [M].2006.

[9]廖晓波,李众立,廖璇.砖窑卸垛机器人视觉定位系统研究[J].控制工程,2013,20(4):650-653.

[10]邹柏贤,林京壤.图像轮廓提取方法研究[J].计算机工程与应用,2008,44(25):1-4.

[11]郭佳.基于光照不均匀图像的自适应二值化方法研究[D].武汉:武汉科技大学,2013.

猜你喜欢
单目像素点坐标系
基于局部相似性的特征匹配筛选算法
一种单目相机/三轴陀螺仪/里程计紧组合导航算法
基于5×5邻域像素点相关性的划痕修复算法
解密坐标系中的平移变换
坐标系背后的故事
基于canvas的前端数据加密
单目SLAM直线匹配增强平面发现方法
基于重心坐标系的平面几何证明的探讨
基于逐像素点深度卷积网络分割模型的上皮和间质组织分割
基于CAD模型的单目六自由度位姿测量