视觉机器人抓取系统的制作方法

文档序号:24274446发布日期:2021-03-16 22:40阅读:137来源:国知局
视觉机器人抓取系统的制作方法

本实用新型涉及机器人技术领域,尤其涉及一种视觉机器人抓取系统。



背景技术:

传统视觉机器人使用特征描述处理目标检测问题,而随着目标物体类别的增多,特征提取变得越来越麻烦,计算量呈指数级增加,影响机器人操作的实时性。

传统视觉机器人在执行目标物体的定位与抓取等任务中大多采用“示教”方式,这种方式不具备泛化能力,当待抓取物体位置和形状发生改变时,机器人不能进行自动调整进而导致作业失败。因而灵活性差、稳定性不足是传统视觉机器人需要解决的问题。



技术实现要素:

本实用新型要解决的技术问题是如何提高机器人抓取物品的灵活性和可靠性,本实用新型提出了一种视觉机器人抓取系统。

根据本实用新型实施例的视觉机器人抓取系统,包括:

工作台,用于放置待抓取目标;

图像获取装置,所述图像获取装置位于所述工作台的上方,用于获取所述待抓取目标的初始图像;

计算装置,与所述图像获取装置通信连接,用于接收所述初始图像,并将所述初始图像输入预先训练的多尺度特征提取模型,计算得到处理图像,以获取所述待抓取目标的抓取姿态信息;

机器人,与所述计算装置通信连接,用于接收所述计算装置基于所述抓取姿态信息发出的控制信号,并基于所述控制信号调整至对应的抓取位置抓取所述待抓取目标。

根据本实用新型实施例的视觉机器人抓取系统,将图像获取装置获取的待抓取目标的初始图像输入预先训练的多尺度特征提取模型后,可以处理得到机器人的抓取姿态信息,以控制机器人对待抓取目标进行自动、高效抓取。该抓取系统可以实现对目标物体的快速识别定位与抓取预测,结合机器人学的运动控制完成视觉机器人的识别与抓取任务,有效提高了系统的实时性与稳定性。

根据本实用新型的一些实施例,所述机器人包括:

六轴机械臂;

机械臂驱动器,所述机械臂驱动器与所述计算装置和所述六轴机械臂均通信连接,所述机械臂驱动器接收所述计算装置发出的控制指令,并基于所述控制指令控制所述六轴机械臂运动至所述抓取位置抓取所述待抓取目标。

在本实用新型的一些实施例中,所述六轴机械臂在抓取位置和初始位置之间切换,每完成一次抓取,所述六轴机械臂自动复位至所述初始位置。

根据本实用新型的一些实施例,所述计算装置为计算机,所述图像获取装置为深度相机。

在本实用新型的一些实施例中,所述工作台具有放置所述待抓取目标的放置区域,所述图像获取装置位于所述放置区域的正上方。

根据本实用新型的一些实施例,所述抓取系统还包括:调节装置,所述图像获取装置设于所述调节装置,所述调节装置对所述图像获取装置的高度和角度进行调节。

在本实用新型的一些实施例中,所述待抓取目标包括:环形线缆、快递盒、收纳盒、剪刀、螺丝刀、牙刷以及螺丝钉。

根据本实用新型的一些实施例,所述计算装置,包括:

卷积神经网络特征提取模块,用于基于darknet-53骨架,搭建卷积神经网络特征提取模型;

标准卷积分离模块,与所述卷积神经网络特征提取模块通讯连接,所述标准卷积分离模块用于调用卷积层创建函数把所述卷积神经网络特征提取模型中的可分离的标准卷积分离成单位卷积,构成基模型;多尺度特征提取模块,与所述标准卷积分离模块通讯连接,所述多尺度特征提取模块用于采用跳跃连接的方式对所述基模型中不同卷积层之间进行连接,构建多尺度特征提取模型;

模型训练模块,与所述多尺度特征提取模块通讯连接,所述模型训练模块用于训练所述多尺度特征提取模型,以获得所述预先训练的多尺度特征提取模型。

根据本实用新型的一些实施例,所述模型训练模块包括:

数据集创建模块,用于获取多尺度数据集;

训练模块,与所述数据集创建模块通讯连接,所述训练模块用于基于所述多尺度数据集,采用迁移学习、并行运算和gpu加速方法中的至少一种方法对所述多尺度特征提取模型进行训练。

根据本实用新型的一些实施例,所述模型训练模块还包括:

模型评估优化模块,与所述训练模块通讯连接,所述模型评估优化模块用于对训练后的多尺度特征提取模型进行评估优化。

附图说明

图1为根据本实用新型实施例的视觉机器人抓取系统示意图;

图2为根据本实用新型实施例的视觉机器人抓取方法流程图。

附图标记:

抓取系统100,

工作台10,图像获取装置20,计算装置30,机器人40。

具体实施方式

为更进一步阐述本实用新型为达成预定目的所采取的技术手段及功效,以下结合附图及较佳实施例,对本实用新型进行详细说明如后。

如图1所示,根据本实用新型实施例的视觉机器人抓取系统100,包括:工作台10、图像获取装置20、计算装置30以及机器人40。

其中,工作台10用于放置待抓取目标,图像获取装置20位于工作台10的上方,用于获取待抓取目标的初始图像。

计算装置30与图像获取装置20通信连接,用于接收初始图像,并将初始图像输入预先训练的多尺度特征提取模型,计算得到处理图像,以获取待抓取目标的抓取姿态信息。

机器人40与计算装置30通信连接,用于接收计算装置30基于抓取姿态信息发出的控制信号,并基于控制信号调整至对应的抓取位置抓取待抓取目标。

这里的“基于处理图像,获取待抓取目标的抓取姿态信息”,可以理解为获取处理图像的待抓取框和待抓取框的坐标信息,将坐标信息通过坐标系转化计算,获得机器人的抓取姿态信息。

例如,基于处理图像,获取待抓取框的四个顶点的坐标信息:(x1,y1),(x2,y2),(x3,y3),(x4,y4);

按下述公式计算机器人的抓取姿态信息(x0,y0,h0,w0,θ0):

其中,(x0,y0)为待抓取框的中心对应的坐标,h0为机器人的二指平行抓手的最大高度,w0为二指平行抓手的手指宽度,θ0为待抓取框相对于水平面的角度。

由此,可以基于获得的计算机器人的抓取姿态信息(x0,y0,h0,w0,θ0)调整机器人至对应的抓取位置,实现对待抓取目标的抓取。

根据本实用新型实施例的基于深度学习的视觉机器人抓取系统100,将图像获取装置20获取的待抓取目标的初始图像输入预先训练的多尺度特征提取模型后,可以处理得到机器人40的抓取姿态信息,以控制机器人40对待抓取目标进行自动、高效抓取。该抓取系统100可以实现对目标物体的快速识别定位与抓取预测,结合机器人40学的运动控制完成视觉机器人40的识别与抓取任务,有效提高了系统的实时性与稳定性。

根据本实用新型的一些实施例,如图1所示,机器人40包括:六轴机械臂和机械臂驱动器。

其中,机械臂驱动器与计算装置30和六轴机械臂均通信连接,机械臂驱动器接收计算装置30发出的控制指令,并基于控制指令控制六轴机械臂运动至抓取位置抓取待抓取目标。

在本实用新型的一些实施例中,六轴机械臂在抓取位置和初始位置之间切换,每完成一次抓取,六轴机械臂自动复位至初始位置。

需要说明的是,在控制机器人进行抓取任务时,需通过获取的待抓取目标的原始图像获得抓取框的信息,进而通过抓框信息计算转化为机器人的抓取姿态信息,将机器人复位至原始设定位置,可以便于上述坐标信息的计算转化。

根据本实用新型的一些实施例,计算装置为计算机,图像获取装置为深度相机。

在本实用新型的一些实施例中,工作台10具有放置待抓取目标的放置区域,图像获取装置20位于放置区域的正上方。由此,便于图像获取装置20对待抓取目标的图像采集。

根据本实用新型的一些实施例,抓取系统100还包括:调节装置,图像获取装置20设于调节装置,调节装置对图像获取装置20的高度和角度进行调节。例如,调节装置可以为可升降旋转的支架,图像获取装置20设于支架的端部,通过支架可以方便地调节图像获取装置20的高度和角度。

在本实用新型的一些实施例中,待抓取目标包括:环形线缆、快递盒、收纳盒、剪刀、螺丝刀、牙刷以及螺丝钉。也就是说,抓取系统100可以用于抓取环形线缆、快递盒、收纳盒、剪刀、螺丝刀、牙刷以及螺丝钉等。可以理解的是,上述待抓取目标仅是用于举例说明,而不应理解为对本实用新型的限制。

根据本实用新型的一些实施例,计算装置30,包括:

卷积神经网络特征提取模块,用于基于darknet-53骨架,搭建卷积神经网络特征提取模型;

标准卷积分离模块,与卷积神经网络特征提取模块通讯连接,标准卷积分离模块用于调用卷积层创建函数把卷积神经网络特征提取模型中的可分离的标准卷积分离成单位卷积,构成基模型;多尺度特征提取模块,与标准卷积分离模块通讯连接,多尺度特征提取模块用于采用跳跃连接的方式对基模型中不同卷积层之间进行连接,构建多尺度特征提取模型;

模型训练模块,与多尺度特征提取模块通讯连接,模型训练模块用于训练多尺度特征提取模型,以获得预先训练的多尺度特征提取模型。

根据本实用新型的一些实施例,模型训练模块包括:

数据集创建模块,用于获取多尺度数据集;

训练模块,与数据集创建模块通讯连接,训练模块用于基于多尺度数据集,采用迁移学习、并行运算和gpu加速方法中的至少一种方法对多尺度特征提取模型进行训练。

根据本实用新型的一些实施例,模型训练模块还包括:

模型评估优化模块,与训练模块通讯连接,模型评估优化模块用于对训练后的多尺度特征提取模型进行评估优化。

采用本实用新型实施例的视觉机器人抓取系统对待抓取目标进行抓取的过程,包括:

图像获取装置获取放置在工作台上的待抓取目标的初始图像;

图像获取装置将初始图像发送给计算装置,以供计算装置将初始图像输入预先训练的多尺度特征提取模型,计算得到处理图像,并基于处理图像,获取待抓取目标的抓取姿态信息;

机器人基于抓取姿态信息,抓取待抓取目标。

需要说明的是,预先训练的多尺度特征提取模型可以通过计算装置30中的系统构建,具体的,计算装置30包括:

卷积神经网络特征提取模块,可以基于darknet-53骨架,通过tensorflow平台搭建卷积神经网络特征提取模型;

标准卷积分离模块,可以通过调用卷积层创建函数将卷积神经网络特征提取模型中的可分离的标准卷积分离成单位卷积,构成基模型;

多尺度特征提取模块,可以采用跳跃连接的方式对基模型中不同卷积层之间进行连接,构建多尺度特征提取模型;

数据集创建模块,可以获取多尺度数据集;例如,利用深度相机或通过云端已有数据集获取待训练图片;也就是说,可以通过深度相机拍摄获取待训练图片,也可以通过云端已有数据中获取待训练图片。然后对待训练图片进行真实抓取框标注,并通过对待训练图片进行剪裁和/或旋转处理以扩增待训练图片,获得多尺度数据集。

训练模块,可以通过数据集对搭建的多尺度特征提取模型进行训练,训练过程中使用迁移学习、并行运算和gpu加速方法中的至少一种来提高模型训练速度;需要说明的是,在获取待训练图片后,需要对待训练图片进行真实抓取框的标注。为了扩增待训练图片,可以对待训练图片进行裁剪获得不同大小尺寸的待训练图片;也可以对待训练图片进行旋转处理获得不同旋转角度的待训练图片;当然还可以既对待训练图片进行裁剪处理,又对待训练图片进行旋转处理,以扩增待训练图片数量。

模型评估优化模块,可以对训练后的多尺度特征提取模型进行评估优化,当多尺度特征提取模型计算得到的处理图像满足预设要求时,完成多尺度特征提取模型的训练。

其中,迁移学习可以采用常用的公开数据集pascalvoc数据集对上述搭建好的多尺度特征提取模型进行迁移学习,pascalvoc数据集包含有20种物体类别。

模型搭建过程具体包括:通过tensorflow1.15深度学习平台搭建卷积神经网络特征提取模型,模型搭建过程中首先调用input=common._conv2d_fixed_padding(input,filers*1,1)卷积层创建函数把标准卷积分离成单位卷积,将1*1的卷积操作加上3*3的卷积input=common._conv2d_fixed_padding(input,filers*2,3),共同构建出网络模型所需的基本模块,这些基本模块共同构成一个基模型。

在上述基模型的基础上通过跳跃连接定义shortcut=inputs,再定义inputs=inputs+shortcut作为下一层的输入来实现不同卷积层之间的连接。一个基模型产出一个元特征作为二级模型的输入,通过设定基本模块的循环次数、输入像素、卷积核数以及步长完成模型堆叠,将53层不同尺度的卷积层累积叠加起来构建所需的模型框架,用于提取图像特征、获取学习权重。

在权重优化过程中,选用交叉熵作为损失函数。交叉熵损失函数的定义如下:

其中,c表示损失,y表示实际值,a表示输出值,n表示样本总数,x表示样本。

使用自适应梯度下降优化器作为权重更新的主要方法,最后使用归一化指数函数softmax输出最大概率值,并作为最后的预测值输出。训练过程中的权重放置在chackpiont文件夹中,其他文件夹还包括数据集文件夹、网络模型文件夹以及一些配置说明类文件夹。在使用过程中,可根据具体应用场景在此修改所需的文件和参数,进行方法的优化配置。由此,完成在darknet-53网络结构的基础上增加分离卷积和跳跃连接实现多尺度特征提取模型的搭建。

搭建后的训练过程具体包括:

首先,下载pascalvoc2007和pascalvoc2012的数据集,其次使用darknet官网提供的针对voc数据集处理标签的脚本生成voc数据集的标签,通过修改脚本文件将自己的数据集、类别替换进来,并相应的修改数据配置文件、模型配置文件、标签配置文件和数据格式。然后下载预训练的网络模型参数,开始迁移训练。

下面参照附图以一个具体的实施例详细描述根据本实用新型的视觉机器人抓取系统100。值得理解的是,下述描述仅是示例性描述,而不是对本实用新型的具体限制。

本实用新型提出了一种视觉机器人抓取系统100,主要解决传统视觉检测方法在目标检测与分类过程中实时性不足,以及传统机器人在抓取预测过程中稳定性差的问题。

如图1所示,视觉机器人抓取系统100包括:工作台10、图像获取装置20、计算装置30及机器人40。

其中,工作台10用于放置待抓取目标,图像获取装置20位于工作台10的上方,用于获取待抓取目标的初始图像。

计算装置30与图像获取装置20通信连接,用于接收初始图像,并将初始图像输入预先训练的多尺度特征提取模型,计算得到处理图像,以获取待抓取目标的抓取姿态信息。

机器人40与计算装置30通信连接,用于接收计算装置30基于抓取姿态信息发出的控制信号,并基于控制信号调整至对应的抓取位置抓取待抓取目标。

这里的“基于处理图像,获取待抓取目标的抓取姿态信息”,可以理解为获取处理图像的待抓取框和待抓取框的坐标信息,将坐标信息通过坐标系转化计算,获得机器人的抓取姿态信息。

例如,基于处理图像,获取待抓取框的四个顶点的坐标信息:(x1,y1),(x2,y2),(x3,y3),(x4,y4);

按下述公式计算机器人的抓取姿态信息(x0,y0,h0,w0,θ0):

其中,(x0,y0)为待抓取框的中心对应的坐标,h0为机器人的二指平行抓手的最大高度,w0为二指平行抓手的手指宽度,θ0为待抓取框相对于水平面的角度。

由此,可以基于获得的计算机器人的抓取姿态信息(x0,y0,h0,w0,θ0)调整机器人至对应的抓取位置,实现对待抓取目标的抓取。

如图1所示,机器人40包括:六轴机械臂和机械臂驱动器。

其中,机械臂驱动器与计算装置30和六轴机械臂均通信连接,机械臂驱动器接收计算装置30发出的控制指令,并基于控制指令控制六轴机械臂运动至抓取位置抓取待抓取目标。

六轴机械臂在抓取位置和初始位置之间切换,每完成一次抓取,六轴机械臂自动复位至初始位置。

需要说明的是,在控制机器人进行抓取任务时,需通过获取的待抓取目标的原始图像获得抓取框的信息,进而通过抓框信息计算转化为机器人的抓取姿态信息,将机器人复位至原始设定位置,可以便于上述坐标信息的计算转化。

计算装置为计算机,图像获取装置为深度相机。

工作台10具有放置待抓取目标的放置区域,图像获取装置20位于放置区域的正上方。由此,便于图像获取装置20对待抓取目标的图像采集。

抓取系统100还包括:调节装置,图像获取装置20设于调节装置,调节装置对图像获取装置20的高度和角度进行调节。例如,调节装置可以为可升降旋转的支架,图像获取装置20设于支架的端部,通过支架可以方便地调节图像获取装置20的高度和角度。

待抓取目标包括:环形线缆、快递盒、收纳盒、剪刀、螺丝刀、牙刷以及螺丝钉。也就是说,抓取系统100可以用于抓取环形线缆、快递盒、收纳盒、剪刀、螺丝刀、牙刷以及螺丝钉等。可以理解的是,上述待抓取目标仅是用于举例说明,而不应理解为对本实用新型的限制。

计算装置30,包括:

卷积神经网络特征提取模块,用于基于darknet-53骨架,搭建卷积神经网络特征提取模型;

标准卷积分离模块,与卷积神经网络特征提取模块通讯连接,标准卷积分离模块用于调用卷积层创建函数把卷积神经网络特征提取模型中的可分离的标准卷积分离成单位卷积,构成基模型;多尺度特征提取模块,与标准卷积分离模块通讯连接,多尺度特征提取模块用于采用跳跃连接的方式对基模型中不同卷积层之间进行连接,构建多尺度特征提取模型;

模型训练模块,与多尺度特征提取模块通讯连接,模型训练模块用于训练多尺度特征提取模型,以获得预先训练的多尺度特征提取模型。

模型训练模块包括:

数据集创建模块,用于获取多尺度数据集;

训练模块,与数据集创建模块通讯连接,训练模块用于基于多尺度数据集,采用迁移学习、并行运算和gpu加速方法中的至少一种方法对多尺度特征提取模型进行训练。

模型训练模块还包括:

模型评估优化模块,与训练模块通讯连接,模型评估优化模块用于对训练后的多尺度特征提取模型进行评估优化。

在对目标物体抓取前,预先搭建训练多尺度特征提取模型。其中,待训练的数据集的采集使用云端已有的数据集和通过深度相机自主采集完成,数据集的预处理采用labelimg软件进行标注,通过剪裁、旋转对数据集进行扩增,并将标注好的真实值框进行聚类,筛选出主要的几类抓取框作为候选框。

搭建多尺度特征提取模型对已创建的数据集进行特征提取,模型搭建过程中,以darknet-53骨架为基础,配合分离卷积、旋转卷积、跳跃连接等思想,搭建单级检测模型框架,设定iou值作为匹配标准,使用交叉熵函数作为损失函数。

训练过程中使用迁移学习、并行运算和gpu加速等方法加快训练速度。

以cornelldataset为基准,做五折交叉和消融实验,评估识别速度、泛化性和鲁棒性。

为实现物体抓取,需确定目标物体在机械臂坐标系中的位姿,然后将物体的位姿通过坐标转换转成重新定义的抓取框,重新定义的抓取框只需要回归边框的修偏值即可。

具体地,结合图2所示,计算机将初始图像输入预先训练的多尺度特征提取模型,获取所述待抓取目标的抓取姿态信息的步骤如下:

步骤一:多尺度数据集创建。首先利用深度相机获取待抓取目标的图片信息,将这些图片构建为目标检测数据集,通过裁剪、旋转对该数据集进行扩增。扩增后的数据集的预处理采用labelimg软件将图像中目标物体名称和边界框进行人工标注。将图像中被标注的部分定义为正样本,未被标注的部分定义为负样本。

步骤二:多尺度特征提取模型。搭建多尺度特征提取模型对上述创建完成的数据集进行特征提取。

步骤三:模型训练。对上述搭建完成的多尺度特征提取模型进行训练,训练过程中使用迁移学习、并行运算和gpu加速等方法加快训练速度。

其中,迁移学习利用darknet/script/imagenet_laber.py将imagenet数据集的格式转换为训练darknet需要的格式生成每张图片的label,保存在/labels文件夹下;创建一个文件data/imagenet/imagenet.name,将imagenet的1000个分类写入文件;创建一个文件data/imagenet/imagenet.data,指定类别数,训练集和测试集的位置等;修改网络结构,新建一个yolov3-imagenet.cfg;修改utils/dataset.py;下载预训练权重weights/yolov3.pt,开始迁移训练。

步骤四:评估优化。模型训练完成后,以康奈尔数据集(cornelldataset)为基准,做五折交叉和消融实验,评估优化模型的识别速度、泛化性和鲁棒性。

五折交叉验证算法步骤如下:

a.将数据集cornelldataset随机分成5个包;

b.每次将其中一个包作为测试集,剩下的4个包作为训练集进行训练;

c.最后计算5次求得的分类率的平均值,作为模型的真实分辨率。

步骤五:可行性分析。若以上结果有效则进行下一步,否则返回到第二步。

步骤六:位姿转换。为实现物体抓取,需确定目标物体在机械臂坐标系中的位姿,然后将物体的位姿通过坐标转换转成重新定义的抓取框。

坐标转换与抓取框再定义计算如下:

(1)坐标转换。通过相机标定建立像素坐标系到相机坐标系的变换关系,通过手眼标定建立相机坐标系到机械臂坐标系的转换关系。具体实现步骤为:

a.使用张正友标定法获取相机的内参矩阵和畸变参数;

b.标定相机外参数矩阵,用于图像坐标与世界坐标的转换;

c.设置n个特征点(n>3),计算其世界坐标,移动机械臂工作末端到特征点,记录末端坐标,获得n组数据;

d.计算两组数据的旋转矩阵和平移矩阵,其中特征点世界坐标为a组数据,末端坐标为b组数据;

(2)抓取框再定义。

为获取目标物体的抓取位姿,采用前文所述方法将训练数据集中给出的正例抓取框的四个顶点坐标转换成五参数(x0,y0,h0,w0,θ0)表示法,五参数表示法给出了在对物体执行抓取时二指平行抓手的位置和方向。

步骤七:多尺度实时物体检测。

综上所述,利用本实用新型提出的抓取系统100,可以实现对目标物体的快速识别定位与抓取预测,结合机器人学的运动控制等相关技术完成视觉机器人的识别与抓取任务,并有效提高了系统的实时性与稳定性。

通过具体实施方式的说明,应当可对本实用新型为达成预定目的所采取的技术手段及功效得以更加深入且具体的了解,然而所附图示仅是提供参考与说明之用,并非用来对本实用新型加以限制。

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