Real-Time 3D Model Acquisition Szymon Rusinkiewicz Olaf Hall-Holt Marc Levoy Ilya Korsunsky Princeton University Stanford University Hunter College.

Slides:



Advertisements
Similar presentations
KinectFusion: Real-Time Dense Surface Mapping and Tracking
Advertisements

Structured Light principles Figure from M. Levoy, Stanford Computer Graphics Lab.
www-video.eecs.berkeley.edu/research
--- some recent progress Bo Fu University of Kentucky.
A Theft-Based Approach to 3D Object Acquisition Ronit Slyper Jim McCann.
Structured light and active ranging techniques Class 11.
Computer Vision Spring ,-685 Instructor: S. Narasimhan Wean 5403 T-R 3:00pm – 4:20pm Lecture #17.
Vision Sensing. Multi-View Stereo for Community Photo Collections Michael Goesele, et al, ICCV 2007 Venus de Milo.
Gratuitous Picture US Naval Artillery Rangefinder from World War I (1918)!!
Robust Global Registration Natasha Gelfand Niloy Mitra Leonidas Guibas Helmut Pottmann.
Structured Light + Range Imaging Lecture #17 (Thanks to Content from Levoy, Rusinkiewicz, Bouguet, Perona, Hendrik Lensch)
Real-time Acquisition and Rendering of Large 3D Models Szymon Rusinkiewicz.
Stereo.
Reverse Engineering Niloy J. Mitra.
Registration of two scanned range images using k-d tree accelerated ICP algorithm By Xiaodong Yan Dec
Speed and Robustness in 3D Model Registration Szymon Rusinkiewicz Princeton University.
SIGGRAPH Course 30: Performance-Driven Facial Animation Section: Markerless Face Capture and Automatic Model Construction Part 2: Li Zhang, Columbia University.
1 MURI review meeting 09/21/2004 Dynamic Scene Modeling Video and Image Processing Lab University of California, Berkeley Christian Frueh Avideh Zakhor.
Efficient Variants of the ICP Algorithm
Structured light and active ranging techniques Class 8.
Stereoscopic Light Stripe Scanning: Interference Rejection, Error Minimization and Calibration By: Geoffrey Taylor Lindsay Kleeman Presented by: Ali Agha.
A Laser Range Scanner Designed for Minimum Calibration Complexity James Davis, Xing Chen Stanford Computer Graphics Laboratory 3D Digital Imaging and Modeling.
Acknowledgement: some content and figures by Brian Curless
CS CS 175 – Week 2 Processing Point Clouds Registration.
Light Field Mapping: Hardware-Accelerated Visualization of Surface Light Fields.
Real-Time 3D Model Acquisition
3D Scanning. Computer Graphics Pipeline Human time = expensiveHuman time = expensive Sensors = cheapSensors = cheap – Computer graphics increasingly relies.
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.
CSCE 641 Computer Graphics: Image-based Modeling (Cont.) Jinxiang Chai.
3D object capture Capture N “views” (parts of the object) –get points on surface of object –create mesh (infer connectivity) Hugues Hoppe –filter data.
3D Scan Matching and Registration ICCV 2005 Short Course Szymon Rusinkiewicz Michael Kazhdan Benedict Brown Princeton University Johns Hopkins University.
Structured light and active ranging techniques Class 8
Modeling And Visualization Of Aboriginal Rock Art in The Baiame Cave
Automatic Registration of Color Images to 3D Geometry Computer Graphics International 2009 Yunzhen Li and Kok-Lim Low School of Computing National University.
MESA LAB Multi-view image stitching Guimei Zhang MESA LAB MESA (Mechatronics, Embedded Systems and Automation) LAB School of Engineering, University of.
Reporter: Zhonggui Chen
Realtime 3D model construction with Microsoft Kinect and an NVIDIA Kepler laptop GPU Paul Caheny MSc in HPC 2011/2012 Project Preparation Presentation.
A Camera-Projector System for Real-Time 3D Video Marcelo Bernardes, Luiz Velho, Asla Sá, Paulo Carvalho IMPA - VISGRAF Laboratory Procams 2005.
A General-Purpose Platform for 3-D Reconstruction from Sequence of Images Ahmed Eid, Sherif Rashad, and Aly Farag Computer Vision and Image Processing.
Stereo Many slides adapted from Steve Seitz. Binocular stereo Given a calibrated binocular stereo pair, fuse it to produce a depth image image 1image.
Asian Institute of Technology
Lec 22: Stereo CS4670 / 5670: Computer Vision Kavita Bala.
1Computer Graphics Implementation II Lecture 16 John Shearer Culture Lab – space 2
1 Research Question  Can a vision-based mobile robot  with limited computation and memory,  and rapidly varying camera positions,  operate autonomously.
04/23/03© 2003 University of Wisconsin Where We’ve Been Photo-realistic rendering –Accurate modeling and rendering of light transport and surface reflectance.
EFFICIENT VARIANTS OF THE ICP ALGORITHM
CSE 185 Introduction to Computer Vision Feature Matching.
Triangulation Scanner Design Options
Visual Odometry David Nister, CVPR 2004
Real-Time Dynamic Shadow Algorithms Evan Closson CSE 528.
Improvements on Automated Registration CSc83020 Project Presentation Cecilia Chao Chen.
Computer Vision Computer Vision based Hole Filling Chad Hantak COMP December 9, 2003.
CSCI 631 – Foundations of Computer Vision March 15, 2016 Ashwini Imran Image Stitching.
Manufacturing Process II
Accuracy of 3D Scanning Technologies in a Face Scanning Scenario Chris Boehnen and Patrick Flynn University of Notre Dame.
Acquiring, Stitching and Blending Diffuse Appearance Attributes on 3D Models C. Rocchini, P. Cignoni, C. Montani, R. Scopigno Istituto Scienza e Tecnologia.
CSCI 631 – Foundations of Computer Vision March 15, 2016 Ashwini Imran Image Stitching Link: singhashwini.mesinghashwini.me.
Faculty of Sciences and Technology from University of Coimbra Generating 3D Meshes from Range Data [1] Graphic Computation and Three-dimensional Modeling.
Danfoss Visual Inspection System
CS4670 / 5670: Computer Vision Kavita Bala Lec 27: Stereo.
Real Time Dense 3D Reconstructions: KinectFusion (2011) and Fusion4D (2016) Eleanor Tursman.
Geometrically Stable Sampling for the ICP Algorithm
A New Approach to Track Multiple Vehicles With the Combination of Robust Detection and Two Classifiers Weidong Min , Mengdan Fan, Xiaoguang Guo, and Qing.
Range Imaging Through Triangulation
Acknowledgement: some content and figures by Brian Curless
3D Scan Alignment Using ICP
A Volumetric Method for Building Complex Models from Range Images
Real-time Acquisition and Rendering of Large 3D Models
Chapter 14 Shading Models.
Presentation transcript:

Real-Time 3D Model Acquisition Szymon Rusinkiewicz Olaf Hall-Holt Marc Levoy Ilya Korsunsky Princeton University Stanford University Hunter College

3D Scanning

Possible Research Goals Low noiseLow noise Guaranteed high accuracyGuaranteed high accuracy High speedHigh speed Low costLow cost Automatic operationAutomatic operation No holesNo holes

3D Model Acquisition Pipeline 3D Scanner

3D Model Acquisition Pipeline 3D Scanner View Planning

3D Model Acquisition Pipeline 3D Scanner AlignmentAlignment View Planning

3D Model Acquisition Pipeline 3D Scanner AlignmentAlignment MergingMerging View Planning

3D Model Acquisition Pipeline 3D Scanner AlignmentAlignment MergingMergingDone?Done? View Planning

3D Model Acquisition Pipeline 3D Scanner AlignmentAlignment MergingMergingDone?Done? View Planning DisplayDisplay

3D Model Acquisition Difficulties Much (often most) time spent on “last 20%”Much (often most) time spent on “last 20%” – Merging, Displaying, View Planning Pipeline not optimized for hole-fillingPipeline not optimized for hole-filling Not sufficient just to speed up scanner – must design pipeline for fast feedbackNot sufficient just to speed up scanner – must design pipeline for fast feedback

Real-Time 3D Model Acquisition Pipeline 3D Scanner AlignmentAlignment MergingMergingDone?Done? View Planning DisplayDisplay Human

Real-Time 3D Model Acquisition Pipeline 3D Scanner AlignmentAlignment MergingMerging Done?Done? View Planning DisplayDisplay Challenge: Real Time

Real-Time 3D Model Acquisition Pipeline 3D Scanner AlignmentAlignment MergingMergingDone?Done? View Planning DisplayDisplay Part I: Structured-Light Triangulation

Real-Time 3D Model Acquisition Pipeline 3D Scanner AlignmentAlignment MergingMergingDone?Done? View Planning DisplayDisplay Part II: Fast ICP

Real-Time 3D Model Acquisition Pipeline 3D Scanner AlignmentAlignment MergingMergingDone?Done? View Planning DisplayDisplay Part III: Voxel Grid

Triangulation Project laser stripe onto objectProject laser stripe onto object Object Laser CameraCamera

CameraCamera Triangulation Depth from ray-plane triangulationDepth from ray-plane triangulation Laser (x,y) Object

Triangulation Faster acquisition: project multiple stripesFaster acquisition: project multiple stripes Correspondence problem: which stripe is which?Correspondence problem: which stripe is which?

Continuum of Triangulation Methods Slow, robust Fast, fragile Multi-stripeMulti-frame Single-frame Single-stripe

Time-Coded Light Patterns Assign each stripe a unique illumination code over time [Posdamer 82]Assign each stripe a unique illumination code over time [Posdamer 82] Space Time

Illumination history = (WB),(BW),(WB) CodeCode Codes for Moving Scenes Assign time codes to stripe boundariesAssign time codes to stripe boundaries Perform frame-to-frame tracking of corresponding boundariesPerform frame-to-frame tracking of corresponding boundaries – Propagate illumination history [Hall-Holt & Rusinkiewicz, ICCV 2001] [Hall-Holt & Rusinkiewicz, ICCV 2001]

Designing a Code Want many “features” to track: lots of black/white edges at each frameWant many “features” to track: lots of black/white edges at each frame Try to minimize ghosts – WW or BB “boundaries” that can’t be seen directlyTry to minimize ghosts – WW or BB “boundaries” that can’t be seen directly

Designing a Code [Hall-Holt & Rusinkiewicz, ICCV 2001]

Implementation Pipeline:Pipeline: DLP projector illuminates 60 Hz.DLP projector illuminates 60 Hz. Synchronized NTSC camera captures videoSynchronized NTSC camera captures video Pipeline returns range 60 Hz.Pipeline returns range 60 Hz. ProjectCodeProjectCodeCaptureImagesCaptureImagesFindBoundariesFindBoundariesMatchBoundariesMatchBoundariesDecodeDecodeComputeRangeComputeRange

Real-Time 3D Model Acquisition Pipeline 3D Scanner AlignmentAlignment MergingMergingDone?Done? View Planning DisplayDisplay Part II: Fast ICP

Aligning 3D Data This range scanner can be used for any moving objectsThis range scanner can be used for any moving objects For rigid objects, range images can be aligned to each other as object movesFor rigid objects, range images can be aligned to each other as object moves

ICP in the Real-Time Pipeline Potential problem with ICP: local minimaPotential problem with ICP: local minima – In this pipeline, scans close together – Very likely to converge to correct (global) minimum Basic ICP algorithm too slow (~ seconds)Basic ICP algorithm too slow (~ seconds) – Point-to-plane minimization – Projection-based matching – With these tweaks, running time ~ milliseconds [Rusinkiewicz & Levoy, 3DIM 2001]

Anchor Scans If object moves too quickly or is out of range, ICP will failIf object moves too quickly or is out of range, ICP will fail Global driftGlobal drift Instead of aligning to last scan, keep set of scans to realign toInstead of aligning to last scan, keep set of scans to realign to Large: have enough dataLarge: have enough data Distinct: don’t store too manyDistinct: don’t store too many Allows user to restart scanningAllows user to restart scanning

Recapturing Alignment

Real-Time 3D Model Acquisition Pipeline 3D Scanner AlignmentAlignment MergingMergingDone?Done? View Planning DisplayDisplay Part III: Voxel Grid

Merging and Rendering Goal: visualize the model well enough to be able to see holesGoal: visualize the model well enough to be able to see holes Cannot display all the scanned data – accumulates linearly with timeCannot display all the scanned data – accumulates linearly with time Standard high-quality merging methods: processing time ~ 1 minute per scanStandard high-quality merging methods: processing time ~ 1 minute per scan Use fast voxel based merging techniqueUse fast voxel based merging technique

Merging and Rendering

+

Point rendering, using accumulated normals for lightingPoint rendering, using accumulated normals for lighting

Problems with Merging Misaligned Scans (error in ICP)Misaligned Scans (error in ICP) – Moderate misalignment Voxels rendered on top of one anotherVoxels rendered on top of one another Noisy but OKNoisy but OK

Problems with Merging Misaligned Scans (error in ICP)Misaligned Scans (error in ICP) – Outliers Give wrong modelGive wrong model Eliminate thin and long triangles and associated pointsEliminate thin and long triangles and associated points Can be aggressive eliminating b/c of large amt dataCan be aggressive eliminating b/c of large amt data Also rejects low quality dataAlso rejects low quality data

Example: Photograph 18 cm.

Result

Postprocessing Real-time displayReal-time display – Quality/speed tradeoff – Goal: let user evaluate coverage, fill holes Offline postprocessing for high-quality modelsOffline postprocessing for high-quality models – Global registration – High-quality merging (e.g., using VRIP [Curless 96])

Example: Photograph 18 cm.

Postprocessed Model

Summary 3D model acquisition pipeline optimized for obtaining complete, hole-free models3D model acquisition pipeline optimized for obtaining complete, hole-free models Use human’s time most efficientlyUse human’s time most efficiently Pieces of pipeline selected for real-time use:Pieces of pipeline selected for real-time use: – Structured-light scanner for moving objects – Fast ICP variant – Simple grid-based merging, point rendering

Limitations Prototype noisier than commercial systemsPrototype noisier than commercial systems – Could be made equivalent with careful engineering – Ultimate limitations on quality: focus, texture Scan-to-scan ICP not perfect  alignment driftScan-to-scan ICP not perfect  alignment drift – Due to noise, miscalibration, degenerate geometry – Reduced, but not eliminated, by “anchor scans” – Possibly combine ICP with separate trackers