机器视觉在物体位姿检测中的应用

2016-06-13 05:49彬,
传感器与微系统 2016年2期
关键词:机器视觉

李 彬, 罗 彪

(北京航空航天大学 自动化科学与电气工程学院,北京 100191)



应用技术

机器视觉在物体位姿检测中的应用

李彬, 罗彪

(北京航空航天大学 自动化科学与电气工程学院,北京 100191)

摘要:研究了机器视觉技术在物体位姿检测中的应用。从两个方位架设工业相机采集目标图片,采用张正友基于2D平面靶标的相机标定方法对相机进行标定。使用目标图像减去背景图像和形态学运算的方法进行粗定位,初步检测目标区域。利用Hough变换检测目标直线边缘,依据极线约束原则、灰度相似性以及直线约束进行边缘直线及其端点的匹配。计算出各直线端点的空间三维坐标及其单位方向向量。在已知目标模板的条件下,目标的几何参数已知,利用简单的几何关系求取目标的位姿数据。

关键词:机器视觉; 摄像机标定; Hough变换; 角点检测和匹配; 几何模板

0引言

机器视觉是指利用计算机系统模仿人视觉系统的功能,实现计算机对目标物体的感知、定位等功能。随着机器视觉理论的发展,机器视觉在工业中的应用越来越广泛。比如:在工业零件的分类中,现在依然主要依靠人工手段对混杂的工业零件进行分类,这种分类方式不仅效率低下,错误率较高,且是对人力资源的一种浪费。若能够实现对零件的自动分类,将大大提高工业生产效率。

当对大量堆叠的同类工业零件进行分类时,必然存在工件相互遮挡的情况。考虑到目标区域内的工件都是同一样式,几何参数模板可以得到,则即使图像中某一工件被遮挡无法得到其完整图像信息,也有可能利用几何关系计算出它的位姿数据。

1相机标定

相机标定是指通过测量相机的各种内部和外部参数,建立起相机所采集到的图像与世界中场景点的位置关系的过程。相机标定一般可分为传统标定方法[1~3]、主动视觉中的标定方法[4~6]和自标定方法三类[7,8]。相机标定中需要标定出的内、外部参数如表1所示。

表1 相机标定参数

传统标定方法使用2D或3D靶标。通过建立靶标上特征点和图像中特征点的空间坐标关系,计算摄像机的内外参数。主动视觉标定方法令摄像机按着一定运行轨迹移动,利用轨迹的几何性质和图像坐标计算摄像机参数。自标定法不需要知道靶标特征点的三维坐标,利用多幅图像间一定数目对应点的图像坐标关系来求解摄像机参数。三种方法相比,主动视觉的标定方法实现起来比较复杂,而自标定法结果不够稳定,故采用传统标定法进行标定[9]。

这里采用张正友提出的基于2D平面靶标的相机标定方法。标定假定两相机的内部参数维持不变,将相机架设在两个不同的方位与角度,保持相机固定。不断改变2D平面靶标的摆放位置与角度,两相机同时采样。对靶标的部分采样图如图1所示。

标定可以使用Matlab标定工具箱或使用Opencv标定。一般使用Matlab标定的准确度更高一些,因此,这里标定软件使用Matlab 2014b。

图1 靶标部分采样图Fig 1 Sampling figures of planar target

2图像处理

为快速实现目标的粗定位,需要对采集到的图像进行初期图像处理。这里主要采用图像与背景图像做差和形态学运算中的腐蚀与膨胀运算。

2.1背景处理

在采集目标图像前,保证光照条件不变,相机位置不移动,首先对背景图像采图如图2。

图2 背景图像Fig 2 Background image

对采集到的目标图像与背景图像做差,以提取目标区域,效果如图3。

可见做差后可以初步提取出目标,但图像中仍存在部分高光区域,可能会影响后续检测。使用形态学运算去除这些区域。

图3 目标粗定位Fig 3 Target coarse positioning

2.2形态学运算

基于数学形态学[10,11]的边缘检测算法对噪声不像经典微分算法那样敏感,而且提取的边缘比较平滑。膨胀和腐蚀是形态学运算的基本运算[12~14]:膨胀可用于填补分割后目标中的小空洞;腐蚀可用于消除目标图像中不必要的细小连线和一些孤立的小点。

如图4,对于去除背景的图像二值化后,首先进行若干次腐蚀运算,可以消去被测立方体附近的反光区域。接着进行数次膨胀运算,恢复被腐蚀掉的立方体边缘。由于腐蚀和膨胀并不是一对可逆运算,所以,为保证立方体边缘数据不丢失,应使膨胀次数多于腐蚀次数。

图4 形态学运算后的二值图像Fig 4 Binarized image after morphological operations

由图5,最终提取出的目标区域中已经去除了高光区域的干扰,且完整的保留了目标物体的轮廓。

图5 提取出目标区域Fig 5 Extracted target area

3边缘检测与匹配

3.1边缘检测

在图像特征检测过程中,边缘和角点特征是图像最重要的特征之一。目前有多种对物体边缘进行检测的技术,这里使用Hough变换实现对直线边缘的检测。

Hough变换将笛卡尔坐标系中用斜率和截距(k,b)表示的直线映射到极坐标系中用极径和极角(r,θ)表示的直线,对直线参数进行累加,实现对直线的检测。由于其根据局部度量来计算全面描述参数,因而,对于区域边界被噪声干扰或被其他目标遮盖而引起边界发生某些间断的情况具有很好的容错性和鲁棒性。

如图6,使用基于Opencv的Hough变换对左右两幅图像中的目标物体进行直线检测,可以得到部分物体的边缘,同时得到这些直线的起始点坐标。

图6 Hough变换检测边缘Fig 6 Edge detection using Hough transform

3.2直线匹配

为得到直线边缘的三维空间坐标,需要对角点进行匹配。角点匹配是机器视觉中最关键也是最有难度的一个步骤,关系到后续工作能否进行。由于对于每一条直线已经得到其起点与终点两个端点的坐标,这里同时对两个端点进行角点的匹配,可以增加一个约束条件、减少匹配错误。

为减弱采样噪声、光照变化、透视畸变等因素的干扰,进行匹配时使用以下三个条件作为约束:

1)极线约束:由于得到两幅图像的两个相机存在一定的位置关系,可以将这种位置关系转换为图像上点的位置约束。极线约束是进行图像匹配的最重要的约束条件之一。

2)灰度相似性:虽然获得两幅图像的两个相机采图角度不同,致使得到的两幅图像中同一空间点周围的环境并不相同,但依然存在一定的相似性,尤其对于表面纹理与周围环境不同、或与环境色差较大的情况,灰度相似性仍具有一定参考价值。

3)直线约束:相匹配的两个点应该为同一条边缘的起点或终点。

3.2.1极线约束

如图7所示,pl,pr为空间点p在左右两相机采样图像上的成像点,两光心Cl,Cr和p点组成的平面称为极平面。极平面与左右两图的交线称为极线。观察可知pl与pr在左右图像中的位置存在一个约束,即都位于极线上,而一旦p点确定了,左右极线是唯一的[15]。

图7 极线约束几何关系Fig 7 Epipolar constraint

3.2.2灰度相似性

以待匹配特征点为中心,(2N+1)×(2N+1)大小的区域为窗口模板,计算两个特征点的灰度相似性。

使用区域相关系数作为判断两点灰度相似性的依据

C的范围为[-1,1],值越大表示两个点的灰度相似性越高。设置一定阈值,当C大于该阈值时认为两点匹配。

3.2.3直线约束

即使两点同时满足以上两个约束条件,也有可能出现错误匹配。考虑到进行匹配的每一个点都是一条直线的端点,两个匹配点同时应该在同一条直线上,利用这一条件作为约束。当有一个点匹配成功时,继续寻找直线另外一个端点的匹配点,若同样可以找到且与之前的匹配点共线,则认为找到了一条直线上两个点的匹配点,同时也是找到了左右图中的一条匹配直线,如图8。

图8 直线匹配Fig 8 Straight line matching

4坐标计算与位姿计算

工业生产中对堆积的同类工件进行识别时,由于背景中的物体全部为同种样式,因此,即便出现遮挡导致无法得到某一个体的全部信息,利用已知的物体模板信息也可以实现对物体的检测识别。

以立方体为例,所需知道的物体信息仅有边长。实验中立方体的边长为100mm。有多种方法可以确定一个立方体的准确位姿,如,立方体质心和一个角点、质心和一条边、三条相互垂直的边、三个角点等。由于进行Hough直线检测得到的可能并不是立方体的一条完整边界,这里采用计算质心和一个角点的方法确定位姿。

首先寻找满足以下条件的三条线段:

2)三条线段相互垂直;

3)至少存在一个交点。

如图9,此交点必定为立方体上的一个角点,记为M。

图9 定位三条线段Fig 9 Locate three lines

为计算三条线段的空间坐标,实现从图像像素坐标到世界坐标的转换,如图10。

图10 坐标系的转换Fig 10 Conversion of coordinate system

计算出a,b,c三条线段的起始端点分别为:(130.12,105.36,536.77),(136.24,12.17,505.16);(136.45,13.05,508.90),(220.13,32.13,463.81);(138.44,7.31,496.12),(184.51,-11.05,588.87)。

如图11,分别求取三条线段的单位方向向量,取交点M的坐标为(136.45,13.05,508.90)。a,b的方向向量都以M为起点。

图11 求解立方体质心Fig 11 Calculate centroid of cube

计算出线段a,b的单位方向向量为(-0.062,0.945,0.321),(0.863,0.197,-0.465)。 此时第三个向量的方向无法确定,可能为c1(0.438,-0.175,0.882) 或c2(-0.438,0.175,-0.882),可以求出两个可能质心O1,O2,计算O1与三条线段端点的距离可以将其排除。只有O2满足一个立方体的几何关系,故该立方体被唯一确定。

5结论

本文研究了相机标定算法,在张正友基于2D平面靶标的标定方法上进行相机多个位置的标定,用原图像减去背景图像和形态学运算方法初步提取出目标,使用Hough直线检测方法检测边界并根据极线约束和灰度相似性进行匹配,计算出匹配直线的空间三维坐标。利用已知的目标模板数据,基于几何关系计算出物体的位姿状态。

本文研究的基于机器视觉的检测方法,基于目标模板数据,利用简单的几何关系计算出目标的位姿状态,获得了较好的效果。但在背景复杂、遮挡严重的环境下,检测效果会下降,影响最终结果的精度,需要进一步研究。

参考文献:

[1]Tsai R Y.An efficient and accurate camera calibration technique for 3D machine vision[C]∥IEEE Conference on Computer Vision and Pattern Recognition,1986:364-374.

[2]Tsai R Y.A versatile camera calibration technique for high-accu-racy 3D machine vision metrology using off-the-shelf TV cameras and lenses[J].IEEE J Robotics and Automation,1987,3(4):323-344.

[3]Zhang Z.A flexible new technique for camera calibration[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2000,22(11):1300-1331.

[4]Ma S De.A self-calibration technique for active vision system-s[J].IEEE Transaction on Robotics and Automation,1996,12(1):111-120.

[5]Hartley R I.Self-calibration of stationary cameras[J].International Journal of Computer Vision,1997,22(1):5-23.

[6]Jiang Guangwen,Chao Zhichao,Fu Sihua,et al.High-accurate camera calibration technique based on controllable rotation[J].Acta Optica Sinica,2010,30(5):1308-1314.

[7]Maybank S J,Faugeras O D.A theory of self-calibration of a mo-ving camera[J].International J Computer Vision,1992,8(2):123-151.

[8]Faugeras O D,Luong Q T,Maybank S J.Camera self-calibration:Theory and experiments[J].Computer and Information Science,1992,588(1):321-334.

[9]杨博文,张艳丽,叶南,等.面向大视场视觉测量的摄像机标定技术[J].光学学报,2012,9(32):0915001—1-0915001—7.

[10] 刘松涛,王学伟,周晓东,等.基于传感器参数和目标轮廓中心的自动配准算法研究[J].光学精密工程,2005,13(3):354-363.

[11] 陈智君,林玉池,赵美蓉,等.万能工具显微镜目镜视场字符识别的预处理算法[J].光电子·激光,2005,16 (1):80-82.

[12] 张艳玲,刘桂雄,曹东,等.数学形态学的基本算法及在图像预处理中应用[J].科学技术与工程,2007,7(3):356-359.

[13] 林玉池,崔彦平,黄银国.复杂背景下边缘提取与目标识别方法研究[J].光学精密工程,2006,14(3):509-514.

[14] 许维星.复杂背景下的目标识别及高精度定位技术研究[D].西安:中国科学院研究生院(西安光学精密机械研究所),2011.

[15] 张广军.机器视觉[M].北京:科学出版社,2005:109-112.

Application of machine vision in detection of objects pose

LI Bin, LUO Biao

(School of Automation Science and Electrical Engineering,Beihang University,Beijing 100191,China)

Abstract:Application of machine vision technology in detection of objects pose is researched.Set up industrial cameras in two different directions and take pictures of target objectsthen complete camera calibration using Zhang Zhengyou’s method based on 2D planar target.Complete preliminary target detection by subtracting background image from the target image and Morphological operation,so the target area is determined.Then use Hough transform to detect line edge,Epipolar constraint,gray similarity and line constraint is adopted to match the lines and their endpoints.Calculate three-dimensional(3D)space coordinates and unit direction vector of endpoint of each straight lines.Since the target template is known,the geometry parameter is available,using simple geometric relationship to calculate pose data of target.

Key words:machine vision; camera calibration; Hough transform; corner points detection and matching; geometric template

DOI:10.13873/J.1000—9787(2016)02—0150—04

收稿日期:2015—06—11

中图分类号:TP 391

文献标识码:A

文章编号:1000—9787(2016)02—0150—04

作者简介:

李彬(1989-),男,山东淄博人,硕士研究生,主要研究方向为机器视觉、嵌入式控制。

猜你喜欢
机器视觉
基于芯片点胶系统的视觉检测技术研究
全自动模拟目标搜救系统的设计与实现
基于机器视觉的自动浇注机控制系统的研究
大场景三维激光扫描仪在研究生实践教学培养中的应用
基于机器视觉的工件锯片缺陷检测系统设计
基于机器视觉技术的动态“白带”常规检测系统的开发
对激光切割机的改进
人工智能在高校图书馆的预期
基于车牌识别的机器视觉课程研究
机器视觉技术在烟支钢印检测中的应用