
摘要
视觉场景识别(Visual Place Recognition)是机器人与自主系统面临的一项具有挑战性的任务,必须应对不断变化世界中外观与视角变化带来的双重难题。本文提出了一种名为Patch-NetVLAD的新方法,通过从NetVLAD残差中提取局部块级特征,创新性地融合了局部特征与全局特征方法的优势。与现有局部关键点特征所采用的固定空间邻域机制不同,本方法能够在特征空间网格上实现深度学习所得局部特征的聚合与匹配。此外,本文引入了一种基于统一特征空间的多尺度融合策略,将具有互补尺度(即不同块大小)的局部特征进行融合,实验表明,融合后的特征对环境条件变化(如季节、结构和光照)以及视角变化(如平移与旋转)均表现出高度的不变性。Patch-NetVLAD在计算开销相当的情况下,显著优于现有的全局特征与局部特征描述子方法,在多个具有挑战性的真实世界数据集上取得了当前最优的视觉场景识别性能,甚至在ECCV2020举办的Facebook Mapillary视觉场景识别挑战赛中获得冠军。该方法还具备良好的可配置性,其经过速度优化的版本运行速度比当前最优方法快一个数量级。通过在可配置框架中同时实现卓越的识别性能与显著提升的计算效率,Patch-NetVLAD不仅能够有效增强独立的场景识别能力,还可显著提升SLAM系统整体性能,因而极具实际应用价值。
代码仓库
marialeyvallina/generalized_contrastive_loss
pytorch
GitHub 中提及
taowenyin/PatchNetVLAD
pytorch
GitHub 中提及
gmberton/VPR-datasets-downloader
GitHub 中提及
QVPR/Patch-NetVLAD
官方
pytorch
GitHub 中提及
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| visual-localization-on-extended-cmu-seasons | Patch-NetVLAD | Acc @ .25m, 2°: 0.118 Acc @ .5m, 5°: 0.362 Acc @ 5m, 10°: 0.962 |
| visual-localization-on-robotcar-seasons-v2 | Patch-NetVLAD | Acc @ .25m, 2°: 0.096 Acc @ .5m, 5°: 0.353 Acc @ 5m, 10°: 0.909 |
| visual-place-recognition-on-mapillary-val | Patch-NetVLAD | Recall@1: 79.5 Recall@10: 87.7 Recall@5: 86.2 |
| visual-place-recognition-on-nordland | Patch-NetVLAD | Recall@1: 58.4 Recall@5: 74.6 |
| visual-place-recognition-on-pittsburgh-30k | Patch-NetVLAD | Recall@1: 88.7 Recall@5: 94.5 |
| visual-place-recognition-on-tokyo247 | Patch-NetVLAD | Recall@1: 86 Recall@10: 90.5 Recall@5: 88.6 |