+ All Categories
Home > Documents > Super 4PCS Fast Global Pointcloud Registration via Smart...

Super 4PCS Fast Global Pointcloud Registration via Smart...

Date post: 25-Jul-2020
Category:
Upload: others
View: 4 times
Download: 0 times
Share this document with a friend
51
Fast Global Pointcloud Registration via Smart Indexing Nicolas Mellado 1 , Dror Aiger 2 , Niloy J. Mitra 1 1 University College London 2 Google Inc. Super 4PCS
Transcript
Page 1: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Fast Global Pointcloud Registration

via Smart Indexing

Nicolas Mellado1, Dror Aiger2, Niloy J. Mitra1

1 University College London 2 Google Inc.

Super 4PCS

Page 2: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Problem Statement

• Estimate rigid transformation tr

• Large search space (6DoF)

P + tr(Q)

+ =

P Q

Page 3: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Problem Statement

• Estimate rigid transformation tr

• Local registration: from an input pose

• ICP [BM92], [CM92], [RL01], [MGPG04]

• Sparse ICP [BTP13]

• Kinect Fusion [IKH*11]

P + tr(Q)

Page 4: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Problem Statement

• Estimate rigid transformation tr

• Local registration: from an input pose

• ICP [BM92], [CM92], [RL01], [MGPG04]

• Sparse ICP [BTP13]

• Kinect Fusion [IKH*11]

• Global registration: arbitrary input pose

• RANSAC [FB81], [IR96], [CH99]

• and variants [GMGP05], [PB09], [PB11], [ART10], [RABT13]

• 4 Point Congruent Set [AMCO08]

3 pairs of corresponding points are sufficient to

define a rigid transformation

Page 5: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

• Estimate rigid transformation tr

• Local registration: from an input pose

• ICP [BM92], [CM92], [RL01], [MGPG04]

• Sparse ICP [BTP13]

• Kinect Fusion [IKH*11]

• Global registration: arbitrary input pose

• RANSAC [FB81], [IR96], [CH99]

• and variants [GMGP05], [PB09], [PB11], [ART10], [RABT13]

• 4 Point Congruent Set [AMCO08]

Problem Statement

RANSAC: O(n3)

4 Point Congruent Set (4PCS) : O(n2)

Difficult cases

Page 6: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Problem Statement

• Estimate rigid transformation tr

• Local registration: from an input pose

• ICP [BM92], [CM92], [RL01], [MGPG04]

• Sparse ICP [BTP13]

• Kinect Fusion [IKH*11]

• Global registration: arbitrary input pose

• RANSAC [FB81], [IR96], [CH99]

• and variants [GMGP05], [PB09], [PB11], [ART10], [RABT13]

• 4 Point Congruent Set [AMCO08]

RANSAC: O(n3)

4 Point Congruent Set (4PCS) : O(n2)

Our approach (Super 4PCS): O(n)

Difficult cases

Page 7: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Demo

Page 8: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Overview

•4PCS

•Super4PCS

•Results

Page 9: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

4 Point Congruent Set

• Use planar 4-points basis in P

• Find congruent 4-points in Q

P Q

4-points Congruent Sets for Robust Surface Registration

Dror Aiger, Niloy J. Mitra, Daniel Cohen-Or

SIGGRAPH 2008

Page 10: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

a

b

e

r1 = || a - e || / || a - b ||

4 Point Congruent Set

• What does congruent mean ?

• Similar under a given transformation class

• Ratios r1 and r2

Page 11: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

a

b

c

d

d1 d2

4 Point Congruent Set

• What does congruent mean ?

• Similar under a given transformation class

• Ratios r1 and r2

• Distances d1 , d2

Page 12: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

4 Point Congruent Set

Rigid transformation

• What does congruent mean ?

• Similar under a given transformation class

• Ratios r1 and r2

• Distances d1 , d2

• Angle α

Page 13: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

4 Point Congruent Set

Select Base Extract pairs Extract

congruent superset

Verify and update

transformation

Filter congruent set

Ratios Distances

Ratios Distances

Angles

False positives (non congruents)

Page 14: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

4 Point Congruent Set

• Extract pairs

Page 15: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

4 Point Congruent Set

• Extract pairs

d1 ε ε

≈ d1

d1 ≈ d1

Page 16: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

4 Point Congruent Set

• Extract pairs

a

b e

Page 17: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

4 Point Congruent Set

• Extract pairs

d2 ε ε

Page 18: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

4 Point Congruent Set

• Extract pairs

Page 19: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

4 Point Congruent Set

• Extract pairs

• Extract congruent super-set

Page 20: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

4 Point Congruent Set

• Extract pairs

• Extract congruent super-set

Page 21: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

4 Point Congruent Set

• Extract pairs

• Extract congruent super-set

• Filter congruent set

Page 22: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

4 Point Congruent Set

Select Base Extract pairs Extract

congruent superset

Verify and update

transformation

Filter congruent set

Ratios Distances

Ratios Distances

Angles

O(n2) O(mlog(m)) O(k)

n points m pairs

k congruent sets

False positives (non congruents)

Page 23: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Super 4PCS

Select Base Extract pairs Extract congruent set Verify and

update transformation

O(n) O(m+k)

O(n2) O(mlog(m) + k)

n points m pairs

k congruent sets

No more false positive

Page 24: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Super 4PCS

Select Base Extract pairs Extract congruent set Verify and

update transformation

O(n) O(m+k)

O(n2) O(mlog(m) + k)

n points m pairs

k congruent sets

Our smart indexing techniques

produce the same congruent set as 4PCS but in linear time

Page 25: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Super 4PCS

Select Base Extract pairs Extract congruent set Verify and

update transformation

O(n) O(m+k)

O(n2) O(mlog(m) + k)

n points m pairs

k congruent sets

Page 26: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Pair extraction

• Reporting incidences: all valid pairs generated from a sphere

d1

Page 27: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Pair extraction

• Reporting incidences using sphere rasterization

• Complexity depends only on ε and d1

d1

ε

Page 28: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Pair extraction

• Reporting incidences using sphere rasterization

• With an adaptative grid

Note: using a pre-computed tree is not optimal

d1

ε

Page 29: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Pair extraction

• Reporting incidences using sphere rasterization

• With an adaptative grid

• Simultaneously for all points

Page 30: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Pair extraction

• Reporting incidences using sphere rasterization

• With an adaptative grid

• Simultaneously for all points

• Theoretical complexity: O(n)

(see details in the paper)

Page 31: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Pair extraction

• Reporting incidences using sphere rasterization

• With an adaptative grid

• Simultaneously for all points

• Theoretical complexity: O(n)

• In practice

• Runtime: linear

• Minimal memory overhead

Q

P

50

0

time (sec)

1049 1171 1542 2346 3117

4PCS

Super 4PCS

Page 32: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

4PCS Congruent set extraction

• Original approach

• Represent a pair by 2 invariants

m pairs k congruent sets

a

b

Page 33: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

4PCS Congruent set extraction

• Original approach

• Represent a pair by 2 invariants

• Use kd-tree to find closest invariants

m pairs k congruent sets

O(mlog(m) )

Page 34: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

4PCS Congruent set extraction

• Original approach

• Represent a pair by 2 invariants

• Use kd-tree to find closest invariants

• Filter non congruent quadriplets

m pairs k congruent sets

O(mlog(m) + k)

Page 35: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Congruent set extraction

• Efficient indexing

• Represent pairs as invariant + direction

a

b

a

b

Page 36: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Congruent set extraction

• Efficient indexing

• Represent pairs as invariant + direction

• Hash pairs by position and direction

a

b

a

b

Page 37: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Congruent set extraction

• Efficient indexing

• Represent pairs as invariant + direction

• Hash pairs by position and direction

• Query

• Hash positions (closest invariants)

a

b

a

b

Page 38: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Congruent set extraction

• Efficient indexing

• Represent pairs as invariant + direction

• Hash pairs by position and direction

• Query

• Hash positions (closest invariants)

a

b

a

b

Page 39: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Congruent set extraction

• Efficient indexing

• Represent pairs as invariant + direction

• Hash pairs by position and direction

• Query

• Hash positions (closest invariants)

• Theoretical complexity: O(n)

(see details in the paper)

a

b

a

b

Page 40: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Congruent set extraction

• Efficient indexing

• Represent pairs as invariant + direction

• Hash pairs by position and direction

• Query

• Hash positions (closest invariants)

• Theoretical complexity: O(n)

• In practice

• Runtime: linear

• Memory overhead: similar to kd-tree

Q

P

4PCS

Super 4PCS

time (sec)

1049 1171 1542 0

2346 3117

200

400

600

Page 41: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Results

Page 42: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Outliers

Before ICP

After ICP

Input 1.4 sec 15 sec 30 sec

35k points

Page 43: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Low overlap

(no ICP)

32k points

Page 44: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Low overlap

• Other examples

Model Points (x1000)

Overlap (%)

4PCS (in sec)

Super 4PCS

(in sec)

Bubba 10 5 5 2.5

Buddha 37 20 63 37

Hippo 32 25 11 0.5

10k points 37k points 32k points

Page 45: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Low overlap + featureless

2 500 points

Page 46: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Multi-modal models

• P: 2.5M points, multiview stereo

• Q: 2.5M points, LIDAR

Page 47: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Range Images alignment

Page 48: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Kinect scans

• Chaining pairwise registration (5/6 frames)

Page 49: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Limitations

• Sampling sensitivity

• Region Of Interest (ROI)

• Cannot match between the points

• Metric

Select Base Extract pairs Extract congruent set Verify

Page 50: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Conclusion

• Global matching algorithm

• Running in linear time

• Unstructured point clouds without normals

• Can be combined with local descriptors

• Future work

• Real-time using GPGPU programming

• Alternative to Kinect Fusion

Page 51: Super 4PCS Fast Global Pointcloud Registration via Smart Indexinggeometry.cs.ucl.ac.uk/projects/2014/super4PCS/super4pcs... · 2015-05-13 · Fast Global Pointcloud Registration via

Thank you for your attention

• Super 4PCS

• Global matching running in linear time

• Acknowledgements • Feedback&discussion: Duygu Ceylan, Aron Monszpart

• SparseICP data and comparisons: Sofien Bouaziz, Andrea Tagliasacchi

• Pisa dataset: Matteo Dellepiane

• Funding • Marie Curie Career Integration Grant

• ERC Starting Grant SmartGeometry

• Adobe Research

Code and data goo.gl/uQrhJU

github.com/smartgeometry-ucl/Super4PCS

Features: • C++ • Based on Eigen • Structures implemented in arbitrary dimensions


Recommended