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

direct fitting of gaussian mixture models
SMART_READER_LITE
LIVE PREVIEW

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 +


slide-1
SLIDE 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

slide-2
SLIDE 2

Representations of 3D data

2

Point Cloud Point Cloud + Normals Triangular Mesh

Nearest Neighbor Plane Fit Screened Poisson Surface Reconstruction

slide-3
SLIDE 3

Gaussian Mixture Models for 3D Shapes

3

GMM fit to object surface

Benefits

  • Closed-form expression
  • Can represent contiguous surfaces
  • Easy to build from noisy data
  • Sparse
slide-4
SLIDE 4

Gaussian Mixture Model (GMM)

4

! " = $

%&' (

)* +("; .*, Σ*)

$

*

)* = 1 )* ≥ 0

Σ* is symmetric, positive-semidefinite

slide-5
SLIDE 5

Gaussian Mixtures as a shape representation

  • W. Tabib, C. O’Meadhra, N. Michael

IEEE R-AL (2018)

  • B. Eckart, K. Kim, A. Troccoli, A. Kelly, J. Kautz.

CVPR (2016)

  • B. Eckart, K. Kim, J. Kautz.

ECCV (2018)

5

Efficient Representation Mesh Registration Frame Registration

slide-6
SLIDE 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

slide-7
SLIDE 7

7

slide-8
SLIDE 8

The E-Step (Given GMM parameters)

8

!"# = 1 &

#

'" ((*#; ,", Σ") &

# = 0 1

'1 ((*#; ,1, Σ1)

Normalization constant for point j Affiliation between point j & mixture i

slide-9
SLIDE 9

The M-Step (Given point-mixture weights)

9

!" = $

%&' (

$

)&' *

+)%log /) 0(2%; 4), Σ))

8!" 8/) = 0

mixtures points

8!" 84) = 0 8!" 8Σ) = 0

lower-bound loss To get new parameters: takes derivatives, set equal to zero, and solve

4) = 1 ;

)

$

%

<)%2% /) = ;

)

= Σ) = 1 ;

)

$

%

<)%(2%−4))(2%−4))? <)% = +)% ;

) = $ %

<)%

slide-10
SLIDE 10

10

slide-11
SLIDE 11

Geometric Objects in a Probability Distribution

11

Known curve in a given 2D probability distribution

slide-12
SLIDE 12

Geometric Objects in a Probability Distribution

12

Consider sampling N points from this curve

ℓ curve ≅ (

)*+ ,

  • (/))
slide-13
SLIDE 13

Geometric Objects in a Probability Distribution

13

Take a geometric mean to account for sample number

ℓ curve ≅ (

)*+ ,

  • (/))

+ ,

slide-14
SLIDE 14

Geometric Objects in a Probability Distribution

14

The curve will be the value in the limit

ℓ curve ≅ (

)*+ ,

  • (/))

+ ,

ℓ curve = lim

,→6 ( )*+ ,

  • (/))

+ ,

= lim

,→6exp

log (

)*+ ,

  • (/))

+ ,

= lim

,→6exp

1 < =

)*+ ,

log(-(/)))

slide-15
SLIDE 15

Geometric Objects in a Probability Distribution

15

ℓ curve ≅ (

)*+ ,

  • (/))

+ ,

ℓ curve = lim

,→6 ( )*+ ,

  • (/))

+ ,

= lim

,→6exp

log (

)*+ ,

  • (/))

+ ,

= lim

,→6exp

1 < =

)*+ ,

log(-(/))) = exp > log(-(/)) ?/

slide-16
SLIDE 16

Geometric Objects in a Probability Distribution

16

! = exp & log(+(,)) .,

1. If +(,) = 0 on curve, then L= 0 2. Invariant to reparameterization

slide-17
SLIDE 17

17

!" Area of each triangle #" Centroid of each triangle $", &

", ' " Triangle vertices

slide-18
SLIDE 18

The E-Step (Given GMM parameters)

18

!"# = 1 &

#

'" ((*#; ,", Σ") &

# = 0 1

'1 ((*#; ,1, Σ1)

Normalization constant for point j Affiliation between point j & mixture i 2# Area of each triangle ,# Centroid of each triangle 3#, 4

#, & # Triangle vertices

slide-19
SLIDE 19

The New E-Step (Given GMM parameters)

19

!"# = 1 &

#

'"(# )(+#; +", Σ") &

# = 0 1

'1(1)(+#; +1, Σ1)

Normalization constant for object j Affiliation between object j & mixture i (# Area of each triangle +# Centroid of each triangle 2#, 3

#, & # Triangle vertices

Taylor Approximation (2 terms)

slide-20
SLIDE 20

The M-Step (Given point-mixture weights)

20

!" = 1 %

"

&

'

("')' *" = %

"

+ Σ" = 1 %

"

&

'

("'()'−!")()'−!")0 ("' = 1"' %

" = & '

("'

slide-21
SLIDE 21

The New M-Step (Given point-mixture weights)

21

!" = 1 %

"

&

'

("')' *" = %

"

+ Σ" = 1 %

"

&

'

("' ()'−!")()'−!")0 + Σ' ("' = 2'3"' %

" = & '

("'

2' Area of each triangle !' Centroid of each triangle 4', 6

', 7 ' Triangle vertices

Σ' = 1 12 4'4'

0 + 6 '6 ' 0 + 7 '7 ' 0 − 3 !'!'

slide-22
SLIDE 22

What is Σ"?

22

slide-23
SLIDE 23

23

slide-24
SLIDE 24

Results

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

24

slide-25
SLIDE 25

25

Using different inputs classic algorithm

  • Vertices of the mesh
  • Triangle centroids
  • ur method
  • Approximate (E only)
  • Exact (E + M steps)

Measure the likelihood

  • f a high-density point

cloud (higher is better) Evaluate across a wide range of mixtures (6 to 300)

slide-26
SLIDE 26

Full E+M method works in all cases

26

slide-27
SLIDE 27

Stable under even random initialization!

27

slide-28
SLIDE 28

Applications

Are these models actually more useful?

28

slide-29
SLIDE 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

29

Eckart, Kim, Kautz. “HGMR: Hierarchical Gaussian Mixtures for Adaptive 3D Registration.” ECCV (2018)

slide-30
SLIDE 30

Mesh-based GMMs are more accurate

30

slide-31
SLIDE 31

Across multiple models

31

50 100 150

Armadillo Bunny Dragon Happy Lucy

Rotation Error (% of ICP) points mesh 100 200

Armadillo Bunny Dragon Happy Lucy

Translation Error (% of ICP) points mesh

slide-32
SLIDE 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

32

  • W. Tabib, C. O’Meadhra, N. Michael.

“On-Manifold GMM Registration” IEEE R-AL (2018)

slide-33
SLIDE 33

Representing points using pixel squares

33

slide-34
SLIDE 34

D2D Registration Results

34

Compared to standard GMM

  • 2.4% improvement in RMSE
  • 22% faster D2D convergence
slide-35
SLIDE 35

Que Questions ns?

35

! = exp & log(+(,)) .,

slide-36
SLIDE 36

The End!

36

slide-37
SLIDE 37

Extra Slides

37

slide-38
SLIDE 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

slide-39
SLIDE 39

Extension to arbitrary primitives

39

Vasconcelos, Lippman. "Learning mixture hierarchies.” Advances in Neural Information Processing Systems (1999)

slide-40
SLIDE 40

Approximation

40

area-weighted geometric mean using the primitive’s centroids

slide-41
SLIDE 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

slide-42
SLIDE 42

42

slide-43
SLIDE 43

43

slide-44
SLIDE 44

44

slide-45
SLIDE 45

For GMMs we will use the lower bound

45

slide-46
SLIDE 46

P2D Registration Results

46

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

slide-47
SLIDE 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

47

Eckart, Kim, Kautz. “HGMR: Hierarchical Gaussian Mixtures for Adaptive 3D Registration.” ECCV (2018)

slide-48
SLIDE 48

Acknowledgements

  • Martial Hebert
  • Robotics Institute
  • Reviewers
  • Funding?

48

slide-49
SLIDE 49

Representing points using pixel squares

49