Search NASASearch

Engineering topics

Deen, Robert

Publications and source records attributed to Deen, Robert.

Terrain Generation from Stereo Imagery in the JPL/MIPL Pipeline

Multimission Image Processing Lab (MIPL) at JPL is responsible for (among other things) the ground-based operational image processing of all the recent in-situ Mars missions. Terrains and meshes are probably the most important products from MIPL for in-situ operations

Multimission Instrument (Image) Processing Lab at

Software Reuse in the Planetary Context: The JPL/MIPL Mars Program Suite

Reuse greatly reduces development costs. Savings can be invested in new/improved capabilities Or returned to sponsor Worth the extra time to "do it right" Operator training greatly reduced. MIPL MER personnel can step into MSL easily because the programs are familiar. Application programs much easier to write. Can assume core capabilities exist already. Multimission Instrument (Image) Processing Lab at MIPL Responsible for the ground-based instrument data processing for (among other things) all recent in-situ Mars missions: Mars Pathfinder Mars Polar Lander (MPL) Mars Exploration Rovers (MER) Phoenix Mars Science Lab (MSL) Responsibilities for in-situ missions Reconstruction of instrument data from telemetry Systematic creation of Reduced Data Records (RDRs) for images Creation of special products for operations, science, and public outreach In the critical path for operations MIPL products required for planning the next Sol s activities

Software Design

Parallel-Processing Software for Creating Mosaic Images

A computer program implements parallel processing for nearly real-time creation of panoramic mosaics of images of terrain acquired by video cameras on an exploratory robotic vehicle (e.g., a Mars rover). Because the original images are typically acquired at various camera positions and orientations, it is necessary to warp the images into the reference frame of the mosaic before stitching them together to create the mosaic. [Also see "Parallel-Processing Software for Correlating Stereo Images," Software Supplement to NASA Tech Briefs, Vol. 31, No. 9 (September 2007) page 26.] The warping algorithm in this computer program reflects the considerations that (1) for every pixel in the desired final mosaic, a good corresponding point must be found in one or more of the original images and (2) for this purpose, one needs a good mathematical model of the cameras and a good correlation of individual pixels with respect to their positions in three dimensions. The desired mosaic is divided into slices, each of which is assigned to one of a number of central processing units (CPUs) operating simultaneously. The results from the CPUs are gathered and placed into the final mosaic. The time taken to create the mosaic depends upon the number of CPUs, the speed of each CPU, and whether a local or a remote data-staging mechanism is used.

Klimeck, Gerhard

Parallel-Processing Software for Correlating Stereo Images

A computer program implements parallel- processing algorithms for cor relating images of terrain acquired by stereoscopic pairs of digital stereo cameras on an exploratory robotic vehicle (e.g., a Mars rove r). Such correlations are used to create three-dimensional computatio nal models of the terrain for navigation. In this program, the scene viewed by the cameras is segmented into subimages. Each subimage is assigned to one of a number of central processing units (CPUs) opera ting simultaneously.

Klimeck, Gerhard

Marsviewer

Marsviewer is a multi-platform application designed to aid in quality control, browsing, and analysis of original science product images (Experiment Data Records, or EDRs) and derived image data products (Reduced Data Records, or RDRs) returned by the Mars Explorer Rover (MER) mission. Marsviewer offers an abstraction of the products organization via a file finder. For example, the application understands the file structure and filename conventions of the MER Operational Storage Server, helping the user to navigate this complex file system to find desired images. Marsviewer also works with a flat file system, remote-operations file systems, image-archive file systems, and others. All EDRs found for a given solar day (Sol) are displayed in a list, optionally with thumbnail images. Once the user selects an image from the list, a tabbed pane conveniently displays the original source image and all associated RDRs. Marsviewer provides the option of overlaying derived images upon the source image, resulting in an easier-to-interpret color representation of the data. Display manipulations such as zoom, data range adjustment, contrast enhancement, and contour control are available. Image metadata (labels) from the current image can be displayed and searched. The architecture of the program is extensible: new types of RDRs can be installed and new file finders can be added to adapt the program to different file structures and different filename conventions. This keeps the application flexible and provides an opportunity for reuse with future rover missions.

Toole, Nicholas

Automated generation of image products for Mars Exploration Rover Mission tactical operations

This paper will discuss, from design to implementation, the methodologies applied to MIPL's automated pipeline processing as a 'system of systems' integrated with the MER GDS. Overviews of the interconnected product generating systems will also be provided with emphasis on interdependencies, including those for a) geometric rectificationn of camera lens distortions, b) generation of stereo disparity, c) derivation of 3-dimensional coordinates in XYZ space, d) generation of unified terrain meshes, e) camera-to-target ranging (distance) and f) multi-image mosaicking.

products

Java Library for Input and Output of Image Data and Metadata

A Java-language library supports input and output (I/O) of image data and metadata (label data) in the format of the Video Image Communication and Retrieval (VICAR) image-processing software and in several similar formats, including a subset of the Planetary Data System (PDS) image file format. The library does the following: It provides low-level, direct access layer, enabling an application subprogram to read and write specific image files, lines, or pixels, and manipulate metadata directly. Two coding/decoding subprograms ("codecs" for short) based on the Java Advanced Imaging (JAI) software provide access to VICAR and PDS images in a file-format-independent manner. The VICAR and PDS codecs enable any program that conforms to the specification of the JAI codec to use VICAR or PDS images automatically, without specific knowledge of the VICAR or PDS format. The library also includes Image I/O plugin subprograms for VICAR and PDS formats. Application programs that conform to the Image I/O specification of Java version 1.4 can utilize any image format for which such a plug-in subprogram exists, without specific knowledge of the format itself. Like the aforementioned codecs, the VICAR and PDS Image I/O plug-in subprograms support reading and writing of metadata.

Deen, Robert