USGS

Isis 3.0 Object Programmers' Reference

Home

Isis::GruenResult Struct Reference

#include <GruenResult.h>

Collaboration diagram for Isis::GruenResult:

Collaboration graph
[legend]
List of all members.

Detailed Description

GruenResults contains data derived from the Gruen registration process.

This struct container maintains a sizeable volume of data produced by the Gruen class during registration of a point. It is the return type of the interactive registration algorithm.

Author:
Kris Becker

Definition at line 46 of file GruenResult.h.

Public Types

typedef GSL::GSLUtility::GSLVector GSLVector
typedef GSL::GSLUtility::GSLMatrix GSLMatrix
 NCONSTR = 8
enum  { NCONSTR = 8 }

Public Member Functions

 GruenResult ()
 Default constructor for GruenResult.
 ~GruenResult ()
 Destructor.
bool IsGood () const
 Returns state of solution - final or iterative.
int Iterations () const
 Returns the number of iterations - final or iteration.
int Points () const
 Number of points used in current iteration.
const GSLVectorAlpha () const
 Returns const reference to Gruen Affine/Gain/Shift parameters.
double Gain () const
 Reterns the value of the current state of radiometric gain.
void setGain (const double gain)
 Sets initial radiometric gain state.
double Shift () const
 Returns the value of the current state of radiometric shift.
void setShift (const double shift)
 Sets initial value of radiometric shift state.
double Residuals () const
 Returns the residual pixel error of the current iteration.
double Variance () const
 Returns the variance of the pixel error of the current iteration.
double EigenValue1 () const
 Returns the first (largest) eigen value from the Jacobi solution.
double EigenValue2 () const
 Returns the second (smaller) eigen value from the Jacobi solution.
double Eigen () const
 Returns the eigen value (magnitude) for the Jacobi solution.
void setStartImage (const double &ssamp, const double &sline)
 Store starting sample, line pixel location in image.
void setFinalImage (const double &fsamp, const double &fline)
 Store final starting sample, line pixel location in image.
double SampleError () const
 Return sample error in solution.
double LineError () const
 Return line error in solution.
double ErrorMagnitude () const
 Return the pixel offset error.
double SampleUncertainty () const
 Sample shift error as determined by Jacobi solution.
double LineUncertainty () const
 Line shift error as determined by Jacobi solution.
double Uncertainty () const
 Magnitude of pixel shift error from Jacobi solution.
Affine getChipTransform () const
 Get the final Chip Affine transform for the solution.
void setChipTransform (const Affine &affine)
 Set the final Chip Affine tranform found in the solution.
void update (const GruenResult &result)
 Accumulation of Gruen adaptive interations results.
void setErrorAnalysis (const GruenResult &result)
 Sets final error analysis once the solution converges.
void init ()
 Initialization of this structure.

Static Public Member Functions

static int Constraints ()
 Returns the number of paramters/degrees of freedom.

Public Attributes

bool isGood
int gerrno
std::string gerrmsg
int nIters
BigInt npts
double resid
GSLMatrix ata
GSLVector atl
GSLMatrix kmat
GSLMatrix skmat
GSLVector alpha
GSLVector eigen
 sevals in original code
Affine _chipTransform
 Final chip transfrom.
double _startLine
double _startSamp
double _finalLine
double _finalSamp


Constructor & Destructor Documentation

Isis::GruenResult::GruenResult (  )  [inline]

Default constructor for GruenResult.

Definition at line 54 of file GruenResult.h.

References init().

Isis::GruenResult::~GruenResult (  )  [inline]

Destructor.

Definition at line 56 of file GruenResult.h.


Member Function Documentation

const GSLVector& Isis::GruenResult::Alpha (  )  const [inline]

Returns const reference to Gruen Affine/Gain/Shift parameters.

Definition at line 69 of file GruenResult.h.

References alpha.

Referenced by Isis::Gruen::AdaptiveRegistration(), and Isis::Gruen::UpdateAffine().

static int Isis::GruenResult::Constraints (  )  [inline, static]

Returns the number of paramters/degrees of freedom.

Definition at line 62 of file GruenResult.h.

Referenced by Isis::Gruen::AdaptiveRegistration(), and Variance().

double Isis::GruenResult::Eigen (  )  const [inline]

Returns the eigen value (magnitude) for the Jacobi solution.

Definition at line 93 of file GruenResult.h.

References eigen.

Referenced by Isis::Gruen::AdaptiveRegistration(), Isis::Gruen::MatchAlgorithm(), and Isis::Gruen::TestConstraints().

double Isis::GruenResult::EigenValue1 (  )  const [inline]

Returns the first (largest) eigen value from the Jacobi solution.

Definition at line 89 of file GruenResult.h.

References eigen.

double Isis::GruenResult::EigenValue2 (  )  const [inline]

Returns the second (smaller) eigen value from the Jacobi solution.

Definition at line 91 of file GruenResult.h.

References eigen.

double Isis::GruenResult::ErrorMagnitude (  )  const [inline]

Return the pixel offset error.

Definition at line 118 of file GruenResult.h.

References LineError(), and SampleError().

Referenced by Isis::Gruen::CheckAffineTolerance().

double Isis::GruenResult::Gain (  )  const [inline]

Reterns the value of the current state of radiometric gain.

Definition at line 72 of file GruenResult.h.

References alpha.

Referenced by Isis::Gruen::Gain(), and Isis::Gruen::TestConstraints().

Affine Isis::GruenResult::getChipTransform (  )  const [inline]

Get the final Chip Affine transform for the solution.

Definition at line 134 of file GruenResult.h.

References _chipTransform.

void Isis::GruenResult::init (  )  [inline]

Initialization of this structure.

This sets up variables used in the Gruen algorithm. It is expected that these parameters be created for immediate use directly in the Gruen class so proper sizes and initial values are carefully maintained.

Definition at line 220 of file GruenResult.h.

References _chipTransform, _finalLine, _finalSamp, _startLine, _startSamp, alpha, ata, atl, eigen, gerrmsg, gerrno, isGood, kmat, nIters, npts, resid, and skmat.

Referenced by GruenResult().

bool Isis::GruenResult::IsGood (  )  const [inline]

Returns state of solution - final or iterative.

Definition at line 60 of file GruenResult.h.

References isGood.

Referenced by Isis::Gruen::AdaptiveRegistration(), Isis::Gruen::IsGood(), Isis::Gruen::Status(), and Isis::Gruen::TestConstraints().

int Isis::GruenResult::Iterations (  )  const [inline]

Returns the number of iterations - final or iteration.

Definition at line 64 of file GruenResult.h.

References nIters.

Referenced by Isis::Gruen::TestConstraints().

double Isis::GruenResult::LineError (  )  const [inline]

Return line error in solution.

Definition at line 115 of file GruenResult.h.

References _finalLine, and _startLine.

Referenced by ErrorMagnitude().

double Isis::GruenResult::LineUncertainty (  )  const [inline]

Line shift error as determined by Jacobi solution.

Definition at line 125 of file GruenResult.h.

References skmat.

Referenced by Uncertainty().

int Isis::GruenResult::Points (  )  const [inline]

Number of points used in current iteration.

Definition at line 66 of file GruenResult.h.

References npts.

Referenced by Variance().

double Isis::GruenResult::Residuals (  )  const [inline]

Returns the residual pixel error of the current iteration.

Definition at line 82 of file GruenResult.h.

References resid.

Referenced by Variance().

double Isis::GruenResult::SampleError (  )  const [inline]

Return sample error in solution.

Definition at line 112 of file GruenResult.h.

References _finalSamp, and _startSamp.

Referenced by ErrorMagnitude().

double Isis::GruenResult::SampleUncertainty (  )  const [inline]

Sample shift error as determined by Jacobi solution.

Definition at line 123 of file GruenResult.h.

References skmat.

Referenced by Uncertainty().

void Isis::GruenResult::setChipTransform ( const Affine affine  )  [inline]

Set the final Chip Affine tranform found in the solution.

Definition at line 137 of file GruenResult.h.

References _chipTransform.

Referenced by Isis::Gruen::AdaptiveRegistration().

void Isis::GruenResult::setErrorAnalysis ( const GruenResult result  )  [inline]

Sets final error analysis once the solution converges.

This method makes the appropriate updates to an accumlated Gruen result. This step is typically recording the error analysis (which is actually done at each iteration). These results are used to further apply constraints in the determination of a "good" Gruen solution.

Parameters:
result Final iterative Gruen result with error analysis data

Definition at line 178 of file GruenResult.h.

References ata, atl, eigen, gerrmsg, gerrno, isGood, kmat, nIters, npts, resid, and skmat.

Referenced by Isis::Gruen::ErrorAnalysis().

void Isis::GruenResult::setFinalImage ( const double &  fsamp,
const double &  fline 
) [inline]

Store final starting sample, line pixel location in image.

Definition at line 105 of file GruenResult.h.

References _finalLine, and _finalSamp.

Referenced by Isis::Gruen::AdaptiveRegistration().

void Isis::GruenResult::setGain ( const double  gain  )  [inline]

Sets initial radiometric gain state.

Definition at line 74 of file GruenResult.h.

References alpha.

Referenced by Isis::Gruen::reset().

void Isis::GruenResult::setShift ( const double  shift  )  [inline]

Sets initial value of radiometric shift state.

Definition at line 79 of file GruenResult.h.

References alpha.

Referenced by Isis::Gruen::reset().

void Isis::GruenResult::setStartImage ( const double &  ssamp,
const double &  sline 
) [inline]

Store starting sample, line pixel location in image.

Definition at line 98 of file GruenResult.h.

References _startLine, and _startSamp.

Referenced by Isis::Gruen::AdaptiveRegistration().

double Isis::GruenResult::Shift (  )  const [inline]

Returns the value of the current state of radiometric shift.

Definition at line 77 of file GruenResult.h.

References alpha.

Referenced by Isis::Gruen::Shift(), and Isis::Gruen::TestConstraints().

double Isis::GruenResult::Uncertainty (  )  const [inline]

Magnitude of pixel shift error from Jacobi solution.

Definition at line 127 of file GruenResult.h.

References LineUncertainty(), and SampleUncertainty().

void Isis::GruenResult::update ( const GruenResult result  )  [inline]

Accumulation of Gruen adaptive interations results.

The Gruen algorithm iterates over a set of Chips to determine the best fitting adaptive solution. At the end of each interation, the solution must be accumlated to comprise the complete result. This method makes the necessary updates to a complete result from a single iteration.

Parameters:
result Single iteration of a Gruen result

Definition at line 151 of file GruenResult.h.

References alpha, ata, atl, eigen, gerrmsg, gerrno, isGood, kmat, nIters, npts, resid, and skmat.

Referenced by Isis::Gruen::MatchAlgorithm(), and Isis::Gruen::UpdateAffine().

double Isis::GruenResult::Variance (  )  const [inline]

Returns the variance of the pixel error of the current iteration.

Definition at line 84 of file GruenResult.h.

References Constraints(), Points(), and Residuals().

Referenced by Isis::Gruen::solve().


Member Data Documentation

Affine Isis::GruenResult::_chipTransform

Final chip transfrom.

Definition at line 209 of file GruenResult.h.

Referenced by getChipTransform(), init(), and setChipTransform().

GSLVector Isis::GruenResult::eigen

sevals in original code

Definition at line 207 of file GruenResult.h.

Referenced by Eigen(), EigenValue1(), EigenValue2(), init(), setErrorAnalysis(), Isis::Gruen::solve(), and update().


The documentation for this struct was generated from the following file: