480 likes | 618 Views
Computer. Graphics. Group. Fast Approximation to Spherical Harmonics Rotation. Jaroslav K řivánek Czech Technical University. Ja akko Konttinen University of Central Florida. Jiří Žára Czech Technical University. Sumanta Pattanaik University of Central Florida. Kadi Bouatouch
E N D
Computer Graphics Group Fast Approximation to Spherical Harmonics Rotation Jaroslav Křivánek Czech Technical University Jaakko Konttinen University of Central Florida Jiří Žára Czech Technical University Sumanta Pattanaik University of Central Florida Kadi Bouatouch IRISA / INRIA Rennes
Presentation Topic • Goal Rotate a spherical function represented bySpherical Harmonics • Proposed method Approximation through a truncated Taylor expansion Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Spherical Harmonics • Basis functions on the sphere Jaroslav Křivánek – Fast Spherical Harmonics Rotation
+ + + + + + + Spherical Harmonics + Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Spherical Harmonics Image Robin Green, Sony computer Entertainment Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Spherical Harmonics represented by a vector of coefficients: Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Spherical Harmonics • Basis functions on the sphere l = 0 l = 1 l = 2 Jaroslav Křivánek – Fast Spherical Harmonics Rotation
SH Rotation – Problem Definition • Given coefficients , representing a sphericalfunction • find coefficients for directly from coefficients . Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Our Contribution • Novel, fast, approximate rotation • Based on a truncated Taylor Expansion of the SH rotation matrix • 4-6 times faster than [Kautz et al. 2002] • O(n2) complexity instead of O(n3) • Two applications • Global illumination (radiance interpolation) • Real-time shading (normal mapping) Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Talk Overview • SH rotation • Previous Work • Our Rotation • Application in global illumination • Application in real-time shading • Conclusions Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Talk Overview • SH rotation • Previous Work • Our Rotation • Application in global illumination • Application in real-time shading • Conclusions Jaroslav Křivánek – Fast Spherical Harmonics Rotation
SH Rotation – Problem Definition • Given coefficients , representing a sphericalfunction • find coefficients for directly from coefficients . Jaroslav Křivánek – Fast Spherical Harmonics Rotation
SH Rotation Matrix • Rotation = linear transformation: Jaroslav Křivánek – Fast Spherical Harmonics Rotation
SH Rotation • Given the desired 3D rotation, find the matrix R Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Talk Overview • SH rotation • Previous Work • Our Rotation • Application in global illumination • Application in real-time shading • Conclusions Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Previous Work – Molecular Chemistry • [Ivanic and Ruedenberg 1996] • Recurrent relations: Rl = f(R1,Rl-1) • [Choi et al. 1999] • Through complex spherical harmonics • Fast for complex harmonics • Slow conversion to the real form Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Previous Work – Computer Graphics • [Kautz et al. 2002] • zxzxz-decomposition • By far the fastest previous method Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Previous Work – Summary • O(n3) complexity • Slow • Bottleneck in rendering applications Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Talk Overview • SH rotation • Previous Work • Our Rotation • Application in global illumination • Application in real-time shading • Conclusions Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Our Rotation • Fast, approximate rotation • Based on replacing the SH rotation matrix by its Taylor expansion • 4-6 times faster than [Kautz et al. 2002] Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Rotation Decomposition • Decompose the 3D rotation into ZYZ Euler angles: R = RZ(a) RY(b) RZ(g) Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Rotation Decomposition • R = RZ(a) RY(b) RZ(g) • Rotation around Z is simple and fast • Rotation around Y still a problem Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Rotation Around Y • [Kautz et al. 2002] • Decomposition of Y into X(+90˚), Z, and X(-90˚) • R = RZ(a) RX(+90˚) RZ(b) RX(-90˚) RZ(g) • Rotation around Z is simple and fast • Rotation around X is fixed-angle • can be tabulated • The RXRZRX-part can still be improved… Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Rotation Around Y – Our Approach • Second order truncated Taylor expansion of RY(b) Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Taylor Expansion of RY(b) Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Rotation Procedure – Taylor Expansion Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Rotation Procedure – Taylor Expansion • “1.5-th order Taylor expansion” • Very sparse matrix Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Full Rotation Procedure • Decompose the 3D rotation into ZYZ Euler angles: R = RZ(a) RY(b) RZ(g) • Rotate around Z by a • Use the “1.5-th order” Taylor expansion to rotate around Y by b • Rotate around Z by g Jaroslav Křivánek – Fast Spherical Harmonics Rotation
SH Rotation – Results • L2 error for a unit length input vector Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Talk Overview • SH rotation • Previous Work • Our Rotation • Application in global illumination • Application in real-time shading • Conclusion Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Application in GI - Radiance Caching • Sparse computation of indirect illumination • Interpolation • Enhanced with gradients Jaroslav Křivánek – Fast Spherical Harmonics Rotation
p1 p2 p Incoming Radiance Interpolation • Interpolate coefficient vectors 1 and 2 Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Interpolation on Curved Surfaces Jaroslav Křivánek – Fast Spherical Harmonics Rotation
p p1 Interpolation on Curved Surfaces • Align coordinate frames in interpolation R Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Results in Radiance Caching Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Results in Radiance Caching Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Talk Overview • SH rotation • Previous Work • Our Rotation • Application in global illumination • Application in real-time shading • Conclusion Jaroslav Křivánek – Fast Spherical Harmonics Rotation
GPU-based Real-time Shading • Original method by [Kautz et al. 2002] • Arbitrary BRDFs • represented by SH in the local coordinate frame • Environment Lighting • represented by SH in the global coordinate frame ( ) Lout = Incident Radiance BRDF = coeff. dot product Jaroslav Křivánek – Fast Spherical Harmonics Rotation
GPU-based Real-time Shading (contd.) • must be rotated from global to local frame • zxzxz - rotation too complicated on CPU Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Our Extension – Normal Mapping • Normal modulated by a texture • Our rotation approximation • Rotation from the un-modulated to the modulated coordinate frame • Small rotation angle good accuracy Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Normal Mapping Results Rotation Ignored Our Rotation Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Normal Mapping Results Rotation Ignored Our Rotation Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Normal Mapping Results Rotation Ignored Our Rotation Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Talk Overview • SH rotation • Previous Work • Our Rotation • Application in global illumination • Application in real-time shading • Conclusion Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Conclusion and Future Work • Summary • Fast, approximate rotation • Truncated Taylor Expansion of the SH rotation matrix • 4-6 times faster than [Kautz et al. 2002] • O(n2) complexity instead of O(n3) • Applications in global illumination and real-time shading • Future Work • Rotation for Wavelets • Normal mapping for pre-computed radiance transfer Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Thank You for your Attention ? ? Jaroslav Křivánek – Fast Spherical Harmonics Rotation
Appendix – Bibliography • [Křivánek et al. 2005] Jaroslav Křivánek, Pascal Gautron, Sumanta Pattanaik, and Kadi Bouatouch. Radiance caching for efficient global illumination computation. IEEE Transactions on Visualization and Computer Graphics, 11(5), September/October 2005. • [Ivanic and Ruedenberg 1996]Joseph Ivanic and Klaus Ruedenberg. Rotation matrices for real spherical harmonics.direct determination by recursion. J. Phys. Chem., 100(15):6342–6347, 1996.Joseph Ivanic and Klaus Ruedenberg. Additions and corrections : Rotation matricesfor real spherical harmonics. J. Phys. Chem. A, 102(45):9099–9100, 1998. • [Choi et al. 1999]Cheol Ho Choi, Joseph Ivanic, Mark S. Gordon, and Klaus Ruedenberg. Rapid andstable determination of rotation matrices between spherical harmonics by directrecursion. J. Chem. Phys., 111(19):8825–8831, 1999. • [Kautz et al. 2002] Jan Kautz, Peter-Pike Sloan, and John Snyder. Fast, arbitrary BRDF shading for low-frequency lighting using spherical harmonics. In Proceedings of the 13th Eurographics workshop on Rendering, pages 291–296. Eurographics Association, 2002. Jaroslav Křivánek – Fast Spherical Harmonics Rotation