Hardware acceleration of k-means clustering for satellite image compression Francis J. Fattori, Alan D. George Department of Electrical and Computer Engineering
Francis J. Fattori
Francis Fattori is a junior computer engineering student from Oxford, PA with interests in parallel processing methodologies, heterogeneous computing architectures and spacebased computing applications. Upon completing his undergraduate career, Francis hopes to continue conducting research in these areas while pursuing a master’s degree.
Dr. George is Department Chair, R&H Mickle Endowed Chair, and Professor of Electrical and Computer Engineering at the University of Pittsburgh (Pitt), and Fellow of the IEEE. His research interests focus upon high-performance architectures, apps, networks, services, systems, Alan D. George, and missions for reconfigurable, Ph.D. parallel, distributed, and dependable computing, from satellites to supercomputers.
Significance Statement
This article explores the applicability of a hybrid CPU-FPGA system-on-chip design in accelerating a color-quantization application for satellite image compression, highlighting the improvements in both performance and energy efficiency against traditional linear computing methods.
Category: Experimental Research
Key Words: hybrid system-on-chip (SoC) platform, field-programmable gate array (FPGA), parallel computing, space-based computing.
20 Undergraduate Research at the Swanson School of Engineering
Abstract
Image compression is a vital component of remote camera modules on satellites to facilitate file storage and network transfer. K-means clustering is an effective algorithm for lossy image compression, but its computational complexity can render the algorithm inefficient when implemented with serially functioning processors. Issues of execution latency are magnified for space-based embedded platforms, which contain radiation-hardened processors and memory units of lower overall performance and efficiency. This paper introduces a hybrid systemon-chip (SoC) design involving both a Central Processing Unit (CPU) and a Field-Programmable Gate Array (FPGA) to serve as an accelerator for a k-means clustering image-compression application on board satellites. A PYNQ-Z2 development board housing a Xilinx Zynq-7020 SoC was used for application testing. Multiple program executions with various test images revealed that the hybrid accelerator performed k-means clustering roughly 100 times faster than the software-only baseline while consuming only 1.19 % of the energy. The application functioned at a compression ratio of 4:1 and produced output images with only minor losses in image quality.
1. Introduction 1.1 Onboard Image Compression for EO Satellites
Improvements in space camera units have enabled Earth Observation (EO) satellites to capture high-resolution images. In order for these photos to be retained for future use, image information must be stored in onboard memory units and/or downlinked to a database on Earth. However, radiation-tolerant flash memory systems present in most satellites are limited in storage capacity, and typical extraplanetary telecommunication networks do not have a bandwidth capable of downlinking full-resolution, raw images obtained by satellite cameras. Thus, a data-compression protocol is required to encode digital image information using fewer bits than the original representation. Data-compression algorithm classification as lossy or lossless and the respective roles of these algorithm types in onboard image-compression modules is elucidated in [1]. To circumvent the transfer and retention of valueless high-resolution images, common procedure for satellite photo transmission begins with downlinking lossy compressed images for preliminary analysis. Only after the image has been classified as meaningful for the particular application will image information produced by lossless compression be conveyed to ground stations. The work in this paper addresses the first component of this procedure by developing and analyzing a hybrid CPU-FPGA architecture to accelerate a lossy-compression algorithm known as k-means clustering. In alignment with the recommendations of the Consultive Committee for Space Data Systems, most modern satellite image-compression units utilize complex algorithms involving wavelet transforms and bit-plane encoding [2]. Although k-means clustering is more limited in use, it can serve as the foundation of a simple yet flexible