Parallelization of ccsds hyperspectral image compression using C++
Loading...
Date
2018-06
Authors
Tan, Lit Chez
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
The advent of space technologies eases the collection information from earth surface through
remote sensing. However, the bandwidth and storage limitation impose on spaceborne
devices have increased the need for data compression technique. As the response,
Consultative Committee for Space Data System (CCSDS) have released Lossless
Multispectral and Hyperspectral Image Compression standard (CCSDS-MHC) as the
standard to losslessly compress the hyperspectral image taken by spaceborne devices.
Currently, most implementation of the CCSDS-MHC algorithm utilizessingle processor core
for the compression process. However, CCSDS-MHC has the potential to operate on multi core system with the use of parallelization. With the introduction of multi-core processing
system on spaceborne satellite, the execution time of the system can be further decreased. In
this research, the aim is to design a parallelization algorithm on CCSDS-MHC using Open
Multi-Processing (OpenMP), an open-source C++ application programming interface (API).
The first step of the research is converting the CCSDS-MHC algorithm into a full program
in C++, with both compression and decompression features. Next, the parallelizable section
of the algorithm is identified and coded using OpenMP. The algorithm has been parallelized
by dividing the bands of the hyperspectral image into several continuous chunks and running
them concurrently. The program is then tested in several systems with different number of
threads. The execution of parallelized CCSDS-MHC algorithm shows significant speedup
for all the system and hyperspectral image tested.