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

混合工件抓取方法、设备及计算机可读存储介质与流程

2021-11-05 23:05:00 来源:中国专利 TAG:


1.本发明的实施例一般涉及机器视觉领域,并且更具体地,涉及一种混合工件抓取方法、设备及计算机可读存储介质。


背景技术:

2.在工业领域,机器人代替人类完成重复性工作已经很成熟,但无序场景造成了应用的复杂性,这意味着机器人无法只根据简单设定好的程序执行工作,而是需要对工作环境进行感知、分析,做出相应的判断。在没有引入机器视觉之前,各种复杂的场景要靠增加流水线去制造有序,这种方式提高了工厂的成本。随着机器视觉领域的兴起,工业生产中无序类的应用需求越来越多,机器视觉可以完美解决工业生产中的无序问题,尤其对于散乱堆放的工件可以高效地完成分拣工作,机器视觉集合机器人完成无序抓取分拣已成为当今的热门课题。
3.现有技术在点云处理和模板匹配时一般利用神经网络技术实现,但在抓取高相似度混合工件时,仅通过神经网络技术进行区分会导致抓取错误率较高,无法有效地对高相似度的混合工件进行区分和抓取,并且抓取过程中存在于障碍物碰撞风险,导致抓取安全性较低。


技术实现要素:

4.根据本发明的实施例,提供了一种混合工件抓取方案,使针对高相似度的混合工件的识别正确率较高,速度快,抓取更安全。
5.在本发明的第一方面,提供了一种混合工件抓取方法。该方法包括:
6.对若干仅存在尺寸差异的待抓取工件进行建模,得到所述待抓取工件的不同尺寸的三维模型;
7.标定光学相机,通过所述光学相机获取不同姿态下待抓取工件的若干二维图像,并以所述若干二维图像作为训练集数据训练深度卷积神经网络模型,得到目标识别检测模型;
8.通过所述光学相机获取待抓取工件所在区域的二维图像以及所述二维图像对应的世界坐标系下的三维点云,并对所述三维点云进行自切割预处理,将自切割预处理后的三维点云转换到相机坐标系,得到第一点云;
9.通过所述目标识别检测模型识别所述二维图像中的识别工件并标注所述识别工件的感兴趣区域,对应得到所述识别工件在相机坐标系下的第二点云;
10.将所述第一点云和第二点云转换到机械臂基坐标系,得到第四点云和第三点云,并按序将所述第三点云与待抓取工件的三维模型进行匹配,得到目标工件;
11.根据所述目标工件的位姿得到抓取工具的抓取位姿,并将所述抓取位姿进行逆变换,以所述逆变换后的位姿对所述第四点云进行仿射变换,将所述第四点云由机械臂基坐标系转换到抓取工具坐标系;
12.在所述抓取工具坐标系中构建所述抓取工具的包围盒模型,若所述包围盒模型中点云的数量不超过预设数量阈值时,对所述目标工件执行抓取。
13.进一步地,所述对所述三维点云进行自切割预处理,将自切割预处理后的三维点云转换到相机坐标系,得到第一点云,包括:
14.识别出所述世界坐标系下的点云中的z轴最小值,以所述z轴最小值向z轴正方向累加预设值,得到区间最大值;以所述z轴最小值与所述区间最大值作为切割区间的最小值和最大值,构建切割区间;
15.将所述世界坐标系下z轴坐标在所述切割区间内的点进行清除,得到自切割预处理后的三维点云;
16.将所述自切割预处理后的三维点云进行平移和旋转变换,将所述自切割预处理后的三维点云转换到相机坐标系下,得到第一点云。
17.进一步地,所述标注所述识别工件的感兴趣区域,包括:
18.以所述识别工件在x轴和y轴的最大值和最小值形成矩形区域;
19.对所述矩形区域对应的所述识别工件的尺寸进行标注。
20.进一步地,所述方法还包括:
21.在得到目标工件后,对所述目标工件的点云进行验证,若验证通过,则对所述目标工件进行确认;否则验证失败,继续判断是否存在未匹配的第三点云,若存在,则返回执行按序将所述第三点云与所述待抓取工件的三维模型进行匹配;若不存在,则抓取结束。
22.进一步地,所述对所述目标工件的点云进行验证,包括:
23.获取所述目标工件的不同尺寸的三维模型;
24.按照所述目标工件的三维模型的尺寸由大到小对所述目标工件的不同尺寸的三维模型进行排序;
25.按序获取所述目标工件的三维模型,对所述目标工件的三维模型以及所述目标工件划分若干验证区间,使所述目标工件的三维模型和所述目标工件的验证区间一一对应;
26.将所述目标工件的三维模型和所述目标工件对应的验证区间中的点云数量进行比较,若所述目标工件的点云数量与所述目标工件的三维模型的点云数量差不超过预设差阈值,则验证通过;否则验证失败。
27.进一步地,所述按序将所述第三点云与待抓取工件的三维模型进行匹配,包括:
28.在所述第三点云的z轴方向上顺次划分若干区间;
29.获取每个所述第三点云的z轴坐标平均值,根据所述z轴坐标平均值所属区间在z轴方向上由上到下的顺序将所述z轴坐标平均值对应的第三点云与待抓取工件的三维模型进行匹配;
30.若多个所述第三点云的z轴坐标平均值在同一个区间内,则按所述第三点云对应的所述识别工件的尺寸由大到小的顺序将所述第三点云与待抓取工件的三维模型进行匹配。
31.进一步地,所述根据所述目标工件的位姿得到抓取工具的抓取位姿,包括:
32.获取所述目标工件的位姿矩阵,根据抓取工具对所述目标工件的抓取点进行识别;所述抓取点为一个或多个;
33.获取所述目标工件在所述抓取点处与所述抓取工具的相对位姿关系矩阵;
34.将所述目标工件的位姿矩阵与其在所述抓取点处与所述抓取工具的相对位姿关系矩阵的乘积作为所述抓取工具的抓取位姿;所述抓取位姿为一个或多个。
35.进一步地,所述抓取工具的包围盒模型为所述抓取工具坐标系中的长方体模型;所述抓取工具被包围在所述长方体模型内;所述长方体模型的任一边长与所述抓取工具坐标系的一坐标轴平行。
36.进一步地,当所述包围盒模型中点的数量超过预设数量阈值时,判断所述目标工件是否存在其他抓取位姿,若是,则任选其中一抓取位姿,返回执行将所述抓取位姿进行逆变换;否则判断是否存在未匹配的第三点云,若存在未匹配的第三点云,则返回执行按序将所述第三点云与待抓取工件的三维模型进行匹配;若不存在未匹配的第三点云,则抓取结束。
37.在本发明的第二方面,提供了一种电子设备。该电子设备包括:存储器和处理器,所述存储器上存储有计算机程序,所述处理器执行所述程序时实现如以上所述的方法。
38.在本发明的第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如根据本发明的第一方面的方法。
39.应当理解,发明内容部分中所描述的内容并非旨在限定本发明的实施例的关键或重要特征,亦非用于限制本发明的范围。本发明的其它特征将通过以下的描述变得容易理解。
附图说明
40.结合附图并参考以下详细说明,本发明各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标记表示相同或相似的元素,其中:
41.图1示出了根据本发明的实施例的混合工件抓取方法的流程图;
42.图2示出了根据本发明的实施例的待抓取工件示意图;
43.图3示出了根据本发明的实施例的通过光学相机拍摄的二维图像;
44.图4示出了根据本发明的实施例的自切割预处理后的三维点云示意图;
45.图5示出了根据本发明的实施例的待抓取工件在相机坐标系下的第一点云示意图;
46.图6示出了根据本发明的实施例的所述识别工件的感兴趣区域标注示意图;
47.图7示出了根据本发明的实施例的识别工件在相机坐标系下的第二点云
48.图8示出了能够实施本发明的实施例的示例性电子设备的方框图。
具体实施方式
49.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的全部其他实施例,都属于本发明保护的范围。
50.另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
51.图1示出了本发明实施例的混合工件抓取方法的流程图。
52.该方法包括:
53.s101、对若干仅存在尺寸差异的待抓取工件进行建模,得到所述待抓取工件的不同尺寸的三维模型。
54.所述待抓取工件为仅存在尺寸差异的工件,其相似度较高,混合在一起,较难辨识。例如m16*80、m16*60、m16*40三种型号螺栓,其长度不同,分别为8cm、6cm、4cm,几种螺栓除了长度不同外,无任何差别,且长度区别仅在2cm,如图2所示。
55.作为本发明的一种实施例,对若干仅存在尺寸差异的待抓取工件进行建模,首先使用测量工具,例如游标卡尺、量角器等,对各高相似度工件分别进行测量;测量数据包括工件各部分长度和角度等;根据测量数据对各工件进行建模,得到各待抓取工件的三维模型。
56.在上述实施例中,得到的三维模型为三种,分别对应m16*80、m16*60、m16*40三种型号螺栓。
57.s102、标定光学相机,通过所述光学相机获取不同姿态下待抓取工件的若干二维图像,并以所述若干二维图像作为训练集数据训练神经网络模型,得到目标识别检测模型。
58.首先,通过对光学相机进行标定,确定世界坐标系原点与相机内外参。所述内参包括相机焦距、畸变等,外参包括相机与世界坐标系位姿关系,可用于计算相机坐标系。
59.使用标定后的光学相机拍摄一组二维图像作为训练集数据,用于目标识别深度学习训练。一组二维图像例如为100张,灰度图或彩色图均可。每次使用标定后的光学相机拍摄前需要对高相似度混合工件重新进行无序摆放,以获取待抓取工件的不同姿态。将标定后的光学相机拍摄得到的二维图像中高相似度工件进行人工标注,按照特征不同给出不同标签,供计算机对深度卷积神经网络进行深度学习训练。所述深度卷积神经网络为常用的深度卷积神经网络,例如ssd网络,faster

rcnn网络,yolo网络等。根据训练集数据中输入的二维图像,经过数小时训练后就可得到目标识别检测模型。
60.所述相机坐标系为在相机上建立的坐标系,从相机的角度描述物体位置。相机坐标系原点位于镜头光心(投影中心)处,x、y轴分别与像平面的两边平行,z轴为镜头光轴,与像平面垂直。
61.s103、通过所述光学相机获取待抓取工件所在区域的二维图像以及所述二维图像对应的世界坐标系下的三维点云,并对所述三维点云进行自切割预处理,将自切割预处理后的三维点云转换到相机坐标系,得到第一点云。
62.使用光学相机对工作区域进行拍摄测量。所述工作区域表示所述待抓取工件所在的区域,可以包括工作台区域或工作台区域内的容器等区域。光学相机拍摄对工作区域拍摄得到二维图像,如图3所示。通过测量计算得到三维点云,所述三维点云与二维图像存在对应投影关系,即三维点云在光学相机的俯视拍摄视角时与二维图像重合。所述三维点云为世界坐标系下,所述世界坐标系为用户定义的三维世界的坐标系,为了描述目标物在真实世界里的位置而被引入;世界坐标系的位置可以根据实际情况自由确定。例如取标定相机时标定板的第一张图像的中心点作为原点,标定板的横向为x轴,纵向y轴,垂直标定板方向为z轴。
63.作为本发明的一种实施例,在获取世界坐标系下的三维点云后,需要对所述三维
点云进行自切割预处理。所述自切割预处理,包括:
64.识别出所述世界坐标系下的点云中的z轴最小值,以所述z轴最小值向z轴正方向累加预设值,得到区间最大值;以所述z轴最小值与所述区间最大值作为切割区间的最小值和最大值,构建切割区间;将所述世界坐标系下z轴坐标在所述切割区间内的点进行清除,得到自切割预处理后的三维点云,如图4所示。
65.由于点云中一般会包括工作台、容器等无用工件,此时所述预设值一般近似为工作台的厚度与容器底边厚度之和。
66.所述自切割预处理能够将三维点云中包括的工作台、容器等无用工件进行切除,排除工作台以及容器等无用点云对待抓取工件的点云的干扰,提高模板匹配的成功率。
67.作为本发明的一种实施例,在对三维点云进行自切割预处理后,将自切割预处理后的三维点云转换到相机坐标系,得到第一点云,如图5所示。
68.从世界坐标系到相机坐标系为刚性变换,即平移加旋转。转换公式为:
[0069][0070]
其中,t=(t
x
,t
y
,t
z
)t为一个平移矩阵;r=(α,β,γ)为旋转矩阵,其中,t
x
,t
y
,t
z
表示x轴、y轴、z轴的平移量;α表示绕相机坐标系x轴旋转角度,β表示绕相机坐标系y轴旋转角度,γ表示绕相机坐标系z轴旋转角度。通过s102中的标定过程能够获取t
x
、t
y
、t
z
、α、β、γ等6个外参。
[0071]
s104、通过所述目标识别检测模型识别所述二维图像中的识别工件并标注所述识别工件的感兴趣区域,对应得到所述识别工件在相机坐标系下的第二点云。
[0072]
将所述二维图像输入到训练好的所述目标识别检测模型中,对所述二维图像中的工件进行识别,输出识别到的所有识别工件。
[0073]
作为本发明的一种实施例,如图6所示,标注所述识别工件的感兴趣区域,包括:
[0074]
以所述识别工件在x轴和y轴的最大值和最小值形成矩形区域;对所述矩形区域对应的所述识别工件的尺寸进行标注。标注出的所述识别工件的尺寸,可以为尺寸级别,例如big、middle、small等。
[0075]
所述感兴趣区域是用于在二维图像中标注出对应识别工件的矩形轮廓的区域。
[0076]
提取所述感兴趣区域中的点云作为所述识别工件在相机坐标系下的第二点云,如图7所示。
[0077]
每个所述目标识别检测模型识别到的识别工件对应一个感兴趣区域和一个第二点云。即第二点云的数量为所述目标识别检测模型识别到的识别工件的数量。
[0078]
s105、将所述第一点云和第二点云转换到机械臂基坐标系,得到第四点云和第三点云,并按序将所述第三点云与待抓取工件的三维模型进行匹配,得到目标工件。
[0079]
所述第二点云为相机坐标系下,将其从相机坐标系转换到机械臂基坐标系需要先确定相机坐标系与机械臂基坐标系的关系。所述相机坐标系与机械臂基坐标系的关系通过手眼标定确定,包括:
[0080]
通过机械臂拿取标定板,在不同位姿下进行拍照,记录拍照时机械臂示教器显示的位姿,理论上只需要三张不同位姿的照片即可,实际操作中为了减少误差,一般可设置多
张。计算出机械臂示教器显示位姿与世界坐标系下标定板位姿之间的关系,由于世界坐标系与相机坐标系矩阵关系已知,所以求出世界坐标系与机械臂基坐标系的关系矩阵再乘以相机坐标系与世界坐标系的矩阵关系就可得到相机坐标系与机械臂基坐标系的矩阵关系。
[0081]
将所述第二点云通过所述相机坐标系与机械臂基坐标系的矩阵关系转换到机械臂基坐标系后,得到第三点云。
[0082]
同理,将第一点云转换到机械臂基坐标系,得到第四点云。
[0083]
由于在第三点云中,上方工件的点云会对下方工件的点云造成遮挡,导致下方工件点云不完整,从而影响匹配结果的准确性。故需要对所述第三点云进行排序,再根据排序结果按序对第三点云进行表面模板匹配。
[0084]
作为本发明的一种实施例,所述按序将所述第三点云与待抓取工件的三维模型进行匹配,得到目标工件,包括:
[0085]
在所述第三点云的z轴方向上顺次划分若干区间;所述区间可以为等间隔区间或非等间隔区间,但相邻区间相接,使所述区间覆盖区域在所述第三点云的z轴方向上连续。
[0086]
获取每个所述第三点云的z轴坐标平均值,根据所述z轴坐标平均值所属区间在z轴方向上由上到下的顺序将所述z轴坐标平均值对应的第三点云与待抓取工件的三维模型进行匹配;若多个所述第三点云的z轴坐标平均值在同一个区间内,则按所述第三点云对应的所述识别工件的尺寸由大到小的顺序将所述第三点云与待抓取工件的三维模型进行匹配。
[0087]
在本实施例中,遵循先匹配上方工件点云,后匹配下方工件点云的原则;能够先匹配遮挡率较小的上方工件点云,从而提高匹配结果的准确性。
[0088]
当多个工件点云处于同一高度区间时,横向比较工件点云的尺寸长度,优先匹配尺寸较长的工件点云,例如同一高度区间内包括尺寸长度分别为8cm、6cm、4cm的三种螺栓,则先匹配8cm的螺栓,再匹配6cm的螺栓,最后匹配4cm的螺栓。
[0089]
由于尺寸较短的三维模型可以匹配出尺寸较长的工件点云,从而造成匹配错误,通过先对长度较长的螺栓进行匹配,可以避免匹配过程中的错误匹配,提高匹配准确率。
[0090]
作为本发明的一种实施例,由于待抓取工件之间的特征差距很小,匹配容易造成失误,故在匹配出目标工件后,需要对目标工件的点云进行验证。
[0091]
所述验证过程,包括:
[0092]
在得到目标工件后,对所述目标工件的点云进行验证,若验证通过,则对所述目标工件进行确认;否则验证失败,继续判断是否存在未匹配的第三点云,若存在,则返回执行按序将所述第三点云与所述待抓取工件的三维模型进行匹配;若不存在,则抓取结束。
[0093]
所述对所述目标工件的点云进行验证,包括:
[0094]
获取所述目标工件的不同尺寸的三维模型;
[0095]
按照所述目标工件的三维模型的尺寸由大到小对所述目标工件的不同尺寸的三维模型进行排序;
[0096]
按序获取所述目标工件的三维模型,对所述目标工件的三维模型以及所述目标工件划分若干验证区间,使所述目标工件的三维模型和所述目标工件的验证区间一一对应;
[0097]
将所述目标工件的三维模型和所述目标工件对应的验证区间中的点云数量进行比较,若所述目标工件的点云数量与所述目标工件的三维模型的点云数量差不超过预设差
阈值,则验证通过;否则验证失败。
[0098]
作为本发明的一种实施例,例如三个不同尺寸的三维模型按序排列分别为big模型、middle模型、small模型;获取big模型,所述big模型为m16*80螺栓的模型,其螺栓尺寸长度为8cm。将big模型划分为8个验证区间,即每个验证区间为1cm。同时也将目标工件的点云划分为8个等长区间,与big模型对应。从螺母端开始逐个区间判断目标工件的点云数量与big模型对应区间的点云数量是否相差过大,如果相差超过预设差阈值,则说明当前区间内点云数量过少,表示目标工件比big模型的尺寸短。此时需要重新将目标工件的点云与middle模型进行匹配,以此类推。
[0099]
s106、根据所述目标工件的位姿得到抓取工具的抓取位姿,并将所述抓取位姿进行逆变换,以所述逆变换后的位姿对所述第四点云进行仿射变换,将所述第四点云由机械臂基坐标系转换到抓取工具坐标系。
[0100]
所述根据所述目标工件的位姿得到抓取工具的抓取位姿,包括:
[0101]
获取所述目标工件的位姿矩阵,根据抓取工具对所述目标工件的抓取点进行识别;所述抓取点为一个或多个;由于所述目标工件可能会存在不止一个抓取点,例如一个螺栓,当其位姿处于水平放置在工作台上时,其抓取点可以是螺柱上的各个位置点,即理论上存在无数个抓取点;当其以螺母为底面放置在工作台上时,可以其抓取点可以是螺柱上各个位置点,也可以是螺柱顶部位置点。选择其中一个抓取点即可作为抓取工具对所述目标工件的抓取点。
[0102]
获取所述目标工件在所述抓取点处与所述抓取工具的相对位姿关系矩阵。要保证抓取工具抓取点与工件可抓取点重合且抓取状态的稳定,在此前提下,仍可以确定多个抓取工具与工件的相对位姿关系。例如一个螺栓,当其位姿处于竖直放置在工作台上时,选择其螺柱侧面上一个位置点作为抓取点,在抓取工具抓取目标工件的抓取状态稳定前提下,抓取工具可以横向抓取,也可以绕抓取点进行旋转。在旋转的过程中,不同的角度都会产生不同的抓取位姿,得到所述目标工件在所述抓取点处与所述抓取工具的若干个相对位姿关系矩阵。
[0103]
将所述目标工件的位姿矩阵与其在所述抓取点处与所述抓取工具的相对位姿关系矩阵的乘积作为所述抓取工具的抓取位姿;所述抓取位姿为一个或多个。
[0104]
所述抓取工具包括多种能够实现抓取功能的工具,例如夹爪工具。
[0105]
所述逆变换有两种方式:可以将位姿转换成矩阵,对矩阵求逆,再转换回位姿;也可以根据位姿旋转平移顺序反推,如位姿先旋转后平移,位姿的逆就先平移后旋转,位姿以xyz轴为顺序分别旋转角度α、β、γ,逆则以zyx为顺序分别旋转

γ、

β、

α,平移向量(a,b,c)逆平移向量(

a,

b,

c)。
[0106]
所述仿射变换,指对空间向量发生一次线性变换与平移,例如一个向量从原点指向x轴上(1,0,0)点,要使向量变为从(1,0,0)点指向(1,1,0)点,首先要对向量进行一次线性变换,这里指绕z轴逆时针旋转90度,旋转后向量为从原点指向(0,1,0),再沿着x轴平移一个单位即可完成仿射变换。
[0107]
作为本发明的一种实施例,一个相对位姿关系矩阵为a、工件匹配位姿矩阵为b,则抓取工具的最终位姿h=b
×
a。抓取工具可以围绕抓取点进行360度旋转,需要根据实际情况去归类取舍,如工件平放在工作台上,可取竖直向下抓取所述抓取工具位姿矩阵a1,沿工
件轴左右分别旋转到安全极限的抓取工具位姿矩阵a2、a3,此时根据工件实际匹配位姿计算抓取工具位姿h1=a1
×
b,h2=a2
×
b,h3=a3
×
b。根据实际情况依照抓取点和抓取角度的不同将抓取位姿进行组合,如一个螺栓可根据距螺母距离不同有多个抓取点,如在仅考虑抓取螺柱的情况下,一个长度为8cm的螺栓抓取点间隔设为2cm则大概有4个抓取点,然后每个抓取点再根据角度不同又有3个抓取位姿,一共12个抓取位姿,然后根据实际需要将抓取位姿进行优先级排序,排序依据夹取工具工作时方便与安全考虑,也要考虑抓取后,码放的方便与安全,一般情况下在竖直夹取优于有角度夹取,抓取点接近重心优于远离重心。从排序中按序选取一个抓取位姿,将此位姿进行矩阵逆变换,以此矩阵逆变换对检测点云进行旋转平移变换,因为抓取位姿是抓取工具在机械臂坐标系下的位姿,因此对第四点云进行抓取位姿矩阵逆变换可将检测点云从机械臂坐标系下转换到抓取工具坐标系,对第四点云在抓取工具坐标系下进行冲突检测可大大降低检测难度。
[0108]
s107、在所述抓取工具坐标系中构建所述抓取工具的包围盒模型,若所述包围盒模型中点云的数量不超过预设数量阈值时,对所述目标工件执行抓取。
[0109]
由于第四点云在抓取工具坐标系下,抓取工具本身在抓取工具坐标系下位姿为[0,0,0,0,0,0],只要在所述抓取工具坐标系中建立一个或多个的各边都与对应坐标轴平行的长方体包围盒即可模拟抓取工具。
[0110]
所述抓取工具的包围盒模型为所述抓取工具坐标系中的长方体模型;所述抓取工具被包围在所述长方体模型内;所述长方体模型的任一边长与所述抓取工具坐标系的一坐标轴平行。
[0111]
所述抓取工具坐标系的定义方法是以抓取工具与目标工件的接触点为原点,以抓取工具从根部到末端方向为z轴建立的坐标系。
[0112]
在长方体包围盒中检测目标点云数量,设定一个阈值,判断点云数量是否超过阈值,即可完成冲突检测。安全起见,点云阈值最好设为0,即表示包围盒模型中有点云存在就判断为冲突。对于包围盒的模拟,可略大于夹取工具,但如果过大也会造成误判,可以将包围盒细拆为几个包围盒的组合体,每个包围盒又可以拆的更小,直到包围盒组合体无限接近于抓取工具。
[0113]
作为本发明的一种实施例,当所述包围盒模型中点的数量超过预设数量阈值时,判断所述目标工件是否存在其他抓取位姿,若是,则任选其中一抓取位姿,返回执行将所述抓取位姿进行逆变换;否则判断是否存在未匹配的第三点云,若存在未匹配的第三点云,则返回执行按序将所述第三点云与待抓取工件的三维模型进行匹配;若不存在未匹配的第三点云,则抓取结束。
[0114]
如果判断包围盒内点云数量过多,则此夹取方法不可取,要从该工件的其它夹取位姿排序中继续选择合适的夹取位姿进行冲突验证,如果一个工件的所有夹取位姿都不合适,则该工件无法夹取,继续从其它匹配成功工件中选择可夹取工件进行夹取验证,如果匹配出的所有工件都无法夹取,则结束此次抓取。
[0115]
根据本发明的实施例,使针对高相似度的混合工件的识别正确率较高,速度快;通过对抓取工具建立包围盒模型,使抓取工具在抓取的过程中能够考虑到机械臂夹取工件时可能会与遮挡物碰撞的问题,提升抓取安全性。
[0116]
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列
的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本发明所必须的。
[0117]
以上是关于方法实施例的介绍,以下通过设备实施例,对本发明所述方案进行进一步说明。
[0118]
如图8所示,设备包括中央处理单元(cpu),其可以根据存储在只读存储器(rom)中的计算机程序指令或者从存储单元加载到随机访问存储器(ram)中的计算机程序指令,来执行各种适当的动作和处理。在ram中,还可以存储设备操作所需的各种程序和数据。cpu、rom以及ram通过总线彼此相连。输入/输出(i/o)接口也连接至总线。
[0119]
设备中的多个部件连接至i/o接口,包括:输入单元,例如键盘、鼠标等;输出单元,例如各种类型的显示器、扬声器等;存储单元,例如磁盘、光盘等;以及通信单元,例如网卡、调制解调器、无线通信收发机等。通信单元允许设备通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
[0120]
处理单元执行上文所描述的各个方法和处理,例如方法s101~s107。例如,在一些实施例中,方法s101~s107可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元。在一些实施例中,计算机程序的部分或者全部可以经由rom和/或通信单元而被载入和/或安装到设备上。当计算机程序加载到ram并由cpu执行时,可以执行上文描述的方法s101~s107的一个或多个步骤。备选地,在其他实施例中,cpu可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行方法s101~s107。
[0121]
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)等等。
[0122]
用于实施本发明的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
[0123]
在本发明的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd

rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
[0124]
此外,虽然采用特定次序描绘了各操作,但是这应当理解为要求这样操作以所示出的特定次序或以顺序次序执行,或者要求所有图示的操作应被执行以取得期望的结果。
在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本发明的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实现中。相反地,在单个实现的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实现中。
[0125]
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
再多了解一些

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

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

相关文献