+ All Categories
Home > Health & Medicine > Improve real-time hair rendering.

Improve real-time hair rendering.

Date post: 12-Jul-2015
Category:
Upload: valentin-janiaut
View: 834 times
Download: 1 times
Share this document with a friend
Popular Tags:
17
Importance sampling of products from Illumination and BSDF using SRBF Valentin JANIAUT KAIST (Korea Advanced Institute of Science and Technology)
Transcript

Importance sampling of products from Illumination and BSDF using

SRBF

Valentin JANIAUT

KAIST (Korea Advanced Institute of Science and Technology)

2

Overview

● Preliminary notions● BSDF● Light scattering for human fiber● SRBF

● Problem

● Idea

● Results

● And after?

● References

3

BSDF: Bidirectional Scattering Distribution Function

4

BSDF For Hair Rendering

● In 2003 Stefan Marschner proposed a new model for the light scattering for Human Fiber which has been widely used until today.

S(q i,q o,f i,f o) = ????

5

BSDF For Hair Rendering

M(q i,q o)

N(f i,f o)

6

Rendering Equation for the Hair

● Transmittance replace the visibility.

● Single Scattering

● Different optimization to handle the large amount of data.

L(w o) = D L(w i)T(w i)Wò S(w i,w o)cosq idw i

Diameter of the hair fiber Environment Lighting Transmittance Bidirectional

scattering function

7

SRBF

f (w ) » c jj =1

N

å R((w · x j ), l j )

Spherical Coordinate of the

Spherical Function

Number of SRBF to use for the

approximation

Coefficient depending of the

problem

SRBF with actually 5 parameters

Spherical Coordinate of the

center of the SRBF

Bandwidth of the center of the SRBF

8

SRBF Viewer

9

Advantage of SRBF

● The function can be approximate using just a row of vector: [c,ξ,λ]j

● The product of different SRBF is also an SRBF.

● Integration of SRBF is simple (sampling of the center of each SRBF)

10

Problem

L(w o) = D L jj =1

N

å ÷ T (x j ,l j ) G j (w i)Wò S(w i,w o)cosq idw i

L(w o) = D L(w i)T(w i)Wò S(w i,w o)cosq idw i

11

Problem

G j (w i)Wò S(w i,w o)cosq idw i

Pre-computation of the following integral:

12

Idea

● Approximation using SRBF.

● Two possible ways to solve this.● Approximating the

integral:

Using a SRBF for each ωo

G j (w i)Wò S(w i,w o)cosq idw i

Smooth data efficient approximationNeed to compute the integral.Too much specific.

● Approximating the BSDF:

Using a SRBF for each ωo

S(w i,w o)

Easy computation of the integral using SRBF sampling.Can be used for other computation.Too smooth for the BSDF ?

One SRBF

13

Product of two SRBF

● What if we approximate the BSDF using SRBF?

S(w i,w k ) = S jkGk ((w ik · x jk ), l jk

j =1

N

å

G j (w i)Wò S(w i,w o)cosq idw i

G(w i)Wò S jkG

k ((w ik · x jk ), l jkj =1

N

å )cosq idw i

14

How to check my idea?

● Implementation of Marschner model in Python with SciPy.

● Solving SRBF with SciPy and L-BFGS-B.

15

Results

● Approximating the integral:

Using a SRBF for each ωo

● Approximating the BSDF:

Using a SRBF for each ωo

G j (w i)Wò S(w i,w o)cosq idw i

S(w i,w o)

● Computation of integration too slow with SciPy

● The code need more optimization to work with this approach.

● Encouraging result with 8 SRBF.

● Need to be tested with larger number of SRBF and real data.16 h to obtain the

image! (on a Mac Mini Intel Core 2 Duo 2GHz

1GB Ram)

cos (θi)

cos (θ0)

16

And after?

● Optimizing the code to validate my idea.

● How to merge geometric and scattering data?

● How to create a common method for all kind of hair?

17

References

● 2003: Light Scattering from Human Fiber [Marschner et al.]

● 2007: Practical Global Illumination for Hair Rendering [Cem Yuksel]

● 2008: Dual scattering approximation for fast multiple scattering in hair. [Zinke]

● 2008: Efficient multiple scattering in hair using spherical harmonics. [Moon et

.al]

● 2010: Interactive hair rendering under environment lighting. [Zhong Ren]

● http://hairrendering.wordpress.com/tag/marschner/ (C# implementation of

Marschner Scattering model)

● http://www.scipy.org/ (Scientific Computing in Python)

● http://project.valeuf.org/projects/marschner/ (Website with my source code,

and my PPT)


Recommended