operator formulation of light transport ii
play

Operator Formulation of Light Transport II CS295, Spring 2017 - PowerPoint PPT Presentation

Operator Formulation of Light Transport II CS295, Spring 2017 Shuang Zhao Computer Science Department University of California, Irvine CS295, Spring 2017 Shuang Zhao 1 Announcement The deadline for PA1 has been extended to this Thursday


  1. Operator Formulation of Light Transport II CS295, Spring 2017 Shuang Zhao Computer Science Department University of California, Irvine CS295, Spring 2017 Shuang Zhao 1

  2. Announcement • The deadline for PA1 has been extended to this Thursday (May 4) CS295, Spring 2017 Shuang Zhao 2

  3. Last Lecture • Monte Carlo Path Tracing III • MIS for direct illumination • Operator formulation of light transport • Ray space, throughput measure • Functions and operators • Operator formulation of the RE CS295, Spring 2017 Shuang Zhao 3

  4. Today’s Lecture • Operator formulation of light transport II • Sensors and measurements • Adjoint operators and adjoint particle tracing CS295, Spring 2017 Shuang Zhao 4

  5. Recap: Ray Space • Let be the set of surfaces in the scene, then is the ray space consisting of all light rays originating from all surface points • Let , then the throughput measure is given by CS295, Spring 2017 Shuang Zhao 5

  6. Recap: Useful Operators • For any function • The local scattering operator K : • The propagation operator G : CS295, Spring 2017 Shuang Zhao 6

  7. Recap: Operator Formulation of the RE • Given the two operators K and G , we can rewrite the rendering equation (RE) as • Solving the RE is effectively inverting ( I - T ) where I denotes the identity operator: CS295, Spring 2017 Shuang Zhao 7

  8. Operator Formulation of the RE L L e … = CS295, Spring 2017 Shuang Zhao 8

  9. Operator Formulation of the RE Direct illumination L L e T L e … = + CS295, Spring 2017 Shuang Zhao 9

  10. Operator Formulation of the RE 2-bounce indirect illumination T 2 L e L L e T L e … = + + CS295, Spring 2017 Shuang Zhao 10

  11. Sensors and Measurements • Up to this point, we have been considering estimating individual radiance values L ( x , ω ) or Li( x , ω ) • In practice, we often need to estimate the response of some sensor described by the measurement function CS295, Spring 2017 Shuang Zhao 11

  12. Sensors and Measurements • can be estimated using MC integration: where p 0 is a probability density over all rays • In practice, it is desirable to have or • After drawing r ~ p 0 , L i ( r ) can in turn be estimated using path tracing CS295, Spring 2017 Shuang Zhao 12

  13. Example: Irradiance Meter CS295, Spring 2017 Shuang Zhao 13

  14. Example: Irradiance Meter computeIrradiance (): x = uniformSampleSensor() ω = uniformRandomPSA( n x ) return | A | * π * receivedRadiance( x , ω ) CS295, Spring 2017 Shuang Zhao 14

  15. Example: Pinhole Camera Image plane Pixel i Center of A pixel projection CS295, Spring 2017 Shuang Zhao 15

  16. Example: Pinhole Camera Image plane Pixel i Center of A pixel projection computePixelIntensity ( i ): x = uniformSamplePixel( i ) ω = normalize( x - o ) return receivedRadiance( x , ω ) CS295, Spring 2017 Shuang Zhao 16

  17. Adjoint Operators • The adjoint of an operator H is denoted H *, and is defined by the property that • If H = H *, then H is called self-adjoint • The propagation operator G is self-adjoint CS295, Spring 2017 Shuang Zhao 17

  18. Adjoint Operators • The local scattering operator K satisfies that • K is self-adjoint if for all • This is the case for all BRDFs with reciprocity (which holds for all BRDFs we have seen up to this point) CS295, Spring 2017 Shuang Zhao 18

  19. Adjoint Operators • For any operators A , B and C : • A + B = B + A • A ( BC ) = ( AB ) C • ( A + B )* = A * + B *, ( A B )* = B * A *, ( A -1 )* = ( A *) -1 • Based on these properties and the fact that G is self-adjoint, we have CS295, Spring 2017 Shuang Zhao 19

  20. Adjoint Operators • G ( I - KG ) -1 is self-adjoint when K is self-adjoint • Therefore, • ( I - KG ) -1 L e gives the radiance L (as a function on the ray space) satisfying the RE: L = KG L + L e • ( I - K * G ) -1 W e gives another function satisfying W = K * G W + W e CS295, Spring 2017 Shuang Zhao 20

  21. The Importance Transport • W is called the importance function • Computing requires solving the W important transport problem given by W = K * G W + W e • The sensor acts as the light source in the light transport problem by emitting importance W e • Any algorithm that estimates L for the original light transport problem (e.g., path tracing) can be adapted to estimate W CS295, Spring 2017 Shuang Zhao 21

  22. Light vs. Importance Transport Importance transport Light transport • • Transport equation Transport equation W = K * G W + W e L = KG L + L e • • Central quantity Central quantity W (importance) L (radiance) • • Source term Source term W e (importance “emitted” by L e (radiance emitted by light sensors) sources) • • Measurements Measurements I = < G W, L e > = <W i , L e > I = <W e , G L> = <W e , L i > Same results! CS295, Spring 2017 Shuang Zhao 22

  23. Adjoint Particle Tracing • Goal: estimating • Initial step: • Draw x and ω from some probability density or • Then, Known after drawing x and ω CS295, Spring 2017 Shuang Zhao 23

  24. Example: Sampling Area Lights Area light emitting Similar to irradiance radiance L 0 into meters in the light transport problem all directions CS295, Spring 2017 Shuang Zhao 24

  25. Example: Sampling Area Lights Area light emitting Similar to irradiance radiance L 0 into meters in the light transport problem all directions computeMeasurement (): x = uniformSampleLight() ω = uniformRandomPSA( n x ) return | A | * L 0 * π * receivedImportance( x , ω ) CS295, Spring 2017 Shuang Zhao 25

  26. Adjoint Particle Tracing • Main step: estimating W ( x , ω ) • This can be done using an algorithm equivalent to path tracing since • We call this algorithm adjoint particle tracing to emphasize that it solves the adjoint (importance transfer) problem CS295, Spring 2017 Shuang Zhao 26

  27. Path vs. Adjoint Particle Tracing # Path tracing (version 0.1) radiance ( x , ω ): rad = emittedRadiance( x , ω ) ω i = uniformRandomPSA( n x ) y = RayTrace( x , ω i ) rad += π * radiance( y , - ω i ) * brdf( x , ω i , ω ) return rad # Adjoint particle tracing (version 0.1) importance ( x , ω ): imp = emittedImportance( x , ω ) ω o = uniformRandomPSA( n x ) y = RayTrace( x , ω o ) imp += π * importance( y , - ω o ) * brdf( x , ω , ω o ) return imp CS295, Spring 2017 Shuang Zhao 27

  28. Next-Event Estimation • Similar to path tracing, next-event estimation can drastically improve the convergence rate • Same idea: separating direct & indirect Path tracing: Adjoint particle tracing: CS295, Spring 2017 Shuang Zhao 28

  29. Direct and Indirect Importance CS295, Spring 2017 Shuang Zhao 29

  30. Evaluating Direct Importance • Sensor sampling • p sensor is usually picked as the uniform distribution over the surface A of the sensor. Namely, CS295, Spring 2017 Shuang Zhao 30

  31. Evaluating Direct Importance • BRDF sampling • Desirable to have or CS295, Spring 2017 Shuang Zhao 31

  32. Evaluating Direct Importance • Similar to evaluating direct illumination, the two sampling methods can be combined using multiple importance sampling (MIS) CS295, Spring 2017 Shuang Zhao 32

  33. Path vs. Adjoint Particle Tracing • Since , both algorithms lead to the same answer • Which one to use depends on the light source and measurement functions (namely, L e and W e ) CS295, Spring 2017 Shuang Zhao 33

  34. Challenging Light Sources • Collimated beam A • Problem: A • Neither light source nor BRDF sampling can give a point y on A with precisely aligned with ω e • Can never hit A precisely from direction - ω e CS295, Spring 2017 Shuang Zhao 34

  35. Challenging Light Sources • Collimated beam A • In this case, we should solve the adjoint problem A instead CS295, Spring 2017 Shuang Zhao 35

  36. Next Lecture • Path integral formulation CS295, Spring 2017 Shuang Zhao 36

Recommend


More recommend