computation of polarized subsurface brdf for rendering

45
Computation of Polarized Subsurface BRDF for Rendering Charly Collin – Sumanta Pattanaik – Patrick LiKamWa Kadi Bouatouch

Upload: claude

Post on 23-Feb-2016

98 views

Category:

Documents


0 download

DESCRIPTION

Computation of Polarized Subsurface BRDF for Rendering. Charly Collin – Sumanta Pattanaik – Patrick LiKamWa Kadi Bouatouch. Painted materials. Painted materials. Painted materials. Painted materials. Our goal. Compute the subsurface BRDF from physical properties:. Base layer - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Computation of Polarized Subsurface BRDF for Rendering

Computation of Polarized Subsurface BRDF for Rendering

Charly Collin – Sumanta Pattanaik – Patrick LiKamWa Kadi Bouatouch

Page 2: Computation of Polarized Subsurface BRDF for Rendering

Painted materials

Page 3: Computation of Polarized Subsurface BRDF for Rendering

Painted materials

Page 4: Computation of Polarized Subsurface BRDF for Rendering

Painted materials

Page 5: Computation of Polarized Subsurface BRDF for Rendering

Painted materials

Page 6: Computation of Polarized Subsurface BRDF for Rendering

Our goal

• Base layer• Binder thickness• Particle properties:

– Refractive indices– Particle radius– Particle distribution

Compute the subsurface BRDF from physical properties:

Page 7: Computation of Polarized Subsurface BRDF for Rendering

Our goals

Compute the diffuse BRDF from physical properties:

• Accurate light transport simulation: – Accurate BRDF computation– Accurate global illumination

Use polarization in our computations:

• Base layer• Binder thickness• Particle properties:

– Refractive indices– Particle radius– Particle distribution

Page 8: Computation of Polarized Subsurface BRDF for Rendering

Polarization• Light is composed of waves

• Unpolarized light is composed of waves with random oscillation

• Light is polarized when composed of waves sharing similar oscillation

• Polarization of the light can be: – Linear– Circular– Both

• Polarization properties change the way light interacts with matter

Page 9: Computation of Polarized Subsurface BRDF for Rendering

PolarizationThe Stokes vector is a useful representation for polarized light

Page 10: Computation of Polarized Subsurface BRDF for Rendering

Polarization

• Each light-matter interaction changes the radiance, but also the polarization state of the light

• Modifications to a Stokes vector are done through a 4x4 matrix, the Mueller matrix:

=

• Polarized BRDF, or polarized phase function are represented as Mueller matrices

Page 11: Computation of Polarized Subsurface BRDF for Rendering

BRDF Computation

𝐹 𝑟 (𝜔𝑖𝑛 ,𝜔𝑜𝑢𝑡 )=𝐼 (𝜔𝑜𝑢𝑡)𝐸(𝜔𝑖𝑛)

𝐸 (𝜔 𝑖𝑛)

𝐼 (𝜔𝑜𝑢𝑡)

𝐼 (𝜔𝑜𝑢𝑡 )=𝐹𝑟 (𝜔𝑖𝑛 ,𝜔𝑜𝑢𝑡 )𝐸(𝜔𝑖𝑛)

Page 12: Computation of Polarized Subsurface BRDF for Rendering

BRDF Computation

𝐹 𝑟 (𝜔𝑖𝑛 ,𝜔𝑜𝑢𝑡 )=𝐼 (𝜔𝑜𝑢𝑡)𝐸(𝜔𝑖𝑛)

𝐸 (𝜔 𝑖𝑛)

𝐼 (𝜔𝑜𝑢𝑡)

|𝐼0𝐼1𝐼2𝐼3|=𝐹𝑟|𝐸0

𝐸1

𝐸2

𝐸3|

Page 13: Computation of Polarized Subsurface BRDF for Rendering

BRDF Computation

|𝐼00 𝐼0

1

𝐼10 𝐼11𝐼 02 𝐼 0

3

𝐼12 𝐼13

𝐼20 𝐼 2

1

𝐼30 𝐼3

1

𝐼 22 𝐼 2

3

𝐼 32 𝐼 3

3|=𝐹 𝑟|𝐸00 𝐸0

1

𝐸10 𝐸1

1

𝐸02 𝐸0

3

𝐸12 𝐸1

3

𝐸20 𝐸2

1

𝐸30 𝐸3

1

𝐸22 𝐸2

3

𝐸32 𝐸3

3|

Page 14: Computation of Polarized Subsurface BRDF for Rendering

BRDF Computation

𝐹 𝑟=|𝐸00 𝐸0

1

𝐸10 𝐸1

1

𝐸02 𝐸0

3

𝐸12 𝐸1

3

𝐸20 𝐸2

1

𝐸30 𝐸3

1

𝐸22 𝐸2

3

𝐸32 𝐸3

3|−1

|𝐼 00 𝐼 0

1

𝐼 10 𝐼 11𝐼 02 𝐼0

3

𝐼12 𝐼13

𝐼 20 𝐼 2

1

𝐼 30 𝐼 3

1

𝐼22 𝐼2

3

𝐼 32 𝐼3

3|

Page 15: Computation of Polarized Subsurface BRDF for Rendering

BRDF Computation

𝐸 (𝜔 𝑖𝑛)

𝐼 (𝜔𝑜𝑢𝑡)

? ? ?

To compute the BRDF we need to compute the radiance field for:

• Each incident and outgoing direction

• 4 linearly independent incident Stokes vectors

The radiance field is computed by solving light transport

Page 16: Computation of Polarized Subsurface BRDF for Rendering

BRDF Computation

𝐸 (𝜔 𝑖𝑛)

𝐼 (𝜔𝑜𝑢𝑡)

? ? ?

Light transport is modeled through the Vector Radiative Transfer Equation:

(𝜔 ∙𝛻 ) 𝐼 (𝑥 ,𝜔 )= (𝑘 (𝑥 ,𝜔 )+𝜎 (𝑥 ) ) 𝐼 (𝑥 ,𝜔 )+𝜎 (𝑥)4𝜋 ∫

Ω

𝑝 (𝜔 ,𝜔′ ) 𝐼 (𝑥 ,𝜔 ′)𝑑𝜔′

Page 17: Computation of Polarized Subsurface BRDF for Rendering

BRDF Computation

𝐼 (𝜔𝑜𝑢𝑡) 𝐼 (𝜔𝑜𝑢𝑡)

Our computation makes several assumptions on the material:• Plane parallel medium

Page 18: Computation of Polarized Subsurface BRDF for Rendering

BRDF Computation

Our computation makes several assumptions on the material:• Plane parallel medium• Randomly oriented particles

𝐹 𝑟 (𝜇𝑖𝑛 ,𝜑𝑖𝑛 ,𝜇𝑜𝑢𝑡 ,𝜑𝑜𝑢𝑡 )=𝐹 𝑟 (𝜇𝑖𝑛 ,𝜇𝑜𝑢𝑡 ,𝜑𝑖𝑛−𝜑𝑜𝑢𝑡 )

𝜔=(𝜇 ,𝜑 )

Page 19: Computation of Polarized Subsurface BRDF for Rendering

BRDF Computation

Our computation makes several assumptions on the material:• Plane parallel medium• Randomly oriented particles• Homogeneous layers

𝐼 (𝜔𝑜𝑢𝑡) 𝐼 (𝜔𝑜𝑢𝑡)

Page 20: Computation of Polarized Subsurface BRDF for Rendering

Vector Radiative Transfer Equation

It has 3 components:• the radiance• corresponding to the light scattering inside the material

RTE expresses the change of radiance along optical depth .

𝐽 (𝜏 ,𝜔 )= 𝛼4 𝜋∫

− 1

1

𝑝 (𝜏 ,𝜔 ,𝜔 ′ ) 𝐼 (𝜏 ,𝜔 ′ )𝑑𝜔 ′

𝜏𝐽 (𝜏 ,𝜔 )

𝐼 (𝜏 ,𝜔 ′ )

𝜇 𝜕𝜕𝜏 𝐼 (𝜏 ,𝜔 )=− 𝐼 (𝜏 ,𝜔 )+ 𝐽 (𝜏 ,𝜔 )+𝑄 (𝜏 ,𝜔 ,𝜔 𝑖𝑛)

Page 21: Computation of Polarized Subsurface BRDF for Rendering

Vector Radiative Transfer Equation

It has 3 components:• the radiance• corresponding to the light scattering inside the material• accounting for attenuated incident radiance

RTE expresses the change of radiance along optical depth .

𝜏

𝐼 𝑖𝑛

𝜇 𝜕𝜕𝜏 𝐼 (𝜏 ,𝜔 )=− 𝐼 (𝜏 ,𝜔 )+ 𝐽 (𝜏 ,𝜔 )+𝑄 (𝜏 ,𝜔 ,𝜔 𝑖𝑛)

Page 22: Computation of Polarized Subsurface BRDF for Rendering

VRTE Solution

• VRTE is solved using Discrete Ordinate Method (DOM)

• Solution is composed of an homogeneous and 4N particular solution

• The homogeneous solution consists of a 4Nx4N Eigen problem

• Each particular solution consists of two set of 4N linear equations to solve

+

Page 23: Computation of Polarized Subsurface BRDF for Rendering

Results

Page 24: Computation of Polarized Subsurface BRDF for Rendering

Results: Different thicknesses – No base reflection

𝜏=1000 𝜏=10 𝜏=5

𝜏=2 𝜏=1 𝜏=0.5

Page 25: Computation of Polarized Subsurface BRDF for Rendering

𝜏=1000 𝜏=10 𝜏=5

𝜏=2 𝜏=1 𝜏=0.5

Results: Different thicknesses – No base reflection

Page 26: Computation of Polarized Subsurface BRDF for Rendering

𝜏=1000 𝜏=10 𝜏=5

𝜏=2 𝜏=1 𝜏=0.5

Results: Different thicknesses – No base reflection

Page 27: Computation of Polarized Subsurface BRDF for Rendering

Results: Polarization

Subsurface BRDF exhibits polarization effects

Page 28: Computation of Polarized Subsurface BRDF for Rendering

Results: Different materials

Titanium dioxide Iron oxide Gold Aluminium arsenide

Page 29: Computation of Polarized Subsurface BRDF for Rendering

Results: Different materials – BRDF lobe

Titanium dioxide Iron oxide Gold Alluminium arsenide

Page 30: Computation of Polarized Subsurface BRDF for Rendering

Results: Different materials – Degree of polarization

Titanium dioxide Iron oxide Gold Alluminium arsenide

Page 31: Computation of Polarized Subsurface BRDF for Rendering

Results: Different materials – Lambertian base

Page 32: Computation of Polarized Subsurface BRDF for Rendering

Results : Different materials – Diffuse base (BRDF)

Titanium dioxide Iron oxide Gold Aluminium arsenide

Page 33: Computation of Polarized Subsurface BRDF for Rendering

Results: Different materials – Diffuse base (DOP)

Titanium dioxide Iron oxide Gold Aluminium arsenide

Page 34: Computation of Polarized Subsurface BRDF for Rendering

Results: Different materials – Metallic base

Page 35: Computation of Polarized Subsurface BRDF for Rendering

Results: Different materials – Metallic base (BRDF)

Titanium dioxide Iron oxide Gold Aluminium arsenide

Page 36: Computation of Polarized Subsurface BRDF for Rendering

Results: Different materials – Metallic base (DOP)

Titanium dioxide Iron oxide Gold Aluminium arsenide

Page 37: Computation of Polarized Subsurface BRDF for Rendering

Results: Accuracy – Benchmark validationZenith angle

Benchmark VectorComputations

ScalarComputations

1.0 4.26589 (-2) 4.49015 (-2) 4.48836 (-2)

0.9 7.94053 (-2) 7.94052 (-2) 7.94753 (-2)

0.8 1.16434 (-1) 1.16433 (-1) 1.16630 (-1)

0.7 1.64182 (-1) 1.64182 (-1) 1.64538 (-1)

0.6 2.27083 (-1) 2.27083 (-1) 2.27612 (-1)

0.5 3.10078 (-1) 3.10078 (-1) 3.10761 (-1)

0.4 4.18565 (-1) 4.18565 (-1) 4.19350 (-1)

0.3 5.57063 (-1) 5.57063 (-1) 5.57858 (-1)

0.2 7.25362 (-1) 7.25361 (-1) 7.26032 (-1)

0.1 9.14221 (-1) 9.14221 (-1) 9.14614 (-1)

0.0 1.11180 1.10894 1.10893

Benchmark data from Wauben and Hovenier (1992)

Page 38: Computation of Polarized Subsurface BRDF for Rendering

Results: Accuracy

Taking polarization into accounts yields better precision

Page 39: Computation of Polarized Subsurface BRDF for Rendering

Demo• BRDF Solver• Polarized renderer

Page 40: Computation of Polarized Subsurface BRDF for Rendering

Thank you

Page 41: Computation of Polarized Subsurface BRDF for Rendering

VRTE Solution

𝜇 𝜕𝜕𝜏 𝐼 (𝜏 ,𝜔 )=− 𝐼 (𝜏 ,𝜔 )+ 𝐽 (𝜏 ,𝜔 )+𝑄 (𝜏 ,𝜔 ,𝜔 𝑖𝑛)

Use of the Discrete Ordinate Method (DOM):

𝐽 (𝜏 ,𝜔 )= 𝛼4 𝜋∫

− 1

1

𝑝 (𝜏 ,𝜔 ,𝜔 ′ ) 𝐼 (𝜏 ,𝜔 ′ )𝑑𝜔 ′

𝜇𝑖𝜕𝜕𝜏 𝐼 (𝜏 ,𝜔𝑖 )=− 𝐼 (𝜏 ,𝜔𝑖 )+ 𝐽 (𝜏 ,𝜔 𝑖 )+𝑄 (𝜏 ,𝜔𝑖 ,𝜔𝑖𝑛)

𝐽 (𝜏 ,𝜔 𝑖 )=𝛼4𝜋 ∑

𝑗=0

𝑁

𝑤 𝑗𝑝 (𝜏 ,𝜔𝑖 ,𝜔 𝑗 ) 𝐼 (𝜏 ,𝜔 𝑗 )

Page 42: Computation of Polarized Subsurface BRDF for Rendering

VRTE Solution

The VRTE can be written as:

𝜇𝑖𝜕𝜕𝜏 𝐼 (𝜏 ,𝜔𝑖 )=− 𝐼 (𝜏 ,𝜔𝑖 )+

𝜔2 ∑

𝑗=0

𝑁

𝑝 (𝜏 ,𝜔𝑖 ,𝜔 𝑗 ) 𝐼 (𝜏 ,𝜔 𝑗 )+𝑄 (𝜏 ,𝜔𝑖 ,𝜔 𝑖𝑛)

That we reorganize:

𝜇𝑖𝜕𝜕𝜏 𝐼 (𝜏 ,𝜔𝑖 )+ 𝐼 (𝜏 ,𝜔 𝑖 )−

𝜔2 ∑

𝑗=0

𝑁

𝑝 (𝜏 ,𝜔𝑖 ,𝜔 𝑗 ) 𝐼 (𝜏 ,𝜔 𝑗 )=𝑄 (𝜏 ,𝜔 𝑖 ,𝜔𝑖𝑛 )

Components expressed using

Components independant of

Page 43: Computation of Polarized Subsurface BRDF for Rendering

VRTE Solution

We introduce an differential operator :

ℒ [ 𝐼 (𝜏 ,𝜔𝑖 ) ]=𝑄(𝜏 ,𝜔 𝑖 ,𝜔𝑖𝑛)

Needs to be solved for each and

𝜇 𝜕𝜕𝜏 𝐼 (𝜏 ,𝜔 𝑖 )+ 𝐼 (𝜏 ,𝜔𝑖 )−

𝜔2 ∑

𝑗=0

𝑁

𝑝 (𝜏 ,𝜔 𝑖 ,𝜔 𝑗 ) 𝐼 (𝜏 ,𝜔 𝑗 )=𝑄 (𝜏 ,𝜔𝑖 ,𝜔 𝑖𝑛)

Page 44: Computation of Polarized Subsurface BRDF for Rendering

VRTE Solution

Standard solution is the combination of the homogeneous solution...ℒ [ 𝐼 h❑ (𝜏 ,𝜔𝑖 ) ]=0

... and one particular solution.

ℒ [ 𝐼𝑝❑ (𝜏 ,𝜔𝑖 ) ]=𝑄 (𝜏 ,𝜔 ,𝜔𝑖𝑛)

+

Page 45: Computation of Polarized Subsurface BRDF for Rendering

VRTE Solution

• The homogeneous solution consists of an 4N x 4N Eigen problem

• The particular solution consists of a set of 4N linear equations to solve

• It needs to be solved for each