Microarchitectural analysis of image quality assessment algorithms

Abstract. Algorithms for image quality assessment (IQA) aim to predict the qualities of images in a manner that agrees with subjective quality ratings. Over the last several decades, the major impetus in IQA research has focused on improving predictive performance; very few studies have focused on analyzing and improving the runtime performance of IQA algorithms. This paper is the first to examine IQA algorithms from the perspective of their interaction with the underlying hardware and microarchitectural resources, and to perform a systematic performance analysis using state-of-the-art tools and techniques from other computing disciplines. We implemented four popular full-reference IQA algorithms (most apparent distortion, multiscale structural similarity, visual information fidelity, and visual signal-to-noise ratio) and two no-reference algorithms (blind image integrity notator using DCT statistics and blind/referenceless image spatial quality evaluator) in C++ based on the code provided by their respective authors. We then conducted a hotspot analysis to identify sections of code that were performance bottlenecks and performed microarchitectural analysis to identify the underlying causes for these bottlenecks. Despite the fact that all six algorithms share common algorithmic operations (e.g., filterbanks and statistical computations), our results revealed that different IQA algorithms overwhelm different microarchitectural resources and give rise to different types of bottlenecks. Based on these results, we propose microarchitectural-conscious coding techniques and custom hardware recommendations for performance improvement.

[1]  Benjamin Belzer,et al.  Wavelet filter evaluation for image compression , 1995, IEEE Trans. Image Process..

[2]  Franklin C. Crow,et al.  Summed-area tables for texture mapping , 1984, SIGGRAPH.

[3]  Damon M. Chandler,et al.  A spatiotemporal most-apparent-distortion model for video quality assessment , 2011, 2011 18th IEEE International Conference on Image Processing.

[4]  Xinxin Wang,et al.  GPU implemention of fast Gabor filters , 2010, Proceedings of 2010 IEEE International Symposium on Circuits and Systems.

[5]  Liang Tao,et al.  Fast Parallel Approach for 2-D DHT-Based Real-Valued Discrete Gabor Transform , 2009, IEEE Transactions on Image Processing.

[6]  Alan C. Bovik,et al.  Fast structural similarity index algorithm , 2010, 2010 IEEE International Conference on Acoustics, Speech and Signal Processing.

[7]  Damon M. Chandler,et al.  Data handling inefficiencies between CUDA, 3D rendering, and system memory , 2010, IEEE International Symposium on Workload Characterization (IISWC'10).

[8]  C. van den Branden Lambrecht A working spatio-temporal model of the human visual system for image restoration and quality assessment applications , 1996, 1996 IEEE International Conference on Acoustics, Speech, and Signal Processing Conference Proceedings.

[9]  Edward R. Vrscay,et al.  SSIM-inspired image restoration using sparse representation , 2012, EURASIP Journal on Advances in Signal Processing.

[10]  M. Unser Fast Gabor-like windowed Fourier and continuous wavelet transforms , 1994, IEEE Signal Processing Letters.

[11]  Zhou Wang,et al.  Multiscale structural similarity for image quality assessment , 2003, The Thrity-Seventh Asilomar Conference on Signals, Systems & Computers, 2003.

[12]  Eric C. Larson,et al.  Most apparent distortion: full-reference image quality assessment and the role of strategy , 2010, J. Electronic Imaging.

[13]  Saeid Belkasim,et al.  Parallel Processing of DCT on GPU , 2011, 2011 Data Compression Conference.

[14]  Thomas M. Breuel,et al.  Efficient implementation of local adaptive thresholding techniques using integral images , 2008, Electronic Imaging.

[15]  Mehmet Celenk,et al.  Implementation of 2D-DCT on XC4000 series FPGA using DFT-based DSFG and DA architectures , 2001, Proceedings 2001 International Conference on Image Processing (Cat. No.01CH37205).

[16]  Chao Xu,et al.  Matrix Factorization for Fast DCT Algorithms , 2006, 2006 IEEE International Conference on Acoustics Speech and Signal Processing Proceedings.

[17]  Alan C. Bovik,et al.  Automatic prediction of perceptual quality of multimedia signals—a survey , 2010, Multimedia Tools and Applications.

[18]  D. Chandler Seven Challenges in Image Quality Assessment: Past, Present, and Future Research , 2013 .

[19]  Ramesh Radhakrishnan,et al.  Evaluating MMX technology using DSP and multimedia applications , 1998, Proceedings. 31st Annual ACM/IEEE International Symposium on Microarchitecture.

[20]  K. Rao,et al.  Discrete Cosine and Sine Transforms: General Properties, Fast Algorithms and Integer Approximations , 2006 .

[21]  Chih-Jen Lin,et al.  LIBSVM: A library for support vector machines , 2011, TIST.

[22]  Anna Cavender,et al.  PREDICTING INTELLIGIBILITY OF COMPRESSED AMERICAN SIGN LANGUAGE VIDEO WITH OBJECTIVE QUALITY METRICS , 2006 .

[23]  Alan C. Bovik,et al.  No-Reference Image Quality Assessment in the Spatial Domain , 2012, IEEE Transactions on Image Processing.

[24]  Christopher Martinez,et al.  Performance of commercial multimedia workloads on the Intel Pentium 4: A case study , 2009, Comput. Electr. Eng..

[25]  Roger Woods,et al.  Implementation of the 2D DCT using a Xilinx XC6264 FPGA , 1997, 1997 IEEE Workshop on Signal Processing Systems. SiPS 97 Design and Implementation formerly VLSI Signal Processing.

[26]  Alan C. Bovik,et al.  Blind Image Quality Assessment: From Natural Scene Statistics to Perceptual Quality , 2011, IEEE Transactions on Image Processing.

[27]  Huifang Chen,et al.  Techniques for efficient DCT/IDCT implementation on generic GPU , 2005, 2005 IEEE International Symposium on Circuits and Systems.

[28]  Christian J. Van Den Branden Lambrecht A working spatio-temporal model of the human visual system for image restoration and quality assessment applications , 1996, ICASSP.

[29]  K.K. Parhi,et al.  Hardware Efficient Fast DCT Based on Novel Cyclic Convolution Structures , 2006, IEEE Transactions on Signal Processing.

[30]  Zhou Wang,et al.  Wavelet-based foveated image quality measurement for region of interest image coding , 2001, Proceedings 2001 International Conference on Image Processing (Cat. No.01CH37205).

[31]  Alan C. Bovik,et al.  Motion Tuned Spatio-Temporal Quality Assessment of Natural Videos , 2010, IEEE Transactions on Image Processing.

[32]  Manuel E. Acacio,et al.  A Parallel Implementation of the 2D Wavelet Transform Using CUDA , 2009, 2009 17th Euromicro International Conference on Parallel, Distributed and Network-based Processing.

[33]  Alan C. Bovik,et al.  Automatic Prediction of Perceptual Image and Video Quality , 2013, Proceedings of the IEEE.

[34]  Wen-Hsiung Chen,et al.  A Fast Computational Algorithm for the Discrete Cosine Transform , 1977, IEEE Trans. Commun..

[35]  Hsieh S. Hou A fast recursive algorithm for computing the discrete cosine transform , 1987, IEEE Trans. Acoust. Speech Signal Process..

[36]  Trac D. Tran,et al.  Fast multiplierless approximations of the DCT with the lifting scheme , 2001, IEEE Trans. Signal Process..

[37]  Kai Yang,et al.  Optimized-SSIM Based Quantization in Optical Remote Sensing Image Compression , 2011, 2011 Sixth International Conference on Image and Graphics.

[38]  Andrew Chi-Sing Leung,et al.  Discrete Wavelet Transform on Consumer-Level Graphics Hardware , 2007, IEEE Transactions on Multimedia.

[39]  Eric C. Larson,et al.  Performance-analysis-based acceleration of image quality assessment , 2012, 2012 IEEE Southwest Symposium on Image Analysis and Interpretation.

[40]  Trac D. Tran,et al.  Fast multiplierless approximation of the DCT with the lifting scheme , 2000, SPIE Optics + Photonics.

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

[42]  Gary S. Tyson,et al.  Improving BTB performance in the presence of DLLs , 2000, MICRO 33.

[43]  Liang Tao,et al.  Multirate-Based Fast Parallel Algorithms for 2-D DHT-Based Real-Valued Discrete Gabor Transform , 2012, IEEE Transactions on Image Processing.

[44]  Mikko H. Lipasti,et al.  Modern Processor Design: Fundamentals of Superscalar Processors , 2002 .

[45]  Christophe Charrier,et al.  Blind Image Quality Assessment: A Natural Scene Statistics Approach in the DCT Domain , 2012, IEEE Transactions on Image Processing.

[46]  Weisi Lin,et al.  Perceptual visual quality metrics: A survey , 2011, J. Vis. Commun. Image Represent..

[47]  Christophe Charrier,et al.  A DCT Statistics-Based Blind Image Quality Index , 2010, IEEE Signal Processing Letters.

[48]  Alan C. Bovik,et al.  Image information and visual quality , 2004, 2004 IEEE International Conference on Acoustics, Speech, and Signal Processing.

[49]  David J. Sakrison,et al.  The effects of a visual fidelity criterion of the encoding of images , 1974, IEEE Trans. Inf. Theory.

[50]  Francisco Tirado,et al.  Parallel Implementation of the 2D Discrete Wavelet Transform on Graphics Processing Units: Filter Bank versus Lifting , 2008, IEEE Transactions on Parallel and Distributed Systems.

[51]  Sheila S. Hemami,et al.  VSNR: A Wavelet-Based Visual Signal-to-Noise Ratio for Natural Images , 2007, IEEE Transactions on Image Processing.

[52]  Vladimir Britanak,et al.  CHAPTER 1 – Discrete Cosine and Sine Transforms , 2006 .

[53]  Hsieh Hou,et al.  A Fast Recursive Algorithm For Computing The Discrete Cosine Transform , 1986, Optics & Photonics.

[54]  Przemyslaw Mazurek,et al.  GPGPU Based Estimation of the Combined Video Quality Metric , 2011, IP&C.