Message Passing Least Squares Framework and Its Applications to Rotation Synchronization Yunpeng Shi Joint work with Prof. Gilad Lerman School of Mathematics University of Minnesota
Rotation Synchronization 3 2 1 5 4 Given a graph ๐ป ๐ , ๐น ๐ : = 1,2,3, โฆ , ๐ , ๐น is the set of edges
Rotation Synchronization โ = ? ๐ 3 โ = ? ๐ 2 โ = ? ๐ 1 โ = ? โ = ? ๐ 4 ๐ 5 โ โ ๐๐(3) Each node ๐ โ [๐] is assigned an unknown ground truth rotation ๐ ๐
Rotation Synchronization ๐ 23 โ = ? ๐ 12 ๐ 3 โ = ? ๐ 2 โ = ? ๐ 1 ๐ 25 ๐ 35 ๐ 14 โ = ? โ = ? ๐ 4 ๐ 5 ๐ 45 โข Each edge ๐๐ โ ๐น is given a possibly noisy and corrupted relative rotation ๐ ๐๐ โ = ๐ ๐ โ ๐ ๐ โโ1 โข The uncorrupted relative rotation for ๐๐ โ ๐น is ๐ ๐๐ โ โข Rotation Synchronization : Estimate ๐ ๐ ๐โ[๐] from ๐ ๐๐ ๐๐โ๐น โ ๐ ๐โ[๐] for any rotation ๐ is also a solution โข ๐ ๐
Applications Camera orientation estimation in 3D reconstruction tasks: Structure from motion (SfM) Simultaneous localization and mapping (SLAM) Demonstration by Carl Olsson Demonstration by Raรบl Mur-Artal
Adversarial Corruption Model โ : = ๐ ๐ โ ๐ ๐ โโ1 , ๐ ๐๐ ๐๐ โ ๐น ๐ (good edges) ๐ ๐๐ = แ เทจ ๐ ๐๐ , ๐๐ โ ๐น ๐ (bad edges)
Adversarial Corruption Model โ : = ๐ ๐ โ ๐ ๐ โโ1 , ๐ ๐๐ ๐๐ โ ๐น ๐ (good edges) ๐ ๐๐ = แ เทจ ๐ ๐๐ , ๐๐ โ ๐น ๐ (bad edges) โ โ ๐(๐ ๐๐ , ๐ ๐๐ โ ) Corruption Level ๐ก ๐๐ Commonly, ๐ is the geodesic distance on ๐๐(3)
Least Squares Solvers โ1 , ๐ ๐๐ ) ๐ 2 (๐ ๐ ๐ ๐ ๐ ๐โ[๐] โ๐๐(3) เท minimize ๐ ๐๐โ๐น The most common approximate solution is the Lie algebraic averaging
Robust Solvers: ๐ ๐ minimization ( 0 < ๐ โค 1 ) โ1 , ๐ ๐๐ ) ๐ ๐ (๐ ๐ ๐ ๐ ๐ ๐โ[๐] โ๐๐(3) เท minimize ๐ ๐๐โ๐น
โ1 , ๐ ๐๐ ) over ๐ ๐ ๐โ[๐] in SO(3)? How to minimize ฯ ๐๐โ๐น ๐ ๐ (๐ ๐ ๐ ๐
โ1 , ๐ ๐๐ ) over ๐ ๐ ๐โ[๐] in SO(3)? How to minimize ฯ ๐๐โ๐น ๐ ๐ (๐ ๐ ๐ ๐ Iteratively Reweighted Least Squares (IRLS): โ1 , ๐ ๐๐ ) ฯ ๐๐โ๐น ๐ฅ ๐๐,๐ข ๐ 2 (๐ ๐ ๐ ๐ ๐ ๐,๐ข ๐โ[๐] = argmin ๐ ๐ ๐โ[๐] โ๐๐(3) โ1 , ๐ ๐๐ ) ๐ ๐๐,๐ข = ๐(๐ ๐,๐ข ๐ ๐,๐ข ๐โ2 ๐ฅ ๐๐,๐ข+1 = ๐ ๐๐,๐ข
โ1 , ๐ ๐๐ ) over ๐ ๐ ๐โ[๐] in SO(3)? How to minimize ฯ ๐๐โ๐น ๐ ๐ (๐ ๐ ๐ ๐ Iteratively Reweighted Least Squares (IRLS): โ1 , ๐ ๐๐ ) ฯ ๐๐โ๐น ๐ฅ ๐๐,๐ข ๐ 2 (๐ ๐ ๐ ๐ ๐ ๐,๐ข ๐โ[๐] = argmin ๐ ๐ ๐โ[๐] โ๐๐(3) โ1 , ๐ ๐๐ ) ๐ ๐๐,๐ข = ๐(๐ ๐,๐ข ๐ ๐,๐ข ๐โ2 ๐ฅ ๐๐,๐ข+1 = ๐ ๐๐,๐ข 2โ๐ โ โ ๐(๐ ๐๐ , ๐ ๐๐ โ ) and ๐ฅ ๐๐,๐ข+1 โ 1 Ideally, ๐ ๐๐,๐ข โ ๐ก ๐๐ concentrates on ๐น ๐ โ ๐ก ๐๐
Issue 1: Over-Aggressive Reweighting โ and thus ๐ ๐๐,๐ข โ ๐ก ๐๐ โ โข Under severe corruption, ๐ ๐,๐ข โ ๐ ๐ โข In certain cases, ๐ ๐๐,๐ข โ 0 for ๐๐ โ ๐น ๐ , and thus 2โ๐ 1 ๐ฅ ๐๐,๐ข+1 = can be extremely high for ๐๐ โ ๐น ๐ ๐ ๐๐,๐ข
Issue 2: Poor Least Squares Solution โ1 , ๐ ๐๐ ) ๐ฅ ๐๐,๐ข ๐ 2 (๐ ๐ ๐ ๐ ๐ ๐,๐ข ๐โ[๐] = argmin เท ๐ ๐ ๐โ[๐] โ๐๐(3) ๐๐โ๐น
Issue 2: Poor Least Squares Solution โ1 , ๐ ๐๐ ) ๐ฅ ๐๐,๐ข ๐ 2 (๐ ๐ ๐ ๐ ๐ ๐,๐ข ๐โ[๐] = argmin เท ๐ ๐ ๐โ[๐] โ๐๐(3) ๐๐โ๐น Lie algebraic representation ๐ ๐ ๐ ๐ Riemannian manifold of SO(3) ๐ ๐,๐ขโ1
Issue 2: Poor Least Squares Solution โ1 , ๐ ๐๐ ) ๐ฅ ๐๐,๐ข ๐ 2 (๐ ๐ ๐ ๐ ๐ ๐,๐ข ๐โ[๐] = argmin เท ๐ ๐ ๐โ[๐] โ๐๐(3) ๐๐โ๐น ๐ ๐ The Lie Algebraic Averaging uses the approximation โ1 , ๐ ๐๐ โ ิก ๐ ๐ โ ๐ ๐ ๐ ๐ ๐ ๐ โ ๐ ๐๐ เธฎ ๐ ๐ ๐ 2 โ1 ๐ ๐ ) where ๐ ๐ = log( ๐ ๐,๐ขโ1 ๐ ๐,๐ขโ1 โ1 ๐ ๐๐ ๐ and ๐ ๐๐ = log( ๐ ๐,๐ขโ1 ๐,๐ขโ1 ) โ and ๐ ๐๐ โ ๐ ๐ โ ๐ ๐ โโ1 The approximation is valid only when ๐ ๐ โ ๐ ๐
โ without knowing ๐ ๐ โ and ๐ ๐ โ ? How to accurately estimate ๐ก ๐๐
Cycle-Edge Message Passing (CEMP) โข Goal: Estimate corruption level โ โ ๐(๐ ๐๐ , ๐ ๐๐ โ ) ๐ก ๐๐ from 3-cycle inconsistency measure ๐ ๐๐๐ โ ๐(๐ ๐๐ ๐ ๐๐ ๐ ๐๐ , ๐ฝ)
Cycle-Edge Message Passing (CEMP) โข Goal: Estimate corruption level โ โ ๐(๐ ๐๐ , ๐ ๐๐ โ ) ๐ก ๐๐ from 3-cycle inconsistency measure ๐ ๐๐๐ โ ๐(๐ ๐๐ ๐ ๐๐ ๐ ๐๐ , ๐ฝ) โข For each ๐๐ โ ๐น, sample 50 3-cycles ๐๐๐ and for each cycle compute ๐ ๐๐๐
Cycle-Edge Message Passing (CEMP) โข Goal: Estimate corruption level โ โ ๐(๐ ๐๐ , ๐ ๐๐ โ ) ๐ก ๐๐ from 3-cycle inconsistency measure ๐ ๐๐๐ โ ๐(๐ ๐๐ ๐ ๐๐ ๐ ๐๐ , ๐ฝ) โข For each ๐๐ โ ๐น, sample 50 3-cycles ๐๐๐ and for each cycle compute ๐ ๐๐๐ โข For fixed ๐๐ and good 3-cycles w.r.t. ๐๐ (That is, ๐๐, ๐๐ โ ๐น ๐ ) โ ๐ ๐๐ โ , ๐ฝ) = ๐(๐ ๐๐ ๐ ๐๐ โ ๐ ๐๐ โ ๐ ๐๐ โ , ๐ ๐๐ โ ) = ๐(๐ ๐๐ , ๐ ๐๐ โ ) = ๐ก ๐๐ โ ๏ธธ ๐ ๐๐๐ = ๐(๐ ๐๐ ๐ ๐๐ = ๐ฝ by cycle consistency
๐ ๐๐๐ 1 ๐ ๐๐๐ 2 ๐ ๐๐๐ 49 ๐ ๐๐๐ 50
๐ ๐๐๐ 1 ๐ข ๐ ๐๐๐ 1 โ ๐ ๐๐๐ 2 = ๐ก ๐๐ ๐ข ๐ ๐๐๐ 2 ๐๐ ๐ข ๐ ๐๐๐ 49 โ ๐ ๐๐๐ 49 = ๐ก ๐๐ ๐ข ๐ ๐๐๐ 50 ๐ ๐๐๐ 50
๐ ๐๐๐ 1 ๐ข ๐ ๐๐๐ 1 ๐ ๐๐๐ 2 โ = ๐ก ๐๐ ๐ข ๐ ๐๐๐ 2 โ โ ๐ก ๐๐,๐ข+1 : = ๐ข ๐ ๐๐๐ 1 ๐๐ ๐ข ฯ ๐ ๐ ๐๐๐ ๐ก ๐๐ ๐ ๐๐ ๐ข ๐ ๐๐๐ 49 ๐ ๐๐๐ 49 ๐ข ๐ ๐๐๐ ๐ข = ฯ ๐ ๐ ๐๐๐ ๐ ๐๐ โ ๐ข = ๐ก ๐๐ ๐ ๐๐๐ 50 ๐ ๐๐๐ 50
๐ก ๐๐,๐ข ๐ก ๐๐,๐ข
Prob. that ๐๐ โ ๐น ๐ given ๐ก ๐๐,๐ข ๐ โ๐พ ๐ข โ ๐ ๐๐,๐ข ๐ก ๐๐,๐ข ๐ โ๐พ ๐ข โ ๐ ๐๐,๐ข ๐ก ๐๐,๐ข Prob. that j๐ โ ๐น ๐ given ๐ก ๐๐,๐ข
Prob. that ๐๐ โ ๐น ๐ given ๐ก ๐๐,๐ข ๐ โ๐พ ๐ข โ ๐ ๐๐,๐ข ๐ก ๐๐,๐ข Prob. that ๐๐๐ is good given {๐ก ๐๐,๐ข : ๐๐ โ ๐น} ๐๐๐ ๐ข = ๐ โ๐พ ๐ข (๐ก ๐๐,๐ข +๐ก ๐๐,๐ข ) ๐ ๐๐๐ ๐ โ๐พ ๐ข โ ๐ ๐๐,๐ข ๐ก ๐๐,๐ข Prob. that j๐ โ ๐น ๐ given ๐ก ๐๐,๐ข
Cycle-Edge Message Passing (CEMP) โ ): The conditional probability that ๐๐๐ is good ( ๐ ๐๐๐ = ๐ก ๐๐ = ๐ โ๐พ ๐ข (๐ก ๐๐,๐ข +๐ก ๐๐,๐ข ) = ๐๐ (๐ ๐๐๐ = ๐ก ๐๐ โ |{๐ก ๐๐,๐ข : ๐๐ โ ๐น}) ๐ข ๐ ๐๐๐ The estimate of the corruption level: ๐ข ๐ ๐๐๐ = ๐ฝ(๐ก ๐๐ โ |{๐ก ๐๐,๐ข : ๐๐ โ ๐น}) 1 ๐ข ฯ ๐ ๐ ๐๐๐ ๐ก ๐๐,๐ข+1 : = ๐ ๐๐
Theory If f 1 โข the maximal ratio of corrupted cycles per edge < 5 โข ๐พ ๐ข increases exponentially with a sufficiently small rate, the hen โข for all ๐๐ โ ๐น, ๐ก ๐๐,๐ข computed by CEMP linearly and uniformly โ . converges to ๐ก ๐๐
Message Passing Least Squares (MPLS) Init Initialization Run CEMP for ๐ iterations Build a weighted graph with edge weights ๐ก ๐๐,๐ ๐๐โ๐น Find the minimal spanning tree using Primโs Algorithm ize ๐ ๐,0 by fixing ๐ 1,0 = ๐ฝ and ๐ ๐,0 = ๐ ๐๐ ๐ ๐,0 Initi nitializ ize weights ๐ฅ ๐๐,0 = ๐บ(๐ก ๐๐,๐ ) Initi nitializ For ๐ ๐ minimization, ๐บ ๐ฆ = ๐ฆ ๐โ2
Recommend
More recommend