|
Isis 3.0 Application Source Code Reference |
Home |
#include <SlitherTransform.h>
Inherits Transform.
Definition at line 15 of file SlitherTransform.h.
Public Types | |
| typedef NumericalApproximation::InterpType | InterpType |
Public Member Functions | |
| SlitherTransform (Cube &cube, ControlNet &cnet, InterpType lInterp=NumericalApproximation::CubicNatural, InterpType sInterp=NumericalApproximation::CubicNatural) | |
| Constructor where all the business is taking place. | |
| virtual | ~SlitherTransform () |
| Destructor. | |
| int | size () const |
| Number of points used in computation of transform. | |
| void | setForward () |
| Sets forward transform direction. | |
| void | setReverse () |
| Sets reverse transform direction. | |
| int | totalPoints () const |
| Total points in control net file. | |
| int | numberPointsUsed () const |
| Number of points used from the input control net file. | |
| int | numberBadPoints () const |
| Number of points tossed on input to this class. | |
| int | numberBadRows () const |
| Number of bad rows detected in control net. | |
| bool | Xform (double &inSample, double &inLine, const double outSample, const double outLine) |
| Convert the requested output samp/line to an input samp/line. | |
| int | OutputSamples () const |
| Determine the number of samples in the output image. | |
| int | OutputLines () const |
| Determine the number of lines in the output image. | |
| void | addLineOffset (double lineOffset) |
| Add an additional offset to the line output translation. | |
| void | addSampleOffset (double sampOffset) |
| Add an additional offset to the sample output transform. | |
| Statistics | LineStats () |
| Computes statistics for each line in the output image. | |
| Statistics | SampleStats () |
| Computes statistics for samples in the output image. | |
| std::ostream & | dumpState (std::ostream &out) |
| Provides detailed information and statistics for the current transform. | |
| typedef NumericalApproximation::InterpType InterpType |
| SlitherTransform | ( | Cube & | cube, | |
| ControlNet & | cnet, | |||
| InterpType | lInterp = NumericalApproximation::CubicNatural, |
|||
| InterpType | sInterp = NumericalApproximation::CubicNatural | |||
| ) |
Constructor where all the business is taking place.
This constructor accepts a cube to be transformed and the control net file generated after matching it to a reference image. It is assumed that the control net has the reference image identified via the ControlMeasure class.
It computes the interpolations for line and samples from the control net registration data. This interpolation preserves lines whole, shifting them up and/or down and left or right.
| cube | Input cube to be transformed | |
| cnet | Control net that will be used to compute the spline offsets | |
| lInterp | Type of spline to compute for line offsets | |
| sInterp | Type of spline to compute for sample offsets |
Definition at line 35 of file SlitherTransform.cpp.
| virtual ~SlitherTransform | ( | ) | [inline, virtual] |
| int size | ( | ) | const [inline] |
Number of points used in computation of transform.
This method returns the number of row points used in the computation of the spline interpolation fits.
Definition at line 51 of file SlitherTransform.h.
| void setForward | ( | ) | [inline] |
Sets forward transform direction.
This is the normal expected operation. The forward transform direction implies the transform is applied to the search image, not the pattern, or reference, image used to create the control network.
The search image is typically the FROM parameter in co-registration applications.
Definition at line 63 of file SlitherTransform.h.
| void setReverse | ( | ) | [inline] |
Sets reverse transform direction.
The reverse transform direction implies the transform is applied to the pattern, or reference, image, not the search image used to create the control network.
The reference image is the MATCH parameter in co-registration applications.
Definition at line 75 of file SlitherTransform.h.
| int totalPoints | ( | ) | const [inline] |
Total points in control net file.
This method reports to the caller the total number of points in the control net file. This includes ignored points as well that are automatically excluded. Points that do not have exactly 2 measures are excluded as well.
Definition at line 87 of file SlitherTransform.h.
| int numberPointsUsed | ( | ) | const [inline] |
Number of points used from the input control net file.
This method reports to the caller the number of points used when read from the control point file. This count does not include ingored points or bad points.
Definition at line 98 of file SlitherTransform.h.
| int numberBadPoints | ( | ) | const [inline] |
Number of points tossed on input to this class.
This method reports to the caller the number of points excluded when read from the control point file that exceeded a certain cnet line.
Definition at line 108 of file SlitherTransform.h.
| int numberBadRows | ( | ) | const [inline] |
Number of bad rows detected in control net.
This method reports to the caller the number of bad rows detected after merging chip column registrations for each row. This will typically indicate the goodness of fit excluded all the points in that row by constraints imposed by the merging function.
Definition at line 121 of file SlitherTransform.h.
| bool Xform | ( | double & | inSample, | |
| double & | inLine, | |||
| const double | outSample, | |||
| const double | outLine | |||
| ) |
Convert the requested output samp/line to an input samp/line.
Computes the incoming line and sample for the given output line and sample. These coordinates are determined entirely by the interpolations of the control net coregistrations upon instantiation of this object.
| inSample | Returns the input sample coordinate for this outSample, outLine | |
| inLine | Returns the input line coordinate for this outSample, outLine | |
| outSample | Current sample pixel location requested | |
| outLine | Current line location requested |
Definition at line 119 of file SlitherTransform.cpp.
| int OutputSamples | ( | ) | const [inline] |
Determine the number of samples in the output image.
This method returns the number of samples that will result in the image created from this transform. Default behavior is to use the same number of samples as the input image.
Definition at line 136 of file SlitherTransform.h.
| int OutputLines | ( | ) | const [inline] |
Determine the number of lines in the output image.
This method returns the number of lines that will result in the image created from this transform. Default behavior is to use the same number of lines as the input image.
Definition at line 147 of file SlitherTransform.h.
| void addLineOffset | ( | double | lineOffset | ) | [inline] |
Add an additional offset to the line output translation.
This method provides the users of this class to shift the image an additional number of lines than are determined by the control net registration information provides.
This is mostly useful when the registration had an initial starting offset as opposed to the assumption of generally spatially registering images.
Negative values shifts the image down in the output image. Positive values shift the image up.
This method can be called at any time during the processing to change the relative shift. It does not affect the size of the output image, only the placement of the samples.
| lineOffset | Additional offset to shift lines in output image |
Definition at line 169 of file SlitherTransform.h.
| void addSampleOffset | ( | double | sampOffset | ) | [inline] |
Add an additional offset to the sample output transform.
This method provides the users of this class to shift the image an additional number of samples than are determined by the control net registration information provides.
This is mostly useful when the registration had an initial starting offset as opposed to the assumption of generally spatially registering images.
Negative values shifts the image right in the output image. Positive values shift the image left.
This method can be called at any time during the processing to change the relative shift. It does not affect the size of the output image, only the placement of the samples.
| sampOffset | Additional offset to shift samples in output image |
Definition at line 194 of file SlitherTransform.h.
| Statistics LineStats | ( | ) |
Computes statistics for each line in the output image.
This method computes (gathers, really) the statistics as determined via the application of the interpolation from the transform. For every valid line, sample, it accumulates the line offsets as provided via the tranform.
Definition at line 140 of file SlitherTransform.cpp.
| Statistics SampleStats | ( | ) |
Computes statistics for samples in the output image.
This method computes (gathers, really) the statistics as determined via the application of the interpolation from the transform. For every valid line, sample, it accumulates the sample offsets as provided via the tranform.
Definition at line 168 of file SlitherTransform.cpp.
| std::ostream & dumpState | ( | std::ostream & | out | ) |
Provides detailed information and statistics for the current transform.
This method produces a large volume of information pertaining to the computed transform. This information is written to the provided stream and assumes the caller has created a valid stream.
| out | Output stream to write data to |
Definition at line 192 of file SlitherTransform.cpp.