Frequency domain normal map filtering

Filtering is critical for representing detail, such as color textures or normal maps, across a variety of scales. While MIP-mapping texture maps is commonplace, accurate normal map filtering remains a challenging problem because of nonlinearities in shading---we cannot simply average nearby surface normals. In this paper, we show analytically that normal map filtering can be formalized as a spherical convolution of the normal distribution function (NDF) and the BRDF, for a large class of common BRDFs such as Lambertian, microfacet and factored measurements. This theoretical result explains many previous filtering techniques as special cases, and leads to a generalization to a broader class of measured and analytic BRDFs. Our practical algorithms leverage a significant body of work that has studied lighting-BRDF convolution. We show how spherical harmonics can be used to filter the NDF for Lambertian and low-frequency specular BRDFs, while spherical von Mises-Fisher distributions can be used for high-frequency materials.

[1]  Pat Hanrahan,et al.  Triple product wavelet integrals for all-frequency relighting , 2004, ACM Trans. Graph..

[2]  John Hart,et al.  ACM Transactions on Graphics , 2004, SIGGRAPH 2004.

[3]  Marc Olano,et al.  Normal Distribution Mapping , 1997 .

[4]  R. Fisher Dispersion on a sphere , 1953, Proceedings of the Royal Society of London. Series A. Mathematical and Physical Sciences.

[5]  Pat Hanrahan,et al.  A signal-processing framework for inverse rendering , 2001, SIGGRAPH.

[6]  Stephen Lin,et al.  Multiresolution reflectance filtering , 2005, EGSR '05.

[7]  Wojciech Matusik,et al.  Inverse shade trees for non-parametric material representation and editing , 2006, ACM Trans. Graph..

[8]  Inderjit S. Dhillon,et al.  Clustering on the Unit Hypersphere using von Mises-Fisher Distributions , 2005, J. Mach. Learn. Res..

[9]  Bo Sun,et al.  Time-varying BRDFs. , 2006, IEEE transactions on visualization and computer graphics.

[10]  Jan Kautz,et al.  Precomputed radiance transfer for real-time rendering in dynamic, low-frequency lighting environments , 2002 .

[11]  Katsushi Ikeuchi,et al.  Multiple light sources and reflectance property estimation based on a mixture of spherical distributions , 2005, Tenth IEEE International Conference on Computer Vision (ICCV'05) Volume 1.

[12]  R. Mooney,et al.  Impact of Similarity Measures on Web-page Clustering , 2000 .

[13]  Paul S. Heckbert,et al.  Fundamentals of Texture Mapping and Image Warping , 1989 .

[14]  Nelson L. Max,et al.  Smooth transitions between bump rendering algorithms , 1993, SIGGRAPH.

[15]  Peter-Pike J. Sloan,et al.  Local, deformable precomputed radiance transfer , 2005, ACM Trans. Graph..

[16]  Paul Lalonde,et al.  A Wavelet Representation of Reflectance Functions , 1997, IEEE Trans. Vis. Comput. Graph..

[17]  David B. Shmoys,et al.  A Best Possible Heuristic for the k-Center Problem , 1985, Math. Oper. Res..

[18]  Loïc Barthe,et al.  Wavelet encoding of BRDFs for real-time rendering , 2007, GI '07.

[19]  Dinesh Manocha,et al.  Appearance-preserving simplification , 1998, SIGGRAPH.

[20]  James T. Kajiya,et al.  Anisotropic reflection models , 1985, SIGGRAPH.

[21]  James F. Blinn,et al.  Simulation of wrinkled surfaces , 1978, SIGGRAPH.

[22]  Zen-Chung Shih,et al.  All-frequency precomputed radiance transfer using spherical radial basis functions and clustered tensor approximation , 2006, ACM Trans. Graph..

[23]  Lance Williams,et al.  Pyramidal parametrics , 1983, SIGGRAPH.

[24]  Ronen Basri,et al.  Lambertian reflectance and linear subspaces , 2001, Proceedings Eighth IEEE International Conference on Computer Vision. ICCV 2001.

[25]  Berthold K. P. Horn Extended Gaussian images , 1984, Proceedings of the IEEE.

[26]  Michael Toksvig Mipmapping Normal Maps , 2005, J. Graph. Tools.

[27]  D. Rubin,et al.  Maximum likelihood from incomplete data via the EM - algorithm plus discussions on the paper , 1977 .

[28]  Wojciech Matusik,et al.  A data-driven reflectance model , 2003, ACM Trans. Graph..