Kemajuan dalam teknologi angkasa lepas telah memudahkan pengumpulan maklumat pada permukaan bumi melalui penderiaan jarak jauh (remote sensing). Walau bagaimanapun, had jalur lebar dan penyimpanan pada peranti angkasa lepas telah meningkatkan keperluan untuk teknik pemampatan data (data compression). Sebagai respons, jawatankuasa konsul untuk sistem data angkasa lepas (CCSDS) telah mengeluarkan piawaian pemampatan imej multispektral dan hiperspektral tanpa kehilangan (CCSDS-MHC) sebagai piawaian dalam pemampatan imej hiperspektral yang ditangkap oleh peranti angkasa lepas. Pada masa kini, kebanyakan perlaksanaan algoritma CCSDS-MHC menggunakan pemproses dengan sebuah inti pemprosesan (processor core). Namun demikian, CCSDS-MHC mempunyai potensi untuk dilaksanakan di prosesor dengan pelbagai inti prosesor melalui proses selari (parallelization). Dengan menggunakan sistem pelbagai inti prosesor (multi-core processing system) pada satelit, masa untuk pelaksanaan proses pemampatan dapat dipercepatkan. Matlamat untuk penyelidikan ini ialah mereka teknik proses selari dengan menggunakan Open Multi-Processing (OpenMP), sebuah antara muka pengaturcaraan aplikasi (API) sumber terbuka dalam bahasa pengaturcaraan C++. Langkah pertama dalam penyelidikan ini ialah menterjemahkan algoritma CCSDS-MHC kepada program C++, lengkap dengan kebolehan pemampatan dan pemulihan pemampatan. Seterusnya, tempat yang boleh diselarikan dalam algoritma telah dikenalpastikan dan dipengaturcarakan dengan mengunakan OpenMP. Algoritma CCSDS-MHC telah diselarikan dengan membahagikan jalur-jalur imej hiperspektral kepada beberapa potongan yang bersinambung dan dilaksanakan secara serentak. Algoritma yang diselarikan ini telah diuji di beberapa sistem komputer dengan nombor benang (threads) yang tidak sama. Keputusan pengujian menunjukkan bahawa algoritma CCSDS-MHC yang diselarikan mampu mencapai peningkatan kelajuan (speedup) yang signifikan dalam kesemua sistem konputer dan imej hiperspektral yang digunakan.
_______________________________________________________________________________________________________
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 utilizes single 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.