All-Frequency Shadows Using Non-linear Wavelet Lighting Approximation - PowerPoint PPT Presentation

all frequency shadows using non linear wavelet lighting approximation n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
All-Frequency Shadows Using Non-linear Wavelet Lighting Approximation PowerPoint Presentation
Download Presentation
All-Frequency Shadows Using Non-linear Wavelet Lighting Approximation

play fullscreen
1 / 83
All-Frequency Shadows Using Non-linear Wavelet Lighting Approximation
140 Views
Download Presentation
everly
Download Presentation

All-Frequency Shadows Using Non-linear Wavelet Lighting Approximation

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. All-Frequency Shadows Using Non-linear Wavelet Lighting Approximation

  2. Light on Stone River (Goldsworthy)

  3. Lighting Design • From Frank Gehry Architecture, Ragheb ed. 2001

  4. Existing Fast Shadow Techniques • We know how to render very hard and very soft shadows Sen, Cammarano, Hanrahan, 2003 Sloan, Kautz, Snyder 2002 Shadows from smooth lighting (precomputed radiance transfer) Shadows from point-lights (shadow maps, volumes)

  5. Soft Lighting Teapot in Grace Cathedral

  6. All-Frequency Lighting Teapot in Grace Cathedral

  7. Formulation Geometry relighting: assume diffuse Image relighting: fix view point T could include global effects

  8. Relighting as Matrix-Vector Multiply

  9. Relighting as Matrix-Vector Multiply • Input Lighting(Cubemap Vector) • Output Image(Pixel Vector) • TransportMatrix

  10. Ray-Tracing Matrix Columns

  11. Ray-Tracing Matrix Columns • Only works for image relighting

  12. Light-Transport Matrix Rows

  13. Light-Transport Matrix Rows

  14. Light-Transport Matrix Rows

  15. Rasterizing Matrix Rows • Pre-computing rows • Rasterize visibility hemicubes with graphics hardware • Read back pixels and weight by reflection function

  16. Matrix Multiplication is Enormous • Dimension • 512 x 512 pixel images • 6 x 64 x 64 cubemap environments • Full matrix-vector multiplication is intractable • On the order of 1010 operations per frame

  17. Sparse Matrix-Vector Multiplication • Choose data representations with mostly zeroes • Vector: Use non-linear wavelet approximation on lighting • Matrix: Wavelet-encode transport rows

  18. Non-linear Wavelet Light Approximation • Wavelet Transform

  19. Non-linear Wavelet Light Approximation • Non-linearApproximation • Retain 0.1% – 1% terms

  20. Why Non-linear Approximation? • Linear • Use a fixed set of approximating functions • Precomputed radiance transfer uses 25 - 100 of the lowest frequency spherical harmonics • Non-linear • Use a dynamic set of approximating functions (depends on each frame’s lighting) • In our case: choose 10’s - 100’s from a basis of 24,576 wavelets • Idea: Compress lighting by considering input data

  21. Why Wavelets? • Wavelets provide dual space / frequency locality • Large wavelets capture low frequency, area lighting • Small wavelets capture high frequency, compact features • In contrast • Spherical harmonics • Perform poorly on compact lights • Pixel basis • Perform poorly on large area lights

  22. Choosing Non-linear Coefficients • Three methods of prioritizing • Magnitude of wavelet coefficient • Optimal for approximating lighting • Transport-weighted • Biases lights that generate bright images • Area-weighted • Biases large lights

  23. Sparse Matrix-Vector Multiplication • Choose data representations with mostly zeroes • Vector: Use non-linear wavelet approximation on lighting • Matrix: Wavelet-encode transport rows • Choose data representations with mostly zeroes • Vector: Use non-linear wavelet approximation on lighting • Matrix: Wavelet-encode transport rows

  24. Matrix Row Wavelet Encoding

  25. Matrix Row Wavelet Encoding Extract Row

  26. Matrix Row Wavelet Encoding Wavelet Transform

  27. Matrix Row Wavelet Encoding Wavelet Transform

  28. Matrix Row Wavelet Encoding Wavelet Transform

  29. Matrix Row Wavelet Encoding Wavelet Transform

  30. Matrix Row Wavelet Encoding 0 0 0 ’ ’ Store Back in Matrix

  31. Matrix Row Wavelet Encoding 0 0 0 ’ ’ Only 3% – 30% are non-zero

  32. Total Compression • Lighting vector compression • Highly lossy • Compress to 0.1% – 1% • Matrix compression • Essentially lossless encoding • Represent with 3% – 30% non-zero terms • Total compression in sparse matrix-vector multiply • 3 – 4 orders of magnitude less work than full multiplication

  33. Error Analysis • Compare to linear spherical harmonic approximation • [Sloan, Kautz, Snyder, 2002] • Measure approximation quality in two ways: • Error in lighting • Error in output image pixels • Main point (for detailed natural lighting) • Non-linear wavelets converge exponentially faster than linear harmonics

  34. Lighting Error

  35. Error in Lighting: St Peter’s Basilica • Sph. Harmonics • Non-linear Wavelets • Relative L2 Error (%) • Approximation Terms

  36. Output Image Comparison • 25 • 200 • 2,000 • 20,000 • Top: Linear Spherical Harmonic ApproximationBottom: Non-linear Wavelet Approximation

  37. Error in Output Image: Plant Scene • Sph. Harmonics • Non-linear Wavelets • Relative L2 Error (%) • Approximation Terms

  38. Results • SIGGRAPH 2003 video

  39. Summary • A viable representation for all-frequency lighting • Sparse non-linear wavelet approximation • 100 – 1000 times information reduction • Efficient relighting from detailed environment maps

  40. Triple Product Wavelet Integrals ForAll-Frequency Relighting

  41. Precomputed Relighting Techniques • Low-Frequency Lighting, Dynamic View [Sloan et al 2002, 2003] • All-Frequency Lighting, Fixed View[Ng et al 2003]

  42. Formulation Simplifications: Incorporate cosine term into BRDF Assume the lighting is distant, so L depends only on ω Uniform BRDF over the surface Expressed in the global frame; BRDF has to be rotated For a fixed point,

  43. Double product Let

  44. Double Product Integral Relighting Lighting Changing Surface Position Transport Changing Camera Viewpoint

  45. Problem Characterization • 6D Precomputation Space • Distant Lighting (2D) • Surface (2D) • View (2D) • With ~ 100 samples per dimension • Total of ~ 1012samples

  46. Factorization Approach 6D Transport = ~ 1012 samples * 4D Visibility 4D BRDF ~ 108 samples ~ 108 samples

  47. Triple Product Integral Relighting

  48. Triple Product Integrals

  49. Basis Requirements • Need few non-zero “tripling” coefficients • Need sparse basis coefficients

  50. 1. Number Non-Zero Tripling Coeffs