PROSAC

PROSAC (Progressive Sample Consensus) は、Chum & Matas (2005) によるRANSACの変種であり、通常のRANSACが捨ててしまう事実を活用する。対応点はインライアである可能性が等しくないということであり、通常はそれを予測するマッチごとの品質スコアがある — 記述子距離、あるいはより良い指標として、最近傍と2番目に近い近傍の距離の比であるLoweの比 d1/d2d_1 / d_2 である。

アイデア

nn個の仮の対応点を品質の高い順にソートする。すべてのnn個のマッチから均一にサンプリングして最小集合を作る代わりに、PROSACは徐々に成長する部分集合からサンプルを引く。

形式的には、成長関数によって、プールサイズが mm から m+1m+1 に増加するまでに何回サンプリングを行うかが決まる。各サンプルは、新たに追加されたマッチと、上位 mm個から引かれた s1s - 1個のマッチから構成される。設計上の目標は、PROSACがRANSACとほぼ同じサンプルの集合を引くが、品質に基づいた異なる順序で(最も有望なものから先に)引くということである。

アルゴリズムの概略

  1. 対応点を品質スコアの高い順にソートする。
  2. 現在のプールサイズ mm (初期値は m=sm = s)とその成長スケジュールを維持する。
  3. 各反復で、上記のように上位mm個のマッチから最小サンプルを構成し、モデルを当てはめ、全てのnn個の対応点に対して検証する。
  4. インライア数によって最良のモデルを追跡する。RANSAC式の信頼性基準(非乱択のインライア数と、現在のインライア比推定値に対する十分なサンプル数)が満たされたら停止する。
  5. 標準的なRANSACと同様に、すべてのインライアに対して最小二乗法で再フィッティングする。

特性

P(success)=1(1ws)N1ηP(\text{success}) = 1 - (1 - w^s)^N \geq 1 - \eta

実践上の注意点

SLAMにおける意義

関連ノート