本发明涉及机械臂学习领域,更具体地,涉及一种基于协同注意力机制的机械臂指定物体抓取方法。
背景技术:
解决机械臂抓取问题的方法主要分为分析方法和经验方法两种。分析方法是利用物体属性进行规则分析从而获得抓取策略。经验方法则是深度学习即数据驱动方法,通过提取物体的特征得到最优的抓取策略。
当前大多数经验方法应用的任务都是全局抓取任务即从工作空间中随机地抓取一个物体,侧重于抓取的成功与否。指定物体抓取任务是从杂乱的场景中抓取特定的物体,对于抓取的成功率与物体的正确性均要考虑。
现有的指定物体抓取任务的方法有两种,一种是用目标检测来定位物体,这意味着如果目标物体是一种全新的、模型未见过的物体则算法无法将该物体检测出来。因此该方法无法用于新物体,泛用性比较低;另一种方法可以泛化到抓取新的物体,但该没有充分利用目标物品的检索信息与工作空间中目标物体之间的关系,仅仅是简单地将它们融合一起再进行预测,因此无法知道工作空间图像的哪个特征与目标检索信息是高度相关的,导致抓取目标的正确率较低。
技术实现要素:
本发明为克服上述现有技术中机械臂抓取指定物体的正确率低和不能抓取到的问题,提供一种基于协同注意力机制的机械臂指定物体抓取方法,该方法训练一个端到端的对工作空间进行像素级别抓取预测的深度神经网络,能够使工作任务应用在全新、模型未见过的物体上。并通过使用协同注意力机制,使得神经网络高效地从工作空间中提取检索信息的特征并忽视其余不相干信息的特征。
为解决上述技术问题,本发明采用的技术方案是:提供一种基于协同注意力机制的机械臂指定物体抓取方法,包括以下步骤:
步骤一:将目标物体放入工作空间中,通过拍摄获得检索数据,包括检索图片和生成目标物体的掩膜;将目标物体和其他物体一起放入工作空间中,通过拍摄获得工作空间数据,包括工作空间图片、目标物体掩膜和其他物体的掩膜;
步骤二:将检索数据和工作空间数据输入深度神经网络,进行深度神经网络训练,深度神经网络为带约束的协同注意力网络;
步骤三:将完成训练的深度神经网络模型应用于真实的物体抓取环境中。
该方法主要用于垂直平面抓取,给定仅包含目标物体的检索图片与包含目标物体在内的许多物体的工作空间图片,模型能够输出工作空间图片的目标物体的像素级别抓取功能图。抓取功能可以分为可抓取、不可抓取和背景三种。为了降低学习过程的复杂性,需要对旋转角度进行离散,因此一张输入的工作空间图片可以获得16个抓取角度的抓取功能图。所以整个抓取功能图可以表示为:
i*,h*,w*=argmaxi,h,wg(i,h,w)
其中g(i,h,w)表示旋转角度和图像位置下可抓取功能的置信度。(h*,w*)为图像空间机械臂终端要到达的位置,i*表示终端转动
优选的,所述协同注意力网络是一个参数化的模型包括感知模块和协同注意力机制模块和损失函数模块,所述协同注意力网络的输出对应工作空间图片的预测的抓取功能图,训练目标函数为:
其中,θ*为;
输入为两张从单目摄像头拍摄的彩色图像分别是检索图片和工作空间图片。首先使用resnet18作为检索图片和工作空间图片的特征提取器也就是感知模块,两个输入的特征提取器共享相同的权重。检索图片和工作空间图片提取出来的特征分别用
优选的,所述协同注意力网络的训练步骤为:
s1:所述感知模块提取检索图片和工作空间图片的特征,得到检索图片的特征图
s2:协同注意力机制模块将检索图片特征和工作空间图片特征映射到另一个特征空间从而得到
通过对互相关图的每一列进行softmax操作,得到了注意力图,注意力图的值可以由下面的式子算出:
其中,
其中
s3:通过小化损失函数,对协同注意力网络进行优化。
优选的,采样工作空间中物体的掩膜mt和mo得到
其中,
通过最小化负信息熵作为目标物体的特征概率密度的训练目标,点积之后的高响应能够集中在检索信息的区域,也就是最小化负信息熵
其中,ai,j表示第i行第j列的检索图片与工作空间图片特征之间的相似度的概率密度;mdt为对工作空间的目标物体掩膜的下采样结果;
对于其他物体的区域则是相反,点积之后的响应在其他物体区域能够尽可能的小且分散,因此要最大化负信息熵
其中,ith为设置的阈值,
对于背景区域来说,其目的与目标区域类似。每个在工作空间中背景区域的特征,能够与检索图片背景区域中的特征的点积结果响应更高。故使用交叉熵
其中,
结合标签掩膜来计算损失函数,其中属于目标物体但不属于抓取区域的像素,标签掩膜对应位置上的像素的值设为
其中,yijk表示第i行第j列第k个通道的抓取标签;mijk第i行第j列第k个通道的权重;gijl表示第i行第j列第k个通道的抓取功能图;h为高;w为宽;
协同注意力网络最终的损失函数的公式为:
其中,
通过使用协同注意力机制,能够从工作空间中寻找到和检索图片中目标物体区域特征高度相关的特征,从而使得两个图片中对应区域的特征进行互相关操作有较高的响应值。利用交叉熵的特点,让互相关的两个特征的点积通过softmax操作后得到高的概率值。而对于工作空间中其他物体在检索图片中没有出现的情况,使用信息熵使得其特征的权重尽可能地平均分布在检索图片中的每一个区域。通过这样的训练,模型可以知道工作空间图像的哪个特征与检索信息是高度相关的。
优选的,所述检索图片的特征图和所述工作空间图片的特征图的大小较原图小。特征图为原图的八分之一,可以减少特征提取和协同注意力机制模块的计算量。
优选的,在步骤一中,数据获取完成后进行试错抓取,没有成功抓取目标物体,记录抓取点对应的像素位置、抓取角度和抓取失败标签;成功抓取目标物体,将抓取点对应的像素位置、抓取角度和抓取标签与步骤一中的数据一起保存。
优选的,在进行步骤二前,对工作空间数据进行预处理,根据目标物体掩膜、其他物体掩膜和抓取标签生成标签掩膜;对工作空间图片旋转若干个角度,对应的标签和标签掩膜进行相应的旋转,通过抓取角度,只保留旋转之后平行于水平抓取方向的数据。
优选的,在所述步骤三中,在真实的物体抓取环境中进行物体抓取的步骤为:
s1:存储目标物体的检索图片;
s2:拍摄工作空间的彩色图和深度图,并选择要抓取的目标物体,挑选出存储好的目标物体的检索数据;
s3:将检索图片和彩色图进行归一化处理,并且彩色图需要旋转若干个角度传入模型,得到若干个抓取功能图;
s4:根据抓取功能图中对应抓取通道的最大值,获得图像像素中响应最高的位置以及抓取角度;
s5:动学求解机械臂六轴执行角度,到达物体正上方,再根据深度信息确定高度,执行抓取。
与现有技术相比,本发明的有益效果是:通过同时输入检索图片和工作空间图片,方法能够实时,有效,快速地根据检索图片信息从工作空间图片中输出目标物体的抓取功能图。即使是全新的,模型未见过的物体,模型同样能够做到输出正确的物体的抓取功能图,并且具有较高的抓取准确率。
附图说明
图1是本发明的一种基于协同注意力机制的机械臂指定物体抓取方法的流程图;
图2是本发明的一种基于协同注意力机制的机械臂指定物体抓取方法的协同注意力网络训练样本示意图;
图3是本发明的一种基于协同注意力机制的机械臂指定物体抓取方法的网络结构示意图;
图4是本发明的一种基于协同注意力机制的机械臂指定物体抓取方法的注意力机制模块计算示意图;
图5是本发明的一种基于协同注意力机制的机械臂指定物体抓取方法的物体抓取过程示意图。
具体实施方式
附图仅用于示例性说明,不能理解为对本专利的限制;为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。附图中描述位置关系仅用于示例性说明,不能理解为对本专利的限制。
下面通过具体实施例,并结合附图,对本发明的技术方案作进一步的具体描述:
实施例1
如图1-5所示为一种基于协同注意力机制的机械臂指定物体抓取方法的实施例,包括以下步骤:
步骤一:在仿真环境中设置工作空间,分别需要放置一块背景纹理,摄像头,带二指夹持器的机械臂。
将目标物体放入工作空间中,如图2所示,通过拍摄获得检索数据,包括检索图片iq和生成目标物体的掩膜mq;将目标物体和其他物体一起放入工作空间中,通过拍摄获得工作空间数据,包括工作空间图片iw、目标物体掩膜mt和其他物体的掩膜mo;数据获取完成后进行试错抓取,没有成功抓取目标物体,记录抓取点对应的像素位置、抓取角度和抓取失败标签;成功抓取目标物体,将抓取点对应的像素位置、抓取角度和抓取标签与步骤一中的数据一起保存。
对工作空间数据进行预处理,根据目标物体掩膜、其他物体掩膜和抓取标签生成标签掩膜;对工作空间图片旋转16个角度,对应的标签和标签掩膜进行相应的旋转,通过抓取角度,只保留旋转之后平行于水平抓取方向的数据。
步骤二:将检索数据和工作空间数据输入深度神经网络,进行深度神经网络训练,深度神经网络如图3所示为带约束的协同注意力网络,是一个参数化的模型,包括感知模块和协同注意力机制模块和损失函数模块,所述协同注意力网络的输出对应工作空间图片的预测的抓取功能图,训练目标函数为:
其中,θ*为;
具体的训练步骤为:
s1:所述感知模块提取检索图片和工作空间图片的特征,得到检索图片的特征图
s2:协同注意力机制模块将检索图片特征和工作空间图片特征映射到另一个特征空间从而得到
通过对互相关图的每一列进行softmax操作,得到了注意力图,注意力图的值可以由下面的式子算出:
其中,
其中
s3:通过小化损失函数,对协同注意力网络进行优化。
如图4所示,损失函数的具体的计算流程,采样工作空间中物体的掩膜mt和mo得到
其中,
通过最小化负信息熵作为目标物体的特征概率密度的训练目标,点积之后的高响应能够集中在检索信息的区域,也就是最小化
其中,ai,j表示第i行第j列的检索图片与工作空间图片特征之间的相似度的概率密度;mdt为对工作空间的目标物体掩膜的下采样结果;
对于其他物体的区域则是相反,点积之后的响应在其他物体区域能够尽可能的小且分散,因此要最大化负信息熵
其中,ith为设置的阈值,
对于背景区域来说,其目的与目标区域类似。每个在工作空间中背景区域的特征,能够与检索图片背景区域中的特征的点积结果响应更高。故使用交叉熵
其中,
结合标签掩膜来计算损失函数,其中属于目标物体但不属于抓取区域的像素,标签掩膜对应位置上的像素的值设为
其中,yijk表示第i行第j列第k个通道的抓取标签;mijk第i行第j列第k个通道的权重;gijl表示第i行第j列第k个通道的抓取功能图;h为高;w为宽;
协同注意力网络最终的损失函数的公式为:
其中,
步骤三:如图4所示,将完成训练的深度神经网络模型应用于真实的物体抓取环境中,具体包括以下步骤:
s1:存储目标物体的检索图片;
s2:拍摄工作空间的彩色图和深度图,并选择要抓取的目标物体,挑选出存储好的目标物体的检索数据;
s3:将检索图片和彩色图进行归一化处理,并且彩色图需要旋转16个角度传入模型,得到16个抓取功能图;
s4:根据抓取功能图中对应抓取通道的最大值,获得图像像素中响应最高的位置以及抓取角度;
s5:动学求解机械臂六轴执行角度,到达物体正上方,再根据深度信息确定高度,执行抓取。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。