Reaching the Edge of the Edge: Image Analysis in Space (2301.04954v2)
Abstract: Satellites have become more widely available due to the reduction in size and cost of their components. As a result, there has been an advent of smaller organizations having the ability to deploy satellites with a variety of data-intensive applications to run on them. One popular application is image analysis to detect, for example, land, ice, clouds, etc. for Earth observation. However, the resource-constrained nature of the devices deployed in satellites creates additional challenges for this resource-intensive application. In this paper, we present our work and lessons-learned on building an Image Processing Unit (IPU) for a satellite. We first investigate the performance of a variety of edge devices (comparing CPU, GPU, TPU, and VPU) for deep-learning-based image processing on satellites. Our goal is to identify devices that can achieve accurate results and are flexible when workload changes while satisfying the power and latency constraints of satellites. Our results demonstrate that hardware accelerators such as ASICs and GPUs are essential for meeting the latency requirements. However, state-of-the-art edge devices with GPUs may draw too much power for deployment on a satellite. Then, we use the findings gained from the performance analysis to guide the development of the IPU module for an upcoming satellite mission. We detail how to integrate such a module into an existing satellite architecture and the software necessary to support various missions utilizing this module.
- TensorFlow: A system for large-scale machine learning. In OSDI. 265–283.
- Satellite Image Search in AgoraEO. PVLDB 15, 12 (2022), 3646–3649.
- Educational value and lessons learned from the AAU-CubeSat project. In International Conference on Recent Advances in Space Technologies.
- Benchmarking TinyML Systems: Challenges and Direction. CoRR abs/2003.04821 (2020).
- MLPerf Tiny Benchmark. CoRR (2021).
- TPCx-AI on NVIDIA Jetsons. In TPCTC (Lecture Notes in Computer Science, Vol. 13860). 49–66.
- Mobile Databases: A Selection of Open Issues and Research Directions. SIGMOD Rec. 33, 2 (2004), 78–83.
- Adam D. Braun. 2018. Investigation of Deep Neural Network Image Processing for CubeSat Size Satellites. MSc Thesis, Morehead State University (2018).
- Cal Poly 2022. CubeSat Design Specification. Cal Poly. rev 14.1.
- Monitoring of Stream Processing Engines Beyond the Cloud: An Overview. OJIOT 7, 1 (2021), 71–82.
- Mike Chepponis and Phil Karn. 1997. The KISS TNC: A simple Host-to-TNC communications protocol. In ARRL Computer Networking Conference.
- CoralAI. 2019. CoralAI Dev Board Mini. https://coral.ai/products/accelerator/
- CoralAI. 2020a. CoralAI Dev Board Mini. https://coral.ai/products/dev-board-mini/
- CoralAI. 2020b. CoralAI TPU Technology. https://coral.ai/technology/
- CoralAI. 2022a. CoralAI Dev Board Mini. https://coral.ai/products/dev-board-micro/
- CoralAI. 2022b. Edge TPU Compiler. https://coral.ai/docs/edgetpu/compiler/
- CoralAI. 2023. Mendel Linux. https://coral.googlesource.com/docs/+/refs/heads/master/ReadMe.md
- TensorFlow Lite Micro: Embedded Machine Learning for TinyML Systems. In MLSys, Vol. 3. 800–811.
- DISCO 2022. Danish Student CubeSat Program. https://discosat.dk/
- Fast inference of deep neural networks in FPGAs for particle physics. JINST 13, 07 (2018), P07027.
- In-orbit demonstration of artificial intelligence applied to hyperspectral and thermal sensing from space. In CubeSats and SmallSats for Remote Sensing III.
- FreeRTOS. 2023. FreeRTOS. https://www.freertos.org/index.html
- CloudScout: A Deep Neural Network for On-Board Cloud Detection on Hyperspectral Images. Remote Sensing 12 (07 2020), 2205.
- NASA SpaceCube Edge TPU SmallSat Card for Autonomous Operations and Onboard Science-Data Analysis. In SSC.
- Google. 2022. TensorFlow Lite. https://www.tensorflow.org/lite/guide
- MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications. CoRR (2017).
- Intel. 2017. Intel Neural Compute Stick 2 (NCS2). https://www.intel.com/content/www/us/en/developer/articles/tool/neural-compute-stick.html
- Intel. 2023. OpenVino. https://docs.openvino.ai/latest/home.html
- Space Inventor. 2020. OBC-P3. https://www.satcatalog.com/component/obc-p3/
- Space Inventor. 2022. TTC-P3. https://www.satcatalog.com/component/ttc-p3-transceiver/
- Space Inventor. 2023. CubeSat Space Protocol. https://github.com/spaceinventor/libcsp
- ISO 11898-1:2015 2015. Road vehicles – Controller area network (CAN) – Part 1: Data link layer and physical signalling. Standard. International Organization for Standardization.
- RFC2104: HMAC: Keyed-Hashing for Message Authentication.
- CMSIS-NN: Efficient Neural Network Kernels for Arm Cortex-M CPUs. CoRR abs/1801.06601 (2018).
- Martina Lofqvist and José Cano. 2020. Accelerating Deep Learning Applications in Space. (2020).
- NVIDIA. 2019. Jetson Nano Developer Kit. https://developer.nvidia.com/embedded/jetson-nano-developer-kit
- NVIDIA. 2023. TensorRT. https://developer.nvidia.com/tensorrt
- Frontier: Resilient Edge Processing for the Internet of Things. PVLDB 11, 10 (2018), 1178–1191.
- Nobuyuki Otsu. 1979. A Threshold Selection Method from Gray-Level Histograms. IEEE Transactions on Systems, Man, and Cybernetics 9, 1 (1979), 62–66.
- PyTorch: An Imperative Style, High-Performance Deep Learning Library. In NIPS. 8024–8035.
- W. W. Peterson and D. T. Brown. 1961. Cyclic Codes for Error Detection. Proceedings of the IRE (1961).
- Raspberry Pi. 2016. Raspberry Pi 3 Model B. https://www.raspberrypi.com/products/raspberry-pi-3-model-b/
- PicoDBMS: Scaling down Database Techniques for the Smartcard. The VLDB Journal 10, 2–3 (2001), 120–132.
- Qoitech. 2022. Otii Arc Pro. https://www.qoitech.com/otii-arc-pro/
- Mark Raasveldt and Hannes Mühleisen. 2020. Data Management for Data Science Towards Embedded Analytics. In CIDR.
- Benchmarking Machine Learning Inference in FPGA-based Accelerated Space Applications. In ISPASS.
- ImageNet Large Scale Visual Recognition Challenge. IJCV 115, 3 (2015), 211–252.
- Bronco Space. 2021. BroncoSat1. https://www.broncospace.com/broncosat-1
- Deep Learning on Microcontrollers: A Study on Deployment Costs and Challenges. In EuroMLSys. 54–63.
- The TensorFlow Team. 2019. Flowers. http://download.tensorflow.org/example_images/flower_photos.tgz
- TIA-422 1994. Electrical Characteristics of Balanced Voltage Digital Interface Circuits. Standard. Telecommunications Industry Association.
- University of Tokyo’s CubeSat Project: Its Educational and Technological Significance. In Small Satellite Conference.
- LogicNets: Co-Designed Neural Networks and Circuits for Extreme-Throughput Applications. In IEEE FPL. 291–297.
- FINN: A Framework for Fast, Scalable Binarized Neural Network Inference. (2017), 65–74.
- A SPARQL Benchmark for Distributed Databases in IoT Environments. In BiDEDE. 1–6.
- X-CUBE-AI 2022. AI expansion pack for STM32CubeMX. https://www.st.com/en/embedded-software/x-cube-ai.html
- The NebulaStream Platform for Data and Application Management in the Internet of Things. In CIDR. 1–11.
- Being-ahead: Benchmarking and Exploring Accelerators for Hardware-Efficient AI Deployment. CoRR (2021).