ISIS Application Documentation
slither | Standard View | TOC | Home |
Computes a transformation to shift entire lines or samples
Description
Categories
Groups
History
slither computes an image transformation that shifts lines up or down and samples left or right preserving whole lines and samples. The transform is computed from a control net file. These control net files are typically generated by Isis applications such as coreg and hijitreg.
The transform used to generate the output file is computed by statistically merging all the column coregistration results into one column for each row. The important values in the control net file used are the line and sample offsets. These are relative shifts in line and sample at each coregistration chip center. See coreg or hijitreg for details on registration chips.
The offsets computed are relative shifts in line and sample using a user selectable interpolation scheme via the SPLINE parameter. The type of spline selected is then used to compute the interpolation for both the line and sample offsets. They are computed independanty and applied independantly as well for each output line and sample position requested during the tranform operation.
The parameters LINEOFFSET and SAMPLEOFFSET can be used to shift the entire translation spatially in line and sample, respectively. This is indicated when the initial starting point in the coregistration application were not spatially registered, defined as the line and sample chip coordinates in both images where the same when they were correlated. Typically, hijitreg is the beneficiary of these parameters.
slither computes either a forward of reverse transform, meaning the results can be applied to the either image used in computing the coregistration values. The forward transform is typical, applying slither to the file provided in the FROM parameter of the coregistration applications.
For further analysis, a rather large volume of data is created in the RESULTS file if provided by the user. This file will contain statistics for the control points used and also for each line in the output image. Offsets for every line and the center sample is computed and written to this file, so it will have at least as many lines of data as the input image. It is really suited for plotting the resulting transform for verification and analysis.
Name | Description |
---|---|
FROM | Input cube to slither |
TO | Output cube |
CONTROL | Control Net file |
RESULTS | Dump of line/sample interpolation and statistics |
Name | Description |
---|---|
SPLINE | Interpolation type to be used on the line and sample transform |
DIRECTION | Direction of the transform |
LINEOFFSET | Number lines to add to each shift |
SAMPLEOFFSET | Number samples to add to each shift |
Name | Description |
---|---|
INTERP | Type of interpolation |
Use this parameter to select the filename. All bands within the file will be slithered unless a specific band is specified.
Type | cube |
---|---|
File Mode | input |
Filter | *.cub |
This file will contain the results of the slither transform
Type | cube |
---|---|
File Mode | output |
This file will contain the control net used to compute the translation. It will typically come from the coreg or hijitreg application but could come from other sources.
There are some restrictions/requirements as to the content and form of this file. First, there must only be two measures per control point. If there are any more or less than two they are silently ignored. This will typically result in failure as each interpolation option requires a minimum number of points. (If one point does not satisfy this requirement, typically none of them will and slither will terminate with an error indicating not enough points.)
Secondly, one of the measures should be identified as the reference image. The reference image is typically the image that was provided in the MATCH parameter to coreg or hijitreg. If this is not the case, slither assumes the first point is the reference image. It has no other way to determine this.
This is important because of the way control points are combined into a single column at each row. Typically, applications such as coreg and hijitreg will compute coregistration chips at the same line for each column. The line numbers are used to determine which columns are combined for each row. If the correct lines cannot be determined (with robust equvialence checking considering roundoff), then chances are good that the translation will not work properly. For example, if the reference image was erroneously selected to be the FROM parameter from the registration applications, then it would compare translated (shifted) lines and conclude that every chip is a unique row. This would result in as many rows as chips and, by definition, this would cause the interpolation to fail.
Unfortunately, this is mostly programmer controlled so when these types of problems occur, they should be reported to the Isis Support.
Type | filename |
---|---|
Filter | *.net |
This file is optional and if specifed, will contain a dump of the determination of the collapse of the columns at each row and the statistics at each row. It also contains the absolute line and sample mapping for each line and (center) sample of each line as well as relative line and sample offsets at each line.
Type | filename |
---|---|
Internal Default | None |
Filter | *.txt |
slither provides 4 different (spline) interpolation options. The interpolation option chosen is used to compute a continuous (or piecewise continous) interpolation so that each line and sample has a transform location that maps the output line and sample to a shifted input line and sample. These interpolations provide this mapping.
Type | string | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Default | CUBIC | |||||||||||||||
Option List: |
|
This parameter provides the ability to apply the transform to either the FROM or MATCH images used to compute the control net correlation. FORWARD is used for the FROM image and REVERSE is when the MATCH, or the reference, image is provided in the FROM parameter to slither.
Type | string | |||||||||
---|---|---|---|---|---|---|---|---|---|---|
Default | FORWARD | |||||||||
Option List: |
|
In some cases, an initial offset was added to start the image registration. This parameter allows for this shift to be applied to the transform. This is also equivalent to the Isis translate transform application that shifts the image spatially.
Negative values shifts the image down. Positive values shifts the image up.
Type | double |
---|---|
Default | 0.0 |
In some cases, an initial offset was added to start the image registration. This parameter allows for this shift to be applied to the transform. This is also equivalent to the Isis translate transform application that shifts the image spatially.
Note that negative values shift the image to the right. Positive values shift the image left.
Type | double |
---|---|
Default | 0.0 |
This is the type of interpolation to be performed on the input.
Type | string | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Default | CUBICCONVOLUTION | ||||||||||||
Option List: |
|
Kris Becker | 2006-06-22 | Original version |
Brendan George | 2006-09-28 | Documentation fixes |
Brendan George | 2006-10-05 | Modified call to get current time to point to Time class, instead of Application class |
Steven Lambright | 2007-06-22 | Fixed typo in user documentation |
Steven Lambright | 2008-05-13 | Removed references to CubeInfo |
Jeannie Walldren | 2008-11-05 | Removed references to DataInterp class and replaced them with NumericalApproximation class. |