450 likes | 1.04k Vues
Modeling Anisotropic Surface Reflectance with Example-Based Microfacet Synthesis. Jiaping Wang 1 , Shuang Zhao 2 , Xin Tong 1 John Snyder 3 , Baining Guo 1 Microsoft Research Asia 1 Shanghai Jiao Tong University 2 Microsoft Research 3. Surface Reflectance.
E N D
Modeling Anisotropic Surface Reflectance with Example-Based Microfacet Synthesis Jiaping Wang1, Shuang Zhao2, Xin Tong1John Snyder3, Baining Guo1 Microsoft Research Asia1Shanghai Jiao Tong University2Microsoft Research3
Surface Reflectance satin metal wood
Anisotropic Surface Reflectance isotropic anisotropic
Our Goal modeling spatially-varying anisotropic reflectance
Surface Reflectance in CG • 4D BRDF ρ(o,i) • Bidirectional Reflectance Distribution Function • how much light reflected wrt in/out directions o i
Surface Reflectance in CG • 4D BRDF ρ(o,i) • Bidirectional Reflectance Distribution Function • how much light reflected wrt in/out directions • 6D Spatially-Varying BRDF: SVBRDFρ(x,o,i) • BRDF at each surface point x
Related Work I • parametric BRDF models • compact representation • easy acquisition and fitting • lack realistic details groundtruth parametric model [Ward 92]
Related Work II • tabulated SVBRDF • realistic • large data set • difficult to capture • lengthy process • expensive hardware • image registration light dome [Gu et al 06]
Related Work II • tabulated SVBRDF • realistic • large data set • difficult to capture • lengthy process • expensive hardware • image registration light dome [Gu et al 06]
Microfacet BRDF Model • surface modeled by tiny mirror facets [Cook & Torrance 82]
Microfacet BRDF Model • surface modeled by tiny mirror facets [Cook & Torrance 82] fresnel term normal distribution shadow term
Microfacet BRDF Model • based on Normal Distribution Function (NDF) • NDF D is 2D function of the half-way vector h • dominates surface appearance
Challenge: Partial Domains • samples from a single viewing direction i • cover only a sub-regionh Ωof NDF • How to obtain the full NDF? ? partial NDF complete NDF partial region
Solution: Exploit Spatial Redundancy • find surface points with similar but differently rotatedNDFs material sample partial NDF at each surface point
Example-Based Microfacet Synthesis partial NDFs from other surface points Align + + = partial NDF to complete rotated partial NDFs completed NDF
Comparison ground truth our model isotropic Ward model anisotropic Ward model
Overall Pipeline • BRDF Slice Capture • Partial NDF Recovery • Microfacet Synthesis
Overall Pipeline • BRDF Slice Capture • Partial NDF Recovery • Microfacet Synthesis
Device Setup Camera-LED system, based on [Gardner et al 03]
Overall Pipeline • BRDF Slice Capture • Partial NDF Recovery • Microfacet Synthesis
NDF Recovery • invert the microfacet BRDF model MeasuredBRDF Unknown Unknown NDF Shadow Term , [Ashikhmin et al 00]
NDF Recovery (con’t) • iterative approach[Ngan et al 05] • solve for NDF, then shadow term • works for complete 4D BRDF data [Ngan et al 05] 1. , [Ashikhmin et al 00] 2.
Partial NDF Recovery • biased result on incomplete BRDF data [Ngan et al. 05] ground truth NDF shadow term shadow term NDF
Partial NDF Recovery (con’t) • minimize the bias • isotropically constrain shadow term in each iteration after constraint before constraint
Recovered Partial NDF [Ngan et al. 05] ground truth our result
Overall Pipeline • Capture BRDF slice • Partial NDF Recovery • Microfacet Synthesis
Microfacet Synthesis partial NDF to complete completed NDF Merged partial NDFs
Microfacet Synthesis (con’t) • straightforward implementation:For N NDFs at each surface point Match against (N-1)NDFs at other points In M rotation angles for alignment • number of rotations/comparisons: N 2*M ≈ 5×1011(N ≈ 640k, M ≈ 1k)
Synthesis Acceleration • a straightforward implementation:For N NDFs in each surface point Match with (N -1)NDFs in other location In M rotation angles for alignment • times of spherical function rotation and comparison N 2* M ≈ 5×1011( N ≈ 640k ) • Clustering [Matusik et al 03] • complete representative NDFs only (1% of full set) N'2* M ≈ 5×107( N' ≈ 6.4k )
Synthesis Acceleration • a straightforward implementation:For N NDFs in each surface point Match with (N -1)NDFs in other location In M rotation angles for alignment • times of spherical function rotation and comparison N 2* M ≈ 5×1011( N ≈ 640k) • Clustering[Matusik et al 03] • complete representative NDFs only (1% of full set) • Search Pruning • precompute all rotated candidates • prune via hierarchical searching N'2* M ≈ 5×107( N' ≈ 6.4k) N'* log(N'* M) ≈ 5×105
Performance Summary • 5-10 hours for BRDF slice acquisition in HDR • 1 Hour for acquisition in LDR • 2-4 hours for image processing • 2-3 hours for partial NDF recovery • 2-4 hours for accelerated microfacet synthesis On a PC with Intel CoreTM2 Quad 2.13GHz CPU and 4GB memory
Model Validation • full SVBRDF dataset [Lawrence et al. 06] • data from one view for modeling • data from other views for validation
Limitations • visual modeling, not physical accuracy • single-bounce microfacet model • retro-reflection not handled • spatial redundancy of rotated NDFs • easy fix by rotating the sample
Conclusions • model surface reflectance via microfacet synthesis • general and compact representation • high resolution (spatial & angular), realistic result • easier acquisition: • single-view capture • cheap device • shorter capturing time
Future Work • performance optimization • capturing and data processing • extension to non-flat objects • extension to multiple light bounce
Acknowledgements • Le Ma for electronics of the LED array • Qiang Dai for capturing device setup • Steve Lin, Dong Xu for valuable discussions • Paul Debevec for HDR imagery • Anonymous reviewers for their helpful suggestions and comments