CN111015652B - 机械手控制方法、控制装置、终端设备及可读存储介质 - Google Patents
机械手控制方法、控制装置、终端设备及可读存储介质 Download PDFInfo
- Publication number
- CN111015652B CN111015652B CN201911269362.XA CN201911269362A CN111015652B CN 111015652 B CN111015652 B CN 111015652B CN 201911269362 A CN201911269362 A CN 201911269362A CN 111015652 B CN111015652 B CN 111015652B
- Authority
- CN
- China
- Prior art keywords
- grabbed
- point cloud
- grabbing
- manipulator
- cloud data
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 238000003860 storage Methods 0.000 title claims abstract description 14
- 230000005484 gravity Effects 0.000 claims abstract description 51
- 238000003062 neural network model Methods 0.000 claims abstract description 38
- 238000004590 computer program Methods 0.000 claims description 21
- 238000004364 calculation method Methods 0.000 claims description 14
- 238000009826 distribution Methods 0.000 claims description 9
- 230000036544 posture Effects 0.000 description 33
- 230000006870 function Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 238000002474 experimental method Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 239000002689 soil Substances 0.000 description 4
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/08—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/08—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
- B25J13/088—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/161—Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Human Computer Interaction (AREA)
- Artificial Intelligence (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Manipulator (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请提供了一种机械手控制方法、控制装置、终端设备及可读存储介质。该方法包括:获取待抓取对象的重心位置信息,并获取抓取场景的点云数据,其中,该抓取场景为包含上述待抓取对象的场景;基于上述抓取场景的点云数据,识别出上述点云数据中属于上述待抓取对象边缘的各个点云点,并根据属于上述边缘的各个点云点,确定上述待抓取对象的立体尺寸信息;将上述立体尺寸信息以及上述重心位置信息输入至训练好的第一神经网络模型,得到该第一神经网络模型输出的机械手的抓取姿态,其中,该抓取姿态包括:在抓取上述待抓取对象时,上述机械手在上述待抓取对象上的位置。本申请能够在一定程度上实现抓取姿态的快速确定。
Description
技术领域
本申请属于机器人技术领域,尤其涉及一种机械手控制方法、机械手控制装置、终端设备及计算机可读存储介质。
背景技术
目前,许多应用领域中都有用到机械手抓取物体,比如,物流、汽车生产、玻璃搬运以及机场行李转移等领域。
在机械手执行抓取操作之前,需要首先确定抓取姿态(该抓取姿态可以包括:在抓取所述待抓取对象时,所述机械手在所述待抓取对象上的位置)。目前,抓取姿态的确定方式通常为:机械手以预设的初始抓取姿态来执行抓取操作,若不能抓到物体,则不断修正当前抓取姿态,直至能够抓到物体为止。
显然,传统的抓取姿态确定方式比较耗时,不能实现快速确定抓取姿态。
发明内容
有鉴于此,本申请实施例提供了一种机械手控制方法、机械手控制装置、终端设备及计算机可读存储介质,能够在一定程度上实现抓取姿态的快速确定。
本申请实施例的第一方面提供了一种机械手控制方法,包括:
获取待抓取对象的重心位置信息,并获取抓取场景的点云数据,其中,该抓取场景为包含上述待抓取对象的场景;
基于上述抓取场景的点云数据,识别出上述点云数据中属于上述待抓取对象边缘的各个点云点,并根据属于上述边缘的各个点云点,确定上述待抓取对象的立体尺寸信息;
将上述立体尺寸信息以及上述重心位置信息输入至训练好的第一神经网络模型,得到该第一神经网络模型输出的机械手的抓取姿态,其中,该抓取姿态包括:在抓取上述待抓取对象时,上述机械手在上述待抓取对象上的位置。
本申请实施例的第二方面提供了一种机械手控制装置,包括:
信息获取模块,用于获取待抓取对象的重心位置信息,并获取抓取场景的点云数据,其中,该抓取场景为包含上述待抓取对象的场景;
尺寸确定模块,用于基于上述抓取场景的点云数据,识别出上述点云数据中属于上述待抓取对象边缘的各个点云点,并根据属于上述边缘的各个点云点,确定上述待抓取对象的立体尺寸信息;
姿态确定模块,用于将上述立体尺寸信息以及上述重心位置信息输入至训练好的第一神经网络模型,得到该第一神经网络模型输出的机械手的抓取姿态,其中,该抓取姿态包括:在抓取上述待抓取对象时,上述机械手在上述待抓取对象上的位置。
本申请实施例的第三方面提供了一种终端设备,包括存储器、处理器以及存储在上述存储器中并可在上述处理器上运行的计算机程序,上述处理器执行上述计算机程序时实现如第一方面所述方法的步骤。
本申请实施例的第四方面提供了一种计算机可读存储介质,上述计算机可读存储介质存储有计算机程序,上述计算机程序被处理器执行时实现如第一方面所述方法的步骤。
本申请实施例的第五方面提供了一种计算机程序产品,上述计算机程序产品包括计算机程序,上述计算机程序被一个或多个处理器执行时实现如第一方面所述方法的步骤。
由上可见,本申请提供了一种机械手控制方法,首先,获取待抓取对象的重心位置信息以及包含有待抓取对象的抓取场景的点云数据;其次,基于该点云数据,识别待抓取对象的边缘,从而确定该待抓取对象的立体尺寸信息(比如,长宽高信息);最后,将获取的重心位置信息和立体尺寸信息输入至训练好的第一神经网络模型中,得到该第一神经网络模型输出的机械手的抓取姿态。因此,当采用本申请所述的机械手控制方法时,只要机械手获取到待抓取对象的点云数据以及该待抓取对象的重心位置信息,就能够直接确定出对该待抓取对象的抓取姿态,避免了传统的抓取姿态确定方法中需对抓取姿态不断调整的技术问题,因此,能够更快速的确定出抓取姿态。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例。
图1是本申请实施例一提供的一种机械手控制方法的流程示意图;
图2是本申请实施例一提供的待抓取对象的示意图;
图3是本申请实施例二提供的另一种机械手控制方法的流程示意图;
图4是本申请实施例三提供的一种机械手控制装置的结构示意图;
图5是本申请实施例四提供的一种终端设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
本申请实施例提供的方法可以适用于终端设备,示例性地,该终端设备包括但不限于:机器人、笔记本、桌上型计算机、云端服务器等。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
为了说明本申请上述的技术方案,下面通过具体实施例来进行说明。
实施例一
下面对本申请实施例一提供的机械手控制方法进行描述,请参阅附图1,该控制方法包括:
在步骤S101中,获取待抓取对象的重心位置信息,并获取抓取场景的点云数据,其中,所述抓取场景为包含所述待抓取对象的场景;
在本申请实施例一中,需要首先获取待抓取对象的重心位置信息以及上述抓取场景的点云数据。
其中,待抓取对象的重心位置信息可以事先通过人工试验确定,但是,对于质量分布比较均匀的物体,也可以直接确定其重心位置信息,比如,对于密度分布均匀的长方体,其重心必然在几何中心。
此外,在日常生活中,待抓取对象通常为柱状体(比如,长方体或者圆柱体),且通常待抓取对象可以看成是由M层子柱状体组成,其中,每层子柱状体的交界面均相互平行且平行于所述待抓取对象的底面,并且每层子柱状体的重心均位于同一条垂直于所述待抓取对象底面的直线上。比如,如图2(a)所示,为装了一部分水的杯子201a,则该杯子可以看成由2层子柱状体组成,即分别为未装有水的子柱状体202a以及装有水的子柱状体203a,并且,通常杯子的密度是均匀分布的,因此,在杯子和水的密度分布均匀的情况下,子柱状体202a和子柱状体203a的重心均位于该杯子的中轴线204a上。再比如,如图2(b)所示,为装有土和石头的箱子201b,其中,土位于最下层,石头位于中间层,则该箱子201b可以看成由三层子柱状体组成,其中,最上层为子柱状体202b,中间装有石头的部分为子柱状体203b,下面装有土的部分为子柱状体204b,并在土以及石头分布均匀的前提下,三个子柱状体的重心位于该箱子201b的中轴线205b上。
在本申请实施例中,若待抓取对象为柱状体,且可以看成由M层子柱状体组成(其中,每层子柱状体的交界面均相互平行且平行于所述待抓取对象的底面,并且每层子柱状体的重心均位于同一条垂直于所述待抓取对象底面的直线上)时,则可以通过如下方式来确定待抓取对象的重心位置信息:
根据重心位置计算公式,确定待抓取对象的重心位置信息,其中,该重心位置计算公式为:
其中,hg为上述待抓取对象的重心与上述待抓取对象一底面的距离,h1为第1层子柱状体与该底面的距离,h2为第2层子柱状体与该底面的距离,hM为第M层子柱状体与该底面的距离,m1为第1层子柱状体的质量,m2为第2层子柱状体的质量,mM为第M层子柱状体的质量,m为上述待抓取对象的质量。
具体地,如图2(a)所示,本领域技术人员可以很容易得出,子柱状体202a的重心在该202a的几何中心(由此得出202a的重心与底面205a的距离,另外,本领域技术人员容易理解,底面可以为上底面,也可以为下底面,图2(a)仅仅以下底面为例来说明),子柱状体203a的重心在该203a的几何中心偏下的位置(该杯子201a的重量较轻时,可以直接将203a的几何中心作为203a的重心,由此确定203a的重心与底面205a的距离),此外,杯子201a、子柱状体202a和203a的质量可以根据杯子的密度、空气密度以及水的密度来计算,这属于本领域公知常识,本申请在此不再赘述。在得到上述各个参数的情况下,可以根据上述重心位置计算公式,确定该杯子201a的重心与底面205a的距离,从而得到重心位置信息。此外,图2(b)所示的例子中,重心位置信息的计算方式与图2(a)相似,在此不再赘述。
另外,在该步骤S101中,还需要获取抓取场景的点云数据。具体地,获取抓取场景的点云数据的方式可以为:
获取深度图像采集装置(比如双目相机)采集的所述抓取场景的深度图像;
将所述深度图像中的各个像素点均转换为各个点云点,得到所述抓取场景的点云数据,所述点云数据由转换得到的各个点云点组成。
此外,还可以依赖现有技术中其他点云数据的获取方法(比如,采用三维激光扫描仪的方式),此处不再赘述。
在后续步骤S102中,需要基于该抓取场景的点云数据来确定上述待抓取对象的立体尺寸信息,因此,该点云数据需要能够体现出该待抓取对象的三维信息,比如,当待抓取对象为长方体时,该点云数据中需要至少包含有待抓取对象三个面的信息(该三个面为两两相邻的三个面)。
在步骤S102中,基于上述抓取场景的点云数据,识别出该点云数据中属于所述待抓取对象的各个点云点,并根据属于该边缘的各个点云点,确定该待抓取对象的立体尺寸信息;
在本申请实施例中,可以预先训练一第二神经网络模型,该第二神经网络模型用于根据输入的点云数据,识别出待抓取对象的边缘,根据识别出的边缘,来确定该待抓取对象的立体尺寸信息(点云数据中包含有每个点云点所对应的三维坐标,因此,可以基于边缘的三维坐标,确定待抓取对象的立体尺寸信息,比如,长宽高)。
此外,识别待抓取对象的边缘也可以不通过神经网络模型。通常待抓取对象的灰度值相比于所处环境的灰度值,会存在一个跃变,因此,可以通过对比抓取场景的灰度值,计算上述待抓取对象的灰度分布梯度,然后寻找对应灰度分布梯度最大的各个点云点,将该各个点云点确定为属于上述待抓取对象的各个点云点(点云数据中包含有每个点云点所对应的灰度值,因此,可以通过对比各个点云点的灰度值,确定属于待抓取对象边缘的各个点云点)。
在步骤S103中,将上述立体尺寸信息以及上述重心位置信息输入至预先训练好的第一神经网络模型,得到该第一神经网络模型输出的机械手的抓取姿态,其中,该抓取姿态包括:在抓取上述待抓取对象时,上述机械手在上述待抓取对象上的位置;
本申请所提供的技术方案中,需要事先训练上述第一神经网络模型,该第一神经网络模型用来根据输入的重心位置信息以及立体尺寸信息,来确定抓取姿态(比如,机械手在抓取时,是抓在待抓取对象的上边缘还是下边缘),此外,在本申请实施例中,上述抓取姿态还可以包括:机械手抓取上述待抓取对象时的抓取方位。本领域技术人员应该理解,本申请所述的抓取姿态并不是仅仅只包括“抓取时,机械手的位置”,还可以包括其他信息,所包含的信息可以在训练上述第一神经网络模型之前人为确定。
下面论述一种上述第一神经网络模型的训练过程:
首先,获取多个样本数据,并获取每个样本数据分别对应的样本抓取姿态,其中,每个样本数据均包括样本重心位置信息以及样本立体尺寸信息;
其次,将上述各个样本数据均输入至第一神经网络模型,得到该第一神经网络模型输出的各个抓取姿态,其中,所输出的每个抓取姿态对应一个样本数据;
然后,基于各个样本抓取姿态以及所输出的各个抓取姿态,确定该第一神经网络模型的抓取姿态确定正确率;
最后,不断调整该第一神经网络模型的各个参数,直至该抓取姿态确定正确率达到预设值为止。
由上可见,当采用本申请实施例一所述的机械手控制方法时,只要机械手获取到待抓取对象的点云数据以及该待抓取对象的重心位置信息,就能够直接确定出对该待抓取对象的抓取姿态,避免了传统的抓取姿态确定方法中需对抓取姿态不断调整的技术问题,因此,能够更快速的确定出抓取姿态。
实施例二
下面对本申请实施例二提供的另一种机械手控制方法进行描述,请参阅附图3,该方法包括:
在步骤S301中,获取待抓取对象的重心位置信息,并获取抓取场景的点云数据,其中,所述抓取场景为包含所述待抓取对象的场景;
在步骤S302中,基于上述抓取场景的点云数据,识别出该点云数据中属于所述待抓取对象的各个点云点,并根据属于该边缘的各个点云点,确定该待抓取对象的立体尺寸信息;
在步骤S303中,将上述立体尺寸信息以及上述重心位置信息输入至预先训练好的第一神经网络模型,得到该第一神经网络模型输出的机械手的抓取姿态,其中,该抓取姿态包括:在抓取上述待抓取对象时,上述机械手在上述待抓取对象上的位置;
上述步骤S301-S303的具体执行方式与实施例一中的步骤S101-S103完全相同,具体可参加实施例一的描述,此处不再赘述。
在步骤S304中,确定上述待抓取对象的重量G以及上述机械手与该待抓取对象的滑动摩擦系数μ;
在步骤S305中,基于抓取力计算公式,确定上述机械手在抓取上述待抓取对象时的抓取力F,其中,上述抓取力计算公式为:F=G/μ;
上述步骤S304所述的重量G为上述待抓取对象的质量m和重力加速度g的乘积。
为了让机械手将待抓取对象抓起,还需有获取合适的抓取力,传统的抓取力确定方式有两种:一是预先通过人工实验,对不同类型的物体进行抓取实验,得到相应的最优抓取力,然后在抓取过程中,根据预先通过实验得到的抓取力执行抓取操作(该抓取力确定方式存在的弊端为:需要事先通过人工实验才知晓抓取力,耗时耗力);二是在已知最大抓取力的条件下,先设置抓取力为最大抓取力的一般,然后计算机械手与物体间的滑动,不断修正各个手指的抓取力,直至机械手与物体之间无相对滑动(该抓取力确定方式存在的弊端为:需要机械手不断反馈调整,不能快速确定抓取力)。
为了解决传统的抓取力确定方式的弊端,本申请提出了另一种抓取力确定方式,即根据待抓取对象的重量以及机械手与待抓取对象之间的滑动摩擦系数来确定抓取力。采用本申请所述的抓取力确定方法,避免了事先的大量人工实验,并且在获取到重量以及滑动摩擦系数的情况下,机械手能快速确定抓取力,避免了不断的反馈调整,能够快速确定抓取力。
此外,本领域技术人员应该理解,滑动摩擦系数以及待抓取对象重量的测量为现有技术,此处不再赘述。
另外,在确定了抓取姿态以及抓取力之后,还可以包括以下步骤:驱动上述机械手基于上述第一神经网络模型输出的抓取姿态以及上述抓取力对上述待抓取对象进行抓取操作。
本申请实施例二与实施例一相同,能够更快速的确定出抓取姿态,避免了传统的抓取姿态确定方法中需对抓取姿态不断调整的技术问题。此外,该实施例二相比于实施例一,还进一步给出了抓取力的确定方法,避免了事先的大量实验,并且能够更快速的确定抓取力。
实施例三
本申请实施例三提供了一种机械手控制装置。为了便于说明,仅示出与本申请相关的部分,如图4所示,该控制装置400包括:
信息获取模块401,用于获取待抓取对象的重心位置信息,并获取抓取场景的点云数据,其中,该抓取场景为包含上述待抓取对象的场景;
尺寸确定模块402,用于基于上述抓取场景的点云数据,识别出上述点云数据中属于上述待抓取对象边缘的各个点云点,并根据属于上述边缘的各个点云点,确定上述待抓取对象的立体尺寸信息;
姿态确定模块403,用于将上述立体尺寸信息以及上述重心位置信息输入至训练好的第一神经网络模型,得到该第一神经网络模型输出的机械手的抓取姿态,其中,该抓取姿态包括:在抓取上述待抓取对象时,上述机械手在上述待抓取对象上的位置。
可选地,上述机械手控制装置400还包括:
参数确定模块,用于确定上述待抓取对象的重量G以及上述机械手与上述待抓取对象之间的滑动摩擦系数μ;
抓取力确定模块,用于基于抓取力计算公式,确定上述机械手在抓取上述待抓取对象时的抓取力F,其中,上述抓取力计算公式为:F=G/μ。
可选地,上述机械手控制装置还包括:
驱动模块,用于驱动上述机械手基于上述第一神经网络模型输出的抓取姿态以及上述抓取力对上述待抓取对象进行抓取操作。
可选地,上述待抓取对象为柱状体,且上述待抓取对象由M层子柱状体组成,每层子柱状体的交界面均相互平行且平行于上述待抓取对象的底面,并且每层子柱状体的重心均位于同一条垂直于上述待抓取对象底面的直线上;
相应地,上述信息获取模块401具体通过以下步骤来获取上述待抓取对象的重心位置信息:
根据重心位置计算公式,确定上述待抓取对象的重心位置信息,其中,上述重心位置计算公式为:
其中,hg为上述待抓取对象的重心与所述待抓取对象一底面的距离,h1为第1层子柱状体与该底面的距离,h2为第2层子柱状体与该底面的距离,hM为第M层子柱状体与该底面的距离,m1为第1层子柱状体的质量,m2为第2层子柱状体的质量,mM为第M层子柱状体的质量,m为上述待抓取对象的质量。
可选地,上述尺寸确定模块402具体通过以下步骤来识别上述点云数据中属于上述待抓取对象边缘的各个点云点:
将上述点云数据输入至训练好的第二神经网络模型,以使得该第二神经网络模型识别上述点云数据中属于上述待抓取对象边缘的各个点云点。
可选地,上述尺寸确定模块402具体通过以下步骤来识别上述点云数据中属于上述待抓取对象边缘的各个点云点:
根据上述抓取场景的点云数据,计算上述抓取场景的灰度分布梯度;
将对应灰度分布梯度最大的各个点云点确定为属于上述待抓取对象边缘的各个点云点。
可选地,上述信息获取模块401包括:
深度图像获取单元,用于获取深度图像采集装置采集的上述抓取场景的深度图像;
点云数据转换单元,用于将上述深度图像中的各个像素点均转换为各个点云点,得到上述抓取场景的点云数据,上述点云数据由转换得到的各个点云点组成。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例一以及方法实施例二基于同一构思,其具体功能及带来的技术效果,具体可参见相应方法实施例部分,此处不再赘述。
实施例四
图5是本申请实施例四提供的终端设备的示意图。如图5所示,该实施例的终端设备500包括:处理器501、存储器502以及存储在上述存储器502中并可在上述处理器501上运行的计算机程序503。上述处理器501执行上述计算机程序503时实现上述各个方法实施例中的步骤。或者,上述处理器501执行上述计算机程序503时实现上述各装置实施例中各模块/单元的功能。
示例性的,上述计算机程序503可以被分割成一个或多个模块/单元,上述一个或者多个模块/单元被存储在上述存储器502中,并由上述处理器501执行,以完成本申请。上述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述上述计算机程序503在上述终端设备500中的执行过程。例如,上述计算机程序503可以被分割成信息获取模块、尺寸确定模块以及姿态确定模块,各模块具体功能如下:
获取待抓取对象的重心位置信息,并获取抓取场景的点云数据,其中,该抓取场景为包含上述待抓取对象的场景;
基于上述抓取场景的点云数据,识别出上述点云数据中属于上述待抓取对象边缘的各个点云点,并根据属于上述边缘的各个点云点,确定上述待抓取对象的立体尺寸信息;
将上述立体尺寸信息以及上述重心位置信息输入至训练好的第一神经网络模型,得到该第一神经网络模型输出的机械手的抓取姿态,其中,该抓取姿态包括:在抓取上述待抓取对象时,上述机械手在上述待抓取对象上的位置。
上述终端设备可包括,但不仅限于,处理器501、存储器502。本领域技术人员可以理解,图5仅仅是终端设备500的示例,并不构成对终端设备500的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如上述终端设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器501可以是中央处理单元(Central Processing Unit,CPU),还可以是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
上述存储器502可以是上述终端设备500的内部存储单元,例如终端设备500的硬盘或内存。上述存储器502也可以是上述终端设备500的外部存储设备,例如上述终端设备500上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)等。进一步地,上述存储器502还可以既包括上述终端设备500的内部存储单元也包括外部存储设备。上述存储器502用于存储上述计算机程序以及上述终端设备所需的其它程序和数据。上述存储器502还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将上述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,上述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述各个方法实施例中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,上述计算机程序包括计算机程序代码,上述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。上述计算机可读介质可以包括:能够携带上述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,上述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上上述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (10)
1.一种机械手控制方法,其特征在于,包括:
获取待抓取对象的重心位置信息,并获取抓取场景的点云数据,其中,所述抓取场景为包含所述待抓取对象的场景;
基于所述抓取场景的点云数据,识别出所述点云数据中属于所述待抓取对象边缘的各个点云点,并根据属于所述边缘的各个点云点,确定所述待抓取对象的立体尺寸信息;
将所述立体尺寸信息以及所述重心位置信息输入至训练好的第一神经网络模型,得到该第一神经网络模型输出的机械手的抓取姿态,其中,所述抓取姿态包括:在抓取所述待抓取对象时,所述机械手在所述待抓取对象上的位置以及机械手抓取上述待抓取对象时的抓取方位。
2.如权利要求1所述的机械手控制方法,其特征在于,所述机械手控制方法还包括:
确定所述待抓取对象的重量G以及所述机械手与所述待抓取对象之间的滑动摩擦系数μ;
基于抓取力计算公式,确定所述机械手在抓取所述待抓取对象时的抓取力F,其中,所述抓取力计算公式为:F=G/μ。
3.如权利要求2所述的机械手控制方法,其特征在于,所述机械手控制方法还包括:
驱动所述机械手基于所述第一神经网络模型输出的抓取姿态以及所述抓取力对所述待抓取对象进行抓取操作。
4.如权利要求1至3中任一项所述的机械手控制方法,其特征在于,所述待抓取对象为柱状体,且所述待抓取对象由M层子柱状体组成,每层子柱状体的交界面均相互平行且平行于所述待抓取对象的底面,并且每层子柱状体的重心均位于同一条垂直于所述待抓取对象底面的直线上;
相应地,所述获取待抓取对象的重心位置信息,包括:
根据重心位置计算公式,确定所述待抓取对象的重心位置信息,其中,所述重心位置计算公式为:
其中,hg为所述待抓取对象的重心与所述待抓取对象一底面的距离,h1为第1层子柱状体与该底面的距离,h2为第2层子柱状体与该底面的距离,hM为第M层子柱状体与该底面的距离,m1为第1层子柱状体的质量,m2为第2层子柱状体的质量,mM为第M层子柱状体的质量,m为所述待抓取对象的质量。
5.如权利要求1至3中任一项所述的机械手控制方法,其特征在于,所述基于所述抓取场景的点云数据,识别出所述点云数据中属于所述待抓取对象边缘的各个点云点,包括:
将所述点云数据输入至训练好的第二神经网络模型,以使得该第二神经网络模型识别所述点云数据中属于所述待抓取对象边缘的各个点云点。
6.如权利要求1至3中任一项所述的机械手控制方法,其特征在于,所述基于所述抓取场景的点云数据,识别出所述点云数据中属于所述待抓取对象边缘的各个点云点,包括:
根据所述抓取场景的点云数据,计算所述抓取场景的灰度分布梯度;
将对应灰度分布梯度最大的各个点云点确定为属于所述待抓取对象边缘的各个点云点。
7.如权利要求1至3中任一项所述的机械手控制方法,其特征在于,所述获取抓取场景的点云数据,包括:
获取深度图像采集装置采集的所述抓取场景的深度图像;
将所述深度图像中的各个像素点均转换为各个点云点,得到所述抓取场景的点云数据,所述点云数据由转换得到的各个点云点组成。
8.一种机械手控制装置,其特征在于,包括:
信息获取模块,用于获取待抓取对象的重心位置信息,并获取抓取场景的点云数据,其中,所述抓取场景为包含所述待抓取对象的场景;
尺寸确定模块,用于基于所述抓取场景的点云数据,识别出所述点云数据中属于所述待抓取对象边缘的各个点云点,并根据属于所述边缘的各个点云点,确定所述待抓取对象的立体尺寸信息;
姿态确定模块,用于将所述立体尺寸信息以及所述重心位置信息输入至训练好的第一神经网络模型,得到该第一神经网络模型输出的机械手的抓取姿态,其中,所述抓取姿态包括:在抓取所述待抓取对象时,所述机械手在所述待抓取对象上的位置以及机械手抓取上述待抓取对象时的抓取方位。
9.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述机械手控制方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述机械手控制方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911269362.XA CN111015652B (zh) | 2019-12-11 | 2019-12-11 | 机械手控制方法、控制装置、终端设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911269362.XA CN111015652B (zh) | 2019-12-11 | 2019-12-11 | 机械手控制方法、控制装置、终端设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111015652A CN111015652A (zh) | 2020-04-17 |
CN111015652B true CN111015652B (zh) | 2021-06-29 |
Family
ID=70206034
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911269362.XA Active CN111015652B (zh) | 2019-12-11 | 2019-12-11 | 机械手控制方法、控制装置、终端设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111015652B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112150427A (zh) * | 2020-09-17 | 2020-12-29 | 山东洛杰斯特物流科技有限公司 | 基于点云信息的混合拆垛方法、装置及设备 |
CN112784875B (zh) * | 2020-12-30 | 2022-05-17 | 深兰智能科技(上海)有限公司 | 机械手的控制方法及相关装置 |
CN112828892B (zh) * | 2021-01-22 | 2022-04-26 | 熵智科技(深圳)有限公司 | 一种工件抓取方法、装置、计算机设备及存储介质 |
CN113146636B (zh) * | 2021-04-27 | 2024-07-02 | 国网湖北省电力有限公司荆州供电公司 | 一种物体抓取方法、装置及柔性机器人 |
CN113459110B (zh) * | 2021-09-03 | 2021-11-12 | 苏州摩联通信技术有限公司 | 基于5g专网的工业机械手臂的控制方法与系统 |
CN114029941B (zh) * | 2021-09-22 | 2023-04-07 | 中国科学院自动化研究所 | 一种机器人抓取方法、装置、电子设备及计算机介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3124314B2 (ja) * | 1991-03-11 | 2001-01-15 | 豊田工機株式会社 | 視覚装置付ロボット |
CN107160387A (zh) * | 2016-12-13 | 2017-09-15 | 陈胜辉 | 一种物料抓取方法与系统 |
CN108555908A (zh) * | 2018-04-12 | 2018-09-21 | 同济大学 | 一种基于rgbd相机的堆叠工件姿态识别及拾取方法 |
CN108592788A (zh) * | 2018-03-29 | 2018-09-28 | 湖南大学 | 一种面向喷涂生产线的3d智能相机系统与工件在线测量方法 |
CN108972494A (zh) * | 2018-06-22 | 2018-12-11 | 华南理工大学 | 一种仿人机械手抓取控制系统及其数据处理方法 |
CN109711284A (zh) * | 2018-12-11 | 2019-05-03 | 江苏博墨教育科技有限公司 | 一种考试答题卡系统智能识别分析方法 |
-
2019
- 2019-12-11 CN CN201911269362.XA patent/CN111015652B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3124314B2 (ja) * | 1991-03-11 | 2001-01-15 | 豊田工機株式会社 | 視覚装置付ロボット |
CN107160387A (zh) * | 2016-12-13 | 2017-09-15 | 陈胜辉 | 一种物料抓取方法与系统 |
CN108592788A (zh) * | 2018-03-29 | 2018-09-28 | 湖南大学 | 一种面向喷涂生产线的3d智能相机系统与工件在线测量方法 |
CN108555908A (zh) * | 2018-04-12 | 2018-09-21 | 同济大学 | 一种基于rgbd相机的堆叠工件姿态识别及拾取方法 |
CN108972494A (zh) * | 2018-06-22 | 2018-12-11 | 华南理工大学 | 一种仿人机械手抓取控制系统及其数据处理方法 |
CN109711284A (zh) * | 2018-12-11 | 2019-05-03 | 江苏博墨教育科技有限公司 | 一种考试答题卡系统智能识别分析方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111015652A (zh) | 2020-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111015652B (zh) | 机械手控制方法、控制装置、终端设备及可读存储介质 | |
CN108044627B (zh) | 抓取位置的检测方法、装置及机械臂 | |
CN111754515B (zh) | 堆叠物品的顺序抓取方法和装置 | |
CN111015655B (zh) | 机械臂抓取方法、装置、计算机可读存储介质及机器人 | |
CN109870983B (zh) | 处理托盘堆垛图像的方法、装置及用于仓储拣货的系统 | |
DE102014212304B4 (de) | Informationsverarbeitungsvorrichtung, Informationsverarbeitungsverfahren und Speichermedium | |
CN111178250A (zh) | 物体识别定位方法、装置及终端设备 | |
CN108115688B (zh) | 一种机械臂的抓取控制方法、系统及机械臂 | |
CN105217324A (zh) | 一种新型的拆垛方法和系统 | |
CN110756462B (zh) | 电源适配器测试方法、装置、系统、控制装置及存储介质 | |
CN109955244B (zh) | 一种基于视觉伺服的抓取控制方法、装置和机器人 | |
CN110826520A (zh) | 一种基于改进YOLOv3-tiny算法的港口抓斗检测方法 | |
JP2010207989A (ja) | 対象物の把持システム及び同システムにおける干渉検出方法 | |
CN109033920B (zh) | 一种可抓取目标的识别方法、装置及计算机可读存储介质 | |
CN113666028B (zh) | 一种基于激光雷达和相机融合的垃圾桶检测抓取方法 | |
CN109657518B (zh) | 集装箱激光扫描识别方法、装置、电子设备及可读介质 | |
CN115330824A (zh) | 盒体抓取方法、装置和电子设备 | |
CN109863365B (zh) | 从容器中拾取对象的方法、电子设备和系统 | |
CN113172636B (zh) | 一种自动手眼标定方法、装置及存储介质 | |
CN114092428A (zh) | 图像数据处理方法、装置、电子设备和存储介质 | |
CN114037595A (zh) | 图像数据处理方法、装置、电子设备和存储介质 | |
CN108284075B (zh) | 一种机器人分拣物品的方法、装置及机器人 | |
CN113284129B (zh) | 基于3d包围盒的压箱检测方法及装置 | |
CN114022342A (zh) | 抓取点信息获取方法、装置、电子设备和存储介质 | |
CN114022341A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |