法律状态公告日
法律状态信息
法律状态
2019-07-05
未缴年费专利权终止 IPC(主分类):G01B11/25 授权公告日:20170912 终止日期:20180716 申请日:20150716
专利权的终止
2017-09-12
授权
授权
2015-12-02
实质审查的生效 IPC(主分类):G01B11/25 申请日:20150716
实质审查的生效
2015-11-04
公开
公开
技术领域
本发明属于机器人手眼标定技术领域,具体涉及一种机器人线结构光视觉测量系统的手眼标定方法。
背景技术
线结构光视觉测量技术,因其具有精度高、测量速度快等优点而被广泛用于三维重建,工业视觉检测等领域。在工业检测领域,线结构光传感器通常安装机器人末端执行器上用于检测产品的质量。
线结构光视觉传感器与机器人一起组成机器人线结构光视觉测量系统,在使用该系统进行测量时必须先确定线结构光视觉传感器与机器人末端执行器之间的位姿关系,确定这个关系的过程称为手眼标定。
目前,李爱国等提出了一种以标准球为靶标的手眼标定方法,该方法以标准球为靶标,通过光结构投射器投射到标准球表面的光条纹进行光条纹的提取,然后拟合出光条纹所在的球方程。这种方法面临标定过程中图像处理的难题。而且,该标定方法是基于控制机器人末端执行器做纯平移运动,进而通过分析摄像机坐标系和靶标坐标系之间的关系,获得相应的旋转矩阵和平移量。然而,这对于大部分旋转关节机器人来说,其末端执行器的移动精度无法达到纯平移运动,最终导致标定不准确。
发明内容
有鉴于此,本发明提供了一种机器人线结构光视觉测量系统的手眼标定方法,能够通过控制机器人做一般的运动而实现手眼标定。
一种机器人线结构光视觉测量系统的手眼标定方法,该方法包括:
以机器人基座中心位置为原点Oo,建立机器人基座坐标系Oo-XoYoZo;以机器人末端法兰盘中心位置为原点Oe,建立第一机器人末端坐标系Oe-XeYeZe;以与机器人末端相连的摄像机光心为原点Oc,建立第一摄像机坐标系Oc-XcYcZc;其中,第一摄像机坐标系中Xc轴和Yc轴分别平行于摄像机成像平面的u轴和v轴,Zc轴由右手定则确定;以一个具有一组正交直径AB、CD的圆为靶标,靶标圆心为原点Ow,建立靶标坐标系Ow-XwYwZw;靶标坐标系中靶标的直径AB所在直线从A到B的方向为靶标坐标系的Xw轴,CD所在直线从C到D的方向为靶标坐标系的Yw轴,Zw轴由右手定则确定;
步骤一、通过机器人控制器获得机器人在初始状态下第一机器人末端坐标系相对于机器人基座坐标系的变换矩阵Aoe;将线结构光投射器与摄像机刚性连接安装在机器人末端;线结构光投射器向靶标投射一光条纹,且该光条纹穿过靶标圆心位置处,利用光条纹所穿靶标圆心处的光平面方程和摄像机成像原理获得第一摄像机坐标系相对于靶标坐标系的第一平移量tcw;利用调和共轭理论,获得直径AB相对于第一摄像机坐标系的消隐点p和直径CD相对于第一摄像机坐标系的消隐点q,并结合已知的摄像机内参数和罗德里格旋转公式获得第一摄像机坐标系相对于靶标坐标系的第一旋转矩阵Rcw;
步骤二、根据步骤一中获得的第一平移量tcw和第一旋转矩阵Rcw,根据齐次变换矩阵定义,获得第一摄像机外参数>
步骤三、机器人末端进行第一次移动,并以机器人末端第一次移动后末端法兰盘中心位置为原点Oe',建立第二机器人末端坐标系Oe'-Xe'Ye'Ze';以第一次移动后摄像机光心为原点Oc',建立第二摄像机坐标系Oc'-Xc'Yc'Zc';通过机器人控制器获得末端第一次移动后第二机器人末端坐标系相对于机器人基座坐标系的变换矩阵Aoe',并根据Aee'=(Aoe')-1Aoe,获得末端第一次移动前后的机器人末端运动量Aee';
步骤四、按照步骤一的方式,获取末端第一次移动后第二摄像机坐标系相对于靶标坐标系的第二平移量t'c'w和第二旋转矩阵R'c'w;
步骤五、根据步骤四中获得的第二平移量t'c'w和第二旋转矩阵R'c'w,根据齐次变换矩阵定义,获得第二摄像机外参数>
步骤六、根据齐次线性变换理论,利用步骤二中获得的第一摄像机外参数Bcw和步骤五中获得的第二摄像机外参数Bc'w,获得末端第一次移动前后的摄像机运动量Bcc'=Bc'w×(Bcw)-1;
步骤七、机器人末端进行第二次移动,以第一次移动后的位置作为初始位置,按照步骤三到步骤六的方法,以机器人末端第二次移动后末端法兰盘中心位置为原点Oe”,建立第三机器人末端坐标系Oe”-Xe”Ye”Ze”;以第二次移动后摄像机光心为原点Oc”,建立第三摄像机坐标系Oc”-Xc”Yc”Zc”;获得第二次移动前后的机器人末端运动量Ae'e”以及末端第二次移动后的第三摄像机坐标系相对于靶标坐标系的第三平移量t”c”w和第三旋转矩阵R”c”w;进而获得第三摄像机外参数>并根据第三摄像机外参数Bc”w以及步骤五中获得的第二摄像机外参数Bc'w,获得末端第二次移动前后的摄像机运动量Bc'c”=Bc”w×(Bc'w)-1;
步骤八、利用运动量和手眼关系模型AX=XB,根据步骤三和步骤六中获得的机器人末端运动量Aee'和摄像机运动量Bcc',建立第一次移动机器人末端前后的第一约束方程Aee'X=XBcc';根据步骤七中获得的机器人末端运动量Ae'e”和摄像机运动量Bc'c”,建立第二次移动机器人末端前后的第二约束方程Ae'e”X=XBc'c”;联立第一约束方程和第二约束方程,获得手眼标定矩阵X。
特别地,所述步骤一中第一摄像机坐标系相对于靶标坐标系的第一平移量tcw的获取方法为:
在第一摄像机坐标系下,利用光条纹所穿靶标圆心处的光平面方程和摄影机成像原理,获得靶坐标系原点Ow在第一摄像机坐标系的相对位置关系
特别地,所述步骤一中第一摄像机坐标系相对于靶标坐标系的第一旋转矩阵Rcw的获取方法为:
第1步:定义靶标坐标系中选取的正交直径AB和CD在摄像机成像平面上的相应成像为ab和cd;定义靶标坐标系原点Ow在摄像机成像平面上的相应成像为ow;根据射影几何的调和共轭理论,结合摄像机透视投影的同素性和交比不变性,有
>
其中,aow代表端点a到靶标坐标系原点ow之间的长度;bow代表端点b到靶标坐标系原点ow之间的长度;ap代表端点a到消隐点p之间的长度;bp代表端点b到消隐点p之间的长度;同理,cow代表端点c到靶标坐标系原点ow之间的长度;dow代表端点d到靶标坐标系原点ow之间的长度;cq代表端点c到消隐点q之间的长度;dq代表端点d到消隐点q之间的长度;
第2步:利用点a、b、c和d的像素坐标获得消隐点p的像素坐标(up、vp)和消隐点q的像素坐标(uq、vq);
第3步:以第一摄像机坐标系的原点为原点,在第一摄像机坐标系上建立与靶标坐标系的坐标轴方向相同的过渡坐标系Oc-X'wY'wZ'w;
第4步:利用公式(6)对消隐点p和消隐点q的像素坐标进行焦距归一化,进而获得消隐点p在第一摄像机坐标系下的三维坐标为
第5步:将第一摄像机坐标系下的消隐点p和消隐点q分别与第一摄像机坐标系的光心Oc连接,获得矢量Ocp和Ocq;
第6步:获得并单位化由矢量Ocp和Ocq在第一摄像机坐标系中确定的平面Ocpq的法向量
第7步:获得法向量
第8步:获得并单位化与法向量
第9步:根据法向量
第10步:定义靶标坐标系的OwXw轴和OwYw轴在摄像机成像平面上的像分别为owxw轴和owyw轴,根据位置关系式
第11步:根据第10步中获得的位置关系,确定第一旋转矩阵Rcw与旋转矩阵rcw之间的关系;进而获得第一旋转矩阵Rcw。
有益效果:
第一、本发明根据机器人运动特点,分别以机器人基座中心位置、机器人末端法兰盘中心位置、摄像机光心位置和靶标圆心位置处建立坐标系,更好的将机器人的运动关系通过坐标系的建立展现出来。第二、为了避免机器人做高精度纯平移运动,本发明采用机器人手眼关系模型为基础,通过确定摄像机坐标系和靶标坐标系之间的位置关系,进而获得摄像机的运动量(即包括旋转量和移动量);通过控制机器人末端的移动,并结合齐次变换矩阵原理,获得机器人移动前后摄像机的运动量,进而根据手眼关系模型获得最终手眼关系矩阵。第三、本发明将现有技术中的圆替换标准球作为靶标,仅需提取结构光条纹图像直线特征即可,减小了计算量。
附图说明
图1为机器人末端移动前后各坐标系及其关系和运动量示意图。
图2为机器人坐标系建立示意图。
图3为机器人摄像机坐标系与靶标坐标系之间的关系示意图。
图4为机器人坐标系关系示意图。
图5(a)、图5(b)、图5(c)和图5(d)分别为消隐点p和消隐点q与对应轴像owxw和owyw的4种位置关系示意图。
图6为机器人手眼标定流程图。
具体实施方式
下面结合附图并举实施例,对本发明进行详细描述。
本发明提供了一种机器人线结构光视觉测量系统的手眼标定方法;如图1所示,本发明以一个具有一组正交直径的圆为靶标,在摄像机共线位置处设置线结构光投射器,使线结构光光线投射至圆心,根据摄像机坐标系与靶标坐标系之间的关系,最终获得第一旋转矩阵;之后,机器人的末端进行第一次移动,使机器人末端坐标系和摄像机坐标系改变,而靶标坐标系和机器人基座坐标系不变,通过再次分析摄像机坐标系与靶标坐标系之间的关系,获得第二旋转矩阵,根据第一旋转矩阵和第二旋转矩阵,获得摄像机的运动量Bcc'。之后,建立第一次移动机器人末端前后的第一约束方程Aee'X=XBcc'。之后,采用同样的方法,机器人的末端进行第二次移动,获得机器人末端运动量Ae'e”和摄像机运动量Bc'c”,进而建立第二次移动机器人末端前后的第二约束方程Ae'e”X=XBc'c”,通过联立第一约束方程和第二约束方程,获得手眼标定矩阵X,进而实现机器人的手眼标定。
如图2所示,以机器人基座中心位置为原点Oo,建立机器人基座坐标系Oo-XoYoZo;以机器人末端法兰盘中心位置为原点Oe,建立第一机器人末端坐标系Oe-XeYeZe;其中,机器人基座坐标系和机器人末端坐标系的建系方法即按照现有技术中的建系方法建立即可。以与机器人末端相连的摄像机光心为原点Oc,建立第一摄像机坐标系Oc-XcYcZc;其中,第一摄像机坐标系中Xc轴和Yc轴分别平行于摄像机成像平面的u轴和v轴,Zc轴由右手定则确定。以一个具有一组正交直径AB、CD的圆为靶标,靶标圆心为原点Ow,建立靶标坐标系Ow-XwYwZw;靶标坐标系中靶标的直径AB所在直线从A到B的方向为靶标坐标系的Xw轴,CD所在直线从C到D的方向为靶标坐标系的Yw轴,Zw轴由右手定则确定。
上述所定义的4个坐标系之间的关系可看做以下3个阶段:1)机器人基座坐标系到机器人末端坐标系;2)机器人末端坐标系到摄像机坐标系;3)摄像机坐标系到靶标坐标系;其中,机器人基座坐标系到机器人末端坐标系的运动关系即机器人末端运动量可由机器人控制器获得;机器人末端坐标系到摄像机坐标系之间的运动关系即为所求的手眼标定矩阵X;摄像机坐标系到靶标坐标系的运动关系即机器人运动前后摄像机所对应的运动量的获取方法具体如步骤一至步骤六;
由于手眼标定矩阵X的获得是通过手眼关系模型知Aee'X=XBcc'和Ae'e”X=XBc'c”的联立获得的,如图1所示,其中,Aee'和Ae'e”分别为机器人末端第一次移动前后的机器人末端运动量和机器人末端第二次移动前后的机器人末端运动量;Bcc'和Bc'c”分别为机器人末端第一次移动前后摄像机的运动量和机器人末端第二次移动前后摄像机的运动量;为此,在标定过程中,需对机器人末端进行两次移动,进而获得Aee'和Bcc'以及Ae'e”和Bc'c”;然而,Aee'和Ae'e”由机器人控制器即可获得。故若想对机器人进行手眼标定,即获得手眼标定矩阵X,则需获得机器人第一次移动前后摄像机的运动量Bcc'和第二次移动前后摄像机的运动量Bc'c”。如图6所示,其具体标定方法如下:
步骤一、通过机器人控制器获得机器人在初始状态下第一机器人末端坐标系相对于机器人基座坐标系的变换矩阵Aoe;将线结构光投射器与摄像机共线安装在机器人末端;线结构光投射器向靶标投射一光条纹,且该光条纹穿过靶标圆心位置处,利用光条纹所穿靶标圆心处的光平面方程系数和摄像机成像原理获得第一摄像机坐标系相对于靶标坐标系的第一平移量tcw;利用调和共轭理论,获得直径AB相对于第一摄像机坐标系的消隐点p和直径CD相对于第一摄像机坐标系的消隐点q,并结合已知的摄像机内参数和罗德里格旋转公式获得第一摄像机坐标系相对于靶标坐标系的第一旋转矩阵Rcw;
其中,第一摄像机坐标系相对于靶标坐标系的第一平移量tcw的获取办法为:
将线结构光投射器与摄像机共线安装在机器人末端;线结构光投射器向靶标投射一光条纹,且该光条纹穿过靶标圆心位置处。在第一摄像机坐标系下,光条纹所穿靶标圆心处的光平面方程为
>
其中,a、b、c、d为光平面系数;由于本发明采用以一个具有一组正交直径AB、CD的圆作为靶标,故这里仅需根据光平面方程和摄影机成像原理即可获得第一平移量tcw,而不需要求出球面方程,减小了计算量。
此外,定义靶标坐标系原点Ow在摄像机成像平面上的相应成像为ow。则ow在摄像机成像平面上的像素坐标为
>
其中,u0、v0为摄像机光轴与摄像机成像平面的交点像素坐标;α、β为尺度因子;u0、v0、α和β均为已知的摄像机的内参数;
根据公式(1)和公式(2),获得靶坐标系原点Ow在第一摄像机坐标系的相对位置关系
>
根据公式(3),进而获得第一平移量
>
第一摄像机坐标系相对于靶标坐标系的第一旋转矩阵Rcw的获取办法为:
第1步:如图3和4所示,定义靶标坐标系中选取的正交直径AB和CD在摄像机成像平面上的相应成像为ab和cd;定义靶标坐标系原点Ow在摄像机成像平面上的相应成像为ow。根据射影几何理论可知:直径AB的端点A和端点B调和分割靶标坐标系的原点Ow和直径AB所在直线的无穷远点P。同理,直径CD的端点C和端点D调和分割靶标坐标系的原点Ow和直径CD所在直线的无穷远点Q。根据射影几何的调和共轭理论有
>
其中,AOw代表端点A到靶标坐标系原点Ow之间的长度;BOw代表端点B到靶标坐标系原点Ow之间的长度;AP代表端点A到直径AB所在直线的无穷远点P之间的长度;BP代表端点B到直径AB所在直线的无穷远点P之间的长度;同理,COw代表端点C到靶标坐标系原点Ow之间的长度;DOw代表端点D到靶标坐标系原点Ow之间的长度;CQ代表端点C到直径CD所在直线的无穷远点Q之间的长度;DQ代表端点D到直径CD所在直线的无穷远点Q之间的长度;
根据摄像机透视投影的同素性和交比不变性,有
>
其中,aow代表端点a到靶标坐标系原点ow之间的长度;bow代表端点b到靶标坐标系原点ow之间的长度;ap代表端点a到消隐点p之间的长度;bp代表端点b到消隐点p之间的长度;同理,cow代表端点c到靶标坐标系原点ow之间的长度;dow代表端点d到靶标坐标系原点ow之间的长度;cq代表端点c到消隐点q之间的长度;dq代表端点d到消隐点q之间的长度;
第2步:利用图像处理获得a点处的像素坐标(ua、va)、b点处的像素坐标(ub、vb)、c点处的像素坐标(uc、vc)和d点处的像素坐标(ud、vd)并代入公式(3)中,获得消隐点p的像素坐标(up、vp)和消隐点q的像素坐标(uq、vq):
>
>
第3步:以第一摄像机坐标系的原点为原点,在第一摄像机坐标系上建立与靶标坐标系的坐标轴方向相同的过渡坐标系Oc-X'wY'wZ'w。
第4步:由于公式(7)和公式(8)中获得的消隐点是在摄像机成像平面下的像素坐标,而第一旋转矩阵Rcw是三维坐标,为此,需要将消隐点p和消隐点q的像素坐标转换为三维坐标,即将消隐点p和消隐点q的像素坐标进行焦距归一化,进而根据公式(6)获得消隐点p在第一摄像机坐标系下的三维坐标为
第5步:将第一摄像机坐标系下的消隐点p和消隐点q分别与第一摄像机坐标系的光心Oc连接,获得矢量Ocp和Ocq,由消隐点的性质可知,矢量Ocp与AB平行,矢量Ocq与CD平行,又由于靶标坐标系的建系原则,可知,矢量Ocp与OcX'w共线,矢量Ocq与OcY'w共线。
第6步:计算并单位化由矢量Ocp和Ocq在第一摄像机坐标系中确定的平面Ocpq的法向量
>
其中,||·||代表求模运算;根据消隐点的性质可知,过渡坐标系的OcX'w轴和OcY'w轴分别位于矢量Ocp和Ocq所在的直线上。法向量
第7步:计算法向量
>
法向量
第8步:获得与法向量
>
其中,法向量
第9步:根据第8步中的结论,第一摄像机坐标系变换至过渡坐标系可看做以正交向量δ为旋转轴,旋转
>
其中,I是一个3×3的单位矩阵;
第10步:根据消隐点的性质可知,过渡坐标系的OcX'w轴和OcY'w轴分别位于矢量Ocp和Ocq所在的直线上,但矢量Ocp和Ocq方向无法确定。因此,由消隐点p和消隐点q所求出旋转矩阵rcw并不是第一摄像机坐标系相对于靶标坐标系的第一旋转矩阵Rcw。由于求解出的消隐点p和消隐点q位于摄像机成像平面上,故需要通过判断消隐点p和消隐点q在摄像机成像平面上的成像位置与靶标坐标系Ow-XwYwZw在摄像机成像平面上的相应成像ow-xwywzw来确定二者之间的位置关系。
定义靶标坐标系的OwXw轴和OwYw轴在摄像机成像平面上的像分别为owxw轴和owyw轴,利用公式(13)和(14),获得其位置关系:
根据公式(13)和公式(14),不难得出,在摄像机成像平面下,直径AB和CD产生的消隐点p和消隐点q与靶标坐标系OwXw轴和OwYw轴所产生的相应成像坐标轴owxw和owyw之间的存在四种情况,如图5(a)、5(b)、5(c)和5(d)所示。
第11步:由于旋转矩阵rcw是一个3列的矩阵,故令旋转矩阵rcw=[r1,r2,r3],则根据第10步中获得所确定的位置关系,获得靶标坐标系的第一旋转矩阵Rcw:
关系一、当消隐点p和消隐点q分别位于坐标轴owxw和owyw的正轴时,第一摄像机坐标系相对于靶标坐标系的第一旋转矩阵Rcw为:
Rcw=rcw=[r1,r2,r3] (15)
关系二、当消隐点p位于坐标轴owxw轴的正轴,消隐点q位于坐标轴owyw轴的负轴时,第一摄像机坐标系相对于靶标坐标系的第一旋转矩阵Rcw为:
Rcw=rcw=[r1,-r2,-r3] (16)
关系三、当消隐点p位于坐标轴owxw轴的负轴,消隐点q位于坐标轴owyw轴的正轴时,第一摄像机坐标系相对于靶标坐标系的第一旋转矩阵Rcw为:
Rcw=rcw=[-r1,r2,-r3] (17)
关系四、当消隐点p和消隐点q分别位于坐标轴owxw和owyw的负轴时,第一摄像机坐标系相对于靶标坐标系的第一旋转矩阵Rcw为:
Rcw=rcw=[-r1,-r2,r3] (18)
步骤二、根据步骤一中获得的第一平移量tcw和第一旋转矩阵Rcw,根据齐次变换矩阵定义,获得第一摄像机外参数Bcw
>
步骤三、机器人末端进行第一次移动,并以机器人末端第一次移动后末端法兰盘中心位置为原点Oe',建立第二机器人末端坐标系Oe'-Xe'Ye'Ze';以第一次移动后摄像机光心为原点Oc',建立第二摄像机坐标系Oc'-Xc'Yc'Zc';通过机器人控制器获得末端第一次移动后第二机器人末端坐标系相对于机器人基座坐标系的变换矩阵Aoe';根据公式(20),
Aee'=(Aoe')-1Aoe (20),
获得末端第一次移动前后的机器人末端运动量Aee';
步骤四、按照步骤一的方式,获取末端第一次移动后第二摄像机坐标系相对于靶标坐标系的第二平移量t'c'w和第二旋转矩阵R'c'w;
步骤五、根据步骤四中获得的第二平移量t'c'w和第二旋转矩阵R'c'w,根据齐次变换矩阵定义,获得第二摄像机外参数Bc'w
>
步骤六、根据齐次线性变换理论,利用步骤二中获得的第一摄像机外参数Bcw和步骤五中获得的第二摄像机外参数Bc'w,获得末端第一次移动前后的摄像机运动量Bcc'
Bcc'=Bc'w×(Bcw)-1 (22);
步骤七、机器人末端进行第二次移动,以第一次移动后的位置作为初始位置,按照步骤三到步骤六的方法,对第二次移动后的机器人建立坐标系,获得第二次移动前后的机器人末端运动量Ae'e”以及末端第二次移动后的第三摄像机坐标系相对于靶标坐标系的第三平移量t”c”w和第三旋转矩阵R”c”w;进而获得第三摄像机外参数
>
并根据第三摄像机外参数Bc”w以及步骤五中获得的第二摄像机外参数Bc'w,获得末端第二次移动前后的摄像机运动量
Bc'c”=Bc”w×(Bc'w)-1 (24);
步骤八、利用运动量和手眼关系模型AX=XB,根据步骤三和步骤六中获得的机器人末端运动量Aee'和摄像机运动量Bcc',建立第一次移动机器人末端前后的第一约束方程Aee'X=XBcc';根据步骤七中获得的机器人末端运动量Ae'e”和摄像机运动量Bc'c”,建立第二次移动机器人末端前后的第二约束方程Ae'e”X=XBc'c”;联立第一约束方程和第二约束方程,获得手眼标定矩阵X。进而能够利用该位姿关系控制机器人末端的移动,以保证与机器人末端相连的摄像机能够准确的捕捉需要的画面。
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
机译: 一种具有视觉传感器能力的移动机器人的归巢导航方法,该视觉信息具有一个视觉传感器,能够计算从移动机器人到地标的距离
机译: 一种基于视觉的消失点的自主导航机器人结构地标识别方法,当使用廉价的视觉传感器时,该导航点能够获得可靠的识别率
机译: 基于机器视觉的动物机器人激励参数测量系统及方法