[go: up one dir, main page]

CN115246124A - 物体抓取方法、装置、电子设备和存储介质 - Google Patents

物体抓取方法、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN115246124A
CN115246124A CN202111483974.6A CN202111483974A CN115246124A CN 115246124 A CN115246124 A CN 115246124A CN 202111483974 A CN202111483974 A CN 202111483974A CN 115246124 A CN115246124 A CN 115246124A
Authority
CN
China
Prior art keywords
pose
grabbing
target object
objects
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111483974.6A
Other languages
English (en)
Inventor
朱溪女
丁有爽
邵天兰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mech Mind Robotics Technologies Co Ltd
Original Assignee
Mech Mind Robotics Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mech Mind Robotics Technologies Co Ltd filed Critical Mech Mind Robotics Technologies Co Ltd
Priority to CN202111483974.6A priority Critical patent/CN115246124A/zh
Publication of CN115246124A publication Critical patent/CN115246124A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1612Programme controls characterised by the hand, wrist, grip control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0014Image feed-back for automatic industrial control, e.g. robot with camera
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Orthopedic Medicine & Surgery (AREA)
  • Automation & Control Theory (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Manipulator (AREA)

Abstract

本发明提供了一种物体抓取方法,该方法包括:获取第一目标物体的第一物体位姿,其中,所述第一目标物体包括从N个待抓取物体中确定出的物体;计算所述第一物体位姿与M个第二物体位姿中至少一个第二物体位姿之间的位姿距离,其中,所述M个第二物体位姿包括所述N个待抓取物体中M个抓取失败物体的物体位姿,M或N为大于或等于1的整数,M小于或等于N;在计算获得的任一个所述位姿距离小于第一距离阈值的情况下,停止抓取所述第一目标物体。本发明还提供了一种物体抓取装置、电子设备和存储介质。

Description

物体抓取方法、装置、电子设备和存储介质
技术领域
本发明涉及智能物流领域,更具体地涉及一种物体抓取方法、装置、电子设备和存储介质。
背景技术
随着自动化技术的发展,在一些场景中逐渐由自动化机械代替人工进行工作。例如通过机械臂将物体抓取后移动至目标位置,而代替了人工进行搬运的方式。
通常机械臂在抓取物体时,可能会存在抓取失败的情况,而控制算法计算的结果表示当前抓取失败的物体具有最高优先级,且规划成功了抓取路径。所以机械臂在抓取失败后,可能会不断的重复尝试抓取。若当前抓取失败的物体不具有被抓取成功的可能性,那么机械臂重复抓取的方式会导致时间和资源的耗费,降低整体抓取效率。
发明内容
鉴于上述问题,本发明提供了一种能够提高整体抓取效率的物体抓取方法、装置、电子设备和存储介质。
本发明实施例的一个方面提供了一种物体抓取方法,包括:获取第一目标物体的第一物体位姿,其中,所述第一目标物体包括从N个待抓取物体中确定出的物体;计算所述第一物体位姿与M个第二物体位姿中至少一个第二物体位姿之间的位姿距离,其中,所述M个第二物体位姿包括所述N个待抓取物体中M个抓取失败物体的物体位姿,M或N为大于或等于1的整数,M小于或等于N;在计算获得的任一个所述位姿距离小于第一距离阈值的情况下,停止抓取所述第一目标物体。
根据本发明的实施例,所述方法还包括:在计算获得的任一个所述位姿距离大于或等于第一距离阈值的情况下,抓取所述第一目标物体。
根据本发明的实施例,所述抓取所述第一目标物体包括:基于所述第一目标物体的第一抓取位姿抓取所述第一目标物体,其中,所述第一抓取位姿与所述第一物体位姿相同或不同。
根据本发明的实施例,所述基于所述第一目标物体的第一抓取位姿,抓取所述第一目标物体包括:控制吸盘在所述第一抓取位姿吸取所述第一目标物体;或控制夹爪在所述第一抓取位姿夹取所述第一目标物体。
根据本发明的实施例,失败记录队列中记录有所述M个第二物体位姿,在所述获取第一目标物体的第一物体位姿之前,在所述失败记录队列中未记录有所述M个第二物体位姿的情况下,所述方法还包括:获取第二目标物体的第三物体位姿,以及第二抓取位姿,其中,所述第三物体位姿与所述第二抓取位姿相同或不同;基于所述第二抓取位姿对所述第二目标物体进行抓取;在抓取所述第二目标物体失败的情况下,所述第二目标物体为抓取失败物体,将所述第三物体位姿作为所述第二物体位姿写入所述失败记录队列。
根据本发明的实施例,所述方法还包括:在抓取所述第一目标物体失败的情况下,所述第一目标物体为抓取失败物体,将所述第一物体位姿作为所述第二物体位姿写入所述失败记录队列。
根据本发明的实施例,所述方法还包括:将所述失败记录队列的最大记录数量设置为小于或等于N-1;在将所述第一物体位姿作为所述第二物体位姿写入所述失败记录队列之前,还包括:若M等于N-1,则将所述M个第二物体位姿中最早记录的第二物体位姿从所述失败记录队列中删除。
根据本发明的实施例,所述方法还包括确定出所述第一目标物体,具体包括:从所述N个待抓取物体中确定出S个待定目标物体,其中,S为大于或等于1的整数,S小于或等于N;确定S个待定目标物体的抓取优先级;将所述S个待定目标物体中优先级最高的物体作为所述第一目标物体。
根据本发明的实施例,所述方法还包括:基于所述抓取优先级的排序,将所述S个待定目标物体中每个物体的物体位姿写入优先级队列,其中,所述优先级队列用于确定所述S个待定目标物体的抓取顺序。
根据本发明的实施例,所述在计算获得的任一个所述位姿距离小于第一距离阈值的情况下,停止抓取所述第一目标物体包括:在计算获得的任一个所述位姿距离小于第二距离阈值的情况下,将所述第一物体位姿从所述优先级队列中删除,其中,所述第二距离阈值小于所述第一距离阈值。
根据本发明的实施例,所述在计算获得的任一个所述位姿距离小于第一距离阈值的情况下,停止抓取所述第一目标物体还包括:在计算获得的任一个所述位姿距离大于或等于第二距离阈值,且小于所述第一距离阈值的情况下,降低所述第一物体位姿在所述优先级队列中的优先级顺序。
本发明实施例的另一方面提供了一种物体抓取装置,包括:位姿获取模块,用于获取第一目标物体的第一物体位姿,其中,所述第一目标物体包括从N个待抓取物体中确定出的物体;位姿距离模块,用于计算所述第一物体位姿与M个第二物体位姿中至少一个第二物体位姿之间的位姿距离,其中,所述M个第二物体位姿包括所述N个待抓取物体中M个抓取失败物体的物体位姿,M或N为大于或等于1的整数,M小于或等于N;物体抓取模块,用于在计算获得的任一个所述位姿距离小于第一距离阈值的情况下,停止抓取所述第一目标物体。
本发明实施例的另一方面提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得一个或多个处理器执行如上所述的方法。
本发明实施例的另一方面还提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行如上所述的方法。
本发明的实施例与相关技术中机械臂抓取物体失败后,依然不断的重复尝试抓取的方式相比,可以首先获取第一目标物体的第一物体位姿,然后将M个抓取失败物体的物体位姿作为参照,在第一物体位姿与M个第二物体位姿中至少一个第二物体位姿之间的位姿距离小于第一距离阈值的情况下,可以确定第一目标物体可能会抓取失败,从而停止抓取,以避免重复尝试而导致的时间和资源的耗费,提高了整体抓取效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过以下参照附图对本发明实施例的描述,本发明的上述内容以及其他目的、特征和优点将更为清楚,在附图中:
图1示意性示出了根据本发明实施例的物体抓取方法的流程图;
图2示意性示出了根据本发明实施例的将第三物体位姿写入失败记录队列的流程图;
图3示意性示出了根据本发明实施例的将第一物体位姿写入失败记录队列的流程图;
图4示意性示出了根据本发明实施例的确定出第一目标物体的流程图;
图5示意性示出了根据本发明实施例的优先级队列与失败记录队列的示意图;
图6示意性示出了根据本发明的另一实施例的物体抓取方法的流程图;
图7示意性示出了根据本发明实施例的物体抓取装置的结构框图;
图8示出了根据本发明实施例的计算设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
图1示意性示出了根据本发明实施例的物体抓取方法的流程图。
如图1所示,该实施例的物体抓取方法包括操作S110~操作S150。
在操作S110,获取第一目标物体的第一物体位姿,其中,第一目标物体包括从N个待抓取物体中确定出的物体。
例如首先拍照或激光雷达扫描的方式获得N个待抓取物体的点云数据。接着,采用目标检测算法(如分类算法或模板匹配算法)对点云数据进行处理确定出第一目标物体。其中,可以从点云数据中获得第一物体位姿。
在操作S120,计算第一物体位姿与M个第二物体位姿中至少一个第二物体位姿之间的位姿距离,其中,M个第二物体位姿包括N个待抓取物体中M个抓取失败物体的物体位姿,M或N为大于或等于1的整数,M小于或等于N。
例如物体位姿可以用旋转平移矩阵[x,y,z,α,β,γ]表示,其中,x,y,z代表了三个自由度的位移,α,β,γ代表了三个自由度的空间旋转。位姿距离可以是计算表示第一物体位姿的矩阵,与通过任一个第二物体位姿的矩阵之间的欧式距离。第一物体位姿可以包括第一物体位置和第一物体姿态,用于表征物体所在位置及朝向。
抓取失败物体例如是指历史上对该些物体进行了抓取,但是没有抓取成功,仍然在N个待抓取物体之中。抓取失败可以指夹具对某个待抓取物体进行了接触,并施加了外力,执行了正常的抓取操作,但是该物体没有产生位移或旋转,或仅产生了较小的位移或旋转,没有离开当前位置。抓取失败还可以指没有将某待抓取物体从待抓取位置抓取到目标位置。
在操作S130,判断计算获得的任一个位姿距离是否小于第一距离阈值。若是,则执行操作S140。若否,则执行操作S150。
在操作S140,在计算获得的任一个位姿距离小于第一距离阈值的情况下,停止抓取第一目标物体。
第一距离阈值D1可用于表征物体的第一移动幅度。针对不同的物体类型,可以定义不同的第一距离阈值D1。例如对于体积小的物体,可能移动幅度较小时也可以尝试抓取。对于体积大的物体,可能在产生较大的移动幅度后才可以尝试抓取。
在一些实施例中,可以预设不同类型的物体一一对应不同的第一距离阈值D1。例如在获取第一目标物体时,可以确定出第一目标物体的类型,然后基于类型获得对应的第一距离阈值D1,最终将每个位姿距离与该第一距离阈值D1进行对比。物体类型可以是按照体积、长度、高度等进行分类,也可以是具体的物体名字、种类、型号。需要说明的是,本发明中所称的待抓取物体可以是规则物体,即其形状能用公式表达的物体,如矩形、圆形等。也可是不规则物体。
相关技术中,例如机械臂通过吸盘吸取物体时,若物体被吸取区域的表面情况不佳导致吸盘无法抽真空,则可能导致吸取失败。再比如机械臂通过夹具夹取物体时,例如夹取重的金属部件,如汽车曲轴时,由于曲轴互相堆叠,部分曲轴可能卡得比较紧,虽然能成功夹住,但抓不起来。从视觉计算结果来看,上述抓取失败物体的抓取优先级比较高(例如都是先抓高处物体再抓低处物体),所以每次都优先抓取这些物体。从运动的角度来讲,抓取规划是成功的,但实际抓取却是失败。当出现上述情况时,机器人总是反复去抓取同一物体,导致整体的抓取效率下降,耗费了时间和抓取资源。
与相关技术中机械臂抓取物体失败后,依然不断的重复尝试抓取的方式相比,可以首先获取第一目标物体的第一物体位姿,然后将M个抓取失败物体的物体位姿作为参照,在第一物体位姿与M个第二物体位姿中至少一个第二物体位姿之间的位姿距离小于第一距离阈值的情况下,可以确定第一目标物体可能会抓取失败,从而停止抓取,以避免重复尝试而导致的时间和资源的耗费,提高了整体抓取效率。
在操作S150,在计算获得的任一个位姿距离大于或等于第一距离阈值的情况下,抓取第一目标物体。
在位姿距离大于或等于第一距离阈值D1时,可以确定第一目标物体未尝试抓取过,或者虽然抓取失败,但是移动幅度符合条件,可以再次尝试抓取。因此,通过计算第一物体位姿与每个第二物体物资之间的位姿距离,并与第一距离阈值进行对比。一方面,能够过滤掉曾经抓取失败,且物体位姿没有变化的物体。另一方面,无论是对于未抓取过,还是可以尝试重复抓取的物体,都可以执行抓取操作,不会产生遗漏。从而提高了单次抓取成功率和整体抓取效率。
根据本发明的实施例,操作S150中抓取第一目标物体包括:基于第一目标物体的第一抓取位姿抓取第一目标物体,其中,第一抓取位姿与第一物体位姿相同或不同。
物体位姿和抓取位姿例如是物体的固有属性。物体位姿可定义在任意位置,如可在物体中心也可不在物体中心,可以在物体之上也可在物体之外。在定义下来后,对于该物体而言,物体位姿就是唯一确定的。在实际应用中,物体位姿定义在何处,可以由软件(如Mech-Vision软件)设定,如拿到曲轴模型后,Mech-Vision能够在加载进来的曲轴上编辑物体位姿。
抓取位姿可以根据相机或雷达位置、机械臂的抓取方式等因素确定,抓取位姿的数量可以为一个或多个。以曲轴为例,一般曲轴前部、中部和尾部各有一个凹槽处可抓取,则抓取位姿将被定义在这三个抓取位置处。由于物体位姿可以根据实际情况设定,所以物体位姿与抓取位姿可以相同或不同。抓取位姿可以与物体位姿同时获取,也可以在其之后或之前获取。应知的,曲轴的前部和尾部可以根据实际坐标系灵活定义,中部位于前部和尾部之间。
因此,在确定抓取第一目标物体后,则控制机械臂按照第一抓取位姿抓取第一目标物体,例如第一目标物体为曲轴时,第一抓取位姿可以在中部凹槽位置,那么机械臂抓取曲轴的中部凹槽。
一种可选的实施方式是,基于第一目标物体的第一抓取位姿抓取第一目标物体包括控制吸盘在第一抓取位姿吸取第一目标物体。
对于板状物体、箱体(如集装箱)、轻型物体(如中小型快递盒)等物体,可以使用吸盘吸取。
另一种可选的实施方式是,基于第一目标物体的第一抓取位姿抓取第一目标物体包括控制夹爪在第一抓取位姿夹取第一目标物体。
对于规则或不规则物体,其中具有适于抓取的凹槽,可以使用匹配的夹爪进行夹取。
在一些实施例中,机械臂的末端可以装配有多个类型的夹具,如同时装配有吸盘和夹爪。可以通过分类算法确定物体的具体类型,然后基于类型选择适配的夹具。也可以在物体的表面进行图像识别,来确定出物体上的部分区域适于使用某种夹具。如可以对曲轴的凹槽进行目标检测,在检测到凹槽后,既可以确定适于使用夹爪。
图2示意性示出了根据本发明实施例的将第三物体位姿写入失败记录队列的流程图。其中,失败记录队列中记录有M个第二物体位姿。
如图2所示,在执行操作S110之前,例如在获取第一目标物体的第一物体位姿之前,在失败记录队列中未记录有M个第二物体位姿的情况下,可以执行操作S210~操作S230。
在操作S210,获取第二目标物体的第三物体位姿,以及第二抓取位姿,其中,第三物体位姿与第二抓取位姿相同或不同。
在操作S220,基于第二抓取位姿对第二目标物体进行抓取。
在操作S230,在抓取第二目标物体失败的情况下,第二目标物体为抓取失败物体,将第三物体位姿作为第二物体位姿写入失败记录队列。
这里的队列指的是一种数据结构,一种特殊的线性表。失败记录队列用于保存抓取失败物体的物体位姿。例如,在失败记录队列中没有记载数据时,此时计算位姿距离没有意义,所以会直接获得第二目标物体的第三物体位姿和第二抓取位姿。若抓取成功,则继续直接抓取下一个目标物体。若抓取失败,则将第三物体位姿写入失败记录队列,在抓取下个目标物体时,计算位姿距离,并与第一距离阈值进行比较。
图3示意性示出了根据本发明实施例的将第一物体位姿写入失败记录队列的流程图。
在执行操作S150之后,如图3所示,还可以执行操作S310~操作S340。
在操作S310,判断第一目标物体是否抓取成功。若是,则结束本次操作。若否,则执行操作S320。
在操作S320,判断失败记录队列中当前记录的数量M是否等于N-1。若是,则执行操作S330。若否,则执行操作S340。
根据本发明的实施例,在执行操作S320之前,可以将失败记录队列的最大记录数量设置为小于或等于N-1。
再次以曲轴为例,N个待抓取曲轴装在一个物流箱内,在抓取完后,则换下一个物流箱进行曲轴抓取。若没有对失败记录队列的最大记录数量进行限制,那么在机械臂连续运行的情况下,可能其他物流箱的抓取失败曲轴的物体位姿仍然在队列里记录。实际上,在抓取当前物流箱内的曲轴时,其他物流箱内的曲轴的物体位姿是没有意义的,换言之,计算得到的位姿距离与第一距离阈值之间的比较结果没有意义。因此,可以将最大记录数量设置为小于或等于N。
在一些实施例中,可以基于N个待抓取物体的抓取完成,清空失败记录队列中的记录数据,而不设置最大记录数量。
在操作S330,若M等于N-1,则将M个第二物体位姿中最早记录的第二物体位姿从失败记录队列中删除。
以N为3举例,存在3个待抓取物体。若最大记录数量为3,3个待抓取物体皆抓取失败时,每个待抓取物体的物体位姿与失败记录队列中的物体位姿之间的位姿距离可能都会小于第一距离阈值,那么机械臂可能对任一个待抓取物体都会停止抓取,而导致抓取工作无法进行。
若最大记录数量为2,3个待抓取物体皆抓取失败时,可以有一个被挤出队列。具体而言,如果抓取三个物体A、B、C,且每次规划都能成功去抓取,但每次抓取都失败了,若最大记录个数设为2,实际的效果为:抓取失败A之后记A的物体位姿。抓取失败B之后记录有A、B的物体位姿。抓取失败C之后,A就出队列了,记录有B、C的物体位姿。此时A就能够尝试抓取了。从而可以通过机械臂不断地给物体施加外力,通过改变物体的位置或姿态来提高抓取成功率。
在操作S340,在抓取第一目标物体失败的情况下,第一目标物体为抓取失败物体,将第一物体位姿作为第二物体位姿写入失败记录队列。
根据本发明的实施例,每抓取一个物体失败时,即可以将其物体位姿写入失败记录队列,来作为后续抓取物体的参考。例如,若第一目标物体为抓取失败物体,那么下次在抓取规划之前,先计算位姿距离,并与第一距离阈值进行比较,确定是否能够抓取。避免第一目标物体没有发生移动,导致第二次抓取仍然失败的情况发生。
图4示意性示出了根据本发明实施例的确定出第一目标物体的流程图。
如图4所示,该实施例的确定出第一目标物体可以包括操作S410~操作S430。
在操作S410,从N个待抓取物体中确定出S个待定目标物体,其中,S为大于或等于1的整数,S小于或等于N。
在操作S420,确定S个待定目标物体的抓取优先级。
在操作S430,将S个待定目标物体中优先级最高的物体作为第一目标物体。
例如在抓取一个物流箱内的N个曲轴时,曲轴之间层叠摆放。对N个曲轴进行拍照,获取的是最上层的若干个曲轴的点云数据。首先对最上层的若干个曲轴进行目标检测,并将其作为S个待定目标物体,S小于或等于最上层的曲轴数量。然后,进一步进行计算,确定其中一个物体为第一目标物体。例如可以将抓取成功率最高的物体置为优先级最高的第一目标物体,并可以按照抓取成功率大小进行优先级排列(仅为示例)。
根据本发明的实施例,基于抓取优先级的排序,将S个待定目标物体中每个物体的物体位姿写入优先级队列,其中,优先级队列用于确定S个待定目标物体的抓取顺序。
一种可选的方式是,将S个待定目标物体中每个物体的物体位姿与抓取位姿对应地写入优先级队列。物体位姿用于确定物体,抓取位姿用于抓取物体。在抓取失败时,将物体位姿写入失败记录队列。优先级队列中各个物体位姿的优先级顺序即为抓取顺序。可以控制机械臂基于抓取顺序,按照物体位姿对应的抓取位姿进行抓取。
图5示意性示出了根据本发明实施例的优先级队列与失败记录队列的示意图。
如图5所示,优先级队列中可以包括第一物体位姿,以及S-1个待定目标物体位姿。失败记录队列中包括第二物体位姿1~M。机械臂按照图5中的优先级排序执行抓取。由于第一物体位姿的优先级最高,所以首先抓取第一目标物体。在进行抓取规划之前,可以先将第一物体位姿与失败记录队列中的M个第二物体位姿一一进行对比。下面结合图6进一步说明。
图6示意性示出了根据本发明的另一实施例的物体抓取方法的流程图。
如图6所示,该实施例的物体抓取方法可以包括操作S110和操作S150,还可以包括操作S610~操作S660。
在操作S110,获取第一目标物体的第一物体位姿。
在操作S610,计算第一物体位姿与第i个物体位姿之间的位姿距离。其中,i初始值为1,i小于或等于M。
在操作S620,判断第一物体位姿与第i个物体位姿之间的位姿距离是否小于第二距离阈值。若是,则执行操作S630。若否,则执行操作S640。其中,第二距离阈值D2小于第一距离阈值D1。
第二距离阈值D2可用于表征物体的第二移动幅度。针对不同的物体类型,可以定义不同的第二距离阈值D2。在一些实施例中,可以预设不同类型的物体一一对应不同的第二距离阈值D2。例如在获取第二目标物体时,可以确定出第二目标物体的类型,然后基于类型获得对应的第二距离阈值D2,最终将每个位姿距离与该第二距离阈值D2进行对比。
在操作S630,在计算获得的任一个位姿距离小于第二距离阈值的情况下,将第一物体位姿从优先级队列中删除。
参照图5,将第一物体位姿从优先级队列中删除,即待定目标物体位姿1的优先级变为最高,且优先级队列中还记录有S-1个物体位姿。由于每次抓取规划之前,可能会确定出S个待定目标物体,并依次进行抓取。第二距离阈值D2的作用在于确定第一目标物体是否有尝试抓取的可行性。若第一目标物体的移动幅度小于第二移动幅度,可以认为抓取成功率很低,不应当分配抓取优先级,放弃在该次抓取。
在操作S640,判断第一物体位姿与第i个物体位姿之间的位姿距离是否小于第一距离阈值D1。若是,则执行操作S650。若否,则执行操作S660。
在操作S650,在计算获得的任一个位姿距离大于或等于第二距离阈值,且小于第一距离阈值的情况下,降低第一物体位姿在优先级队列中的优先级顺序。
在位姿距离大于或等于第二距离阈值,且小于第一距离阈值的情况下,认为第一物体位姿可能曾经抓取失败过,但是有一定的移动幅度,此时第一目标物体可能会受到其他物体的影响,如压在第一目标物体之上。在抓取了其他物体后,再次尝试抓取第一目标物体,则会有较大的抓取成功率。参照图5,可以将第一物体位姿插入到待定目标物体位姿1~S-1中任两个之间,例如可以将第一物体位姿插入到待定目标物体位姿1与待定目标物体位姿2之间,即下调了一个优先级顺序。
将第一物体位姿降低多少个优先级,可根据实际运行情况进行确定。以曲轴为例,可以观察大约抓取多少个曲轴之后,能够使得物流箱中的曲轴有所松动,则降级顺序设为这个数值较为合适。因为,能排在前面的曲轴一般都为较易抓取的曲轴,之所以降低其抓取优先级是因为其卡得太紧实际抓不起来。但当该曲轴有所松动(即物体位姿发送改变)之后,还是可以首先抓该曲轴。
在一些实施例中,参照图5,若待定目标物体位姿1~S-1由于抓取成功或抓取失败的原因,皆已经从优先级队列中删除。即使将第一物体位姿的优先级顺序降低到待定目标物体位姿S-1之后,在优先级队列中仅有第一物体位姿的情况下,与第i个第二物体位姿的位姿距离依然大于或等于第二距离阈值,且小于第一距离阈值,可以设置若无法降低第一物体位姿的优先级,那么则将其删除。
在操作S660,判断i是否小于M。若是,则令i=i+1,并执行操作S610。若否,则执行操作S150。
参照图5,将第一物体位姿与第二物体位姿1~M中每个物体位姿进行比较,获得位姿距离,来确定第一物体位姿是否可以抓取。在确定可以抓取之后,再规划抓取的位姿、路径、角度、选取夹具等因素。例如,先获得第一物体位姿,在确定可以抓取之后,再获得第一抓取位姿,并确定抓取路径、角度、夹具等,可以节省计算资源。
在操作S150,抓取第一目标物体。
根据本发明的实施例,停止抓取第一目标物体可以分为在优先级队列中删除或者在优先级队列中降低优先级顺序两种实行措施。可以灵活处理有些场景中曲轴卡得很死,无论如何都不会松动,此时只要尝试去抓取但未抓起来就再也不尝试的情况。或者另一些场景中,随着曲轴的抓取,未被抓起的曲轴可能受抓取的影响存在松动的情况,因此对于尝试但未成功抓起的曲轴仅将其降低优先级,当抓取进行到一定程度后,可重新再尝试抓取。从而能够适配于抓取过程中的复杂多变的工况,提高整体抓取效率。
基于上述物体抓取方法,本发明还提供了一种物体抓取装置。以下将结合图7对该装置进行详细描述。
图7示意性示出了根据本发明实施例的物体抓取装置700的结构框图。
如图7所示,该实施例的物体抓取装置700包括位姿获取模块710、位姿距离模块720和物体抓取模块730。
位姿获取模块710例如可以执行操作S110,用于获取第一目标物体的第一物体位姿,其中,第一目标物体包括从N个待抓取物体中确定出的物体。
位姿距离模块720例如可以执行操作S120,用于计算第一物体位姿与M个第二物体位姿中至少一个第二物体位姿之间的位姿距离,其中,M个第二物体位姿包括N个待抓取物体中M个抓取失败物体的物体位姿,M或N为大于或等于1的整数,M小于或等于N。
物体抓取模块730例如可以执行操作S140,用于在计算获得的任一个位姿距离小于第一距离阈值的情况下,停止抓取第一目标物体。
物体抓取模块730还可以执行操作S150,用于在计算获得的任一个位姿距离大于或等于第一距离阈值的情况下,抓取第一目标物体。其中,抓取第一目标物体包括:基于第一目标物体的第一抓取位姿抓取第一目标物体,其中,第一抓取位姿与第一物体位姿相同或不同。
物体抓取模块730还可以用于控制吸盘在第一抓取位姿吸取第一目标物体。或控制夹爪在第一抓取位姿夹取第一目标物体。
物体抓取装置700还可以包括失败记录队列模块,其中记录有M个第二物体位姿,在获取第一目标物体的第一物体位姿之前,在失败记录队列中未记录有M个第二物体位姿的情况下,失败记录队列模块用于:获取第二目标物体的第三物体位姿,以及第二抓取位姿,其中,第三物体位姿与第二抓取位姿相同或不同。基于第二抓取位姿对第二目标物体进行抓取。在抓取第二目标物体失败的情况下,第二目标物体为抓取失败物体,将第三物体位姿作为第二物体位姿写入失败记录队列。
物体抓取装置700还可以包括第一写入模块,用于在抓取第一目标物体失败的情况下,第一目标物体为抓取失败物体,将第一物体位姿作为第二物体位姿写入失败记录队列。还用于将失败记录队列的最大记录数量设置为小于或等于N-1。在将第一物体位姿作为第二物体位姿写入失败记录队列之前,还包括:若M等于N-1,则将M个第二物体位姿中最早记录的第二物体位姿从失败记录队列中删除。
物体抓取装置700还可以包括目标确定模块,用于从N个待抓取物体中确定出S个待定目标物体,其中,S为大于或等于1的整数,S小于或等于N。确定S个待定目标物体的抓取优先级。将S个待定目标物体中优先级最高的物体作为第一目标物体。
物体抓取装置700还可以包括第二写入模块,用于基于抓取优先级的排序,将S个待定目标物体中每个物体的物体位姿写入优先级队列,其中,优先级队列用于确定S个待定目标物体的抓取顺序。还用于在计算获得的任一个位姿距离小于第二距离阈值的情况下,将第一物体位姿从优先级队列中删除,其中,第二距离阈值小于第一距离阈值。还用于在计算获得的任一个位姿距离大于或等于第二距离阈值,且小于第一距离阈值的情况下,降低第一物体位姿在优先级队列中的优先级顺序。
本发明的实施例的物体抓取装置700与相关技术中机械臂抓取物体失败后,依然不断的重复尝试抓取的方式相比,可以首先获取第一目标物体的第一物体位姿,然后将M个抓取失败物体的物体位姿作为参照,在第一物体位姿与M个第二物体位姿中至少一个第二物体位姿之间的位姿距离小于第一距离阈值的情况下,可以确定第一目标物体可能会抓取失败,从而停止抓取,以避免重复尝试而导致的时间和资源的耗费,提高了整体抓取效率。
图8示出了根据本发明实施例的计算设备的结构示意图,本发明具体实施例并不对计算设备的具体实现做限定。
如图8所示,该计算设备可以包括:处理器(processor)802、通信接口(Communications Interface)804、存储器(memory)806、以及通信总线808。
其中:
处理器802、通信接口804、以及存储器806通过通信总线808完成相互间的通信。
通信接口804,用于与其它设备比如客户端或其它服务器等的网元通信。
处理器802,用于执行程序810,具体可以执行上述物体抓取方法实施例中的相关步骤。
具体地,程序810可以包括程序代码,该程序代码包括计算机操作指令。
处理器802可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。计算设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器806,用于存放程序810。存储器806可能包含高速RAM存储器,也可能还包括非易失性存储器(nonvolatile memory),例如至少一个磁盘存储器。
程序810具体可以用于使得处理器802执行上述任意方法实施例中的物体抓取方法。程序810中各步骤的具体实现可以参见上述物体抓取实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述
本发明还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本发明实施例的方法。
在此提供的算法或显示不与任何特定计算机、虚拟系统或者其它设备固有相关。
各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明实施例也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本发明并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明实施例的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该发明的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。
因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。上述实施例中的步骤,除有特殊说明外,不应理解为对执行顺序的限定。

Claims (14)

1.一种物体抓取方法,包括:
获取第一目标物体的第一物体位姿,其中,所述第一目标物体包括从N个待抓取物体中确定出的物体;
计算所述第一物体位姿与M个第二物体位姿中至少一个第二物体位姿之间的位姿距离,其中,所述M个第二物体位姿包括所述N个待抓取物体中M个抓取失败物体的物体位姿,M或N为大于或等于1的整数,M小于或等于N;
在计算获得的任一个所述位姿距离小于第一距离阈值的情况下,停止抓取所述第一目标物体。
2.根据权利要求1所述的方法,其中,所述方法还包括:
在计算获得的任一个所述位姿距离大于或等于第一距离阈值的情况下,抓取所述第一目标物体。
3.根据权利要求2所述的方法,其中,所述抓取所述第一目标物体包括:
基于所述第一目标物体的第一抓取位姿抓取所述第一目标物体,其中,所述第一抓取位姿与所述第一物体位姿相同或不同。
4.根据权利要求3所述的方法,其中,所述基于所述第一目标物体的第一抓取位姿,抓取所述第一目标物体包括:
控制吸盘在所述第一抓取位姿吸取所述第一目标物体;或
控制夹爪在所述第一抓取位姿夹取所述第一目标物体。
5.根据权利要求2所述的方法,其中,失败记录队列中记录有所述M个第二物体位姿,在所述获取第一目标物体的第一物体位姿之前,在所述失败记录队列中未记录有所述M个第二物体位姿的情况下,所述方法还包括:
获取第二目标物体的第三物体位姿,以及第二抓取位姿,其中,所述第三物体位姿与所述第二抓取位姿相同或不同;
基于所述第二抓取位姿对所述第二目标物体进行抓取;
在抓取所述第二目标物体失败的情况下,所述第二目标物体为抓取失败物体,将所述第三物体位姿作为所述第二物体位姿写入所述失败记录队列。
6.根据权利要求5所述的方法,其中,所述方法还包括:
在抓取所述第一目标物体失败的情况下,所述第一目标物体为抓取失败物体,将所述第一物体位姿作为所述第二物体位姿写入所述失败记录队列。
7.根据权利要求6所述的方法,其中,所述方法还包括:
将所述失败记录队列的最大记录数量设置为小于或等于N-1;
在将所述第一物体位姿作为所述第二物体位姿写入所述失败记录队列之前,还包括:
若M等于N-1,则将所述M个第二物体位姿中最早记录的第二物体位姿从所述失败记录队列中删除。
8.根据权利要求1所述的方法,其中,所述方法还包括确定出所述第一目标物体,具体包括:
从所述N个待抓取物体中确定出S个待定目标物体,其中,S为大于或等于1的整数,S小于或等于N;
确定S个待定目标物体的抓取优先级;
将所述S个待定目标物体中优先级最高的物体作为所述第一目标物体。
9.根据权利要求8所述的方法,其中,所述方法还包括:
基于所述抓取优先级的排序,将所述S个待定目标物体中每个物体的物体位姿写入优先级队列,其中,所述优先级队列用于确定所述S个待定目标物体的抓取顺序。
10.根据权利要求9所述的方法,其中,所述在计算获得的任一个所述位姿距离小于第一距离阈值的情况下,停止抓取所述第一目标物体包括:
在计算获得的任一个所述位姿距离小于第二距离阈值的情况下,将所述第一物体位姿从所述优先级队列中删除,其中,所述第二距离阈值小于所述第一距离阈值。
11.根据权利要求10所述的方法,其中,所述在计算获得的任一个所述位姿距离小于第一距离阈值的情况下,停止抓取所述第一目标物体还包括:
在计算获得的任一个所述位姿距离大于或等于第二距离阈值,且小于所述第一距离阈值的情况下,降低所述第一物体位姿在所述优先级队列中的优先级顺序。
12.一种物体抓取装置,包括:
位姿获取模块,用于获取第一目标物体的第一物体位姿,其中,所述第一目标物体包括从N个待抓取物体中确定出的物体;
位姿距离模块,用于计算所述第一物体位姿与M个第二物体位姿中至少一个第二物体位姿之间的位姿距离,其中,所述M个第二物体位姿包括所述N个待抓取物体中M个抓取失败物体的物体位姿,M或N为大于或等于1的整数,M小于或等于N;
物体抓取模块,用于在计算获得的任一个所述位姿距离小于第一距离阈值的情况下,停止抓取所述第一目标物体。
13.一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行根据权利要求1~11中任一项所述的方法。
14.一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行根据权利要求1~11中任一项所述的方法。
CN202111483974.6A 2021-12-07 2021-12-07 物体抓取方法、装置、电子设备和存储介质 Pending CN115246124A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111483974.6A CN115246124A (zh) 2021-12-07 2021-12-07 物体抓取方法、装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111483974.6A CN115246124A (zh) 2021-12-07 2021-12-07 物体抓取方法、装置、电子设备和存储介质

Publications (1)

Publication Number Publication Date
CN115246124A true CN115246124A (zh) 2022-10-28

Family

ID=83699200

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111483974.6A Pending CN115246124A (zh) 2021-12-07 2021-12-07 物体抓取方法、装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN115246124A (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130006423A1 (en) * 2011-06-28 2013-01-03 Canon Kabushiki Kaisha Target object gripping apparatus, method for controlling the same and storage medium
US20130151007A1 (en) * 2010-06-24 2013-06-13 Zenrobotics Oy Method for the selection of physical objects in a robot system
CN109955244A (zh) * 2017-12-26 2019-07-02 深圳市优必选科技有限公司 一种基于视觉伺服的抓取控制方法、装置和机器人
CN111738261A (zh) * 2020-06-30 2020-10-02 张辉 基于位姿估计和校正的单图像机器人无序目标抓取方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130151007A1 (en) * 2010-06-24 2013-06-13 Zenrobotics Oy Method for the selection of physical objects in a robot system
US20130006423A1 (en) * 2011-06-28 2013-01-03 Canon Kabushiki Kaisha Target object gripping apparatus, method for controlling the same and storage medium
CN109955244A (zh) * 2017-12-26 2019-07-02 深圳市优必选科技有限公司 一种基于视觉伺服的抓取控制方法、装置和机器人
CN111738261A (zh) * 2020-06-30 2020-10-02 张辉 基于位姿估计和校正的单图像机器人无序目标抓取方法

Similar Documents

Publication Publication Date Title
CN112109086B (zh) 面向工业堆叠零件的抓取方法、终端设备及可读存储介质
CN113351522B (zh) 物品分拣方法、装置及系统
CN112464410B (zh) 一种工件抓取顺序的确定方法、装置、计算机设备及介质
CN112025701A (zh) 抓取物体的方法、装置、计算设备和存储介质
CN112847375B (zh) 一种工件抓取方法、装置、计算机设备及存储介质
CN113538576B (zh) 基于双臂机器人的抓取方法、装置及双臂机器人
CN112828892B (zh) 一种工件抓取方法、装置、计算机设备及存储介质
CN112802107A (zh) 基于机器人的夹具组的控制方法及装置
CN117325170A (zh) 基于深度视觉导引机械臂抓取硬盘架的方法
CN113858188A (zh) 工业机器人的抓取方法和设备、计算机存储介质以及工业机器人
CN111191650B (zh) 基于rgb-d图像视觉显著性的物品定位方法与系统
CN115100416B (zh) 一种不规则钢板位姿识别方法及相关设备
CN112192577A (zh) 一种应用于机器人抓取场景的一拍多抓方法
CN112936257A (zh) 一种工件抓取方法、装置、计算机设备及存储介质
CN117863166A (zh) 工件的放置定位系统和机器人
WO2025000778A1 (zh) 一种试管的抓取控制方法及装置
CN113674348A (zh) 物体抓取方法、装置和系统
CN119897684A (zh) 内存装配方法、系统、电子设备、存储介质以及产品
JP6041710B2 (ja) 画像認識方法
CN115246124A (zh) 物体抓取方法、装置、电子设备和存储介质
CN114310892A (zh) 基于点云数据碰撞检测的物体抓取方法、装置和设备
CN116237923B (zh) 基于抓取点位姿的物体抓取方法、装置、设备和介质
CN114373132B (zh) 用于单分区吸盘的物体抓取方法、装置、设备和介质
JPH0797059A (ja) 物体取出装置
CN117876471A (zh) 工件的放置方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Country or region after: China

Address after: 071700 Hebei Province, Baoding City, Xiongan New Area, Qibuzhou, Yining Avenue, No. 164, North District of Chuangzhi Park, Unit 3, Room 210 (Self-declared) (Enterprise with one license and multiple addresses)

Applicant after: Mech-Mind Robotics Technologies Co.,Ltd.

Address before: Beijing City Haidian District Shangdi Information Industry Base Chuangye Road No. 6 1st floor 1100

Applicant before: MECH-MIND (BEIJING) ROBOTICS TECHNOLOGIES CO.,LTD.

Country or region before: China

CB02 Change of applicant information