direct fitting of gaussian mixture models
play

Direct Fitting of Gaussian Mixture Models Leonid Keselman , Martial - PowerPoint PPT Presentation

Direct Fitting of Gaussian Mixture Models Leonid Keselman , Martial Hebert Robotics Institute Carnegie Mellon University May 29, 2019 https://github.com/leonidk/direct_gmm 1 Representations of 3D data Point Cloud Point Cloud Triangular +


  1. Direct Fitting of Gaussian Mixture Models Leonid Keselman , Martial Hebert Robotics Institute Carnegie Mellon University May 29, 2019 https://github.com/leonidk/direct_gmm 1

  2. Representations of 3D data Point Cloud Point Cloud Triangular + Normals Mesh Nearest Neighbor Plane Fit Screened Poisson Surface Reconstruction 2

  3. Gaussian Mixture Models for 3D Shapes GMM fit to object surface Benefits • Closed-form expression • Can represent contiguous surfaces • Easy to build from noisy data • Sparse 3

  4. Gaussian Mixture Model (GMM) ( Σ * is symmetric, $ ) * = 1 ! " = $ ) * +("; . * , Σ * ) positive-semidefinite * ) * ≥ 0 %&' 4

  5. Gaussian Mixtures as a shape representation Efficient Representation Mesh Registration Frame Registration B. Eckart, K. Kim, J. Kautz. W. Tabib, C. O’Meadhra, N. Michael ECCV ( 2018) IEEE R-AL ( 2018) B. Eckart, K. Kim, A. Troccoli, A. Kelly, J. Kautz. 5 CVPR ( 2016)

  6. Fitting a Gaussian Mixture Model 1. Obtain 3D Point Cloud 2. Select Initial Parameters 3. Iterate Expectation & Maximization i. E-Step: Each point gets a likelihood ii. M-Step: Each mixture gets parameters 6

  7. 7

  8. The E-Step (Given GMM parameters) ! "# = 1 ' " ((* # ; , " , Σ " ) & # Affiliation between point j & mixture i & # = 0 ' 1 ((* # ; , 1 , Σ 1 ) 1 Normalization constant for point j 8

  9. The M-Step (Given point-mixture weights) mixtures points ( * !" = $ $ + )% log / ) 0(2 % ; 4 ) , Σ ) ) lower-bound loss %&' )&' To get new parameters: takes derivatives, set equal to zero, and solve < )% = + )% 8!" 8!" 8!" = 0 = 0 = 0 ; ) = $ < )% 8Σ ) 8/ ) 84 ) % 4 ) = 1 Σ ) = 1 / ) = ; ) < )% (2 % −4 ) )(2 % −4 ) ) ? $ < )% 2 % $ ; ; = 9 % % ) )

  10. 10

  11. Geometric Objects in a Probability Distribution Known curve in a given 2D probability distribution 11

  12. Geometric Objects in a Probability Distribution , ℓ curve ≅ ( -(/ ) ) )*+ Consider sampling N points from this curve 12

  13. Geometric Objects in a Probability Distribution + , , ℓ curve ≅ ( -(/ ) ) )*+ Take a geometric mean to account for sample number 13

  14. Geometric Objects in a Probability Distribution + , , ℓ curve ≅ ( -(/ ) ) )*+ + , , ℓ curve = lim ,→6 ( -(/ ) ) )*+ + , , = lim ,→6 exp log ( -(/ ) ) )*+ , The curve will be the value in the limit 1 = lim ,→6 exp < = log(-(/ ) )) )*+ 14

  15. Geometric Objects in a Probability Distribution + , , ℓ curve ≅ ( -(/ ) ) )*+ + , , ℓ curve = lim ,→6 ( -(/ ) ) )*+ + , , = lim ,→6 exp log ( -(/ ) ) )*+ , 1 = lim ,→6 exp < = log(-(/ ) )) = exp > log(-(/)) ?/ )*+ 15

  16. Geometric Objects in a Probability Distribution ! = exp & log(+(,)) ., 1. I f +(,) = 0 on curve, then L = 0 2. Invariant to reparameterization 16

  17. ! " Area of each triangle # " Centroid of each triangle $ " , & " , ' " Triangle vertices 17

  18. The E-Step (Given GMM parameters) ! "# = 1 ' " ((* # ; , " , Σ " ) & # Affiliation between point j & mixture i & # = 0 ' 1 ((* # ; , 1 , Σ 1 ) 1 Normalization constant for point j 2 # Area of each triangle , # Centroid of each triangle 3 # , 4 # , & # Triangle vertices 18

  19. The New E-Step (Given GMM parameters) ! "# = 1 Taylor Approximation ' " ( # )(+ # ; + " , Σ " ) & (2 terms) # Affiliation between object j & mixture i & # = 0 ' 1 ( 1 )(+ # ; + 1 , Σ 1 ) 1 Normalization constant for object j ( # Area of each triangle + # Centroid of each triangle 2 # , 3 # , & # Triangle vertices 19

  20. The M-Step (Given point-mixture weights) * " = % ( "' = 1 "' " + % " = & ( "' ! " = 1 ' & ( "' ) ' % ' " Σ " = 1 ( "' () ' −! " )() ' −! " ) 0 & % ' " 20

  21. The New M-Step (Given point-mixture weights) * " = % ( "' = 2 ' 3 "' " + % " = & ( "' ! " = 1 ' & ( "' ) ' % ' " Σ " = 1 ( "' () ' −! " )() ' −! " ) 0 + Σ ' & % ' " 2 ' Area of each triangle Σ ' = 1 0 + 6 0 + 7 0 − 3 ! ' ! ' 0 12 4 ' 4 ' ' 6 ' 7 ! ' Centroid of each triangle ' ' 4 ' , 6 ' , 7 ' Triangle vertices 21

  22. What is Σ " ? 22

  23. 23

  24. Results Did all that math actually help us fit better/faster GMMs? 24

  25. Evaluate across a wide Using different inputs Measure the likelihood range of mixtures of a high-density point (6 to 300) classic algorithm cloud (higher is better) • Vertices of the mesh • Triangle centroids our method • Approximate (E only) • Exact (E + M steps) 25

  26. Full E+M method works in all cases 26

  27. Stable under even random initialization! 27

  28. Applications Are these models actually more useful? 28

  29. Mesh Registration (P2D) Method 1. Apply a random rotation + translation to the point cloud 2. Find transformation to maximize the likelihood of the points • Perform P2D with GMMs fit to i. mesh vertices ii. mesh triangles Eckart, Kim, Kautz. “HGMR: Hierarchical Gaussian Mixtures for Adaptive 3D Registration.” 29 ECCV (2018)

  30. Mesh-based GMMs are more accurate 30

  31. Across multiple models Rotation Error Translation Error (% of ICP) (% of ICP) 150 200 100 100 50 0 0 Armadillo Bunny Dragon Happy Lucy Armadillo Bunny Dragon Happy Lucy points mesh points mesh 31

  32. Frame Registration (D2D) Method 1. Use a sequence from an RGBD Sensor • 2,500 frame TUM sequence from a Microsoft Kinect 2. Pairwise registration between t & t-1 frames • Optimize the D2D L2 distance • Build GMMs using square pixels as the geometric object W. Tabib, C. O’Meadhra, N. Michael . “On-Manifold GMM Registration” 32 IEEE R-AL (2018)

  33. Representing points using pixel squares 33

  34. D2D Registration Results Compared to standard GMM • 2.4% improvement in RMSE • 22% faster D2D convergence 34

  35. Que Questions ns? ! = exp & log(+(,)) ., 35

  36. The End! 36

  37. Extra Slides 37

  38. How to fit a Gaussian Mixture Model? 1. Obtain any collection of objects 2. Perform Expectation + Maximization i. E-Step: Each point gets a likelihood ii. M-Step: Each mixture gets new parameters 38

  39. Extension to arbitrary primitives Vasconcelos, Lippman. "Learning mixture hierarchies.” 39 Advances in Neural Information Processing Systems ( 1999)

  40. Approximation area-weighted geometric mean using the primitive’s centroids 40

  41. Product Integral Formulation • Product integrals provide a resampling-invariant loss function • Given S samples, of M primitives, with N mixture components • This can be evaluated in the limit of samples (with a geometric mean) 41

  42. 42

  43. 43

  44. 44

  45. For GMMs we will use the lower bound 45

  46. P2D Registration Results Model Rotation Error Translation Error (% of ICP) (% of ICP) points mesh points mesh 127 37 37 161 33 33 Armadillo 50 28 28 41 17 17 Bunny 68 25 25 40 19 19 Dragon 101 27 27 85 27 27 Happy 95 23 23 122 35 35 Lucy 46

  47. Mesh Registration with P2D Method 1. Apply a random rotation + translation to the point cloud 2. Point-to-Distribution (P2D) registration of point cloud to GMM • Perform tests with GMMs fit to i. mesh vertices ii. mesh triangles • Optimize the GMM likelihood with rigid body transformation (q & t) • BFGS Optimization using numerical gradients, starting from identity Eckart, Kim, Kautz. “HGMR: Hierarchical Gaussian Mixtures for Adaptive 3D Registration.” 47 ECCV (2018)

  48. Acknowledgements • Martial Hebert • Robotics Institute • Reviewers • Funding? 48

  49. Representing points using pixel squares 49

Recommend


More recommend