The Development of Payload Software for a Small Spacecraft

The OpenOrbiter project is a multi-department effort to design and build a small spacecraft which will demonstrate the feasibility of the Open Prototype for Educational NanoSats (OPEN) framework. This framework will reduce cost of small spacecraft creation by providing design plans for free. The focus of the payload software group is to design and implement an onboard task processing and image processing service. Currently the project is in the development phase and most large design decisions have been made. This poster presents the major design decisions that have been made for the payload software and how they will affect the overall mission goals. The task processing and management service uses orbital prediction algorithms to determine the number of images to capture and when to capture them. This process begins with a set of coordinates that specify a target region of Earth to be photographed. Orbital prediction software is used to determine when the satellite will be passing over the regions and breaks the data collection into a series of times that the satellite should capture images and spacecraft orientation instructions. The image processing service uses two main image processing algorithms to conduct mosaicking and super resolution. Mosaicking combines multiple images into a large image and then uses calibration and blending to the smooth the borders of the stitched images. The bicubic interpolation and lagrange polynomials super resolution algorithm will be used to combine multiple images of the same object and increase image quality. The SIFT (Scale Invariant Feature Transform) and/or SURF (Speeded-Up Robust Features) algorithms and satellite IMU (Inertial Measurement Unit) data will be used as feature recognition algorithms to correctly align the captured images based on their overlapping regions. This software is designed to run, parallelized, on a set of GumStix WaterStorm COMs. Due to hardware power requirements, the COMs will be used on-demand to complete the more timeconsuming and complex tasks onboard the satellite and will be powered down when not required.