cs 563 advanced topics in computer graphics spectral brdf by cliff lindsay

41
CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Post on 21-Dec-2015

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

CS 563 Advanced Topics in Computer Graphics

Spectral BRDF

by Cliff Lindsay

Page 2: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Overview

“The ultimate aim of realistic graphics is the creation of images that provoke the same responses that a viewer would have to a real scene.”

Page 3: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Topics Covered

Color Theory (Colorimetry) Techniques and Examples for Using Spectra in

Rendering Future of Spectral Rendering

Page 4: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Color Theory

Dominant Wavelength Color Matching CIE XYZ

Terminology: Luminance – total power in the light, by the

total we mean area under the Spectral curve Dominant Wavelength – specifies the hue of the

color, usually represented by a spike or dominating portion of the spectral curve

Saturation (purity) – of a light is defined as the % of luminance that resides in the dominant wavelength

Page 5: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Dominant Wavelength

Color is a Spectral Curve (intensity vs. Wavelength)

Response (in general) = k w()L()d [1]

Color is determined by Spectra, mostly the Dominant

Different Spectral Power Distributions can map to the same color, for ex.: Red Laser, SPD w/ Red dominating, Red w/ White (AKA Metamers).

Page 6: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Tristimulus Theory

Human Visible light 380nm – 800nm 3 Different Cone Sizes Response for each Cone Size[1]:

S = s()A()d M = m()A()d L = l() A()d

Page 7: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Tristimulus Theory

For Each Cone:

A() = rR()+ gG()+bB()

S = s()A()d= s()(rR()+ gG()+bB())= r s()R()d+g s()G()d+b s()B()d= rSR + gSG + bSB

Equations were taken from pages 302-303 of [1]

The equations are the same for M & L, and RGB, and rgb contribute to all Cones separately. Where s() is the Response function for a Short Cone.

Page 8: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

CIE

Commission Internaionale de l’Eclairage (CIE)

Created a Standard color system in 1931 (XYZ)

Based on the human eye's response to RGB

Device-independent colors

Positive combinations of colors

Page 9: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

CIE XYZ

CIE Tristimulus values X = 683 x()L() d Y = 683 y()L() d Z = 683 z()L() d

Y is luminance Integrate over 380nm – 800nm Affine Equation for Color

Definition:Affine – means all components add to 1.

Page 10: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

CIE Chart

Page 11: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Mapping CIE XYZ RGB

[1]

Page 12: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Current Display Issues

Representation of Light is RGB based

Low Dynamic Range of Monitors

Disparate Range Values

Image acquired from [8]

Page 13: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Dealing With Display Issues

Tone Reproduction

Spectra to Color Mapping

Mapping Color to Spectra

Page 14: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Tone Reproduction (Mapping)

Methods for scaling luminance values in a real world to a displayable range.

Mimics perceptual qualities cd (candela) – lumen per steridian

~105cd/m2~10-5

cd/m2

~100 cd/m2~1 cd/m2

Same VisualResponse ?

[11]

Page 15: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Tone Reproduction (Mapping)

Spatially Uniform (global)

Spatially Varying (local)

Time Dependent

Page 16: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Spatially Uniform (global operator)

Tumblin, Rushmeier, & Ward

Histogram Equalization Technique

HVS Imitation Technique

Luminance as Textures

And more …

Page 17: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Tumblin & Rushmeier, 1993

B = k (L – L0), where k is a constant, L0 is min Luminance, and = .333 –> .49[4]

Linear on a log-log scale similar to HVS Computationally Efficient

Low Medium High [4]

Page 18: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Ward, 1994 Linear transform

Ld = mLW

Matching contrast between real and image Ld = display Luminance, Lw = world, and m = scale factor.

Min-Max Ward

Page 19: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Spatially Varying (local operator)

Chiu, 1993, Schlick 1994

Zone System (Ansel Adams ‘80, ‘81?)[10]

Low Curvature Image Simplifier

Local-linear Mapping

And More …

Page 20: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Chiu, 1993

Eye is more sensitive to reflectance than luminance

Blur the image to remove high frequencies

Inverting the Result S(i, j) = 1/(k*fblur(i,j)) where fblur = e.01r [9]

S*f, where S() – inversion, f() – raster position

Where: r = is the distance (in one pixel width equals

one) from the center of the kernel K = is a visual adjustment weight

Page 21: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Chiu, 1993

Original image

Image with blurring and and inversion scaling [9]

Page 22: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Schlick, 1994

Rational rather than logarithmic Big speed advantage over Chiu et al. F = p * Val/p*Val – Val + HiVal

Where: HiVal - the highest tonal value in the

image Val = current tonal value P = M*HiVal/N*LoVal, where M = the

darkest gray level that can be distinguished from black, and N is the largest value for the display device.

Page 23: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Schlick, 1994

[10]

Page 24: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Time DependentFerwerda et al, 1996

Threshold visibility Changes in colour appearance Visual Acuity Temporal Sensitivity

[11]

Page 25: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Time Dependent

Page 26: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Spectra Representation

Direct Sampling (Sparse)

Polynomial Representation

Adaptive Techniques

Hybrid (composite)

And More…

Page 27: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Direct Sampling

Where: K is a normalization coefficient 64 = segments of the visible domain [380nm-

700nm] in 5nm widthband x(), y() and z() are the color matching

functions of the XYZ colorimetric system Sr – SPD * reflectence under normal incidence

Page 28: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Polynomial Representation

Piecewise cubic polynomials

Inter-reflections are reduced to polynomial multiplications

Degree reduction technique based on Chebyshev polynomials

Spectral multiplications are O(n2)

Page 29: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Mapping Color to Spectra

If Light is defined as RGB, then what and we want to model situations that require Spectra: Light interference (Soap Bubbles, hummingbird wings, film coated objects)

Then We Need to Go Back to Spectra from RGB, But Many different Spectra Map to the Same Color???

We can do it!

Definitions: Metamers - One color that maps to more than one

Spectral Power Distribution.

Page 30: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Mapping Color to spectra

Remember: S = s()A()d

= s()(rR()+ gG()+bB())= r s()R()d+g s()G()d+b s()B()d= rSR + gSG + bSB

Equations From Slide 7

Given Colors we want to go back to a 3 component Spectrum (image slide 6):

S = j=1-3tjixj , where tji = k A()fj() d

and fj = some linearly independent functions

Page 31: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Mapping Color to spectra

Equations From Slide 7

S = j=1-3tjixj , where tji = k A()fj() d

fj = some linearly independent functions

What this gives us a 3X3 matrix of coefficients that we need for reconstruction of the SPDs.

We can use Delta functions, Box functions, or Fourier Functions

Page 32: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

What is Spectral BRDF

Just Like Regular BRDFs (but different) Rendering equation Function of 4 angles (incident, reflection) Conservative

Different Color Interaction Different Material Interaction Different Viewer Interaction (non-reciprocal)

Page 33: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Now What Can We Do With Spectra?

Polarization

Interference

Dispersion

Florescence

[4]

Page 34: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Polarization

Caused by light interaction with an optically smooth surface

Electromagnetic Wave Retardance of incident light, relative Phase

shift

[4]

Page 35: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Interference

Factors that Affect Light Interference: Refractive index and thickness of the thin film Refractive indices of the media Incident Angle and incident SPD (Spectral Power

Distribution)

[6]

Page 36: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Dispersion

Light is split into spectral components Dielectric Materials: diamonds, lead crystal,

glass Results: colored fringes, rainbow caustics, etc.

[4]

Page 37: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Florescence

Re-emission of photons at different energy levels

Re-emission has at a time delay(typically 10-8 secs.)

[4]

Page 38: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Conclusion

Spectral Rendering is gaining momentum in the industry :-)

We Have Ways Around Display Devices Limitations

Necessity for Realistic Image Rendering

Getting Closer to a Physically Based System

Page 39: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

Insights, Future, and Were to Go From Here

Something to look into: Paul Debevec’s “High Dynamic Range Paper” Ward’s “High Dynamic Range Imaging”

OpenEXR – An Opensource HDR image file format developed by Industrial Light & Magic

Image courtesy of ILM, http://www.openexr.com/about.html

Page 40: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

References [1] Shirley, Peter, “Fundamentals of Computer Graphics”, [2] Hill, F.S., “Computer Graphics Using OpenGL”, [3] Akenine-Möller, Thomas, Haines, Eric, “Real-time

Rendering”, [4] Devlin, Kate, “State of The Art Report Tone

Reproduction and Physically Based Spectral Rendering”, Eurographics, 2002

[5] Rougeron G., P'eroche B.,” An adaptive representation of spectral data for reflectance computations”, Rendering Techniques '97 (Proceedings of the Eighth Eurographics Workshop on Rendering)

[6] Sun Y, “Deriving Spectra from Colors and Rendering Light Interference”

[7] Ward, Matt, “Color Theory and Pre-Press”, http://www.cs.wpi.edu/~matt/courses/cs563/talks/color.html

[8] Devlin, Kate, “A review of tone reproduction techniques”, Technical Report CSTR-02-005, November 2002

Page 41: CS 563 Advanced Topics in Computer Graphics Spectral BRDF by Cliff Lindsay

References [9] K Chiu, M Herf, P Shirley, S Swamy, C Wang, K

Zimmerman, “Spatially Nonuniform Scaling Functions for High Contrast Images”,

[10] Erik Reinhard, Erik, Stark, Michael, Shirley, Peter, Ferwerda, James, “Photographic Tone Reproduction for Digital Images”,

[11] McNamara, Ann, “Visual Perception in Realistic Image Synthesis: State of the Art Report”, PowerPoint Presentation,

[12] Schlick, C, “Quantization Techniques for Visualization of High Dynamic Range Pictures”, 1994