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

一种基于三元网络的紧耦合弱监督学习的定位方法及系统与流程

2022-02-19 23:45:24 来源:中国专利 TAG:


1.本发明属于计算机视觉和机器人领域,具体涉及一种基于三元网络的紧耦合弱监督学习的定位方法及系统。


背景技术:

2.随着计算机视觉的蓬勃发展,基于深度学习的检索定位在机器人领域中展现了巨大的发展潜力。算法主要分为两类,基于全局特征的算法和基于局部特征的算法。全局特征的算法计算耗时短、对环境变化具有不变性,但对视角变化不具有不变性;相反,局部特征的算法耗时长、对视角变化具有不变性、精度相对更高。
3.因此为了得到在机器人上可实时处理的高精度检索定位方案,目前常用的检索结构是双阶段检索:首先基于全局特征进行数据库的检索排名,之后在选出的top

m中进行基于局部特征的重排名,从而得到最终的定位结果。
4.由于在这种结构中,全局特征和局部特征的处理是独立的,经过重排名后的定位精度的提升有限。


技术实现要素:

5.本发明所要解决的技术问题是提供一种基于三元网络的紧耦合弱监督学习的定位方法及系统,解决目前视觉位置识别任务的双阶段检索结构中全局特征和局部特征被割裂处理的问题,从而提升检索定位的精度。
6.为了实现上述目的,本发明采用的技术方案是:一种基于三元网络的紧耦合弱监督学习的定位方法,包括以下步骤:
7.获取图像i的全局特征和长度为n的局部特征序列;
8.基于所述全局特征和局部特征,采用重排序算法获取图像q的正样本,采用弱监督算法获取图像q的负样本,将所述图像q、正样本和负样本作为三元组网络的训练集;
9.将所述训练集分批,每一批训练集中包含多个训练元组,每个训练元组输入三元网络后解算出排序算法的损失函数和重排序阶段损失函数,并将所述排序算法的损失函数和重排序阶段损失函数加权求和,得到最终损失函数;重复迭代直到三元组网络在训练集和验证集上取得预设的结果或将完整数据集遍历设定的次数,得到确定的三元网络;
10.基于所述三元网络提取全局特征,基于全局特征进行数据库的检索排名,基于所述检索排名选出top

m,在所述top

m中进行基于局部特征距离的重排名,从而得到最终的定位结果。
11.采用预训练的deit作为待学习的深度骨干网络,沿用自然语言处理中transformer的class token<cls>对应的处理结果作为图像的全局特征;将图像i的全局特征记作g(i);
12.采用预训练的deit作为待学习的深度网络,局部特征采用gem池化层,得到长度为n的特征序列,将图像i的局部特征记作{l1(i),

,l
k
(i),

,l
n
(i)}。
13.采用欧氏距离计算全局特征之间的距离,图像q和图像r之间的全局距离为
14.d
g
(q,r)=‖g(q)

g(r)‖.(1)
15.局部距离度量的算法使用dtw算法,将图像q和图像r之间的局部距离记作d
l
(q,r)。
16.正样本挖掘分为两个阶段:首先根据当前训练阶段的模型参数计算图像库的全局特征,并在查询图像q的潜在正样本集合p中,选择全局特征距离q最近的m个样本p
m
,之后基于局部特征的重排序算法搜索p
m
中距离图像q最近的一个样本p
*
,所述p
*
作为训练元组中的正样本p。
17.训练三元组中负样本n
j
,基于全局匹配器选择,根据当前训练阶段的模型计算图像库的全局特征和全局距离,在图像q的确切负样本集合n中从小到大的顺序选择j个负样本n
j
,其中负样本n
j
满足
18.d
g
(q,p
*
) m>d
g
(q,n
j
),(2)其中m是距离阈值,m=0.1。
19.6.根据权利要求1所述的基于三元网络的紧耦合弱监督学习的定位方法,其特征在于,弱监督排序损失函数为:
20.l
g
=∑max(0,d
g
(q,p
*
) m

d
g
(q,n
j
)),(3)
21.其中n
j
是j个负样本;
22.重排序阶段损失函数为:
23.l
l
=∑max(0,d
l
(q,p
*
)

d
l
(q,n
j
)),(4)
24.其中n
j
是j个负样本。
25.最终的损失函数l:
26.l=w
g
*l
g
w
l
*l
l
,(5)
27.其中w
g
和w
l
是两个损失函数的权重,l
g
为弱监督排序损失函数,l
l
为重排序阶段损失函数,w
l
=w
g
=0.5。
28.还提供一种基于三元网络的紧耦合弱监督学习的定位系统,包括特征获取模块、训练集获取模块、三元网络训练模块以及定位模块;其中,
29.特征获取模块用于获取图像i的全局特征和长度为n的局部特征序列;
30.训练集获取模块用于根据所述全局特征和局部特征,采用重排序算法获取图像q的正样本,采用弱监督算法获取图像q负样本,将所述图像q、正样本和负样本作为三元组网络的训练集;
31.三元网络训练模块用于将所述训练集分批,每一批训练集中包含多个训练元组,每个训练元组输入三元网络后解算出排序算法的损失函数和重排序阶段损失函数,并将所述排序算法的损失函数和重排序阶段损失函数加权求和,得到最终损失函数;重复迭代直到三元组网络在训练集和验证集上取得预设的结果或将完整数据集遍历设定的次数,得到确定的三元网络;
32.定位模块用于根据所述三元网络提取全局特征,基于全局特征进行数据库的检索排名,基于所述检索排名选出top

m,在所述top

m中进行基于局部特征距离的重排名,从而得到最终的定位结果。
33.一种计算机设备,包括处理器以及存储器,存储器用于存储计算机可执行程序,处理器从存储器中读取所述计算机可执行程序并执行,处理器执行计算可执行程序时能实现
本发明所述基于三元网络的紧耦合弱监督学习的定位方法。
34.一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时,能实现本发明所述的基于三元网络的紧耦合弱监督学习的定位方法。
35.与现有的基于三元网络的弱监督学习策略相比,本发明针对双阶段检索结构提出一种紧耦合的弱监督学习策略,在学习策略中从两个层面将基于全局特征和局部特征的检索方法进行耦合,具体体现在三元网络的训练元组的挖掘策略和损失函数的定义;通过将两者耦合的方式促进彼此的学习,实现全局特征和局部特征的互相促进,从数据集中学习到更加有效的信息表征方式和特征细节;同时在训练过程中提高了两者的一致性,解决了两者在视觉位置识别任务中存在的结果冲突问题,从而在检索框架中更好地发挥了各自的优势—兼顾了实时性、高精度和环境鲁棒性。此外,学习策略还提升了模型的学习效率,大幅度地降低了模型的训练时间。
附图说明
36.图1为本发明中特征提取的示意图。
37.图2为本发明基于的图像检索结构示意图。
38.图3为本发明的紧耦合弱监督策略示意图。
39.图4为三元网络的样本示意图。
具体实施方式
40.下面结合说明书附图对本发明的具体实施方式作进一步详细的说明。
41.本发明提供一种基于三元网络的紧耦合弱监督学习的定位方法及系统,基于全局特征和局部特征,采用重排序算法获取图像q的正样本,采用弱监督算法获取图像q负样本,将所述正样本和负样本作为三元组网络的训练集;在学习策略中从选择训练样本元组和损失函数定义两个方面将全局特征和局部特征更好的耦合,实现全局特征和局部特征的互相促进,可以从训练集中学习到更加有效的信息表征方式和更加丰富的特征细节;同时在训练过程中提高两者的一致性,解决了视觉位置识别任务中两者在结果上的冲突混淆问题,从而在检索框架中更好地发挥了各自的优势—兼顾了实时性、高精度和环境鲁棒性。此外,学习策略还提升了模型的学习效率,大幅度地降低了模型训练时间。
42.本发明通过在深度网络的学习训练过程中耦合基于全局特征的排序算法和基于局部特征的重排序算法,实现全局特征和局部特征的耦合,并用于视觉位置识别(visual place recognition,vpr)任务中提升定位精度。训练网络采用三元网络,其中训练元组包括1个查询、1个正样本、j个负样本,记作(q,p,n
j
)。具体特征提取和特征距离计算由步骤a1到步骤a3实现,学习策略由步骤b1到步骤b6实现,视觉位置识别任务由步骤c实现。
43.a1.采用预训练的data

efficient image transformers(deit)作为待学习的深度骨干网络,如图1所示,沿用自然语言处理中transformer的class token<cls>对应的处理结果作为全局特征。将图像i的全局特征记作g(i).
44.a2.采用预训练的deit作为待学习的深度网络,如图1所示,局部特征采用generalized mean(gem)池化层,得到长度为n的特征序列(本发明的示例中选用n=7)。将
图像i的局部特征记作{l1(i),

,l
k
(i),

,i
n
(i)}.
45.a3.图像之间的距离计算。
46.全局特征之间的距离采用欧氏距离,图像q和图像r之间的全局距离为
47.d
g
(q,r)=‖g(q)

g(r)‖.(1)
48.局部距离度量的算法使用dtw算法,将图像q和图像r之间的局部距离记作d
l
(q,r)。
49.b1.目前的vpr数据集均为弱标注,即没有明确的1对1的数据标注,而是针对每一张查询图像q,存在一个潜在正样本集合p和确切负样本集合n,其中潜在正样本集合的含义是p中包含了图像q的最匹配的正样本但并不确定哪一个是,同时也可能包含负样本。因此vpr任务一般采取弱监督训练的策略并在训练时进行训练元组的挖掘和弱监督损失函数的定义。
50.深度模型的训练过程中不断迭代从而实现目标,目标完成程度是由损失函数来评估,即期望输出与目前输出之间的差距。
51.三元训练网络的目标是尽可能地拉近查询图像和正样本之间的距离、拉开查询图像和负样本之间的距离,三元网络训练的过程是:针对1个训练元组,其组成包括1个查询图像q,1个正样本p和多个负样本n
j
,样本的挖掘一般需要通过算法实现;
52.构建三元网络之后,将完整的训练集分批,每一批训练集中包含多个训练元组,每个训练元组输入三元过网络后解算出其对应的损失,通过对每批的损失求和并求导完成一次参数更新;不断地迭代直到模型在训练集和验证集上取得预设的结果或将完整数据集遍历设定的次数,完成模型的训练过程,用于后续的测试集测试。
53.b2.训练三元组中正样本p的选择方式。
54.传统的策略直接根据当前训练阶段的模型参数计算图像库的全局特征,并在查询图像q的潜在正样本集合p中选择全局特征距离q最近的样本作为元组中的p:
[0055][0056]
如图2所示,全局

局部匹配器即为本发明的正样本挖掘策略,分为两个阶段:首先根据当前训练阶段的模型参数计算图像库的全局特征,并在查询图像q的潜在正样本集合p中,根据公式(2)选择全局特征距离q最近的m个样本,p
m
。之后基于局部特征的重排序算法搜索p
m
中距离q最近的一个样本,p
*
,作为训练元组中的正样本p:
[0057][0058]
b3.训练三元组中负样本n
j
的选择方式。
[0059]
为了降低算法的开销,本发明采用和传统策略一致的负样本挖掘方式,即全局匹配器。根据当前训练阶段的模型计算图像库的全局特征和全局距离,在图像q的确切负样本集合n中从小到大的顺序选择j个n
j
,其中n
j
满足
[0060]
d
g
(q,p
*
) m>d
g
(q,n
j
),(4)
[0061]
其中m是距离阈值,一般使用0.1。
[0062]
如图3所示,h区域内的负样本属于hardnegatives,满足d
g
(q,p
*
)>d
g
(q,n
j
);s区域内的负样本属于semi

hardnegatives,满足d
g
(q,p
*
) m>d
g
(q,n
j
)>d
g
(q,p
*
);e区域的负样本属于easynegatives。公式(4)中的负样本的选择是为了筛选出困难(hard)和半困
难(semi

hard)的负样本。
[0063]
b4.排序算法的损失函数的计算。
[0064]
传统策略中的弱监督排序损失函数定义为:
[0065][0066]
根据步骤b2中得到的正样本p
*
,本发明将弱监督排序损失函数调整为:
[0067]
l
g
=∑max(0,d
g
(q,p
*
) m

d
g
(q,n
j
)),(6)
[0068]
其中n
j
是通过步骤b4得到的j个负样本。可以看出公式(5)和公式(6)的本质的计算思想是一致的,只是由于正样本挖掘策略不同而产生了计算上的差异。
[0069]
b5.重排序算法的损失函数的计算。
[0070]
为了进一步在模型训练过程中耦合全局特征和局部特征,我们针对重排序阶段定义损失函数:
[0071]
l
l
=∑max(0,d
l
(q,p
*
)

d
l
(q,n
j
)),(7)
[0072]
其中n
j
是通过步骤b3得到的j个负样本。
[0073]
b6.最终的损失函数的计算。
[0074]
将步骤b4和步骤b5中计算的两部分损失函数进行加权求和,实现优化空间的进一步约束以及共同优化:
[0075]
l=w
g
*l
g
w
l
*l
l
,(8)
[0076]
其中w
g
和w
l
是两个损失函数的权重。在本发明中,步骤a3中计算的图像对的全局距离和局部距离的取值相当,因此采用w
l
=w
g
=0.5.
[0077]
c.视觉识别定位任务
[0078]
基于所述三元网络提取全局特征,基于全局特征进行数据库的检索排名,基于所述检索排名选出top

m,在所述top

m中进行基于局部特征距离的重排名,从而得到最终的定位结果。
[0079]
本发明基于三元组策略训练了新的模型,用模型提取特征,完成了视觉位置识别的任务。
[0080]
如图4所示,本发明采用双阶段检索结构完成视觉识别定位任务。首先基于全局特征进行数据库的检索排名,之后在选出的top

m中进行基于局部特征距离的重排名,从而得到最终的定位结果。
[0081]
上述技术方案在学习策略中实现了全局特征和局部特征的互相促进,可以从数据集中学习到更加有效的信息表征方式,提高各自的检索精度;同时在训练过程中提高了两者的一致性,解决了两者在结果上的冲突混淆问题,从而在检索框架中更好地发挥了各自的优势—兼顾了实时性、高精度和环境鲁棒性。此外,学习策略还提升了模型的学习效率,大幅度地降低了模型的训练时间。
[0082]
本发明还提供一种基于三元网络的紧耦合弱监督学习的定位系统,包括特征获取模块、训练集获取模块、三元网络训练模块以及定位模块;其中,
[0083]
特征获取模块用于获取图像i的全局特征和长度为n的局部特征序列;
[0084]
训练集获取模块用于根据所述全局特征和局部特征,采用重排序算法获取图像q的正样本,采用弱监督算法获取图像q负样本,将所述正样本和负样本作为三元组网络的训
练集;
[0085]
三元网络训练模块用于将所述训练集分批,每一批训练集中包含多个训练元组,每个训练元组输入三元过网络后解算出排序算法的损失函数和重排序阶段损失函数,并将所述排序算法的损失函数和重排序阶段损失函加权求和,得到最终损失函数;重复迭代直到三元组网络在训练集和验证集上取得预设的结果或将完整数据集遍历设定的次数,得到确定的三元网络;
[0086]
定位模块用于根据所述三元网络提取全局特征,基于全局特征进行数据库的检索排名,基于所述检索排名选出top

m,在所述top

m中进行基于局部特征距离的重排名,从而得到最终的定位结果。
[0087]
另一方面,本发明提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时,能实现本发明所述的基于三元网络的紧耦合弱监督学习的定位方法。
[0088]
所述计算机设备可以采用笔记本电脑、桌面型计算机或工作站。
[0089]
处理器可以是中央处理器(cpu)、数字信号处理器(dsp)、专用集成电路(asic)或现成可编程门阵列(fpga)。
[0090]
对于本发明所述存储器,可以是笔记本电脑、桌面型计算机或工作站的内部存储单元,如内存、硬盘;也可以采用外部存储单元,如移动硬盘、闪存卡。
[0091]
计算机可读存储介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机可读存储介质可以包括:只读存储器(rom,read only memory)、随机存取记忆体(ram,random access memory)、固态硬盘(ssd,solid state drives)或光盘等。其中,随机存取记忆体可以包括电阻式随机存取记忆体(reram,resistance random access memory)和动态随机存取存储器(dram,dynamic random access memory)。
[0092]
以上对本发明实施例公开的一种应用紧耦合弱监督学习策略的视觉位置识别系统进行了详细介绍,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想,但本发明并不限于上述实施方式。对于本领域的一般技术人员,在其所具备的知识范围内,依据本发明的思想,可以在具体实施方式或应用范围上做出变化。综上所述,本说明书内容不应理解为对本发明的限制。
再多了解一些

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

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

相关文献