一种视觉测量方法与装置
技术领域
本发明属于机器人领域中的视觉测量,具体地说是用于服务机器人对被操作目标进行三维坐标测量的方法以及用于实现上述方法的装置。
背景技术
摄像机本身固有的参数,如焦距、光轴中心点图像坐标、镜头畸变等,称之为摄像机的内参数。摄像机之间的几何关系,即摄像机之间的位置和姿态,称之为摄像机的外参数。目前,机器人领域的三维坐标视觉测量,一般采用由两台摄像机构成的立体视觉系统。它根据目标在两台摄像机中的图像坐标,以及两台摄像机的内参数和外参数,由两条射线的交点计算出目标的三维坐标(其典型结构与原理见“Milan Sonka等著,艾海舟等译,图像处理、分析与机器视觉,第316~320页,北京:人民邮电出版社,2003年9月”)。其不足之处在于:两台摄像机的内参数和外参数需要预先标定,标定过程繁杂(Z.Zhang,“A flexible newtechnique for camera calibration,”IEEE Transactions on Pattern Analysisand Machine Intelligence,vol.22,no.11,pp.1330-1334,2000);视觉测量过程中,两台摄像机的内参数和外参数需要保持不变,一旦摄像机的内参数或者外参数发生变化,需要重新标定。
为了避免摄像机内参数和外参数的预先标定所带来的不便,通常采用的方法是摄像机自标定。目前的摄像机自标定方法,需要利用环境中的特定约束如平行线(D.Xu,Y.F.Li,Y.Shen,M.Tan,“New posedetection method for self-calibrated cameras based on parallel lines and itsapplication in visual control system,”IEEE Transactions on System,Man &Cybernetics—Part B:Cybernetics,vol.36,no.5,pp.1104-1117,2006),或者利用机器人的特定运动(S.D.Ma,“A self-calibration technique for activevision system,”IEEE Transaction on Robotics and Automation,vol.12,no.1,pp.114-120,1996),不具有通用性。
发明内容
为了解决现有技术摄像机自标定方法,利用环境的特定约束如平行线,或者利用机器人的特定运动,不具有通用性的问题,本发明的目的在于提供一种不依赖于摄像机参数的视觉测量方法及装置。
为实现上述目的,本发明的第一方面,提供视觉测量方法的技术方案:包括步骤:
A.在初始状态下,两台摄像机光轴中心线处于平行状态;
B.测量时,利用步进电机驱动两台摄像机同步相向转动两次,用于实现两台摄像机对被测目标的跟踪,得到摄像机对准被测目标时相对于初始状态的转角;
C.分别使被测目标的图像横坐标处于跟踪的摄像机所采集图像的中心区域;
D.根据两台摄像机分别跟踪被测目标时的转角,以及被测目标在两台摄像机图像中的坐标,计算出被测目标的三维坐标。
所述第一台摄像机的跟踪测量包括:
第一台摄像机将跟踪被测目标的图像横坐标调整到该摄像机所采集图像的中心区域,记录步进电机的脉冲数,并转换为第一台摄像机的转角α1;
记录被测目标在第二台摄像机中的图像坐标,计算出该图像坐标与图像中心点的坐标之差(u2d,v2d)。
所述第二台摄像机跟踪测量包括:
第二台摄像机跟踪被测目标,将被测目标的图像横坐标调整到该摄像机所采集图像的中心区域;记录步进电机的脉冲数,并转换为第二台摄像机的转角α2;
记录被测目标在第一台摄像机中的图像坐标,计算出该图像坐标与图像中心点的坐标之差(u1d,v1d)。
所述三维坐标测量结果以两台摄像机中点位置为参考坐标系的原点,以两台摄像机之间的连线作为参考坐标系的X轴,以两台摄像机之间的连线的中垂线作为参考坐标系的Z轴。
所述被测目标的目标点P在坐标系{H}中的三维坐标(xh,yh,zh)包括如下:
zh=D/(tanα1+tanα2) (1)
xh=zhtanα1-D/2 (2)
其中,D是两台摄像机之间的距离,α1和α2是两台摄像机跟踪目标时的转角,(μ1d,v1d)是第二台摄像机跟踪目标时第一台摄像机中的图像坐标与图像中心点的坐标之差,(μ2d,v2d)是第一台摄像机跟踪目标时第二台摄像机中的图像坐标与图像中心点的坐标之差。
为实现上述目的,本发明的第二方面,提供视觉测量装置的技术方案包括:左摄像机、左支架、左连杆、同步带、左带轮、右摄像机、右支架、右连杆、步进电机、安装板、换向带轮、右带轮、张紧轮、驱动带轮和图像同步采集卡;
两台摄像机分别安装在左支架和右支架上,左支架和右支架分别安装在左连杆和右连杆的顶端,左连杆和右连杆分别通过轴承安装在安装板上,左连杆的底端装有左带轮,右连杆的底端装有右带轮;步进电机通过螺钉安装在安装板上,步进电机的输出轴上装有驱动带轮,左带轮的旁边装有换向带轮和张紧轮;通过双面齿同步带,将左带轮、右带轮、换向带轮、张紧轮、驱动带轮联结在一起;换向带轮固定安装在安装板上,张紧轮在安装板上的位置可调整,以保证双面齿同步带张紧;两台摄像机的视频信号端通过同轴电缆接至图像同步采集卡其中的两路视频信号输入端。
所述步进电机到摄像机的传动比为2:1
本发明的积极技术效果或优点:本发明的显著特点是不需要摄像机的内参数和外参数的情况下,利用本发明能够很好地实现视觉三维坐标测量,提高了视觉测量的适应性和可用性,应用方便。
附图说明
图1为本发明的视觉测量原理示意图。
图2为本发明的视觉装置原理图。
具体实施方式
下面结合附图详细说明本发明技术方案中所涉及的各个细节问题。应指出的是,所描述的实施例仅旨在便于对本发明的理解,而对其不起任何限定作用。
本发明的工作原理,简述如下。在两台摄像机之间建立坐标系{H},如图1所示。被测目标点用P表示,两台摄像机1和摄像机6光轴中心点分别用C1和C2表示,并假设C1和C2之间的距离为D。视觉测量分为两步进行。第一步,利用公知的视觉跟踪技术,使第一台摄像机1跟踪被测目标,将被测目标的图像横坐标调整到该摄像机所采集图像的中心区域。记录步进电机的脉冲数,并转换为第一台摄像机1的转角α1。记录被测目标在第二台摄像机6中的图像坐标,计算出该图像坐标与图像中心点的坐标之差(u2d,v2d)。第二步,使第二台摄像机6跟踪被测目标,将被测目标的图像横坐标调整到该摄像机所采集图像的中心区域。记录步进电机的脉冲数,并转换为第二台摄像机6的转角α2。记录被测目标在第一台摄像机1中的图像坐标,计算出该图像坐标与图像中心点的坐标之差(u1d,v1d)。被测目标点P在坐标系{H}中的三维坐标(xh,yh,zh)计算如下:
zh=D/(tanα1+tanα2) (1)
xh=zhtanα1-D/2 (2)
其中,D是两台摄像机之间的距离,α1和α2是两台摄像机跟踪目标时的转角,(u1d,v1d)是第二台摄像机6跟踪目标时第一台摄像机1中的图像坐标与图像中心点的坐标之差,(u2d,v2d)是第一台摄像机1跟踪目标时第二台摄像机6中的图像坐标与图像中心点的坐标之差。
所述三维坐标测量结果以两台摄像机中点位置为参考坐标系的原点,以两台摄像机之间的连线作为参考坐标系的X轴,以两台摄像机之间的连线的中垂线作为参考坐标系的Z轴。
请参阅图2本发明的视觉装置原理图,图2中包括:左摄像机1、左支架2、左连杆3、同步带4、左带轮5、右摄像机6、右支架7、右连杆8、步进电机9、安装板10、换向带轮11、右带轮12、张紧轮13、驱动带轮14和图像同步采集卡15;两台摄像机1和6分别安装在左支架2和右支架7上,左支架2和右支架7分别安装在左连杆3和右连杆8的顶端,左连杆3和右连杆8分别通过轴承安装在安装板10上,左连杆3的底端装有左带轮5,右连杆8的底端装有右带轮12;步进电机9通过螺钉安装在安装板10上,步进电机9的输出轴上装有驱动带轮14,左带轮5的旁边装有换向带轮11和张紧轮13;通过双面齿同步带4,将左带轮5、右带轮12、换向带轮11、张紧轮13、驱动带轮14联结在一起;换向带轮11固定安装在安装板10上,换向带轮11用于改变转向,使右带轮12的转向与左带轮5的转向相反;调整张紧轮13在安装板10上的安装位置,使双面齿同步带4张紧;在步进电机9的带动下,两台摄像机1和6同时以相同的转角向相反方向转动。在工业计算机中加装多路图像同步采集卡15,通过同轴电缆将两台摄像机1和6的视频信号接至图像同步采集卡15的其中两路视频信号输入端。
在实施例中,两台摄像机1和6均采用SUNHA的SH-831微型摄像机或市场上供应的其它型号摄像机,步进电机9采用混合式步进电机39BYG601或市场上供应的其它型号。实验时,图像采集卡15采用MC-30或市场上供应的其它型号,在任意时刻对两台摄像机1和6的视觉图像进行同步采集。计算机采用工业控制计算机ADVANTECH-610。步进电机9的步距为1.8°,从步进电机9到摄像机1和6的传动比均为2:1,利用步进电机9的驱动器对步进电机9的运动进行了64细分。因此,计算机每向步进电机9发出一个脉冲,摄像机1和6的转动量为1.8/64/2=1.41×10-2(°)。两台摄像机1和6之间的距离为D=150毫米。
本实例中:同步带4采用T2.5-330型双面齿同步带;左带轮5采用T2.5-36;换向带轮11采用T2.5-18;右带轮12采用T2.5-36;张紧轮13采用T2.5-18;驱动带轮14采用T2.5-18;左支架2、左连杆3、右支架7、右连杆8无特殊要求,为普通机械件。
首先,利用公知的方法安装和调整本发明如图2所示装置上的两台摄像机1和6,使两台摄像机1和6在初始状态下的光轴中心线平行。然后,利用本发明的装置,采用本发明的测量方法,对棋盘图案的交叉点的三维坐标进行了测量。其中,棋盘图案的黑色方块的尺寸为30×30毫米。摄像机1和6所采集的图像的尺寸为640×480像素。
利用本发明对棋盘图案的16个交叉点进行测量,获得16个空间点在视觉坐标系{H}下的三维坐标。结果为:
点 | X(mm) | Y(mm) | Z(mm) |
1 | -6.8551 | -36.2563 | 559.8564 |
2 | 23.8075 | -34.0894 | 556.8579 |
3 | 54.0711 | -35.8102 | 551.6178 |
4 | 83.2076 | -34.8537 | 543.8075 |
5 | -7.9986 | -6.2567 | 551.5902 |
6 | 22.4331 | -6.0727 | 546.7718 |
7 | 52.8529 | -5.5617 | 541.6156 |
8 | 82.6170 | -5.2144 | 539.8013 |
9 | -8.8849 | 22.8316 | 546.5353 |
10 | 21.8423 | 22.9313 | 540.3840 |
11 | 51.6135 | 23.4384 | 533.4364 |
12 | 81.0656 | 23.5013 | 531.5773 |
13 | -9.4947 | 51.5836 | 538.1701 |
14 | 20.4779 | 50.8963 | 532.7708 |
15 | 50.6692 | 53.0560 | 528.3036 |
16 | 79.5523 | 52.1520 | 522.6241 |
利用上述交叉点的三维坐标,可以计算出相邻点间的距离,以校验视觉测量结果。下面附表是计算出的水平方向和竖直方向的相邻点之间距离,即经过视觉测量后计算出的黑色方块的宽和高,如下表所示:
编号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
宽(mm) | 30.9 | 30.6 | 30.2 | 30.8 | 30.9 | 29.8 | 31.3 | 30.6 | 29.5 | 30.5 | 30.6 | 29.5 |
高(mm) | 31.1 | 29.5 | 30.0 | 29.8 | 29.7 | 29.0 | 31.9 | 30.2 | 30.1 | 29.9 | 29.9 | 30.1 |
黑色方块的实际宽和高都是30毫米(mm),上述结果与实际值很接近。上述结果是在不采用摄像机1和6模型参数的情况下,利用具有严重畸变的微型摄像机1和6采集图像,针对距离摄像机500毫米左右的目标,利用本发明的方法和装置测量获得的。从这些结果可以发现,视觉测量的精度能够满足服务机器人对目标进行抓取等作业的要求。
可见,即使利用大畸变摄像机,在不需要摄像机参数的情况下,利用本发明能够很好地实现视觉三维坐标测量,提高了视觉测量的适应性和可用性。
以上所述,仅为本发明中的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可理解想到的变换或替换,都应涵盖在本发明的包含范围之内,因此,本发明的保护范围应该以权利要求书的保护范围为准。