视觉机器人的位姿标定方法及装置、视觉机器人、介质与流程
本申请涉及机器人操作领域,涉及但不限定于视觉机器人的位姿标定方法及装置、视觉机器人、介质。
背景技术:
随着制造业的飞速发展,机器人作为高新产业也发展迅速,其应用场景不断扩大。例如:在机器人上安装视觉传感器,根据视觉传感器获取的视觉信息帮助机器人对外界环境进行检测、判断、识别、测量等,使得机器人可执行更加复杂、智能的任务。
基于视觉的机器人应用在使用之前,进行手眼标定以获得机械臂和相机的位姿关系。对于固定位置的相机的手眼标定,常用的方法是使用机械臂夹持标定板,在相机视野中随机摆放标定板,进而通过标定程序完成标定。为获得比较准确的标定结果,随机位姿往往需要至少几十次。对于绝大多数机器人,标定时的随机位置往往需要人手操作来完成,费时费力。
技术实现要素:
有鉴于此,本申请实施例提供一种视觉机器人的位姿标定方法及装置、视觉机器人、介质,至少解决了相关技术中需要人手操作来完成标定时的随机位置的问题。
本申请实施例的技术方案是这样实现的:
第一方面,本申请实施例提供一种视觉机器人的位姿标定方法,所述方法包括:
根据相机的相机坐标系的第三坐标轴向量,为所述视觉机器人的机械臂生成标定坐标系的第三坐标轴向量;
根据所述标定坐标系的第三坐标轴向量和所述视觉机器人的世界坐标系的第二坐标轴向量,确定所述标定坐标系的第一坐标轴向量;
根据所述标定坐标系的起始位置、所述标定坐标系的第三坐标轴向量和所述标定坐标系的第一坐标轴向量,确定所述机械臂的标定位姿。
第二方面,本申请实施例提供一种视觉机器人的位姿标定装置,所述装置包括第一生成模块、第一确定模块和第二确定模块,其中:
所述第一生成模块,用于根据相机的相机坐标系的第三坐标轴向量,为所述视觉机器人的机械臂生成标定坐标系的第三坐标轴向量;
所述第一确定模块,用于根据所述标定坐标系的第三坐标轴向量和所述视觉机器人的世界坐标系的第二坐标轴向量,确定所述标定坐标系的第一坐标轴向量;
所述第二确定模块,用于根据所述标定坐标系的起始位置、所述标定坐标系的第三坐标轴向量和所述标定坐标系的第一坐标轴向量,确定所述机械臂的标定位姿。
第三方面,本申请实施例提供一种视觉机器人,包括:
本体;
基座,用于安装和固定所述视觉机器人的机械臂;
相机,安装在所述视觉机器人的基座外的固定位置,用于拍摄标定板,以得到所述标定板在相机坐标系中的坐标;
机械臂,通过关节连接在所述基座上,用于控制标定板到达标定位姿;
标定板,安装在所述机械臂的末端,用于确定所述相机与所述机械臂之间的转换关系;
存储器和处理器,设置在所述本体上,所述存储器存储有可在处理器上运行的计算机程序,所述处理器,用于执行所述程序时实现上述位姿标定方法中的步骤。
第四方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述视觉机器人的位姿标定方法中的步骤。
本发明实施例提供的技术方案带来的有益效果至少包括:
在本申请实施例中,首先,根据相机的相机坐标系的第三坐标轴向量,为所述视觉机器人的机械臂生成标定坐标系的第三坐标轴向量;根据所述标定坐标系的第三坐标轴向量和所述视觉机器人的世界坐标系的第二坐标轴向量,确定所述标定坐标系的第一坐标轴向量;根据所述标定坐标系的起始位置、所述标定坐标系的第三坐标轴向量和所述标定坐标系的第一坐标轴向量,确定所述机械臂的标定位姿;如此,通过相机坐标系的第三坐标轴向量和世界坐标系的第二坐标轴向量确定机械臂在标定坐标系的相对位置,结合标定坐标系的起始位置,确定机械臂的标定位姿即机械臂末端标定板的位姿,从而无需人手操作,可自动生成用于标定的标定板可见位姿,能够节省人力物力,缩短部署时间。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图,其中:
图1为本申请实施例提供的一种视觉机器人的位姿标定方法的流程示意图;
图2a为本申请实施例提供的机器臂本体的结构示意图;
图2b为本申请实施例提供的位姿标定方法的框架示意图;
图3为本申请实施例提供的位姿标定过程中三种坐标系的关系示意图;
图4a为本申请实施例提供的生成标定位姿的流程示意图;
图4b为本申请实施例提供的确定标定坐标系中z轴向量的示意图;
图5为本申请实施例提供的一种视觉机器人的位姿标定装置的组成结构示意图;
图6为本申请实施例提供的一种视觉机器人的硬件实体示意图。
具体实施方式
根据机器人运动学的知识,通常机器人也指多关节多自由度机械臂,机械臂通过多个旋转电机驱动,实现机器人末端的可控制定位驱动。机器人自身是没有传感器的,人为在机器人上或旁安装相机,通过使用相机获得目标坐标,从而让机器人根据相机得到的图像对目标进行操作的方式叫做机器人视觉。
机器人视觉系统中要实现像素坐标与实际坐标的转换,首先要进行标定。这里标定不仅包括相机标定,也包括机器人系统的手眼标定。相机坐标系和机械手坐标系的变换关系通过手眼标定得到,相机标定得到的是相机内参、外参和畸变系数,手眼标定得到的是相机坐标系在机械手坐标系中的位姿。
1、相机标定部分通过张正友棋盘标定法对摄像头进行标定。
棋盘是一块由黑白方块间隔组成的标定板,作为相机标定的标定物(从真实世界映射到数字图像内的对象)。之所以用棋盘作为标定物是因为平面棋盘模式更容易处理(相对于复杂的三维物体),但与此同时,二维物体相对于三维物体会缺少一部分信息,于是通过多次改变棋盘的方位来捕捉图像,以求获得更丰富的坐标信息。
由于摄像头标定结果要用到后面的手眼标定中,棋盘图片拍摄时需要遵守:标定板固定位置不动,手眼组合体变换姿态拍摄图片,通过opencv或者matlab进一步得到两组坐标系的两两转化矩阵。
2、手眼标定部分
为了使得相机(亦即机器人的眼)与机器人(亦即机器人的手)坐标系之间建立关系就必须要对机器人与相机坐标系进行标定,该标定过程也就叫做手眼标定。
通常机器人的手眼关系分为眼在手上(eye-in-hand)以及眼在手旁(eye-to-hand)两种。其中眼在手上的情况中,机器人的视觉系统随着机械臂末端运动;而眼在手旁的情况中,机器人的视觉系统与机器人基座固定,不会在世界坐标系内运动。
对于眼在手上的情况,机器人手眼标定即标定得到机器人基座与相机之间的坐标变换关系;对于眼在手旁的情况,机器人手眼标定即标定得到机器人末端与相机之间的坐标变换关系。两种标定方法都将机器人以及相机之间的不变量确定了下来,从而建立了两者的转换矩阵。
手眼标定目的:得到机器手坐标系转化为相机坐标系的转化矩阵。也就是机器人的手眼位置关系,该关系用符号x表示,具体可以用方程ax=xb求解;其中a为表示机械手坐标系到基础坐标系的转换关系,可以由机器人系统中得出;x表示相机坐标系到机械手坐标系的转换关系;这个转化关系在机械手移动过程中是不变的(未知,待求);b表示相机坐标系到标定坐标系的转换关系(相机外参),可以由相机标定求出。
对于标定板到相机坐标变换的求解,通过标定板标定出相机与投影仪的内外参数,利用三维重建函数,便可以重建出标定的特征点在相机坐标系的三维坐标。同时,标定板上的特征点在标定板坐标系下的坐标由设计值已知,因而,通过刚体变换便可以求解出相机坐标系与标定板坐标系的变换矩阵。
实际中,分别知道a、b求出来的x有无穷多个解。所以为了实现唯一解至少需要两组a和b,即至少需要3个位置的相机标定结果。
对于固定位置的相机的手眼标定,常用的方法是使用机械臂夹持标定板,在相机视野中随机摆放标定板,进而通过标定程序完成标定。为获得比较准确的标定结果,随机的标定位姿往往需要至少几十次才能确定。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
本申请实施例提供一种视觉机器人的位姿标定方法,图1为本申请实施例提供的一种视觉机器人的位姿标定方法的流程示意图,如图1所示,所述方法至少包括以下步骤:
步骤s110,根据相机的相机坐标系的第三坐标轴向量,为所述视觉机器人的机械臂生成标定坐标系的第三坐标轴向量。
这里,相机的位置以及相机坐标系是固定不变的,相机的相机坐标系的第三坐标轴向量为zc向量,为用户指定的向量。通常情况下,zc向量应以相机的光心为原点,与光轴重合,并垂直于成像平面,且取摄影方向为正方向,在标定过程中,对于竖直朝下安装的相机来说,可粗略指定zc的坐标表示为(0,0,-1)t,以便使机械臂落在相机的视野内。在其他实施例中相机也可以朝其它方向安装,相应地机械臂也要落在相机的视野内,实施过程中可根据实际情况确定,本申请实施例对此不作限定。
这里,标定坐标系的第三坐标轴向量为zg向量,为保证标定位姿落在相机视野范围内,生成的zg向量应位于以zc向量的反向量为轴线的有限锥角的圆锥内,其中的有限锥角为标定时用户指定的与zc向量之间的最大角度,或者为经验值,本申请实施例对此不作限定。
这里,生成zg向量的过程,一种可能的实现方式是根据给定的zg向量的指向和锥角范围βmax随机生成β∈[0,βmax],并建立以轴线为zg向量的反向量为轴线和锥角为β的圆锥,确定zg向量在相机坐标系内的坐标表示,进而通过转换矩阵转化为世界坐标系的表示,即得到zg向量。实际的实施过程可根据实际情况确定,本申请实施例对此不作限定。
步骤s120,根据所述标定坐标系的第三坐标轴向量和所述视觉机器人的世界坐标系的第二坐标轴向量,确定所述标定坐标系的第一坐标轴向量。
这里,所述标定坐标系的第三坐标轴向量为上述步骤s110生成的zg向量,由标定板指向相机,一般指向机械臂上方。
这里,所述视觉机器人的世界坐标系的第二坐标轴向量为y轴向量,一般指向机械臂左方。
这里,所述标定坐标系的第一坐标轴向量为xg向量,通过对y轴向量和zg向量作叉乘,可以确定xg向量,并且在y轴向量向左,zg向量向上的情况下,根据右手螺旋法则,叉乘后得到的xg向量远离y轴向量和zg向量组成的平面,即指向机械臂后方(当前视线方向向后),也就是远离机械臂本体的方向。
步骤s130,根据所述标定坐标系的起始位置、所述标定坐标系的第三坐标轴向量和所述标定坐标系的第一坐标轴向量,确定所述机械臂的标定位姿。
这里,所述标定坐标系的起始位置为在世界坐标系中的随机位置,表示为pr=(x,y,z)t,可以为根据用户输入的随机范围和规则随机生成的,也可以为根据相机的视野范围和机械臂的特征参数随机生成的。
这里,所述机械臂的标定位姿为标定板在世界坐标系中的位置和姿态,包括6个自由度,可以由世界坐标系中的随机位置和标定坐标系的三个坐标轴向量确定。
一种可能的实现方式是根据上述步骤得到的标定坐标系的zg向量和xg向量,按照右手法则,可以得到标定坐标系下的第二坐标轴向量即yg向量,然后再加上随机位置pr=(x,y,z)t,就可以确定机械臂的标定位姿。
在本申请实施例中,首先,根据相机的相机坐标系的第三坐标轴向量,为所述视觉机器人的机械臂生成标定坐标系的第三坐标轴向量;然后,根据所述标定坐标系的第三坐标轴向量和所述视觉机器人的世界坐标系的第二坐标轴向量,确定所述标定坐标系的第一坐标轴向量;最后,根据所述标定坐标系的起始位置、所述标定坐标系的第三坐标轴向量和所述标定坐标系的第一坐标轴向量,确定所述机械臂的标定位姿,如此,通过相机坐标系的第三坐标轴向量和世界坐标系的第二坐标轴向量确定机械臂在标定坐标系的相对位置,结合标定坐标系的起始位置,确定机械臂的标定位姿即机械臂末端标定板的位姿,从而无需人手操作,可自动生成用于标定的标定板可见位姿,能够节省人力物力,缩短部署时间。
在其他实施例中,所述相机坐标系的第三坐标轴向量与所述相机的光轴平行,所述标定坐标系中标定板平面的法向量与所述相机的光轴不平行。例如,相机坐标系第三坐标轴与相机的光轴平行,标定坐标系第三坐标轴与标定板垂直,避免标定板与相机的光轴平行,使得手眼标定时标定板上的点不能落入相机的视野范围的情况。
在其他实施例中,在通过上述步骤自动生成机械臂的标定位姿后,还可以完成机械臂自主规划控制,在实施过程中可以按照以下步骤实现:确定所述机械臂的当前位置;根据所述当前位置和所述标定位姿,生成所述机械臂的移动轨迹;根据所述移动轨迹,控制所述机械臂到达所述标定位姿。
这里,机械臂以得到的标定位姿作为期望位姿,输入到自主规划控制模块中,生成当前位置到的轨迹,并将关节角、关节速度等信息发送给机械臂控制机械臂到达所述标定位姿。
本申请实施例提供一种视觉机器人的位姿标定方法,解决固定相机的手眼标定过程中随机标定位姿的生成问题,省去人手操作,并自主规划地控制机器人运动到指定的标定位姿。
基于视觉的机器人应用在使用之前,都要进行手眼标定以获得机械臂和相机的位姿关系。对于绝大多数机器人,标定时的随机位置往往需要人手操作来完成,费时费力,且无法保证充足的随机性。本申请实施例通过以下方法自动生成标定位姿,并且自动生成的标定位姿应该具有以下性质:(1)位于相机视野范围内;(2)标定板不受机械臂等环境物遮挡;(3)随机位姿应是机械臂容易执行得到的。
标定位姿是标定时的标定位置和方向。一个物体的位置可以用(x,y,z)来表示;方向可以用(α,β,γ)来表示,其中,α,β,γ分别表示围绕三个坐标轴旋转的角度。所以一个标定位姿有6个自由度。
图2a为本申请实施例提供的机械臂本体的结构示意图,如图2a所示,包括基座201和机械臂202,其中,在基座201建立世界坐标系fw,规定x轴指向机械臂202的前方,y轴指向机械臂202的左方,z轴指向机械臂202的上方。
图2b为本申请实施例提供的位姿标定方法的框架示意图,如图2b所示,包括基座201、机械臂202、相机203和标定板204,其中,相机203安装在基座外、标定板204的上方位置,规定相机的z轴竖直向下,在标定过程中拍摄标定板204,以得到标定板在相机坐标系中的坐标;机械臂202通过关节连接在基座201上;标定板204固定在机械臂202末端;在标定过程中,在相机视野中通过控制机械臂移动标定板204到特定位姿,以进一步通过标定程序完成标定。
图3为本申请实施例提供的位姿标定过程中三种坐标系的关系示意图,如图3所示,共有三个坐标系:世界坐标系fw,相机坐标系fc和标定坐标系fg,twc表示世界坐标系fw到相机坐标系fc的变换矩阵;tcg表示相机坐标系fc到标定坐标系fg的变化矩阵;twg表示标定坐标系fg到世界坐标系fw的变换矩阵。设xg向量为标定板远离机械臂本体方向。其中:
世界坐标系fw是机械臂规划控制的参考坐标系,一般选择与机械臂的基座坐标系重合。
相机在世界坐标系中的位姿用相机坐标系fc表示。相机坐标系的zc向量为相机视角的朝向,规定为竖直向下朝向,用户无需关心实际的相机坐标系定义,只需任取该坐标系下的xc向量和yc向量的坐标表示满足右手法则即可。
标定坐标系fg为在标定板上建立的坐标系,作为参考坐标系,描述标定板在世界坐标系中的位置和姿态。规定标定坐标系的zg向量为标定板上具有标定图案面的法向量,xg向量指向远离标定板安装法兰的方向,yg向量根据右手法则确定。
在实施过程中,将标定板安装在机械臂末端上,系统接收用户输入的机械臂的随机空间限定信息,包括机械臂活动的随机位置范围、相机的指向,标定板与相机光轴角度范围等,自动生成标定板在世界坐标系中的位姿。图4a为本申请实施例提供的生成标定位姿的流程示意图,如图4a所示,所述流程至少包括如下步骤:
s410,获取标定位姿的随机空间限定信息范围和随机规则。
这里,随机空间限定信息包括随机范围和随机规则,其中随机范围为标定坐标系的原点取值的空间范围,一种常见的随机范围限定为:分别限定x轴、y轴和z轴三个方向的最大值和最小值,也可采用其他随机范围的限定形式。在实际中,可以根据相机的视野范围和机械臂的具体参数设定,也可以由用户直接输入,以保证机械臂不脱离相机视野并且使机械臂的标定位姿能够达到。
这里,随机规则指在随机范围内,生成随机的标定坐标系原点的规则和算法,一种常见的随机规则为:在随机范围里均匀采样,也可以采用其他可以实现的随机规则,本申请实施例在此不作限定。
s420,生成机械臂的随机位置pr并作为标定坐标系fg的原点。
这里,在特定的随机范围内,按照随机规则生成机械臂在世界坐标系fw中的随机位置pr=(x,y,z)t可以作为标定坐标系fg的原点,也就是标定位姿的平移向量,为保证上述性质(3),随机位置应在机械臂的可达空间内,以保证后续的规划控制能够有解。
s430,根据zc向量随机生成标定坐标系fg中的zg向量。
这里,用户粗估计相机坐标系fc下zc向量的指向。通常情况下,zc轴向量应以相机的光心为原点,与光轴重合,并垂直于成像平面,且取摄影方向为正方向,在标定过程中,对于竖直朝下安装的相机来说,可粗略认为zc的坐标表示为(0,0,-1)t,以便使机械臂落在相机的视野内。
这里,为保证上述性质(1),zg向量应位于以zc向量的反向量为轴线的有限锥角的圆锥内。图4b为本申请实施例提供的确定标定坐标系中z轴向量的示意图,如图4b所示,在用户给出zg向量的指向和锥角范围βmax后,用户可随机生成β∈[0,βmax],α∈[0,2π],则zg向量在相机坐标系内的坐标表示为
s440,根据zg向量和世界坐标系fw下的y轴向量,得到xg向量。
这里,为保证上述性质(2)和(3),标定坐标系fg下的xg向量应该远离机械臂,利用上述步骤s530确定的zg向量(表示机械臂向上方向)和fw坐标系下的y轴向量(表示机械臂向左方向)做叉乘运算,得到xg向量,以使得xg向量(表示机械臂向后方向),指向远离机械臂方向。
s450,在标定坐标系fg下,根据zg向量和xg向量,得到yg向量。
这里,根据右手法则,由上述步骤s430得到的zg向量和步骤s440得到的xg向量,得到标定坐标系fg下的yg向量。
s460,根据zg向量、xg向量、yg向量和随机位置,确定标定位姿。
这里,以步骤s410中得到的随机位置pr=(x,y,z)t作为平移向量,以由zg向量、xg向量和yg向量作为标定坐标系的坐标轴指向,确定标定板在世界坐标系fw下的标定位姿fg,并获得twc的矩阵表示[xg,yg,zg,pr]。
在一些其他实施例中,可以进一步进行机械臂的自主规划控制,可以通过以下步骤实现:机械臂以fg作为期望位姿,输入到自主规划控制模块中,生成当前位置到fg的轨迹。获取机械臂的特征参数,并发送给机械臂,控制机械臂到达fg位姿。
这里,机械臂的特征参数包括特征关节角、关节速度等信息,获取机械臂的特征参数的方式为现有技术中任何可以实现的方式,在此不作限定。
在本申请实施例中,根据用户输入获得满足位于相机视野范围内、标定板不受机械臂等环境物遮挡且机械臂容易执行得到的标定位姿,无需人手操作,可自动生成用于标定的标定板可见位姿,能够节省人力物力,缩短部署时间,同时保证标定位姿的随机性,提高标定精度。
本申请实施例提供一种视觉机器人的位姿标定装置500,该装置包括所包括的各模块、以及各模块所包括的各单元,可以通过视觉机器人中的处理器来实现;当然也可通过具体的逻辑电路实现;在实施的过程中,处理器可以为中央处理器(centralprocessingunit,cpu)、微处理器(microprocessingunit,mpu)、数字信号处理器(digitalsignalprocessor,dsp)或现场可编程门阵列(fieldprogrammablegatearray,fpga)等。
图5为本申请实施例提供的一种视觉机器人的位姿标定装置的组成结构示意图,如图5所示,所述对视觉机器人的位姿标定装置500包括:所述装置包括第一生成模块510、第一确定模块520和第二确定模块530,其中:
所述第一生成模块510,用于根据相机的相机坐标系的第三坐标轴向量,为所述视觉机器人的机械臂生成标定坐标系的第三坐标轴向量;
所述第一确定模块520,用于根据所述标定坐标系的第三坐标轴向量和所述视觉机器人的世界坐标系的第二坐标轴向量,确定所述标定坐标系的第一坐标轴向量;
所述第二确定模块530,用于根据所述标定坐标系的起始位置、所述标定坐标系的第三坐标轴向量和所述标定坐标系的第一坐标轴向量,确定所述机械臂的标定位姿。
在其他实施例中,所述相机坐标系的第三坐标轴向量与所述相机的光轴平行,所述标定坐标系中标定板平面的法向量与所述相机的光轴不平行。
在其他实施例中,所述装置还包括第二生成模块和第三生成模块,其中:所述第二生成模块,用于根据用户输入的所述视觉机器人的机械臂的位姿范围,为所述机械臂生成所述标定坐标系的起始位置;所述第三生成模块包括第一确定单元,用于确定相机的视野范围和所述视觉机器人的机械臂的特征参数;生成单元,用于根据所述视野范围和所述机械臂的特征参数,为所述机械臂生成所述标定坐标系的起始位置。
在其他实施例中,所述相机坐标系的第三坐标轴向量指向竖直向下方向,和/或,所述第一生成模块,还用于在以所述相机坐标系的第三坐标轴向量的反向量为轴心,以特定角度值为最大锥角的范围内,为所述视觉机器人的机械臂生成所述标定坐标系的第三坐标轴向量。
在其他实施例中,所述第一坐标轴向量指向远离所述机械臂本体的方向。
在其他实施例中,所述第一确定模块,还用于对所述标定坐标系的第三坐标轴向量和世界坐标系的第二坐标轴向量作叉乘运算,确定所标定坐标系的第一坐标轴向量。
在其他实施例中,所述第二确定模块包括第二确定单元和第三确定单元,其中:所述第二确定单元,用于根据所述标定坐标系的第三坐标轴向量和所述标定坐标系的第一坐标轴向量,按照右手法则,确定所述标定坐标系的第二坐标轴向量;所述第三确定单元,用于根据所述标定坐标系的起始位置、所述标定坐标系的第一坐标轴向量、所述标定坐标系的第二坐标轴向量和所述标定坐标系的第三坐标轴向量,确定所述机械臂的标定位姿。
在其他实施例中,所述装置500还包括第三确定模块、第四二生成模块和控制模块,其中:所述第三确定模块,用于确定所述机械臂的当前位置;所述第四生成模块,用于根据所述当前位置和所述标定位姿,生成所述机械臂的移动轨迹;所述控制模块,用于根据所述移动轨迹,控制所述机械臂到达所述标定位姿。
在其他实施例中,所述控制模块包括获取单元和控制单元,其中:所述获取单元,用于获取所述机械臂的特征信息;其中,所述特征信息包括关节角和关节速度;所述控制单元,用于根据所述移动轨迹和所述特征信息,控制所述机械臂到达所述标定位姿。
这里需要指出的是:以上装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请装置实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。
需要说明的是,本申请实施例中,如果以软件功能模块的形式实现上述的对视觉机器人的位姿标定方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得包含该存储介质的设备自动测试线执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:u盘、移动硬盘、只读存储器(readonlymemory,rom)、磁碟或者光盘等各种可以存储程序代码的介质。
对应地,本申请实施例提供一种视觉机器人,图6为本申请实施例提供的一种视觉机器人的硬件实体示意图,如图6所示,该视觉机器人的硬件实体包括:本体601、基座602、相机603、机械臂604、标定板605、存储器606和处理器607,其中:
所述基座602,用于安装和固定所述视觉机器人的机械臂;
所述相机603,安装在所述视觉机器人的基座外的固定位置,用于拍摄标定板,以得到所述标定板在相机坐标系中的坐标;
所述机械臂604,通过关节连接在所述基座上,用于控制标定板到达标定位姿;
所述标定板605,安装在所述机械臂的末端,用于确定所述相机与所述机械臂之间的转换关系;
所述存储器606和所述处理器607,设置在所述本体上,所述存储器606存储有可在处理器607上运行的计算机程序,所述处理器607可以包括但不限于中央处理器、微处理器、数字信号处理器或现场可编程门阵列中的任意一种或多种。可以理解地,实现上述处理器功能的电子器件还可以为其它,本申请实施例不作具体限定。
在实施的时候,在基座602上建立世界坐标系,并设定世界坐标系的第二坐标轴指向机械臂604的左方;在相机603上建立相机坐标系,并设定相机坐标系的第三坐标轴指向竖直向下;在所述标定板605上建立标定坐标系,并根据特定的位姿范围,随机生成标定坐标系的起始位置作为原点。
本体601可以包括但不限于视觉机器人的外壳、电源组件、存储器以及用于支持相机603、机械臂604、存储器605和处理器606正常运行所必需的外围硬件电路等。
相机603安装在所述视觉机器人的基座外的上方位置,并规定摄像头竖直朝下,以拍摄标定板605得到标定板605的像素坐标。
对应地,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中对视觉机器人的位姿标定方法中的步骤。
这里需要指出的是:以上存储介质和视觉机器人实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请存储介质和视觉机器人实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
在本申请所提供的几个实施例中,应该理解到,所揭露的视觉机器人和视觉机器人的位姿标定方法,可以通过其它的方式实现。以上所描述的视觉机器人实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,视觉机器人或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本申请实施例方案的目的。
另外,在本申请各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
或者,本申请上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得设备自动测试线执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、磁碟或者光盘等各种可以存储程序代码的介质。
本申请所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
本申请所提供的几个方法或视觉机器人实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或视觉机器人实施例。
以上所述,仅为本申请的实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。
此文章来源于网络,如有侵权,请联系删除