KeyNet

Barroso-Laguna 2019 · 論文

一行要約 — 手作りの微分フィルタと少数の学習型CNN層を浅いマルチスケールアーキテクチャで組み合わせた学習型キーポイント検出器(Key.Net)であり、スケール間でのキーポイント再検出性(repeatability)を最大化するよう学習される。

問題

古典的な検出器(Harris、DoG)は手作りの微分フィルタとスケール空間ヒューリスティクスから構築されており、解釈可能で計算コストも低いが、下流にとって重要な性質である実際の視点変化・スケール変化のもとでの再検出性に対して最適化されているわけではない。完全に学習型の検出器はもう一方の極端であり、2019年当時、手作り検出器に対する優位性は明確には示されていなかった: CNN検出器は特にスケールに苦戦し、勾配構造の再発見に容量を浪費していた。Key.Netは、正しい手作りの構造で種付けされた小規模ネットワークが両者を上回れるかを問う。

手法とアーキテクチャ

手作り+学習フィルタ。 最初の層は、HarrisおよびHessianの精神に基づく10個の微分ベースフィルタからなる固定バンクである: 一次のマップIxI_xIyI_yIxIyI_x I_yIx2I_x^2Iy2I_y^2と二次のIxxI_{xx}IyyI_{yy}IxyI_{xy}IxxIyyI_{xx} I_{yy}Ixy2I_{xy}^2である。これらはソフトなアンカーとして機能する;続く3つの学習型ブロック(それぞれM=8M=8フィルタの5x5畳み込み+バッチ正規化+ReLU)が特徴の位置特定、スコアリング、ランキングを行う。ハードコードされたフィルタは学習可能パラメータを削減し、学習を安定化させる。

ネットワーク内のスケール空間。 入力は3つのピラミッドレベル(1.2倍でブラー+ダウンサンプル)で処理され、すべてのストリームは重みを共有する;特徴マップはアップサンプルされ結合され、最終的な学習型フィルタによって単一の応答マップR\mathcal{R}に融合される。アブレーション: 1レベルでは検証時の再検出性72.5、3レベルでは79.1、3を超えると増加はわずかである。

Index Proposal (IP) 層。 キーポイント抽出を通じて微分可能に学習するため、R\mathcal{R}の各N×NN\times Nウィンドウwiw_iは空間ソフトマックスによってソフトな座標に変換される。

mi(u,v)=ewi(u,v)j,kNewi(j,k),[xi,yi]T=u,vN[Wmi,  WTmi]T+cwm_{i}(u,v)=\frac{e^{w_{i}(u,v)}}{\sum_{j,k}^{N}e^{w_{i}(j,k)}}, \qquad [x_{i},y_{i}]^{T}=\sum_{u,v}^{N}[W\odot m_{i},\;W^{T}\odot m_{i}]^{T}+c_{w}

これは非最大値抑制の微分可能な代替である(WWはインデックス値を保持し、cwc_wはウィンドウの角である)。画像Ia,IbI_a, I_b間の正解のホモグラフィHb,aH_{b,a}が与えられると、共変制約損失(covariant-constraint loss)はある画像でのIP座標を他の画像のNMS極大点に回帰させる:

LIP(Ia,Ib,Ha,b,N)=iαi[xi,yi]aTHb,a[x^i,y^i]bT2,αi=Ra(xi,yi)+Rb(x^i,y^i)\mathcal{L}_{IP}(I_{a},I_{b},H_{a,b},N)=\sum_{i}\alpha_{i}\,\|[x_{i},y_{i}]^{T}_{a}-H_{b,a}[\hat{x}_{i},\hat{y}_{i}]^{T}_{b}\|^{2}, \quad \alpha_{i}=\mathcal{R}_{a}(x_{i},y_{i})+\mathcal{R}_{b}(\hat{x}_{i},\hat{y}_{i})

これにより有意な特徴のみが損失に貢献する;損失は両方向に対称的に計算される。

Multi-Scale Index Proposal (M-SIP)。 損失はウィンドウサイズNs{8,16,24,32,40}N_s\in\{8,16,24,32,40\}にわたって重みλs{256,64,16,4,1}\lambda_s\in\{256,64,16,4,1\}で平均化される:

LMSIP(Ia,Ib,Ha,b)=sλsLIP(Ia,Ib,Ha,b,Ns)\mathcal{L}_{MSIP}(I_{a},I_{b},H_{a,b})=\sum_{s}\lambda_{s}\,\mathcal{L}_{IP}(I_{a},I_{b},H_{a,b},N_{s})

これにより、ネットワークは異なるコンテキストサイズにわたって優位性を保つキーポイントに最高スコアを与えるよう強制される — スコアリングとランキングは損失自体から自然に生じる。アブレーション: 5つすべてのウィンドウでは再検出性79.1に対し、8x8ウィンドウのみでは70.5である。

安価な学習データ。 ImageNetから生成された192x192サイズの画像ペア12,000組で、ランダムなスケール[0.5, 3.5]、スキュー、回転(±60°)、フォトメトリックジッターを与える — 手作業のアノテーションなしで正解の対応関係が無料で得られる。Key.Netのシャム対(siamese pair)は約30エポック(GTX 1080 Tiで約2時間)で収束する。

実験結果

SLAMにおける意義

SLAMのフロントエンドは検出器の再検出性次第で成否が決まる: 同じ3D点がフレーム間で再検出されなければ、どんな記述子もマッチを救うことはできない。Key.Netは、古典的な検出器の事前知識(手作りフィルタ、スケール空間)を小規模な学習モデルに注入することが、純粋な手作り検出器・純粋な学習型検出器の両方を再検出性で上回りながらリアルタイムパイプラインに十分軽量であることを示した — これは組み込みSLAMに直接関係する設計上の観点である。

関連ノート