一种应用于参数化零件的视觉机械臂抓取方法及装置与流程

文档序号:21020227发布日期:2020-06-09 19:39阅读:233来源:国知局
一种应用于参数化零件的视觉机械臂抓取方法及装置与流程

本发明涉及视觉抓取,特别是一种应用于参数化零件的视觉机械臂抓取方法及装置。



背景技术:

我国对机器人的需求量日益增大,机器人正被广泛应用在零件抓取领域。但目前正在社会上投入使用的机器人大都缺乏智能性,在工业上难以适应多品种少批量的生产模式和非结构化的工业环境。

视觉抓取是指通过视觉系统引导机器人对目标物体进行抓取,cn201511005603公开了一种基于产品信息标签的视觉机器人抓取方法,通过图像获取装置获取待抓取产品的照片及信息标签,再由图像处理控制装置获取物体的位置和尺寸信息,最后控制机器人实现抓取动作。cn201810034599公开了一种基于深度视觉的机器人抓取方法,利用边缘检测算子获取深度图像的梯度图,选取最佳抓取点,由逆运动学计算运动轨迹实现抓取过程。cn201811256263公开了一种基于决策反馈的机器人抓取方法,将物体的种类、位置和三维姿态输入抓取动作决策模型得到抓取策略,由传感器数据反馈得知是否抓取成功并调整抓取策略,直至成功抓取物体。cn201910069683公开了一种机器人抓取系统及方法,由双目摄像头计算物体的三极坐标,将其转化为机器人手臂的控制坐标,通过中间点坐标到达目标位置并判断位置误差是否小于阈值。cn201910275513公开了一种机器人视觉抓取方法和装置,通过标定图片计算映射矩阵和tcp偏移量,获取待抓取工件的中心点和角度,最后实现抓取动作。

在实际工业环境中,零件族通常是参数化的,即具有统一的参数化模板种类,但零件的参数值不相同,因此会产生多种尺寸规模的同类别零件。由于当前技术中常用的抓取方法大都针对具有固定模板的单个物体抓取场景,因此需要事先构建整个零件族内的所有零件模板,工作量大。且不同的零件族种类具有不同的特征分布,传统的视觉识别和抓取方法难以适用于不同零件族的物体模型。



技术实现要素:

为了克服上述技术缺陷中的至少一种,本发明提供一种应用于参数化零件的视觉机械臂抓取方法及装置。

为实现上述目的,本发明采用以下技术方案:

一种应用于参数化零件的视觉机械臂抓取方法,包括以下步骤:

s1、获取待抓取的参数化零件的场景点云,通过预处理去除背景信息获得目标点云;

s2、将目标点云输入训练好的参数化点云深度神经网络,依据由所述参数化点云深度神经网络生成的描述子映射函数d,将目标点云映射为特征向量空间中的目标点;

s3、根据预先在所述特征向量空间中建立的代表不同类别零件族的流形,通过计算流形表面距离所述目标点最近的特征点,获取目标物体的具体参数值及对应的目标模板;

s4、依据目标模板,通过对齐算法,获取所述参数化零件的6d位姿信息;

s5、将该参数化零件的6d位姿信息传递给机器人控制系统,以控制机器人完成对参数化零件的抓取任务。

进一步地:

步骤s1中,当所述机器人接收到针对所述参数化零件的抓取指令后,通过深度相机获取参数化零件的场景点云。

步骤s1中,所述场景点云包含待抓取的参数化零件的目标点云和环境背景点云,通过将所述场景点云减去预先存储的背景点云,得到所述参数化零件的目标点云。

步骤s1中,以所述预先存储的背景点云中的每个点作为树节点来构建kd树,以所述场景点云中的每个点作为查找点,搜索半径小于设定阈值的最近邻点,搜索结束后,将最近邻点减去对应的树节点,实现背景点云的去除。

步骤s2中,所述参数化深度神经网络生成描述子映射函数d,使得所述目标点云在经过所述描述子映射函数d后,在特征向量空间内同类型的零件距离较近,而不同类型的零件相距较远;

其中,所述参数化深度神经网络的数据集生成过程包括:

(1)通过三维建模获得一系列零件族obj模板库;

(2)依次在零件族obj模型表面进行固定点数均匀采样和最远点采样,获得一系列零件族点云模板库,零件族点云模板库中的每个点云文件均属于模板点云;

(3)将单个零件族obj文件添加至blender渲染引擎,使用仿真相机进行多角度拍摄,获得blender渲染深度图;

(4)通过仿真相机的内参与外参转换,将渲染深度图转化为点云图,并进行最远点采样,获得仿真多视角点云图;

(5)点云模板库和仿真多视角点云图共同构成参数化深度神经网络的数据集。

所述参数化深度神经网络的训练过程中的总体损失函数包括分类损失函数和对比损失函数,其中所述分类损失函数用于零件族的分类,所述对比损失函数用于实现在特征向量空间内,同类型的零件相距较近,不同类型的零件相距较远,所述对比损失函数的表达式如下:

其中,k表示样本对个数,di表示两个描述子之间的欧式距离,yi表示第i对样本的标签是否匹配,yi=1表示匹配,yi=0表示不匹配,margin表示设定的距离阈值;

网络训练完成后获得描述子映射函数d,在特征向量空间中,通过该映射函数可以线下构建不同参数化零件族的流形。

步骤s3中,每个流形代表一种零件族,流形表面上的每个点均代表该零件族的一个具体参数化零件,包含零件参数信息。

步骤s4中,根据所述目标点云和所述目标模板,采用最近点迭代算法(icp算法)进行配准,具体包括以下过程:

a1)搜索初始点云中每个点在模板点云中的距离最近点,其中所述模板点云是基于三维建模获得的零件obj文件,通过在零件obj文件表面均匀采样和最远点采样后获得的点云文件;

a2)使用方向向量阈值剔除错误点,并计算平移向量ti和旋转矩阵ri;

a3)寻找一个使得目标点云和目标模板的对应点距离均方误差最小的平移向量ti和旋转矩阵ri;

a4)按照平移向量ti和旋转矩阵ri旋转平移旋转初始点云后,如果达到阈值要求或者迭代次数达到上限则结束,否则返回a1)继续迭代。

步骤s5中,根据所述参数化零件的6d位姿信息,所述机器人控制系统通过逆运动学算法求解机器人运动轨迹,其中,将抓取时的末端位姿从笛卡尔空间中转化为机械臂关节空间内,然后通过运动规划算法计算机器人机械臂在关节空间中初始位姿与末端位姿的连接轨迹,控制机械臂末端沿连接轨迹到达目标位姿,闭合夹爪并将参数化零件放置指定位置。

一种应用于参数化零件的视觉机械臂抓取装置,包括至少一个存储器以及至少一个处理器;

所述存储器,包括存储于其中的至少一个可执行程序;

所述可执行程序在由所述处理器执行时,实现所述的方法。

本发明具有如下有益效果:

本发明提供一种应用于参数化零件的视觉机械臂抓取方法,将深度学习技术与传统参数化技术相结合,实现面向参数化零件的视觉抓取任务,通过将零件族映射到特征向量空间和计算空间最近点的方式,可以快速获得零件参数信息和模板,并通过模板匹配进行抓取,巧妙地解决了对于未知模板的零件难以进行抓取的问题,且节省大量计算时间。本发明可利用深度神经网络具有强大的学习能力,可以学习任意零件族的参数信息,生成各种类型的模板数据,且模型可以泛化到不同类型的零件族,参数化零件检索方法可适用于不同的零件族类型,使得本发明的方法具有极强的鲁棒性和通用性。

与传统技术相比,本发明的区别点和优势包括:

1、传统技术主要针对某一种特定尺寸零件的抓取任务,本发明适用于各类参数化零件族的抓取任务。

2、传统技术主要通过rfid等信息标签获取参数信息,或通过传统检测算子获取零件边缘信息,而本发明利用参数化深度神经网络获取零件的参数信息。

3、传统技术的点云模板匹配方法,需要计算点云模板和目标点云的所有点距离,计算量大。本发明通过计算特征向量空间中特征点与流形的距离,来搜索最佳匹配模板,节约大量时间。

4、传统技术对不同的物体模型需要做特定预处理,而本发明对于不同物体模型具有泛化能力。

附图说明

图1为本发明一种实施例的应用于参数化零件的视觉机械臂抓取方法的流程图:

图2为本发明一种实施例中的参数化深度神经网络数据集生成过程图;

图3为本发明一种实施例中的参数化深度神经网络训练过程图;

图4为本发明一种实施例中的参数化深度神经网络获取目标模板过程图。

具体实施方式

以下对本发明的实施方式作详细说明。应该强调的是,下述说明仅仅是示例性的,而不是为了限制本发明的范围及其应用。

在自动化装配线,要求通过视觉从物料框中抓取各种各样的工业零件,并以大致正确的姿态摆放到零件位姿调整器上。现实生活中的工业零件基本都是参数化的,即具有统一的零件模板,但具体的尺寸数值不相同。本发明实施例基于深度学习实现参数化零件的视觉机械臂抓取。

图1为本发明一种实施例的应用于参数化零件的视觉机械臂抓取方法的流程图。本发明实施例提供的视觉机械臂抓取方法,可以实现参数化零件的抓取任务,包括以下五个步骤。第一步,获取参数化零件的场景点云,通过预处理去除背景信息获得目标点云。第二步,将目标点云输入参数化点云深度神经网络,依据生成的描述子映射函数d,将目标点云映射为特征向量空间中的目标点。第三步,网络通过离线训练,已预先建立某类别零件族在特征向量空间的流形,其中流形是指局部具有欧几里得空间性质的空间,常用于描述几何形体。在优选实施例中,流体上的每一个点均是零件族点云模板库中具体点云模板在特征向量空间中的映射。因此,本步骤中通过计算流形表面中距离目标点最近的特征点,即可获得参数化零件的具体参数值和目标模板。第四步,依据目标模板,通过对齐操作,获取该参数化零件的6d位姿。第五步,上位机将零件6d位姿信息传递给机器人控制系统,通过逆运动学求解机器人运动轨迹,完成抓取任务。

本发明中,通过参数化深度神经网络进行零件检索,获取参数化零件的尺寸信息和类别信息,确定参数化目标模板。其中,利用深度神经网络,深度学习能够计算描述子映射函数,该描述子使得相同类别的零件族在特征空间实现聚类;通过在特征向量空间中计算距离,对参数化零件的尺寸参数进行快速估计。依据参数化零件的尺寸参数确定零件模板,用于参数化零件的位姿估计。确定参数化模板后,通过对齐算法进行模板匹配,获得参数化零件的位姿信息,并控制机器人,引导机器人机械臂实现抓取任务。本发明中的参数化零件检索方法可适用于不同的零件族类型,具有较强的泛化能力。

以下结合进一步描述本发明具体实施例。

本发明实施例的具体流程包括:

(1)当机械臂接收到抓取指令后,系统将通过深度相机获取参数化零件的场景点云,并通过预处理方法实现背景剔除,将零件点云滤波并下采样到固定点数,获得目标点云;

(2)将目标点云输入已经训练好的参数化深度神经网络,依据生成的描述子映射函数d,将目标点云映射为特征向量空间中的目标点;

(3)根据预先在特征向量空间中建立的代表不同类别零件族的流形,通过计算在流形表面距离目标点最近的特征点,获取目标物体的具体参数值及对应的目标模板。

(4)依据目标模板,进行对齐操作,获取该参数化零件的6d位置和姿态信息;

(5)上位机将参数化零件的位置和姿态信息传递给机器人控制系统,通过运动规划算法计算在关节空间中初始位姿与末端位姿的连接轨迹,机械臂末端沿连接轨迹到达目标位姿,闭合夹爪并将参数化零件放置指定位置,完成抓取任务。

一、场景点云获取及预处理方法

输入:背景点云和场景点云

输出:剔除背景后的场景点云

本发明的输入是系统中深度相机提供的场景点云和背景点云,或是经过深度图转换生成的场景点云和背景点云,其中背景点云是指不放置任何零件时获得的点云图。场景点云包含待抓取参数化零件的目标点云和环境背景点云,需要将背景点云剔除。剔除方法可以是将场景点云减去事先存储的背景点云。

以背景点云中的每个点作为树节点来构建kd树,以场景点云中的每个点作为查找点,搜索半径小于阈值的最近邻点。搜索结束后,将最近邻点减去对应的树节点,达到背景去除效果。接着进行点云滤波处理,排除噪声等外界环境影响。滤波方式包括但不限于:直通滤波、体素滤波、统计滤波、半径滤波。然后将点云采样到固定点数,所用的采样方式包括但不限于:随机采样、均匀采样、最远点采样(fps采样)。

二、利用参数化深度神经网络进行描述子计算

输入:去除背景后的目标点云

输出:针对一个目标点云文件,依据描述子映射函数d,输出特征向量空间中的目标点

在参数化零件的参数预测中,利用度量学习网络框架生成的描述子映射函数d,使得点云信息在经过描述子映射函数d后,在特征向量空间内同类型的零件距离较近,而不同类型的零件相距较远。所采取的特征提取网络包括但不限于:pointnet,pointnet++,pointsift等。

参数化深度神经网络的数据集生成过程如图2所示,按照如下流程展开:

(1)首先通过三维建模获得一系列零件族obj模板库;

(2)然后依次在零件族obj模型表面进行固定点数均匀采样和最远点采样,获得一系列零件族点云模板库,零件族点云模板库中的每个点云文件均属于模板点云;

(3)将单个零件族obj文件添加至blender渲染引擎,使用仿真相机进行多角度拍摄,获得blender渲染深度图;

(4)通过仿真相机的内参与外参转换,将渲染深度图转化为点云图,并进行最远点采样,获得仿真多视角点云图;

(5)点云模板库和仿真多视角点云图共同构成参数化深度神经网络的数据集。

参数化深度神经网络的训练过程如图3所示,总体损失函数由两部分组成,一是分类损失函数,二是对比损失函数。其中分类损失函数用于零件族的分类,包括但不限于交叉熵损失函数。对比损失函数用于实现在特征向量空间内,同类型的零件相距较近,不同类型的零件相距较远,对比损失函数的表达式如下所示:

其中,k表示样本对个数,di表示两个描述子之间的欧式距离,yi表示第i对样本的标签是否匹配,yi=1表示匹配,yi=0表示不匹配,margin表示设定的距离阈值。

在现有技术中,针对点云的卷积神经网络一般用于整个点云数据的分类,即判断输入的点云属于哪一个物品种类。本发明实施例中,针对参数化零件,使用点云卷积神经网络提取点云特征,采用分类损失函数和对比损失函数对特征提取进行约束,使得在特征向量空间中同类型的零件族相距较近,不同类型的零件族相距较远,其中度量特征空间下的距离用欧式距离来度量。网络训练完成后获得描述子映射函数d,在特征向量空间中,通过该映射函数可以线下构建不同参数化零件族的流形。

三、获取目标模板

输入:特征向量空间中的目标点和流形

输出:流形表面中距离目标点最近的特征点和目标模板

参数化深度神经网络获取目标模板的过程如图4所示,在特征向量空间中,已事先离线训练获得不同类别零件族的流形,其中一个流形仅代表一种零件族,流形上的每个点均代表该零件族的一个具体参数化零件,包含详细的零件参数信息。通过计算在特征向量空间中,流形表面距离目标点最近的特征点,获取目标物体的具体参数值以及对应的目标模板,其中距离采用欧式距离度量。

四、参数化零件位姿估计

输入:去除背景后的目标点云和参数化零件的目标模板

输出:场景内参数化零件的位置和姿态

在获得目标点云和目标模板后,采用最近点迭代算法(icp算法)进行配准,具体操作流程如下:

a1)搜索初始点云中每个点在模板点云中的距离最近点,其中所述模板点云是基于通过三维建模获得的零件obj文件,通过在零件obj文件表面均匀采样和最远点采样后获得的点云文件,可用于后续的零件位姿估计,零件族点云模板库中的每个点云文件都属于模板点云;

a2)使用方向向量阈值剔除错误点,并计算平移向量ti和旋转矩阵ri;

a3)寻找一个使得目标点云和目标模板的对应点距离均方误差最小的平移向量ti和旋转矩阵ri;

a4)按照平移向量ti和旋转矩阵ri旋转平移旋转初始点云后,如果达到阈值要求或者迭代次数达到上限则结束,否则返回a1)继续迭代。

icp算法操作时需要调节最大相关距离和最大迭代次数等关键参数。

五、机械臂运动规划

输入:参数化零件的位姿信息及场景障碍物信息

输出:机械臂运动轨迹

首先需要进行运动学逆解求解,将抓取时的末端位姿从笛卡尔空间中转化为机械臂关节空间内,然后通过运动规划算法计算在机械臂关节空间内初始位姿与末端位姿的连接轨迹,运动规划算法包括但不限于:快读扩展随机树算法(rrt算法)、随机路标法(prm)、a*算法。计算过程中利用碰撞检测工具保证机械臂在抓取过程中不会发生碰撞现象。机械臂末端沿连接轨迹到达目标位姿,闭合夹爪并将参数化零件放置指定位置,完成抓取任务。

本发明的背景部分可以包含关于本发明的问题或环境的背景信息,而不一定是描述现有技术。因此,在背景技术部分中包含的内容并不是申请人对现有技术的承认。

以上内容是结合具体/优选的实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,其还可以对这些已描述的实施方式做出若干替代或变型,而这些替代或变型方式都应当视为属于本发明的保护范围。在本说明书的描述中,参考术语“一种实施例”、“一些实施例”、“优选实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。尽管已经详细描述了本发明的实施例及其优点,但应当理解,在不脱离专利申请的保护范围的情况下,可以在本文中进行各种改变、替换和变更。

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