registration of point cloud data from a geometric optimization perspective niloy j. mitra 1, natasha...

40
Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1 , Natasha Gelfand 1 , Helmut Pottmann 2 , Leonidas J. Guibas 1 1 Stanford University 2 Vienna University of Technology

Post on 15-Jan-2016

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of Point Cloud Data from a Geometric Optimization Perspective

Niloy J. Mitra1, Natasha Gelfand1, Helmut Pottmann2, Leonidas J. Guibas1

1 Stanford University 2 Vienna University of Technology

Page 2: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Registration Problem

GivenTwo point cloud data sets P (model) and Q (data) sampled from surfaces P and Q respectively.

Q P

modeldata

Assume Q is a part of P.

Page 3: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Registration Problem

GivenTwo point cloud data sets P and Q.

GoalRegister Q against P by minimizing the squared distance between the underlying surfaces using only rigid transforms.

Q P

data model

Page 4: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Registration Problem

• use of second order accurate approximation to the squared distance field.

• no explicit closest point information needed.

• proposed algorithm has good convergence properties.

GivenTwo point cloud data sets P and Q.

GoalRegister Q against P by minimizing the squared distance between the underlying surfaces using only rigid transforms.

Contributions

Page 5: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Related Work

Iterated Closest Point (ICP) point-point ICP [ Besl-McKay ] point-plane ICP [ Chen-Medioni ]

Matching point clouds based on flow complex [ Dey et al. ] based on geodesic distance [ Sapiro and Memoli ]

MLS surface for PCD [ Levin ]

Page 6: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Notations

}{ ipP

Page 7: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Notations

P

Page 8: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Squared Distance Function (F)

xP

Page 9: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Squared Distance Function (F)

x

2d),( PxF

dP

Page 10: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Registration Problem

Qq

Pi

i

qF )),((

min

An optimization problem in the squared distance field of P, the model PCD.

. )( ii qq Rigid transform that takes points

Our goal is to solve for,

Page 11: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Registration Problem

Qq

PitR

i

tRqF ),(,

min

Optimize for R and t.

)()( tR ntranslatio rotation

Our goal is to solve for,

Page 12: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Overview of Our Approach

Construct approximate such that, to second order.

Linearize .

Solve

to get a linear system.

Apply to data PCD (Q) and iterate.

),(),( PP xFxF ),( PxF

Qq

PitR

i

tRqF ),(,

min

Page 13: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Registration in 2D

F Ey Dx CyBxy Ax )( 22 xF

TxQ ][][ 1yx 1yx

• Quadratic Approximant

Page 14: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Registration in 2D

)sin(

1)cos(

xt yxx

yt y xy

TxQxF ][][ 1yx 1yx )( • Quadratic Approximant

• Linearize rigid transform

),( tR

of function ] tt [ yx

Page 15: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Registration in 2D

xt yxx

yt y xy

• Quadratic Approximant

• Linearize rigid transform

),,(),( yx tt F

QqPi

i

tRq

• Residual error

TxQxF ][][ 1yx 1yx )(

Page 16: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Registration in 2D

),,( yx tt• Minimize residual error

21 MM

t

t

y

x

Depends on F+ and data PCD (Q).

Page 17: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Registration in 2D

),,( yx tt• Minimize residual error

• Solve for R and t.

• Apply a fraction of the computed motion

• F+ valid locally

• Step size determined by Armijo condition

• Fractional transforms [Alexa et al. 2002]

Page 18: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Registration in 3D

• Quadratic Approximant

• Linearize rigid transform

),,,,,( zyx ttt

• Residual error

T]1zyx[]1zyx[ )( xQxF

Minimize to get a linear system

Page 19: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Approximate Squared Distance

Two methods for estimating F

1. d2Tree based computation

2. On-demand computation

)F(x, P valid in the neighborhood of x

Page 20: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

F(x, P) using d2Tree

A kd-tree like data structure for storing approximants of the squared distance function.

Each cell (c) stores a quadratic approximant as a matrix Qc.

Efficient to query.

[ Leopoldseder et al. 2003]

Page 21: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

F(x, P) using d2Tree

A kd-tree like data structure for storing approximants of the squared distance function.

Each cell (c) stores a quadratic approximant as a matrix Qc.

Efficient to query.

Simple bottom-up construction

Pre-computed for a given PCD.

Closest point information implicitly embedded in the squared distance function.

Page 22: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Example d2trees

2D 3D

Page 23: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Approximate Squared Distance

22

21

22

21 xxxx

ρ)( 1

1

-

x, Fd

d

[ Pottmann and Hofer 2003 ]

For a curve

Page 24: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Approximate Squared Distance

22

21

22

21 xxxx

ρ)( 1

1

-

x, Fd

d

[ Pottmann and Hofer 2003 ]

For a curve

23

22

21

23

22

21 xxxxx

ρx

ρ)( 21

21

--

x, Fd

d

d

d

For a surface

Page 25: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

On-demand Computation

Given a PCD, at each point p we pre-compute,

• a local frame

• normal

• principal direction of curvatures

• radii of principal curvature (and

)2e and e( 1

)n(

Page 26: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

On-demand Computation

Given a PCD, at each point p we pre-compute,

• a local frame

• normal

• principal direction of curvatures

• radii of principal curvature (and

)2e and e( 1

)n(

Estimated from a PCD using local analysis

• covariance analysis for local frame

• quadric fitting for principal curvatures

Page 27: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

On-demand Computation

Given a point x,

nearest neighbor (p) computed using approximate nearest neighbor (ANN) data structure

where j =d/(d-j) if d < 0

0 otherwise.

222

21 ))(())(())((),( pxpxpxxF nee 21P

Page 28: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Iterated Closest Point (ICP)

Iterate

1. Find correspondence between P and Q.

• closest point (point-to-point).

• tangent plane of closest point (point-to-plane).

2. Solve for the best rigid transform given the correspondence.

Page 29: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

ICP in Our Framework

0))((),( 2 j nF pxx P

1)(),( 2 j F pxx P

• Point-to-plane ICP (good for small d)

• Point-to-point ICP (good for large d)

Page 30: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Convergence Properties

Gradient decent over the error landscapeGauss -Newton Iteration

Zero residue problem (model and data PCD-s match)Quadratic Convergence

For fractional steps, Armijo condition usedDamped Gauss-Newton IterationLinear convergence

can be improved by quadratic motion approximation (not currently used)

Page 31: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Convergence Funnel

Set of all initial poses of the data PCD with respect to the model PCD that is successfully aligned using the algorithm.

Desirable properties

• broad

• stable

Page 32: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Convergence Funnel

Translation in x-z plane. Rotation about y-axis.

Converges

Does not converge

Page 33: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Convergence Funnel

Our algorithmPlane-to-plane ICP

Page 34: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Convergence Rate I

Bad Initial Alignment

Page 35: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Convergence Rate II

Good Initial Alignment

Page 36: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Partial Alignment

Starting Position

Page 37: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Partial Alignment

After 6 iterations

Page 38: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Partial Alignment

After 6 iterationsDifferent sampling density

Page 39: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Future Work

Partial matching

Global registration

Non-rigid transforms

Page 40: Registration of Point Cloud Data from a Geometric Optimization Perspective Niloy J. Mitra 1, Natasha Gelfand 1, Helmut Pottmann 2, Leonidas J. Guibas 1

Registration of PCD

Questions?