530 likes | 760 Vues
Computational Photography Light Field Rendering. Jinxiang Chai. Image-based Modeling: Challenging Scenes. Why will they produce poor results? lack of discernible features occlusions difficult to capture high-level structure illumination changes specular surfaces. Some Solutions.
E N D
Computational PhotographyLight Field Rendering Jinxiang Chai
Image-based Modeling: Challenging Scenes • Why will they produce poor results? • lack of discernible features • occlusions • difficult to capture high-level structure • illumination changes • specular surfaces
Some Solutions • Use priors to constrain the modeling space • Aid modeling process with minimal user interaction • Combine image-based modeling with other modeling approaches
Videos • Morphable face (click here) • Image-based tree modeling (click here) • Video trace (click here) • 3D modeling by ortho-images (Click here)
Spectrum of IBMR Model Panoroma Image-based rendering Image based modeling Images + Depth Geometry+ Images Camera + geometry Imagesuser input range scans Images Light field Geometry+ Materials Kinematics Dynamics Etc.
Outline • Light field rendering [Levoy and Hanranhan SIG96] • 3D light field (concentric mosaics) [Shum and He Sig99]
Plenoptic Function Can reconstruct every possible view, at every moment, from every position, at every wavelength Contains every photograph, every movie, everything that anyone has ever seen! it completely captures our visual reality! An image is a 2D sample of plenoptic function! P(x,y,z,θ,φ,λ,t)
Ray • Let’s not worry about time and color: • 5D • 3D position • 2D direction P(x,y,z,q,f)
How can we use this? Static Lighting No Change in Radiance Static object Camera
How can we use this? Static Lighting No Change in Radiance Static object Camera
Ray Reuse • Infinite line • Assume light is constant (vacuum) • 4D • 2D direction • 2D position • non-dispersive medium Slide by Rick Szeliski and Michael Cohen
Synthesizing novel views Assume we capture every ray in 3D space!
Light field / Lumigraph • Outside convex space • 4D Empty Stuff
Light Field • How to represent rays? • How to capture rays? • How to use captured rays for rendering
Light Field • How to represent rays? • How to capture rays? • How to use captured rays for rendering
Light field - Organization • 2D position • 2D direction s q
Light field - Organization 2D position 2D position 2 plane parameterization u s
Light field - Organization s,t u,v s,t u,v 2D position 2D position 2 plane parameterization t v u s
Light field - Organization Hold u,v constant Let s,t vary What do we get? u,v s,t
Lumigraph - Organization Hold s,t constant Let u,v vary An image u,v s,t
Light field/lumigraph - Capture • Idea 1 • Move camera carefully over u,v plane • Gantry • see Light field paper u,v s,t
Stanford multi-camera array • 640 × 480 pixels ×30 fps × 128 cameras • synchronized timing • continuous streaming • flexible arrangement
Light field/lumigraph - rendering • For each output pixel • determine s,t,u,v • either • use closest discrete RGB • interpolate near values s u
s u Light field/lumigraph - rendering • Nearest • closest s • closest u • draw it • Blend 16 nearest • quadrilinear interpolation
s u Ray interpolation Nearest neighbor Quadrilinear interpolation Linear interpolation in S-T
Camera Plane Light Field/Lumigraph Rendering Light Field Capture Rendering Image Plane
Light fields • Advantages: • No geometry needed • Simpler computation vs. traditional CG • Cost independent of scene complexity • Cost independent of material properties and other optical effects • Disadvantages: • Static geometry • Fixed lighting • High storage cost
3D plenoptic function • Image is 2D • Light field/lumigraph is 4D • What happens to 3D? • - 3D light field subset • - Concentric mosaic [Shum and He]
3D light field • One row of s,t plane • i.e., hold t constant s,t u,v
3D light field • One row of s,t plane • i.e., hold t constant • thus s,u,v • a “row of images” s u,v
Concentric mosaics [Shum and He] Polar coordinate system: - hold r constant - thus (θ,u,v)
Concentric mosaics Why concentric mosaic? - easy to capture - relatively small in storage size
Concentric mosaics From above How to captured images?
Concentric mosaics From above How to render a new image?
Concentric mosaics From above How to render a new image? - for each ray, retrieval the closest captured rays
Concentric mosaics From above How to render a new image? - for each ray, retrieval the closest captured rays
Concentric mosaics From above How to render a new image? - for each ray, retrieval the closest captured rays
Concentric mosaics From above object How to retrieval the closest rays?
Concentric mosaics From above object (s,t) interpolation plane How to retrieve the closest rays?
Concentric mosaics From above object (s,t) interpolation plane How to retrieve the closest rays?
Concentric mosaics From above object (s,t) interpolation plane How to retrieve the closest rays?
Concentric mosaics From above object (s,t) interpolation plane How to retrieve the closest rays?
Concentric mosaics From above object (s,t) interpolation plane How to synthesize the color of rays?
Concentric mosaics From above object (s,t) interpolation plane How to synthesize the color of rays? - bilinear interpolation
Concentric mosaics From above
Concentric mosaics From above
Concentric mosaics • What are limitations?