Registration of Point Cloud Data from a Geometric Optimization Perspective
description
Transcript of Registration of Point Cloud Data from a Geometric Optimization Perspective
![Page 1: Registration of Point Cloud Data from a Geometric Optimization Perspective](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/1.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/2.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/3.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/4.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/5.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/6.jpg)
Registration of PCD
Notations
}{ ipP
![Page 7: Registration of Point Cloud Data from a Geometric Optimization Perspective](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/7.jpg)
Registration of PCD
Notations
P
![Page 8: Registration of Point Cloud Data from a Geometric Optimization Perspective](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/8.jpg)
Registration of PCD
Squared Distance Function (F)
xP
![Page 9: Registration of Point Cloud Data from a Geometric Optimization Perspective](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/9.jpg)
Registration of PCD
Squared Distance Function (F)
x
2d),( PxF
dP
![Page 10: Registration of Point Cloud Data from a Geometric Optimization Perspective](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/10.jpg)
Registration of PCD
Registration Problem
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/11.jpg)
Registration of PCD
Registration Problem
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/12.jpg)
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
PitR
i
tRqF ),(,
min
![Page 13: Registration of Point Cloud Data from a Geometric Optimization Perspective](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/13.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/14.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/15.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/16.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/17.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/18.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/19.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/20.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/21.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/22.jpg)
Registration of PCD
Example d2trees
2D 3D
![Page 23: Registration of Point Cloud Data from a Geometric Optimization Perspective](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/23.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/24.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/25.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/26.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/27.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/28.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/29.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/30.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/31.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/32.jpg)
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](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/33.jpg)
Registration of PCD
Convergence Funnel
Our algorithmPlane-to-plane ICP
![Page 34: Registration of Point Cloud Data from a Geometric Optimization Perspective](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/34.jpg)
Registration of PCD
Convergence Rate I
Bad Initial Alignment
![Page 35: Registration of Point Cloud Data from a Geometric Optimization Perspective](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/35.jpg)
Registration of PCD
Convergence Rate II
Good Initial Alignment
![Page 36: Registration of Point Cloud Data from a Geometric Optimization Perspective](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/36.jpg)
Registration of PCD
Partial Alignment
Starting Position
![Page 37: Registration of Point Cloud Data from a Geometric Optimization Perspective](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/37.jpg)
Registration of PCD
Partial Alignment
After 6 iterations
![Page 38: Registration of Point Cloud Data from a Geometric Optimization Perspective](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/38.jpg)
Registration of PCD
Partial Alignment
After 6 iterationsDifferent sampling density
![Page 39: Registration of Point Cloud Data from a Geometric Optimization Perspective](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/39.jpg)
Registration of PCD
Future Work
Partial matching
Global registration
Non-rigid transforms
![Page 40: Registration of Point Cloud Data from a Geometric Optimization Perspective](https://reader036.fdocuments.net/reader036/viewer/2022062315/56814f34550346895dbccbe0/html5/thumbnails/40.jpg)
Registration of PCD
Questions?