motion interpolation sensor fusion
play

Motion Interpolation & Sensor Fusion Final presentation Lennart - PowerPoint PPT Presentation

Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Motion Interpolation & Sensor Fusion Final presentation Lennart Bastian Antoine Keller Sofia Morales Santiago TUM


  1. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Motion Interpolation & Sensor Fusion Final presentation Lennart Bastian Antoine Keller Sofia Morales Santiago TUM 07.07.2018 1

  2. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Introduction Track 3D Objects with Optical Tracking Systems, e.g. cameras embedded system or inertial measurement units (IMU), e.g. accelerometers 1 1 svgrepo 2

  3. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Introduction Motion Interpolation 3

  4. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Introduction Motion Interpolation Smoothness 3

  5. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Introduction Motion Interpolation Smoothness Accuracy 3

  6. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Introduction Motion Interpolation Smoothness Accuracy Sensor Fusion OTS (e.g. cameras) IMU (e.g. accelerometers) Good tracking of translation Almost impossible to track translation Bad tracking of rotation Good tracking of rotation 3

  7. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Introduction Motion Interpolation Smoothness Accuracy Sensor Fusion OTS (e.g. cameras) IMU (e.g. accelerometers) Good tracking of translation Almost impossible to track translation Bad tracking of rotation Good tracking of rotation 3

  8. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Introduction Motion Interpolation Smoothness Accuracy Sensor Fusion OTS (e.g. cameras) IMU (e.g. accelerometers) Good tracking of translation Almost impossible to track translation Bad tracking of rotation Good tracking of rotation ⇒ combine to make the best motion interpolation 3

  9. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Describing Rotations Quaternions General Form q 1 1 + q 2 i + q 3 j + q 4 k = ( q 1 , q 2 , q 3 , q 4 ) T i 2 = j 2 = k 2 = ijk = − 1 Only represent rotations. Coordinate system independency. No gimbal lock. Simple interpolation. 4

  10. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Describing Rotations Unit Quaternions Set H 1 : � q � = 1. H 1 constitutes a hypersphere in quaternion space. The set is closed under multiplication. Rotations SO (3): space of three-dimensional rotations. Rotation about the axis v = ( v 1 , v 2 , v 3 ) ∈ R 3 , angle θ q = [cos( θ/ 2) , sin( θ/ 2) v ] For each rotation there are 2 unit quaternions: q and − q (antipodal). H 1 is a ”double-covering” of SO 3 . 5

  11. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Visualizing Quaternions Explain here the process to convert quaternions trajectory on the unit sphere ! 6

  12. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Basic Interpolation Methods Let q 0 , q 1 , q 0 ∈ H and h ∈ [0 , 1]: Liner Quaternion interpolation Lerp ( q 0 , q 1 , h ) = q 0 (1 − h ) + q 1 h . Spherical Linear Quaternion interpolation SLERP ( q 0 , q 1 , h ) = q 0 ( q 0 q 1 ) h 7

  13. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Describing Rotations 8

  14. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Describing Rotations (Slerp) Quaternion interpolation with rotation over the x − axis 9

  15. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Linear Interpolation Most simple interpolation is piecewise linear. Given a sequence of points p i ∈ R n , we can represent linear interpolation in a cumulative form: 10

  16. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Linear Interpolation Most simple interpolation is piecewise linear. Given a sequence of points p i ∈ R n , we can represent linear interpolation in a cumulative form: p ( t ) = p 0 + α 1 ( t )∆ p 1 + ... + α n ( t )∆ p n n � = p 0 + α i ( t )∆ p i i =1 α i ramps from 0 to 1 in the interval i < = t < i + 1. 10

  17. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Linear Interpolation Most simple interpolation is piecewise linear. Given a sequence of points p i ∈ R n , we can represent linear interpolation in a cumulative form: p ( t ) = p 0 + α 1 ( t )∆ p 1 + ... + α n ( t )∆ p n n � = p 0 + α i ( t )∆ p i i =1 α i ramps from 0 to 1 in the interval i < = t < i + 1. Similarly, we can construct a piece-wise quaternion slerp in a cumulative form: n ω α i ( t ) � q ( t ) = q 0 i i =1 i − 1 q i ), q t := exp ( tlog ( q )). with ω i = log ( q − 1 10

  18. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Interpolation Bases Several different interpolation schemes can be represented in the cumulative form. α i ( t ) is replaced with some basis function β i ( t ). n � q ( t ) = q 0 exp ( ω i β i ( t )) i =1 B-splines Bezier curves 11

  19. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Interpolation Bases Several different interpolation schemes can be represented in the cumulative form. α i ( t ) is replaced with some basis function β i ( t ). n � q ( t ) = q 0 exp ( ω i β i ( t )) i =1 B-splines Bezier curves The cumulative form describes an approximation . In order to interpolate exactly a non-linear system of equations needs to be solved. 11

  20. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Bezier Curves Figure 1: Bezier Curves and their Basis Functions 2 global control / very smooth ( ∈ C n − 1 ) simple implementation 2 Anonymous Preprint 2018 [under review] 12

  21. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Bezier Curves (a) Rotation Axis (b) Rotation Angle Figure 2: Rotation Axis and Angle of Bezier Approximation 13

  22. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Bezier Curves Figure 3: Bezier Curve Interpolation on an Object 14

  23. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Optimization Smoothness 15

  24. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Optimization Smoothness Accuracy 15

  25. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Optimization 16

  26. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Distance choice Goal : evaluate the distance between the initial quaternions ( q orig ) i =1 .. N and the interpolation path ( q calc ( p , t )) i =1 .. N Euclidean distance : || q orig , i − q calc , i || 2 2 Angular distance : Arccos (2 q orig , i ◦ q calc , i − 1) 17

  27. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Optimization Smoothness Accuracy � � q ( p , t ) || 2 dt min dist ( q ( p , t i ) − q i ) + λ || ¨ p q i : original quaternions t i : times at which the calculated trajectory must fit the original quaternions p : control points (our variable) q ( p , t ) : calculated trajectory at time t. 18

  28. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Animation Bezier Curve 19

  29. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Animation Bezier Curve 20

  30. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Trade-off between smoothness and accuracy (a) λ = 20 (b) λ = 200 (c) λ = 2000 Figure 4: Bezier optimization for different λ 21

  31. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Result of Optimization Figure 5: Optimized Bezier Interpolation 22

  32. Introduction Background Interpolation and Approximation Interpolation and Approximation Optimization Sensor Fusion Solve the problem � � q ( p , t ) || 2 dt min dist ( q ( p , t i ) − q i ) + λ || ¨ p Compute the gradient Problem highly non-linear, not convex ⇒ Poor convergence Use Quasi-Newton method algorithm by providing the gradient Conclusion : Use Matlab optimization function fminunc . 23

Recommend


More recommend