|
Isis 3.0 Object Programmers' Reference |
Home |


Definition at line 120 of file AutoReg.h.
Public Types | |
| Success | |
| Success. | |
| PatternChipNotEnoughValidData | |
| Not enough valid data in pattern chip. | |
| FitChipNoData | |
| Fit chip did not have any valid data. | |
| FitChipToleranceNotMet | |
| Goodness of fit tolerance not satisfied. | |
| SurfaceModelNotEnoughValidData | |
| Not enough points to fit a surface model for sub-pixel accuracy. | |
| SurfaceModelSolutionInvalid | |
| Could not model surface for sub-pixel accuracy. | |
| SurfaceModelDistanceInvalid | |
| Surface model moves registration more than one pixel. | |
| PatternZScoreNotMet | |
| Pattern data max or min does not pass the z-score test. | |
| SurfaceModelEccentricityRatioNotMet | |
| Ellipse eccentricity of the surface model not satisfied. | |
| AdaptiveAlgorithmFailed | |
| Error occured in Adaptive algorithm. | |
| enum | RegisterStatus { Success, PatternChipNotEnoughValidData, FitChipNoData, FitChipToleranceNotMet, SurfaceModelNotEnoughValidData, SurfaceModelSolutionInvalid, SurfaceModelDistanceInvalid, PatternZScoreNotMet, SurfaceModelEccentricityRatioNotMet, AdaptiveAlgorithmFailed } |
Public Member Functions | |
| AutoReg (Pvl &pvl) | |
| Create AutoReg object. | |
| virtual | ~AutoReg () |
| Destroy AutoReg object. | |
| Chip * | PatternChip () |
| Return pointer to pattern chip. | |
| Chip * | SearchChip () |
| Return pointer to search chip. | |
| Chip * | FitChip () |
| Return pointer to search chip. | |
| Chip * | ReducedPatternChip () |
| Return pointer to reduced pattern chip. | |
| Chip * | ReducedSearchChip () |
| Return pointer to reduced search chip. | |
| Chip * | ReducedFitChip () |
| Return pointer to reduced fix chip. | |
| void | SetSubPixelAccuracy (bool on) |
| If the sub-accuracy is enable the Register() method will attempt to match the pattern chip to the search chip at sub-pixel accuracy, otherwise it will be registered at whole pixel accuracy. | |
| void | SetPatternValidPercent (const double percent) |
| Set the amount of data in the pattern chip that must be valid. | |
| void | SetTolerance (double tolerance) |
| Set the tolerance for an acceptable goodness of fit. | |
| void | SetSurfaceModelWindowSize (int size) |
| Set the surface model window size. | |
| void | SetSurfaceModelDistanceTolerance (double distance) |
| Set a distance the surface model solution is allow to move away from the best whole pixel fit in the fit chip. | |
| void | SetReductionFactor (int reductionFactor) |
| Set the reduction factor used to speed up the pattern matching algorithm. | |
| void | SetPatternZScoreMinimum (double minimum) |
| Set the minimum pattern zscore. | |
| void | SetSurfaceModelEccentricityRatio (double ratioTolerance) |
| A 1:1 ratio represents a perfect circle. | |
| double | PatternValidPercent () const |
| Return pattern valid percent. | |
| double | Tolerance () const |
| Return match algorithm tolerance. | |
| AutoReg::RegisterStatus | Register () |
| Walk the pattern chip through the search chip to find the best registration. | |
| double | GoodnessOfFit () const |
| Return the goodness of fit of the match algorithm. | |
| bool | IsIdeal (double fit) |
| double | ChipSample () const |
| Return the search chip sample that best matched. | |
| double | ChipLine () const |
| Return the search chip line that best matched. | |
| double | CubeSample () const |
| Return the search chip cube sample that best matched. | |
| double | CubeLine () const |
| Return the search chip cube line that best matched. | |
| void | ZScores (double &score1, double &score2) const |
| Return the ZScores of the pattern chip. | |
| Pvl | RegistrationStatistics () |
| This returns the cumulative registration statistics. | |
| virtual bool | IsAdaptive () |
| Return if the algorithm is an adaptive pattern matching technique. | |
| virtual std::string | AlgorithmName () const =0 |
| Returns the name of the algorithm. | |
| PvlGroup | RegTemplate () |
| This function returns the keywords that this object was created from. | |
Protected Member Functions | |
| void | SetChipSample (double sample) |
| Sets the search chip subpixel sample that matches the pattern tack sample. | |
| void | SetChipLine (double line) |
| Sets the search chip subpixel line that matches the pattern tack line. | |
| void | SetGoodnessOfFit (double fit) |
| Sets the goodness of fit for adaptive algorithms. | |
| virtual AutoReg::RegisterStatus | AdaptiveRegistration (Chip &sChip, Chip &pChip, Chip &fChip, int startSamp, int startLine, int endSamp, int endLine, int bestSamp, int bestLine) |
| This virtual method must be written for adaptive pattern matching algorithms. | |
| void | Parse (Pvl &pvl) |
| Initialize parameters in the AutoReg class using a PVL specification. | |
| 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. | |
| bool | ModelSurface (std::vector< double > &x, std::vector< double > &y, std::vector< double > &z) |
| We will model a 2-d surface as:. | |
| Chip | Reduce (Chip &chip, int reductionFactor) |
| This method reduces the given chip by the given reduction factor. | |
| virtual double | IdealFit () const =0 |
| Returns the ideal (perfect) fit that could be returned by the MatchAlgorithm. | |
| virtual double | MatchAlgorithm (Chip &pattern, Chip &subsearch)=0 |
| Given two identically sized chips return a double that indicates how well they match. | |
| virtual Pvl | AlgorithmStatistics (Pvl &pvl) |
| Provide (adaptive) algorithms a chance to report results. | |
Protected Attributes | |
| PvlObject | p_template |
| AutoRegistration object that created this projection. | |
Private Member Functions | |
| AutoReg (const AutoReg &original) | |
| void | Match (Chip &sChip, Chip &pChip, Chip &fChip, int ss, int es, int sl, int el) |
| Here we walk from starting samp (ss) to end samp(es) and start line (sl) to end line (el), and compare the pattern chip (pChip) against the search chip (sChip) to find the best line/sample. | |
| bool | ComputeChipZScore (Chip &chip) |
| void | Init () |
Private Attributes | |
| Chip | p_patternChip |
| Chip | p_searchChip |
| Chip | p_fitChip |
| Chip | p_reducedPatternChip |
| Chip | p_reducedSearchChip |
| Chip | p_reducedFitChip |
| bool | p_subpixelAccuracy |
| int | p_Total |
| int | p_Success |
| int | p_PatternChipNotEnoughValidData |
| int | p_PatternZScoreNotMet |
| int | p_FitChipNoData |
| int | p_FitChipToleranceNotMet |
| int | p_SurfaceModelNotEnoughValidData |
| int | p_SurfaceModelSolutionInvalid |
| int | p_SurfaceModelDistanceInvalid |
| int | p_SurfaceModelEccentricityRatioNotMet |
| double | p_ZScore1 |
| double | p_ZScore2 |
| double | p_minimumPatternZScore |
| double | p_patternValidPercent |
| double | p_chipSample |
| double | p_chipLine |
| double | p_cubeSample |
| double | p_cubeLine |
| double | p_goodnessOfFit |
| double | p_tolerance |
| int | p_windowSize |
| double | p_distanceTolerance |
| double | p_surfaceModelEccentricityTolerance |
| double | p_surfaceModelEccentricity |
| double | p_bestFit |
| int | p_bestSamp |
| int | p_bestLine |
| int | p_reduceFactor |
| Isis::AutoReg::RegisterStatus | p_status |
| Isis::AutoReg::AutoReg | ( | Pvl & | pvl | ) |
Create AutoReg object.
Because this is a pure virtual class you can not create an AutoReg class directly. Instead, see the AutoRegFactory class.
| pvl | A pvl object containing a valid AutoReg specification |
Definition at line 22 of file AutoReg.cpp.
References Init(), Isis::Null, p_fitChip, p_FitChipNoData, p_FitChipToleranceNotMet, p_patternChip, p_PatternChipNotEnoughValidData, p_PatternZScoreNotMet, p_reducedFitChip, p_reducedPatternChip, p_reducedSearchChip, p_searchChip, p_Success, p_SurfaceModelDistanceInvalid, p_SurfaceModelEccentricityRatioNotMet, p_SurfaceModelNotEnoughValidData, p_SurfaceModelSolutionInvalid, p_template, p_Total, Parse(), pvl(), SetPatternValidPercent(), SetPatternZScoreMinimum(), SetReductionFactor(), Isis::Chip::SetSize(), SetSubPixelAccuracy(), SetSurfaceModelDistanceTolerance(), SetSurfaceModelEccentricityRatio(), SetSurfaceModelWindowSize(), and SetTolerance().
| Isis::AutoReg::~AutoReg | ( | ) | [virtual] |
| AutoReg::RegisterStatus Isis::AutoReg::AdaptiveRegistration | ( | Chip & | sChip, | |
| Chip & | pChip, | |||
| Chip & | fChip, | |||
| int | startSamp, | |||
| int | startLine, | |||
| int | endSamp, | |||
| int | endLine, | |||
| int | bestSamp, | |||
| int | bestLine | |||
| ) | [protected, virtual] |
This virtual method must be written for adaptive pattern matching algorithms.
Adaptive algorithms are assumed to compute the registration to sub-pixel accuracy and stay within the defined window. A status should be returned indicating success for subpixel computation or failure and the reason why via the enumeration, RegisterStatus. If the status is returned is success, the programmer needs to set the sub-pixel chip coordinates using the protected methods SetChipSample(), SetChipLine().
For those algorithms that need it, the best sample and line in the search chip is provided. This is either the initial tack sample and line in the search chip or it is the centered sample and line after the reduction algorithm is applied (KJB, 2009-08-26).
| startSamp | Defines the starting sample of the window the adaptive algorithm should remain inside this boundary. | |
| startLine | Defines the starting line of the window the adaptive algorithm should remain inside this boundary. | |
| endSamp | Defines the ending sample of the window the adaptive algorithm should remain inside this boundary. | |
| endLine | Defines the ending line of the window the adaptive algorithm should remain inside this boundary. |
Reimplemented in Isis::Gruen.
Definition at line 981 of file AutoReg.cpp.
References _FILEINFO_, Isis::iException::Message(), and Success.
Referenced by Register().
| virtual std::string Isis::AutoReg::AlgorithmName | ( | ) | const [pure virtual] |
Returns the name of the algorithm.
Implemented in Isis::AdaptiveGruen, Isis::Gruen, Isis::MaximumCorrelation, and Isis::MinimumDifference.
Provide (adaptive) algorithms a chance to report results.
Provide Adaptive objects the opportunity to report behavior. It is called at the final step prior to program termination.
| pvl | Pvl structure to add report to |
Reimplemented in Isis::Gruen.
Definition at line 296 of file AutoReg.h.
References pvl().
Referenced by RegistrationStatistics().
| double Isis::AutoReg::ChipLine | ( | ) | const [inline] |
Return the search chip line that best matched.
Definition at line 183 of file AutoReg.h.
References p_chipLine.
| double Isis::AutoReg::ChipSample | ( | ) | const [inline] |
Return the search chip sample that best matched.
Definition at line 180 of file AutoReg.h.
References p_chipSample.
| bool Isis::AutoReg::CompareFits | ( | double | fit1, | |
| double | fit2 | |||
| ) | [protected, virtual] |
This virtual method must return if the 1st fit is equal to or better than the second fit.
| fit1 | 1st goodness of fit | |
| fit2 | 2nd goodness of fit |
Reimplemented in Isis::Gruen, Isis::MaximumCorrelation, and Isis::MinimumDifference.
Definition at line 865 of file AutoReg.cpp.
References IdealFit().
Referenced by Match(), and Register().
| bool Isis::AutoReg::ComputeChipZScore | ( | Chip & | chip | ) | [private] |
| chip |
Definition at line 642 of file AutoReg.cpp.
References Isis::Statistics::AddData(), Isis::Chip::GetValue(), Isis::Chip::Lines(), Isis::Statistics::Maximum(), Isis::Statistics::Minimum(), p_minimumPatternZScore, p_ZScore1, p_ZScore2, Isis::Chip::Samples(), and Isis::Statistics::ZScore().
Referenced by Register().
| double Isis::AutoReg::CubeLine | ( | ) | const [inline] |
Return the search chip cube line that best matched.
Definition at line 189 of file AutoReg.h.
References p_cubeLine.
Referenced by Qisis::ControlPointEdit::registerPoint().
| double Isis::AutoReg::CubeSample | ( | ) | const [inline] |
Return the search chip cube sample that best matched.
Definition at line 186 of file AutoReg.h.
References p_cubeSample.
Referenced by Qisis::ControlPointEdit::registerPoint().
| Chip* Isis::AutoReg::FitChip | ( | ) | [inline] |
Return pointer to search chip.
Definition at line 146 of file AutoReg.h.
References p_fitChip.
Referenced by Qisis::ControlPointEdit::saveChips().
| double Isis::AutoReg::GoodnessOfFit | ( | ) | const [inline] |
Return the goodness of fit of the match algorithm.
Definition at line 175 of file AutoReg.h.
References p_goodnessOfFit.
Referenced by Qisis::ControlPointEdit::registerPoint().
| virtual double Isis::AutoReg::IdealFit | ( | ) | const [protected, pure virtual] |
Returns the ideal (perfect) fit that could be returned by the MatchAlgorithm.
Implemented in Isis::Gruen, Isis::MaximumCorrelation, and Isis::MinimumDifference.
Referenced by CompareFits(), and IsIdeal().
| virtual bool Isis::AutoReg::IsAdaptive | ( | ) | [inline, virtual] |
Return if the algorithm is an adaptive pattern matching technique.
Reimplemented in Isis::AdaptiveGruen, and Isis::Gruen.
Definition at line 208 of file AutoReg.h.
Referenced by Register().
| void Isis::AutoReg::Match | ( | Chip & | sChip, | |
| Chip & | pChip, | |||
| Chip & | fChip, | |||
| int | ss, | |||
| int | es, | |||
| int | sl, | |||
| int | el | |||
| ) | [private] |
Here we walk from starting samp (ss) to end samp(es) and start line (sl) to end line (el), and compare the pattern chip (pChip) against the search chip (sChip) to find the best line/sample.
| sChip | ||
| pChip | ||
| ss | ||
| es | ||
| sl | ||
| el |
Definition at line 680 of file AutoReg.cpp.
References _FILEINFO_, CompareFits(), Isis::Chip::Extract(), line, Isis::Chip::Lines(), MatchAlgorithm(), Isis::iException::Message(), Isis::Null, p_bestFit, p_bestLine, p_bestSamp, p_patternValidPercent, Isis::Chip::Samples(), Isis::Chip::SetSize(), and Isis::Chip::SetValue().
Referenced by Register().
| virtual double Isis::AutoReg::MatchAlgorithm | ( | Chip & | pattern, | |
| Chip & | subsearch | |||
| ) | [protected, pure virtual] |
Given two identically sized chips return a double that indicates how well they match.
For example, a correlation match algorithm would return a correlation coefficient ranging from -1 to 1.
| pattern | ||
| subsearch |
Implemented in Isis::Gruen, Isis::MaximumCorrelation, and Isis::MinimumDifference.
Referenced by Match().
| bool Isis::AutoReg::ModelSurface | ( | std::vector< double > & | x, | |
| std::vector< double > & | y, | |||
| std::vector< double > & | z | |||
| ) | [protected] |
We will model a 2-d surface as:.
z = a + b*x + c*y + d*x**2 + e*x*y + f*y**2
Then the partial derivatives are two lines:
dz/dx = b + 2dx + ey dz/dy = c + ex + 2fy
We will have a local min/max where dz/dx and dz/dy = 0. Solve using that condition using linear algebra yields:
xlocal = (ce - 2bf) / (4df - ee) ylocal = (be - 2cd) / (4df - ee)
These will be stored in p_chipSample and p_chipLine respectively.
| x | vector of x (sample) values | |
| y | vector of y (line) values | |
| z | vector of z (goodness-of-fit) values |
Definition at line 745 of file AutoReg.cpp.
References a, Isis::LeastSquares::AddKnown(), b, c, Isis::BasisFunction::Coefficient(), d, delta, Isis::Matrix::Determinant(), e, Isis::LeastSquares::Evaluate(), p_chipLine, p_chipSample, p_goodnessOfFit, p_status, p_surfaceModelEccentricity, p_SurfaceModelEccentricityRatioNotMet, p_surfaceModelEccentricityTolerance, p_SurfaceModelSolutionInvalid, Isis::LeastSquares::Solve(), SurfaceModelEccentricityRatioNotMet, and SurfaceModelSolutionInvalid.
Referenced by Register().
| void Isis::AutoReg::Parse | ( | Pvl & | pvl | ) | [protected] |
Initialize parameters in the AutoReg class using a PVL specification.
An example of the PVL required for this is:
Object = AutoRegistration
Group = Algorithm
Name = MaximumCorrelation
Tolerance = 0.7
EndGroup
Group = PatternChip
Samples = 21
Lines = 21
EndGroup
Group = SearchChip
Samples = 51
Lines = 51
EndGroup
EndObject
There are many other options that can be set via the pvl and are described in other documentation (see below).
| pvl | The pvl object containing the specification |
Definition at line 136 of file AutoReg.cpp.
References _FILEINFO_, e, Isis::PvlContainer::Filename(), Isis::PvlObject::FindGroup(), Isis::PvlObject::HasGroup(), Isis::PvlContainer::HasKeyword(), maximum, Isis::iException::Message(), minimum, PatternChip(), pvl(), SearchChip(), SetPatternValidPercent(), SetPatternZScoreMinimum(), SetReductionFactor(), Isis::Chip::SetSize(), SetSubPixelAccuracy(), SetSurfaceModelDistanceTolerance(), SetSurfaceModelEccentricityRatio(), SetSurfaceModelWindowSize(), SetTolerance(), Isis::Chip::SetValidRange(), Isis::PvlObject::Traverse, Isis::ValidMaximum, and Isis::ValidMinimum.
Referenced by AutoReg().
| Chip* Isis::AutoReg::PatternChip | ( | ) | [inline] |
Return pointer to pattern chip.
Definition at line 140 of file AutoReg.h.
References p_patternChip.
Referenced by Parse(), Qisis::ControlPointEdit::registerPoint(), and Qisis::ControlPointEdit::saveChips().
| double Isis::AutoReg::PatternValidPercent | ( | ) | const [inline] |
Return pattern valid percent.
Definition at line 167 of file AutoReg.h.
References p_patternValidPercent.
Referenced by Isis::Gruen::MinValidPoints().
This method reduces the given chip by the given reduction factor.
Used to speed up the match algorithm.
| reductionFactor |
Definition at line 348 of file AutoReg.cpp.
References Isis::Statistics::AddData(), Isis::Statistics::Average(), Isis::Chip::GetValue(), line, Isis::Chip::Lines(), Isis::Null, Isis::Statistics::Reset(), sample, Isis::Chip::Samples(), Isis::Chip::SetValue(), and stats.
Referenced by Register().
| Chip* Isis::AutoReg::ReducedFitChip | ( | ) | [inline] |
Return pointer to reduced fix chip.
Definition at line 155 of file AutoReg.h.
References p_reducedFitChip.
| Chip* Isis::AutoReg::ReducedPatternChip | ( | ) | [inline] |
Return pointer to reduced pattern chip.
Definition at line 149 of file AutoReg.h.
References p_reducedPatternChip.
| Chip* Isis::AutoReg::ReducedSearchChip | ( | ) | [inline] |
Return pointer to reduced search chip.
Definition at line 152 of file AutoReg.h.
References p_reducedSearchChip.
| AutoReg::RegisterStatus Isis::AutoReg::Register | ( | ) |
Walk the pattern chip through the search chip to find the best registration.
Definition at line 392 of file AutoReg.cpp.
References _FILEINFO_, AdaptiveRegistration(), CompareFits(), ComputeChipZScore(), Isis::Chip::CubeLine(), Isis::Chip::CubeSample(), FitChipNoData, FitChipToleranceNotMet, Isis::Chip::GetValue(), Init(), IsAdaptive(), IsIdeal(), Isis::Chip::IsValid(), line, Isis::Chip::Lines(), Match(), Isis::iException::Message(), ModelSurface(), Isis::Null, p_bestFit, p_bestLine, p_bestSamp, p_chipLine, p_chipSample, p_cubeLine, p_cubeSample, p_distanceTolerance, p_fitChip, p_FitChipNoData, p_FitChipToleranceNotMet, p_goodnessOfFit, p_patternChip, p_PatternChipNotEnoughValidData, p_patternValidPercent, p_PatternZScoreNotMet, p_reducedFitChip, p_reducedPatternChip, p_reducedSearchChip, p_reduceFactor, p_searchChip, p_status, p_subpixelAccuracy, p_Success, p_SurfaceModelDistanceInvalid, p_SurfaceModelNotEnoughValidData, p_Total, p_windowSize, PatternChipNotEnoughValidData, PatternZScoreNotMet, Reduce(), Isis::Chip::Samples(), Isis::Chip::SetChipPosition(), Isis::Chip::SetSize(), Isis::Chip::SetValue(), sl, ss, Success, SurfaceModelDistanceInvalid, SurfaceModelNotEnoughValidData, Isis::Chip::TackLine(), Isis::Chip::TackSample(), and Tolerance().
Referenced by Qisis::ControlPointEdit::registerPoint().
| Pvl Isis::AutoReg::RegistrationStatistics | ( | ) |
This returns the cumulative registration statistics.
That is, the Register() method accumulates statistics regard the errors each time is called. Invoking this method returns a PVL summary of those statisitics
Definition at line 920 of file AutoReg.cpp.
References AlgorithmStatistics(), p_FitChipNoData, p_FitChipToleranceNotMet, p_PatternChipNotEnoughValidData, p_PatternZScoreNotMet, p_Success, p_SurfaceModelDistanceInvalid, p_SurfaceModelEccentricityRatioNotMet, p_SurfaceModelNotEnoughValidData, p_SurfaceModelSolutionInvalid, p_Total, pvl(), and stats.
| PvlGroup Isis::AutoReg::RegTemplate | ( | ) |
This function returns the keywords that this object was created from.
Definition at line 1002 of file AutoReg.cpp.
References Isis::PvlObject::FindGroup(), Isis::PvlObject::HasGroup(), Isis::PvlContainer::HasKeyword(), p_template, SetPatternValidPercent(), and Isis::PvlObject::Traverse.
| Chip* Isis::AutoReg::SearchChip | ( | ) | [inline] |
Return pointer to search chip.
Definition at line 143 of file AutoReg.h.
References p_searchChip.
Referenced by Parse(), Qisis::ControlPointEdit::registerPoint(), and Qisis::ControlPointEdit::saveChips().
| void Isis::AutoReg::SetChipLine | ( | double | line | ) | [inline, protected] |
Sets the search chip subpixel line that matches the pattern tack line.
| line |
Definition at line 237 of file AutoReg.h.
References p_chipLine.
Referenced by Isis::Gruen::AdaptiveRegistration().
| void Isis::AutoReg::SetChipSample | ( | double | sample | ) | [inline, protected] |
Sets the search chip subpixel sample that matches the pattern tack sample.
| sample |
Definition at line 228 of file AutoReg.h.
References p_chipSample.
Referenced by Isis::Gruen::AdaptiveRegistration().
| void Isis::AutoReg::SetGoodnessOfFit | ( | double | fit | ) | [inline, protected] |
Sets the goodness of fit for adaptive algorithms.
| Fit | Fit value to set |
Definition at line 244 of file AutoReg.h.
References p_bestFit.
Referenced by Isis::Gruen::AdaptiveRegistration().
| void Isis::AutoReg::SetPatternValidPercent | ( | const double | percent | ) |
Set the amount of data in the pattern chip that must be valid.
For example, a 21x21 pattern chip has 441 pixels. If percent is 75 then at least 330 pixels pairs must be valid in order for a comparision between the pattern and search sub-region to occur. That is, both the pattern pixel and search pixel must be valid to be counted. Pixels are considered valid based on the min/max range specified on each of the Chips (see Chip::SetValidRange method).
If the pattern chip reduction option is used this percentage will apply to all reduced patterns. Additionally, the pattern sampling effects the pixel count. For example if pattern sampling is 50% then only 220 pixels in the 21x21 pattern are considered so 165 must be valid.
| percent | Percentage of valid data between 0 and 100, default is 50% if never invoked |
Definition at line 234 of file AutoReg.cpp.
References _FILEINFO_, Isis::iException::Message(), and p_patternValidPercent.
Referenced by AutoReg(), Parse(), and RegTemplate().
| void Isis::AutoReg::SetPatternZScoreMinimum | ( | double | minimum | ) |
Set the minimum pattern zscore.
This option is used to ignore pattern chips which are bland (low standard deviation). If the minimum or maximum pixel value in the pattern chip does not meet the minimum zscore value (see a statisitcs book for definition of zscore) then invalid registration will occur.
| minimum | The minimum zscore value for the pattern chip. Default is 1.0 |
Definition at line 255 of file AutoReg.cpp.
References _FILEINFO_, Isis::iException::Message(), and p_minimumPatternZScore.
| void Isis::AutoReg::SetReductionFactor | ( | int | factor | ) |
Set the reduction factor used to speed up the pattern matching algorithm.
| factor |
Definition at line 331 of file AutoReg.cpp.
References _FILEINFO_, Isis::iException::Message(), and p_reduceFactor.
| void Isis::AutoReg::SetSubPixelAccuracy | ( | bool | on | ) |
If the sub-accuracy is enable the Register() method will attempt to match the pattern chip to the search chip at sub-pixel accuracy, otherwise it will be registered at whole pixel accuracy.
| on | Set the state of registration accuracy. The default is sub-pixel accuracy is on |
Definition at line 212 of file AutoReg.cpp.
References p_subpixelAccuracy.
| void Isis::AutoReg::SetSurfaceModelDistanceTolerance | ( | double | distance | ) |
Set a distance the surface model solution is allow to move away from the best whole pixel fit in the fit chip.
| distance | The distance allowed to move in pixels. Must be greater than zero. |
Definition at line 316 of file AutoReg.cpp.
References _FILEINFO_, Isis::iException::Message(), and p_distanceTolerance.
| void Isis::AutoReg::SetSurfaceModelEccentricityRatio | ( | double | eccentricityRatio | ) |
A 1:1 ratio represents a perfect circle.
Allowing the user to set this ratio lets them determine which points to throw out if the surface model gets too elliptical.
| eccentricityRatio |
Definition at line 300 of file AutoReg.cpp.
References _FILEINFO_, Isis::iException::Message(), and p_surfaceModelEccentricityTolerance.
| void Isis::AutoReg::SetSurfaceModelWindowSize | ( | int | size | ) |
Set the surface model window size.
The pixels in this window will be used to fit a surface model in order to compute sub-pixel accuracy. In some cases the default (3x3) and produces erroneous sub-pixel accuracy values.
| size | The size of the window must be three or greater and odd. |
Definition at line 284 of file AutoReg.cpp.
References _FILEINFO_, Isis::iException::Message(), and p_windowSize.
| void Isis::AutoReg::SetTolerance | ( | double | tolerance | ) |
Set the tolerance for an acceptable goodness of fit.
| tolerance | This tolerance is used to test against the goodness of fit returned by the MatchAlgorith method after a surface model has been fit. See TestGoodnessOfFit |
Definition at line 271 of file AutoReg.cpp.
References p_tolerance.
| double Isis::AutoReg::Tolerance | ( | ) | const [inline] |
Return match algorithm tolerance.
Definition at line 170 of file AutoReg.h.
References p_tolerance.
Referenced by Register(), and Isis::Gruen::TestConstraints().
| void Isis::AutoReg::ZScores | ( | double & | score1, | |
| double & | score2 | |||
| ) | const [inline] |
PvlObject Isis::AutoReg::p_template [protected] |
AutoRegistration object that created this projection.
Definition at line 284 of file AutoReg.h.
Referenced by AutoReg(), and RegTemplate().