一种基于孪生网络特征与几何验证的回环检测方法

文档序号:31054071发布日期:2022-08-06 10:33阅读:48来源:国知局
一种基于孪生网络特征与几何验证的回环检测方法

1.本发明涉及计算机视觉图像技术领域,尤其涉及一种基于孪生网络特征与几何验证的回环检测方法。


背景技术:

2.同步定位与建图(simultaneous localization and mapping,slam)[1],它的主要功能是机器人在没有获得先验环境信息的情况下,通过建立机器人周围的环境地图,使机器人能够在未知环境中自主导航,并在地图上实现重定位。在定位过程中,机器人必须正确识别之前被访问过的地方,称为真回环。这种识别是由slam系统的一个组件(称为回环检测)来完成的。真正的回环检测通过减少机器人运动引起的地图累积漂移,帮助slam系统重定位并提高建图精度。
[0003]
检测回环的一般方法是将新位置与以前访问过的位置进行比较。但是,在现实世界中,由于光照、尺度、视点等因素的影响,通常导致同一位置场景具有不同的视觉表达,产生感知混叠(假阳性)或者感知变异(假阴性)。由于感知混叠和感知变异往往会影响在回环检测任务中寻找正确的场景对应关系,从而导致错误匹配,降低了回环检测的准确性,最终影响视觉slam系统的性能。一个好的回环检测方法需要解决这两个问题,才能检测出更正确的环路。
[0004]
对于提高回环检测的鲁棒性,国内外的学者已经做了大量的研究。通常,回环检测方法可大致分为两类:基于手工特征方法和基于深度学习特征方法。大多数最先进的基于手工特征的方法使用词袋(bow)模型[2],词袋模型作为传统的视觉slam回环检测方法,使用局部图像特征,如sift或surf来构建bow描述符。并将图像用单个数值矢量来表示,通过计算两个矢量之间的相似度来度量两张图像的相似性,可以有效地进行环路检测;然而,这类方法的缺点是对光照变化和目标遮挡缺乏鲁棒性,且过度依赖于纹理信息,容易产生感知混淆问题。当面对真实场景,例如,光照的变化和无纹理的对象等情况时,可能会大大降低这些描述符的性能。基于深度学习特征方法有很多,例如,为了保持光照变化的不变性,方法[3]中通过增加了一条额外的输入通道来获取深度信息,构造了rgb-d数据集,然后将数据集传入到网络进行训练,将测试集传入到训练好的模型得到鲁棒的全局描述符进行回环检测。其对于环境的适度变化是鲁棒的,可以提高回环检测、位置识别的性能;然而,该方法只使用rgb-d传感器的原始rgb图像数据和深度图像数据,这些图像对光照和视点的变化非常敏感,在外观和视点发生严重变化的情况下,可能会导致回环检测精度的下降。且该方法提取的全局描述符维度较高、耗时较长,无法满足闭环检测的实时性要求。
[0005]
如何解决上述技术问题为本发明面临的课题。


技术实现要素:

[0006]
为了解决以上技术问题,本发明的目的在于对提供一种基于孪生网络特征与几何验证的回环检测方法;通过语义特征帮助机器人判断是否回到之前访问过的地方,提高了
回环检测的准确率,减少位姿漂移误差,进一步提升定位的精度,且大大减少了运算量,在实时性方面表现的更加优秀。
[0007]
本发明的发明思想为:本发明是通过获取机器人摄像机采集的rgb-d图像;并根据所述rgb-d图像获得图像的多维特征,包括图像的强度特征、深度特征和边缘特征;根据所述多维特征信息通过孪生卷积神经网络提取图像全局特征;计算当前输入图像全局特征与所有已输入的图像全局特征之间的欧式距离,并定义成对帧的相似度得分,将相似度得分大于阈值的图像作为回环候选图像;采用几何验证的方法,对两幅图像的描述符进行匹配;采用随机采样一致性算法求解基本矩阵以剔除误匹配,如果基本矩阵计算成功,则选择内点数最多的作为回环候选;采用时间一致性检验,若当前输入图像之后的连续三帧图像均满足阈值条件,则认为当前输入图像与回环候选图像构成回环。基于孪生网络特征与几何验证的回环检测方法,克服了传统的基于人工特征的回环检测方法准确率低和光照敏感等问题。在回环检测过程中,孪生网络特征可以处理图像外观变化和光照的场景,采用几何验证又可以获得图像间的几何拓扑信息,提高了回环检测的精确率和召回率。
[0008]
本发明是通过以下措施实现的,一种基于孪生网络特征与几何验证的回环检测方法,包含以下步骤:
[0009]
步骤(1)、获取机器人摄像机采集的rgb-d图像;
[0010]
步骤(2)、根据所述rgb-d图像获得如下多维特征信息:
[0011]
将rgb图像转化为灰度图,获取图像的强度特征;根据深度图获取图像的深度特征;基于灰度图像计算边缘特征,获得图像的边缘特征信息;
[0012]
步骤(3)、根据所述多维特征信息通过孪生卷积神经网络提取图像全局特征;
[0013]
步骤(4)、计算当前输入图像全局特征与所有已输入的图像全局特征之间的欧式距离,并定义成对帧的相似度得分,将相似度得分大于阈值的图像作为回环候选图像。
[0014]
步骤(5)、采用几何验证的方法判断当前图像及其对应的回环候选图像是否构成真正的回环。首先对输入图像与得到的回环候选图像分别提取orb关键点和局部差分二进制描述符,然后对两幅图像的描述符进行匹配;
[0015]
步骤(6)、采用随机采样一致性算法求解基本矩阵以剔除误匹配,如果基本矩阵计算成功,则选择内点数最多的作为回环候选;
[0016]
步骤(7)、进行时间一致性检验,若当前输入图像之后的连续三帧图像均满足步骤(6)的阈值条件,则认为当前输入图像与回环候选图像构成一组回环。
[0017]
进一步地,在上述方法中,所述步骤(2)中,根据所述rgb-d图像获得多维特征信息具体为:
[0018]
步骤(2-1)、图像强度:表示单通道图像像素的强度(值的大小)。在灰度图像中,它是图像的灰度。因此,rgb图像的强度特征可以通过将原始彩色图像转换为灰度图像获得;
[0019]
步骤(2-2)、图像的深度信息可以直接根据深度图获得,然而,tum数据集的原始深度图像存在噪声和许多孔洞,通常只提供一些点的深度信息,需要对其进行填充才能获得完整且可用的深度图像。为了解决这个问题,我们使用交叉双边滤波方法,对原始深度图像进行深度信息填充;
[0020]
步骤(2-3)、对于边缘特征,在灰度图像的基础上通过sobel边缘检测算子计算。获取图像的边缘轮廓信息,图像的边缘特征在光照变化时是不变的;
[0021]
进一步地,在上述方法中,所述步骤(3)中,根据所述多维特征信息通过孪生卷积神经网络提取图像全局特征具体为:
[0022]
步骤(3-1)、我们提出了一种新的孪生网络进行训练,图3说明了我们提出的孪生网络架构的详细信息。它的每个分支结构都是基于alexnet设计的,在严重的外观变化下比alexnet表现更好。alexnet是imagenet 2012的冠军模型,与之前的模型相比,它在很大程度上提高了分类的精度,并且网络复杂度低和计算量小。alexnet具有八层网络结构体系,包括五个卷积层和三个全连接层。然而,由于全连接层的计算量大,且在位置识别等任务中的性能不如卷积层,我们只提取第一个能够减少特征位置对分类问题影响的全连层输出作为输出特征。这可以提取并表征语义信息,增强特征对视点变化的鲁棒性;
[0023]
步骤(3-2)、根据步骤(2)得到的图像相应特征信息,选取两帧图像的特征信息,根据每帧图像的特征信息构造一个h
×w×
3的数组用于存储相应的特征描述符,即强度、深度和梯度。其中,h和w分别表示图像的高度和宽度,n表示相应特征信息的维度。然后,将该特征向量调整为224*224*3大小,并传入到孪生网络,经过卷积池化得到图像的特征图,再将两个通道特征进行一次全连接,即可得到图像的全局特征;
[0024]
步骤(3-3)、将高维特征向量转入到孪生网络获取全局特征,对于第k个输入样本对,假设全连接层输出的特征向量为fk={f
k1
,f
k2
},所述孪生网络的损失函数为:
[0025][0026]
其中,n为样本对的数量,m表示阈值是要在损失函数中学习的参数,yk是第k对样本的标签,dk=‖f
k1-f
k2
‖2表示特征向量之间的欧式距。yi=1为正样本,表示f
k1
和f
k2
来自同一类即两张图片相似。yi=0表示负样本,这意味着f
k1
和f
k2
来自不同类即两张图片相似度较小。因为对比损失函数可以表示两张图像之间的匹配程度,所以我们将其用于模型的训练。
[0027]
进一步地,在所述步骤(4)中,计算当前输入图像全局特征与所有已输入的图像全局特征之间的欧式距离,并定义成对帧的相似度得分具体为:
[0028]
步骤(4-1)、计算当前输入图像全局特征与所有已输入的图像全局特征之间的欧式距离,计算公式如下:
[0029][0030]
其中,d(ii,ij)是图像ii和ij之间的距离,fi和fj分别表示图像ii和ij提取的全局特征向量;||fi||2表示向量fi的l2范数。然后,图像ii和ij之间的相似度定义为:
[0031][0032]
其中s(ii,ij)表示两个全局特征向量之间的相似度。为了方便计算,我们使用归一化距离来获得相似度得分。
[0033]
进一步地,在上述方法中,在所述步骤(4-1)中,将rgb-d当前图像视为查询图像,将所有已输入的图像视为数据库图像。在机器人执行环路闭合检测任务时,由于机器人捕获的图像为连续图像,相邻图像间有较高的相似性,可能导致环路闭合检测错误。为了避免
相邻图像成为环路闭合候选帧,我们引入了一个约束来限制查询图像匹配范围。在查询图像的匹配范围内具体为:
[0034]
r=n-f
·
t
[0035]
其中,r表示查询图像的匹配范围;n表示在查询图像之前的所有图像的集合;f为相机的帧率;t为预定义参数;f
·
t为在当前图像之前的f
·
t帧图像的集合。通过加入这个约束,可以避免环路闭合检测假阳性问题。
[0036]
若数据库图像在查询图像的匹配范围r内,则根据这两张图像分别对应的全局特征计算这两张图像之间的相似度。
[0037]
进一步地,在上述方法中,在所述步骤(5)中,对输入图像与得到的回环候选图像分别提取orb关键点和局部差分二进制描述符具体为:
[0038]
对于ldb描述符的提取,首先提取查询图像ii与回环候选图像in的orb特征点,并以每个特征点为中心裁剪出大小为s
×
s的图像块。然后,将图像块分割为c
×
c个大小相等的网格单元,分别计算每个网格单元的平均强度i
avg
和梯度d
x
,dy。对于每个图像块中的任意两个网格单元m和n按如下公式执行二进制编码,得到的二进制编码为特征点k的ldb描述符。
[0039][0040]
式中,f(m)和f(n)分别表示网格单元m和n的平均强度i
avg
和梯度d
x
和dy的值,将图像块划分为c
×
c个网格单元,并将所有分区产生的二进制字符串连接起来,形成256比特的ldb描述符,对回环候选图像in采用上述相同的方法提取图像orb特征点及ldb描述符。
[0041]
进一步地,在上述方法中,在所述步骤(5)中,对两幅图像的描述符进行匹配具体为:
[0042]
采用二进制比率测试来匹配ldb局部描述符ii和in,二进制比率测试阈值ε定义如下:
[0043][0044]
其中,是查询图像ii的ldb描述符,和是基于快速近似最近邻(flann)算法在候选图像in中找到的两个与距离最接近的描述符。h(
·
)表示汉明距离,ε是距离的比率。比ε低的描述符匹配将被视为好的特征匹配,并被送入ransac计算基本矩阵t以剔除误匹配。如果基本矩阵t计算成功,则选择内点数最多的作为回环候选图像。
[0045]
进一步地,在上述方法中,采用汉明距离对输入图像ii与闭环候选图像in的ldb描述符进行匹配具体为:
[0046][0047]
其中,f1,f2表示两个ldb描述符,f
i1
表述描述符f1的第i位,f
i2
表述描述符f2的第i位。由于所使用的ldb描述符是只有256位的二进制描述符,并且可以通过汉明距离进行有效匹配,因此所提出的几何验证方法需要较低的存储消耗和计算成本。
[0048]
与现有技术相比,本发明的有益效果在于:
[0049]
1、本发明使用孪生网络提取图像全局特征,并结合几何验证,设计了一种高精确
率的回环检测算法。本发明使用传感器提供的纹理和深度信息,并且还计算图像的边缘特征信息,将这些特征信息进行早期的融合并传入到孪生网络进行学习,使得特征对图像光照变化的场景有更好的鲁棒性。
[0050]
2、本发明采用几何验证的方式,判断回环候选图像与当前输入图像之间是否构成回环。几何验证提取ldb描述符来进行图像间的特征匹配,ldb描述符为256位的二进制描述符,占用内存空间小,计算成本低,既能验证两幅图像是否构成回环,也能获得图像间的几何拓扑关系。
附图说明
[0051]
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。
[0052]
图1为本发明的整体结构流程图。
[0053]
图2为本发明训练数据集tum中的图像;其中,(a)为本发明的原始rgb图像;(b)为本发明的原始深度图像;(c)表示本发明的强度特征;(d)表示本发明中深度特征;(e)表示本发明中边缘特征。
[0054]
图3为本发明中训练全局特征的孪生网络架构图。
[0055]
图4为本发明中不同方法在kitti数据集上的准确召回率曲线图;其中,(a)为本发明在kitti00数据集上的精确召回率曲线图;(b)为本发明在kitti05数据集上的精确召回率曲线图。
[0056]
图5为本发明中kitti00数据集中每个关键帧对应的摄像机轨迹;(a)为本发明kitti00数据集回环检测的地面真实轨迹;(b)为本发明在kitti00数据集上的回环检测结果。
[0057]
图6为本发明中kitti05数据集中每个关键帧对应的摄像机轨迹图;(a)为本发明中kitti05数据集回环检测的地面真实轨迹;(b)为本发明在kitti05数据集上的回环检测结果。
具体实施方式
[0058]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0059]
如图1至图6所示,本实施例中,本发明的实验使用pytorch框架来实现孪生网络,并在geforce rtx 2070s gpu上进行训练和测试。实验过程中,将本发明的模型与fabmap方法进行比较。在tum开放数据集上进行网络训练。在kitti00以及kitti05数据集上评估了所提出的方法。
[0060]
1、训练和测试
[0061]
tum公共数据集是由手持式kinect相机在各种室内环境中收集的,包含不同的结构和纹理数据,并且提供了许多的rgb-d序列及其地面真实轨迹。所以,本发明的网络使用tum数据集进行训练。本发明在数据集中使用了约6000张图像对进行训练,选取了约1000张
图像对进行了验证。
[0062]
为了验证提出方法的性能,本发明使用kitti数据集进行验证及测试。kitti数据集由安装在移动汽车上的摄像头在不同的挑战性环境中采集的,例如,光照条件的不同、视点变化以及动态遮挡等。并且,kitti数据集提供了许多的回环示例以及传感器的真实轨迹,便于检测不同方法下的回环效果,可以通过改变相似度阈值得到精确率召回率曲线。
[0063]
2、实验结果
[0064]
为了证明该方法的精确性,本发明用kitti数据集对该方法进行了验证和测试。精确率和召回率是评估环路闭合检测任务的重要性能指标,精确率是指算法所检测的回环中有多少真正回环的概率,而召回率是指在所有真实回环中被正确检测出来的概率。精确率-召回率定义为:
[0065][0066][0067]
其中tp是真阳性的数目,指示检测到的环路闭合是根据地面事实的真环路。fp是假阳性的数量,表示这些标识没有标记为真正回环,但是算法检测其为回环。fn是假阴性的数量,表示算法未检测出的真回环的数量。
[0068]
以下对本发明提出的方法进行评估。
[0069]
将本发明的方法与仅使用rgb图像全局特征提取方法(rgb方法)和fabmap方法进行了比较,通过调整相似度得分的阈值,绘制了这些方法在kitti数据集上的准确率和召回率曲线。如图4所示,可以发现,由于将全局特征与几何验证相结合,本方法比其他方法表现得更好,在提高准确率的同时召回率也有一定的提高。
[0070]
为了进一步评估我们方法的有效性,如图5,6所示,在第一幅图中绘制了图像的每个关键帧对应摄像机的运动轨迹。同时,在图上用粗圆圈标记发生回环的关键帧点,每个圆圈指的是一个环路闭合对。第二幅图为我们的方法得到的环路闭合对。可以发现本发明的方法大幅提升了回环候选帧的精确率,同时使用的几何验证和时间一致性检验机制又减少了大部分误匹配,使回环检测精度进一步提升。
[0071]
以上所述仅为本技术的优选实施例而已,并不用于限制本技术,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1