本发明涉及一种双目视觉装置及坐标标定方法。
背景技术:
现有技术中对于放置手机的工件上的三个凸点(用于对手机进行限位),并不能非常精确地确定三个凸点的具体坐标,导致无法精准地控制机械手臂将手机移动至三个凸点限定的区域内,导致手机被移动时可能会与凸点接触造成刮擦,影响手机质量。
技术实现要素:
本发明要解决的技术问题是为了克服现有技术中不能非常精确地确定放置手机的工件上三个凸点的具体坐标的缺陷,提供一种双目视觉装置及坐标标定方法。
本发明是通过下述技术方案来解决上述技术问题的:
本发明提供了一种双目视觉装置,其特点在于,所述双目视觉装置设置于机械手臂的工具上,所述双目视觉装置包括第一摄像头和第二摄像头,所述第一摄像头和所述第二摄像头均高于所述机械手臂的工具的末端点,所述第一摄像头和所述第二摄像头之间呈一夹角,所述第一摄像头和所述第二摄像头均用于对凸点进行拍摄;
所述双目视觉装置还包括:
参数标定模块,用于获取所述第一摄像头和所述第二摄像头的标定参数;
第一坐标转换模块,用于将所述第一摄像头拍摄的凸点在屏幕坐标系中的坐标转换为世界坐标系中的第一世界坐标、将所述第一摄像头在屏幕坐标系中的原点坐标转换为世界坐标系中的第二世界坐标;并将所述第二摄像头拍摄的凸点在屏幕坐标系中的坐标转换为世界坐标系中的第三世界坐标、将所述第二摄像头在屏幕坐标系中的原点坐标转换为世界坐标系中的第四世界坐标;
坐标计算模块,用于计算所述凸点在所述世界坐标系中的第一凸点坐标,所述第一凸点坐标为所述第一世界坐标和所述第二世界坐标构成的直线与所述第三世界坐标和所述第四世界坐标构成的直线之间的交点在世界坐标系中的坐标;
第二坐标转换模块,用于将所述凸点在世界坐标系中的第一凸点坐标转换为在所述机械手臂的工具坐标系中的第二凸点坐标。
较佳地,所述双目视觉装置还包括:
控制模块,用于控制所述机械手臂的工具移动至所述第二凸点坐标位置处。
较佳地,所述标定参数包括内参数、外参数和畸变参数。
较佳地,所述凸点的数量为三个。
本发明的目的在于还提供了一种坐标标定方法,其特点在于,其利用上述的双目视觉装置实现,包括以下步骤:
所述第一摄像头和所述第二摄像头均对凸点进行拍摄;
获取所述第一摄像头和所述第二摄像头的标定参数;
将所述第一摄像头拍摄的凸点在屏幕坐标系中的坐标转换为世界坐标系中的第一世界坐标、将所述第一摄像头在屏幕坐标系中的原点坐标转换为世界坐标系中的第二世界坐标;并将所述第二摄像头拍摄的凸点在屏幕坐标系中的坐标转换为世界坐标系中的第三世界坐标、将所述第二摄像头在屏幕坐标系中的原点坐标转换为世界坐标系中的第四世界坐标;
计算所述凸点在所述世界坐标系中的第一凸点坐标,所述第一凸点坐标为所述第一世界坐标和所述第二世界坐标构成的直线与所述第三世界坐标和所述第四世界坐标构成的直线之间的交点在世界坐标系中的坐标;
将所述凸点在世界坐标系中的第一凸点坐标转换为在所述机械手臂的工具坐标系中的第二凸点坐标。
较佳地,所述坐标标定方法还包括:控制所述机械手臂的工具移动至所述第二凸点坐标位置处。
较佳地,所述标定参数包括内参数、外参数和畸变参数。
较佳地,所述凸点的数量为三个。
本发明的积极进步效果在于:本发明通过两部摄像机拍摄放置手机的工件上的凸点的照片,经过计算后可以得出凸点的具体坐标,从而可以非常精确地确定凸点坐标,进而可以精准地控制机械手臂将手机移动至三个凸点限定的区域内,避免手机被移动至工件位置处时与凸点接触,保障了手机的质量。
附图说明
图1为本发明的较佳实施例的双目视觉装置的部分结构示意图。
图2为本发明的较佳实施例的双目视觉装置的模块示意图。
图3为本发明的较佳实施例的坐标标定方法的流程图。
具体实施方式
下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
如图1所示,本发明的双目视觉装置1设置于机械手臂的工具2上,所述双目视觉装置1包括第一摄像头11和第二摄像头12,所述第一摄像头11和所述第二摄像头12均高于所述机械手臂的工具2的末端点,并且在机械手臂的工具运动时所述第一摄像头11和所述第二摄像头12不会对其产生干涉;
所述第一摄像头11和所述第二摄像头12之间呈一夹角,具体角度不作特殊限制,所述第一摄像头11和所述第二摄像头12均用于对放置手机的工件3上的凸点进行拍摄,具体凸点数量为三个,因此,需要确保所述第一摄像头11和所述第二摄像头12都能获取凸点的清晰成像。
如图2所示,本发明的双目视觉装置1包括参数标定模块13、第一坐标转换模块14、坐标计算模块15、第二坐标转换模块16以及控制模块17;
其中,所述参数标定模块13用于获取所述第一摄像头和所述第二摄像头的标定参数;本发明中具体采用“张正友标定”的标定法,获取的标定参数包括内参数、外参数以及畸变参数,具体如下:
内参数:(fx,fy,cx,cy);
外参数:旋转矩阵(rotation)和平移矩阵(translation);
畸变参数:(k1,k2,k3,k4);
下面对本发明所涉及的各个坐标系进行介绍:
世界坐标系(b);
机械手臂的腕部坐标系(w);
机械手臂的工具坐标系(t);
第一摄像头的坐标系(c1);
第二摄像头的坐标系(c2);
屏幕坐标系(s);
所述第一坐标转换模块14则可以实现其他各个坐标系到世界坐标系的转换,具体地:
1、机械手臂的腕部坐标系(w)到世界坐标系(b)的转换:
根据机械手臂的结构特性可以得到机械手臂的腕部坐标系到世界坐标系的传递矩阵,设为:
2、机械手臂的工具坐标系(t)到世界坐标系(b)的转换:
为了计算与测量的简便,令机械手臂的工具坐标系(t)的姿态与机械手臂的腕部坐标系(w)保持一致;机械手臂的工具坐标系(t)的原点位置位于机械手臂的腕部坐标系(w)的
所以,机械手臂的工具坐标系(t)到世界坐标系(b)的传递矩阵,设为:
3、第一摄像头的坐标系(c1)到世界坐标系(b)的转换:
对第一摄像头完成标定后,可以得到第一摄像头的旋转矩阵
所以,第一摄像头的坐标系(c1)到世界坐标系(b)的传递矩阵,设为:
4、第二摄像头的坐标系(c2)到世界坐标系(b)的转换:
同理,可得第二摄像头的坐标系(c2)到世界坐标系(b)的传递矩阵,设为:
5、屏幕坐标系(s)到世界坐标系(b)的转换:
屏幕坐标系(s)是指,世界坐标系中的物体在摄像头成像屏幕上的坐标。对于单个摄像头,由于无法得知摄像头到拍摄物体的距离,所以无法将屏幕坐标系转换为世界坐标系,但是可以求解并利用世界坐标来描述从摄像头到拍摄物体两点所确定的直线。
因此,本发明采用双摄像头来解决此问题,双摄像头得到的两条直线的交点即是拍摄物体的世界坐标。
所述第一坐标转换模块14用于将所述第一摄像头拍摄的凸点在屏幕坐标系中的坐标转换为世界坐标系中的第一世界坐标、将所述第一摄像头在屏幕坐标系中的原点坐标转换为世界坐标系中的第二世界坐标;并将所述第二摄像头拍摄的凸点在屏幕坐标系中的坐标转换为世界坐标系中的第三世界坐标、将所述第二摄像头在屏幕坐标系中的原点坐标转换为世界坐标系中的第四世界坐标;
具体地,假设拍摄物体(即凸点)的屏幕坐标为(u,v);根据“张正友标定”公式:
s*m=a*[r|t]*m;
其中,r,t为摄像头的外参数,m为屏幕坐标,m为世界坐标;
用矩阵表示:
所以求得:
p1即为上述第一世界坐标,令屏幕坐标为(0,0,0),求得所述第二世界坐标p2;所以由p1p2即可以确定一条直线;
同理,可以求得所述第二摄像头得到的另一条直线;
所述坐标计算模块15用于计算所述凸点在所述世界坐标系中的第一凸点坐标,所述第一凸点坐标为所述第一世界坐标和所述第二世界坐标构成的直线与所述第三世界坐标和所述第四世界坐标构成的直线之间的交点在世界坐标系中的坐标;
在本发明中,求解上述两条直线的交点,即得到拍摄的凸点的世界坐标,此坐标(即第一凸点坐标)设为:
由此,本发明中利用第一摄像头拍摄凸点的图像,可以确定一条直线,再利用第二摄像头拍摄凸点的图像,可以确定另一条直线,根据以上求解,即可获取凸点的世界坐标为:
所述第二坐标转换模块16则用于将所述凸点在世界坐标系中的第一凸点坐标转换为在所述机械手臂的工具坐标系中的第二凸点坐标;
具体计算公式为:
所述控制模块17即可以控制所述机械手臂的工具移动至所述第二凸点坐标
如图3所示,本发明还提供了一种坐标标定方法,其利用上述双目视觉装置实现,包括以下步骤:
步骤101、所述第一摄像头和所述第二摄像头均对凸点进行拍摄;
步骤102、获取所述第一摄像头和所述第二摄像头的标定参数;
步骤103、将所述第一摄像头拍摄的凸点在屏幕坐标系中的坐标转换为世界坐标系中的第一世界坐标、将所述第一摄像头在屏幕坐标系中的原点坐标转换为世界坐标系中的第二世界坐标;并将所述第二摄像头拍摄的凸点在屏幕坐标系中的坐标转换为世界坐标系中的第三世界坐标、将所述第二摄像头在屏幕坐标系中的原点坐标转换为世界坐标系中的第四世界坐标;
步骤104、计算所述凸点在所述世界坐标系中的第一凸点坐标,所述第一凸点坐标为所述第一世界坐标和所述第二世界坐标构成的直线与所述第三世界坐标和所述第四世界坐标构成的直线之间的交点在世界坐标系中的坐标;
步骤105、将所述凸点在世界坐标系中的第一凸点坐标转换为在所述机械手臂的工具坐标系中的第二凸点坐标;
步骤106、控制所述机械手臂的工具移动至所述第二凸点坐标位置处。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这些仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。