获得手眼标定矩阵的方法、手眼标定方法和数控系统与流程

摘要: 本发明涉及视觉感知领域,更具体地涉及获得手眼标定矩阵的方法、手眼标定方法和数控系统。背景技术:1、手眼标定是工业自动化中实现精准操作的关键技术。通过手眼标定,能...
获得手眼标定矩阵的方法、手眼标定方法和数控系统与流程

本发明涉及视觉感知领域,更具体地涉及获得手眼标定矩阵的方法、手眼标定方法和数控系统。

背景技术:

1、手眼标定是工业自动化中实现精准操作的关键技术。通过手眼标定,能将视觉传感器的坐标系与机械臂末端执行器的坐标系统一,从而准确识别物体位置并完成抓取、装配等任务。

2、然而,在有些应用场景下,机械臂无法进行旋转运动或不适合进行旋转运动,有时甚至只能在两个方向的平移轴上运动。这种情况下,很难获得手眼标定矩阵中的水平分量。现有的方法会采用手动选择对应点ax=b的方式进行求解,例如通过末端执行器戳标记点得到该标记点在基坐标系下的坐标b,通过视觉传感器识别该标记点在视觉传感器的坐标系下的坐标a,再代入上述等式求得手眼标定矩阵x。但这样的方式效率低下,并且精度受到人为的干扰,而且标记点的获取方式、标记点在基坐标系下的坐标获取以及标定点在视觉传感器的坐标系下的坐标获取的精度都会对标定精度有影响。

3、因此,亟需一种新的技术能在更广泛的应用场景下自动地实现高精度的手眼标定。

技术实现思路

1、本发明就旨在克服现有技术中的上述和/或其它问题。通过本发明,即使数控机构的末端执行器只能在两个平移轴上运动,也可以快速方便地获得视觉传感器的坐标系与末端执行器的坐标系之间的手眼标定矩阵,并且可根据实际应用场景来使用该手眼标定矩阵以实现视觉传感器与末端执行器之间的高精度标定。

2、根据本发明的第一方面,提供一种用于获得手眼标定矩阵的方法,其可包括如下步骤:获取标志物的横截面上至少连接两条折线或两段曲线的交点或r角在数控机构的基座标系下的点云数据作为基坐标系数据,所述两段曲线的曲率彼此不同;使所述数控机构的末端执行器在x轴和z轴的方向上同时移动至少两次,并在每次移动后通过视觉感测装置获取至少所述交点或r角的点云数据作为视觉感测数据,所述z轴为竖直方向,所述x轴和z轴所构成的平面与所述横截面平行,所述视觉感测装置安装在所述数控机构上在所述末端执行器附近;以及基于所述基坐标系数据和所述视觉感测数据得到所述末端执行器的坐标系与所述视觉感测装置的坐标系之间的手眼标定矩阵。

3、上述方法巧妙地利用标志物在垂直于横截面的方向上的投影重合,从而只需要数控机构的末端执行器在平行于所述横截面的x轴和z轴的方向上移动至少两次并进行采样,即可在“眼在手上”(视觉感测装置跟随着末端执行器一起运动)的情况下快速方便地求得末端执行器的坐标系与视觉感测装置的坐标系之间的手眼标定矩阵。该求得的手眼标定矩阵中的旋转矩阵和平移矩阵中的x轴和z轴方向上的分量具有极高的精度,可以完全满足数控机构沿着横截面或与横截面平行的平面进行运动的各种场景需求。同时,若数控机构需要在垂直于横截面的方向上也运动,则只需要采用额外的修正步骤对上述平移矩阵中的y轴方向上的分量进行修正即可。

4、根据本发明的第二方面,提供一种用于获得手眼标定矩阵的方法,其可包括如下步骤:a)获取标志物的横截面上至少连接两条折线或两段曲线的交点或r角在数控机构的基座标系下的点云数据作为基坐标系数据,所述两段曲线的曲率彼此不同;b)通过视觉感测装置获取至少所述交点或r角的点云数据作为视觉感测数据,所述横截面平行于x轴和z轴所构成的平面,所述z轴为竖直方向,所述视觉感测装置安装在所述数控机构以外的位置;c)使所述标志物运动至少一次,并在每次运动后再次执行所述步骤a)和所述步骤b);以及d)基于标志物运动前及每次运动后得到的所有所述基坐标系数据和所有所述视觉感测数据得到所述末端执行器的坐标系与所述视觉感测装置的坐标系之间的手眼标定矩阵。

5、上述获得手眼标定矩阵的方法与前述方法类似,但在前述方法的“眼在手上”的情况下,随着数控机构的运动,视觉感测装置即使采样标志物上的相同点,视觉感测装置相对于该相同采样点的位置仍然会发生变化,相应地,所得到的视觉感测数据也会变化。但上述“眼在手外”(视觉感测装置安装在所述数控机构以外的固定位置)的情况却不同:即使数控机构在运动,视觉感测装置相对于标志物上的相同采样点的位置也是不变的,所以如果视觉感测装置只能对标志物上的一部分区域进行采样,那么将可能导致无法得到不同的视觉感测数据。因此,上述方法在“眼在手外”的情况下通过使标志物运动来使视觉感测装置能够采样到标记物上的不同点,从而得到不同的视觉感测数据,相应地会对该不同点重新获得对应的基座标系数据,最后再基于所有采样点的基坐标系数据和视觉感测数据求得末端执行器的坐标系与视觉感测装置的坐标系之间的手眼标定矩阵。同样地,该求得的手眼标定矩阵中的旋转矩阵和平移矩阵中的x轴和z轴方向上的分量具有极高的精度,可以完全满足数控机构沿着横截面或与横截面平行的平面进行运动的各种场景需求;并且只需要采用额外的修正步骤对上述平移矩阵中的y轴方向上的分量进行修正,即可也满足数控机构在垂直于横截面的方向上运动的需求。

6、根据本发明的第三方面,提供一种用于获得手眼标定矩阵的方法,其可包括如下步骤:选取至少两个尺寸彼此不同的标志物。对于每个标志物,所述方法进一步:获取所述标志物的横截面上至少连接两条折线或两段曲线的交点或r角在数控机构的基座标系下的点云数据作为基坐标系数据,所述两段曲线的曲率彼此不同;并通过视觉感测装置获取至少所述交点或r角的点云数据作为视觉感测数据,所述横截面平行于x轴和z轴所构成的平面,所述z轴为竖直方向,所述视觉感测装置安装在所述数控机构以外的位置。所述方法还包括如下步骤:基于对于所述至少两个标志物所获得的所有所述基坐标系数据和所有所述视觉感测数据得到所述末端执行器的坐标系与所述视觉感测装置的坐标系之间的手眼标定矩阵。

7、上述方法在“眼在手外”的情况下通过改变标志物的尺寸来得到不同的视觉感测数据,相应地会对该改变尺寸后的标志物上的采样点重新获得对应的基座标系数据,最后再基于所有采样点的基坐标系数据和视觉感测数据求得末端执行器的坐标系与视觉感测装置的坐标系之间的手眼标定矩阵。同样地,该求得的手眼标定矩阵中的旋转矩阵和平移矩阵中的x轴和z轴方向上的分量具有极高的精度,可以完全满足数控机构沿着横截面或与横截面平行的平面进行运动的各种场景需求;并且只需要采用额外的修正步骤对上述平移矩阵中的y轴方向上的分量进行修正,即可也满足数控机构在垂直于横截面的方向上运动的需求。

8、所述数控机构可以例如为具有至少三个移动轴的数控机床或具有至少三个关节轴的机械臂,所述至少三个移动轴或关节轴使所述末端执行器在所述x轴、所述z轴和与所述横截面垂直的y轴的方向上移动。

9、所述标志物可以例如为矩形管材。可通过所述末端执行器对所述矩形管材的触碰来得到至少所述交点或r角在所述基座标系下的x轴坐标和z轴坐标。本发明不用像现有技术那样拘泥于切割圆才能实现手眼标定,所使用的标志物可以拓展到矩形管材等其它形状。

10、根据本发明的第四方面,提供一种用于对数控机构和视觉感测装置进行手眼标定的方法,其可包括如下步骤:采用如上所述的本发明的用于获得手眼标定矩阵的方法来获得所述数控机构的末端执行器的坐标系与所述视觉感测装置的坐标系之间的手眼标定矩阵,其中所述末端执行器的坐标在与所述横截面垂直的y轴上的投影保持不变;以及通过所述手眼标定矩阵使所述末端执行器的坐标和所述视觉感测装置的坐标互相转换。

11、上述手眼标定方法特别适用于与所述横截面垂直的y轴上的投影保持不变的场景。如前所述地,采用本发明的用于获得手眼标定矩阵的方法可以直接快速方便地求得高精度的旋转矩阵以及平移矩阵中的x轴和z轴方向上的分量,因此如果数控机构在所述y轴方向上不需要运动,那么可以直接采用上述获得的手眼标定矩阵来快速、精确地实现所述末端执行器的坐标和所述视觉感测装置的坐标之间的互相转换。

12、根据本发明的第五方面,提供一种用于对数控机构和视觉感测装置进行手眼标定的方法,其可包括如下步骤:采用如上所述的本发明的用于获得手眼标定矩阵的方法来获得所述数控机构的末端执行器的坐标系与所述视觉感测装置的坐标系之间的手眼标定矩阵;通过所述末端执行器在所述标志物的表面上切割至少一个孔。对于所述至少一个孔中的每一个:可获取该孔的中心在所述基座标系下的中心坐标;并且通过使所述视觉感测装置相对于所述标志物在y轴的方向上移动来获取所述孔的点云数据,并基于该点云数据拟合得到所述孔在所述视觉感测装置的坐标系下的中心坐标,所述y轴与所述横截面垂直。所述用于对数控机构和视觉感测装置进行手眼标定的方法还可包括如下步骤:基于所述手眼标定矩阵、所述至少一个孔的全部所述基座标系下的中心坐标和所述视觉感测装置的坐标系下的中心坐标得到校正后的手眼标定矩阵;以及通过所述校正后的手眼标定矩阵使所述末端执行器的坐标和所述视觉感测装置的坐标进行互相转换。

13、如果数控机构在y轴方向上也需要运动,那么只需要如上述手眼标定方法那样在前述获得的手眼标定矩阵的基础上对其中的y轴分量进行校正,即可采用该校正后的手眼标定矩阵来快速、精确地实现所述末端执行器的坐标和所述视觉感测装置的坐标之间的互相转换。

14、根据本发明的第六方面,提供一种数控系统,其包括:具有末端执行器的数控机构、视觉感测装置和控制器。所述视觉感测装置可安装在所述数控机构上、在所述末端执行器附近(“眼在手上”),或可安装在所述数控机构以外的位置(“眼在手外”)。所述控制器可配置为执行如上所述的根据本发明第一方面、第二方面和第三方面的用于获得手眼标定矩阵的方法以及第四方面和第五方面的手眼标定方法。

15、上述视觉感测装置可以例如为视觉传感器或3d相机。

16、根据本发明的第七方面,提供一种计算机可读存储介质,其上记录有经编码的指令,当执行该指令时实现如上所述的根据本发明的用于获得手眼标定矩阵的方法或用于对数控机构和视觉感测装置进行手眼标定的方法。

17、根据本发明的第八方面,提供一种计算机程序产品,其包括计算机程序,当执行该计算机程序时实现如上所述的根据本发明的用于获得手眼标定矩阵的方法或用于对数控机构和视觉感测装置进行手眼标定的方法。

18、通过下面结合附图的详细描述,本发明的其它特征和方面会变得更加清楚。