一种基于深度学习的视觉SLAM回环检测系统及其方法技术方案

技术编号:38533076 阅读:11 留言:0更新日期:2023-08-19 17:05
本发明专利技术公开了一种基于深度学习的视觉SLAM回环检测系统及其方法,包括:移动物体检测与特征提取模块根据神经网络分类器判断场景中是否存在动态物体,并只提取图像中的静态特征;新场景检测模块利用叠加自动编码器检测当前场景是否已访问过;特征存储与相似性比较模块是与新场景检测模块并行运作,将提取到的图像特征根据相应的阈值存储到多级字典中,并进行帧与帧之间的相似度匹配已检测是否出现新场景。在回环检测过程中依次从高级字典开始检索,无需和每一个先前帧进行比较,从而加快帧与帧之间的匹配速度。本发明专利技术能够有效解决移动目标、特征遮挡等问题,回环检测的准确度和精度高。精度高。精度高。

【技术实现步骤摘要】
一种基于深度学习的视觉SLAM回环检测系统及其方法


[0001]本专利技术属于基于视觉的同步定位与建图(Simultaneous Localization and Mapping:SLAM)
,涉及一种基于深度学习的SLAM回环检测系统及其方法。

技术介绍

[0002]视觉SLAM中,传统的回环检测方法主要采用词袋模型(Bag Of Words,BOW)等。如:ORB

SLAM【Mur

Artal R等,ORB

SLAM:a versatile and accurate monocular SLAM system[J].IEEE transactions on robotics,2015.】采用基于词袋的方法是预先加载一个词袋字典树,字典树将图像中的每一局部特征点的描述子转换为一个单词,字典里包含着所有的单词,通过对整张图像的单词统计一个词袋向量,词袋向量间的距离即代表了两张图像之间的差异性。此类方法依赖于图像特征点的提取与匹配,不同季节和光照条件下也存在性能问题,相同的特征出现在不同地方并导致错误对应。此外,当场景中的物体类别越多,所需要的储存内存也越多。
[0003]为了克服这些局限性,一些基于深度学习的方法将神经网络嵌入到SLAM系统中,可以有效识别出相似图片并用于回环检测过程,包括基于CNN的网络【Hou Y等,Convolutional Neural Network

Based Image Representation for Visual Loop Closure Detection[C]//2015IEEE international conference on information and automation.IEEE,2015:2238

2245.】,CALC【Merrill N等.Lightweight unsupervised deep loop closure[J].arXiv preprint arXiv:1805.07703,2018.】等。这些方法一定程度上提升了回环检测的准确性,但是系统实时性不能满足实际应用需求。其次这些方法提取的是整张图像的特征,如果场景中的出现移动物体会大幅降低回环检测结果。

技术实现思路

[0004]本专利技术的目的是克服现有视觉SLAM系统回环检测的不足之处,提供一种基于深度学习的SLAM回环检测系统及其方法,能够从RGB视频流中判断图像的相似性,使机器人能够准确和有效地识别已经访问的场景,可以解决移动目标、特征遮挡等问题,提高回环检测的准确度和精度。
[0005]为解决上述技术问题,本专利技术采用以下技术方案。
[0006]本专利技术的一种基于深度学习的视觉SLAM回环检测系统,包括:
[0007]移动物体检测与特征提取模块,根据输入的RGB视频流中的图像帧,利用移动对象检测网络可以剔除场景中存在动态因素的对象,只保留静态图像块,并提取静态图像特征;
[0008]新场景检测模块,利用叠加自动编码器检测当前场景是否已访问过,即:根据输入的RGB视频流检测图像帧,由自动编码器判断是否出现新的场景;
[0009]特征存储与相似性比较模块,与新场景检测模块并行运作,将每张图像中提取的特征存储到多级字典中,每新来一帧,当前帧与之前的帧比较相似性,判断当前帧是处于新场景还是已经发生回环;
[0010]网络损失函数单元,二进制交叉熵损失C
d
,均方误差损失函数M,稀疏性约束损失C
s
和连续性约束损失C
c

[0011]具体的,移动物体检测与特征提取模块,包括:
[0012]移动物体检测部分,从RGB视频流中读取图像,每张输入图像会被分为n个子图区域,利用基于CNN网络的分类器区分静态子图和动态子图;基于CNN网络的分类器包括5个二维卷积层、4个最大池化层即Max Pool层和两个全连接层;其中卷积层的卷积核大小是32,最大池化层的卷积核是22;5个二维卷积层的输出通道数为64,128,256,256,512;在第1,2,4,5个卷积层后面设置最大池化层;最后两个全连接层的输出通道数为128,1;输出每张子图的置信度,如果某张子图的置信度大于给定的阈值0.6,该子图为动态子图,反之则为静态子图;
[0013]特征提取部分,只提取静态子图的图像特征,第i张图像的特征F
Ii
提取自基于CNN网络的分类器的倒数第二层的全连接层;每个子图可以表示为一个128
×
1的特征向量,128是全连接层输出维度,每张输入图像会得到一个128
×
n维的特征向量;如果某张子图中检测出动态物体,这个子图特征F
pi
将被忽略,则剩余的静态子图特征将被保留,表示为128
×
j维的特征向量,j是输入图像中包含的静态子图像个数,且j<n;该特征向量中包含固定对象的深度特征,最后将特征向量传递给自动编码器,可用公式(1)表示为:
[0014]F
Ii
={F
p1
,F
p2
,F
p3


F
pj
}
ꢀꢀꢀꢀꢀꢀꢀ
(1)。
[0015]具体的,所述的新场景检测模块,通过一个堆叠自动编码器学习新场景特征;所述堆叠自动编码器是上下结构的,其中上一个自动编码器的输出作为下一个自动编码器的输入;每个单一的自动编码器包括:输入层x、隐藏层h、输出层y;假设a是自动编码器的输出,则函数为:
[0016][0017]其中,w是权重,b是偏差,优化目标是w和b,σ表示为非线性sigmod激活函数;
[0018]隐藏层h和输出层y的输出为:
[0019][0020]具体的,所述的特征存储与相似性比较模块,采用多级字典存储和匹配策略加快特征匹配,其作用体现为:
[0021]①
首先输入分辨率为640
×
480的RGB图像视频流,经由移动物体检测与特征提取模块提取特征后,使用两级字典存储图像特征,其中一级字典存储每一帧I
i
的特征F
Ii
,而二级字典只存储相应的关键帧特征信息;第一帧会被加入到二级字典中,第二帧被看作是二级字典选择下一帧的参考帧,后续到来的图像帧都与参考帧匹配,一旦当前帧和参考帧之间的相似度小于设定阈值,则该帧被视为关键帧并添加到二级字典,以此类推;
[0022]②
在处理当前帧I
i
时,首先将当前帧的特征F
Ii
与二级字典的每个关键帧进行比较,如果当前帧与二级字典中的每个关键帧的最大相似度都小于一定的阈值,则不会与一级字典进行比较;反之,则会找到二级字典中相似度最高且大于相应阈值的关键帧,记录该关键帧的前一帧I
本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于深度学习的视觉SLAM回环检测系统,其特征在于,包括:移动物体检测与特征提取模块,根据输入的RGB视频流中的图像帧,利用移动对象检测网络可以剔除场景中存在动态因素的对象,只保留静态图像块,并提取静态图像特征;新场景检测模块,利用叠加自动编码器检测当前场景是否已访问过,即:根据输入的RGB视频流检测图像帧,由自动编码器判断是否出现新的场景;特征存储与相似性比较模块,与新场景检测模块并行运作,将每张图像中提取的特征存储到多级字典中,每新来一帧,当前帧与之前的帧比较相似性,判断当前帧是处于新场景还是已经发生回环;网络损失函数单元,二进制交叉熵损失C
d
,均方误差损失函数M,稀疏性约束损失C
s
和连续性约束损失C
c
。2.根据权利要求1所述的一种基于深度学习的视觉SLAM回环检测系统,其特征在于,移动物体检测与特征提取模块,包括:移动物体检测部分,从RGB视频流中读取图像,每张输入图像会被分为n个子图区域,利用基于CNN网络的分类器区分静态子图和动态子图;基于CNN网络的分类器包括5个二维卷积层、4个最大池化层即Max Pool层和两个全连接层;其中卷积层的卷积核大小是32,最大池化层的卷积核是22;5个二维卷积层的输出通道数为64,128,256,256,512;在第1,2,4,5个卷积层后面设置最大池化层;最后两个全连接层的输出通道数为128,1;输出每张子图的置信度,如果某张子图的置信度大于给定的阈值0.6,该子图为动态子图,反之则为静态子图;特征提取部分,只提取静态子图的图像特征,第i张图像的特征F
Ii
提取自基于CNN网络的分类器的倒数第二层的全连接层;每个子图可以表示为一个128
×
1的特征向量,128是全连接层输出维度,每张输入图像会得到一个128
×
n维的特征向量;如果某张子图中检测出动态物体,这个子图特征F
pi
将被忽略,则剩余的静态子图特征将被保留,表示为128
×
j维的特征向量,j是输入图像中包含的静态子图像个数,且j<n;该特征向量中包含固定对象的深度特征,最后将特征向量传递给自动编码器,可用公式(1)表示为:F
Ii
={F
p1
,F
p2
,F
p3


F
pj
}
ꢀꢀꢀꢀ
(1)。3.根据权利要求1所述的一种基于深度学习的视觉SLAM回环检测系统,其特征在于,所述的新场景检测模块,通过一个堆叠自动编码器学习新场景特征;所述堆叠自动编码器是上下结构的,其中上一个自动编码器的输出作为下一个自动编码器的输入;每个单一的自动编码器包括:输入层x、隐藏层h、输出层y;假设a是自动编码器的输出,则函数为:其中,w是权重,b是偏差,优化目标是w和b,σ表示为非线性sigmod激活函数;隐藏层h和输出层y的输出为:4.根据权利要求1所述的一种基于深度学习的视觉SLAM回环检测系统,其特征在于,所述的特征存储与相似性比较模块,采用多级字典存储和匹配策略加快特征匹配,其作用体
现为:

首先输入分辨率为640
×
480的RGB图像视频流,经由移动物体检测与特征提取模块提取特征后,使用两级字典存储图像特征,其中一级字典存储每一帧I
i
的特征F
Ii
,而二级字典只存储相应的关键帧特征信息;第一帧会被加入到二级字典中,第二帧被看作是二级字典选择下一帧的参考帧,后续到来的图像帧都与参考帧匹配,一旦当前帧和参考帧之间的相似度小于设定阈值,则该帧被视为关键帧并添加到二级字典,以此类推;

在处理当前帧I
i
时,首先将当前帧的特征F
Ii
与二级字典的每个关键帧进行比较,如果当前帧与二级字典中的每个关键帧的最大相似度都小于一定的阈值,则不会与一级字典进行比较;反之,则会找到二级字典中相似度最高且大于相应阈值的关键帧,记录该关键帧的前一帧I
pre
和后一帧I
next
,并在一级字典中检测I
pre
与I
next
之间的每一帧,找到相似度最大的匹配帧,多级字典协同工作,加快了特征匹配过程,降低丢失实际回环的风险;

两帧内比较相似性,其中将当前帧的特征F
Ii
与一级或者二级字典中存储的先前帧特征之间进行比较;假设任意两帧I1和I2中包含的静态子图个数分别为p和q;则I1和I2的相似性similarity可以计算为:其中f1和f2分别表示I1和I2中对应的静态子图特征。5.根据权利要求1所述的一种基于深度学习的视觉SLAM回环检测系统,其特征在于,所述的网络损失函数单元,定义为分类网络中二进制交叉熵损失C
d
,以及新场景检测网络中均方误差损失函数M、稀疏性约束损失C
s
和连续性约束损失C
c
,其中:二进制交叉熵损失如公式(5):C
d
(t,o)=

(t
×
logo+(1

t)
×
log(1

o))
ꢀꢀꢀꢀꢀꢀꢀ
(5)其中t和o分别表示图像是静态子图和动态子图的概率;均方误差损失函数M表示为:该式代表某帧图像中像素点重建数据p
j
和原始数据对应点误差的平方和的均值,其中w
j
表示权重;稀疏性约束损失C
s
是通过惩罚隐藏层单元的平均输出来实现的,如公式(7)所示:其中h
i
表示某一层中间隐藏层,s
h
表示稀疏阈值;N
F
为最后一个隐藏层的尺寸,N
b
表示一个Batch中的帧数;连续性约束损失C
c
保持相邻帧的响应是相似的,如公式(8)所示:
由此得到新场景检测模块的损失函数L表示为:L=M+αC
s
+βC
c
ꢀꢀꢀꢀꢀꢀꢀꢀ
(9)其中α和β表示相应损失的比例因子。6.一种基于深度学习的视觉SLAM回环检测方法,其特征在于,采用如权利要求1至5任一项所述...

【专利技术属性】
技术研发人员:史金龙倪俊欧镇钱强钱萍田朝晖白素琴
申请(专利权)人:江苏科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1