55
875 Dynamic Scene Reconstructi on Jan-Michael Frahm, Fall 2015 with slides from M. Pollefeys, Lazebnik, Matusik, Yerex and others

875 Dynamic Scene Reconstruction

Embed Size (px)

DESCRIPTION

Dynamic Scene Reconstruction No static scene assumption anymore Camera registration challenge mostly assumes registered cameras some approaches on dynamically obtaining camera registration

Citation preview

Page 1: 875 Dynamic Scene Reconstruction

875 Dynamic Scene

Reconstruction

Jan-Michael Frahm, Fall 2015

with slides from M. Pollefeys, Lazebnik, Matusik, Yerexand others

Page 2: 875 Dynamic Scene Reconstruction

Dynamic Scene Reconstruction

• No static scene assumption anymore

• Camera registration challengeo mostly assumes registered cameraso some approaches on dynamically obtaining camera registration

Page 3: 875 Dynamic Scene Reconstruction

Dynamic Scene Reconstruction

• Non-parametric scene reconstructiono Shape from Silhouetteo Space Carving

Page 4: 875 Dynamic Scene Reconstruction

3D Reconstruction from Calibrated Images

Scene VolumeV

Input Images(Calibrated)

Goal: Determine transparency, radiance of points in V

Page 5: 875 Dynamic Scene Reconstruction

Discrete Formulation: Voxel Coloring

Discretized Scene Volume

Input Images(Calibrated)

Goal: Assign RGBA values to voxels in Vphoto-consistent with images

Page 6: 875 Dynamic Scene Reconstruction

Complexity and Computability

Discretized Scene Volume

N voxelsC colors

3

All Scenes (CN3)Photo-ConsistentScenes

TrueScene

Page 7: 875 Dynamic Scene Reconstruction

IssuesTheoretical Questions

Identify class of all photo-consistent scenes

Practical QuestionsHow do we compute photo-consistent models?

Page 8: 875 Dynamic Scene Reconstruction

1. C=2 (silhouettes)Volume intersection [Martin 81, Szeliski 93]

2. C unconstrained, viewpoint constraints

Voxel coloring algorithm [Seitz & Dyer 97]

3. General CaseSpace carving [Kutulakos & Seitz 98]

Voxel Coloring Solutions

Page 9: 875 Dynamic Scene Reconstruction

Reconstruction from Silhouettes (C = 2)

Binary Images

Approach: Backproject each silhouetteIntersect backprojected volumes

Page 10: 875 Dynamic Scene Reconstruction

Volume Intersection

Reconstruction Contains the True SceneBut is generally not the same In the limit get visual hull

Complement of all lines that don’t intersect S

Page 11: 875 Dynamic Scene Reconstruction

Voxel Algorithm for Volume Intersection

Color voxel black if on silhouette in every image

O(MN3), for M images, N3 voxelsDon’t have to search 2N3 possible scenes!

Page 12: 875 Dynamic Scene Reconstruction

Properties of Volume IntersectionPros

o Easy to implement, fasto Accelerated via octrees [Szeliski 1993]

Conso No concavitieso Reconstruction is not photo-consistento Requires identification of silhouettes

Page 13: 875 Dynamic Scene Reconstruction

1. C=2 (silhouettes)Volume intersection [Martin 81, Szeliski 93]

2. C unconstrained, viewpoint constraints

Voxel coloring algorithm [Seitz & Dyer 97]

3. General CaseSpace carving [Kutulakos & Seitz 98]

Voxel Coloring Solutions

Page 14: 875 Dynamic Scene Reconstruction

1. Choose voxel2. Project and correlate3. Color if consistent

Voxel Coloring Approach

Visibility Problem: in which images is each voxel visible?

Page 15: 875 Dynamic Scene Reconstruction

The Global Visibility Problem

Inverse Visibilityknown images

Unknown Scene

Which points are visible in which images?

Known Scene

Forward Visibilityknown scene

Page 16: 875 Dynamic Scene Reconstruction

Layers

Depth Ordering: visit occluders first!

SceneTraversal

Condition: depth order is view-independent

Page 17: 875 Dynamic Scene Reconstruction

Panoramic Depth Orderingo Cameras oriented in many different directionso Planar depth ordering does not apply

Page 18: 875 Dynamic Scene Reconstruction

Layers radiate outwards from cameras

Panoramic Depth Ordering

Page 19: 875 Dynamic Scene Reconstruction

Panoramic Layering

Layers radiate outwards from cameras

Page 20: 875 Dynamic Scene Reconstruction

Layers radiate outwards from cameras

Panoramic Layering

Page 21: 875 Dynamic Scene Reconstruction

Compatible Camera ConfigurationsDepth-Order Constraint

Scene outside convex hull of camera centers

Outward-Lookingcameras inside

scene

Inward-Lookingcameras above

scene

Page 22: 875 Dynamic Scene Reconstruction

Calibrated Image Acquisition

Calibrated Turntable360° rotation (21 images)

Selected Dinosaur Images

Selected Flower Images

Page 23: 875 Dynamic Scene Reconstruction

Voxel Coloring Results (Video)

Dinosaur Reconstruction72 K voxels colored7.6 M voxels tested7 min. to compute on a 250MHz SGI

Flower Reconstruction70 K voxels colored7.6 M voxels tested7 min. to compute on a 250MHz SGI

Page 24: 875 Dynamic Scene Reconstruction

Limitations of Depth OrderingA view-independent depth order may not exist

p q

Need more powerful general-case algorithms

Unconstrained camera positionsUnconstrained scene

geometry/topology

Page 25: 875 Dynamic Scene Reconstruction

1. C=2 (silhouettes)Volume intersection [Martin 81, Szeliski 93]

2. C unconstrained, viewpoint constraints

Voxel coloring algorithm [Seitz & Dyer 97]

3. General CaseSpace carving [Kutulakos & Seitz 98]

Voxel Coloring Solutions

Page 26: 875 Dynamic Scene Reconstruction

Space Carving Algorithm

Space Carving Algorithm

Image 1 Image N

…...

Initialize to a volume V containing the true scene

Repeat until convergence

Choose a voxel on the current surface

Carve if not photo-consistentProject to visible input images

Page 27: 875 Dynamic Scene Reconstruction

ConvergenceConsistency Property

The resulting shape is photo-consistentall inconsistent points are removed

Convergence PropertyCarving converges to a non-empty shape

a point on the true scene is never removed

V’

V

p

Page 28: 875 Dynamic Scene Reconstruction

Space Carving Algorithm

Step 1: Initialize V to volume containing true sceneStep 2: For every voxel on surface of V

test photo-consistency of voxelif voxel is inconsistent, carve it

Step 3: Repeat Step 2 until all voxels consistent

Convergence: Always converges to a photo-consistent model (when all assumptions are met)Good results on difficult real-world scenes

Page 29: 875 Dynamic Scene Reconstruction

What is Computable?

The Photo Hull is the UNION of all photo-consistent scenes in V

o It is a photo-consistent scene reconstructiono Tightest possible bound on the true sceneo Computable via provable Space Carving Algorithm

True Scene

V

Photo Hull

V

Page 30: 875 Dynamic Scene Reconstruction

Space Carving AlgorithmThe Basic Algorithm is Unwieldy

o Complex update procedure

Alternative: Multi-Pass Plane Sweepo Efficient, can use texture-mapping hardwareo Converges quickly in practiceo Easy to implement

Page 31: 875 Dynamic Scene Reconstruction

Multi-Pass Plane Sweepo Sweep plane in each of 6 principle directionso Consider cameras on only one side of planeo Repeat until convergence

True Scene Reconstruction

Page 32: 875 Dynamic Scene Reconstruction

Multi-Pass Plane Sweepo Sweep plane in each of 6 principle directionso Consider cameras on only one side of planeo Repeat until convergence

Page 33: 875 Dynamic Scene Reconstruction

Multi-Pass Plane Sweepo Sweep plane in each of 6 principle directionso Consider cameras on only one side of planeo Repeat until convergence

Page 34: 875 Dynamic Scene Reconstruction

Multi-Pass Plane Sweepo Sweep plane in each of 6 principle directionso Consider cameras on only one side of planeo Repeat until convergence

Page 35: 875 Dynamic Scene Reconstruction

Multi-Pass Plane Sweepo Sweep plane in each of 6 principle directionso Consider cameras on only one side of planeo Repeat until convergence

Page 36: 875 Dynamic Scene Reconstruction

Multi-Pass Plane Sweepo Sweep plane in each of 6 principle directionso Consider cameras on only one side of planeo Repeat until convergence

Page 37: 875 Dynamic Scene Reconstruction

Multi-Pass Plane Sweepo Sweep plane in each of 6 principle directionso Consider cameras on only one side of planeo Repeat until convergence

Page 38: 875 Dynamic Scene Reconstruction

Multi-Pass Plane Sweepo Sweep plane in each of 6 principle directionso Consider cameras on only one side of planeo Repeat until convergence

Page 39: 875 Dynamic Scene Reconstruction

Multi-Pass Plane Sweepo Sweep plane in each of 6 principle directionso Consider cameras on only one side of planeo Repeat until convergence

Page 40: 875 Dynamic Scene Reconstruction

Multi-Pass Plane Sweepo Sweep plane in each of 6 principle directionso Consider cameras on only one side of planeo Repeat until convergence

Page 41: 875 Dynamic Scene Reconstruction

Multi-Pass Plane Sweepo Sweep plane in each of 6 principle directionso Consider cameras on only one side of planeo Repeat until convergence

Page 42: 875 Dynamic Scene Reconstruction

Multi-Pass Plane Sweepo Sweep plane in each of 6 principle directionso Consider cameras on only one side of planeo Repeat until convergence

Page 43: 875 Dynamic Scene Reconstruction

Multi-Pass Plane Sweepo Sweep plane in each of 6 principle directionso Consider cameras on only one side of planeo Repeat until convergence

Page 44: 875 Dynamic Scene Reconstruction

Multi-Pass Plane Sweepo Sweep plane in each of 6 principle directionso Consider cameras on only one side of planeo Repeat until convergence

Page 45: 875 Dynamic Scene Reconstruction

Multi-Pass Plane Sweepo Sweep plane in each of 6 principle directionso Consider cameras on only one side of planeo Repeat until convergence

Page 46: 875 Dynamic Scene Reconstruction

Multi-Pass Plane Sweepo Sweep plane in each of 6 principle directionso Consider cameras on only one side of planeo Repeat until convergence

Page 47: 875 Dynamic Scene Reconstruction

Multi-Pass Plane Sweepo Sweep plane in each of 6 principle directionso Consider cameras on only one side of planeo Repeat until convergence

Page 48: 875 Dynamic Scene Reconstruction

Multi-Pass Plane Sweepo Sweep plane in each of 6 principle directionso Consider cameras on only one side of planeo Repeat until convergence

Page 49: 875 Dynamic Scene Reconstruction

Multi-Pass Plane Sweepo Sweep plane in each of 6 principle directionso Consider cameras on only one side of planeo Repeat until convergence

Page 50: 875 Dynamic Scene Reconstruction

Multi-Pass Plane Sweepo Sweep plane in each of 6 principle directionso Consider cameras on only one side of planeo Repeat until convergence

Page 51: 875 Dynamic Scene Reconstruction

Multi-Pass Plane Sweepo Sweep plane in each of 6 principle directionso Consider cameras on only one side of planeo Repeat until convergence

Page 52: 875 Dynamic Scene Reconstruction

Multi-Pass Plane Sweepo Sweep plane in each of 6 principle directionso Consider cameras on only one side of planeo Repeat until convergence

Page 53: 875 Dynamic Scene Reconstruction

Space Carving Results: African Violet

Input Image (1 of 45) Reconstruction

ReconstructionReconstruction

Page 54: 875 Dynamic Scene Reconstruction

Space Carving Results: Hand

Input Image(1 of 100)

Views of Reconstruction

Page 55: 875 Dynamic Scene Reconstruction

Other FeaturesCoarse-to-fine Reconstruction

• Represent scene as octree• Reconstruct low-res model first, then refine

Hardware-Acceleration• Use texture-mapping to compute voxel projections• Process voxels an entire plane at a time

Limitations• Need to acquire calibrated images• Restriction to simple radiance models• Bias toward maximal (fat) reconstructions• Transparency not supported