Help for MARSIGOOD
PURPOSE:
The MARSIGOOD program generates an overall goodness product by looking at
the goodness bands of multiple other products (such as tilt and roughness).
Note that this program is not really specific to the instrument placement
(MARSI*) programs; it is flexible and configurable enough to be used anywhere
there are multiple status bands.
EXECUTION:
for seis:
marsigood \( rus ruw tfs tfw tds\) gus mask=wss
for hp3:
marsigood \( ruh -- tfh\) guh mask=wsh
where ruh/rus/ruw come from MARSIROUGH, tfh/tfs/tfw/tds come from MARSITILT,
and wss/wsh come from NSYTWKSP.
METHOD:
The BAND parameter specifies which band contains the goodness map for each
input product (default 1). For each pixel, MARSIGOOD looks at the goodness
value for each product, and compares to THRESH (default 5). If the value
is >= THRESH, it is good. If all of the input products are good, the output
is set to GOOD_VALUE (default 5). If one of them is bad, the corresponding
item is pulled from the SINGLE_BAD parameter, and that value is put in the
output. If more than one of them are bad, the output is set to the value
in MULTI_BAD.
If the optional MASK file is given, the MASK file is also consulted. If the
value in MASK is < MASK_THRESH, the pixel is outside of the mask and is marked
bad using MASK_BAD (0), regardless of the status of the inputs.
If an input file is "--" then that slot is skipped, which allows the same
per-band parameter defaults to be used for multiple cases (e.g. InSight
SEIS vs HP3).
For InSight, the default parameters produce the following for SEIS (given
the inputs shown at the top of this help):
0 = no data or outside mask
1 = multiple inputs are bad
2 = roughness of either seis or wts is bad
3 = tilt of either seis or wts is bad
4 = delta-tilt between seis and wts is bad
5 = all good
and the following for HP3:
0 = no data or outside mask
1 = multiple inputs are bad
2 = roughness is bad
3 = tilt is bad
4 = n/a
5 = all good
Note: multiple inputs can use the same single_bad value, but if more than
one are bad it goes to multi_bad.
Note: This program is identical to NSYTGOOD. It was simply renamed to
MARSIGOOD because it is really not InSight-specific. NSYTGOOD could be
obsoleted.
HISTORY:
2015-09 rgd - Initial version
2016-01 rgd - Wrote help
2019-12-23 wlb - IDS-7926 - initialized some variables; cleaned up -Wall warnings;
added unit test.
Note 'mask.SimpleImage<double>::_line_stride' may be used uninitialized
2020-07 rgd Renamed from nsytgood
COGNIZANT PROGRAMMER: B. Deen
PARAMETERS:
INP
Input files.
List file not supported.
OUT
Output file.
Must be 1 filename.
MASK
Optional input mask file.
BAND
Goodness band in each input.
THRESH
Goodness threshold for each input.
MASK_BAND
Band to use for mask input.
MASK_THRESH
Goodness threshold for mask input.
GOOD_VALUE
Output value for good status.
SINGLE_BAD
Output value for a single input
being bad.
MULTI_BAD
Output value for multiple
inputs being bad.
MASK_BAD
Output value for mask input
being bad.
CONFIG_PATH
Path used to find
configuration/calibration
files.
POINT_METHOD
Specifies a mission-
specific pointing
method to use
DATA_SET_NAME
Specifies the full name given
to a data set or a data product.
DATA_SET_ID
Specifies a unique alphanumeric
identifier for a data set or data
product.
RELEASE_ID
Specifies the unique identifier
associated with the release to the
public of all or part of a data set.
The release number is associated with
the data set, not the mission.
PRODUCT_ID
Specifies a permanent, unique
identifier assigned to a data
product by its producer.
PRODUCER_ID
Specifies the unique identifier
of an entity associated with the
production a data set.
PRODUCER_INST
Specifies the full name of the
identity of an entity associated
with the production of a data set.
TARGET_NAME
Specifies a target.
TARGET_TYPE
Specifies the type of a named target.
See Examples:
Cognizant Programmer: