QUASAR

Yang 2019 · 論文

一行要約 — 外れ値を含むWahba問題(回転探索)に対する初の多項式時間で証明可能に最適な解法。Truncated Least Squaresコストを単位クォータニオンと「バイナリクローニング」を用いてQCQPに書き換え、緊密なSDP緩和によって解く。

問題

Wahba問題 — 想定された対応関係が与えられた2つのベクトル観測集合を最もよく整合させる回転を求める問題 — は点群位置合わせ、画像スティッチング、モーション推定、衛星姿勢決定における基本的な処理である。外れ値のないバージョン minRSO(3)iwi2biRai2\min_{\mathbf{R}\in\mathrm{SO}(3)}\sum_i w_i^2\Vert\mathbf{b}_i-\mathbf{R}\mathbf{a}_i\Vert^2 には閉形式解があるが、特徴マッチングから得られる実際の対応関係は95%が外れ値であることもある(例: FPFHマッチング)。RANSACの実行時間は外れ値率に対して指数的に増大し、ノイズに対しても性能が劣化する。ロバストな局所最適化(例: FGR)は局所最小値で停滞し得るし、Branch-and-Boundは大域的に最適だが最悪ケースで指数的である。QUASAR以前には、多数の外れ値を含む回転探索に対する多項式時間の証明可能に最適な手法は存在しなかった。

手法とアーキテクチャ

TLS(Truncated Least Squares)の定式化。 各測定値は、残差が小さい間のみ最小二乗項として寄与する。閾値を超えると飽和し、推定に影響を与えなくなる:

minRSO(3)i=1Nmin(1σi2biRai2, cˉ2),\min_{\mathbf{R}\in\mathrm{SO}(3)} \sum_{i=1}^{N} \min\left( \frac{1}{\sigma_i^2}\Vert\mathbf{b}_i - \mathbf{R}\mathbf{a}_i\Vert^2,\ \bar{c}^2 \right),

ここで σi\sigma_i はインライアのノイズ標準偏差であり、cˉ2\bar{c}^2 は確率 pp(例: p=0.99p=0.99)における χ2(3)\chi^2(3) 分位点として選ばれる。したがって σi2cˉ2\sigma_i^2\bar{c}^2 はインライアとして許容される最大の二乗残差となる。

クォータニオンによる書き換え。 R\mathbf{R} を単位クォータニオン qS3\mathbf{q}\in\mathcal{S}^3 で表現することで、制約集合 SO(3)\mathrm{SO}(3) を単位球に置き換え、Ra\mathbf{R}\mathbf{a} はクォータニオン積 qa^q1\mathbf{q}\otimes\hat{\mathbf{a}}\otimes\mathbf{q}^{-1} で表現される。

バイナリクローニングによるQCQP化。 min(x,y)=minθ{±1}1+θ2x+1θ2y\min(x,y)=\min_{\theta\in\{\pm 1\}} \frac{1+\theta}{2}x+\frac{1-\theta}{2}y を用いると、TLSコストは混合整数プログラムとなり、θi=+1\theta_i=+1 は測定値 ii をインライアとして、θi=1\theta_i=-1 はアウトライアとして宣言する — つまり外れ値の分類が最適化の内部に存在する。クローンクォータニオン qi=θiq\mathbf{q}_i = \theta_i\mathbf{q} を定義すると整数変数が除去され、x=[qT q1T  qNT]T\mathbf{x}=\left[\mathbf{q}^{\mathsf{T}}\ \mathbf{q}_1^{\mathsf{T}}\ \dots\ \mathbf{q}_N^{\mathsf{T}}\right]^{\mathsf{T}} をスタックすると、厳密に等価な二次制約付き二次計画(QCQP)が得られる:

minxR4(N+1)i=1NxTQixs.t.xqTxq=1,xqixqiT=xqxqT i,\min_{\mathbf{x}\in\mathbb{R}^{4(N+1)}} \sum_{i=1}^{N}\mathbf{x}^{\mathsf{T}}\mathbf{Q}_i\mathbf{x} \quad \text{s.t.} \quad \mathbf{x}_q^{\mathsf{T}}\mathbf{x}_q = 1,\quad \mathbf{x}_{q_i}\mathbf{x}_{q_i}^{\mathsf{T}} = \mathbf{x}_q\mathbf{x}_q^{\mathsf{T}}\ \forall i,

ここで既知の対称行列 Qi\mathbf{Q}_iai,bi\mathbf{a}_i,\mathbf{b}_i から構築される。

緊密なSDP緩和。 Z=xxT0\mathbf{Z}=\mathbf{x}\mathbf{x}^{\mathsf{T}}\succeq 0 に持ち上げ、ランク1制約を落とすことで、tr(QZ)\mathrm{tr}(\mathbf{Q}\mathbf{Z}) に関する凸なSDPが得られる。ナイーブな緩和(ブロック対角制約のみ)は、ノイズも外れ値もない場合に証明可能に緊密である(定理7)が、実際に外れ値があると破綻する。QUASARはオフダイアゴナルブロックに冗長な対称性制約 [Z]qqi=[Z]qqiT[\mathbf{Z}]_{qq_i}=[\mathbf{Z}]_{qq_i}^{\mathsf{T}} および [Z]qiqj=[Z]qiqjT[\mathbf{Z}]_{q_iq_j}=[\mathbf{Z}]_{q_iq_j}^{\mathsf{T}} を追加し、これによって大きなノイズと極端な外れ値率の下でも緩和が経験的に緊密になる。解のランクが1(緩和ギャップがゼロ)の場合、復元された回転は元の非凸なTLS問題に対して大域的に最適であることが証明される。

実験結果

SLAMにおける意義

回転推定は、点群位置合わせ、マップ統合、回転平均化、外部パラメータキャリブレーションなど多くのSLAM部分問題の中に存在する。QUASARは「証明可能な知覚」という研究の流れ(SE-Sync、TEASER++と共に、主に同じグループによる)の一部であり、ロボティクスにおける主要な幾何問題が、重い外れ値汚染の下でも証明可能に大域最適に解けることを示している。TLSコスト、バイナリクローニング、冗長制約付きSDPというその構成要素は、TEASER/TEASER++内部の回転部分ソルバーの機構となった。

関連ノート