213         return &p_patternChip;
 
  218         return &p_searchChip;
 
  228         if (p_gradientFilterType == 
None) {
 
  229           return &p_patternChip;
 
  232           return &p_gradientPatternChip;
 
  238         if (p_gradientFilterType == 
None) {
 
  239           return &p_searchChip;
 
  242           return &p_gradientSearchChip;
 
  248         return &p_reducedPatternChip;
 
  253         return &p_reducedSearchChip;
 
  258         return &p_reducedFitChip;
 
  281         return p_subpixelAccuracy;
 
  286         return p_reduceFactor;
 
  291         return p_patternValidPercent;
 
  296         return p_subsearchValidPercent;
 
  311         return p_distanceTolerance;
 
  320       void Distance(
double &sampDistance, 
double &lineDistance) {
 
  321         sampDistance = p_sampMovement;
 
  322         lineDistance = p_lineMovement;
 
  334         return p_goodnessOfFit;
 
  337       inline bool IsIdeal(
double fit);
 
  361         return p_minimumPatternZScore;
 
  370       void ZScores(
double &score1, 
double &score2)
 const {
 
  371         score1 = p_zScoreMin;
 
  372         score2 = p_zScoreMax;
 
  404         p_chipSample = sample;
 
  428           Chip &fChip, 
int startSamp, 
int startLine, 
int endSamp, 
int endLine,
 
  429           int bestSamp, 
int bestLine);
 
  432       virtual bool CompareFits(
double fit1, 
double fit2);
 
  443       virtual double IdealFit() 
const = 0;
 
  481       void Match(
Chip &sChip,
 
  488       bool ComputeChipZScore(
Chip &chip);
 
  490       void ApplyGradientFilter(
Chip &chip);
 
  491       void SobelGradient(
Buffer &in, 
double &v);
 
  496       Chip p_gradientSearchChip;                           
 
  497       Chip p_gradientPatternChip;                          
 
  498       Chip p_reducedPatternChip;                           
 
  499       Chip p_reducedSearchChip;                            
 
  500       Chip p_reducedFitChip;                               
 
  502       bool p_subpixelAccuracy;                             
 
  505       int p_totalRegistrations;                            
 
  506       int p_pixelSuccesses;                                
 
  507       int p_subpixelSuccesses;                             
 
  508       int p_patternChipNotEnoughValidDataCount;            
 
  509       int p_patternZScoreNotMetCount;                      
 
  510       int p_fitChipNoDataCount;                            
 
  511       int p_fitChipToleranceNotMetCount;                   
 
  512       int p_surfaceModelNotEnoughValidDataCount;           
 
  513       int p_surfaceModelSolutionInvalidCount;              
 
  514       int p_surfaceModelDistanceInvalidCount;              
 
  519       double p_minimumPatternZScore;                       
 
  520       double p_patternValidPercent;                        
 
  521       double p_subsearchValidPercent;                      
 
  527       double p_goodnessOfFit;                              
 
  531       double p_distanceTolerance;                          
 
  536       double p_sampMovement;                               
 
  537       double p_lineMovement;                               
 
Buffer for reading and writing cube data. 
Definition: Buffer.h:68
 
bool SetSubpixelPosition(Chip &window)
Set the search chip sample and line to subpixel values if possible. 
Definition: AutoReg.cpp:1090
 
Error occured in Adaptive algorithm. 
Definition: AutoReg.h:199
 
Success registering to sub-pixel accuracy. 
Definition: AutoReg.h:191
 
virtual Pvl AlgorithmStatistics(Pvl &pvl)
Provide (adaptive) algorithms a chance to report results. 
Definition: AutoReg.h:471
 
void ZScores(double &score1, double &score2) const 
Return the ZScores of the pattern chip. 
Definition: AutoReg.h:370
 
int ReductionFactor()
Return the reduction factor. 
Definition: AutoReg.h:285
 
Success registering to whole pixel. 
Definition: AutoReg.h:190
 
double DistanceTolerance() const 
Return distance tolerance. 
Definition: AutoReg.h:310
 
void SetChipSample(double sample)
Sets the search chip subpixel sample that matches the pattern tack sample. 
Definition: AutoReg.h:403
 
double Tolerance() const 
Return match algorithm tolerance. 
Definition: AutoReg.h:300
 
void SetSurfaceModelDistanceTolerance(double distance)
Set a distance the surface model solution is allowed to move away from the best whole pixel fit in th...
Definition: AutoReg.cpp:514
 
A small chip of data used for pattern matching. 
Definition: Chip.h:101
 
double WindowSize() const 
Return window size. 
Definition: AutoReg.h:305
 
QString GradientFilterString() const 
Definition: AutoReg.cpp:302
 
PvlGroup RegTemplate()
This function returns the keywords that this object was created from. 
Definition: AutoReg.cpp:1219
 
Chip * RegistrationSearchChip()
Return pointer to search chip used in registration. 
Definition: AutoReg.h:237
 
Not enough valid data in pattern chip. 
Definition: AutoReg.h:192
 
Not enough points to fit a surface model for sub-pixel accuracy. 
Definition: AutoReg.h:195
 
void SetPatternValidPercent(const double percent)
Set the amount of data in the pattern chip that must be valid. 
Definition: AutoReg.cpp:352
 
Chip * RegistrationPatternChip()
Return pointer to pattern chip used in registration. 
Definition: AutoReg.h:227
 
Surface model moves registration more than one pixel. 
Definition: AutoReg.h:197
 
void SetPatternZScoreMinimum(double minimum)
Set the minimum pattern zscore. 
Definition: AutoReg.cpp:407
 
virtual QString AlgorithmName() const =0
Returns the name of the algorithm. 
 
void Parse(Pvl &pvl)
Initialize parameters in the AutoReg class using a PVL specification. 
Definition: AutoReg.cpp:207
 
bool IsIdeal(double fit)
Returns true if the fit parameter is arbitrarily close to the ideal fit value. 
Definition: AutoReg.cpp:1165
 
void SetSurfaceModelWindowSize(int size)
Set the surface model window size. 
Definition: AutoReg.cpp:493
 
AutoReg::RegisterStatus Register()
Walk the pattern chip through the search chip to find the best registration. 
Definition: AutoReg.cpp:600
 
default, no gradient filter 
Definition: AutoReg.h:207
 
Chip * SearchChip()
Return pointer to search chip. 
Definition: AutoReg.h:217
 
virtual AutoReg::RegisterStatus Registration(Chip &sChip, Chip &pChip, Chip &fChip, int startSamp, int startLine, int endSamp, int endLine, int bestSamp, int bestLine)
Performs matching between the pattern and search at both whole-pixel and subpixel levels...
Definition: AutoReg.cpp:822
 
void SetGradientFilterType(const QString &gradientFilterType)
Set the gradient filter type to be applied to the search and pattern chips. 
Definition: AutoReg.cpp:286
 
double SubsearchValidPercent() const 
Return subsearch chip valid percent. 
Definition: AutoReg.h:295
 
AutoReg(Pvl &pvl)
Create AutoReg object. 
Definition: AutoReg.cpp:79
 
double PatternValidPercent() const 
Return pattern chip valid percent. The default value is. 
Definition: AutoReg.h:290
 
void SetGoodnessOfFit(double fit)
Sets the goodness of fit for adaptive algorithms. 
Definition: AutoReg.h:423
 
double CubeSample() const 
Return the search chip cube sample that best matched. 
Definition: AutoReg.h:350
 
double GoodnessOfFit() const 
Return the goodness of fit of the match algorithm. 
Definition: AutoReg.h:333
 
void SetSubPixelAccuracy(bool on)
If the sub-pixel accuracy is enabled, the Register() method will attempt to match the pattern chip to...
Definition: AutoReg.cpp:325
 
virtual double MostLenientTolerance()
Minimum tolerance specific to algorithm. 
Definition: AutoReg.h:380
 
double ChipLine() const 
Return the search chip line that best matched. 
Definition: AutoReg.h:345
 
Contains multiple PvlContainers. 
Definition: PvlGroup.h:57
 
Chip * PatternChip()
Return pointer to pattern chip. 
Definition: AutoReg.h:212
 
bool Success() const 
Return whether the match algorithm succeeded or not. 
Definition: AutoReg.h:328
 
virtual double MatchAlgorithm(Chip &pattern, Chip &subsearch)=0
Given two identically sized chips return a double that indicates how well they match. 
 
void SetReductionFactor(int reductionFactor)
Set the reduction factor used to speed up the pattern matching algorithm. 
Definition: AutoReg.cpp:534
 
bool SubPixelAccuracy()
Return whether this object will attempt to register to whole or sub-pixel accuracy. 
Definition: AutoReg.h:280
 
void SetChipLine(double line)
Sets the search chip subpixel line that matches the pattern tack line. 
Definition: AutoReg.h:414
 
Fit chip did not have any valid data. 
Definition: AutoReg.h:193
 
Chip * ReducedFitChip()
Return pointer to reduced fit chip. 
Definition: AutoReg.h:257
 
void SetTolerance(double tolerance)
Set the tolerance for an acceptable goodness of fit. 
Definition: AutoReg.cpp:429
 
Container for cube-like labels. 
Definition: Pvl.h:135
 
double ChipSample() const 
Return the search chip sample that best matched. 
Definition: AutoReg.h:340
 
Chip Reduce(Chip &chip, int reductionFactor)
This method reduces the given chip by the given reduction factor. 
Definition: AutoReg.cpp:552
 
Chip * ReducedSearchChip()
Return pointer to reduced search chip. 
Definition: AutoReg.h:252
 
Auto Registration class. 
Definition: AutoReg.h:177
 
PvlGroup UpdatedTemplate()
Returns a PvlGroup containing the PvlKeywords of the parameters this object was most recently run wit...
Definition: AutoReg.cpp:1292
 
Sobel gradient filter. 
Definition: AutoReg.h:208
 
virtual double IdealFit() const =0
Returns the ideal (perfect) fit that could be returned by the MatchAlgorithm. 
 
Goodness of fit tolerance not satisfied. 
Definition: AutoReg.h:194
 
void SetChipInterpolator(const QString &interpolator)
Sets the Chip class interpolator type to be used to load pattern and search chips. 
Definition: AutoReg.cpp:453
 
Pvl RegistrationStatistics()
This returns the cumulative registration statistics. 
Definition: AutoReg.cpp:1180
 
RegisterStatus
Enumeration of the Register() method's return status. 
Definition: AutoReg.h:189
 
void Distance(double &sampDistance, double &lineDistance)
Return the distance point moved. 
Definition: AutoReg.h:320
 
PvlObject p_template
AutoRegistration object that created this projection. 
Definition: AutoReg.h:459
 
GradientFilterType
Enumeration of the different types of gradient filters that can be applied to the pattern and search ...
Definition: AutoReg.h:206
 
Chip * FitChip()
Return pointer to fit chip. 
Definition: AutoReg.h:222
 
Could not model surface for sub-pixel accuracy. 
Definition: AutoReg.h:196
 
Pattern data max or min does not pass the z-score test. 
Definition: AutoReg.h:198
 
double MinimumZScore() const 
Return minimumPatternZScore. 
Definition: AutoReg.h:360
 
Contains Pvl Groups and Pvl Objects. 
Definition: PvlObject.h:74
 
double CubeLine() const 
Return the search chip cube line that best matched. 
Definition: AutoReg.h:355
 
void SetSubsearchValidPercent(const double percent)
Set the amount of data in the search chip's subchip that must be valid. 
Definition: AutoReg.cpp:380
 
Chip * ReducedPatternChip()
Return pointer to reduced pattern chip. 
Definition: AutoReg.h:247
 
virtual bool CompareFits(double fit1, double fit2)
This virtual method must return if the 1st fit is equal to or better than the second fit...
Definition: AutoReg.cpp:1155
 
virtual ~AutoReg()
Destroy AutoReg object. 
Definition: AutoReg.cpp:166