12
3D Scan Alignment Using 3D Scan Alignment Using ICP ICP

3D Scan Alignment Using ICP

  • Upload
    alaric

  • View
    48

  • Download
    0

Embed Size (px)

DESCRIPTION

3D Scan Alignment Using ICP. Problem. Align two partially- overlapping meshes given initial guess for relative transform. Aligning 3D Data. If correct correspondences are known, can find correct relative rotation/translation. Aligning 3D Data. - PowerPoint PPT Presentation

Citation preview

Page 1: 3D Scan Alignment Using ICP

3D Scan Alignment Using ICP3D Scan Alignment Using ICP

Page 2: 3D Scan Alignment Using ICP

ProblemProblem

• Align two partially-Align two partially-

overlapping meshesoverlapping meshes

given initial guessgiven initial guess

for relative transformfor relative transform

Page 3: 3D Scan Alignment Using ICP

Aligning 3D DataAligning 3D Data

• If correct correspondences are known, If correct correspondences are known, can find correct relative can find correct relative rotation/translationrotation/translation

Page 4: 3D Scan Alignment Using ICP

Aligning 3D DataAligning 3D Data

• How to find correspondences: User How to find correspondences: User input? Feature detection? Signatures?input? Feature detection? Signatures?

• Alternative: assume Alternative: assume closestclosest points points correspondcorrespond

Page 5: 3D Scan Alignment Using ICP

Aligning 3D DataAligning 3D Data

• … … and iterate to find alignmentand iterate to find alignment– Iterative Closest Points (ICP) [Besl & McKay Iterative Closest Points (ICP) [Besl & McKay

92]92]

• Converges if starting position “close Converges if starting position “close enough“enough“

Page 6: 3D Scan Alignment Using ICP

ICP VariantsICP Variants

• Variants on the following stages of ICPVariants on the following stages of ICPhave been proposed:have been proposed:

1.1. SelectingSelecting source points (from one or both meshes) source points (from one or both meshes)2.2. MatchingMatching to points in the other mesh to points in the other mesh3.3. WeightingWeighting the correspondences the correspondences4.4. RejectingRejecting certain (outlier) point pairs certain (outlier) point pairs5.5. Assigning an Assigning an error metricerror metric to the current transform to the current transform6.6. MinimizingMinimizing the error metric w.r.t. transformation the error metric w.r.t. transformation

Page 7: 3D Scan Alignment Using ICP

Performance of VariantsPerformance of Variants

• Can analyze various aspects of Can analyze various aspects of performance:performance:– SpeedSpeed

– StabilityStability

– Tolerance of noise and/or outliersTolerance of noise and/or outliers

– Maximum initial misalignmentMaximum initial misalignment

• Comparisons of many variants inComparisons of many variants in[Rusinkiewicz & Levoy, 3DIM 2001][Rusinkiewicz & Levoy, 3DIM 2001]

Page 8: 3D Scan Alignment Using ICP

ICP VariantsICP Variants

1.1. Selecting source points (from one or both meshesSelecting source points (from one or both meshes))2.2. MatchingMatching to points in the other mesh to points in the other mesh3.3. Weighting the correspondencesWeighting the correspondences4.4. Rejecting certain (outlier) point pairsRejecting certain (outlier) point pairs5.5. Assigning an error metric to the current transformAssigning an error metric to the current transform6.6. Minimizing the error metric w.r.t. transformationMinimizing the error metric w.r.t. transformation

Page 9: 3D Scan Alignment Using ICP

Closest Compatible PointClosest Compatible Point

• Closest point often a bad approximation Closest point often a bad approximation to corresponding pointto corresponding point

• Can improve matching effectiveness by Can improve matching effectiveness by restricting match to restricting match to compatiblecompatible points points– Compatibility of colors [Godin et al. 94]Compatibility of colors [Godin et al. 94]

– Compatibility of normals [Pulli 99]Compatibility of normals [Pulli 99]

– Other possibilities: curvatures, higher-order Other possibilities: curvatures, higher-order derivatives, and other local featuresderivatives, and other local features

Page 10: 3D Scan Alignment Using ICP

ICP VariantsICP Variants

1.1. Selecting source points (from one or both meshes)Selecting source points (from one or both meshes)2.2. Matching to points in the other meshMatching to points in the other mesh3.3. Weighting the correspondencesWeighting the correspondences4.4. Rejecting certain (outlier) point pairsRejecting certain (outlier) point pairs5.5. Assigning an Assigning an error metricerror metric to the current transform to the current transform6.6. Minimizing the error metric w.r.t. transformationMinimizing the error metric w.r.t. transformation

Page 11: 3D Scan Alignment Using ICP

Point-to-Plane Error MetricPoint-to-Plane Error Metric

• Using point-to-plane distance instead of Using point-to-plane distance instead of point-to-point lets flat regions slide point-to-point lets flat regions slide along each other [Chen & Medioni 91]along each other [Chen & Medioni 91]

Page 12: 3D Scan Alignment Using ICP

DemoDemo