Memory-Efficient Onboard Rock Segmentation
- Created on Sunday, 01 September 2013
Rockster-MER is an autonomous perception capability that was uploaded to the Mars Exploration Rover Oppor tunity in December 2009. This software provides the vision front end for a larger software system known as AEGIS (Autonomous Exploration for Gather ing Increased Science), which was recently named 2011 NASA Software of the Year. As the first step in AEGIS, Rockster-MER analyzes an image captured by the rover, and detects and automatically identifies the boundary contours of rocks and regions of outcrop present in the scene. This initial segmentation step reduces the data volume from millions of pixels into hundreds (or fewer) of rock contours. Subsequent stages of AEGIS then prioritize the best rocks according to scientist- defined preferences and take high-resolution, follow-up observations (see figure). Rockster-MER has performed robustly from the outset on the Mars surface under challenging conditions.
Rockster-MER is a specially adapted, embedded version of the original Rockster algorithm (“Rock Segmentation Through Edge Regrouping,” (NPO-44417) Software Tech Briefs, September 2008, p. 25). Although the new version performs the same basic task as the original code, the software has been (1) significantly upgraded to overcome the severe onboard resource limitations (CPU, memory, power, time) and (2) “bullet-proofed” through code reviews and extensive testing and profiling to avoid the occurrence of faults. Because of the limited computational power of the RAD6000 flight processor on Opportunity (roughly two orders of magnitude slower than a modern workstation), the algorithm was heavily tuned to improve its speed. Several functional elements of the original algorithm were removed as a result of an extensive cost/benefit analysis conducted on a large set of archived rover images. The algorithm was also required to operate below a stringent 4MB high-water memory ceiling; hence, numerous tricks and strategies were introduced to reduce the memory footprint. Local filtering operations were re-coded to operate on horizontal data stripes across the image. Data types were reduced to smaller sizes where possible. Binary-valued intermediate results were squeezed into a more compact, one-bitper- pixel representation through bit packing and bit manipulation macros. An estimated 16-fold reduction in memory footprint relative to the original Rockster algorithm was achieved. The resulting memory footprint is less than four times the base image size. Also, memory allocation calls were modified to draw from a static pool and consolidated to reduce memory management overhead and fragmentation.
Rockster-MER has now been run onboard Opportunity numerous times as part of AEGIS with exceptional performance. Sample results are available on the AEGIS website at http://aegis.jpl.nasa.gov.
This work was done by Michael C. Burl, David R. Thompson, Benjamin J. Bornstein, and Charles K. deGranville of Caltech for NASA’s Jet Propulsion Laboratory.
This Brief includes a Technical Support Package (TSP).
Memory-Efficient Onboard Rock Segmentation (reference NPO-47954) is currently available for download from the TSP library.
Please Login at the top of the page to download.