35 #include <gsl/gsl_rng.h> 
   73       return (m_gruen->PatternChip());
 
   79       return (m_gruen->SearchChip());
 
   85       return (m_gruen->FitChip());
 
   92                                  const double &minEV, 
const double &maxEV);
 
  106     inline BigInt OffImageErrorCount()
 const { 
return (m_offImage);  }
 
  107     inline BigInt SpiceErrorCount()
 const { 
return (m_spiceErr);  }
 
  120     std::auto_ptr<Gruen> m_gruen;      
 
  124     const gsl_rng_type * T;            
 
  128     bool validate(
const bool &throwError = 
true) 
const;
 
  130     inline Camera &lhCamera() { 
return (*m_lhCube->
camera());   }
 
  131     inline Camera &rhCamera() { 
return (*m_rhCube->
camera());   }
 
  133     Coordinate 
getLineSample(Camera &camera, 
const Coordinate &geom);
 
  134     Coordinate 
getLatLon(Camera &camera, 
const Coordinate &pnt);
 
  136     bool inCube(
const Camera &camera, 
const Coordinate &point) 
const;
 
  139                                   const PointGeometry &right, Gruen *gruen);
 
Pvl RegistrationStatistics()
Return Gruen registration statistics. 
 
SmtkPoint Clone(const SmtkPoint &point, const Coordinate &left)
Clone a point set from a nearby (left image) point and Gruen affine. 
 
SmtkQStackIter FindExpDistEV(SmtkQStack &stack, const double &seedsample, const double &minEV, const double &maxEV)
Find the best eigen value using exponential distribution formula. 
 
Chip * SearchChip() const 
Return search chip. 
 
Define a generic Y/X container. 
 
Camera * camera()
Return a camera associated with the cube. 
 
A small chip of data used for pattern matching. 
 
void setImages(Cube *lhImage, Cube *rhImage)
Assign cubes for matching. 
 
Chip * FitChip() const 
Returns the fit chip. 
 
SmtkPoint Create(const Coordinate &left, const Coordinate &right)
Create a valid, unregistered SmtkPoint. 
 
Define a point set of left, right and geometry at that location. 
 
SmtkMatcher()
Construct default matcher. 
 
Coordinate getLineSample(Camera &camera, const Coordinate &geom)
Compute line,sample from latitude, longitude. 
 
Container for a point and its geometry. 
 
SmtkPoint makeRegisteredPoint(const PointGeometry &left, const PointGeometry &right, Gruen *gruen)
Create an SmtkPoint from Gruen match result. 
 
void setGruenDef(const QString ®def)
Initialize Gruen algorithm with definitions in Pvl file provided. 
 
Chip * PatternChip() const 
Return pattern chip. 
 
Contains multiple PvlContainers. 
 
Coordinate getLatLon(Camera &camera, const Coordinate &pnt)
Compute latitude, longitude from line,sample. 
 
Container for cube-like labels. 
 
Container for affine and radiometric parameters. 
 
SmtkPoint Register(const Coordinate &lpnt, const AffineRadio &affrad=AffineRadio())
This method takes a sample, line from the left-hand image and tries to find the matching point in the...
 
bool inCube(const Camera &camera, const Coordinate &point) const 
Determines if the line/sample is within physical cube boundaries. 
 
SmtkQStackIter FindSmallestEV(SmtkQStack &stack)
Find the smallest eigen value on the given stack. 
 
void setWriteSubsearchChipPattern(const QString &fileptrn="SmtkMatcher")
Set file pattern for output subsearch chips. 
 
PvlGroup RegTemplate()
Return Gruen template parameters. 
 
Workhorse of stereo matcher. 
 
~SmtkMatcher()
Free random number generator in destructor. 
 
bool validate(const bool &throwError=true) const 
Validates the state of the Camera and Gruen algoritm. 
 
void randomNumberSetup()
Initialize the random number generator. 
 
Container for SMTK match points. 
 
bool isValid(const Coordinate &pnt)
Determine if a point is valid in both left/right images. 
 
IO Handler for Isis Cubes.