使用神经网络和几何感知对象表示的机器人抓取预测的制作方法

文档序号:34940784发布日期:2023-07-28 13:42阅读:58来源:国知局
使用神经网络和几何感知对象表示的机器人抓取预测的制作方法


背景技术:

1、许多机器人利用一个或多个末端效应器来抓取各种对象。例如,机器人可以利用诸如“冲击式”夹取器或者“侵入式”夹取器(例如,使用销、针等物理地穿透对象)的抓取末端效应器从第一位置拾取对象,将对象移动到第二位置,并在第二位置处放下对象。可以抓取对象的机器人末端效应器的一些附加示例包括“限制式”末端效应器(例如,使用吸力或真空来拾取对象)和一个或多个“接触式”末端效应器(例如,使用表面张力、冻结或粘合剂来拾取对象),仅举几例。


技术实现思路

1、本说明书的各种实施方式通常针对与确定机器人的末端效应器的候选抓取姿态的抓取结果预测有关的深度机器学习方法和装置。抓取结果预测可以是一种度量,该度量指示当末端效应器处于候选抓取姿态时,如果末端效应器尝试抓取对象,成功抓取对象的可能性。在一些实施方式中,如果确定抓取结果预测满足一个或多个标准(例如,概率阈值),则可以向机器人的一个或多个致动器提供控制命令,以使末端效应器以末端效应器的候选抓取姿态尝试抓取对象。

2、一些实施方式针对几何网络和抓取结果预测网络的训练和利用。几何网络和抓取结果预测网络可以各自包括至少一个训练后的神经网络模型。训练后的几何网络可以用于基于(多个)二维(two-dimensional,2d)或二维半(two-and-a-half-dimensional,2.5d)图像(具有深度的2d),生成(多个)几何输出,其中,(多个)几何输出是几何感知的并且表示由(多个)图像捕获的(多个)对象的三维(three-dimensional,3d)几何特征(例如,形状、位置、方向)。(多个)图像可以由机器人的视觉传感器(例如,捕获2d或2.5d视觉传感器数据的视觉传感器)捕获。例如,由(多个)几何输出表示的对象的几何特征可以至少包括对象的3d形状。

3、(多个)几何输出可以包括全局几何表示,诸如高维几何表示的编码。该编码可以基于将图像应用(或提供)于神经网络编码器(例如,卷积神经网络(convolutional neuralnetwork,cnn)编码器)来生成。如本文所述,可以训练神经网络编码器,使得利用神经网络编码器生成的编码表示由图像捕获的(多个)对象的3d特征。此外,(多个)几何输出可以附加地或可选地包括局部几何表示,其中,局部几何表示是几何感知的并且局部聚焦于对象的靠近候选抓取姿态的区域。例如,可以基于对是编码的全局几何表示的密集采样来生成局部几何表示,其中,密集采样是来自末端效应器的候选抓取姿态的角度(例如,密集采样来自候选抓取姿态的参考系)。以这些和其他方式,局部几何表示可以从候选抓取姿态的角度来表示对象的3d特征。

4、训练后的抓取结果预测网络可以用于基于将(多个)几何输出和附加数据作为(多个)输入应用于网络来生成候选抓取姿态的抓取结果预测。例如,应用于抓取结果预测网络的附加数据可以包括候选抓取姿态、预抓取图像和/或预抓取视觉传感器姿态。

5、本文描述的一些实施方式可以利用在虚拟现实环境中通过用户引导的抓取尝试生成的训练实例来训练几何网络和/或抓取结果预测网络。例如,虚拟现实(virtualreality,vr)环境可以渲染虚拟环境,该虚拟环境包括对象的表示与可选地的(多个)附加场景对象,以及机器人的末端效应器的表示与可选的(多个)附加机器人组件。通过与(多个)用户界面输入设备(例如,vr控制器)的交互,用户可以在vr环境中操纵末端效应器的姿态,以当用户已经将末端效应器操纵到抓取的期望姿态时尝试抓取对象。例如,当用户确定末端效应器处于用于抓取虚拟环境中渲染的对象的期望姿态时,用户可以提供用户界面输入(例如,点击、口头命令)以尝试抓取。vr环境的物理引擎可以用于确定尝试的抓取是否成功。vr环境中的各种数据和用户经由该环境的交互可以用于生成训练实例。例如,从vr环境生成的(多个)图像、期望姿态和实际的抓取结果可以用于生成训练实例。

6、在那些实施方式中的一些中,基于(多个)用户引导的抓取尝试,自动生成附加训练实例(例如,不需要附加的用户引导的抓取尝试)。例如,在生成附加训练实例时,可以基于来自用户引导的抓取尝试的抓取姿态来确定新的抓取姿态。对于实例,可以选择新的抓取姿态,该新的抓取姿态在来自用户引导的抓取尝试的抓取姿态的期望方差内(例如,位置为+/-x厘米和/或方向为+/-x度)。此外,可以利用来自用户引导的抓取尝试的对象和场景(例如,可以利用相同的对象姿态),并且可以利用新的抓取姿态在vr环境中尝试新的抓取尝试。vr环境的物理引擎可以用于确定新尝试的抓取是否成功。来自新的抓取尝试的各种数据可用于生成附加训练实例。例如,新的抓取姿态和新的抓取结果可以用于生成附加训练实例。来自新的抓取尝试和/或用户引导的尝试的(多个)图像还可以包括在附加训练实例中。以这些和其他方式,可以生成大量附加训练实例,并将其用于训练几何网络和/或抓取结果预测网络。此外,许多附加训练实例将是消极的训练实例(即,抓取不成功),因为新的抓取姿态的选择将不是用户引导的(而是将使用先前得用户引导的抓取尝试作为引导来自动选择)。

7、上文和本文其他地方描述的各种实施方式可以实现一个或多个技术优势。例如,与不利用这样的(多个)几何输出的各种技术相比,本文描述的(多个)生成几何输出并将这样的(多个)几何输出作为输入应用于抓取结果预测网络可以使抓取结果预测精度提高,和/或抓取结果预测的鲁棒性更好(例如,适用于未被训练的对象)。此外,例如,与各种其他抓取预测架构相比,本文描述的各种神经网络架构可以使得性能提高。例如,本文描述的架构可以使目标对象的抓取成功率提高。此外,例如,利用本文描述的技术自动生成附加训练实例可以比利用进一步的用户引导的抓取尝试生成附加训练实例更节省计算资源,和/或可以使本文描述的各种神经网络模型的训练的鲁棒性更好。

8、在一些实施方式中,提供了一种方法,该方法包括识别由机器人的视觉传感器捕获的当前图像。当前图像捕获机器人的末端效应器和将由机器人使用末端效应器抓取的对象。该方法还包括生成捕获该对象的当前图像或者附加图像的编码。生成的编码对该对象的几何特征进行编码,并且生成该编码包括使用训练后的神经网络编码器处理当前图像或附加图像。该方法还包括确定末端效应器的候选抓取姿态。该方法还包括:将当前图像、候选抓取姿态和编码作为一个或多个输入应用于抓取结果预测网络,该抓取结果预测网络是训练后的神经网络模型;并且基于应用一个或多个输入,在抓取结果预测网络上生成抓取结果预测。该方法还包括:确定抓取结果预测满足一个或多个标准;并且响应于抓取结果预测满足一个或多个标准,向机器人的一个或多个致动器提供控制命令,以使末端效应器以末端效应器的候选抓取姿态尝试抓取对象。

9、该技术的这些和其他实施方式可以包括以下特征中的一个或多个。

10、在一些实施方式中,该方法还包括:使用编码和末端效应器的候选抓取姿态生成局部几何表示;并且在生成抓取结果预测时,将该局部几何表示包括在应用于抓取结果预测网络的一个或多个输入中。在那些实施方式中的一些中,生成局部几何表示包括从末端效应器的候选抓取姿态的参考系(例如,从候选抓取姿态的角度)对编码执行密集采样。

11、在一些实施方式中,编码对于视觉传感器的任何视觉传感器姿态都是不变的,和/或训练后的神经网络编码器是与三维神经网络解码器联合训练的。

12、在一些实施方式中,训练后的神经网络编码器是基于将在神经网络编码器上生成的训练编码应用于三维解码器、使用三维解码器生成训练解码、至少部分基于训练解码确定损失、以及基于损失更新神经网络编码器来训练的。

13、在一些实施方式中,由编码来编码的几何特征包括对象的三维形状特征。

14、在一些实施方式中,将一个或多个输入应用于抓取结果预测网络包括:将当前图像作为一个或多个输入中的第一输入的至少一部分应用于一个或多个第一层;并且基于应用第一输入,在第一层上生成第一层输出。在那些实施方式的一些中,将一个或多个输入应用于抓取结果预测网络还包括:将编码和第一层输出作为一个或多个输入中的第二输入的至少一部分应用于一个或多个第二层;并且基于应用第二输入,在第二层上生成第二层输出。在那些实施方式的一些版本中,将一个或多个输入应用于抓取结果预测网络还包括:将末端效应器姿态和第二层输出作为一个或多个输入中的第三输入的至少一部分应用于一个或多个第三层;并且基于应用第三输入,在第三层上生成第三层输出。在那些实施方式的一些进一步的版本中,该方法还包括:使用编码和末端效应器的候选抓取姿态生成局部几何表示;将第三层输出和局部几何表示作为一个或多个输入中的第四输入的至少一部分应用于一个或多个第四层;并且基于应用第四输入,在第四层上生成抓取结果预测。

15、在一些实施方式中,确定候选抓取姿态包括:生成多个候选抓取姿态;并且对多个候选抓取姿态执行交叉熵优化的一次或多次迭代,以从多个候选抓取姿态中选择候选抓取姿态。

16、在一些实施方式中,该方法还包括:识别视觉传感器的当前视觉传感器姿态;并且将当前视觉传感器姿态包括在应用于抓取结果预测网络的输入中的一个或多个中。

17、在一些实施方式中,提供了一种方法,包括:识别由机器人的视觉传感器捕获的当前图像;并且生成对捕获对象的当前图像或附加图像的编码。当前图像捕获机器人的末端效应器和将由机器人使用末端效应器抓取的对象。生成的编码对该对象的几何特征进行编码,并且生成该编码包括使用训练后的神经网络编码器处理当前图像或附加图像。该方法还包括:将当前图像和编码作为一个或多个输入应用于预测网络,其中该预测网络是训练后的神经网络模型;基于应用一个或多个输入,在预测网络上生成预测;确定结果预测满足一个或多个标准;并且响应于预测满足一个或多个标准,向机器人的一个或多个致动器提供基于预测的控制命令。

18、其他实施方式可以包括存储指令的非暂时性计算机可读存储介质,该指令可由一个或多个处理器(例如,中央处理单元(central processing unit,cpu)、图形处理单元(graphics processing unit,gpu)和/或张量处理单元(tensor processing unit,tpu))运行,以执行诸如上述和/或本文其他地方描述的一种或多种方法的方法。还有其他实施方式可以包括一个或多个计算机和/或一个或多个机器人的系统,一个或多个计算机包括一个或多个处理器,一个或多个处理器可操作来运行存储的指令以执行诸如上述和/或本文其他地方描述的一种或多种方法的方法。

19、在一些实施方式中,提供了一种由一个或多个处理器实现的方法,包括:基于虚拟现实环境中的对象的用户引导的机器人抓取尝试,生成训练实例,所述训练实例包括:用户引导的机器人抓取尝试的一个或多个渲染的图像,所述一个或多个渲染的图像由虚拟现实环境生成并捕捉对象,用户引导的机器人抓取尝试的抓取姿态,其中,抓取姿态是基于在用户引导的机器人抓取尝试期间的虚拟环境中的虚拟机器人末端效应器的虚拟姿态,和抓取结果测量,其指示对象的用户引导的机器人抓取尝试是否成功;基于用户引导的机器人抓取尝试来自动生成多个附加训练实例,其中,基于用户引导的机器人抓取尝试来自动生成多个附加训练实例中的每一个包括:基于新的抓取姿态在来自用户引导的机器人抓取尝试的抓取姿态的方差内,确定新的抓取姿态;利用新的抓取姿态,尝试对象的新的抓取尝试;确定新的抓取尝试是否成功;以及生成附加训练实例,以包括新的抓取姿态、来自新的抓取尝试的一个或多个新的图像、以及基于新的抓取尝试是否成功的新的抓取结果测量;以及利用训练实例和附加训练实例来训练神经网络模型。

20、在一些实施方式中,提供了一种系统,包括:一个或多个计算机,所述一个或多个计算机包括一个或多个处理器,所述一个或多个处理器可操作来运行所存储的指令以执行方法,所述方法包括:基于虚拟现实环境中的对象的用户引导的机器人抓取尝试,生成训练实例,所述训练实例包括:用户引导的机器人抓取尝试的一个或多个渲染的图像,所述一个或多个渲染的图像由虚拟现实环境生成并捕捉对象,用户引导的机器人抓取尝试的抓取姿态,其中,抓取姿态是基于在用户引导的机器人抓取尝试期间的虚拟环境中的虚拟机器人末端效应器的虚拟姿态,以及抓取结果测量,其指示对象的用户引导的机器人抓取尝试是否成功;基于用户引导的机器人抓取尝试来自动生成多个附加训练实例,其中,基于用户引导的机器人抓取尝试来自动生成多个附加训练实例中的每一个包括:基于新的抓取姿态在来自用户引导的机器人抓取尝试的抓取姿态的方差内,确定新的抓取姿态;利用新的抓取姿态,尝试对象的新的抓取尝试;确定新的抓取尝试是否成功;以及生成附加训练实例,以包括新的抓取姿态、来自新的抓取尝试的一个或多个新的图像、以及基于新的抓取尝试是否成功的新的抓取结果测量;以及利用训练实例和附加训练实例来训练神经网络模型。

21、应该理解,本文更详细描述的前述概念和附加概念的所有组合都被认为是本文公开的主题的一部分。例如,出现在本公开结尾的所要求保护的主题的所有组合被认为是本文公开的主题的一部分。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1