
摘要
视觉场景识别是计算机视觉领域的一项具有挑战性的任务,也是基于摄像头的定位与导航系统中的关键组成部分。近年来,卷积神经网络(Convolutional Neural Networks, CNNs)在该任务中取得了优异的性能,并展现出良好的泛化能力。传统方法通常采用成对或三元组图像进行训练,以二值标签(相似或不相似)指示图像间的关系。然而,在实际应用中,图像之间的相似性并非二值化,而是连续变化的。此外,此类CNN的训练过程计算复杂,依赖于代价高昂的样本对(pair)或三元组(triplet)挖掘策略。为此,本文提出一种广义对比损失函数(Generalized Contrastive Loss, GCL),该函数基于连续的图像相似度度量进行建模,并用于训练孪生卷积神经网络(siamese CNN)。同时,我们提出了三种自动标注图像对相似程度的技术,用于对MSLS、TB-Places和7Scenes等公开数据集进行重新标注。实验结果表明,采用GCL函数与改进后的标注数据训练的孪生CNN模型,在性能上持续优于传统的二值化训练方法。在MSLS数据集上训练的模型,显著超越了当前最先进的方法,包括NetVLAD、NetVLAD-SARE、AP-GeM和Patch-NetVLAD,并在Pittsburgh30k、Tokyo 24/7、RobotCar Seasons v2以及Extended CMU Seasons等多个基准数据集上表现出优异的泛化能力。此外,使用GCL函数训练孪生网络无需复杂的样本对挖掘过程,显著降低了训练复杂度。相关源代码已开源,地址为:https://github.com/marialeyvallina/generalized_contrastive_loss。