Extensions to bidirectional texture function compression with multi-level vector quantization in OpenCL

Bidirectional texture function (BTF) as an effective visual fidelity representation of surface appearance is becoming more and more widely used. In this paper we report on three contributions to BTF data compression. First, we propose novel decompositions for multi-level vector quantization in BTF data compression that improve the compression ratio by 12% in comparison with the original method, without loss of visual quality. This is achieved by a highly configurable software architecture that allows for different compression pipelines. Second, we show how for offline storage the compression ratio can be increased by 30% in total by Huffman coding. Third, we show how to efficiently parallelize this vector quantization algorithm in OpenCL for massively parallel architectures such as GPUs with a new modular design of the compression pipeline. The results for the new compression algorithm are shown on twelve low dynamic range BTFs and four high dynamic range publicly available BTF samples. Our method allows for real time synthesis on a GPU. Graphical abstractDisplay Omitted HighlightsWe propose a method for parallel BTF compression that takes 3h on average on a GPU.This is the first specific design of a parallel algorithm for BTF compression in OpenCL.We improve already high compression ratio 1:500 by 12% and by 30% for offline storage.Two techniques are presented that result in speedup by factor between 20 and 35.We evaluate the method on 16 BTF datasets publicly available.

[1]  Reinhard Klein,et al.  Fast vector quantization for efficient rendering of compressed point-clouds , 2008, Comput. Graph..

[2]  Wan-Chun Ma,et al.  An efficient representation of complex materials for real-time rendering , 2004, VRST '04.

[3]  Koen E. A. van de Sande,et al.  Accelerating Visual Categorization with the GPU , 2010, ECCV Workshops.

[4]  Reinhard Klein,et al.  BTF Compression via Sparse Tensor Decomposition , 2009, Comput. Graph. Forum.

[5]  Timothy G. Mattson,et al.  OpenCL Programming Guide , 2011 .

[6]  Reinhard Klein,et al.  Parallelized Matrix Factorization for fast BTF Compression , 2009, EGPGV@Eurographics.

[7]  Christopher Schwartz,et al.  Level‐of‐Detail Streaming and Rendering using Bidirectional Sparse Virtual Texture Functions , 2013, Comput. Graph. Forum.

[8]  Jirí Filip,et al.  A psychophysically validated metric for bidirectional texture data reduction , 2008, ACM Trans. Graph..

[9]  Petr Egert Efficient GPU-based Decompression of BTF Data Compressed using Multi-Level Vector Quantization , 2013 .

[10]  Andrew Chi-Sing Leung,et al.  A GPU implementation for LBG and SOM training , 2011, Neural Computing and Applications.

[11]  Gregory Ward Larson,et al.  LogLuv Encoding for Full-Gamut, High-Dynamic Range Images , 1998, J. Graphics, GPU, & Game Tools.

[12]  Pierre Poulin,et al.  Simulated bidirectional texture functions with silhouette details , 2013, Graphics Interface.

[13]  Jirí Filip,et al.  Bidirectional Texture Function Modeling: A State of the Art Survey , 2009, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[14]  Holly E. Rushmeier,et al.  A Sparse Parametric Mixture Model for BTF Compression, Editing and Rendering , 2011, Comput. Graph. Forum.

[15]  Nuno Silva,et al.  Real-Time Visualization of a Sparse Parametric Mixture Model for BTF Rendering , 2012, ISVC.

[16]  Allen Gersho,et al.  Vector quantization and signal compression , 1991, The Kluwer international series in engineering and computer science.

[17]  Bormin Huang,et al.  GPU Acceleration of Predictive Partitioned Vector Quantization for Ultraspectral Sounder Data Compression , 2011, IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing.

[18]  Anselmo Lastra,et al.  Efficient rendering of spatial bi-directional reflectance distribution functions , 2002, HWWS '02.

[19]  Szymon Rusinkiewicz,et al.  Efficient BRDF importance sampling using a factored representation , 2004, SIGGRAPH 2004.

[20]  Dongsheng Guo,et al.  Comparison on Zhang neural dynamics and gradient-based neural dynamics for online solution of nonlinear time-varying equation , 2011, Neural Computing and Applications.

[21]  David A. Huffman,et al.  A method for the construction of minimum-redundancy codes , 1952, Proceedings of the IRE.

[22]  Diego Gutierrez,et al.  Effects of Approximate Filtering on the Appearance of Bidirectional Texture Functions , 2014, IEEE Transactions on Visualization and Computer Graphics.

[23]  Reinhard Klein,et al.  BTF‐CIELab: A Perceptual Difference Measure for Quality Assessment and Compression of BTFs , 2009, Comput. Graph. Forum.

[24]  Xu Zhou,et al.  A Content-based Classified Hierarchical Vector Quantization Algorithm for Volume Compression , 2011, J. Softw..

[25]  TsaiYu-Ting,et al.  K-clustered tensor approximation , 2012 .

[26]  Eero P. Simoncelli,et al.  Image quality assessment: from error visibility to structural similarity , 2004, IEEE Transactions on Image Processing.

[27]  Zen-Chung Shih,et al.  K-clustered tensor approximation: A sparse multilinear model for real-time rendering , 2012, TOGS.

[28]  Ralf Sarlette,et al.  Acquisition, Synthesis, and Rendering of Bidirectional Texture Functions , 2005, Comput. Graph. Forum.

[29]  Yair Shoham,et al.  Hierarchical vector quantization of speech with dynamic codebook allocation , 1984, ICASSP.

[30]  Karol Myszkowski,et al.  Bidirectional Texture Function Compression Based on Multi‐Level Vector Quantization , 2010, Comput. Graph. Forum.

[31]  Christopher Schwartz,et al.  WebGL-based streaming and presentation of objects with bidirectional texture functions , 2013, JOCCH.

[32]  Reinhard Klein,et al.  Compression and Real-Time Rendering of Measured BTFs Using Local PCA , 2003, VMV.

[33]  Ralf Sarlette,et al.  Efficient and Realistic Visualization of Cloth , 2003, Rendering Techniques.

[34]  Vlastimil Havran,et al.  Parallel BTF Compression with Multi-Level Vector Quantization in OpenCL , 2014, PG.

[35]  Donald P. Greenberg,et al.  Non-linear approximation of reflectance functions , 1997, SIGGRAPH.

[36]  Shree K. Nayar,et al.  Reflectance and texture of real-world surfaces , 1997, Proceedings of IEEE Computer Society Conference on Computer Vision and Pattern Recognition.