一种基于深度学习的双臂协作抓取方法

文档序号:1945860 发布日期:2021-12-10 浏览:6次 >En<

阅读说明:本技术 一种基于深度学习的双臂协作抓取方法 (Two-arm cooperative grabbing method based on deep learning ) 是由 王万良 钱宇彤 尤文波 屠杭垚 陈嘉诚 潘杰 赵燕伟 于 2021-08-17 设计创作,主要内容包括:本发明公开了一种基于深度学习的双臂协作抓取方法,包括首先构建右臂抓取检测模型,通过数据集训练,来让模型达到识别未知物体的抓取位置的效果;通过在抓取检测模型的基础上加入通道剪枝训练,来得到一个轻量的左臂遮挡检测模型,大大加快检测速度;用相机采集操作画面,对图像进行尺寸上的变化和预处理,以便模型更好的操作;最后将检测到的信息按照一定逻辑通过ROS系统与机器人进行通信,以实现清除遮挡物、抓取物体的操作。本发明将深度学习与双臂协作的思想带入到非结构化的物体抓取中,提高了抓取的效率。同时由剪枝训练得到轻量级左臂遮挡检测模型,更进一步加快了操作的速度。(The invention discloses a double-arm cooperative grabbing method based on deep learning, which comprises the steps of firstly constructing a right-arm grabbing detection model, and enabling the model to achieve the effect of recognizing the grabbing position of an unknown object through data set training; a light left arm shielding detection model is obtained by adding channel pruning training on the basis of grabbing the detection model, so that the detection speed is greatly increased; acquiring an operation picture by using a camera, and carrying out size change and preprocessing on the image so as to facilitate better operation of the model; and finally, communicating the detected information with the robot through an ROS system according to a certain logic so as to realize the operations of clearing the shelters and grabbing objects. The invention brings the thought of deep learning and double-arm cooperation into unstructured object grabbing, and improves the grabbing efficiency. Meanwhile, a lightweight left arm shielding detection model is obtained through pruning training, and the operation speed is further increased.)

一种基于深度学习的双臂协作抓取方法

技术领域

本发明属于机器人智能控制与计算机视觉领域,是一种基于深度学习的双臂协作抓取方法。

背景技术

随着科学技术和社会的发展,机器人的应用领域不断扩大,逐步进入医药生化、家庭清洁、医疗康复等服务业领域中。在这些新应用领域,传统机器人已经无法满足用户需求,开发能够与环境共融的智能协作机器人是当前国内外高校、研究机构的热门、前沿领域。在一背景下,研究一种方法来打破现有机器人在杂乱环境中自主拾取、放置物体的局限性具有重要意义。

传统机器人往往工作在结构化环境中,采用人工设计的待抓取物体的特征和三维模型来建立数据库,保存抓取经验等方法。这种方法在当前越来越多的非结构化环境中暴露出极大的局限性,因为非结构化环境中,如家庭、药房等,包含大量未知物体,且待抓取物体的尺寸存在变化以及物体间存在重叠遮挡等诸多因素。针对此问题,常用的方法是基于深度学习的方法,例如神经网络等,通过迭代训练得到深度学习模型。依靠深度学习模型的鲁棒性和强泛化能力,将抓取经验迁移到未知物体的抓取上。

但一方面,为了提高抓取框检测的精确度,网络结构也越来越复杂,随之带来的是预测时间的变长以及对硬件性能要求的提高;另一方面,单机械臂在有遮挡物时抓取效率变低。因此,如何在利用深度学习方法的同时,兼顾网络的效率和实时性,同时使用双臂协作的方法提高抓取效率就成为协作机器人急需解决的一个问题。

发明内容

针对目前存在的问题,本发明提供了一种基于深度学习的双臂协作抓取方法。该方法能够在减少网络模型参数量的同时,不影响抓取的速度和精度,以满足其实时抓取的要求,也保障其在非结构环境下的自主抓取的能力。

本发明为达上述目的,所采用的技术方案为,一种基于深度学习的双臂协作抓取方法,包括以下步骤:

S1:构建右机械臂的抓取检测模型,实现对抓取位姿的估计,具体包括:

S11:抓取检测模型主干网络部分的设计:主干网络部分以Darknet-53网络为基础,以提取目标特征。

S12:抓取检测模型特征融合部分的设计:特征融合部分的设计采用类似FPN的上采样和融合的方式,融合了三种不同的特征尺度在多个尺度的特征融合图上分别做独立的抓取位置检测,提升网络在较小抓取位置处的检测精度。

S13:抓取检测模型输出结果部分的设计:输出结果部分采用多尺度预测的思想,让S12中的三种不同特征尺度的特征图分别经历一系列卷积操作后,将通道数减少到固定值,最后在此基础上进行抓取框的预测。抓取框定义为:

R={x,y,w,h,confidence,c,α} (1)

其中,x与y分别表示抓取框中心点的横坐标与纵坐标,w与h分别表示抓取框的宽度及长度,confidence表示该抓取框的置信度。本发明将机械臂抓取旋转角度θ的预测转化为预测抓取框类别c和回归部分具体角α的组合问题,定义为:

θ=c×δ+α (2)

其中,c∈{0,1,2,...,n},n∈N。将旋转角度θ从0°~180°每间隔δ为一类,依次划分为个类别;α表示检测模型回归预测的部分具体角度,α∈[0°,δ)。

S14:抓取检测模型的损失函数设计:损失函数分为中心偏移损失(Lxy)、宽高损失(Lwh)、置信度损失(Lcon)、类别损失(Lclass)以及旋转角部分具体角度损失(Lα)。上述损失函数定义为:

其中,S2表示网格的数量,B表示每个网格产生的候选框数量。表示第i个网格的第j个候选框是否负责这个对象的预测,如果负责预测,则反之,则σ()表示sigmoid函数。S2、B、σ()和含义下同。λxy表示中心偏移损失的加权系数,分别表示第i个网格的第j个候选框所预测的中心点横、纵坐标,则表示相应的真实候选框中心点横、纵坐标。其损失函数采用BCE损失函数。

其中,λwh表示宽高损失的加权系数,分别表示第i个网格的第j个候选框所预测的宽、高值,则表示相应的真实候选框的宽、高值。其损失函数采用MSE损失函数。

其中,λcon表示置信度损失的加权系数。由于图像中大部分内容是不包含待检测抓取框的,因此引入无对象加权系数λnoobj,来避免模型倾向于预测网格内无对象。表示第i个网格的第j个候选框所预测的置信度值,则表示相应的真实候选框的置信度值。

其中,λclass表示类别损失的加权系数。表示第i个网格的第j个候选框所预测的类别,则表示相应的真实候选框的类别。

其中,λα表示部分具体角度损失的加权系数。表示第i个网格的第j个候选框所预测的部分具体角,则表示相应的真实候选框的部分具体角。其损失函数采用SmoothL1函数。

故,模型总损失定义为:

Ldetect=Lxy+Lwh+Lcon+Lc+Lα (8)

S2:构建左机械臂的遮挡检测模型,实现对移除遮挡物位姿的估计,具体包括:

S21:遮挡检测模型网络的设计:左机械臂的末端抓取结构是一个依靠虹吸效应的吸盘。也就是说,它在移除遮挡物的操作上不需要像右臂抓取那样进行精确的抓取框计算。在这个情况下,以检测精度的降低来换检测速度的提高是一个不错的策略。遮挡检测模型网络是在右机械臂的抓取检测模型网络的基础上,通过对通道进行剪枝,减少网络参数冗余得来。具体剪枝步骤如下:

S22:在S21中的模型网络中,除了输出结果部分外,其余每个卷积层后都有一个BN层。对这些卷积层进行带比例因子的归一化,具体定义如下:

其中,σ2分别代表一个min-batch里的方差和均值,γ和β分别表示可训练的比例因子和偏移量。

S23:为了合理、有效地区分重要的通道和不重要的通道,本发明通过对S22中比例因子γ使用sign()函数来进行通道稀疏性训练,具体定义如下:

其中,ξ是惩罚因子。

S24:引入全局阈值η和安全阈值μ。全局阈值用来确定是否要修剪特征通道,以控制修剪比例;安全阈值防止卷积层通道的过度修剪,并保持网络连接的完整性。当S23中的比例因子γ小于η与μ二者最小值时,开始修剪通道。

S25:根据全局阈值和安全阈值为所有卷积层初始化一个剪枝遮罩。丢弃原网络结构中的maxpool层与upsample层。route层按顺序连接其接入层的剪枝遮罩,并将其接入层的遮罩作为route层的剪枝遮罩。保证所有与shortcut连接的图层都有相同的通道数。

S26:在S25的基础上,遮挡检测模型还需要在训练集上进行参数微调以及手动剪枝。

S27:迭代S22至S26,直至结果合理、有效。

S3:S1与S2中的目标检测模型在实时检测时,需要先对相机采集的输入图像进行尺寸上的预处理。最终目标检测模型预测得到待抓取物体、障碍物在像素坐标系下的抓取位姿。

S31:模型的抓取框筛选算法设计:抓取框的筛选算法能解决同一图像的多重抓取框问题,通过局部最大搜索,提取检测结果中置信度最高的抓取框。

S4:本发明采用ROS系统作为操作双机械臂的通信系统。

S41:调用左臂遮挡检测模型,识别有无遮挡物。若有,将遮挡物抓取框的位置和旋转角通过ROS话题‘shadow’发送到订阅该话题的左臂系统,以便左臂展开移除遮挡物的操作。若无,则直接进入S43。

S42:再次调用遮挡检测模型,确认无遮挡物。若有,则重复S41操作。

S43:调用右臂抓取检测模型,识别待抓取物体的抓取框。若有,将抓取框的位置和旋转角通过ROS话题‘box’发送到订阅该话题的右臂系统,以便右臂展开抓取操作。若无,则退出程序。

S44:重复S43操作至进程终止。

进一步,步骤S31所述的算法具体包括:

S311.按照置信度排列相应的抓取框;

S312.选取最大的作为初始保留框,并删除与其IOU大于设定阈值的框;

S313重复执行“2”中操作,直至遍历所有抓取框。

与现有技术相比,本发明的优点主要表现在:

1.两个机械臂使用不同的模型。右机械臂使用one-stage式目标检测模型,将预测抓取框变成一个回归问题,直接回归抓取框的中心点坐标、宽高值以及旋转角度。这使得模型在非结构环境下,检测精度不变,但检测速度大大提高,可实现实时检测。左机械臂在右臂抓取检测模型的基础上使用通道剪枝策略,在检测精度差不多的情况下,速度快了2倍。这意味这双臂协作抓取的总耗时大大减少。

2.使用双臂协作抓取来代替单臂抓取。本发明一方面充分利用了机器人资源,另一方面也为未来双臂同时完成移除遮挡物、抓取物体提供扩展思路。

附图说明

图1为本发明方法整体流程图。

图2为本发明方法中右臂抓取检测模型网络结构示意图。

图3为本发明方法中左臂遮挡检测模型网络结构生成过程图。

图4为本发明方法中待抓取物抓取框示意图。

具体实施方式

下面结合附图1-4对本发明做进一步描述。

本发明方法的流程图如图1所示,包括以下步骤:

S1:构建右机械臂的抓取检测模型,实现对抓取位姿的估计,具体包括:

S11:抓取检测模型主干网络部分的设计:主干网络部分以Darknet-53网络为基础,以提取目标特征。

S12:抓取检测模型特征融合部分的设计:特征融合部分的设计采用类似FPN的上采样和融合的方式,融合了三种不同的特征尺度,在多个尺度的特征融合图上分别做独立的抓取位置检测,提升网络在较小抓取位置处的检测精度。即当输入图像尺寸为(w,h)时,三中不同的特征尺度分别为

S13:抓取检测模型输出结果部分的设计:输出结果部分采用多尺度预测的思想,让S12中的三种不同特征尺度的特征图分别经历一系列卷积操作后,将通道数减少到固定值,最后在此基础上进行抓取框的预测。抓取框定义为:

R={x,y,w,h,confidence,c,α} (1)

其中,x与y分别表示抓取框中心点的横坐标与纵坐标,w与h分别表示抓取框的宽度及长度,confidence表示该抓取框的置信度。本发明将机械臂抓取旋转角度θ的预测转化为预测抓取框类别c和回归部分具体角α的组合问题,定义为:

θ=c×δ+α (2)

其中,c∈{0,1,2,...,n},n∈N。将旋转角度θ从0°~180°每间隔δ为一类,依次划分为个类别;α表示检测模型回归预测的部分具体角度,α∈[0°,δ)。

S14:抓取检测模型的损失函数设计:损失函数分为中心偏移损失(Lxy)、宽高损失(Lwh)、置信度损失(Lcon)、类别损失(Lclass)以及旋转角部分具体角度损失(Lα)。上述损失函数定义为:

其中,S2表示网格的数量,B表示每个网格产生的候选框数量。表示第i个网格的第j个候选框是否负责这个对象的预测,如果负责预测,则反之,则σ()表示sigmoid函数。S2、B、σ()和含义下同。λxy表示中心偏移损失的加权系数,分别表示第i个网格的第j个候选框所预测的中心点横、纵坐标,则表示相应的真实候选框中心点横、纵坐标。其损失函数采用BCE损失函数。

其中,λwh表示宽高损失的加权系数,分别表示第i个网格的第j个候选框所预测的宽、高值,则表示相应的真实候选框的宽、高值。其损失函数采用MSE损失函数。

其中,λcon表示置信度损失的加权系数。由于图像中大部分内容是不包含待检测抓取框的,因此引入无对象加权系数λnoobj,来避免模型倾向于预测网格内无对象。表示第i个网格的第j个候选框所预测的置信度值,则表示相应的真实候选框的置信度值。

其中,λclass表示类别损失的加权系数。表示第i个网格的第j个候选框所预测的类别,则表示相应的真实候选框的类别。

其中,λα表示部分具体角度损失的加权系数。表示第i个网格的第j个候选框所预测的部分具体角,则表示相应的真实候选框的部分具体角。其损失函数采用SmoothL1函数。

故,模型总损失定义为:

Ldetect=Lxy+Lwh+Lcon+Lc+Lα (8)

S2:构建左机械臂的遮挡检测模型,实现对移除遮挡物位姿的估计,具体包括:

S21:遮挡检测模型网络的设计:左机械臂的末端抓取结构是一个依靠虹吸效应的吸盘。也就是说,它在移除遮挡物的操作上不需要像右臂抓取那样进行精确的抓取框计算。在这个情况下,以检测精度的降低来换检测速度的提高是一个不错的策略。遮挡检测模型网络是在右机械臂的抓取检测模型网络的基础上,通过对通道进行剪枝,减少网络参数冗余得来。具体剪枝步骤如下:

S22:在S21中的模型网络中,除了输出结果部分外,其余每个卷积层后都有一个BN层。对这些卷积层进行带比例因子的归一化,具体定义如下:

其中,σ2分别代表一个min-batch里的方差和均值,γ和β分别表示可训练的比例因子和偏移量。

S23:为了合理、有效地区分重要的通道和不重要的通道,本发明通过对S22中比例因子γ使用sign()函数来进行通道稀疏训练,具体定义如下:

其中,ξ是惩罚因子。

S24:引入全局阈值η和安全阈值μ。全局阈值用来确定是否要修剪特征通道,以控制修剪比例;安全阈值防止卷积层通道的过度修剪,并保持网络连接的完整性。当S23中的比例因子γ小于η与μ二者最小值时,开始修剪通道。

S25:根据全局阈值和安全阈值为所有卷积层初始化一个剪枝遮罩。丢弃原网络结构中的maxpool层与upsample层。route层按顺序连接其接入层的剪枝遮罩,并将其接入层的遮罩作为route层的剪枝遮罩。保证所有与shortcut连接的图层都有相同的通道数。

S26:在S25的基础上,遮挡检测模型还需要在训练集上进行参数微调以及手动剪枝。

S27:迭代S22至S26,直至结果合理、有效。

S3:S1与S2中的目标检测模型在实时检测时,需要先对相机采集的输入图像进行尺寸上的预处理。最终目标检测模型预测得到待抓取物体、障碍物在像素坐标系下的抓取位姿。

S31:模型的抓取框筛选算法设计:抓取框的筛选算法能解决同一图像的多重抓取框问题,通过局部最大搜索,提取检测结果中置信度最高的抓取框。

该算法具体步骤为:

1.按照置信度排列相应的抓取框;

2.选取最大的作为初始保留框,并删除与其IOU大于设定阈值的框;

3.重复执行“2”中操作,直至遍历所有抓取框。

S4:本发明采用ROS系统作为操作双机械臂的通信系统。

S41:调用左臂遮挡检测模型,识别有无遮挡物。若有,将遮挡物抓取框的位置和旋转角通过ROS话题‘shadow’发送到订阅该话题的左臂系统,以便左臂展开移除遮挡物的操作。若无,则直接进入S43。

S42:再次调用遮挡检测模型,确认无遮挡物。若有,则重复S41操作。

S43:调用右臂抓取检测模型,识别待抓取物体的抓取框。若有,将抓取框的位置和旋转角通过ROS话题‘box’发送到订阅该话题的右臂系统,以便右臂展开抓取操作。若无,则退出程序。

S44:重复S43操作至进程终止。

右臂抓取检测模型网络结构如图2所示。其中,CBL代表由一个卷积核,一个BN层和一个Relu激活函数组成的卷积块。

左臂遮挡检测模型网络结构生成过程如图3所示。首先,需要把右臂抓取检测模型网络拿来预训练,然后再每个BN层赋予比例因子之后进行稀疏训练。该训练结果会区分重要的和不重要的通道。本发明剪去不重要的通道(比例因子小的通道),得到一个半成品、待微调的新网络。之后根据经验在超参数上微调新网络,得到更进一步的半成品网络。最后对新的半成品网络进行评估,如果效果不行就继续迭代剪枝,直至效果合理、有效。此时,一个超轻量级遮挡检测模型网络就诞生了。

待抓取物抓取框如图4所示。两条较粗的边框线段代表二指夹爪落爪抓取的位置。

本说明书实例所述的内容仅仅是对发明构思的实现形式的列举,本发明的保护范围不应当被视为仅限于实例所陈述的具体形式,本发明的保护范围也及于本领域技术人员根据本发明构思所能够想到的等同技术手段。

14页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种手足切换多模态四足特种机器人

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!