Computer graphics & visualization Pre-Computed Radiance Transfer PRT.

Slides:



Advertisements
Similar presentations
The Radiance Equation.
Advertisements

Spherical Harmonic Lighting Jaroslav Křivánek. Overview Function approximation Function approximation Spherical harmonics Spherical harmonics Some other.
Technische Universität München Fakultät für Informatik Computer Graphics SS 2014 Lighting Rüdiger Westermann Lehrstuhl für Computer Graphik und Visualisierung.
Computer Vision Radiometry. Bahadir K. Gunturk2 Radiometry Radiometry is the part of image formation concerned with the relation among the amounts of.
Computer graphics & visualization Global Illumination Effects.
Computer Vision Spring ,-685 Instructor: S. Narasimhan Wean 5403 T-R 3:00pm – 4:20pm Lecture #12.
Environment Mapping CSE 781 – Roger Crawfis
Computer Graphics (Fall 2008) COMS 4160, Lecture 18: Illumination and Shading 1
The Radiance Equation Mel Slater. Outline Introduction Light Simplifying Assumptions Radiance Reflectance The Radiance Equation Traditional Rendering.
Foundations of Computer Graphics (Spring 2012) CS 184, Lecture 21: Radiometry Many slides courtesy Pat Hanrahan.
CPSC 641 Computer Graphics: Radiometry and Illumination Jinxiang Chai Many slides from Pat Haranhan.
RADIOSITY Submitted by CASULA, BABUPRIYANK. N. Computer Graphics Computer Graphics Application Image Synthesis Animation Hardware & Architecture.
Radiometry. Outline What is Radiometry? Quantities Radiant energy, flux density Irradiance, Radiance Spherical coordinates, foreshortening Modeling surface.
Illumination Models Radiosity Chapter 14 Section 14.7 Some of the material in these slides may have been adapted from University of Virginia, MIT, Colby.
Photo-realistic Rendering and Global Illumination in Computer Graphics Spring 2012 Material Representation K. H. Ko School of Mechatronics Gwangju Institute.
Advanced Computer Graphics (Spring 2013) CS 283, Lecture 8: Illumination and Reflection Many slides courtesy.
Week 9 - Wednesday.  What did we talk about last time?  Fresnel reflection  Snell's Law  Microgeometry effects  Implementing BRDFs  Image based.
An Efficient Representation for Irradiance Environment Maps Ravi Ramamoorthi Pat Hanrahan Stanford University.
Representations of Visual Appearance COMS 6160 [Fall 2006], Lecture 2 Ravi Ramamoorthi
IMGD 1001: Illumination by Mark Claypool
Computer Graphics (Spring 2008) COMS 4160, Lecture 20: Illumination and Shading 2
Computer Graphics (Spring 2008) COMS 4160, Lecture 15: Illumination and Shading
Computer Graphics (Fall 2008) COMS 4160, Lecture 19: Illumination and Shading 2
Rendering General BSDFs and BSSDFs Randy Rauwendaal.
Computer Graphics (Fall 2004) COMS 4160, Lecture 16: Illumination and Shading 2 Lecture includes number of slides from.
The Radiosity Method Donald Fong February 10, 2004.
Illumination and Direct Reflection Kurt Akeley CS248 Lecture 12 1 November 2007
Computer Vision Spring ,-685 Instructor: S. Narasimhan PH A18B T-R 10:30am – 11:50am Lecture #13.
Interactive Hair Rendering Under Environment Lighting Valentin JANIAUT Zhong Ren, Kun Zhou, Tengfei Li, Wei Hua, Baining Guo.
-Global Illumination Techniques
CS 376 Introduction to Computer Graphics 04 / 16 / 2007 Instructor: Michael Eckmann.
09/11/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Graphics Pipeline Texturing Overview Cubic Environment Mapping.
02/16/05© 2005 University of Wisconsin Last Time Re-using paths –Irradiance Caching –Photon Mapping.
CS 638, Fall 2001 Today Project Stage 0.5 Environment mapping Light Mapping.
Real-Time Rendering Digital Image Synthesis Yung-Yu Chuang 01/03/2006 with slides by Ravi Ramamoorthi and Robin Green.
Rendering Overview CSE 3541 Matt Boggus. Rendering Algorithmically generating a 2D image from 3D models Raster graphics.
Computer graphics & visualization Photon Mapping.
An Efficient Representation for Irradiance Environment Maps Ravi Ramamoorthi Pat Hanrahan Stanford University SIGGRAPH 2001 Stanford University SIGGRAPH.
View-Dependent Precomputed Light Transport Using Nonlinear Gaussian Function Approximations Paul Green 1 Jan Kautz 1 Wojciech Matusik 2 Frédo Durand 1.
University of Texas at Austin CS 378 – Game Technology Don Fussell CS 378: Computer Game Technology Basic Rendering Pipeline and Shading Spring 2012.
Global Illumination CMSC 435/634. Global Illumination Local Illumination – light – surface – eye – Throw everything else into ambient Global Illumination.
All-Frequency Shadows Using Non-linear Wavelet Lighting Approximation Ren Ng Stanford Ravi Ramamoorthi Columbia SIGGRAPH 2003 Pat Hanrahan Stanford.
111/17/ :21 Graphics II Global Rendering and Radiosity Session 9.
Photo-realistic Rendering and Global Illumination in Computer Graphics Spring 2012 Material Representation K. H. Ko School of Mechatronics Gwangju Institute.
CSCE 641 Computer Graphics: Reflection Models Jinxiang Chai.
Spherical Harmonics in Actual Games
Jaroslav Křivánek, MFF UK
CMSC 635 Global Illumination.  Local Illumination  light – surface – eye  Throw everything else into ambient  Global Illumination  light – surface.
Non-Linear Kernel-Based Precomputed Light Transport Paul Green MIT Jan Kautz MIT Wojciech Matusik MIT Frédo Durand MIT Henrik Wann Jensen UCSD.
Photo-realistic Rendering and Global Illumination in Computer Graphics Spring 2012 Material Representation K. H. Ko School of Mechatronics Gwangju Institute.
Radiometry of Image Formation Jitendra Malik. A camera creates an image … The image I(x,y) measures how much light is captured at pixel (x,y) We want.
01/27/03© 2002 University of Wisconsin Last Time Radiometry A lot of confusion about Irradiance and BRDFs –Clarrified (I hope) today Radiance.
Distributed Ray Tracing. Can you get this with ray tracing?
Illumination Study of how different materials reflect light Definition of radiance, the fundamental unit of light transfer in computer graphics How the.
Graphics Lecture 14: Slide 1 Interactive Computer Graphics Lecture 14: Radiosity - Computational Issues.
All-Frequency Shadows Using Non-linear Wavelet Lighting Approximation Ren Ng Stanford Ravi Ramamoorthi Columbia Pat Hanrahan Stanford.
Color and Radiometry Digital Image Synthesis Yung-Yu Chuang 10/25/2007 with slides by Pat Hanrahan and Matt Pharr.
Precomputation aided GI on the GPU László Szirmay-Kalos.
CS552: Computer Graphics Lecture 33: Illumination and Shading.
Radiometry of Image Formation Jitendra Malik. What is in an image? The image is an array of brightness values (three arrays for RGB images)
CS580: Radiometry Sung-Eui Yoon ( 윤성의 ) Course URL:
MAN-522 Computer Vision Spring
© University of Wisconsin, CS559 Spring 2004
Advanced Computer Graphics
Radiometry (Chapter 4).
© 2002 University of Wisconsin
Digital Image Synthesis Yung-Yu Chuang 10/19/2006
Lecture 28: Photometric Stereo
The Rendering Equation
Distributed Ray Tracing
Presentation transcript:

computer graphics & visualization Pre-Computed Radiance Transfer PRT

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Radiometric quantities Strahlungsenergie: radiant energy in Joule [J] Qin Joule [J] Strahlungsleistung oder -fluss: radiant flux in Watt [W=J/s] Einfallende Flussdichte: irradiance (incident) power per area in [W/m 2 ] ausgehende Flussdichte: radiosity (radiant exitance) power per area in [W/m 2 ]

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Strahldichte: Radiance Combination of flux and intensity Strahldichte = Radiance Central quantity in physics based images synthesis Units: [W/(m 2 sr)] Power per unit solid angle per projected unit area N dd dNdN dA dA  

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Precomputed radiance transfer Precompute irradiance on a grid Precompute irradiance on a grid – Based on irradiance volumes (Greger98) – Assume the scene doesn´t change – Precompute irradiance samples at grid points – Interpolate light at points in-between

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Precomputed radiance transfer A cube-map captures radiance distribution at a point for all directions – Entries have to be scaled by projected solid angle For diffuse surfaces, radiance is defined in terms of the irradiance E

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Precomputed radiance transfer Idea: compute irradiance at a point for all possible „orientations“ – Gives irradiance distribution function – Looks like a radiance distribution function but it is convolved (blurred) with a cosine kernel – It is continuous over directions – Can be stored at a point using a “Diffuse Cube Map”, which is indexed with surface normal

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Radiance vs. Irradiance

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Precomputed radiance transfer Volume subdivision for irradiance caching Volume subdivision for irradiance caching – Uniform, but – Uniform, but some areas have slowly changing irradiance while in others the irradiance is quickly changing – Idea: use adaptive subdivision

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Precomputed radiance transfer Sampling the irradiance grid Sampling the irradiance grid – Trilinear between grid vertices – At level transitions use vertices on either side

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Precomputed radiance transfer Idea: project irradiance into a particular function space and use only „a few“ coefficients to reconstruct the original function As irradiance is captured on a sphere, use basis functions on a sphere

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Diffuse PRT Goal: to shade a diffuse object using Precomputed Radiance Transfer (PRT) Diffuse: – Reflected light is view-independent – Simplifies equations

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Remember Radiosity? B = E + TB = E + T(E+TB) = E + TE + T 2 B =... = T 0 E + T 1 E + T 2 E + T 3 E +... = B (0) + B (1) + B (2) + B (3) +...

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Diffuse PRT To derive PRT for the diffuse case we are going to start with just the direct term from the Neumann expansion of the rendering equation and make several simplifying assumptions.

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Diffuse PRT The bottom equation is the “simplified” form. For diffuse objects light is reflected equally in all directions, so outgoing radiance is independent of view direction.

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Diffuse PRT This also means the BRDF is just a constant (and independent of direction) so it can be pulled out of the integral.

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Diffuse PRT „Visually”

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Diffuse PRT Visually, we integrate the product of three functions (light, visibility, and cosine).

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Diffuse PRT The main trick is to use for pre-computed radiance transfer (PRT) is to combine the visibility and the cosine into one function (cosine-weighted visibility or transfer function), which we integrate against the lighting.

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Problems How to encode the spherical functions? We still need to encode the two spherical functions (lighting, cosine- weighted visibility/transfer function) How to quickly integrate over the sphere? we need to perform the integration of the product of the two functions quickly-  PRT

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Diffuse PRT Now we are going to approximate the source radiance function with its projection into a set of basis functions on the sphere (denoted yi() in this equation.)

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Diffuse PRT Manipulating this expression exploiting the fact that integration is a linear operator (sum of integrals = integral of sums), we can generate the following equivalent expression. The important thing to note about the highlighted integral is that it is independent of the actual lighting environment being used, so it can be pre-computed.

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Diffuse PRT We call the precomputed integrals “transfer coefficients” Outgoing radiance: just a dot-product!

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Diffuse PRT A similar process can be used to model the other bounces, so that a final vector can be computed and used to map source radiance to outgoing radiance at every point on the object. Outgoing radiance is then just the dot product of the lights projection coefficients with the transfer vector.

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group We project the lighting into the basis (integral against basis functions). If the object is rotated wrt. to the lighting, we need to apply the inverse rotation to the lighting vector. At run-time, we need to lookup the transfer vector at every pixel. A pixel-shader then computes the dotproduct between the coefficient vectors. The result of this computation is the outgoing radiance at that point. Putting it all together

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Results

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Results

computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Results