Real-Time Identification of Hyperspectral Subspaces
The identification of signal subspace is a crucial operation in hyperspectral imagery, enabling a correct dimensionality reduction that often yields gains in algorithm performance and efficiency. This paper presents new parallel implementations of a widely used hyperspectral subspace identification with minimum error (HySime) algorithm on different types of high-performance computing architectures, including general purpose multicore CPUs, graphics processing units (GPUs), and digital signal processors (DSPs). We first developed an optimized serial version of the HySime algorithm using the C programming language, and then we developed three parallel versions: one for a multi-core Intel CPU using the OpenMP API and the ATLAS algebra library, another one using NVIDIA's compute unified device architecture (CUDA) and its basic linear algebra subroutines library (CuBLAS), and another one using a Texas' multicore DSP. Experimental results, based on the processing of simulated and real hyperspectral images of various sizes, show the effectiveness of our GPU and multicore CPU implementations, which satisfy the real-time constraints given by the data acquisition rate. The DSP implementation offers a good tradeoff between low power consumption and computational performance, but it is still penalized by the absence of double precision floating point accuracy and/or suitable mathematical libraries.