Tonematches a set of HiRISE cubes prior to mosaicking
This program can be used to tonematch or equalize the brightness and
contrast of the input HiRISE cubes prior to mosaicking. The set of N
cubes inputed must be all Red, all Blue-Green, or all Infared, where N
is an integer 2-10 for RED sets and exactly 2 both for IR and BG sets.
The order the cube names are provided in does not matter, but the cubes
must all follow a linear sequence without skipping cubes all the same
(i.e., the user cannot run this application on cubes RED1-RED3 and RED5
without also providing the program RED4). Statistics are gathered by
line, taking into account the bin number of the cube (automatically
derived from the number of samples in the line). The statistics are
used in an IntersectionStatistics object's least squares solution to
determine multiplicative and additive corrections to each image. The
user has the option to stop the processing after the statistics and
corrective factors have been computed for examination. Alternatively,
the processing can continue and the corrective factors will be applied
to each image (by making sure the APPLY checkbox is ticked). The actual
equation to be used for each cube is:
The BASE and MULT values are computed independently for each image, therefore we have two
least squares computations with M unknowns, where M is the number of
cubes to be equalized. The intersections, O, between all the cubes are
computed and O < M should hold in all cases. In order for the
least squares equation to be solved, there must be at least as many
knowns as unknowns. Therefore, you must hold one or more cubes to
alleviate this problem. Holding a cube forces MULT and BASE to 1.0
and 0.0 respectively.
If the APPLY option is selected, the equalized cubes will be named the same as the input cubes
with the addition of a '.equ' prior to the '.cub' extension.
Fixed test data for compatibility across all systems and improved
documentation for clarity
Changed parameter TO to OUTSTATS and added parameter TOLIST allowing the
user to specify the location of output files. Output files are now placed
into the directory of the input cube when TOLIST is on the default
setting. Statistic gathering results are now placed in the print file.
Added new INSTATS option in addition to making the program more similar
in functionality to "equalizer" all around.
List of cubes that are to be held in the equalization.
An additive and a multiplicative factor of 0 and 1 will be applied
to all cubes that were held. All cubes listed in this file must
also be contained in FROMLIST.
This list of output files should contain a file to correspond to each
input file. The output files will be written to the exact location
with the exact name specified unless it happens to be identical to
that of its corresponding input file, in which case an error will be
thrown. If this file is not specified, but the APPLY option is
still selected, the output cubes will be placed in the directory of
its input file, and named the same with the exception of ".equ"
extension (e.g. "foobar.cub" becomes foobar.equ.cub").
This option allows the user to decide whether they want to do the
equalization calculations and then go on to apply correction
afterwards, apply correction to the images off of previously
gathered statistics, or do the calculations but not apply
correction. If the APPLY option is not selected, you must
specify an OUTSTATS file. If it is selected you can still
optionally specify an OUTSTATS file and the GAIN/OFFSET values
will be applied to each input cube. The names and locations of
the output cubes are specified by the TOLIST file.
Calculate statistics and apply correction
This option will calculate statistics on the images,
then apply correction off of those results.
Calculate statistics only
This option will calculate statistics on the images and
print them to an output PVL file, but not correct them.
Apply correction only
This option will use previously generated statistics to
apply correction to the images.
This example shows the use of the hiequal application with default
settings (i.e., no TO file with APPLY set true). For demonstrative
purposes, the first image (RED0) has had its pixel values multiplied by
.8 with the "fx" application, and the two images have been mosaicked
together with "hiccdstitch".
Specify a list of 2 adjacent RED images to equalize along with a
holding list of one of the images (RED1) that enables the necessary
calculations to be performed. All other options are at default
Mosaic of unequalized adjacent images.
Mosaic of the input images for hiequal
This is a small section of the two input images for this example
mosaicked together, showing part of the intersection line prior to
Output image of mosaic showing results of the hiequal application.
Mosaic of the output images for hiequal
The same section of the equalized output images mosaicked
together after the tonematching has been applied.