Efficient Variants of the ICP Algorithm

Slides:



Advertisements
Similar presentations
ECG Signal processing (2)
Advertisements

Automatic 3D modeling from range images Daniel Huber Carnegie Mellon University Robotics Institute.
A Theft-Based Approach to 3D Object Acquisition Ronit Slyper Jim McCann.
Computer Vision Spring ,-685 Instructor: S. Narasimhan Wean 5403 T-R 3:00pm – 4:20pm Lecture #17.
Robust Global Registration Natasha Gelfand Niloy Mitra Leonidas Guibas Helmut Pottmann.
Low Complexity Keypoint Recognition and Pose Estimation Vincent Lepetit.
Vision Based Control Motion Matt Baker Kevin VanDyke.
Amir Hosein Omidvarnia Spring 2007 Principles of 3D Face Recognition.
AdaBoost & Its Applications
Implementation of ICP Variants Pavan Ram Piratla Janani Venkateswaran.
Instructor: Mircea Nicolescu Lecture 13 CS 485 / 685 Computer Vision.
Semi-automatic Range to Range Registration: A Feature-based Method Chao Chen & Ioannis Stamos Computer Science Department Graduate Center, Hunter College.
Laser Scan Matching in Polar Coordinates with Application to SLAM
Reverse Engineering Niloy J. Mitra.
Registration of two scanned range images using k-d tree accelerated ICP algorithm By Xiaodong Yan Dec
CENG 789 – Digital Geometry Processing 06- Rigid-Body Alignment Asst. Prof. Yusuf Sahillioğlu Computer Eng. Dept,, Turkey.
Final Class: Range Data registration CISC4/689 Credits: Tel-Aviv University.
Iterative closest point algorithms
Speed and Robustness in 3D Model Registration Szymon Rusinkiewicz Princeton University.
© University of Minnesota Data Mining for the Discovery of Ocean Climate Indices 1 CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance.
Identifying Structural Motifs in Proteins Rohit Singh Joint work with Mitul Saha.
Scan Matching Pieter Abbeel UC Berkeley EECS
A Laser Range Scanner Designed for Minimum Calibration Complexity James Davis, Xing Chen Stanford Computer Graphics Laboratory 3D Digital Imaging and Modeling.
Shape Modeling International 2007 – University of Utah, School of Computing Robust Smooth Feature Extraction from Point Clouds Joel Daniels ¹ Linh Ha ¹.
CS CS 175 – Week 2 Processing Point Clouds Registration.
Computing motion between images
Real-Time 3D Model Acquisition
Matching and Recognition in 3D. Moving from 2D to 3D Some things harderSome things harder – Rigid transform has 6 degrees of freedom vs. 3 – No natural.
1 Bronstein, Bronstein, and Kimmel Joint extrinsic and intrinsic similarity of non-rigid shapes Rock, paper, and scissors Joint extrinsic and intrinsic.
What is Cluster Analysis?
Robust Real-Time Object Detection Paul Viola & Michael Jones.
3D reconstruction Class 16. 3D photography course schedule Introduction Aug 24, 26(no course) Aug.31,Sep.2(no course) Sep. 7, 9(no course) Sep. 14, 16Projective.
Spectral Processing of Point-sampled Geometry
3D full object reconstruction from kinect Yoni Choukroun Elie Semmel Advisor: Yonathan Afflalo.
A Hierarchical Method for Aligning Warped Meshes Leslie Ikemoto 1, Natasha Gelfand 2, Marc Levoy 2 1 UC Berkeley, formerly Stanford 2 Stanford University.
Iterative Closest Point Ronen Gvili. The Problem Align two partially- overlapping meshes given initial guess for relative transform.
Face Recognition Using Neural Networks Presented By: Hadis Mohseni Leila Taghavi Atefeh Mirsafian.
כמה מהתעשייה? מבנה הקורס השתנה Computer vision.
3D Global Registration. The Problem Given: n scans around an objectGiven: n scans around an object Goal: align them allGoal: align them all First attempt:
Yuping Lin and Gérard Medioni.  Introduction  Method  Register UAV streams to a global reference image ▪ Consecutive UAV image registration ▪ UAV to.
PixelLaser: Range scans from image segmentation Nicole Lesperance ’11 Michael Leece ’11 Steve Matsumoto ’12 Max Korbel ’13 Kenny Lei ’15 Zach Dodds ‘62.
CSE 185 Introduction to Computer Vision
Surface Simplification Using Quadric Error Metrics Michael Garland Paul S. Heckbert.
Automatic Registration of Color Images to 3D Geometry Computer Graphics International 2009 Yunzhen Li and Kok-Lim Low School of Computing National University.
KinectFusion : Real-Time Dense Surface Mapping and Tracking IEEE International Symposium on Mixed and Augmented Reality 2011 Science and Technology Proceedings.
Shape Matching for Model Alignment 3D Scan Matching and Registration, Part I ICCV 2005 Short Course Michael Kazhdan Johns Hopkins University.
MESA LAB Multi-view image stitching Guimei Zhang MESA LAB MESA (Mechatronics, Embedded Systems and Automation) LAB School of Engineering, University of.
Learning a Fast Emulator of a Binary Decision Process Center for Machine Perception Czech Technical University, Prague ACCV 2007, Tokyo, Japan Jan Šochman.
Time Series Data Analysis - I Yaji Sripada. Dept. of Computing Science, University of Aberdeen2 In this lecture you learn What are Time Series? How to.
A Method for Registration of 3D Surfaces ICP Algorithm
Realtime 3D model construction with Microsoft Kinect and an NVIDIA Kepler laptop GPU Paul Caheny MSc in HPC 2011/2012 Project Preparation Presentation.
Dense Image Over-segmentation on a GPU Alex Rodionov 4/24/2009.
EFFICIENT VARIANTS OF THE ICP ALGORITHM
I-SMOOTH FOR IMPROVED MINIMUM CLASSIFICATION ERROR TRAINING Haozheng Li, Cosmin Munteanu Pei-ning Chen Department of Computer Science & Information Engineering.
Boosted Particle Filter: Multitarget Detection and Tracking Fayin Li.
Using simplified meshes for crude registration of two partially overlapping range images Mercedes R.G.Márquez Wu Shin-Ting State University of Matogrosso.
CSE 185 Introduction to Computer Vision Feature Matching.
Skuller: A volumetric shape registration algorithm for modeling skull deformities Yusuf Sahillioğlu 1 and Ladislav Kavan 2 Medical Image Analysis 2015.
Mesh Resampling Wolfgang Knoll, Reinhard Russ, Cornelia Hasil 1 Institute of Computer Graphics and Algorithms Vienna University of Technology.
CENG 789 – Digital Geometry Processing 07- Rigid-Body Alignment Asst. Prof. Yusuf Sahillioğlu Computer Eng. Dept,, Turkey.
Registration and Alignment Speaker: Liuyu
Fast face localization and verification J.Matas, K.Johnson,J.Kittler Presented by: Dong Xie.
Faculty of Sciences and Technology from University of Coimbra Generating 3D Meshes from Range Data [1] Graphic Computation and Three-dimensional Modeling.
Real-Time 3D Model Acquisition Szymon Rusinkiewicz Olaf Hall-Holt Marc Levoy Ilya Korsunsky Princeton University Stanford University Hunter College.
CENG 789 – Digital Geometry Processing 08- Rigid-Body Alignment
Iterative Closest Point
Geometrically Stable Sampling for the ICP Algorithm
3D Scan Alignment Using ICP
Real-time Acquisition and Rendering of Large 3D Models
CSE 185 Introduction to Computer Vision
Presentation transcript:

Efficient Variants of the ICP Algorithm Szymon Rusinkiewicz Marc Levoy Stanford University

Problem Align two partially- overlapping meshes given initial guess for relative transform

Aligning 3D Data If correct correspondences are known, it is possible to find correct relative rotation/translation

Aligning 3D Data How to find corresponding points? Previous systems based on user input, feature matching, surface signatures, etc.

Aligning 3D Data Alternative: assume closest points correspond to each other, compute the best transform…

Aligning 3D Data … and iterate to find alignment Iterated Closest Points (ICP) [Besl & McKay 92] Converges if starting position “close enough“

Outline Enumeration and classification of ICP variants Performance comparisons High-speed ICP algorithm recombines previously-introduced variants Suitable for real-time range scanning

ICP Variants Variants on the following stages of ICP have been proposed: Selecting source points (from one or both meshes) Matching to points in the other mesh Weighting the correspondences Rejecting certain (outlier) point pairs Assigning an error metric to the current transform Minimizing the error metric

Performance of Variants Can analyze various aspects of performance: Speed Stability Tolerance of noise and/or outliers Basin of convergence (maximum initial misalignment) Comparisons in paper focus mostly on speed Today: summarize conclusions about a few categories of ICP variants

ICP Variants Selecting source points (from one or both meshes) Matching to points in the other mesh Weighting the correspondences Rejecting certain (outlier) point pairs Assigning an error metric to the current transform Minimizing the error metric

Selecting Source Points Use all points Uniform subsampling Random sampling Normal-space sampling Ensure that samples have normals distributed as uniformly as possible

Normal-Space Sampling Uniform Sampling Normal-Space Sampling

Normal-Space Sampling Conclusion: normal-space sampling better for mostly-smooth areas with sparse features Random sampling Normal-space sampling

Selection vs. Weighting Could achieve same effect with weighting Hard to ensure enough samples in features except at high sampling rates However, have to build special data structure Preprocessing / run-time cost tradeoff

ICP Variants Selecting source points (from one or both meshes) Matching to points in the other mesh Weighting the correspondences Rejecting certain (outlier) point pairs Assigning an error metric to the current transform Minimizing the error metric

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

ICP Variants Selecting source points (from one or both meshes) Matching to points in the other mesh Weighting the correspondences Rejecting certain (outlier) point pairs Assigning an error metric to the current transform Minimizing the error metric

Matching Matching strategy has greatest effect on convergence and speed Closest point Normal shooting Closest compatible point Projection

Closest-Point Matching Find closest point in other mesh Closest-point matching generally stable, but slow and requires preprocessing

Normal Shooting Project along normal, intersect other mesh Slightly better than closest point for smooth meshes, worse for noisy or complex meshes

Closest Compatible Point Can improve effectiveness of both of the previous variants by only matching to compatible points Compatibility based on normals, colors, etc. At limit, degenerates to feature matching

Projection to Find Correspondences Finding closest point is most expensive stage of the ICP algorithm Idea: use a simpler algorithm to find correspondences For range images, can simply project point [Blais 95]

Projection-Based Matching Slightly worse performance per iteration Each iteration is one to two orders of magnitude faster than closest-point Requires point-to-plane error metric

High-Speed ICP Algorithm ICP algorithm with projection-based correspondences, point-to-plane matching can align meshes in a few tens of ms. (cf. over 1 sec. with closest-point)

Application Given: Result: 3D model acquisition A scanner that returns range images in real time Fast ICP Real-time merging and rendering Result: 3D model acquisition Tight feedback loop with user Can see and fill holes while scanning

Our Implementation Real-time structured-light range scanner [Hall-Holt & Rusinkiewicz, ICCV01] Off-the-shelf camera and DLP projector Range images at 60 Hz.

Photograph

Real-Time Result

Conclusions Classified and compared variants of ICP Normal-space sampling for smooth meshes with sparse features Overall speed depends most on choice of matching algorithm Particular combination of variants can align two range images in a few tens of ms. Real-time range scanning Model-based tracking

Future Work More work on examining robustness and stability of variants Real-time global registration Other selection / weighting criteria? Select in regions of high curvature Continuum between ICP with fancy selection (or weighting) and feature matching