Presentation is loading. Please wait.

Presentation is loading. Please wait.

All-Frequency PRT for Glossy Objects Xinguo Liu, Peter-Pike Sloan, Heung-Yeung Shum, John Snyder Microsoft.

Similar presentations


Presentation on theme: "All-Frequency PRT for Glossy Objects Xinguo Liu, Peter-Pike Sloan, Heung-Yeung Shum, John Snyder Microsoft."— Presentation transcript:

1 All-Frequency PRT for Glossy Objects Xinguo Liu, Peter-Pike Sloan, Heung-Yeung Shum, John Snyder Microsoft

2 PRT Effects

3 Ng el al 03Our method Sloan et al 02, 03 Contribution all freq + diffuse low freq + glossy all freq + glossy

4 Radiance Transfer: Rendering Equation BRDF Product Function Light Transport Operator

5 Radiance Transfer: Formulation PRT Matrix

6 visible 1 blocked 0 Radiance Transfer: Shadowing Only visibility function

7 BRDF Factorization from Kautz et al, EGWR 99

8 BRDF Factorization: Our Method Build the cosine factor into the BRDF Build the cosine factor into the BRDF Sample the BRDF product function Sample the BRDF product function parabolic map parabolic map Factor it by SVD Factor it by SVD

9 BRDF Factorization: Example 1 m=2 m=5 m=10 m=20 Analytic Cook-Torrance Roughness=0.4

10 BRDF Factorization: Example 2 Roughness=0.3 0.25 0.20 Analytic Cook- Torrance BRDF Approximated with m=10

11 BRDF Factorization: Error Analysis Comparison with SH [Sloan 02,03] Comparison with no cosine weight SVD100.6770.5540.03890.298 SVD(no cosine) 100.07640.7580.04740.357

12 Radiance Transfer Matrix Precomputation Compute visibility function q Compute visibility function q Super sampling by 4x4 for anti-aliasing Super sampling by 4x4 for anti-aliasing Compute matrix by integrating over s Compute matrix by integrating over s 10 rows ( ) 6 x 32 x 32 columns ( ) 6 x 32 x 32 columns ( ) 61440 total dimension 61440 total dimension 3 minutes 2 minutes

13 PRT Compression --- Wavelet-Based [Ng 03] For diffuse material/fixed view only single row (PRT vector) only single row (PRT vector) we have multiple rows: 10 (PRT matrix) we have multiple rows: 10 (PRT matrix) Wavelet transform each vector zero small wavelet coefficients zero small wavelet coefficients only 3%~30% are kept only 3%~30% are kept Put all the response vectors in a giant matrix sparse matrix encoding for compression sparse matrix encoding for compression

14 PRT Compression --- CPCA [Sloan 03] Classify point into clusters using approx. error using approx. error Update cluster rep. by PCA Run many iterations Accelerates rendering too compressed rep. can be rendered directly compressed rep. can be rendered directly

15 PRT Compression --- Light Segmentation

16 PRT Compression --- Our Method run CPCA on PRT matrices [Sloan03] 16 eigenvectors (including mean) per cluster 16 eigenvectors (including mean) per cluster 16 combination weights per vertex 16 combination weights per vertex wavelet transform all the eigenvectors [Ng03] Arrange all eigenvectors into a matrix Arrange all eigenvectors into a matrix Zero small wavelet coefficients Zero small wavelet coefficients Encode it as a sparse matrix Encode it as a sparse matrix

17 Compression Results 10 minutes for simple diffuse ground plane 4 hours for the most complex glossy Buddha model.

18 Compression Results light source corresponding to segment

19 2 PC 4 PC 8 PC 16PC Compression Results 4 PC2 PC8 PC16 PC

20 project source lighting to find coefficients L for each cluster compute compute for each vertex compute compute add up results of T p over 24 partitions add up results of T p over 24 partitions compute compute Rendering with PRT

21 Lighting Truncation: Energy Loss 200 coefficient all coefficients

22 Lighting Truncation: Temporal Aliasing 200 coefficient all coefficients

23 Rendering Results DiffuseGlossy 1~5 fps

24 Rendering Results low frequency all frequency no shadow

25 Conclusions Contributions cosine-weighted BRDF factorization cosine-weighted BRDF factorization all frequency glossy PRT all frequency glossy PRT compression scheme compression scheme Future work include inter-reflections include inter-reflections move some computations to GPU move some computations to GPU optimize PRT sampling over the surface optimize PRT sampling over the surface

26 Thanks to anonymous reviewers for valuable comments Zhunping Zhang, Wenle Wang for discussion Jiaping Wang for producing video

27 More Results

28 PRT Compression --- Wavelet based [Ng 03] Sparse matrix encoding partition into small block of 256 rows. partition into small block of 256 rows. 8 bits for values, 8 bits for indices 8 bits for values, 8 bits for indices vs. we use 16 bits for values vs. we use 16 bits for values Vertex index 3131 12841284 7373 62936293 encoding sparse matrix light index Vertex index

29 Advantage of CPCA flops: n p *16*10* n L + n p *10* n L vs n p *16*10+ n E *16*10* n L /24 flops: n p *16*10* n L + n p *10* n L vs n p *16*10+ n E *16*10* n L /24 n E – representatives. 370 : 1 no CPCA. 20 : 1 Light truncation temporal artifacts temporal artifacts Rendering with PRT vs vs


Download ppt "All-Frequency PRT for Glossy Objects Xinguo Liu, Peter-Pike Sloan, Heung-Yeung Shum, John Snyder Microsoft."

Similar presentations


Ads by Google