Improving the Performance of Hyperspectral Image and Signal Processing Algorithms Using Parallel, Distributed and Specialized Hardware-Based Systems
- 492 Downloads
Advances in sensor technology are revolutionizing the way remotely sensed data is collected, managed and analyzed. The incorporation of latest-generation sensors to airborne and satellite platforms is currently producing a nearly continual stream of high-dimensional data, and this explosion in the amount of collected information has rapidly created new processing challenges. For instance, hyperspectral signal processing is a new technique in remote sensing that generates hundreds of spectral bands at different wavelength channels for the same area on the surface of the Earth. Many current and future applications of remote sensing in Earth science, space science, and soon in exploration science will require (near) real-time processing capabilities. In recent years, several efforts have been directed towards the incorporation of high-performance computing (HPC) systems and architectures in remote sensing missions. With the aim of providing an overview of current and new trends in parallel and distributed systems for remote sensing applications, this paper explores three HPC-based paradigms for efficient implementation of the Pixel Purity Index (PPI) algorithm, available from the popular Kodak’s Research Systems ENVI software package, as a representative case study for demonstration purposes. Several different parallel programming techniques are used to improve the performance of the PPI on a variety of parallel platforms, including a set of message passing interface (MPI)-based implementations on a massively parallel Beowulf cluster at NASA’s Goddard Space Flight Center in Maryland and on a variety of heterogeneous networks of workstations at University of Maryland; a Handel-C implementation of the algorithm on a Virtex-II field programmable gate array (FPGA); and a compute unified device architecture (CUDA)-based implementation on graphical processing units (GPUs) of NVidia. Combined, these parts deliver an excellent snapshot of the state-of-the-art in those areas, and offer a thoughtful perspective on the potential and emerging challenges of adapting HPC systems to remote sensing problems.
KeywordsParallel systems Hyperspectral imaging Cluster computer systems Heterogeneous parallel systems FPGAs GPUs
This work has been supported by the European Community’s Marie Curie Research Training Networks Programme under reference MRTN-CT-2006-035927, Hyperspectral Imaging Network (HYPER-I-NET). This work has also been supported by the Spanish Ministry of Science and Innovation (HYPERCOMP/EODIX project, reference AYA2008-05965-C04-02). Funding from Junta de Extremadura (local government) under project PRI09A110 is also gratefully acknowledged. The authors gratefully thank Profs. Manuel Prieto and Franciscto Tirado and their group at ComplutenseUniversity of Madrid for many fruitful discussions and for his collaboration in the generation of some of the figures presented in the paper.
- 2.Schowengerdt, R.A. (2007). Remote sensing, 3rd edn. New York: Academic.Google Scholar
- 4.Chang, C.-I. (2003). Hyperspectral imaging: Techniques for spectral detection and classification. New York: Kluwer Academic.Google Scholar
- 17.Tilton, J.C. (2005). Method for implementation of recursive hierarchical segmentation on parallel computers. U.S. Patent Office, Washington, DC, U.S. Pending Published Application 09/839147, 2005. Available online: http://www.fuentek.com/technologies/rhseg.htm.
- 23.Foster, I., & Kesselman, C. (1999). The grid: Blueprint for a new computing infrastructure. San Francisco: Morgan Kaufman.Google Scholar
- 24.Vladimirova, T., & Wu, X. (2006). On-board partial run-time reconfiguration for pico-satellite constellations. First NASA/ESA Conference on Adaptive Hardware and Systems, AHS.Google Scholar
- 25.El-Araby, E., El-Ghazawi, T., & Le Moigne, J. (2004). Wavelet spectral dimension reduction of hyperspectral imagery on a reconfigurable computer. In Proceedings of the 4th IEEE international conference on field-programmable technology.Google Scholar
- 28.Boardman, J., Kruse, F.A., & Green, R.O. (1995). Mapping target signatures via partial unmixing of AVIRIS data. Summaries of the NASA/JPL Airborne Earth Science Workshop, Pasadena, CA.Google Scholar
- 29.ITT Visual Information Solutions. (2008). ENVI users guide. Boulder: ITTVIS. Online: http://www.ittvis.com.
- 33.Plaza, A., Plaza, J., & Valencia, D. (2006). AMEEPAR: Parallel morphological algorithm for hyperspectral image classification in heterogeneous networks of workstations. Lecture Notes in Computer Science, 3391, 888–891.Google Scholar
- 40.Gropp, W., Huss-Lederman, S., Lumsdaine, A., & Lusk, E. (1999). In MPI-—the complete reference, the MPI extensions (Vol. 2). Cambridge: MIT.Google Scholar
- 42.MPICH Team. (2005). MPICH: A portable implementation of MPI. Available online: http://www-unix.mcs.anl.gov/mpi/mpich.
- 43.Kung, S.Y. (1988). VLSI array processors. Upper Saddle River: Prentice-Hall.Google Scholar
- 44.Petkov, N. (1992). Systolic parallel processing. The Netherlands: North Holland.Google Scholar
- 45.Lavernier, D., Fabiani, E., Derrien, S., & Wagner, C. (1999). Systolic array for computing the pixel purity index algorithm on hyperspectral images. In Proceedings of SPIE (Vol. 4480, pp. 130–138).Google Scholar
- 46.Celoxica Ltd., (2003). Handel-C language reference manual.Google Scholar
- 47.Celoxica Ltd. (2003). DK design suite user manual. Available online: http://www.celoxica.com.
- 48.Xilinx Inc. (2010). Available online: http://www.xilinx.com (last check: January 2010).
- 49.Owens, J.D., Luebke, D., Govindaraju, N., Harris, M., Kruger, J., Lefohn, A.E., et al. (2005). A survey of general purpose computation on graphics hardware. In Proceedings of Eurographics: State of the art reports (pp. 21–51).Google Scholar