基于残差网络的图像序列闭环检测 下载: 1189次
1 引言
复杂、非结构未知环境下的自主导航问题一直是机器人研究领域的热点,其中,实现高效的实时定位与地图构建(SLAM)技术是解决该问题的重要途径之一[1]。近年来,随着计算机视觉技术的不断发展,相比其他感知方法,视觉同时定位与地图构建(VSLAM)凭借更为丰富的视觉信息越来越是现在SLAM研究领域的主流之一。一个完整VSLAM系统一般包含特征提取和配准、相机位姿和地图点的同时优化、曾经到达地点的检测与优化等步骤,分别对应前端跟踪、后端优化及闭环检测3个SLAM系统的典型环节,可以对周围环境进行建模,并估计自身位姿和校准跟踪运动轨迹[2-3]。在大尺度场景下,仅仅依靠前端跟踪和后端优化的SLAM系统往往存在无法优化和忽略累积误差的问题。闭环检测技术旨在机器人运动并构建周围环境的过程中辨识出曾经到访过的区域[4]。准确地检测曾经访问过的地点并匹配,让机器人可以重定位,再通过相应的全局优化算法,一般都可以有效消除闭环发生前的累积误差[5-6],即使在大尺度长时间任务中也能保证SLAM系统的精度。
所以闭环检测一直都是大尺度SLAM问题中的研究重点,并且已经部署在了目前许多主流的SLAM框架中,如基于位姿图理论的ORB-SLAM[7]、VINS-Mono[8]等。闭环检测的场景与图像检索很相似,一般首先需要抽象并描述图像。基于图像描述符的提取方法可以分为3类:第一种,一般离线提取大量图像中的特征点及其描述子(SURF、BREAF等)并通过聚类的方法生成视觉字典,称之为视觉词袋,然后将单张图像的所有特征抽象为词袋中显示各个词语数量的直方图向量,但词袋模型有明显的局限性,在真实的环境下,往往有很多类似于窗户和桌椅这样的重复物体,从而有严重的错误匹配现象[9-13];第二种,直接基于图像像素统计信息,将一张图像压缩成一个描述符(GIST等),通过该描述符进行匹配[14-16];第三种,借助在机器视觉领域性能优越的深度卷积网络来提取图像的特征,并设计相应方法压缩输出特征维度[17-21]。
针对上述方法在高准确率下都存在的召回率过低情况,本文提出了一种改进的残差网络(ResNet)[22]提取图片特征,并对一定长度的图片序列的特征进行组合,采用间隔搜索和组匹配的双层匹配方法进行闭环查询。在牛津大学设计的开源闭环检测数据集New College和City Centre[11]上验证所提算法的性能,与其他方法相比,所提算法显著提高了召回率。
2 算法结构
所提算法流程如
2.1 ResNet结构
ResNet是一种针对图像识别和分类问题的深度卷积网络。ResNet与此前卷积网络最大的不同在于引入了残差机制,即每2到3层为一个单元,该单元的输出为内部卷积层前向输出和该单元输入之和:
式中:x和y分别为网络的输入和输出;
像VGG[23]这样一贯而下的超深卷积网络,当深度达到一定时,不可避免地就出现梯度消失、爆炸问题。而残差机制的引入可以保证在网络训练过程中,当较深的冗余卷积层不能带来更优秀的性能时,浅网络传入的残差可以在一定程度上抑制深网络卷积层的前向输出,避免出现通过削弱具有优秀性能浅网络的参数下降梯度来优化不必要深网络参数的情况,有效解决了梯度消失或者爆炸的问题,提高训练效果。并且,ResNet可以在层数相同的情况下,大大降低整个网络的参数量。一个完整的VGG16网络有138357544个参数,而采用BasicBlock的完整ResNet18网络的参数量仅有33161024个,这是因为ResNet的卷积核结构设计更小,数量也更少。网络中,更少的参数量代表更小的存储空间,具有更快的运算效率。
在ResNet中,往往把多个具有相同结构的卷积核组成的卷积网络称为一个layer,比如在
2.2 图像预处理和特征提取
首先需要对图像进行预处理,即对图像进行归一化。首先将图像统一为
式中:图像RGB三个通道值
将通过Place365数据集[25]预训练的ResNet18网络参数部分载入到所设计的ResNet网络中。Place365是麻省理工学院制作的一个场景图像数据集,用于训练基于图像的场景分类任务下的各种模型。在该数据集下,训练的ResNet18的全连接层输出维度为365,对应于Place365中365种户内、户外场景。在卷积网络中,网络的层次越深,提取的特征层次就越丰富,抽象程度越高,往往层次更高的特征对应更高的语义信息。所设计的ResNet网络的直接输出形式如
2.3 图像序列特征组合
当每一帧图像经ResNet提取特征后,就将这一帧图像的特征及其对应的图像序号传入到地图容器中。为了提高网络在闭环图像搜索过程中的鲁棒性,对当前传入图像及其之前数帧的图像进行特征组合。记第i帧图像特征为
式中:j为组合序列的长度,序号小于j的图像不具备序列特征。
这样的组合,相当于将一帧图像的特征扩展为j+1帧视频的特征。在SLAM问题中,采集图像往往具有连续性,当访问曾经到达过的场景时,某一帧图像的相邻几帧图像往往也包含该场景信息。对于大尺度户外场景,场景与场景间往往非常相似,比如都会存在树木、窗户等语义上非常相似的图像,如果仅仅靠一帧的场景信息,往往存在误匹配。而融合了多帧信息的序列特征丰富了场景及其附近的信息,能够极大地提高匹配准确率。
序列长度的增加会不可避免地增加序列特征的维数,会占用大量的数据存储空间,在进行进一步的闭环搜索环节中,维数的增加会线性提高计算代价。针对这样的情况,采用下采样图像序列的组合特征:
式中:
Vn∈
式中:similarity(·)表示特征间相似度。这样的采样要求希望采样的图像特征与当前帧图像特征的相似度尽量平均。
相似度函数是描述图片之间相关性的关键,即两个序列特征的距离描述。不同的特征往往采用不同的距离描述,比如文献[ 15]使用加权的汉明距离和欧氏距离的组合来描述两个图片的相似性,文献[ 19-21]则使用余弦距离。所提算法采用L1范数的倒数作为相似度函数,表达式为
相似度函数值越大,对应的两帧图像越相似。连续的图像里一般都存在较多的冗余信息,基于平均相似度的采样可以减少这些冗余信息,同时最大程度保证序列整体信息可以描述场景及其附近的一定范围,可以压缩序列特征长度又不至于损失信息。后续的实验也证明了这一点,下采样可以降低匹配时间,而不会对匹配精度产生较大影响。
2.4 闭环检测方法
按照上述方法得到序列特征后,采用归一化的相似度对输入图像和地图数据库进行匹配,表达式为
式中:s(·)表示在搜索过程中当前第i帧与地图数据库中第
当得到候选帧之后,后续的闭环检测采用组匹配的方法,当图像
图像的分组以候选帧为中心,分组长度为
2.5 一致性检验
一致性检验主要包括时间一致性检验和空间一致性检验。时间一致性检验要求闭环帧符合SLAM问题里图像帧连续的特点,空间一致性检验要求闭环帧在空间位置上与当前图像帧相近。
时间检验一致性,即当前帧的匹配应当与当前帧最近的k帧的匹配有一定程度的重叠,即
空间一致性检验,即判断当前图像帧
在
3 仿真验证
为了验证所提算法,在FAB-MAP论文中开源的City Centre和New College数据集上进行相应的测试,数据集提供了标注对应闭环的真实值矩阵,因此被广泛用来测试闭环检测方法的性能。车载相机每隔约1.5 m拍摄场景图像,两个数据集分别有1237和1073对由一对车载摄像头拍摄的图片,City Centre拍摄于市中心,New College拍摄于校园内,其中一些场景如
图 5. 不同数据集的典型图像。(a)City Centre; (b)New College
Fig. 5. Typical images in different datasets. (a) City Centre; (b) New College
图 6. GPS数据。(a)City Centre;(b)New College
Fig. 6. GPS data. (a) City Centre; (b) New College
表 1. 部分参数的设置
Table 1. Setting of some parameters
|
3.1 算法评估
闭环检测常用的指标为准确率(P)和召回率(R),设置不同的阈值
式中:
为了验证所提算法的性能,对所提算法、文献[ 9]中经典的FAB-MAP算法及文献[ 21]中的VGG16+APF算法进行比较。为了证明改进的ResNet性能,对其与典型ResNet18其他层的输出结果进行比较。之后对序列组合特征的结果与仅当前帧特征的结果进行比较。
基于
图 7. 所提算法、ResNet18不同层及其他算法的P-R曲线比较。(a) City Centre; (b) New College
Fig. 7. Comparison of P-R curves of proposed algorithm, different layers in ResNet18, and other algorithms. (a) City Centre; (b) New College
图 9. 不同序列长度对结果的影响。(a) City Centre; (b) New College
Fig. 9. Influence of different sequence lengths on the results. (a) City Centre; (b) New College
图 10. City Centre数据集中序列长度为15时,不同m对结果的影响
Fig. 10. Influence of different m on the results when the sequence length is 15 in City Centre dataset
综合上述结果显示,长度15的序列、采样数量为5的方法可以在City Centre上达到100%准确率下83%召回率,在New College上所提算法不进行序列组合可以达到99%准确率下83%召回率;序列长度为2时可以达到99%准确率下85%召回率。
3.2 讨论
图 11. 长度为15的序列组合前后的相似度曲线。(a)序列组合特征与其他帧的相似度; (b)不进行序列组合的相似度
Fig. 11. Similarity curves before and after combination of 15 length sequences. (a) Similarity between sequence combination features and other frames; (b) similarity of sequence without combination
根据实验结果,j大小的设计原则与场景有关,根据仿真经验,在开阔或者运动变化缓慢的场景下,j应当选择在10到20之间,对于紧凑或者运动变化快速的场景,应当j小于5。这是一种保守的可以让结果更好的选择。
4 结论
基于Place365预训练的ResNet,设计了一种组合序列特征的闭环检测方法。将预训练模型作为场景的特征提取器,并将相应的序列图像特征组合作为当前帧的特征,使用间隔搜索和组匹配的方法进行闭环检索,并进行一致性检验,最终完成闭环检测。对不同场景下的不同算法的性能进行了测试和评估,并比较了ResNet18其他层及其组合对实验结果的影响,重点比较了不同的序列长度和不同的采样数量对结果的影响。实验结果证明,改进的ResNet提取特征的性能要显著好于传统手工方法提取的特征和VGG16提取的特征。组合序列特征的方法更适用于像City Centre数据集这样场景更广阔、变化更缓慢、视场更大的场景,可以较大程度地提高闭环匹配的准确率。但是对于New College数据集这样紧凑的场景,可能并不需要组合序列特征也能取得不错的性能,这归功于ResNet提取图像特征的能力和闭环检测环节中的多重保险,但是较短长度的序列特征组合也能在一定程度上提高闭环检测的准确率,所以可以认为组合序列特征的方法对提高闭环检测性能有较为显著的帮助。同样,针对直接组合序列特征带来的特征向量维度过高等问题,下采样实验的结果表明,合适的下采样不会影响闭环检测的准确率,甚至可以略微优化算法结果。
[2] Konolige K, Agrawal M. FrameSLAM: from bundle adjustment to real-time visual mapping[J]. IEEE Transactions on Robotics, 2008, 24(5): 1066-1077.
[3] 林付春, 刘宇红, 周进凡, 等. 基于ORB特征的视觉里程计算法优化[J]. 激光与光电子学进展, 2019, 56(21): 211507.
[6] 陆世东, 涂美义, 罗小勇, 等. 基于图优化理论和GNSS激光SLAM位姿优化算法[J]. 激光与光电子学进展, 2020, 57(8): 081024.
[7] Mur-Artal R. Montiel J M M, Tardós J D. ORB-SLAM: a versatile and accurate monocular SLAM system[J]. IEEE Transactions on Robotics, 2015, 31(5): 1147-1163.
[9] Cummins M, Newman P. FAB-MAP: probabilistic localization and mapping in the space of appearance[J]. The International Journal of Robotics Research, 2008, 27(6): 647-665.
[10] BayH, Tuytelaars T, van Gool L. SURF: speeded up robust features[M] //Leonardis A, Bischof H, Pinz A. Computer vision-ECCV 2006. Lecture notes in computer science.2006, 3951: 404- 417.
[12] Salas-Moreno RF, Newcombe RA, StrasdatH, et al. SLAM++: simultaneous localisation and mapping at the level of objects[C]//2013 IEEE Conference on Computer Vision and Pattern Recognition, June 23-28, 2013, Portland, OR, USA.New York: IEEE Press, 2013: 1352- 1359.
[13] CalonderM, LepetitV, StrechaC, et al. BRIEF: binary robust independent elementary features[M] //Daniilidis K, Maragos P, Paragios N. Computer vision-ECCV 2010. Lecture notes in computer science. Berlin, Heidelberg: Springer, 2010, 6314: 778- 792.
[14] 刘国忠, 胡钊政. 基于SURF和ORB全局特征的快速闭环检测[J]. 机器人, 2017, 39(1): 36-45.
[15] LiuY, ZhangH. Visual loop closure detection with a compact image descriptor[C]//2012 IEEE/RSJ International Conference on Intelligent Robots and Systems, October 7-12, 2012, Vilamoura, Portugal.New York: IEEE Press, 2012: 1051- 1056.
[17] Gao X, Zhang T. Unsupervised learning to detect loops using deep neural networks for visual SLAM system[J]. Autonomous Robots, 2017, 41(1): 1-18.
[18] 邱晨力, 黄东振, 刘华巍, 等. 融合Gist特征与卷积自编码的闭环检测算法[J]. 激光与光电子学进展, 2019, 56(18): 181501.
[19] 鲍振强, 李艾华, 崔智高, 等. 融合多层次卷积神经网络特征的闭环检测算法[J]. 激光与光电子学进展, 2018, 55(11): 111507.
[20] 张学典, 顾璋琦, 秦晓飞. 基于VGG16模型的快速闭环检测算法[J]. 光学仪器, 2019, 41(3): 20-26.
[21] HouY, ZhangH, Zhou SL. Convolutional neural network-based image representation for visual loop closure detection[C]//2015 IEEE International Conference on Information and Automation, August 8-10, 2015, Lijiang, China.New York: IEEE Press, 2015: 2238- 2245.
[22] He KM, Zhang XY, Ren SQ, et al. ( 2015-12-10)[2020-07-14]. org/abs/1512. 03385. https://arxiv.
[24] DengJ, DongW, SocherR, et al.ImageNet: a large-scale hierarchical image database[C]//2009 IEEE Conference on Computer Vision and Pattern Recognition, June 20-25, 2009, Miami, FL, USA. New York: IEEE Press, 2009: 248- 255.
[26] Fischler M A. Bolles R C. rando sample consensus: a paradigm for model fitting with applications to image analysis and automated cartography[J]. Communications of the ACM, 1981, 24(6): 381-395.
Article Outline
占浩, 朱振才, 张永合, 郭明, 丁国鹏. 基于残差网络的图像序列闭环检测[J]. 激光与光电子学进展, 2021, 58(4): 0411003. Hao Zhan, Zhencai Zhu, Yonghe Zhang, Ming Guo, Guopeng Ding. Loop-Closure Detection Using Image Sequencing Based on ResNet[J]. Laser & Optoelectronics Progress, 2021, 58(4): 0411003.