Characteristic Point Maps Hongzhi Wu Julie Dorsey Holly Rushmeier (presented by Patrick Paczkowski) Computer Graphics Lab Yale University
Outline Introduction Previous Work Characteristic Point Maps – Derivation – Preprocessing – Usage Results Conclusions Future Work
Motivation Challenging to Render – Highly complex geometry + materials – High sampling rate to avoid aliasing – Viewed at multiple scales
Introduction We present Characteristic Point Maps (CPMs) – A hierarchy of points on the original model Preserves appearance (i.e. 6D filtered SV-BRDF) at multiple scales – Precomputed object-space adaptive sampling
Introduction …… Mesh Hierarchy Preprocess Original Model + Characteristic Point Maps …… level 0 level 1 level n original modelsimplified meshes Render Output Image
Previous Work Texture Mipmap [Wil83] – Pre-filtering textures Mesh Simplification [GH98, LT00, SSGH01] – Minimizing texture-mapping distortion Appearance-Preserving Mesh Simplification [COM98] – Missing small-scale shadowing and masking effects – For textures, not general BRDFs BTF LOD representation [MCT*05] – Dense sampling of 6D BTF for high-frequency effects
Previous Work Arbitrary BRDFArbitrary Geometry Shadowing and Masking Effects Small footprint Reflectance Filtering [TLQ*08] XXO√ Normal Map Filtering [HSRG07] XXX√ BTF [DvGNK99]√√√X Ours [WDR09]√√√√
Derivations Reflected radiance at x incident radiance visibility term BRDF cosine term reflected radiance L i (x, ω i ) dL(x, ω o ) x ωiωi ωoωo
Average reflected radiance A A vis ωiωi ωoωo a vis
Derivations After a sequence of transformations, where apparent reflectance function
Derivations Average reflectance function – 6D function – Brute-force precomputation is impossible! No analytical model => huge storage – E.g for A, 6x64 2 for both ω i and ω o – 64 2 x(6x64 2 )x(6x64 2 ) = 2473 Billion! Difficult to compress numerically
Derivations Discretize integration into summation
Derivations Visible Projected Area Term – a 2D spherical function – Precompute on GPU and compress using Haar wavelets Visible projected area term
Derivations Summation term Summation Term – Want to reduce the number of items (i.e. find the characteristic points) – Use Randomized Matrix Column Sampling
Illustration …… x 1 x 2 …... ω i1,ω o1 ω i2,ω o2 ω id, ω od
Illustration …… x 1 x 2 …... x1x1 ω i1,ω o1 ω i2,ω o2 ω id, ω od x2x2 …... …
… Illustration … …… x 1 x 2 …... x1x1 ω i1,ω o1 ω i2,ω o2 ω id, ω od x2x2 …... … …
Illustration …… × × × + + x 1 x 2 …... ω i1,ω o1 ω i2,ω o2 ω id, ω od α1α1 α2α2 α3α3 α1α1 α2α2 α3α3 …
Randomized Matrix Column Sampling Use [DMM06] to sample columns (i.e. to find characteristic points) 1.Compute a prob. distribution for choosing a column from the matrix 2.Randomly select m columns according to the prob. distribution 3.Compute the weights for these m columns
Randomized Matrix Column Sampling – Measure error as L2 norm – Iterate to “boost” the probability of getting the optimal result – Exploit spatial coherence in apparent reflectance functions Determine the number of CPs as the minimum number to achieve certain approximation quality – High spatial coherence => small number of CPs – Low spatial coherence => large number of CPs
Preprocessing Build a mesh hierarchy – Simplify geometry using existing techniques [GH97] – Establish a mapping from each simplified mesh to CPM u-v space Preprocess …… Mesh Hierarchy original modelsimplified meshes Original Model
Preprocessing Build a CPM hierarchy – For each texel in CPM, we store References to characteristic points Corresponding weights Wavelet coefficients for a vis – Bottom-up construction × × × + + α1α1 α2α2 α3α3 Preprocess Original Model + …… Mesh Hierarchy original modelsimplified meshes Characteristic Point Maps …… level 0 level 1 level n
Using CPMs Select a simplified mesh Select CPM mip level Look up a particular texel Evaluate at characteristic points ONLY!
Results: Cylinder Multi-sampled Normal Map Ground TruthCPMsEqual-time Budget ωiωi ωoωo
Results: Bolts Multi-sampled Normal Map Ground TruthCPMsEqual-time Budget
Results: Wall Multi-sampled Normal Map Ground TruthCPMsEqual-time Budget
Results: Gargoyles Close-up viewGround TruthCPMsEqual-time Budget
Results Precomputed object-space adaptive sampling – CP density adapts to the complexity of filtered SV- BRDFs 46 0
Conclusions A general framework for efficiently computing and representing 6D spatially-varying average reflectance functions – No assumptions on geometry or BRDFs – Accelerates rendering A precomputed object-space adaptive sampling method
Future Work Apply a low-pass filter Incorporate indirect illumination Apply to deformable objects
Acknowledgements National Science Foundation Grant # Yale Graphics Group Sumanta Pattanaik (UCF) Li-Yi Wei (Microsoft) Ping Tan (NUS)
Thank you Questions? Contact:
Back-up slides
Ground Truth Characteristic Point Maps Multi-sampled Normal Map ωiωi ωoωo (a) (b) (c) (d) (e) (f)