Skip to main content
DL Hacks 2021 Introductory Session
Alfredo Solano, Matsuo Laboratory
2023/08/04 Yuya TAKEDA, TMI M1
AnyLoc: Towards Universal Visual Place Recognition
概要
• VPR(Visual Place Recognition)はこれまで、環境とタスクに特化
– 構造化環境(主に都市走行)では高い性能
– 非構造化環境では性能が著しく低下
• 広い範囲で再学習やFT不要の普遍的な学習手法を提案
– VPRに特化しない既存の自己教師ありモデルから得られる汎用的な特徴表現
と、教師なしの特徴量の集約を組み合わせる
• 既存手法の最大4倍の性能(Recall@9)を達成
2
ほとんどのアプローチが実世界で脆弱になる
書誌情報
• 著者:
Nikhil Keetha, Avneesh Mishra, Jay Karhade, Krishna Murthy
Jatavallabhula, Sebastian Scherer, Madhava Krishna, Sourav
Garg
• 発表:2023/08/01, arXiv
• リンク
– 論文 https://arxiv.org/abs/2308.00688
– コード https://github.com/AnyLoc/AnyLoc
– サイト https://anyloc.github.io/
– その他
• https://colab.research.google.com/github/AnyLoc/AnyLoc/blob/main/demo/images_vlad_c
lusters.ipynb
• https://youtu.be/ITo8rMInatk 3
背景
• VPRはしばしば画像検索問題として二つのフェーズに分けられる
– インデックス作成段階
ロボットの車載カメラから、環境内をトラバース
する際に参照マップ(画像データベース)を収集する
– 検索段階
将来のトラバースで撮影されたクエリ画像が
与えられると、VPRは参照マップにおいて
このクエリ画像に最も近い照合を検索する
• 本研究では、正確なマッチングと
検索効率の間の最も良いトレード
オフを提供するglobal descriptor
に焦点を当てる 4
背景
• 最新のVPRアプローチで最も性能が良いのは、VPRに特化した
データでの大規模な学習によるもの
– NetVLADにおける弱教師あり対照学習は、深層学習とPitts-250kデータセッ
トに代表されるように、古典的な手作業で作られた特徴量よりも大幅に改善
– CosPlaceは分類ベー スの学習とGPSと方位を持つ4000万枚の画像からなる
サンフランシスコXLデータセットを結合
– MixVPRはGSV-Citiesデータセット全世界の62,000箇所に及ぶ53万枚の画像
からなる大規模データセットで学習したMLPベースの特徴混合器を提案
5
背景
• VPR学習のスケールアップの傾向
– 主に屋外環境で容易に利用できる測位データによってもたらされ、都市環境では
SoTA達成につながる
– しかし、屋内や非構造な環境では一般的ではない
– さらに、特徴空間内の狭い領域に集中し、学習分布外の環境における識別能力を低
下させる
• 特定の課題に単独で対応しがち
– シーン外観の極端な時間的変化やカメラ視点など
– このようなデータおよびタスクに特化したアプローチは、そこから外れた適用性を
制限
– タスクに依存しない学習による緩和の可能性がある
• そこで、本研究では、ウェブスケールの自己教師付き視覚表現を用いて
VPRの設計空間を解析し、普遍的な解決策を開発
6
既存手法
7
• NetVLAD
• DINO
– BYOLに似た自己教師あり表現学習の手法
• DINOv2
• CLIP
• CosPlace
• MixVPR(SoTA)
DINO
DINOv2
手法
• 基盤モデルの特徴表現を通じてVPRソリューションの設計空間を
探索する際に現れた、2つの重要な洞察
– 既存のVPRソリューションは タスクに特化しており、
学習分布外の環境で評価すると性能が低下(前述)
– 基盤モデルの画素単位の特徴は顕著な視覚・意味的一貫性を示すが、
VPRにそのまま使用した場合、画像単位の特徴は最適でない
• したがって、最近のアプローチが小規模な屋内環境や視覚言語の使
用例に限定されるなかで、これらの画素単位の不変性を画像レベル
に変換し、場所を認識するためには、慎重な調査が必要
8
手法
• AnyLocを設計するために、以下を調査
– VPRに最も適した基盤モデルは何か?
• 視覚的特徴の抽出に最も適しているのは?
– このような汎用モデルから、どのようにしてVPRに適した
局所特徴を抽出するか?
• 事前学習された視覚変換器(ViT)からの抽出
– 局所特徴を集約して場所を記述するにはどうすればよいか?
• パイプライン設計
– データセット間で汎化するボキャブラリーをどのように構築するか?
9
手法
• AnyLocを設計するために、以下を調査
– VPRに最も適した基盤モデルは何か?
• 視覚的特徴の抽出に最も適しているのは?
– このような汎用モデルから、どのようにしてVPRに適した
局所特徴を抽出するか?
• 事前学習された視覚変換器(ViT)からの抽出
– 局所特徴を集約して場所を記述するにはどうすればよいか?
• パイプライン設計
– データセット間で汎化するボキャブラリーをどのように構築するか?
10
手法
• タスクに依存しない視覚的特徴を抽出する自己教師ありの
基盤モデル
– 共同埋め込み法 (DINO, DINOv2)
• DINOはImageNetでグローバルな画像レベルの自己教師あり学習
• DINOv2は画像とトークンレベルの共同損失により、より大規模で慎重にキュレーション
されたデ ータセットで学習
– 対照学習 (CLIP)
– マスクドオートエンコーディング法 (MAE)
• トークンレベルのMAEより他のモデルの方が良い性能を示す
– 理論的には、ジョイントエンベディング手法で捉えられた長距離グローバル
パターンを学習することの利点が強調されている
AnyLoc では、DINO と DINOv2 を用いて視覚的特徴を抽出
11
手法
• AnyLocを設計するために、以下を調査
– VPRに最も適した基盤モデルは何か?
• 視覚的特徴の抽出に最も適しているのは?
– このような汎用モデルから、どのようにしてVPRに適した
局所特徴を抽出するか?
• 事前学習された視覚変換器(ViT)からの抽出
– 局所特徴を集約して場所を記述するにはどうすればよいか?
• パイプライン設計
– データセット間で汎化するボキャブラリーをどのように構築するか?
12
手法
• 画像ごとの特徴量
– 画像全体に対して1つの特徴ベクトル
– ViTでは、画像ごとの特徴は特別なトークンであるCLSで符号化され、
画像内容の要約として解釈される
• 画像ごとの特徴量を抽出するのではなく、ピクセルごとの特徴量に
よってきめ細かいマッチングが可能になり、優れた性能が得られる
• ViTの各層は複数のファセット(クエリ、キー、値、トークン)を持ち、
そこから特徴を抽出することができる
ViT全体の中間層から特徴を抽出し、CLSトークンは破棄
13
手法
• VPRへの密なViT 特徴の適用性を、局所特徴の対応関係のロバスト性で評価
14
手法
• ViTの初期の層(上段)、特にキーファセ ットとクエリファセットは高い位置符号化バイアスを示し、 31層
(より深い層)の値ファセットは類似性マップにおいて最もシャープなコントラストを示すことがわかった
15
手法
• AnyLocを設計するために、以下を調査
– VPRに最も適した基盤モデルは何か?
• 視覚的特徴の抽出に最も適しているのは?
– このような汎用モデルから、どのようにしてVPRに適した
局所特徴を抽出するか?
• 事前学習された視覚変換器(ViT)からの抽出
– 局所特徴を集約して場所を記述するにはどうすればよいか?
• パイプライン設計
– データセット間で汎化するボキャブラリーをどのように構築するか?
16
手法
• VPRパイプラインの設計では、画像の部分、ひいては環境を記述す
るために、局所的な特徴がどのようにグループ化されるかを決定す
る集約技術を選択することが必要
• 先行研究では画像検索にCLSトークンを直接利用しているが、
普遍的な検索設定(再学習やFTが禁止されている)では逆効果
• 複数の教師なし集計技術を包括的に探求
– グローバル平均プーリング(GAP)
– グロ ーバル最大プーリング(GMP)
– 一般化平均プーリング(GeM)
– VLADのソフト&ハード割り当て変種
17
手法
• サイズ H ×W の入力画像と画素毎の特徴量 fi ∈ R D に対して 、
global descriptorを次のように定義する
– ここで、p = 1, p = 3, p → ∞はそれぞれGAP, GeM, GMPを表す
18
手法
• VLADの変形では、データベース画像から全ての特徴をクラスタリン
グし、N個のクラスタ中心を得る。これが我々の 語彙となる。そし
て、グローバルVLAD記述子は、クラスタ中心kあたりの残差の総和
として、以下のように計算される
– αk(xi)は、fi がクラスタ k に割り当てられた場合に 1、そうでない場合に 0 と
なる
– VLADのソフトアサインメントでは、 は割り当て確率を表し、0と1の
間にある
– 正規化、連結、正規化を行い、最終的なVLAD記述子FVを得る.
19
手法
• AnyLocを設計するために、以下を調査
– VPRに最も適した基盤モデルは何か?
• 視覚的特徴の抽出に最も適しているのは?
– このような汎用モデルから、どのようにしてVPRに適した
局所特徴を抽出するか?
• 事前学習された視覚変換器(ViT)からの抽出
– 局所特徴を集約して場所を記述するにはどうすればよいか?
• パイプライン設計
– データセット間で汎化するボキャブラリーをどのように構築するか?
20
手法
• 語彙に基づく集計技術については、多様な環境においてグローバルに
プールされた局所特徴の明確な意味的特性を特徴付けることを目的として、
語彙を構築する
• VLADに基づく先行研究
– 代表的な場所と特徴に基づくグローバル 語彙
– 参照マップ固有の語彙
– 学習データセットに基づく学習済み語彙
• これらのアプローチは都市のシナリオには有効であるが、基盤モデルの
特徴にエンコードされたオープンセットの意味属性には適していない
• そこで、グローバル にプールされた局所特徴量(GeM記述子)を特徴付ける
ことにより、VLADのための語彙選択の指針とする
21
手法
• 都市、屋内、空中、SubT(地下)、Degraded、Underwaterの6分類
• さらに、昼夜、視覚変化など
22
実験設定
• VPRに特化した学習、グローバル画像表現、学習の種類、バックボーンモデル、
学習データの規模や性質など、 様々な既存のVPRソリューション手法の大規模
な選択に対してAnyLocを評価
• 大規模な都市データセットでVPRタスクのために学習させた3つの特殊なベース
ラインと、基盤モデルのCLSトークンを使用する3つの新しいベースライン
23
実験設定
• AnyLocの命名法
– AnyLoc-aggregation-model
– aggregationはVLAD, GeM
– modelはDINO, DINOv2
• 語彙の指定
– データセット間で参照画像の頻度がほぼ同等になるように、Urbanの語彙に
ついては、OxfordとSt Luciaのすべての画像を使用
– (はるかに大きな)Pitts-30kデータセットでは4番目の画像のみを使用
24
実験結果と分析
• ベースライン手法との比較(26頁)
– SoTAのVPR技術に対するAnyLocの評価
– 構造化環境と非構造化環境、視点シフト、時間的外観の変化に対する結果
• 語彙分析(27頁)
• AnyLocデザインへの洞察(28頁)
• 既存のVPR学習済みVITと自己教師ありのViTの比較(29頁)
25
実験結果と分析
26
実験結果と分析
• descriptorの特徴をPCAで可視化すると、MixVPR(上、既存手法)は固まっているのに対し、
AnyLoc-Gem-DINOv2(下、提案手法)はバラけている
27
実験結果と分析
(a) モデルサイズ (DINOはViT-Sのみ)
(b) 使用レイヤー
- DINOは9層を演算層として選択
- DINOv2では31層を演算層として選択
28
実験結果と分析
• VPRに特化して学習したViT(表の白、CosPlace)と、
自己教師に基づくViT(表の橙、DINO & DINOv2)の比較
• ViT-Bベースの手法の比較(矢印)
– VLADによってCosPlaceの全体的な性能が向上しても、
AnyLoc-VLAD-DINOv2は8-13%上回る
– ViT-SベースのAnyLoc-VLAD-DINOでさえ、4倍少ないパラメータで
ViT-BベースのCosPlace-VLAD を4-18%上回る 29
まとめ
• ユニバーサルVPRに向けた重要なステップであるAnyLocという
学習手法を提案
• 環境およびタスクに特化したVPRの限界と、基盤モデルから
抽出された画像単位の特徴の脆弱性に対し、
ピクセル単位の特徴と、VLADやGeMのような教師なし特徴集約技術
をブレンド
• 非常に多様な環境セット(anywhere)、時間的変化(anytime)、
広範囲の視点変動(anyview)にわたって、普遍的なVPRを可能に
– 適用範囲を拡張し、ひいては、野生のロボットナビゲーションのような下流
の能力を可能にするために極めて重要
30