物体的抓取方法、装置、设备及存储介质与流程

专利2022-11-27  38


本申请涉及智能控制技术领域,涉及但不限于一种物体的抓取方法、装置、设备及存储介质。



背景技术:

在工业生产上下料、简单装配制造、物流分拣等应用场景中,对物体的抓取效率,会极大的影响生产产能。机械臂是一种模拟人手的机械装置,由于机械臂的可达范围广、负载能力强,在工业生产等方面起着重要的作用。将机械臂应用到物体的自动抓取,可极大的提高生产产能,降低人工成本。

现有机械臂抓取之前,对于混乱堆叠的被抓取物体,需要设计专用的上料装置(如振动盘等)将被抓取物体振动到固定位姿,实现被抓取物体的整齐堆叠或码放,进而通过示教方法来抓取固定位姿的物体。现有方法存在以下弊端:1)上料装置购置成本高、占地面积大;2)上料装置一般不具备通用性,不同形状的被抓取物体需要不同的上料装置,多次设计不同的上料装置,造成浪费;3)示教操作无法应对不同的固定位姿,不具备复用性。



技术实现要素:

本申请实施例提供一种物体的抓取方法、装置、设备及存储介质。

本申请实施例的技术方案是这样实现的:

本申请实施例提供一种物体的抓取方法,包括:确定存放于第一区域的各个对象的位姿信息;基于各个对象的位姿信息确定目标抓取对象;根据所述目标抓取对象的位姿信息确定机械臂的目标抓取位置;控制所述机械臂移动至所述目标抓取位置,并抓取所述目标抓取对象。

在上述方案中,所述确定存放于第一区域的各个对象的位姿信息,包括:响应于接收到的抓取指令,获取所述第一区域中的多个对象的图像信息;根据所述图像信息确定存放于第一区域的多个对象的三维信息;根据所述多个对象的三维信息,将多个对象进行区分,得到各个对象的三维信息;根据所述各个对象的三维信息,确定所述各个对象的位姿信息。

在上述方案中,所述基于各个对象的位姿信息确定目标抓取对象,包括:根据所述各个对象的位姿信息,确定所述各个对象之间位置关系;基于所述各个对象之间的位置关系确定目标抓取对象。

在上述方案中,所述根据所述目标抓取对象的位姿信息确定机械臂的目标抓取位置,包括:根据目标抓取对象的三维信息确定至少一个抓取位置;根据所述目标抓取对象的位姿信息,从所述至少一个抓取位置中确定所述机械臂的目标抓取位置。

在上述方案中,所述获取所述第一区域中的多个对象的图像信息,包括;控制采集装置对所述第一区域中的多个对象进行图像采集,得到图像信息;在上述方案中,所述控制所述机械臂移动至所述目标抓取位置,包括:确定采集装置所在的相机坐标系与机械臂所在的世界坐标系的转换关系;根据所述转换关系,将所述目标抓取位置映射到所述世界坐标系,得到世界坐标系下的目标抓取坐标;基于所述目标抓取坐标和机械臂的初始坐标,确定所述机械臂的第一运动轨迹;控制所述机械臂按照所述第一运动轨迹移动至所述目标抓取位置。

在上述方案中,所述方法还包括:获取所述目标抓取对象的目标放置位置,所述目标放置位置位于第二区域;将所述目标放置位置映射到所述世界坐标系,得到世界坐标系下的目标放置坐标;基于所述目标抓取坐标和所述目标放置坐标,确定所述机械臂的第二运动轨迹;控制已抓取目标抓取对象的机械臂,按照所述第二运动轨迹移动至所述目标放置位置,并放置所述目标抓取对象。

在上述方案中,所述获取所述目标抓取对象的目标放置位置包括:获取预先存储的各个对象的尺寸信息和各个对象内的物品类型的对应关系;根据所述目标抓取对象的三维信息,识别所述目标抓取对象的尺寸信息;基于所述对应关系,确定与所述目标抓取对象的尺寸信息相对应的物品类型;根据所述物品类型,确定所述目标抓取对象在所述第二区域的目标放置位置。

本申请实施例提供一种物体的抓取装置,包括:第一确定模块,用于确定存放于第一区域的各个对象的位姿信息;第二确定模块,用于基于各个对象的位姿信息确定目标抓取对象;第三确定模块,用于根据所述目标抓取对象的位姿信息确定机械臂的目标抓取位置;第一控制模块,用于控制所述机械臂移动至所述目标抓取位置,并抓取所述目标抓取对象。

在上述方案中,所述第一确定模块包括:第一获取单元,用于响应于接收到的抓取指令,获取所述第一区域中的多个对象的图像信息;第一确定单元,用于根据所述图像信息确定存放于第一区域的多个对象的三维信息;区分单元,用于根据所述多个对象的三维信息,将多个对象进行区分,得到各个对象的三维信息;第二确定单元,用于根据所述各个对象的三维信息,确定所述各个对象的位姿信息。

在上述方案中,所述第二确定模块包括:第三确定单元,用于根据所述各个对象的位姿信息,确定所述各个对象之间位置关系;第四确定单元,用于基于所述各个对象之间的位置关系确定目标抓取对象。

在上述方案中,所述第三确定模块包括:第五确定单元,用于根据目标抓取对象的三维信息确定至少一个抓取位置;第六确定单元,用于根据所述目标抓取对象的位姿信息,从所述至少一个抓取位置中确定所述机械臂的目标抓取位置。

在上述方案中,所述第一获取单元包括:控制子单元,用于控制采集装置对所述第一区域中的多个对象进行图像采集,得到图像信息;在上述方案中,所述第一控制模块包括:第七确定单元,用于确定采集装置所在的相机坐标系与机械臂所在的世界坐标系的转换关系;映射单元,用于根据所述转换关系,将所述目标抓取位置映射到所述世界坐标系,得到世界坐标系下的目标抓取坐标;第八确定单元,用于基于所述目标抓取坐标和机械臂的初始坐标,确定所述机械臂的第一运动轨迹;第一控制单元,用于控制所述机械臂按照所述第一运动轨迹移动至所述目标抓取位置。

在上述方案中,所述物体的抓取装置还包括:获取模块,用于获取所述目标抓取对象的目标放置位置,所述目标放置位置位于第二区域;映射模块,用于将所述目标放置位置映射到所述世界坐标系,得到世界坐标系下的目标放置坐标;第四确定模块,用于基于所述目标抓取坐标和所述目标放置坐标,确定所述机械臂的第二运动轨迹;第二控制模块,用于控制已抓取目标抓取对象的机械臂,按照所述第二运动轨迹移动至所述目标放置位置,并放置所述目标抓取对象。

在上述方案中,所述获取模块包括:第二获取单元,用于获取预先存储的各个对象的尺寸信息和各个对象内的物品类型的对应关系;识别单元,用于根据所述目标抓取对象的三维信息,识别所述目标抓取对象的尺寸信息;第九确定单元,用于基于所述对应关系,确定与所述目标抓取对象的尺寸信息相对应的物品类型;第十确定单元,用于根据所述物品类型,确定所述目标抓取对象在所述第二区域的目标放置位置。

本申请实施例提供一种物体的抓取设备,包括:存储器,用于存储可执行指令;处理器,用于执行所述存储器中存储的可执行指令时,实现本申请实施例提供的物体的抓取方法。

本申请实施例提供一种存储介质,存储有可执行指令,用于引起处理器执行时,实现本申请实施例提供的物体的抓取方法。

本申请实施例提供了一种物体的抓取方法、装置、设备及存储介质,其中,所述方法包括确定存放于第一区域的各个对象的位姿信息,基于各个对象的位姿信息确定目标抓取对象,根据所述目标抓取对象的位姿信息确定机械臂的目标抓取位置,控制所述机械臂移动至所述目标抓取位置,并抓取所述目标抓取对象。本申请实施例中,物体的抓取设备可以直接从第一区域抓取任意位姿的待抓取物体,而无需额外的上料装置,从而能够节省上料装置的购置成本,并减小设备占地面积,并且还能够减少抓取准备操作,进而缩短抓取时间,提高抓取效率。

附图说明

图1为本申请实施例提供的物体的抓取方法的一种实现流程示意图;

图2为本申请实施例提供的物体的抓取方法的另一种实现流程示意图;

图3为本申请实施例提供的物体的抓取方法的又一种实现流程示意图;

图4为本申请实施例提供的物体的抓取方法的再一种实现流程示意图;

图5为本申请实施例提供的物体的抓取方法的网络架构示意图;

图6为本申请实施例提供的物体的抓取设备的组成结构示意图。

具体实施方式

为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。

在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。

在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。

除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。

对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。

1)振动盘,是一种自动组装或自动加工机械的辅助送料设备,也可称为上料装置、送料装置。振动盘的作用是把各种产品有序地排列出来,配合自动组装设备将产品各个部位组装起来成为完整的一个产品,或者配合自动加工机械完成对工件的加工。

2)示教方法,是一种将自身的行为采用示范的方式展示给别人的教学方式。

3)机器视觉,是人工智能正在快速发展的一个分支。简单说来,机器视觉就是用机器代替人眼来做测量和判断。机器视觉系统是通过机器视觉产品,即图像摄取装置,至少包括互补金属氧化物半导体(cmos,complementarymetaloxidesemiconductor)和电荷耦合元件(ccd,chargecoupleddevice),将被摄取目标转换成图像信号,传送给专用的图像处理系统。

为了更好地理解本申请实施例,首先对相关技术中的物体的抓取方法及存在的缺点进行说明。

随着物流业的迅速发展以及工作自动化的深入,自动对已知模型物体进行抓取的任务需求在各类应用各个行业都越发迫切和紧要。

在相关技术中,对于混乱堆叠的目标物体,机械臂抓取系统需要设计专用的上料系统(如振动盘等),通过上料系统将目标物体整齐地堆叠或码放,以在抓取之前将目标物体按照固定位姿摆放,便于抓取。经过上料系统后,相关技术通过示教方法来示教机械臂抓取固定位姿的目标物体,从而实现目标物体的抓取。相关技术存在弊端:1)上料装置购置成本高、占地面积大;2)上料装置一般不具备通用性,不同形状的被抓取物体需要不同的上料装置,多次设计不同的上料装置,成本高且设计周期长,造成极大的浪费;3)示教方法无法应对不同的固定位姿,不具备复用性。

基于以上问题,在本申请实施例中提供一种物体的抓取方法,通过机器视觉技术确定待抓取物体的位姿信息,根据位姿信息确定机械臂的抓取位置,从而实现了对任意位姿的待抓取物体的准确抓取,可有效解决相关技术中存在的上述问题。

下面将结合本申请实施例提供的物体的抓取设备的示例性应用和实施,说明本申请实施例提供的物体的抓取方法。

参见图1,图1为本申请实施例提供的物体的抓取方法的一种实现流程示意图,应用于物体的抓取控制设备或抓取设备,例如机械臂控制设备、服务器、机器人等,还可以通过处理器执行程序实现上述抓取方法。下面将以物体的抓取设备为例,结合图1示出的步骤进行说明。

步骤s101,确定存放于第一区域的各个对象的位姿信息。

这里,各个对象即为待抓取的物体。第一区域可以为暂时放置待抓取的物体的区域,例如空地;第一区域也可以为随机放置待抓取物体的设备,例如容器。存放于第一区域的各个物体,可以是随机平铺放置,物体与物体之间不叠放,或者是采用倾倒等方式随机地堆放,物体与物体之间混叠在一起。存放于第一区域的各个待抓取物体,可以是在抓取之前预先放置在第一区域的,也可以是在抓取的过程中放置在第一区域的。

本申请实施例中,物体的抓取设备准备抓取第一区域的各个待抓取物体时,首先基于各个待抓取物体的图像信息,确定其位姿信息。在一些实施例中,可以利用三维(3d,3-dimensions)相机获取各个待抓取物体的图像信息,物体的抓取设备基于各个对象的图像信息确定存放于第一区域的各个待抓取物体的位姿信息。这里,位姿信息可以包括位置信息和姿态信息。

本申请实施例中,可以由运输设备直接将待抓取物体倾倒于第一区域,物体的抓取设备直接从第一区域抓取待抓取物体,或者抓取控制设备控制抓取设备直接从第一区域抓取待抓取物体,而无需额外的上料装置将待抓取物体振动到固定位姿,从而能够节省上料装置的购置成本,并减小物体的抓取设备的占地面积。并且,由于无需上料装置,因而无需针对不同类型的待抓取物体设计不同形状的上料装置,能够减少抓取准备操作,进而缩短抓取时间,提高抓取效率。

步骤s102,基于各个对象的位姿信息确定目标抓取对象。

物体的抓取设备根据各个待抓取物体的位姿信息来确定目标抓取物体,即目标抓取对象。当采用机械臂进行抓取时,若多个待抓取物体无法一次性的抓取,则需要在多个待抓取物体中选择一个或部分待抓取物体作为当前次抓取的目标抓取对象。

物体的抓取设备可以基于各个待抓取物体的位姿信息确定目标抓取对象,在一些实施例中,可基于各个待抓取物体的位置信息确定目标抓取对象,如将距离机械臂最近的待抓取物体确定为目标抓取对象;或者,可基于各个待抓取物体的姿态信息确定目标抓取对象,如将按照某一特定角度放置的待抓取物体确定为目标抓取对象;又或者,根据各个待抓取物体的位置信息和姿态信息确定目标抓取对象,如将对其他待抓取物体的影响最小的物体(如堆叠物体中最表面的物体,也即抓取目标抓取对象后,其他待抓取物体的位姿信息变化最小的物体)确定为目标抓取对象。

步骤s103,根据所述目标抓取对象的位姿信息确定机械臂的目标抓取位置。

由于目标抓取对象的放置方式、外观形状等因素,决定了目标抓取对象并非任意部位均可被抓取,或者决定了目标抓取对象抓取的难易程度。为了便于抓取,物体的抓取设备在确定了目标抓取对象后,进一步根据该目标抓取对象的位置信息和姿态信息确定机械臂的目标抓取位置,即机械臂具体抓取目标抓取对象的哪个部位。

举例说明,第一区域中存在大小不同的待抓取对象,例如至少包括正方体和长方体。根据目标抓取对象是正方体,还是长方体,结合目标抓取对象的位姿信息可确定机械臂的目标抓取位置。例如,若抓取对象目标为正方体时,机械臂的抓取部位可以为任意两个对立面;而若抓取对象为长方体时,为了确保抓取的稳定性,可以选择面积最大的两个对立面作为抓取部位所在的平面。为了进一步地保证抓取目标抓取对象的稳定性,机械臂抓取目标抓取对象两个对立面的中心点。

步骤s104,控制所述机械臂移动至所述目标抓取位置,并抓取所述目标抓取对象。

当确定了目标抓取对象、以及抓取该目标抓取对象时机械臂的目标抓取位置之后,即完成了抓取该目标抓取对象的准备工作。此时,物体的抓取设备可以移动机械臂至目标抓取位置,并控制机械臂开始抓取该目标抓取对象。

本申请实施例提供的物体的抓取方法,包括确定存放于第一区域的各个对象的位姿信息,基于各个对象的位姿信息确定目标抓取对象,根据所述目标抓取对象的位姿信息确定机械臂的目标抓取位置,控制所述机械臂移动至所述目标抓取位置,并抓取所述目标抓取对象。本申请实施例中,物体的抓取设备可以直接从第一区域抓取任意位姿的待抓取物体,而无需额外的上料装置,从而能够节省上料装置的购置成本,并减小设备占地面积,还能够减少抓取准备操作,进而缩短抓取时间,提高抓取效率。

在一些实施例中,上述的步骤s101“确定存放于第一区域的各个对象的位姿信息”可以通过步骤s1011至步骤s1014实现,以下对各个步骤进行说明。

步骤s1011,响应于接收到的抓取指令,获取所述第一区域中的多个对象的图像信息。

在一种可能的实现方式中,当用户确定需要抓取第一区域存放的对象(即待抓取物体)时,通过用户终端向物体的抓取设备下发抓取指令。物体的抓取设备接收并响应抓取指令,获取第一区域中的多个对象的图像信息,在实现时,可以是物体的抓取设备从自身或其他外部设备内预先保存的数据中,获取第一区域中的多个对象的图像信息;还可以是物体的抓取设备通过控制采集装置对第一区域中的多个对象进行图像采集,得到第一区域中多个对象的图像信息。

这里,采集装置为可以采集深度信息的3d相机或双目立体视觉相机,例如结构光相机、飞行时间测距法(tof,time-of-flight)相机、激光扫描相机等。

在一些实施例中,采集装置采集的图像信息包括存放于第一区域的多个对象的三维点云、深度图等图像信息,通过网络、串口等形式发送给物体的抓取设备。

步骤s1012,根据所述图像信息确定存放于第一区域的多个对象的三维信息。

物体的抓取设备根据接收到的图像信息,如三维点云和深度图,确定所采集的多个对象的三维信息。这里确定的三维信息为将多个对象作为一个整体所得到的三维信息。例如,根据多个对象的三维点云信息和深度图,结合相机所在的相机坐标系,可以得到相机坐标系下三维点云的三维坐标,从而得到多个对象整体的三维信息。这里,三维信息可以为相机坐标系下的三维坐标信息。

步骤s1013,根据所述多个对象的三维信息,将多个对象进行区分,得到各个对象的三维信息。

基于多个对象作为一个整体所得到的三维信息,按照物体的外观以及叠放方式,将多个对象进行区分,得到各个对象各自的三维信息。

本申请实施例中,若各个对象的形状都是规格形状,例如,长方体、圆柱体等规格形状。由此可根据规格形状的外观点云数据和深度图等信息将不同的物体进行区分。或者,还可以结合图像信息中各个对象的颜色信息,对各个对象进行区分,以提高区分的准确度。

本申请实施例中,若各个对象的形状为不规则形状时,预先建立不规则形状对象的立体模型,根据点云数据和深度图对不规则形状进行图像识别,再比对预先建立的不规则形状对象的立体模型,实现对各个不规则形状的对象的区分。或者,也可以结合实际应用场景,将不规则形状的对象放置在规则形状的包装箱中。

又或者,无论各个对象的形状是规格形状还是不规则形状,本申请实施例中还可以根据训练好的神经网络模型对图像信息进行图像识别,从而实现不同物体的分割,进而得到各个对象的三维信息。其中,神经网络模型是将预先获取的图像信息作为训练数据进行训练得到的。

步骤s1014,根据所述各个对象的三维信息,确定所述各个对象的位姿信息。

物体的抓取设备根据上步所确定的各个对象的三维信息,计算各个对象的位姿信息。这里,位姿信息可以包括位置信息和姿态信息。

在一些实施例中,计算对象位姿可以通过以下步骤实现:首先获取相机采集三维信息时的初始位姿信息,该初始位姿信息包括相机的位置信息和姿态信息,根据初始位姿信息确定相机坐标系。在采集图像信息后,将图像信息的三维信息映射到相机坐标系下,得到其在相机坐标系下的位姿信息。

本申请实施例提供的物体的抓取方法,物体的抓取设备响应于接收到的抓取指令,控制采集装置对第一区域中的多个对象进行图像采集,得到采集到的图像信息,根据所述图像信息确定存放于第一区域的多个对象的三维信息,再根据所述多个对象的三维信息,将多个对象进行区分,得到各个对象的三维信息,最后根据所述各个对象的三维信息,确定所述各个对象的位姿信息,实现了存放于第一区域的各个对象的位姿信息的确定,从而能够区分第一区域内多个不同的对象,例如区分第一区域中堆叠的多个对象,便于机械臂进行对各个对象进行抓取。

在一些实施例中,上述的步骤s102“基于各个对象的位姿信息确定目标抓取对象”可以通过步骤s1021至步骤s1022实现,以下对各个步骤进行说明。

步骤s1021,根据所述各个对象的位姿信息,确定所述各个对象之间位置关系。

当采用机械臂进行抓取时,若多个待抓取物体无法一次性的抓取,则需要在多个待抓取物体中选择一个或部分待抓取物体作为当前次抓取的目标抓取对象。物体的抓取设备可以基于各个待抓取物体的位姿信息确定目标抓取对象,首先,根据各个对象的位姿信息,确定各个对象之间的位置关系。这里的位置关系可以包括距离、空间叠放位置关系、对象的姿态等信息。

步骤s1022,基于所述各个对象之间的位置关系确定目标抓取对象。

物体的抓取设备根据各个对象之间的距离、空间叠放位置关系或对象的姿态等信息确定目标抓取对象。在一些实施例中,可基于各个待抓取物体的位置信息确定目标抓取对象,如将距离机械臂位置最近的待抓取物体确定为目标抓取对象;或者,可基于各个待抓取物体的姿态信息确定目标抓取对象,如将按照某一特定角度放置的待抓取物体确定为目标抓取对象;又或者,根据各个待抓取物体的位置信息和姿态信息确定目标抓取对象,如将距离机械臂位置最近、且按照某一特定角度放置的待抓取物体确定为目标抓取对象。

本申请实施例中,物体的抓取设备根据所述各个对象的位姿信息,确定所述各个对象之间位置关系,再基于所述各个对象之间的位置关系确定目标抓取对象,实现了根据各个待抓取物体的位姿信息来确定目标抓取对象,无需用户示教或指定即可自主的确定目标抓取对象,从而可应对随机摆放或堆叠的目标抓取对象的任意位姿情况的抓取,实现目标抓取对象的自动化确定、抓取,节省人力物力。

在一些实施例中,上述的步骤s103“根据所述目标抓取对象的位姿信息确定机械臂的目标抓取位置”可以通过步骤s1031至步骤s1032实现,以下对各个步骤进行说明。

步骤s1031,根据目标抓取对象的三维信息确定至少一个抓取位置。

由于目标抓取对象的放置方式、外观形状等因素,决定了目标抓取对象并非任意部位均可被抓取,或者决定了目标抓取对象抓取的难易程度。为了便于抓取,物体的抓取设备在确定了目标抓取对象后,进一步根据该目标抓取对象的位置信息和姿态信息确定机械臂的目标抓取位置,即机械臂具体抓取目标抓取对象的哪个部位。

本申请实施例中,物体的抓取设备可以根据目标抓取对象的三维信息确定至少一个抓取位置。例如,根据目标抓取对象的三维信息确定该目标抓取对象为长方体时,可以将至少一个面上的中心点(对角线的交点)确定为抓取点,再结合三维信息,将被其他非目标抓取对象所覆盖或遮挡的抓取点去除,剩余的抓取点即为可抓取点,也就是确定的至少一个抓取位置。

步骤s1032,根据所述目标抓取对象的位姿信息,从所述至少一个抓取位置中确定所述机械臂的目标抓取位置。

物体的抓取设备在确定了至少一个抓取位置后,可从这些抓取位置中选择一个或多个抓取位置作为机械臂的目标抓取位置。举例说明,当抓取的物体为具有把手的物体时,可以抓取把手,此时,抓取位置可以为一个;当抓取的物体为立方体时,此时,抓取位置可以为两个或两个以上。

为了更便于机械臂抓取,目标抓取位置可结合目标抓取对象的位姿信息,从至少一个抓取位置中选取最便于抓取的一个抓取位置作为机械臂抓取目标抓取对象时的目标抓取位置。

本申请实施例中,物体的抓取设备根据目标抓取对象的三维信息确定至少一个抓取位置,根据所述目标抓取对象的位姿信息,从所述至少一个抓取位置中确定所述机械臂的目标抓取位置,实现了根据目标抓取对象的位姿信息确定机械臂的目标抓取位置,便于机械臂进行抓取操作。

在一些实施例中,上述的步骤s104中的“控制所述机械臂移动至所述目标抓取位置”可以通过步骤s1041至步骤s1044实现,以下对各个步骤进行说明。

步骤s1041,确定采集装置所在的相机坐标系与机械臂所在的世界坐标系的转换关系。

当确定了目标抓取对象、以及抓取该目标抓取对象时机械臂的目标抓取位置之后,即完成了抓取该目标抓取对象的准备工作。此时,物体的抓取设备可控制机械臂开始执行抓取,但是,由于采集装置采集目标抓取对象时,所采用的坐标系可能与机械臂所在的坐标系不是同一个坐标系,因此,在机械臂移动之前,需要将采集装置所在的相机坐标系转换到机械臂所在的世界坐标系。首先,确定采集装置所在的相机坐标系与机械臂所在的世界坐标系的转换关系,世界坐标系与相机坐标系的转换关系如下式(1)所示:

其中,r为旋转矩阵,t为偏移向量。在世界坐标系下一坐标点(xw,yw,zw),该点在相机坐标系中的对应坐标为(xc,yc,zc)。

该旋转矩阵和偏移向量预先存储在抓取设备中,或者抓取设备可以根据机械臂的手眼标定获得。

步骤s1042,根据所述转换关系,将所述目标抓取位置映射到所述世界坐标系,得到世界坐标系下的目标抓取坐标。

根据上述转换关系,将相机坐标系下已知的目标抓取位置的坐标点映射到机械臂所在的世界坐标系,从而得到世界坐标系下的目标抓取坐标。

步骤s1043,基于所述目标抓取坐标和机械臂的初始坐标,确定所述机械臂的第一运动轨迹。

获取机械臂的初始坐标,根据该初始坐标和抓取目标抓取对象时机械臂的目标抓取坐标,确定出机械臂移动的第一运动轨迹。例如,将机械臂的初始坐标作为路径起点,将目标抓取坐标作为路径终点,利用路径规划算法(如最短路径规划算法等),规划出一条运动路径,作为所述第一运动轨迹。

在本申请实施例中,还可以根据该初始坐标和抓取目标抓取对象时机械臂的目标抓取坐标、以及第一区域中各个对象的位姿信息,确定出符合机器人运动学关系的机械臂移动的第一运动轨迹,以使得该第一运动轨迹可以避开其他未被抓取的对象,从而根据工作环境获得无碰撞的运动轨迹,可以提高物体抓取效率和成功率。

步骤s1044,控制所述机械臂按照所述第一运动轨迹移动至所述目标抓取位置。

物体的抓取设备控制机械臂按照第一运动轨迹移动,以使机械臂从初始坐标移动到目标抓取坐标,进而抓取目标抓取对象。

本申请实施例中,物体的抓取设备首先确定采集装置所在的相机坐标系与机械臂所在的世界坐标系的转换关系,再根据所述转换关系,将所述目标抓取位置映射到所述世界坐标系,得到世界坐标系下的目标抓取坐标,然后基于所述目标抓取坐标和机械臂的初始坐标,确定所述机械臂的第一运动轨迹,最后控制所述机械臂按照所述第一运动轨迹移动至所述目标抓取位置,实现了物体的抓取设备控制所述机械臂移动至所述目标抓取位置,从而使得机械臂可对目标抓取对象进行抓取操作。

参见图2,图2为本申请实施例提供的物体的抓取方法的另一种实现流程示意图,本申请实施例是在图1所示实施例的基础上实现的。下面将结合图2示出的步骤进行说明。

步骤s201,确定存放于第一区域的各个对象的位姿信息。

步骤s202,基于各个对象的位姿信息确定目标抓取对象。

步骤s203,根据所述目标抓取对象的位姿信息确定机械臂的目标抓取位置。

步骤s204,控制所述机械臂移动至所述目标抓取位置,并抓取所述目标抓取对象。

本申请实施例是在图1所示实施例基础上实现的,步骤s201至步骤s204分别参见图1所示实施例中的步骤s101至步骤s104中对应部分的描述,本申请实施例中不再赘述。

步骤s205至步骤s208是机械臂在抓取到目标抓取对象后,物体的抓取设备控制机械臂将目标抓取对象移动至目标放置位置的一种实现步骤。

步骤s205,获取所述目标抓取对象的目标放置位置。

这里,所述目标放置位置位于第二区域,所述第二区域区别于第一区域。

目标放置位置可以是位于第二区域的一特定位置,可以由用户指定,此时,物体的抓取设备基于用户的输入操作来获取目标抓取对象的目标放置位置。当用户未指定时,物体的抓取设备可将默认的放置位置确定为目标抓取对象的目标放置位置。

第二区域可以结合实际抓取物体的应用场景来确定,当物体的抓取设备用于存储抓取时,第二区域可以为仓库,通过物体的抓取设备实现将第一区域随机堆叠的各个对象码放至第二区域;当物体的抓取设备用于物流抓取时,第二区域可以为传送带,通过物体的抓取设备实现将第一区域随机堆叠的各个对象抓取至传送带。

步骤s206,将所述目标放置位置映射到所述世界坐标系,得到世界坐标系下的目标放置坐标。

与上述步骤s104类似,由于目标放置位置所采用的坐标系可能与机械臂所在的坐标系不是同一个坐标系,因此,在机械臂移动已抓取的目标抓取对象之前,需要将目标放置位置所在的坐标系转换到机械臂所在的世界坐标系,得到世界坐标系下的目标放置坐标。

步骤s207,基于所述目标抓取坐标和所述目标放置坐标,确定所述机械臂的第二运动轨迹。

根据机械臂当前所在的目标抓取坐标和放置目标抓取对象的目标放置坐标,确定出机械臂移动的第二运动轨迹。第二运动轨迹的确定方式与第一运动轨迹类似,此处不再赘述。

步骤s208,控制已抓取目标抓取对象的机械臂,按照所述第二运动轨迹移动至所述目标放置位置,并放置所述目标抓取对象。

物体的抓取设备控制机械臂按照第二运动轨迹移动,以使已抓取目标抓取对象的机械臂从目标抓取坐标移动到目标放置坐标,进而放置目标抓取对象,实现目标抓取对象的抓取放置操作。

本申请实施例提供的物体的抓取方法,在上述实施例的基础上,通过获取所述目标抓取对象的目标放置位置,所述目标放置位置位于第二区域;将所述目标放置位置映射到所述世界坐标系,得到世界坐标系下的目标放置坐标;基于所述目标抓取坐标和所述目标放置坐标,确定所述机械臂的第二运动轨迹;控制已抓取目标抓取对象的机械臂,按照所述第二运动轨迹移动至所述目标放置位置,并放置所述目标抓取对象,进一步实现了目标抓取对象的放置操作,物体的抓取设备可以直接从第一区域抓取任意位姿的目标抓取对象并移动到第二区域的目标放置位置,而无需额外的上料装置,从而能够节省上料装置的购置成本,减小设备占地面积,并且能够减少抓取准备操作,缩短抓取时间,提高抓取效率。

在一些实施例中,上述的步骤s205“获取所述目标抓取对象的目标放置位置”可以通过步骤s2051至步骤s2054实现,以下对各个步骤进行说明。

步骤s2051,获取预先存储的各个对象的尺寸信息和各个对象内的物品类型的对应关系。

本申请实施例中,可以根据目标抓取对象的尺寸信息将其放置到不同的目标放置位置。首先,物体的抓取设备中预先存储有各种对象的尺寸信息、各个对象内物品类型。本申请实施例中,不同物品类型的对象放置在不同尺寸的对象内,根据各个对象的尺寸信息和物品类型,物体的抓取设备确定对象的尺寸信息和物品类型的对应关系,并将其进行存储。

举例说明,第一区域中存在大小不同的待抓取对象,例如至少包括以下两种尺寸大小:1m(米)×1m×1m的正方体和1m×2m×2m的长方体,并且不同的尺寸大小的待抓取对象中的物品类型是不同的,假设1m×1m×1m的正方体中的物品为杯子,1m×2m×2m的长方体中的物品为食物,那么,该对应关系中存储的是:1m×1m×1m对应杯子,1m×2m×2m对应食物。

步骤s2052,根据所述目标抓取对象的三维信息,识别所述目标抓取对象的尺寸信息。

物体的抓取设备根据上述步骤s1013中确定的目标抓取对象的三维信息,例如确定出目标抓取对象的各个顶点坐标,从而得到各个边在图像中的图像距离。然后根据深度图,或者,根据双目视觉,确定出目标抓取对象与采集装置在现实中的实际距离。最后根据图像距离、实际距离以及采集装置的参数(如相机的焦距等内参),计算出目标抓取对象的尺寸信息。

步骤s2053,基于所述对应关系,确定与所述目标抓取对象的尺寸信息相对应的物品类型。

已知目标抓取对象的尺寸信息后,根据该尺寸信息在步骤s2051中获取的各个对象的尺寸信息和各个对象内的物品类型的对应关系中查找与其对应的物品类型。

仍以上述举例说明,在步骤s2052中识别的目标抓取对象的尺寸信息为1m×1m×1m的正方体时,即可确定目标抓取对象中物品为杯子。

步骤s2054,根据所述物品类型,确定所述目标抓取对象在所述第二区域的目标放置位置。

基于预先设定的多个不同物品类型的多个目标放置位置,按照目标抓取对象的物品类型,确定出目标抓取对象在第二区域的目标放置位置,从而在抓取目标抓取对象的同时,实现了对目标抓取对象的分类。

本申请实施例中,通过获取预先存储的各个对象的尺寸信息和各个对象内的物品类型的对应关系;根据所述目标抓取对象的三维信息,识别所述目标抓取对象的尺寸信息;基于所述对应关系,确定与所述目标抓取对象的尺寸信息相对应的物品类型;根据所述物品类型,确定所述目标抓取对象在所述第二区域的目标放置位置,在放置目标抓取对象的同时,实现了对目标抓取对象的分类,进一步实现了物体抓取放置的自动化,能够节省人力物力,大大提高物体分类的效率。

基于前述的实施例,本申请实施例再提供一种物体的抓取方法,图3为本申请实施例提供的物体的抓取方法的又一种实现流程示意图,如图3所示,所述流程包括:

步骤s301,物体的抓取设备接收抓取指令。

这里,抓取指令可以为用户采用终端发送的,或者,抓取指令是由用户在物体的抓取设备的输入设备上进行的输入操作而触发的,或者抓取指令是根据预设的抓取任务自动生成的。

步骤s302,物体的抓取设备响应于所述抓取指令,向采集装置发送采集指令。

采集装置为可以采集深度信息的3d相机或双目立体视觉相机。

采集装置可以设置在第一区域的上方位置,物体的抓取设备可以与采集装置通过网络或串口连接。

步骤s303,采集装置对第一区域中的多个对象进行图像采集,得到采集到的图像信息。

本申请实施例中,采集装置采集的图像信息可包括存放于第一区域的多个对象的三维点云、深度图等图像信息。

步骤s304,采集装置响应于所述采集指令,向所述物体的抓取设备发送所述图像信息。

采集装置可以通过网络或串口等形式,将采集的图像信息返回给物体的抓取设备。

在另一实现方式中,步骤s302至步骤s304可以换为物体的抓取设备获取第一区域中多个对象的图像信息。此时,物体的抓取设备可以按照步骤s302至步骤s304来获取图像信息,还可以是从其他外部设备通过通信链路获取图像信息。

步骤s305,物体的抓取设备根据所述图像信息确定存放于第一区域的多个对象的三维信息。

这里,确定的三维信息为将多个对象作为一个整体所得到的三维信息。

步骤s306,物体的抓取设备根据所述多个对象的三维信息,将多个对象进行区分,得到各个对象的三维信息。

基于多个对象作为一个整体所得到的三维信息,按照物体的外观以及叠放方式,将多个对象进行区分,得到各个对象各自的三维信息。

步骤s307,物体的抓取设备根据所述各个对象的三维信息,确定所述各个对象的位姿信息。

这里,位姿信息可以包括位置信息和姿态信息。物体的抓取设备根据上步所确定的各个对象的三维信息,计算各个对象的位姿信息。

步骤s308,物体的抓取设备根据所述各个对象的位姿信息,确定所述各个对象之间位置关系。

这里的位置关系可以包括距离、空间叠放位置关系、对象的姿态等信息。

步骤s309,物体的抓取设备基于所述各个对象之间的位置关系确定目标抓取对象。

物体的抓取设备根据各个对象之间的距离、空间叠放位置关系或对象的姿态等信息确定目标抓取对象。

步骤s310,物体的抓取设备根据目标抓取对象的三维信息确定至少一个抓取位置。

物体的抓取设备可以根据目标抓取对象的三维信息确定至少一个抓取位置。例如,根据目标抓取对象的三维信息确定该目标抓取对象为长方体时,可以将向对面的位置点确定为抓取点,再结合三维信息,将被其他非目标抓取对象所覆盖或遮挡的抓取点去除,剩余的抓取点即为可抓取点,也就是确定的至少一个抓取位置。

步骤s311,物体的抓取设备根据所述目标抓取对象的位姿信息,从所述至少一个抓取位置中确定所述机械臂的目标抓取位置。

为了更便于机械臂抓取,目标抓取位置可结合目标抓取对象的位姿信息,从至少一个抓取位置中选取最便于抓取的一个抓取位置作为机械臂抓取目标抓取对象时的目标抓取位置。

步骤s312,物体的抓取设备确定采集装置所在的相机坐标系与机械臂所在的世界坐标系的转换关系。

步骤s313,物体的抓取设备根据所述转换关系,将所述目标抓取位置映射到所述世界坐标系,得到世界坐标系下的目标抓取坐标。

由于采集装置采集目标抓取对象时,所采用的坐标系可能与机械臂所在的坐标系不是同一个坐标系,因此,在机械臂移动之前,需要根据转换关系将目标抓取位置映射到世界坐标系,得到世界坐标系下的目标抓取坐标。

步骤s314,物体的抓取设备基于所述目标抓取坐标和机械臂的初始坐标,确定所述机械臂的第一运动轨迹。

步骤s315,物体的抓取设备控制机械臂按照第一运动轨迹移动至所述目标抓取位置。

步骤s316,物体的抓取设备控制机械臂抓取所述目标抓取对象。

步骤s317,物体的抓取设备获取预先存储的各个对象的尺寸信息和各个对象内的物品类型的对应关系。

本申请实施例中,不同物品类型的对象放置在不同尺寸的对象内,根据各个对象的尺寸信息和物品类型,物体的抓取设备确定对象的尺寸信息和物品类型的对应关系,并将其进行存储。

步骤s318,物体的抓取设备根据所述目标抓取对象的三维信息,识别所述目标抓取对象的尺寸信息。

步骤s319,物体的抓取设备基于所述对应关系,确定与所述目标抓取对象的尺寸信息相对应的物品类型。

步骤s320,物体的抓取设备根据所述物品类型,确定所述目标抓取对象在所述第二区域的目标放置位置。

这里,所述目标放置位置位于第二区域。

已知目标抓取对象的尺寸信息后,根据该尺寸信息在各个对象的尺寸信息和各个对象内的物品类型的对应关系中查找与其对应的物品类型。基于预先设定的多个不同物品类型的多个目标放置位置,按照目标抓取对象的物品类型,确定出目标抓取对象在第二区域的目标放置位置,从而在抓取目标抓取对象的同时,实现了对目标抓取对象的分类。

步骤s321,物体的抓取设备将所述目标放置位置映射到所述世界坐标系,得到世界坐标系下的目标放置坐标。

步骤s322,物体的抓取设备基于所述目标抓取坐标和所述目标放置坐标,确定所述机械臂的第二运动轨迹。

步骤s323,物体的抓取设备控制机械臂按照第二运动轨迹移动至所述目标放置位置。

步骤s324,物体的抓取设备控制机械臂放置所述目标抓取对象。

物体的抓取设备控制已抓取了目标抓取对象的机械臂按照第二运动轨迹,从目标抓取坐标移动到目标放置坐标,并放置目标抓取对象,实现目标抓取对象的抓取放置操作。

至此,完成了当前的目标抓取对象的抓取放置操作,此时,若还存在待抓取物体,由于在抓取目标抓取对象时,可能对其他待抓取物体的位置造成影响,改变了其他待抓取物体的位姿信息,因此,在下一次抓取时,需要重新获取第一区域各个对象的图像信息,即返回步骤s302,再次向采集装置发送采集指令。若完成当前的目标抓取对象的抓取放置操作后,不再进行抓取,或者第一区域不存在待抓取物体时,结束抓取。

需要说明的是,本申请实施例与其他实施例中相同的步骤或概念可以参考其他实施例中的相关说明。

本申请实施例提供的物体的抓取的方法,物体的抓取设备可以直接从第一区域抓取任意位姿的待抓取物体,而无需额外的上料装置,从而能够节省上料装置的购置成本,并减小设备占地面积,还能够减少抓取准备操作,进而缩短抓取时间,提高抓取效率。并且,按照物品类型进行分类,放置至不同的目标放置位置,在抓取目标抓取对象的同时,能够实现对目标抓取对象的分类,进一步实现了物体抓取放置的自动化,从而节省人力物力,大大提高物体分类的效率。

下面,将说明本申请实施例在一个实际的应用场景中的示例性应用。本申请实施例提供的物体的抓取方法,可以应用于工业生产上下料、简单装配制造、物流分拣等实际的应用场景。

图4为本申请实施例提供的物体的抓取方法的再一种实现流程示意图,如图4所示,所述物体的抓取方法包括以下步骤:

步骤s401,容器获取混叠的来料。

本申请实施例中,来料即为所有的可抓取物体,可抓取物体采用倾倒等方式放于指定的容器内,机械臂直接从该指定容器内抓取目标物体,而无需设置额外的上料装置,从而能够节省上料装置的购置成本,并减小设备占地面积,还能够减少抓取准备操作,进而缩短抓取时间,提高抓取效率。

步骤s402,采集装置获取混叠的来料的图像信息。

这里,混叠的来料的图像信息可以包括物料堆叠区域的点云、深度图等图像信息。采集装置可以为3d相机,具体可以为结构光相机、tof相机、激光扫描相机等可采集深度信息的采集装置。

3d相机在接收到物体的抓取设备触发的抓取指令后启动图像信息的捕捉,获得物料堆叠区域的点云、深度图等图像信息,通过网络或串口等形式发送给视觉定位装置。

步骤s403,视觉定位装置接收采集装置发送的图像信息,基于图像信息确定所有可抓取物体的位姿信息,发送位姿信息至自主抓取放置装置。

这里的位姿信息可以为6d位姿信息,包括三维的位置信息和三维的姿态信息。

进一步地,视觉定位装置根据所有可抓取物体的位姿信息,确定目标抓取物体。然后根据相机坐标系与世界坐标系的转换关系,将目标抓取物体的位姿信息转换到机械臂的世界坐标系下,使得目标抓取物体的目标放置位置与机械臂的坐标系统一,便于计算机械臂的运动轨迹。

步骤s404,自主抓取放置装置接收视觉定位装置发送的目标位姿,利用机器人运动学关系计算机械臂的运动轨迹,并发送给机械臂。

本申请实施例中,机械臂的运动轨迹包括抓取轨迹和放置轨迹。其中,抓取轨迹是机械臂从上一次停止的位置(即初始位置)移动至目标抓取物体的目标抓取位置的移动轨迹,放置轨迹是机械臂抓取了目标抓取物体后,从目标抓取位置移动到目标放置位置的移动轨迹。

在实际应用中,若存在多个机械臂同时工作,自主抓取放置装置计算的运动轨迹为无碰撞的运动轨迹,避免多个机械臂作业时相互影响。

步骤s405,机械臂按照运动轨迹执行抓取、放置目标抓取物体操作,完成目标抓取物体的抓取放置任务。

这里,机械臂可根据实际需求选用3自由度机械臂、6自由度机械臂或7自由度机械臂,还可以是其它类型机械臂,本申请实施例不作具体限定。

步骤s406,判断装置判断容器是否存在剩余来料。

经过步骤s405,已将容器中的目标抓取物体移动至目标放置位置,完成了目标抓取物体的抓取放置操作,此时,判断装置判断容器中是否还有剩余来料,若容器中还有剩余来料,表明来料还未抓取完,返回步骤s402,继续下一次抓取放置操作。若容器中没有剩余来料,表明当前抓取放置的目标抓取物体为最后一个物体,容器中已不存在可抓取物体,此时,进入步骤s407,结束抓取。

步骤s407,结束抓取。

本申请实施例提供的物体的抓取方法,通过容器获取混叠的来料,采集装置获取混叠的来料的图像信息,发送图像信息至视觉定位装置,然后视觉定位装置基于图像信息确定所有可抓取物体的位姿信息,发送位姿信息至自主抓取放置装置,自主抓取放置装置利用机器人运动学关系计算机械臂的运动轨迹,并发送给机械臂,以使机械臂按照运动轨迹执行抓取、放置目标抓取物体操作,完成目标抓取物体的抓取放置任务。本申请实施例通过视觉定位装置自动估计混叠来料的位姿信息,并通过自主抓取放置装置计算机械臂的运动轨迹,实现准确抓取,混叠的来料随机放置在容器中,无需额外的上料装置,节省生产成本和空间,视觉定位装置与自主抓取放置装置确定机械臂的运动轨迹,无需示教,可应对随机堆叠下目标物体的任意位姿情况,能够实现物体抓取放置的自动化,节省人力物力,大大提高抓取物体的效率。

下面说明实现本申请实施例的装置的示例性应用,本申请实施例提供的装置可以实施为物体的抓取设备。以下将说明装置实施为物体的抓取设备时涵盖的示例性应用。

参见图5,图5为本申请实施例提供的物体的抓取方法的网络架构示意图,如图5所示,在该网络架构中至少包括物体的抓取设备100、终端200、采集装置300、机械臂400和网络500。为实现支撑一个示例性应用,用户通过终端200向物体的抓取设备100发送抓取指令,物体的抓取设备100通过网络500分别连接采集装置300和机械臂400,网络500可以是广域网或者局域网,又或者是二者的组合,使用无线链路实现数据传输。

采集装置300为能够采集深度信息的3d相机,例如结构光相机、tof相机、激光扫描相机等;采集装置300也可以为双目立体视觉相机。机械臂400可以为3自由度机械臂、6自由度机械臂或7自由度机械臂,由抓取物体的实际场景决定选用哪种自由度的机械臂。

用户利用终端200向物体的抓取设备100下发抓取指令后,物体的抓取设备100通过网络500向采集装置300发送采集指令,采集装置300采集各个对象的图像信息返回给物体的抓取设备100。物体的抓取设备100基于各个对象的图像信息确定各个对象的位姿信息,进而确定目标抓取对象,然后根据目标抓取对象的位姿信息确定机械臂的目标抓取位置,控制机械臂400移动至目标抓取位置,并抓取目标抓取对象,实现了目标抓取对象的抓取。

本申请实施例提供的装置可以实施为硬件或者软硬件结合的方式,下面说明本申请实施例提供的装置的各种示例性实施。

根据图6示出的物体的抓取设备100的示例性结构,可以预见物体的抓取设备100的其他的示例性结构,因此这里所描述的结构不应视为限制,例如可以省略下文所描述的部分组件,或者,增设下文所未记载的组件以适应某些应用的特殊需求。

图6所示的物体的抓取设备100包括:至少一个处理器110、存储器140、至少一个网络接口120和用户接口130。物体的抓取设备100中的每个组件通过总线系统150耦合在一起。可理解,总线系统150用于实现这些组件之间的连接通信。总线系统150除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图6中将各种总线都标为总线系统150。

用户接口130可以包括显示器、键盘、鼠标、触感板和触摸屏等。

存储器140可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,readonlymemory)。易失性存储器可以是随机存取存储器(ram,randomaccessmemory)。本申请实施例描述的存储器140旨在包括任意适合类型的存储器。

本申请实施例中的存储器140能够存储数据以支持物体的抓取设备100的操作。这些数据的示例包括:用于在物体的抓取设备100上操作的任何计算机程序,如操作系统和应用程序。其中,操作系统包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序可以包含各种应用程序。

作为本申请实施例提供的物体的抓取方法采用软件实施的示例,本申请实施例所提供的方法可以直接体现为由处理器110执行的软件模块组合,软件模块可以位于存储介质中,存储介质位于存储器140,处理器110读取存储器140中软件模块包括的可执行指令,结合必要的硬件(例如,包括处理器110以及连接到总线150的其他组件)完成本申请实施例提供的方法。

作为示例,处理器110可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(dsp,digitalsignalprocessor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。

下面继续说明本申请实施例提供的物体的抓取装置70的实施为软件模块的示例性结构,在一些实施例中,如图6所示,存储在存储器140的物体的抓取装置70中的软件模块可以包括:

第一确定模块71,用于确定存放于第一区域的各个对象的位姿信息;

第二确定模块72,用于基于各个对象的位姿信息确定目标抓取对象;

第三确定模块73,用于根据所述目标抓取对象的位姿信息确定机械臂的目标抓取位置;

第一控制模块74,用于控制所述机械臂移动至所述目标抓取位置,并抓取所述目标抓取对象。

在一些实施例中,所述第一确定模块71,进一步可以包括:

第一获取单元,用于响应于接收到的抓取指令,获取所述第一区域中的多个对象的图像信息;

第一确定单元,用于根据所述图像信息确定存放于第一区域的多个对象的三维信息;

区分单元,用于根据所述多个对象的三维信息,将多个对象进行区分,得到各个对象的三维信息;

第二确定单元,用于根据所述各个对象的三维信息,确定所述各个对象的位姿信息。

在一些实施例中,所述第二确定模块72,进一步可以包括:

第三确定单元,用于根据所述各个对象的位姿信息,确定所述各个对象之间位置关系;

第四确定单元,用于基于所述各个对象之间的位置关系确定目标抓取对象。

在一些实施例中,所述第三确定模块73,进一步可以包括:

第五确定单元,用于根据目标抓取对象的三维信息确定至少一个抓取位置;

第六确定单元,用于根据所述目标抓取对象的位姿信息,从所述至少一个抓取位置中确定所述机械臂的目标抓取位置。

在一些实施例中,所述第一获取单元,进一步可以包括:

控制子单元,用于控制采集装置对所述第一区域中的多个对象进行图像采集,得到图像信息;

在一些实施例中,所述第一控制模块74,进一步可以包括:

第七确定单元,用于确定采集装置所在的相机坐标系与机械臂所在的世界坐标系的转换关系;

映射单元,用于根据所述转换关系,将所述目标抓取位置映射到所述世界坐标系,得到世界坐标系下的目标抓取坐标;

第八确定单元,用于基于所述目标抓取坐标和机械臂的初始坐标,确定所述机械臂的第一运动轨迹;

第一控制单元,用于控制所述机械臂按照所述第一运动轨迹移动至所述目标抓取位置。

在一些实施例中,所述物体的抓取装置70还可以包括:

获取模块,用于获取所述目标抓取对象的目标放置位置,所述目标放置位置位于第二区域;

映射模块,用于将所述目标放置位置映射到所述世界坐标系,得到世界坐标系下的目标放置坐标;

第四确定模块,用于基于所述目标抓取坐标和所述目标放置坐标,确定所述机械臂的第二运动轨迹;

第二控制模块,用于控制已抓取目标抓取对象的机械臂,按照所述第二运动轨迹移动至所述目标放置位置,并放置所述目标抓取对象。

在一些实施例中,所述获取模块,进一步可以包括:

第二获取单元,用于获取预先存储的各个对象的尺寸信息和各个对象内的物品类型的对应关系;

识别单元,用于根据所述目标抓取对象的三维信息,识别所述目标抓取对象的尺寸信息;

第九确定单元,用于基于所述对应关系,确定与所述目标抓取对象的尺寸信息相对应的物品类型;

第十确定单元,用于根据所述物品类型,确定所述目标抓取对象在所述第二区域的目标放置位置。

需要说明的是,图6中所示物体的抓取装置用于执行上述方法实施例的步骤,具体执行方式与效果参见上述方法实施例中对应的描述,此处不再赘述。

本申请实施例提供一种存储有可执行指令的存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的方法,例如,如图1、图2、图3和图4示出的方法。

在一些实施例中,存储介质可以是fram、rom、prom、eprom、eeprom、闪存、磁表面存储器、光盘、或cd-rom等存储器;也可以是包括上述存储器之一或任意组合的各种设备。

在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。

作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(html,hypertextmarkuplanguage)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。

作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。

以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。


技术特征:

1.一种物体的抓取方法,其特征在于,包括:

确定存放于第一区域的各个对象的位姿信息;

基于各个对象的位姿信息确定目标抓取对象;

根据所述目标抓取对象的位姿信息确定机械臂的目标抓取位置;

控制所述机械臂移动至所述目标抓取位置,并抓取所述目标抓取对象。

2.根据权利要求1所述的方法,其特征在于,所述确定存放于第一区域的各个对象的位姿信息,包括:

响应于接收到的抓取指令,获取所述第一区域中的多个对象的图像信息;

根据所述图像信息确定存放于第一区域的多个对象的三维信息;

根据所述多个对象的三维信息,将多个对象进行区分,得到各个对象的三维信息;

根据所述各个对象的三维信息,确定所述各个对象的位姿信息。

3.根据权利要求2所述的方法,其特征在于,所述基于各个对象的位姿信息确定目标抓取对象,包括:

根据所述各个对象的位姿信息,确定所述各个对象之间位置关系;

基于所述各个对象之间的位置关系确定目标抓取对象。

4.根据权利要求2或3所述的方法,其特征在于,所述根据所述目标抓取对象的位姿信息确定机械臂的目标抓取位置,包括:

根据目标抓取对象的三维信息确定至少一个抓取位置;

根据所述目标抓取对象的位姿信息,从所述至少一个抓取位置中确定所述机械臂的目标抓取位置。

5.根据权利要求2-4任一项所述的方法,其特征在于,

所述获取所述第一区域中的多个对象的图像信息,包括;

控制采集装置对所述第一区域中的多个对象进行图像采集,得到图像信息;

所述控制所述机械臂移动至所述目标抓取位置,包括:

确定采集装置所在的相机坐标系与机械臂所在的世界坐标系的转换关系;

根据所述转换关系,将所述目标抓取位置映射到所述世界坐标系,得到世界坐标系下的目标抓取坐标;

基于所述目标抓取坐标和机械臂的初始坐标,确定所述机械臂的第一运动轨迹;

控制所述机械臂按照所述第一运动轨迹移动至所述目标抓取位置。

6.根据权利要求5所述的方法,其特征在于,所述方法还包括:

获取所述目标抓取对象的目标放置位置,所述目标放置位置位于第二区域;

将所述目标放置位置映射到所述世界坐标系,得到世界坐标系下的目标放置坐标;

基于所述目标抓取坐标和所述目标放置坐标,确定所述机械臂的第二运动轨迹;

控制已抓取目标抓取对象的机械臂,按照所述第二运动轨迹移动至所述目标放置位置,并放置所述目标抓取对象。

7.根据权利要求6所述的方法,其特征在于,所述获取所述目标抓取对象的目标放置位置包括:

获取预先存储的各个对象的尺寸信息和各个对象内的物品类型的对应关系;

根据所述目标抓取对象的三维信息,识别所述目标抓取对象的尺寸信息;

基于所述对应关系,确定与所述目标抓取对象的尺寸信息相对应的物品类型;

根据所述物品类型,确定所述目标抓取对象在所述第二区域的目标放置位置。

8.一种物体的抓取装置,其特征在于,包括:

第一确定模块,用于确定存放于第一区域的各个对象的位姿信息;

第二确定模块,用于基于各个对象的位姿信息确定目标抓取对象;

第三确定模块,用于根据所述目标抓取对象的位姿信息确定机械臂的目标抓取位置;

第一控制模块,用于控制所述机械臂移动至所述目标抓取位置,并抓取所述目标抓取对象。

9.一种物体的抓取设备,其特征在于,包括:

存储器,用于存储可执行指令;

处理器,用于执行所述存储器中存储的可执行指令时,实现权利要求1至7任一项所述的方法。

10.一种存储介质,其特征在于,存储有可执行指令,用于引起处理器执行时,实现权利要求1至7任一项所述的方法。

技术总结
本申请提供了一种物体的抓取方法、装置、设备及存储介质,其中,所述方法包括确定存放于第一区域的各个对象的位姿信息,基于各个对象的位姿信息确定目标抓取对象,根据所述目标抓取对象的位姿信息确定机械臂的目标抓取位置,控制所述机械臂移动至所述目标抓取位置,并抓取所述目标抓取对象。

技术研发人员:周韬;于行尧;成慧
受保护的技术使用者:深圳市商汤科技有限公司
技术研发日:2020.02.25
技术公布日:2020.05.19

转载请注明原文地址: https://bbs.8miu.com/read-267690.html

最新回复(0)