ISIS Application Documentation
Compute the lat/lon range of a set of camera images for mosaicking
Description
mosrange computes and outputs the latitude
and longitude ranges of a set of Level1
images (i.e. non-projected), as well as the pixel
resolution and the oblique pixel resolution.
It creates a cam2map ready map file
with the extents of the latitude/longitude ranges of the image set.
The user can select the type of map projection
preferred by two different ways. The PROJECTION parameter allows direct
specification of an ISIS supported projection. Or, the user can select a
map file from the ISIS map template system that contains the projection name.
If none of these options are used, then Equirectangular is the default.
mosrange provides better control over the values of the latitude/longitude
ranges by providing a PRECISION parameter. This parameter specifies the
maximum number of digits of precision for many of the Mapping group parameters
used to project images.
ONERROR, ERRORLOG, and ERRORLIST parameters offer better error handling and
diagnostics when problems are encountered processing the input file list.
ONERROR dictates whether mosrange will abort or continue when an error
occurs. If ONERROR=FAIL (default behavior), mosrange aborts upon error
without generating a map file. If ONERROR=CONTINUE, mosrange produces
an output map file with data collected from all successfully processed images.
A detailed list of files that fail and their associated errors are written to
the ERRORLOG file if provided. A simple list of failed files is written to the
ERRORLIST file if provided.
The primary use of mosrange is to provide a quick, simple and batchable means of
creating map files for projections.
An example of the output generated is:
Group = Mapping
ProjectionName = Equirectangular
TargetName = Mercury
EquatorialRadius = 2440000.0 <meters>
PolarRadius = 2440000.0 <meters>
LatitudeType = Planetocentric
LongitudeDirection = PositiveEast
LongitudeDomain = 360
PixelResolution = 505.3668 <meters/pixel>
ObliquePixelResolution = 791.251 <meters/pixel>
Scale = 84.2676 <pixels/degree>
MinPixelResolution = 483.45317995544 <meters>
MaxPixelResolution = 527.28051834369 <meters>
CenterLongitude = 165.9728
CenterLatitude = -13.6612
MinimumLatitude = -21.5164
MaximumLatitude = -5.806
MinimumLongitude = 133.7863
MaximumLongitude = 198.1593
# Actual Parameters without precision applied
PreciseCenterLongitude = 165.97281458717
PreciseCenterLatitude = -13.661167089917
PreciseMinimumLatitude = -21.516314016725
PreciseMaximumLatitude = -5.806020163109
PreciseMinimumLongitude = 133.78639979231
PreciseMaximumLongitude = 198.15922938202
End_Group
End
Categories
History
Kris Becker | 2006-03-26 |
Original version
|
Kris Becker | 2008-06-27 |
Removed references to CubeInfo due to refactor
|
Kris Becker | 2009-08-13 |
Added parameters LATTYPE, LONDIR and LONDOM; Now computes pixel Scale
in pixels/degree; added additional parameters to the output map file so
it is more compliant with projection requirements based upon input
parameters and established mapping group keywords.
|
Kris Becker | 2009-09-18 |
Added TargetName to output map file.
|
Mackenzie Boyd | 2010-07-19 |
Modified program to have output go to print.prt file in addition to
other outputs.
|
Kris Becker | 2010-11-02 |
Added more detail to error reporting so the offending file can be
more readily identified.
|
Kris Becker, Lynn Weller | 2012-01-22 |
Updated the documentation
|
Debbie A. Cook | 2012-07-06 |
Updated Spice members to be more compliant with Isis coding standards. References #972.
|
Debbie A. Cook | 2012-10-11 |
Updated to use new Target class. References Mantis tickets #775 and #1114.
|
Tyler Wilson | 2016-08-25 |
Updated to use updated Camera/CameraPointInfo classes which include improved approximations
to Pixel/Detector/Line/Sample resolutions, as well as providing the ability for developers
to order the fields in CSV/Pvl output. References #476.
|
Kris Becker | 2019-03-11 |
Added ERRORLOG, ERRORLIST and ONERROR flags to provide better control
error behavior and provide diagnostics when problems are encountered
processing input file list.
|
Ken Edmundson | 2023-09-07 |
Moved Kris Becker's 2019-03-11 changes from UofA code base to USGS. Updated documentation.
Cleaned up unnecessary blank lines and commented code in mosrange.cpp. References #3606.
|
|
Parameter Groups
Files
Name
|
Description
|
FROMLIST |
Input cube file list to compute range for
|
MAP |
An existing MAP file that will be used to determine the name of the
projection
|
TO |
Output map projection file generated from the list
|
LOG |
Writes the specifics for each file to this file
|
Mapping
Name
|
Description
|
PROJECTION |
Name of projection you want to create
|
LATTYPE |
Latitude type
|
LONDIR |
Longitude Direction
|
LONDOM |
Longitude Domain
|
PRECISION |
Digits of precision to use for latitude/longitude specifications
|
Errorhandling
Name
|
Description
|
ONERROR |
Define behavior when a file error occurs
|
ERRORLOG |
Writes detailed information for each failed file to a PVL file
|
ERRORLIST |
Record filename of each cube that failed to this file
|
|
Files:
FROMLIST
Description
Use this parameter to select the filename of a cube with
camera labels.
Type
| filename |
File Mode
| input |
Filter
|
*.lis
|
Files:
MAP
Description
If this file is given, only the ProjectionName keyword is used to
determine the type of projection desired. If you know the type
already as well as the proper spelling required by ISIS, then you
may use PROJECTION as an alternative to this file.
Type
| filename |
File Mode
| input |
Default Path
| $ISISROOT/appdata/templates/maps |
Internal Default
| None |
Filter
| *.map *.cub |
Files:
TO
Description
This file will contain a map projection file suitable for projecting
the given set of images. This file will contain all the parameters
suitable for using directly in cam2map.
Type
| filename |
File Mode
| output |
Internal Default
| None |
Filter
| *.map |
Files:
LOG
Description
Each input file will have its geometry computed and the results can
be written to this file.
Type
| filename |
File Mode
| output |
Internal Default
| None |
Mapping:
PROJECTION
Description
Use this named projection as the type of projection you wish to
create. It should be the complete valid name as required by the
cam2map application. This name can also be provided in the MAP
parameter if you do not know the proper spelling/format required for
ISIS projections.
Type
| string |
Default
| None |
Internal Default
| None |
Mapping:
LATTYPE
Description
The latitude type for the projection. It can either be Planetocentric or Planetographic.
PLANETOCENTRIC is the default.
Type
| string |
Default
|
PLANETOCENTRIC
|
Option List:
|
Option |
Brief |
Description |
PLANETOCENTRIC |
Planetocentric
|
Sets the latitude type in the mapping template to Planetocentric.
|
PLANETOGRAPHIC |
Planetographic
|
Sets the latitude type in the mapping template to Planetographic.
|
|
Mapping:
LONDIR
Description
The longitude direction for the projection. It can have a direction of Positive East
or Positive West. POSITIVEEAST is the default.
Type
| string |
Default
|
POSITIVEEAST
|
Option List:
|
Option |
Brief |
Description |
POSITIVEEAST |
PositiveEast Longitude Direction
|
Sets the longitude direction in the mapping template to PositiveEast.
|
POSITIVEWEST |
PositiveWest Longitude Direction
|
Sets the longitude direction in the mapping template to PositiveWest.
|
|
Mapping:
LONDOM
Description
The longitude domain for the projection. It can either have a domain of 180 or 360.
360 is the default.
Type
| string |
Default
|
360
|
Option List:
|
Option |
Brief |
Description |
360 |
0 to 360 Degree Longitude Domain
|
Sets the longitude domain in the mapping template to 360 degrees.
|
180 |
-180 to 180 Degree Longitude Domain
|
Sets the longitude domain in the mapping template to 180 degrees.
|
|
Mapping:
PRECISION
Description
This parameter provides some control over how the Latitude and
Longitude min/max values are written to the map file. Note that
this is useful for creating easy values to use in subsequent
applications that may require these values. If these values are not
specified, about 12 digits of precision will be used.
Note that you can use a negative number which has the effect of
rounding the whole integral number. A value of 0 will produce
an integral whole number, effectively removing the decimal
portion of the numbers. A positive number will truncate up
(maximums using the ceil function) or down (minimums using the
floor function) range values such as MinimumLatitude and
MaximumLatitude. The pixel resolution is rounded using same
technique (with the rint fuction).
PRECISION Examples |
Value |
PRECISION |
Result |
118.08747089457 |
12 (Default) |
118.08747089457 |
118.08747089457 |
5 |
118.0875 |
118.08747089457 |
1 |
118.1 |
118.08747089457 |
0 |
118.0 |
118.08747089457 |
-1 |
120.0 |
118.08747089457 |
-2 |
100.0 |
118.08747089457 |
-3 |
0.0 (Bad!) |
Errorhandling:
ONERROR
Description
This flag is provided to specify what action is to be
taken should an error occur processing the input file
list. A detailed list of errors for each file will be
recorded to ERRORLOG if a file name is provided. A list
containing the file names that failed will be written
to ERRORLIST if provided. If ONERROR=FAIL, a single
error will result in an abort. FAIL is the default
(to preserve existing behavior).
Type
| string |
Default
|
FAIL
|
Option List:
|
Option |
Brief |
Description |
CONTINUE |
Continue processing all the input file list if an error occurs
|
Continue to produce an output map file with data collected from
any number of successfully processed images when one or more
errors are encountered with the input processing list. This option
will cause the application to continue processing all files and
generate a mapping file if at least one is successful.
|
FAIL |
Terminate the application when an error occurs
|
If any file produces an error when determining mapping statistics,
ONERROR=FAIL will cause the application to abort with an error
without generating a map file. The filename and detailed error are
written to ERRORLOG if provided. The filename alone is written to
ERRORLIST if provided.
|
|
Errorhandling:
ERRORLOG
Description
Each file that encounters an error will produce the issue
that cased the error. The ERRORLOG file can be specified to
get a detailed account of why each file failed to successfully
complete. Data collected from this process will be written
to the specified ERRORLOG in the form of a PVL object.
Type
| filename |
File Mode
| output |
Internal Default
| None |
Errorhandling:
ERRORLIST
Description
The filename of each cube that encountered an error will be
written to this file if provided. The ERRORLIST file can be
used to difference against the input list to determine all
the successful files included in the mapping statistics.
Type
| filename |
File Mode
| output |
Internal Default
| None |