Upgrade to Pro — share decks privately, control downloads, hide ads and more …

DNN による特徴点マッチング

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on.

DNN による特徴点マッチング

Avatar for ALBERT Inc.

ALBERT Inc.

July 07, 2020
Tweet

More Decks by ALBERT Inc.

Other Decks in Technology

Transcript

  1. マッチング n 主なマッチング⼿法 Ø テンプレートマッチング︓元画像を使って⼀致する部分を画像内から全検索する Ø 特徴点マッチング︓画像の特徴的な点を抽出し、各点の対応関係から全体の対応を推定する 3 Introduction テンプレートマッチング

    特徴点マッチング 回転 ⽐較 n 対象画像とピクセル単位で⽐較した際の誤差を使 ったマッチング n メリット n 形状全体を踏まえて⽐較できる n 予め変化パターンが分かっていれば、マッチング可能 n デメリット n 反射や背景の変化など、⾊の変化に弱い n 検索画像上を元画像単位で検索するので時間がかかる n 対象との距離や視差の変化による形状変化に弱い n 画像上の特徴的な点(特徴点)と点に対応するベ クトル表現(記述⼦)を使った点同⼠のペア作成 n メリット n 背景などの⾊の変化の影響が少ない n 検索時間が点数依存のため、コントロールしやすい n デメリット n 形状の⼀部の情報しか利⽤できない n 回転によるベクトル表現の変化に弱い n 特徴点検出、記述⼦⽣成アルゴリズムの精度が限定的 元画像 検索画像 元画像 検索画像
  2. DNNによる特徴点・記述⼦作成 n 特徴点学習 Ø セグメンテーションとほぼ同様の⼿順 Ø ピクセルごとに特徴点の有無を予測 n 記述⼦学習 Ø

    メトリックラーニングと類似した枠組み Ø 画像に対して記述⼦ベクトルを予測 p 詳細は以降のスライドへ 4 Introduction 特徴点確率 ⼊⼒画像 ベクトル表現 (記述⼦) ⼊⼒画像 特徴点 記述⼦
  3. 記述⼦の学習 n 記述⼦は特徴点が同じ場所を指しているかうまく識別する必要がある Ø 『画像から特徴ベクトルを作成し、そのベクトルの類似度で同じか識別する』 n メトリックラーニング(計量学習)と類似した分野 Ø メトリックラーニング =

    画像から類似/相違を判別できる特徴量⽣成 Ø 記述⼦学習 = 特徴点(の周囲の画像)から類似/相違を判別できる特徴量⽣成 5 Introduction 記述⼦のイメージ図 メトリックラーニングのイメージ図 https://twitter.com/kosukemizz0310
  4. 特徴空間の作り⽅(Contrastive/Triplet loss) n Contrastive loss︓ポジティブ/ネガティブの区別なく、それぞれの類似度に対して学習を⾏う 7 Introduction 近づける 離す !

    , " = ! " + 1 − ( − ! " , 0) s︓点0と点1がネガティブペアかを指すフラグ d0 ︓点0の記述⼦ d1 ︓点1と記述⼦ m︓ポジティブの類似度最⼤値 n Triplet loss︓特徴点1つに対してポジティブ・ネガティブを同時に学習する ポジティブ ネガティブ # , $ , % = max(# % − # $ + , 0) ポジティブ ネガティブ da ︓対象点の記述⼦ dp ︓対象とポジティブとなる点の記述⼦ dn ︓対象とネガティブとなる点の記述⼦ m︓ポジティブ/ネガティブの類似度の差分
  5. 特徴空間の作り⽅(ペアワイズ vs リストワイズ) n ペアワイズ︓画像内の2つの特徴点を参考に特徴空間を作る Ø ポジティブなペアに⽐べ、ネガティブなペアが多いため、学習が偏り易い n リストワイズ︓画像内の全ての特徴点を参考に特徴空間を作る Ø

    割合や順序など全体のバランスを⾒るため、偏りの影響が⼩さい 8 Introduction ペアワイズ ・・・ ・・・ リストワイズ ・・・ ・・・ 画像1 画像1 ・・・ 画像2 ・・・ 画像N ・・・ ・・・ ・・・ 画像2 画像N 基準 特徴点 ⽐較 特徴点
  6. SOSNet [2] n パッチから記述⼦のみを作成するモデル n 記述⼦の学習にパッチ間の類似度を保存させる制約を加えた⼿法 Ø Triplet lossを⽤いて、ポジティブ/ネガティブの 類似度を学習

    Ø 2つ異なるパッチに対して、変形前後で類似度の 差分をロスとして導⼊(下式・右上図を参照) 14 論⽂紹介 d0 d1 dʼ0 dʼ1 ポジティブ ネガティブ d0 ︓元画像内にある点0の記述⼦ d’0 ︓回転画像内にある点0の記述⼦ d1 ︓元画像内にある点1の記述⼦ d’1 ︓回転画像内にある点1の記述⼦ 変形前後でパッチ間の類似度を揃える &'& ! , " = ! (" − ′! ( ′" 特徴点ごとの分離度を超球上に プロットした図 学習対象のイメージ例 変形
  7. D2-Net [3] n 画像から特徴点・記述⼦を1つのネットワークで作成 n これまでの⼿法(ex. SuperPoint) Ø 特徴点・記述⼦は別々に⽣成 Ø

    DNNにとって扱いやすいかではなく、決まった特徴点を学習する n 提案⼿法 Ø 記述⼦のみ⽣成 Ø 特徴点として、周辺と⼤きく異なる記述⼦を持つピクセルを利⽤ 15 論⽂紹介 !" # = !" # ∑ !!"! ∈ !," !!"! # !" # = ) !" # max ' !" ' !" = max # !" # !" # !" = / !" 0 !!,"! ∈(!,") !!"! , 周囲数px内の⼤きさ 記述⼦ベクトル内の⼤きさ 記述⼦の周囲に対する突出度 突出度の周囲に対する割合 k = 0 *∈+ * (,)* (-) ∑.∈+ . (,). (-) _() c︓画像間の対応関係、sc (1)︓画像1の対応する座標に関する突出率
  8. ContextDesc [4] n 画像から特徴点ごとの記述⼦を作成するモデル Ø 3種類の経路から個別に記述⼦を作成する p Geometric context︓特徴点の分布情報から記述⼦を作成 p

    Local feature︓特徴点周囲の画像情報から記述⼦を作成(Patch型と同等) p Visual context︓画像全体から複数ピクセルの記述⼦を作成(Dense型とほぼ同等) 16 論⽂紹介
  9. DOAP [5] n パッチから記述⼦のみを作成するモデル n 予測結果の順序を評価するAverage Precisionを最⼤化 Ø Average Precisionは上位の予測結果が正解かを重視した評価指標

    Ø 検索結果の各正解ごとに1位〜対象順位までのPrecisionを平均した値 17 論⽂紹介 順位 1位 2位 3位 4位 5位 6位 7位 正解 ◦ ✕ ✕ ◦ ◦ ✕ ◦ ⁄ 1 1 ⁄ 2 4 ⁄ 3 5 = 1 0 ! / ! ⁄ 4 7 = 1 4 ⁄ 1 1 + ⁄ 2 4 + ⁄ 3 5 + ⁄ 4 7 = 0.668 N︓合計正解数 Ranki ︓i番⽬の正解検索結果の検索順位 計算例 元画像 ⽐較画像 1.0 0.0 類似度 類似度の離散値に変換 順位としてAPを計算 1st 2nd 3rd 4th 5th = 1 2 ⁄ 1 1 + 2/3 = 0.833
  10. L2-Net [6] n パッチから記述⼦のみを作成するモデル Ø ネガティブの類似度に対するポジティブの類似度⽐率を⽤いるリストワイズ型 Ø ネガティブに対するポジティブの割合を1に近づけるように学習 18 論⽂紹介

    ポジティブ ネガティブ 特徴点ペアの作成 全ペアの類似度計算 ポジティブペアの割合計算 ポジティブペアの類似度 ネガティブペアの類似度 p1 p2 p3 p4 p5 p6 p1’ p2’ p3’ p4’ p5’ p6’ 元 画 像 変形画像 変形 元 画 像 回 転 画 像 p1 p2 p3 p4 p5 p6 p1’ p2’ p3’ p4’ p5’ p6’ 元 画 像 変形画像 変形前/変形後のネガティブに対する ポジティブペアの類似度を計算
  11. HardNet [7] n パッチから記述⼦のみを予測するモデル n 対象パッチに対して、「ポジティブ」と「分離が難しいネガティブ」のパッチを学習 p 学習ではtriplet lossを利⽤ p

    対象パッチと「対応するポジティブ」、「最も記述⼦の類似度が⾼いネガティブ」のそれぞれを利⽤ 19 論⽂紹介 = 1 0 !0,…2 max(0, 1 + ! , ! − ℎ_! ) ℎ_! = min( ! , "3!2 , #3!2 , ! ) n︓バッチサイズ ai ︓i番⽬パッチの記述⼦ pi ︓ ai に対応するポジティブパッチの記述⼦ akmin ︓ pi に対して、最近傍となるネガティブパッチの記述⼦ pjmin ︓ ai に対して、最近傍となるネガティブパッチの記述⼦
  12. マッチングコンペティション(2019) n CVPR 2019 で⾏われた複数視点のマッチングコンペの上位20件 n 特徴点数制限なし︓ContextDesc[4]が⾼い精度を出しており、D2-Net[3]が続いている n 特徴点数制限あり︓SuperPoint[1]が⾼精度を独占している 21

    Summary https://image-matching-workshop.github.io/leaderboard/ ContextDesc SuperPoint ContextDesc D2-Net SuperPoint ContextDesc SuperPoint HardNet D2-Net 特徴点数制限あり 特徴点数制限なし 1st 10th 20th 11th
  13. マッチングコンペティション(2020) 22 Summary https://vision.uvic.ca/image-matching-challenge/leaderboard/ 1st 10th n CVPR 2020 で⾏われた複数視点のマッチングコンペの点数制限あり/なしごとの上位10件

    n 特徴点数制限なし︓ContextDesc[4]を抑えてHardNet[7]が上位を独占している n 特徴点数制限あり︓2019年と同様にSuperPoint[1]が⾼い精度を⽰している 1st 10th HardNet 特徴点数制限あり 特徴点数制限なし SuperPoint HardNet DISK HardNet HyNet
  14. まとめ n 2017-2019年を中⼼に、いろいろな⼿法が提案されてきつつある。 n 記述⼦だけでなく特徴点単独を扱うDNNや特徴点ペアの外れ値を処理するDNNも提案されている。 n 精度の観点では、SuperPointとHardNetがスタンダートになりつつある。 23 Summary 名前

    概略 推論 貢献 SuperPoint[1] Contrastiveロスによる特徴点・記述⼦ ネットワーク 特徴点+記述⼦ 疑似正解データ⽣成⼿法の提案 SOSNet[2] 特徴点間の距離関係を利⽤ 記述⼦ ⾼次な情報表現による制約を記述⼦ D2-Net[3] 記述⼦から特徴点を作成 特徴点+記述⼦ 特徴点情報と記述⼦情報を明⽰的に 結合 ContextDesc[4] 特徴点の分布、2つの解像度による記述 ⼦を利⽤した記述⼦推論 記述⼦ 特徴点分布の提案とモジュールの組 み合わせによる記述⼦提案 DOAP[5] 順位を最適化する 記述⼦ 順序関係をターゲットにした最適化 L2-Net[6] 全特徴点の類似度に対するポジティブの 割合を利⽤ 記述⼦ ネガティブに対する相対値を学習に 利⽤可能に HardNet[7] 最も類似しているネガティブ(Hard Negative)のみを学習対象に利⽤ 記述⼦ Tripletロスを⽤いたHard Negativeによ る学習
  15. 参考⽂献 n [1] Daniel DeTone, Tomasz Malisiewicz, Andrew Rabinovich. SuperPoint:

    Self-Supervised Interest Point Detection and Description. CVPR 2018 Deep Learning for Visual SLAM Workshop n [2] Yurun Tian, Xin Yu, Bin Fan, Fuchao Wu, Huub Heijnen, Vassileios Balntas. SOSNet: Second Order Similarity Regularization for Local Descriptor Learning. CoRR 2019 n [3] Mihai Dusmanu, Ignacio Rocco, Tomas Pajdla, Marc Pollefeys, Josef Sivic, Akihiko Torii, Torsten Sattler. D2-Net: A Trainable CNN for Joint Detection and Description of Local Features. CVPR 2019 n [4] Zixin Luo, Tianwei Shen, Lei Zhou, Jiahui Zhang, Yao Yao, Shiwei Li, Tian Fang, Long Quan. ContextDesc: Local Descriptor Augmentation with Cross-Modality Context. CVPR 2019 n [5] Kun He, Yan Lu, Stan Sclaroff. Local Descriptors Optimized for Average Precision. CVPR 2018 n [6] Yurun Tian, Bin Fan, Fuchao Wu. L2-Net: Deep Learning of Discriminative Patch Descriptor in Euclidean Space. CVPR 2017 n [7] Mishchuk, Anastasiia, et al. Working hard to know your neighbor's margins: Local descriptor learning loss. NeurIPS 2017 24 Summary