Characterizing Hyperspectral Data Layouts: Performance and Energy Efficiency in Embedded GPUs for PCA-based Dimensionality Reduction

The increasing demand for HyperSpectral Imaging (HSI) applications has pushed the appearance of new, smaller and more affordable HS cameras. Their adoption in embedded systems with real-time and energy constraints open research questions given the huge amounts of data involved. Traditionally, this issue is tackled with dimensionality reduction algorithms as Principal Component Analysis (PCA). In this regard, a highly impacting factor in performance is the data layout used to store the 3D HS image into a 1D memory. In this paper, the impact of using the three main HS data layouts (BSQ, BIP and BIL) is analyzed in terms of performance and energy efficiency for two PCA methods in the embedded NVIDIA Jetson TX1 GPU-based accelerator. Results show the bottlenecks found for each layout along with architectural insights that explain the observed behaviours. Consequently, we provide a set of recommendations to select a suitable PCA method for best performance and energy efficiency, depending on the number of principal components required. Additionally, we observe how different orderings with similar results account for a much different developer's productivity given the involved coding complexity in each case.

[1]  Gustavo Marrero Callicó,et al.  Porting a PCA-based hyperspectral image dimensionality reduction algorithm for brain cancer detection on a manycore architecture , 2017, J. Syst. Archit..

[2]  Chunhui Zhao,et al.  Progressive line processing of global and local real-time anomaly detection in hyperspectral images , 2017, Journal of Real-Time Image Processing.

[3]  Johan Fjeldtvedt,et al.  CubeDMA - Optimizing three-dimensional DMA transfers for hyperspectral imaging applications , 2019, Microprocess. Microsystems.

[4]  Jon Atli Benediktsson,et al.  Advances in Spectral-Spatial Classification of Hyperspectral Images , 2013, Proceedings of the IEEE.

[5]  Henk Corporaal,et al.  Compile-time GPU memory access optimizations , 2010, 2010 International Conference on Embedded Computer Systems: Architectures, Modeling and Simulation.

[6]  Carlos González,et al.  Parallel Implementation of the CCSDS 1.2.3 Standard for Hyperspectral Lossless Compression , 2017, Remote. Sens..

[7]  Guolan Lu,et al.  Medical hyperspectral imaging: a review , 2014, Journal of biomedical optics.

[8]  Roberto Sarmiento,et al.  HELICoiD project: a new use of hyperspectral imaging for brain cancer detection in real-time during neurosurgical operations , 2016, SPIE Commercial + Scientific Sensing and Imaging.

[9]  J. Ross Beveridge,et al.  Flag-based detection of weak gas signatures in long-wave infrared hyperspectral image sequences , 2016, SPIE Defense + Security.

[10]  D. Keymeulen,et al.  GPU lossless hyperspectral data compression system for space applications , 2012, 2012 IEEE Aerospace Conference.

[11]  Rajeev Alur,et al.  GPUDrano: Detecting Uncoalesced Accesses in GPU Programs , 2017, CAV.

[12]  Dong Li,et al.  Optimizing Data Placement on GPU Memory: A Portable Approach , 2017, IEEE Transactions on Computers.

[13]  Bo Wu,et al.  Complexity analysis and algorithm design for reorganizing data to minimize non-coalesced memory accesses on GPU , 2013, PPoPP '13.

[14]  Da-Wen Sun,et al.  Recent Advances in Wavelength Selection Techniques for Hyperspectral Image Processing in the Food Industry , 2014, Food and Bioprocess Technology.

[15]  Qian Yang,et al.  Investigation of the Performance of Hyperspectral Imaging by Principal Component Analysis in the Prediction of Healing of Diabetic Foot Ulcers , 2018, J. Imaging.

[16]  Mircea Andrecut,et al.  Parallel GPU Implementation of Iterative PCA Algorithms , 2008, J. Comput. Biol..

[17]  Lin Wang,et al.  Mining painted cultural relic patterns based on principal component images selection and image fusion of hyperspectral images , 2019, Journal of Cultural Heritage.