Fre Sers Sws Moving Sensors

Post on 12-Jan-2016

222 views 0 download

Tags:

description

Fre Sers Sws Moving Sensors

transcript

Manifolds MTK, MTKM, and SLoM Conclusion

�-Manifolds for Estimating 3D-Orientations

Udo Frese1,based on work together with

Christoph Hertzberg1, René Wagner2 and Lutz Schröder2

1 (formerly2) Universität Bremen

RSS WS Moving Sensors, 17. July 2015

Manifolds MTK, MTKM, and SLoM Conclusion

[HWFS13] Hertzberg, C. ; Wagner, R. ; Frese, U. ; Schröder, L.:Integrating Generic Sensor Fusion Algorithms with Sound StateRepresentations through Encapsulation of Manifolds.

In: Information Fusion 14 (2013), Nr. 1, S. 57–77

Manifolds MTK, MTKM, and SLoM Conclusion

Estimation of 3D-Orientations ∈ SO(3)

3D-Orientations ∈ SO(3) need to beestimated in...

3D Localization3D SLAMMultisensor calibrationIMU based attitude estimation

00.5

11.5

−0.5

0

0.50

0.5

1

1.5

Manifolds MTK, MTKM, and SLoM Conclusion

Estimation of 3D-Orientations ∈ SO(3)

Problem:SO(3) is not a vector space

SO(3) as R3×3 (matrix):orthonormality constraintSO(3) as R4 (quaternion):unit length constraintSO(3) as R3 (Euler-angle):singularitySO(3) is a manifoldlocally like R3, globally not

00.5

11.5

−0.5

0

0.50

0.5

1

1.5

Manifolds MTK, MTKM, and SLoM Conclusion

�-Manifolds

“We write this operation [the state update] asx → x + δx , even though it may involve considerablemore than vector addition.” W. Triggs [TMHF00, p. 7]

Contribution of �-manifolds [Her08, HWFS13, WBF11]formalization of this ideaincluding expected value, covariance and Gaussian distributionformalization is novel not the actual computationnotation and encapsulation with � and �adapt least-squares and UKF simply byreplacing + by � and − by � (mainly)How far do we get formally correctly,where is a leap of ”engineering-faith” needed?

Manifolds MTK, MTKM, and SLoM Conclusion

�-Manifolds

�-Manifolds

�-manifolds S with operators

�S : S × Rn → S, (1)

�S : S × S → Rn. (2)

y = x � δ perturbes x by avector valued δδ = y � x computes the vectorδ perturbing x to y

x

x� δ

0

δ

Manifolds MTK, MTKM, and SLoM Conclusion

�-Manifolds

�-Manifolds

�-manifold S with operators

�S : S × Rn → S,�S : S × S → Rn.

x � δ smooth in δ and y � x smooth in y .range of unique values 0 ∈ V ⊂ Rn

∀y ∈ S : x � (y � x) = y (b)∀δ ∈ V :(x � δ) � x = δ (c)

∀δ1, δ2 ∈ Rn : ‖(x � δ1) � (x � δ2)‖ ≤ ‖δ1 − δ2‖ . (d)

Manifolds MTK, MTKM, and SLoM Conclusion

�-Manifolds

�-Manifolds

x� δ2

x� δ1

x

δ1

δ2

∀δ1, δ2 ∈ Rn : ‖(x � δ1) � (x � δ2)‖ ≤ ‖δ1 − δ2‖ . (d)

Manifolds MTK, MTKM, and SLoM Conclusion

�-Manifolds

�-Manifolds

∀δ1, δ2 ∈ Rn : ‖(x � δ1) � (x � δ2)‖ ≤ ‖δ1 − δ2‖ . (d)

‖x � x‖ =∥∥(x � (x � x)

)�(x � (x � x)

)∥∥ (d)

≤ ‖(x � x)− (x � x)‖ = 0

x � x = 0

x � 0 = x

Manifolds MTK, MTKM, and SLoM Conclusion

�-Manifolds

�-Manifolds

Examples

2D-Orientation (i.e. angles with periodicity)

x � δ = x + δ y � x = normalize+π−π (y − x)

3D-Orientation

x � δ = x exp δ× y � x = log(x−1y)

Manifolds MTK, MTKM, and SLoM Conclusion

�-Manifolds

� induced metric

d(x , y) := ‖y � x‖ definesa metric on Sallows to interpret variancese.g. for orientations x , y ,d(x , y) is the angle between xund y

x

x� δ

0

δ

Manifolds MTK, MTKM, and SLoM Conclusion

�-Manifolds

� induced metriccheck three properties of a metric

d(x , y) = 0⇔ x = y

d(x , y) = ‖y � x‖ = ‖(y � 0) � (y � (x � y))‖≤ ‖x � y‖ = d(y , x)

⇒ d(x , y) = d(y , x)

d(x , z) = ‖z � x‖= ‖(y � (z � y)) � (y � (x � y))‖≤ ‖(z � y)− (x � y)‖≤ ‖(x � y)‖+ ‖(z � y)‖= d(x , y) + d(y , z)

d(x , y) := ‖y � x‖

x � (y � x) = y (b)

(x � δ) � x = δ (c)

‖(x � δ1) � (x � δ2)‖ (d)

≤ ‖δ1 − δ2‖

Manifolds MTK, MTKM, and SLoM Conclusion

�-Manifolds

Gaussians on �-manifolds

µ ∈ S, X random variable ∈ Rn

Y := µ� X random variable ∈ SGaussian: N (µ,Σ) := µ�N (0,Σ), µ ∈ S, Σ ∈ Rn×n

X ∼ N (µ, Σ) = µ�N (0, Σ)∗⇔ X � µ ∼ N (0, Σ)

*only approximate

Manifolds MTK, MTKM, and SLoM Conclusion

�-Manifolds

Expected Value on �-manifolds

EX?=∫S x · p(X = x)dx . is undefined

wanted:a definition equivalent on Rn but also defined on �-manifoldsin Rn holds:

E((X − x)2) = V (X ) + (x − EX )2

EX = argminx∈Rn E(‖X − x‖2)

EX = argminx∈S E(‖X � x‖2)

Manifolds MTK, MTKM, and SLoM Conclusion

�-Manifolds

Expected Value on �-manifolds

EX = argminx∈S E(‖X � x‖2)

How to compute the expectedvalue?iterate µk+1 = µk � E (X � µk)

as Kraft [Kra03] did

x

x� δ

0

δ

Manifolds MTK, MTKM, and SLoM Conclusion

�-Manifolds

Expected Value on �-manifolds

µk+1 = µk � E (X � µk)

E (‖X � µk+1‖2)= E (‖X � (µk � E (X � µk)‖2)

≤ E (‖(X � µk)− E (X � µk)‖2)

= E(‖(X � µk)‖2 − 2(X � µk) · E (X � µk) + ‖X � µk‖2

)= E (‖(X � µk)‖2)− ‖E (X � µk)‖2

= E (‖(X � µk)‖2)− ‖µk+1 � µk‖2

Manifolds MTK, MTKM, and SLoM Conclusion

�-Manifolds

Covariance on �-manifolds

CovX = E((X � EX )(X � EX )>

)X random variable ∈ S: EX ∈ S, CovX ∈ Rn×n

E(d(X ,EX )) = E(∑

i (X � EX )2i

)= tr CovX

Manifolds MTK, MTKM, and SLoM Conclusion

�-Manifolds

Least-squares on �-manifolds

Classical Least-Squares Least-Squares on a �-Manifold

f : Rn → Rm f : S →Mf (X )− z ∼ N (0, Σ) f (X ) � z ∼ N (0, Σ)

Least Squares

x̂ = argminx∈Rn

‖f (x)− z‖2Σ x̂ = argminx∈S

‖f (x) � z‖2Σ

= argminx∈Rn

(f (x)− z)T Σ−1(f (x)− z) = argminx∈S

(f (x) � z)T Σ−1(f (x) � z)

Manifolds MTK, MTKM, and SLoM Conclusion

�-Manifolds

Gauss-Newton on �-Manifolds

Classical Gauss-Newton Gauss-Newton on a �-Manifold

f : Rn → Rm f : S →Mf (X )− z ∼ N (0, Σ) f (X ) � z ∼ N (0, Σ)

Iterate with initial guess x0 until xi converges:

J•k :=f (xi + εek )− f (xi − εek )

2εJ•k :=

(f (xi � εek ) � z)− (f (xi �−εek ) � z)

xi+1 := xi − (J>Σ−1J)−1J>Σ−1(f (xi )− z) xi+1 := xi �−(J>Σ−1J)−1J>Σ−1(f (xi ) � z)

Manifolds MTK, MTKM, and SLoM Conclusion

MTK, MTKM, and SLoM

Libraries for �-method in C++ (MTK, SLoM) [HWFS13] andMATLAB (MTKM) [WBF11]www.openslam.org

Manifold Toolkit (for Matlab)Sparse Least Squares on Manifoldsg2o is similar

Manifolds MTK, MTKM, and SLoM Conclusion

Conclusion

quantities living on manifolds require special code inestimation algorithms

�-method encapsulates special code in � and � operatorsmainly replacing + with � and − with � in algorithmsaxiomatized, including expected value, covariance, andGaussian distributionKey axiom (d) ‖(x � δ1) � (x � δ2)‖ ≤ ‖δ1 − δ2‖‖y � x‖ is a metric, in particular ‖y � x‖ = ‖x � y‖the manifold σ-point propagation by Kraft [Kra03] istheoretically sound

Manifolds MTK, MTKM, and SLoM Conclusion

Outlook

TheoreticalIn every compact, connected Lie-Group, x � δ = x exp δsatisfies (b) and (c). But is (d) satisfied in general?Related to ‖log(exp δ1 exp δ2)‖ ≤ ‖δ1 + δ2‖?

Manifolds MTK, MTKM, and SLoM Conclusion

Outlook

PracticalA lot of SLAM is solved!We need actual applications!Can SLAM survive degenerate situations?

no features or flat planelonger than the IMU can bridge?scenario A: snakerobot in USAR with camera sometimesblocked by rubblescenario B: service robot looking at a featureless wall or table

Remark: Odometry may help but many robots shake relative toodometry. Can this be modeled and handled?

Manifolds MTK, MTKM, and SLoM Conclusion

References

Hertzberg, C.:A Framework for Sparse, Non-Linear Least Squares Problems on Manifolds, Universität Bremen,Diplomarbeit, 2008. –openslam.org/slom

Hertzberg, C. ; Wagner, R. ; Frese, U. ; Schröder, L.:Integrating Generic Sensor Fusion Algorithms with Sound State Representations throughEncapsulation of Manifolds.In: Information Fusion 14 (2013), Nr. 1, S. 57–77

Kraft, E.:A Quaternion-Based Unscented Kalman Filter for Orientation Tracking.In: Proceedings of the Sixth International Conference of Information Fusion Bd. 1, 2003, 47–54

Triggs, W. ; McLauchlan, P. ; Hartley, R. ; Fitzgibbon, A.:Bundle Adjustment – A Modern Synthesis.In: Triggs, W. (Hrsg.) ; Zisserman, A. (Hrsg.) ; Szeliski, R. (Hrsg.): Vision Algorithms: Theoryand Practice.Springer Verlag, 2000 (LNCS), S. 298–375

Wagner, R. ; Birbach, O. ; Frese, U.:Rapid Development of Manifold-Based Graph Optimization for Multi-Sensor Calibration andSLAM.In: Proceedings of the International Conference on Intelligent Robots and Systems, 2011. –(under review)