Level 2 Help for MARSMOS

INP

There are two options for describing input images.
 
Either:
List the image file names
 
Or:
provide an ascii file with the file names listed, one per record.


OUT

Output image containing the mosaic.

If BANDS is not specified, the output will have the same number of bands
as the input with the most bands, and all bands will be processed.  Inputs
with fewer than that many bands repeat their last band, so bw and color images
can be mixed.  If BANDS is specified, the output will have a single band.


NAVTABLE

Corrected navigation filename.
If marsnav was run on the input images it created a table of corrected
pointing parameters. If you refer to this table using NAVTABLE it
will override the pointing parameters (e.g. azimuth and elevation) in the
picture labels, giving you a better registered mosaic.


INPUT_RANGE

The range of inputs to actually mosaic.  Normally all inputs are mosaicked.
However, if this parameter is specified, all inputs will be used to calculate
the output projection, but only the inputs in the specified range will be
mosaicked.  This allows the generation of a large mosaic to be spread out
over several nodes on a network, with a program like FASTMOS used to combine
all the outputs together.  Note that any underlays (annotation that goes
under the image) should be put on the *last* mosaic only for FASTMOS;
overlays (that show on top of everything) should be on all images (or at
least the first).

The input numbers are 1-based.  If only one number is specified, it is the
starting number; the end defaults to the # of inputs.


BIAS

Specifies values to multiply DN values of each input
picture. Defaults to 1.0 for each picture. For example, 
if there are five input images, then try
BIAS=(1.0, 1.33, 0.8, 1.90, 1.0)

BIAS is obsolete now; it has been replaced by BRTCORR.


BRTCORR

Specifies an input file containing brightness corrections.  This is an
XML file that comes from a program like marsbrt which contains correction
factors for each image.  These factors may be additive or multiplicative
constants to be applied to the image, or other corrections that may be
implemented in the future.

The BRTCORR mechanism is intended to replace BIAS.  Using them together
should be avoided because the labels will not reflect both (the BIAS
overrides).  If you do, however, the BRTCORR corrections are applied to
the data first, before BIAS.


AZOUT

The commanded "azimuth" of the output image. 
Defaults to the average input azimuth.
Measured in the coordinate system specified by COORD.


ELOUT

The commanded "elevation" of the output image. 
Defaults to the average input elevation.
Measured in the coordinate system specified by COORD.


TWIST

Sets the "twist" value for the output camera.  This is a rotation
applied about the pointing axis of the camera which has the effect of
rotating the output mosaic.  Measured in degrees, with positive resulting
in a counterclockwise rotation of the output mosaic (because it causes
a clockwise rotation of the camera).

Note that setting twist to 0 does not by any means guarantee a "flat
horizon" or anything else; most models have a natural twist to them,
which can be significant.


OUTSIZE

Overrides size of the output image.  Specifying OUTSIZE and OUTOFF will cause
the same projection to be generated even with different input images (normally
these values are derived from the input images).


OUTOFF

Overrides x/y offset values for output.  This offset is the distance from the
camera coordinate origin to the image origin (0-based) and affects where the
center of the projection falls in the output.  Specifying OUTOFF and OUTSIZE
will cause the same projection to be generated even with different input
images (normally these values are derived from the input images).


OUTPOS

Overrides the camera position.  This combined with AZOUT/ELOUT and TWIST
allow the mosaic to be generated from any point of view.  Note that severe
parallax can be introduced by changing the camera position.  See also DELTAZ.
Measured in the coordinate system specified by COORD.


DELTAZ

The DELTAZ value is added to the Z component of the camera position.
This can be more convenient than using OUTPOS in certain circumstances,
e.g. moving the camera up to achieve a vertical point of view (combined
with ELOUT), because you do not need to obtain the initial camera position
a priori.

If both OUTPOS and DELTAZ are specified, the effects are cumulative:  the
position is set to OUTPOS and then DELTAZ is applied.


ZOOM

Sets the zoom factor for the image.  A value of 1.0 results in the "natural"
size for the mosaic; 0.5 is half size, etc.


SHIFT

There are two different ways of handling a subframe (or superframe, in the
case of a mosaic) for current camera models.  The historical method has been
to use a "nominal" model and externally handle an offset from camera model
to physical file coordinates.  This is the intent of the Offset values, which
are automatically calculated but may be overridden via OUTOFF.

A newer method is to incorporate the shift (translation) represented by
these offsets into the camera model itself.  The offsets thus become 0.

If SHIFT is specified, this newer method is used.  The default setting
(NOSHIFT) retains the use of the offsets.

Note that the output mosaic should be identical in either case!  The only
difference will be in how the camera model in the label is formulated.


BAND

The BSQ input file band number. Default is to process all bands (e.g. color).
Providing a value will cause only that one band to be processed.


NORMAL

The local mars surface normal vector coordinate system specified by SURF_COORD 
parameter (defaults to surface fixed).
For most pan/tilt cameras, if the lander is not tilted this vector
would be: normal=(0,0,-1).  ie: x_component=0, y_component=0, z_component=-1.
This need not be a unit vector.  This vector is used to define the
surface plane to which image points are projected in order to minimize
parallax.
For SPHERE1/2 surface models, normal's first parameter is used to
denote sphere's radius.  Thus to describe sphere of radius R, user
would specify normal=(R, 0, 0).


GROUND

Any point on the surface, in coordinate system specified by SURF_COORD parameter
(defaults to surface fixed).  This defines where the tilted plane is in space.  
Although any point may be used, normally the point just "under" the origin is selected.
Defaults:
Mars Pathfinder:  (0.0, 0.0, 0.0)       (lander zero point is on the ground)
Mars 98 Lander:   (0.0, 0.0, 1.64)      (lander zero point is on top of deck)
MER           :   (0.0, 0.0, 0.294)
For MER images taken on top of the lander, the ground is roughly at (0.0, 0.0, 0.7)
For SPHERE1/2 surface models, GROUND parameter is used to denote sphere's
center.  
    


SURF_COORD

The coordinate system that surface parameters like GROUND and NORMAL are defined in.
For valid values refer to COORD parameter description.  The interpretation of the 
values is dependent on the mission. Defaults to surface fixed coordinate system.
Note that no validation is done for input strings because COORD is using the same
values.  So user needs to be extra careful in specifying SURF_COORD value.  For 
example COORD=local would be correctly interpreted to mean LOCAL_LEVEL because of
validation process.  On the other hand specifying SURF_COORD=local would lead
to underlying code treating the input value as invalid and reverting to default
which is FIXED frame.  So the values for SURF_COORD should be spelled exactly as
found in the list of valid values for COORD parameter.


SURFACE

The type of mars surface to use. The surface is used to intercept view rays
emanating from the cameras in order to model out parallax between the
stereo cameras. The two options are surface=INFINITY which means no surface
is used or surface=PLANE (the default case). If surface =PLANE then the plane
is defined by the NORMAL and GROUND parameters.  For the cases when PLANE
doesn't match local topography sufficiently well, here are two sphere surface
models: surface=SPHERE1 and surface=SPHERE2.  SPHERE1 is useful to model
convex surfaces like hills, it returns closest(first) ray-surface intersection
point.  SPHERE2 is useful to model concave surfaces, like crater when the
camera point is outside looking in, it returns farthest(second) ray-surface
intersection point.  For the case when camera is inside the sphere surface,
like rover sitting in the crater, there is only a single intersection point
and SPHERE1 and SPHERE2 behave exactly the same.


MAXNL

Maximum # output picture lines.
Defaults to 30000.


MAXNS

Maximum # output picture samples.
Defaults to 30000.


NUMBER

Causes the program to place an ASCII number into the mosaic at the center of
where each input picture falls.  Numbers begin at 1 and increase in the
order of the filenames in the input.  This permits one to determine which
picture populated which part of the mosaic.  Defaults to NONUMBER.

The DN to use for the numbers is set by NUMBER_DN, and the zoom factor for
the numbers by NUMBER_ZOOM.


NUMBER_DN

The DN to use for the image numbers.  See NUMBER keyword.


NUMBER_ZOOM

The zoom factor to use for the image numbers (i.e. how big the numbers are).
Must be a positive integer, 1 is the smallest possible.  See NUMBER keyword.


NUMBER_START

Specifies the starting point for the image numbers (i.e. the first input is
assigned this number for the image number overlays, and they increment from
there).  Normally this will be 1, but could be set differently if only part
of a larger mosaic is being generated.


FOOTPRT

Causes "footprints" to be drawn around each input image in the output
mosaic.  This is useful to show overlap of the images, and is often used
in conjunction with NUMBER.

There are three values:

NOFOOTPRINT - No footprint is displayed.  This is the default.
FOOTPRINT - Shows the footprint only where the edge of the image is "on top".
    Useful to see which image is laid down first.  If the DN (FOOT_DN) has
    insufficient contrast, the footprint may not be very visible, since it
    is interpolated like normal pixels.
OVERLAP - shows the entire footprints of all images, even if another image
    overlaps the edge of the input.  Useful to see how much overlap there is
    between images.  OVERLAP mode will slow down the program down somewhat,
    since the borders are drawn in after the mosaic is created (to ensure that
    all borders are drawn).

The DN to use for the footprints is set by FOOT_DN.  Note that the footprint
replaces (hides) the outer row of pixels in the image.


FOOT_DN

The DN to use for the footprints.  See FOOTPRT keyword.

FOOT_DN is an array, allowing color footprints to be created.  Each element
in FOOT_DN is used in sequence for the corresponding band.  If not enough
elements are present in FOOT_DN, the last value is repeated.  A value of 0
is treated as transparent, i.e. that band is not touched by the footprint.

So for a color mosaic with range 0-4095, FOOT_DN=4095 will plot footprints in
white, FOOT_DN=\(1,4095,4095\) will plot them in cyan, and
FOOT_DN=\(0,4095,4095\) will plot them in something between cyan and white,
dependeing on the image content of the first band.  Note that FOOT_DN is a
floating point number, so FOOT_DN=\(0.1,4095,4095\) on an integer image will
put a true 0 out for the red band without triggering the transparency check.


RAD

Keyword parameter that turns on or off radiometric correction of the input
images.  RAD (the default) enables the correction (for missions/instruments
which support it), while NORAD disables it.


DNSCALE

DN scaling factor.  This factor is used to convert between physical
radiometric units (watts/(meter**2, steradian, micron)) and DN's for the
output mosaic.  The formula is:

true_radiance = offset + (factor * DN)

where "offset" is 0.0 in the current implementation, and "factor" is
1.0 / DNSCALE (making the formula equivalently:  offset + (DN / DNSCALE)).
The offset and factor (1.0/DNSCALE) are written to the output mosaic label.
 


CONFIG_PATH

A colon-separated list of directories in which to look for configuration
and calibration files.  Environment variables are allowed in the list
(and may themselves contain colon-separated lists).  The directories are
searched in order for each config/cal file when it is loaded.  This allows
multiple projectes to be supported simultaneously, and allows the user to
override any given config/cal file.  Note that the directory structure below
the directories specified in this path must match what the project expects.
For example, Mars 98 expects flat fields to be in a subdirectory named
"flat_fields" while Mars Pathfinder expects them to be directly in the
directory specified by the path (i.e. no intermediate subdirectories).


MATCH_METHOD

Specifies a method for pointing corrections.

Loose method matches with pointing parameters of the image.
Tight method matches with unique id of the image.


MATCH_TOL

Tolerance value for matching pointing parameters in the pointing corrections
file.  Used if MATCH_METHOD=LOOSE
Default value is pretty arbitrary, though seems to work well so far....


POINT_METHOD

Specifies a mission-specific pointing method to use.  Normally this
parameter is not used, in which case the "default" pointing methods
are used.  Some missions may have special, or alternate, pointing
methods available, which are indicated by this string (for example,
backlash models, using arm joint angles instead of x/y/z/az/el, etc).
A substring search is used, so multiple methods (where that makes sense)
can be specified by separating the keywords with commas.

Note that nav files created using one pointing method will most likely
not be compatible with a mosaic created using a different pointing method.

The methods available vary per mission, but some methods available at
the time of this writing are:

BACKLASH : Mars 98 SSI only.  Selects a backlash pointing model,
which adjusts the telemetered azimuth and elevation values based on
knowledge of the camera's mechanical backlash and the direction the
motor was travelling when the image was taken.


NOSITE

Disables all label-derived parameters to the Site mechanism which underlies
coordinate systems.  This forces all sites to be identical, with all rotations
and offsets set the same.  In the case of MPF or Mars 98, this disables
the lander quaternion and offset (sets them to identity and 0, respectively).
This option should not be used with images taken from different vantage
points (e.g. the spacecraft moved, or mixing a lander and a rover) or
invalid results will be obtained.  The use of this option invalidates the
Fixed coordinate frame; any values reported in the Fixed frame will not
correctly reflect the orientation of the lander/rover.

Obviously, this option should be rarely used; it is intended for when the
image labels defining the site are invalid or inconsistent.


DATA_SET_NAME

The DATA_SET_NAME typically identifies the instrument that acquired the
data, the target of that instrument, and the processing level of the data.
This value is copied to the output label, property IDENTIFICATION,
keyword DATA_SET_NAME.


DATA_SET_ID

The DATA_SET_ID value for a given data set or product is constructed
according to flight project naming conventions.  In most cases the
DATA_SET_ID is an abbreviation of the DATA_SET_NAME.
This value is copied to the output label, property IDENTIFICATION,
keyword DATA_SET_ID.


RELEASE_ID

When a data set is released incrementally, such as every three months during
a mission, the RELEASE_ID is updated each time part of the data set is released.
For each mission(or host id if multiple spacecrafts), the first release of a data
set should have a value of "0001".
This value is copied to the output label, property IDENTIFICATION,
keyword RELEASE_ID.


PRODUCT_ID

Specifies a permanent, unique identifier assigned to a data product by
its producer. Most commonly, it is the filename minus the extension.
This value is copied to the output label, property IDENTIFICATION,
keyword PRODUCT_ID.


PRODUCER_ID

Specifies the unique identifier of an entity associated with the
production of a data set. This value is copied to the output label,
property IDENTIFICATION, keyword PRODUCER_ID.


PRODUCER_INST

Specifies the identity of a university, research center, NASA center or other
institution associated with the production of a data set.
This value is copied to the output label, property IDENTIFICATION, keyword
PRODUCER_INSTITUTION_NAME.


TARGET_NAME

Specifies a target.  The target may be a planet, satelite, ring, region, feature,
asteroid or comet.  This value is copied to the output label, property
IDENTIFICATION, keyword TARGET_NAME.


TARGET_TYPE

Specifies the type of a named target. This value is copied to the output
label, property IDENTIFICATION, keyword TARGET_NAME.


INTERP

Keyword parameter that turns on or off interpolation of the output
images pixel values.  INTERP (the default) enables the interpolation, 
while NOINTERP disables it.


RSF

Rover State File.  This is a list of filenames to load containing
Rover State information.  These files contain position and orientation
information for a rover (or other mobile spacecraft) at various sites.
They are in XML format.  See the "Rover Motion Counter (RMC) Master File SIS"
for details on these files.

Rover State Files have a priority order.  The files listed first have
the highest priority.

Environment variables may be used in the list.

For MER, if a directory is specified, then that directory is searched for
RMC Master files and any found are loaded.  The directory structure and
filename convention is covered in the RMC SIS.  The directory specified
is the one containing "master", so if <dir> is the name specified in the
RSF parameter, the following files will be searched for:

<dir>/master/_Master.svf
<dir>/master/_Site__Master.rvf

The name of each file loaded is printed to the stdout log for reference.


DEBUG_RSF

If enabled, this causes the internal database of RMC locations to be
printed out to the stdout log.  This is after the RSF files have been
loaded and the coordinate systems read from the input label(s).


COORD

The coordinate system in which mosaic is being projected and to use for 
the AZOUT and ELOUT parameters.
The interpretation of the values is dependent on the mission.  Some
representative missions are listed here:

Fixed - The Fixed frame (default).  This is the ultimate reference frame
    (see also FIXED_SITE for rover missions).
Instrument - The "natural" frame for the instrument (of the first input
    image).  MPF: Lander or Rover; M98: MVACS; MER: Rover.
Site - A major Site frame.  For rover missions, COORD_INDEX specifies which
    Site frame to use.  Non-rover missions treat this as Fixed.
Rover - An instance of the Rover frame.  For rover missions, COORD_INDEX
    specifies which instance of the rover frame to use.  Non-rover mission
    use the spacecraft frame (e.g. Lander for M98).
Local_Level - An instance of a Local Level frame.  This is typically
    coincident with the Rover frame (in XYZ) but oriented toward North
    like the Site and Fixed frames.  For MER, this is an instance of a
    Drive index move.


COORD_INDEX

The index specifies which instance of a coordinate system to use.  It is
currently applicable only to rover-based missions, but could have other
uses.  The index is equivalent to the Rover Motion Counter (RMC) for MER
and FIDO.

For MER/FIDO, there are many Site frames.  Each is numbered with a single
index.  For Site Frames, coord_index specifies which to use.  Likewise,
there are many Local_Level and Rover frames, corresponding to values of
the RMC.  The multiple instances of this frame are selected by COORD_INDEX.

Generally COORD_INDEX defaults sensibly so you don't usually need to
specify it.  It will default to the instance used by the first input.


FIXED_SITE

Specifies which major Site is the "Fixed" Site for this run.

Historically, MPF and M98 had a single "Surface Fixed" frame which never
moved, and which all other coordinate system frames were referenced to.
With the advent of long-range rovers (such as MER and FIDO), that became
insufficient.  The rover traverses far enough that errors in knowledge of
coordinate system offset and orientation become unacceptable.

For this reason, a system of major Sites was introduced.  Periodically
during the mission, a Site frame is declared.  This then becomes the
reference frame for all activities until the next Site is declared.
References are kept local, and errors don't propogate across Sites.

However, if images from more than one Site are combined together, the
Site's must be placed relative to each other.  Therefore a single reference
frame is still needed to combine different sites.

The FIXED_SITE parameter controls which of the major Site frames is
the reference ("fixed") site for this program run.  This fixed frame
can vary in different program runs, but is constant throughout one
execution.

If not specified, FIXED_SITE defaults to the minimum Site number (i.e.
lowest numbered, or earliest chronologically) used in all input images.
Normally this default is sufficient; rarely must FIXED_SITE be specified.

One or more Rover State Files must usually be specified in order to combine
image from more than one Site.  These describe the relationship between
sites.  See the RSF parameter.


SOLUTION_ID

Specifies which solution ID to use for pointng corrections.

There are potentially many different definitions for the same coordinate
system.  These are identified via a unique Solution ID.  If this parameter
is given, only the specified solution's definition is searched for.