A system for interactive display and rendering of BRDF models Adri - - PowerPoint PPT Presentation

a system for interactive display and rendering of brdf
SMART_READER_LITE
LIVE PREVIEW

A system for interactive display and rendering of BRDF models Adri - - PowerPoint PPT Presentation

A system for interactive display and rendering of BRDF models Adri Fors Herranz Advisors: Sumanta N. Pattanaik Carles Bosch Importance of materials Overview Analytic models General Measured Display representation data Simulated


slide-1
SLIDE 1

A system for interactive display and rendering of BRDF models

Adrià Forés Herranz Advisors: Sumanta N. Pattanaik Carles Bosch

slide-2
SLIDE 2

Importance of materials

slide-3
SLIDE 3

Overview

Simulated data

General representation Display Render Fitting

Analytic models Measured data

slide-4
SLIDE 4
  • Previous Work
  • Input Models
  • Display
  • Fitting
  • Rendering
  • Simulation
  • Conclusions and Future Work

Outline

slide-5
SLIDE 5

Simulated data

General representation Display Render Fitting

Analytic models Measured data

  • Previous Work
  • Input Models
  • Display
  • Fitting
  • Rendering
  • Simulation
  • Conclusions and Future Work

Outline

slide-6
SLIDE 6
  • Previous Work
  • Input Models
  • Display
  • Fitting
  • Rendering
  • Simulation
  • Conclusions and Future Work

Outline

slide-7
SLIDE 7

Previous Work

  • Currently there does not exist a system to

work on materials

  • bv - a BRDF browser
slide-8
SLIDE 8

Previous Work

  • Currently there does not exist a system to

work on materials

  • bv - a BRDF browser
slide-9
SLIDE 9

BRDF

  • Bidirectional reflectance function (BRDF)
  • 4 Dimensional function
  • Spherical coordinates
slide-10
SLIDE 10

BRDF: Properties

  • Helmholtz reciprocity
  • Energy conservation
  • Isotropy vs Anisotropy
slide-11
SLIDE 11

Input Models

Simulated data

General representation Display Render Fitting

Analytic models Measured data

slide-12
SLIDE 12

Analytical Models

  • Lambertian
  • Phong
  • Lafortune
  • Ward
  • Ashikhmin
  • Cook-Torrance
Simulated data General representation Display Render Fitting Analytic models Measured data
slide-13
SLIDE 13

Analytical Models

  • Lambertian
  • Phong
  • Lafortune
  • Ward
  • Ashikhmin
  • Cook-Torrance
Simulated data General representation Display Render Fitting Analytic models Measured data
slide-14
SLIDE 14
  • Lambertian
  • Phong
  • Lafortune
  • Ward
  • Ashikhmin
  • Cook-Torrance

Analytical Models

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-15
SLIDE 15
  • Lambertian
  • Phong
  • Lafortune
  • Ward
  • Ashikhmin
  • Cook-Torrance

Analytical Models

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-16
SLIDE 16
  • Lambertian
  • Phong
  • Lafortune
  • Ward
  • Ashikhmin
  • Cook-Torrance

Analytical Models

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-17
SLIDE 17

Real World Materials

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-18
SLIDE 18

Real World Materials

Simulated data General representation Display Render Fitting Analytic models Measured data

+ = +

slide-19
SLIDE 19

Measured Data

  • Gonioreflectometer

[DVGNK99] [MWL*99] Main idea

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-20
SLIDE 20

Measured data

  • MERL library [MPBM03]
  • 330 images for each

material

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-21
SLIDE 21

Measured data

  • MPI’s Car Paint library [GCG*05]
  • 256 images for

each material

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-22
SLIDE 22

Simulated

  • Some attempts has been made [CMS87,WAT92]
  • Mostly in optics literature
  • e.g. Scatmech C++ library
Simulated data General representation Display Render Fitting Analytic models Measured data
slide-23
SLIDE 23

Overview

Simulated data

General representation Display Render Fitting

Analytic models Measured data

slide-24
SLIDE 24

Display

  • Display the BRDF shape to understand how

a material reflects the incident light.

  • 4 Dimensional Function.
  • Given a fixed incoming direction (2D), the

result in all the outgoing directions is represented (2D).

  • Allow the user to change the incoming

direction

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-25
SLIDE 25

Display

  • Geodesic hemisphere
  • Vertex displacement to match the BRDF shape:
  • BRDF evaluated per vertex, only possible

with analytical models

  • Adaptive texture-based evaluation: A texture

indexed by ϴ and Φ stores the precomputed BRDF

  • Simply by using points
Simulated data General representation Display Render Fitting Analytic models Measured data
slide-26
SLIDE 26

Display - Analytic

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-27
SLIDE 27

Display - Simulated

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-28
SLIDE 28

Display - Measured

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-29
SLIDE 29

Overview

Simulated data

General representation Display Render Fitting

Analytic models Measured data

slide-30
SLIDE 30

Fitting

  • Approximate a set of data with an analytical

model

  • Non-linear optimizer
  • Levenberg-Marquardt
  • The user is able to set the initial guess

values for the optimization step to see how they approximate the data

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-31
SLIDE 31

High Computational Cost

  • System of equations defined by the input

data

  • e.g. a material from the MERL library

defines 16384 data points

  • The number of parameters to optimize

grow with the number of lobes used

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-32
SLIDE 32

Non-linear estimation

  • Combination of linear and non-linear steps

during the iterative optimization process

  • Linear optimization for the scaling factors
  • Non-linear optimization for the lobe

parameters

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-33
SLIDE 33

Display Fitting Results

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-34
SLIDE 34

Overview

Simulated data

General representation Display Render Fitting

Analytic models Measured data

slide-35
SLIDE 35

Rendering

  • Point light
  • Environment light
  • HDR Environment Map [CK07a, CK07b]
Simulated data General representation Display Render Fitting Analytic models Measured data
slide-36
SLIDE 36

Rendering

  • Point light
  • Environment light
  • HDR Environment Map [CK07a, CK07b]
Simulated data General representation Display Render Fitting Analytic models Measured data
slide-37
SLIDE 37
  • Point light
  • Environment light
  • HDR Environment Map [CK07a, CK07b]
Simulated data General representation Display Render Fitting Analytic models Measured data

Rendering

slide-38
SLIDE 38

Point light

  • Compute the BRDF on the fragment

shader

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-39
SLIDE 39

Lighting equation

  • General
  • Discretized
Simulated data General representation Display Render Fitting Analytic models Measured data
slide-40
SLIDE 40

Monte Carlo Integration

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-41
SLIDE 41

Importance Sampling

  • Choose a few random samples
  • Selected according to the PDF
Simulated data General representation Display Render Fitting Analytic models Measured data
slide-42
SLIDE 42

Mipmap Filtered Samples

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-43
SLIDE 43

Rendering a fitted material

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-44
SLIDE 44

Overview

Simulated data

General representation Display Render Fitting

Analytic models Measured data

slide-45
SLIDE 45

Origin of BRDFs

  • surface interaction
  • subsurface interaction
Simulated data General representation Display Render Fitting Analytic models Measured data
slide-46
SLIDE 46

Origin of BRDFs

  • surface interaction
  • subsurface interaction
Simulated data General representation Display Render Fitting Analytic models Measured data
slide-47
SLIDE 47

Origin of BRDFs

  • surface interaction
  • subsurface interaction
Simulated data General representation Display Render Fitting Analytic models Measured data
slide-48
SLIDE 48

Origin of BRDFs

  • surface interaction
  • subsurface interaction
Simulated data General representation Display Render Fitting Analytic models Measured data
slide-49
SLIDE 49

Origin of BRDFs

  • surface interaction
  • subsurface interaction
Simulated data General representation Display Render Fitting Analytic models Measured data
slide-50
SLIDE 50

Simulation

  • Given a material structure, obtain its BRDF

Material structure Reflected directions Light direction Ray Tracer BRDF shape

  • Performing this operation with different light

directions the full BRDF is obtained

  • Light is assumed to be parallel as the simulation is

done at microscopic level

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-51
SLIDE 51
  • Relief Map

Height Field Simulation Material Structure

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-52
SLIDE 52

Height Field Simulation Ray Tracer

  • Using Relief mapping with bounces the

surface reflected directions are retrieved

Fragment Shader Input Output

Intersection found? Directions Texture(in) Hit Texture(in) Relief Texture Relief mapping Store direction

No

Fetch normal Compute reflected vector Store direction and u,v

Yes

Directions Texture(out) Hit Texture(out)

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-53
SLIDE 53

Height Field Simulation Reflected directions

  • Capture 2-D

directions in a (ϴ, Φ) grid

  • Also used to display

the resulting BRDF ϴ Φ 1 1

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-54
SLIDE 54

Simulation example

Simulated data General representation Display Render Fitting Analytic models Measured data
slide-55
SLIDE 55
  • Previous Work
  • Input Models
  • Display
  • Fitting
  • Rendering
  • Simulation
  • Conclusions and Future Work

Outline

slide-56
SLIDE 56

Conclusions

  • The presented system allows to:
  • Interactively display of analytical models, measured

data and simulated data

  • Fit from any input BRDF to an analytical model
  • Real-time rendering of complex objects with general

analytical models as the material and different lighting conditions

  • Perform material simulations in the GPU
  • CEIG 2009 Paper
slide-57
SLIDE 57

Future Work

  • Render objects directly with the measured/simulated

BRDF

  • Tools to compare the rendering obtained with the fitted

model and the original one

  • Simulation of light subsurface structure interaction with

geometric ray model

  • Introduce the phase concept during simulation [GMN94]
  • Release as Open Source at the end of July
  • Plan to submit a paper to an international journal
slide-58
SLIDE 58

Demo

slide-59
SLIDE 59

Thanks! Questions?