一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

在根据演示的示教中的双手检测的制作方法

2022-03-16 03:14:08 来源:中国专利 TAG:


1.本公开涉及工业机器人编程领域,并且更具体地,涉及用于根据相机图像确定人类演示者的左手和右手的身份,然后根据图像检测左手和右手两者的姿态的方法,其中手身份和姿态数据用于通过人类演示来示教或编程机器人执行操作。


背景技术:

2.使用工业机器人重复地执行各种各样的制造、组装和材料移动操作是众所周知的。然而,使用传统方法示教机器人执行即使相当简单的操作-诸如拾取在传送机上处于随机位置和取向的工件并且将工件移动到容器-也存在问题。
3.一种传统的机器人示教方法包括操作者使用示教器来指示机器人进行增量移动
‑‑
例如“在x方向上慢进”或“绕本地z轴旋转夹持器"
‑‑
直到机器人及其夹持器处于正确的位置和取向以执行操作,然后存储操作数据,并且多次重复这个。另一种已知的示教机器人执行操作的技术是结合人类演示使用运动捕捉系统。因为已经发现使用示教器和运动捕捉系统的机器人编程是非直观的、耗时的和/或昂贵的,所以已经开发了用于根据使用相机图像的人类演示来进行机器人示教的技术。
4.在一些类型的操作中,例如组装包括许多零件的装置,人自然地使用两只手来执行操作任务。为了在这些情况下使机器人示教准确,需要可靠地检测人类演示者的左右手。一种用于确定人类演示者的左手和右手的身份的已知方法涉及提供人类的整个身体的相机图像,执行图像的拟人分析以识别左臂和右臂,并且然后基于手臂身份来识别左手和右手。然而,该技术需要与手姿态检测所需的图像分开的相机图像来识别手臂/手,并且还需要额外的计算步骤来进行身体骨骼分析。
5.可以用于识别人类演示者的左手和右手的其他技术涉及要求每只手保持相对于另一只手的相对位置,或者要求每只手保持在用于所有示教操作的位置边界内。然而,这些技术对人类演示者的自然手移动施加了无法维持的约束,并且如果违反约束则存在手的错误识别的风险。
6.鉴于上述情况,需要一种改进的技术,用于在根据人类演示的机器人示教中进行双手检测。


技术实现要素:

7.根据本公开的教导,描述和说明了一种用于在根据人类演示的机器人示教中进行双手检测的方法。将演示者的手和工件的相机图像提供给第一神经网络,该第一神经网络根据该图像确定人类演示者的左手和右手的身份,并且还提供所识别的手的裁剪子图像。使用其中左手和右手被预先识别的图像来训练第一神经网络。然后,将裁剪子图像提供给第二神经网络,第二神经网络根据图像检测左手和右手两者的姿态,其中,如果利用右手图像训练第二神经网络,则在手姿态检测之前和之后水平地翻转左手的子图像。手姿态数据被转换为机器人夹持器姿态数据,并用于通过人类演示来示教机器人执行操作。
8.结合附图,根据以下描述和所附权利要求,当前公开的装置和方法的附加特征将变得显而易见。
附图说明
9.图1是根据本公开的实施例的如何分析人手的图像以确定指型机器人夹持器的对应位置和取向的示意图;
10.图2是根据本公开的实施例的如何分析人手的图像以确定磁性或吸盘类型机器人夹持器的对应位置和取向的示意图;
11.图3是根据本公开的实施例的用于根据人类演示者的双手的相机图像来标识手的位置和姿态的系统和步骤的示意图;
12.图4是根据本公开的实施例的用于训练在图3的系统中使用的手检测和识别神经网络的步骤的示意图;
13.图5是根据本公开的实施例的用于根据人类演示者的双手的相机图像来识别手位置和姿态的方法的流程图;
14.图6是根据本发明的实施例的用于使用人类演示者的手和对应工件两者的相机图像来示教机器人执行操作的方法的流程图;以及
15.图7是根据本公开的实施例的用于基于通过使用双手的人类演示的示教进行机器人操作的系统的示意图。
具体实施方式
16.以下针对在通过人类演示来示教机器人时的双手检测的本公开的实施例的讨论本质上仅仅是示例性的,并且决不旨在限制所公开的设备及技术或它们的应用或使用。
17.众所周知,使用工业机器人进行各种制造、组装和材料移动操作。一种已知类型的机器人操作有时被称为“拾取、移动和放置”,其中机器人从第一位置拾取零件或工件,移动零件并将其放置在第二位置。第一位置通常是传送带,其中随机取向的零件被流式运输,例如刚刚从模具取出的零件。第二位置可以是导致不同操作的另一传送器,或者可以是装运容器,但是在任一情况下,零件需要放置在特定位置处并且在第二位置处以特定姿态取向。其它机器人操作-例如将多个零件组装到诸如计算机机箱的设备中-类似地需要从一个或多个源拾取零件并将其放置在精确的位置和取向。
18.为了执行上述类型的操作,通常使用相机来确定来料零件的位置和取向,并且必须示教机器人使用指型夹持器或磁性或吸盘夹持器以特定方式抓持零件。传统上,示教机器人如何根据零件的取向来抓持零件是由人类操作者使用示教器来完成的。示教器由操作员使用,以指示机器人进行增量移动-例如“在x方向慢进”或“绕本地z轴旋转夹持器”,直到机器人及其夹持器处于正确的位置和取向以抓持工件。然后,机器人控制器记录机器人配置以及工件位置和姿态,以用于“拾取”操作。然后,类似的示教器命令被用于限定“移动”和“放置”操作。然而,尤其是对于非专业操作员来说,经常发现使用示教器对机器人进行编程是非直观的、容易出错的和耗时的。
19.另一种已知的示教机器人执行拾取、移动和放置操作的技术是使用运动捕捉系统。运动捕捉系统包括多个相机,这些相机排列在工作单元周围,以在操作员操纵工件时记
录操作员和工件的位置和取向。操作员和/或工件可以具有附加的可唯一识别的标记点,以便在执行操作时更精确地检测相机图像中操作员和工件上的关键位置。然而,这种类型的运动捕捉系统是昂贵的,并且精确设置和配置以使得所记录的位置准确是困难且耗时的。
20.已经开发了克服上述现有机器人示教方法的限制的技术,包括使用单个相机来捕捉执行自然零件抓持和移动动作的人的图像的方法,其中分析人的手的图像及其相对于零件的位置以生成机器人编程命令。
21.图1是根据本公开的实施例的如何分析人手的图像以确定指型机器人夹持器的对应位置和取向的示意图。手110具有被限定为附接到其上的手坐标系120。手110包括具有拇指指尖114的拇指112和具有食指指尖118的食指116。拇指112和食指116上的其他点也可以在相机图像中被识别,诸如拇指112和食指116的基部的位置以及拇指112和食指116的第一指节的位置等。
22.点122位于拇指112的基部和食指116的基部之间的中间,其中点122被限定为手坐标系120的原点。手坐标系120的取向可以使用适于与机器人夹持器取向相关的任何惯例来限定。例如,手坐标系120的y轴可以被限定为与拇指112和食指116的平面(该平面由点114、118和122限定)垂直。因此,x和z轴位于拇指112和食指116的平面内。此外,z轴可以被限定为平分拇指112和食指116所成的角度(角度114-122-118)。然后,x轴取向可以由右手规则根据已知的y和z轴找到。如上所述,这里限定的惯例仅仅是示例性的,并且可以替代地使用其他坐标系取向。要点在于,可以基于手上的关键可识别点来限定坐标系位置和取向,并且该坐标系位置和取向可以与机器人夹持器位置和取向相关。
23.相机(图1中未示出,稍后讨论)可以用于提供手110的图像,其中图像然后可以被分析以确定包括拇指指尖114和食指指尖118以及指节的拇指112和食指116的(诸如在工作单元坐标系中的)空间位置,并且因此确定手参考系120的原点位置122和取向。在图1中,手参考系120的位置和取向与附接到机器人160的夹持器150的夹持器坐标系140相关。夹持器坐标系140具有对应于手参考系120的原点122的原点142,以及分别对应于食指指尖118和拇指指尖114的点144和146。因此,指型夹持器150的两个手指处于夹持器坐标系140的x-z平面中,其中z轴平分角度146-142-144。
24.夹持器坐标系140的原点142也被限定为机器人160的工具中心点。工具中心点是其位置和取向对于机器人控制器已知的点,其中控制器可以向机器人160提供命令信号以将工具中心点及其相关联的坐标系(夹持器坐标系140)移动到限定的位置和取向。
25.图2是根据本公开的实施例的如何分析人手的图像以确定磁性或吸盘类型机器人夹持器的对应位置和取向的示意图。图1示出了手姿态如何能与具有可移动手指的机械夹持器的取向相关联,而图2示出了手姿态如何能与扁平夹持器(例如圆形的)相关联,该扁平夹持器利用吸力或磁力通过零件的扁平表面拾取零件。
26.手210也包括拇指212和食指216。点214位于拇指212与零件220接触的位置。点218位于食指216与零件220接触的位置。点230被限定为存在于点214和218之间的中间,其中点230对应于机器人260上的表面夹持器250的工具中心点(tcp)240。在图2所示的表面夹持器250的情况下,基于指节和指尖的检测,夹持器250的平面可被限定为包含线214-218并且与拇指212和食指216的平面垂直的平面。如上所述,夹持器250的工具中心点240对应于点230。这完全限定了表面夹持器250的与手210的位置和姿态相对应的位置和取向。
27.用于基于人类演示(特别是基于通过相机对人手和工件的图像的分析)来示教机器人执行操作的技术在共同转让给本技术的、2020年4月8日提交的、申请号为16/843,185和名称为“由人演示的机器人示教(robot teching by human demonstration)”的美国专利申请中描述;16/843,185申请(下文中称为“'185申请”)通过引用整体结合于本文中。其中,'185申请公开了用于基于单个手的相机图像确定该手(指节等)的关键点的3d坐标的技术。
28.在一些类型的操作中,例如组装包括若干组件的装置,人类演示者自然地使用两只手来执行操作任务。为了在这些情况下使机器人示教准确,需要在图像中可靠地识别人类演示者的左手和右手。一种用于确定人类演示者的左手和右手的身份的已知方法涉及提供人类的整个身体的相机图像,执行身体图像的拟人分析以识别左臂和右臂,然后基于手臂身份来识别左手和右手。然而,这种技术需要与手姿态检测所需的图像分开的相机图像来识别手臂/手,并且还需要用于身体骨架分析的附加计算步骤。其它双手示教方法禁止人类演示者将手彼此交叉到它们的“相对侧”。
29.使用'185申请的关键点检测方法,本公开描述了用于在相机图像中可靠地确定人类演示者的双手的身份、位置和姿态的技术,而不对演示者使用或移动他/她的手施加人工限制,并且不需要如现有方法中所需的全身图像和分析。
30.图3是根据本公开的实施例的用于根据人类演示者的双手的相机图像来识别手的位置和姿态的系统和步骤的示意图。相机310提供训练工作空间的图像,即,相机310提供操作者的手在进行示教演示时将占据的区域的图像。训练工作空间可以是例如设备正在其上被组装的桌面。相机310优选地是提供训练工作空间的彩色图像但不像3d相机那样提供深度信息的二维(2d)相机。
31.相机310提供如图3所示的图像312。在图3中详细描述图像312的处理。相机310提供连续的图像流,其中每个图像如图3所示被处理以提供待机器人使用的完整的运动序列,例如拾取零件、将其移动到新的位置、以及将其以期望的姿态放置。人类演示者在图像312的顶部,因此右手出现在图像312的左侧,并且左手出现在图像312的右侧。
32.通过第一神经网络320分析图像312以确定左手和右手的身份以及它们在图像312中的相应位置。第一神经网络320-能够在仅手(而不是整个身体)的图像中识别左手和右手-提供了现有手图像分析系统中不具备的能力。第一神经网络320基于诸如四指和拇指的手指曲率(人手的手指仅能在一个方向上弯曲的事实)以及相对位置之类的线索来识别左手和右手,而不管手在图像312中的相对位置如何。通过适当的训练(下面参考图4讨论),第一神经网络320已经被证明能够快速且可靠地确定图像312中的左手和右手的身份和位置。
33.基于在框330处的第一神经网络320的输出,创建右手的裁剪图像332和左手的裁剪图像334。再说一次,右手的图像332和左手的图像334是由第一神经网络320通过图像分析基于手的实际身份而确定的,而不是简单地基于手在图像310/312中的位置而确定的。即,在一些图像中,可以交叉手,使得左手和右手出现在预期的“正常”位置的相反位置。
34.如图所示紧紧地围绕手裁剪右手的图像332和左手的图像334,以便为后续分析提供最大量的图像分辨率和最少量的多余数据。在线342上将右手的图像332提供给第二神经网络350。第二神经网络350分析图像332以确定右手上的多个关键点的三维(3d)坐标。关键点包括四指指尖、四指指节、拇指指尖和拇指指节。使用特定手(出于本讨论的目的,假设为
右手)的许多图像来训练第二神经网络350。在上述16/843,185申请中公开了用于根据已知身份(左或右)的手的图像确定手上的关键点的3d坐标的技术。
35.在线344上提供左手的图像334。在训练第二神经网络350以识别右手的图像中的关键点的情况下,在被提供给第二神经网络350之前,左手的图像334必须在框346处水平翻转。第二神经网络350分析图像334的翻转版本以确定左手上的多个关键点(指尖、指节等)的三维(3d)坐标。因为图像334已经被水平翻转,所以第二神经网络350可以如它是右手的图像一样准确地分析经翻转的图像334。
36.需要明确的是,可以使用左手或右手的图像来训练第二神经网络350。如果用右手图像训练第二神经网络350,则必须翻转左手的图像以由第二神经网络350处理,反之亦然。
37.在线362上,右手的3d“线框”结构被提供给框372。如在上面引用的16/843,185申请中详细讨论的,由第二神经网络350输出的手的3d线框结构包括如可以基于原始图像中的可见性确定的手的结构的尽可能多的关键点和连接性(例如,将坐标x1/y1/z1处的指尖连接到坐标x2/y2/z2处的第一指节的食指骨段等)。也就是说,无法分辨在图像中的视野下方卷曲且被遮挡的手指或手指的各部分的位置。
38.在线364上,从第二神经网络350输出左手的3d线框结构。左手关键点的水平坐标(通常是x坐标)在被提供给框374之前必须在框366处被翻转。框366处的水平翻转与框346处的原始图像翻转必须是大约相同的镜面(例如,y-z平面)。
39.作为上述图像分析的结果,框372包含右手的3d线框结构(四指和拇指上的指尖和指节点的3d坐标),并且框374同样包含左手的3d线框结构。使用来自手的3d坐标数据,可以如图1和2所示以及如上所述地计算夹持器坐标。这样,夹持器位置和姿态被计算,然后在线380上输出。
40.图4是根据本公开的实施例的用于训练在图3的系统中使用的手检测和识别神经网络320的步骤的示意图。第一神经网络320在图4的中心处示出。如图3所示和以上讨论的,第一神经网络320负责确定图像中的左手和右手的身份和位置。第一神经网络320识别左手和右手的训练是通过向第一神经网络320提供许多训练图像来完成的,其中左手和右手在训练图像中处于预定的相对位置。
41.图像410是用于训练第一神经网络320的训练图像的示例。图像410包括人类演示者的左手和右手,并且左手和右手处于已知的相对位置,诸如在分界线的指定侧上,或在边界框中标识。预先确定图像410中左手和右手的位置的一种方法是使双手处于它们的“正常”相对位置(在手腕处不交叉)。预先确定图像410中左手和右手的位置的另一种方法是将各个手定位在分界线412的它们各自侧上。在图像410中,分界线412位于图像中心处或附近,但是不必是这种情况。对于双手在手腕处交叉的情况,手动地将左手和右手的位置标注在边界框中。
42.如本领域技术人员所知的,第一神经网络320是多层神经网络,包括输入层、输出层和通常两个或更多个内部隐藏层。训练第一神经网络320以识别手的图像,并识别区分左手和右手的手的结构特性。几个因素的组合
‑‑
例如四指的曲率(其仅能朝一个方向-朝向手掌弯曲)、拇指和四指的相对位置等
‑‑
可用于区分特定手的顶部与底部以及左部与右部。因为第一神经网络320在分析每个图像之前知道左手和右手的身份,所以神经网络320可以自动地构建其层和节点的结构,以可靠地将结构特征与手的身份相关联。在通过分析多个图
像来进行训练的过程中,第一神经网络320学习识别作为右手特征的结构特征与作为左手特征的特征。
43.输出图像420示出了来自图像410的训练结果。在框422中检测并定位手,并且第一神经网络320基于其相对于分界线412的位置而知道其是右手(因为人体位于图像410/420的顶部,所以人的右手在图像410/420的左侧)。类似地,在框424中检测并定位手,并且第一神经网络320基于其位置知道它是左手。采用用于裁剪如框422和424所示的围绕手的子图像的技术,其中子图像被裁剪到仅包括所有可见的四指指尖和拇指指尖以及例如标识为腕关节的位置的区域。
44.图像430是用于训练第一神经网络320的训练图像的另一示例。同样,图像430包括人类演示者的左手和右手两者,并且在边界框中标识左手和右手。在图像430中,提供边界框432作为标识右手的注释或索引属性。演示者的手在图像430中交叉,因此右手位于左手预期所在的位置;然而,由于边界框标识,第一神经网络320知道边界框432中的手是演示者的右手。类似地,提供边界框434作为标识左手的注释或索引属性。
45.输出图像440示出了来自图像430的训练结果。在与边界框432基本相同的框442中检测并定位手,并且即使手被交叉,第一神经网络320基于边界框信息知道它是右手。类似地,在框444中检测并定位手,并且第一神经网络320基于边界框信息知道它是左手。在分析图像430/440中的框442和444中的手的过程中,第一神经网络320在手身份检测方面被增量训练。
46.图像430与图像410非常不同。输入图像包括不同的人类演示者、不同的零件、不同的操作和背景、手套以及无手套、以及甚至稍微不同的相机角度(视点)。输入训练图像中的这些差异有助于训练第一神经网络320鲁棒性地识别图像中的手结构和身份,其将在机器人示教的实际执行阶段中处理。
47.将许多其它输入图像450提供给第一神经网络320以用于训练。如图4所示,每个输入图像450产生其中左手和右手已经被定位和识别的输出图像460。在训练之后,第一神经网络320准备好被使用,如图3所示,以识别图像312中的左手和右手(即使手被交叉),并且提供包含已正确识别的手的裁剪子图像。已经开发了一种测试系统,其证明了诸如第一神经网络320之类的神经网络的以下能力:即使当左手和右手在连续的图像序列中重复地重叠、交叉和不交叉时,也如上所述地快速和准确地识别图像中的右手和左手。
48.图5是根据本公开的实施例的用于根据人类演示者的双手的相机图像来识别手的位置和姿态的方法的流程图500。流程图500描绘了与图3的系统框图相对应的方法步骤。
49.在框502处,提供包含人类演示者的双手的图像。诸如图3的图像312之类的图像优选地不包括人的整个身体。图像也不需要使左手和右手处于它们的“正常”或“预期”相对位置。该图像描绘了人类演示者对一个或多个工件执行操作,诸如组装包括多个零件的设备,其中双手用于拾取和放置各个零件。在实际实践中,将快速连续地提供图像(每秒多个图像),使得可以示教一序列空间抓持和放置操作。除了手的身份、位置和姿态之外,工件位置和姿态也将根据图像确定并且与手(“夹持器”)数据结合用于机器人示教。
50.在框504处,第一神经网络320用于确定所提供的图像中的左手和右手的身份和位置。在框504中执行的操作已经在上面详细讨论。在框506处,将原始图像裁剪成两个子图像,一个包含左手,一个包含右手。双手的身份与子图像一起提供。
51.在框508处,使用第二神经网络350分析右手子图像以检测手指结构和手姿态。在框508中执行的操作如上所述,并且在较早引用的16/843,185专利申请中详细描述。因为第二神经网络350已经训练成使用右手或左手的图像来检测手结构,所以需要在第二神经网络350中进行分析之前正确地识别子图像。在流程图500中,假设已经使用右手图像训练第二神经网络350;因此,将来自框506的右手子图像直接传递到框508。
52.在框510处,在提供给框508以供分析之前水平翻转左手子图像。同样,假设已经使用右手图像训练第二神经网络350;因此,在传递到框508之前必须水平翻转来自框506的左手子图像。相反的过程同样适用,其中使用左手的图像训练第二神经网络350,并且在分析之前翻转右手子图像。
53.在框512处,右手的手指结构和手姿态数据(手骨架关键点的3d坐标)用于计算相应的夹持器姿态,并且输出夹持器姿态(与工件姿态数据一起)作为机器人示教步骤。下面讨论用于根据人类演示(手和工件)的图像进行机器人示教的完整方法。
54.在框514处,在框512处用于计算相应的夹持器姿态并且输出夹持器姿态作为机器人示教步骤之前,将来自框508的左手的手指结构和手姿态数据的水平坐标(例如,x坐标)水平翻转。水平坐标数据必须翻转或相对于镜像平面进行镜像,以将手的3d坐标数据从原始输入图像放回其适当位置。
55.如本领域技术人员将理解的,在计算手姿态的3d坐标的整个过程中,必须知道原始输入图像内的左手和右手子图像的位置。此外,原始提供的图像的像素坐标必须被映射到演示正在发生的物理工作空间,使得可以根据图像像素坐标来计算3d夹持器和工件位置和姿态。
56.机器人示教步骤从框512输出并被记录以用于机器人编程。示教步骤包括根据左手和右手姿态坐标数据计算的夹持器位置和姿态,以及对应的工件位置和姿态。然后,该过程循环回到框502以接收另一输入图像。
57.图6是根据本发明的实施例的用于使用人类演示者的双手和对应工件的相机图像来示教机器人执行操作的方法的流程图600。流程图600布置成三个垂直列,对应于拾取步骤(在右侧)、移动步骤(中心)和放置步骤(在左侧)。三个单独的步骤示出了如何分析手和工件的图像以创建机器人运动程序,其中图像中的双手检测是一个整体部分。
58.拾取步骤在开始框602处开始。在框604处,在来自相机310的图像中检测工件和双手。在框604中使用上面详细描述的双手检测方法。根据对图像中的工件的分析来确定工件坐标系的位置和取向,并且根据对图像中的手的分析来确定对应的手坐标系的位置和取向。
59.在判定菱形606处,对于每只手,确定指尖(图1的拇指指尖114和食指指尖118)是否已经接触工件。这是根据相机图像确定的。当指尖已经接触工件时,在框608处记录工件和手的抓持姿态和位置。重要的是,识别手相对于工件的姿态和位置;即,必须相对于诸如工作单元坐标系之类的某一全局固定参考系来限定手坐标系和工件坐标系的位置和取向。这允许控制器确定如何定位夹持器以在稍后的重现阶段中抓持工件。对右手和左手中的每一个进行工件接触的分析。
60.在框608处记录了工件和手的抓持姿态和位置之后,拾取步骤在结束框610处结束。然后,该过程进行到移动步骤,其在框622处开始。可以针对每只手单独地执行移动步
骤。在框624处,在相机图像中检测工件。在判定菱形626处,如果在相机图像中没有检测到工件,则该过程循环回到框624以获取另一图像。当在相机图像中检测到工件时,在框628处记录工件位置(以及可选地姿态)。
61.在框634处,在相机图像中检测手(任一只手
‑‑
正在执行当前移动操作的那只手)。在判定菱形636处,如果在相机图像中没有检测到手,则过程循环回到框634以获取另一图像。当在相机图像中检测到手时,在框638处记录手位置(以及可选地姿态)。当从相同的相机图像检测和记录到(来自框628的)工件位置和(来自框638的)手位置两者时,在框640处组合和记录手位置和工件位置。组合手位置和工件位置可以通过简单地取两者的平均值来实现;例如,如果拇指指尖114和食指指尖118之间的中点与工件的中心/原点重合,则可以计算中点和工件中心之间的平均位置。
62.优选地,通过重复从开始移动框622到组合手和工件位置框640的活动,记录沿移动步骤的多个位置,以限定平滑的移动路径。在框640处组合并记录手位置和工件位置,并且不再需要移动步骤位置之后,移动步骤在结束框642处结束。然后,该过程进行到放置步骤,其在框662处开始。
63.在框664处,在来自相机310的图像中检测工件的位置。在判定菱形666处,确定是否在相机图像中发现工件以及工件是否静止。或者,可以确定指尖是否已经脱离与工件的接触。当工件被确定为静止和/或指尖已经脱离与工件的接触时,在框668处记录工件的终点姿态和位置。放置步骤和示教阶段的整个过程在结束框670处结束。
64.图6的流程图600中描述的机器人示教过程依赖于对图像中的人手姿态的鲁棒性检测。当人类演示包括使用双手时,图3-5的双手检测方法和系统是必要部分。
65.图7是根据本公开的实施例的用于基于通过使用双手的人类演示的示教的机器人操作的系统700的示意图。人类演示者710处于相机720可以捕获演示者的手和正在对其执行操作的工件的图像的位置。相机720与图3的相机310相对应。相机720将图像提供给计算机730,其分析图像以识别手的3d线框坐标以及对应的工件位置,如上文详细描述的。计算机730的分析包括图3-5所示的双手检测方法。
66.人类演示者710演示完整的操作,诸如将多个零件组装成完整的设备。相机720提供连续的图像流,并且计算机730分析图像并且记录如所识别的机器人示教命令。每个示教步骤包括根据手姿态计算的夹持器姿态和对应的工件位置/姿态。这种对示教步骤的记录包括由人类演示者710的一只手或两只手执行的抓持和放置操作。
67.当根据人类演示完全限定机器人操作时,将机器人程序从计算机730传送到机器人控制器740。控制器740与机器人750通信。控制器740计算机器人运动命令以使机器人750将其夹持器760移动到从图像识别的夹持器坐标系的位置和取向。机器人750根据来自控制器740的命令序列相对于工件770移动夹持器760,从而完成由人类演示者710演示的操作。
68.图7的情况是,夹持器760抓持工件770并对工件770执行一些操作,例如将工件770移动到不同的位置和/或姿态。夹持器760被示为指形夹持器,但也可以是如前所述的吸盘或磁性表面夹持器。
69.图7的系统700可以在两种不同的模式下使用。在一种模式中,人类演示者预先一次示教诸如装置组装之类的操作的所有步骤,然后机器人基于由人类演示所示教的零件移动指令来重复地执行组装操作。在另一种被称为远程操作的模式中,人类演示者与机器人
实时协作工作,其中手抓持和移动零件的每个动作被分析并立即由机器人执行,机器人的运动被视觉反馈给人类操作者。这两种操作模式都可以受益于所公开的用于人类演示中的双手检测的技术。
70.在整个前述讨论中,描述并暗示了各种计算机和控制器。应当理解,这些计算机和控制器的软件应用和模块在具有处理器和存储器模块的一个或多个计算设备上执行。特别地,这包括上面讨论的计算机730和机器人控制器740中的处理器。具体地,计算机730中的处理器被配置为以上述方式在经由人类演示的机器人示教中执行双手检测。
71.如上所述,所公开的用于通过人类演示的机器人示教中的双手检测的技术使得机器人运动编程比先前的技术更快、更容易并且更直观,从而在仅需要单个相机的同时提供对示教者的双手的可靠检测。
72.尽管以上已经讨论了通过人类演示的机器人示教中的双手检测的多个示例性方面和实施例,但是本领域技术人员将认识到其修改、置换、添加和子组合。因此,下面所附权利要求和此后引入的权利要求旨在被解释为包括在其真实精神和范围内的所有这些修改、置换、添加和子组合。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献