Isis 3 Application Documentation
Create autoregistration group template
Description
Categories
Groups
Examples
History
Description
This program creates an autoregistration group template for applications
such as "coreg", "pointreg", "qnet", "findrx", and other ISIS software
with a pattern matching component. Given a specific algorithm name, it will
create that specific algorithm group template. If you are unsure of
what algorithm name you want to use, running the application with an
'unknown' algorithm name will give you an error box containing a list of
the possible algorithm names. If a tolerance is specified, the application
will automatically insert the tolerance keyword and value into the autoreg
template. The user must enter values for the
chip sizes of both the pattern and search chips.
It is highly recommended that users review the Pattern Matching document (in
the "Related Objects and Documents" section).
NOTE: This program lacks updates for the Gruen pattern matching algorithm.
In the future this program will be depricated and replaced with a wizard
(expert system) which will help guide the user in the selection of the
appropriate algorithm and parameter values.
Categories
Applications
Documents
Parameter Groups
Files
Name
|
Description
|
TO |
Output text file containing autoreg template
|
Algorithm
PatternChip
Name
|
Description
|
PSAMP |
Pattern Chip Sample Size
|
PLINE |
Pattern Chip Line Size
|
PMIN |
Pattern Chip Valid Minimum Pixel Value
|
PMAX |
Pattern Chip Valid Maximum Pixel Value
|
MINIMUMZSCORE |
Minimum Pattern Chip Z-Score Range (Default = 1.0)
|
PVALIDPERCENT |
Pattern Chip Valid Pixel Percent Value (Default = 50.0)
|
SearchChip
Name
|
Description
|
SSAMP |
Search Chip Sample Size
|
SLINE |
Search Chip Line Size
|
SMIN |
Search Chip Minimum Valid Pixel Value
|
SMAX |
Search Chip Maximum Valid Pixel Value
|
SSUBCHIPVALIDPERCENT |
Search Subchip Valid Pixel Percent Value (Default = 50.0)
|
SurfaceModel
Files:
TO
Description
This file will contain the autoregistration group template.
Type
| filename |
File Mode
| output |
Algorithm:
ALGORITHM
Description
This is the name of the algorithm for the autoregistration group being
created. If left as unknown, an error will be reported listing all
possible options for the algorithm name.
Type
| string |
Default
| Undefined |
Algorithm:
TOLERANCE
Description
This is the value of the tolerance for the autoregistration,
represented in the template as the Tolerance keyword.
Algorithm:
REDUCTIONFACTOR
Description
Reduction factor used to speed up the pattern matching algorithm.
Type
| integer |
Internal Default
| None |
Algorithm:
SUBPIXELACCURACY
Description
This option allows the user to specify if sub-pixel accuracy will be
used in the registration. Enables the SurfaceModel options, as those
tests will only be performed when calculating to sub-pixel accuracy.
When this parameter is true, SurfaceModel parameters may be selected.
Type
| boolean |
Default
| TRUE |
Inclusions
|
- DISTANCETOLERANCE
- WINDOWSIZE
- ECCENTRICITYTESTING
- ECCENTRICITYRATIO
- RESIDUALTESTING
- RESIDUALTOLERANCE
|
Algorithm:
CHIPINTERPOLATOR
Description
Determines whether to include the ChipInterpolator keyword in the
generated template. When this parameter is true, INTERPOLATORTYPE
may be selected.
Type
| boolean |
Default
|
false
|
Inclusions
|
|
Algorithm:
INTERPOLATORTYPE
Description
Type of interpolator to be used to read and load the pattern and
search chips.
Type
| string |
Default
| CUBICCONVOLUTIONTYPE |
Option List:
|
Option |
Brief |
Description |
NEARESTNEIGHBORTYPE |
NearestNeighborType
|
Indicates that a NearestNeighborType interpolator should be used
to load chips.
|
BILINEARTYPE |
BiLinearType
|
Indicates that a BiLinearType interpolator should be used to load
chips.
|
CUBICCONVOLUTIONTYPE |
CubicConvolutionType
|
Indicates that a CubicConvolutionType interpolator should be used
to load chips.
|
|
PatternChip:
PSAMP
Description
The sample size of the pattern chip for the autoregistration.
The Sample keyword in the PatternChip group will be set to
this value in the autoreg template.
PatternChip:
PLINE
Description
The line size of the pattern chip for the autoregistration.
The Line keyword in the PatternChip group will be set to
this value in the autoreg template.
PatternChip:
PMIN
Description
The minimum value a pixel must have in order to be considered valid
and used in the autoregistration. This parameter is optional, and
does not have to be set. Within AutoReg, will default to the Isis
ValidMinimum, if not provided.
Type
| integer |
Internal Default
| None |
PatternChip:
PMAX
Description
The maximum value a pixel must have in order to be considered valid
and used in the autoregistration. This parameter is optional, and
does not have to be set. Within AutoReg, will default to the Isis
ValidMaximum, if not provided.
Type
| integer |
Internal Default
| None |
PatternChip:
MINIMUMZSCORE
Description
This option allows the user to specify the minimum z-score range for
the minimum and maximum values for the pattern chip that will be
used in the registration. Within AutoReg, will default to 1.0, if not
provided.
Type
| double |
Internal Default
| None |
PatternChip:
PVALIDPERCENT
Description
The minimum percent of pixels in the pattern chip that must be valid
in order for the autoregistration of the chip to be used. This
parameter is optional, and does not have to be set. Within AutoReg,
will default to 50.0, if not provided.
Type
| double |
Internal Default
| None |
SearchChip:
SSAMP
Description
The sample size of the search chip for the autoregistration. The
Sample keyword in the SearchChip group will be set to this value in
the autoreg template.
SearchChip:
SLINE
Description
The line size of the search chip for the autoregistration. The
Line keyword in the SearchChip group will be set to this value in the
autoreg template.
SearchChip:
SMIN
Description
The minimum value a pixel must have in order to be considered valid
and used in the autoregistration. This parameter is optional, and
does not have to be set. Within AutoReg, will default to the Isis
ValidMinimum, if not provided.
Type
| integer |
Internal Default
| None |
SearchChip:
SMAX
Description
The maximum value a pixel must have in order to be considered valid
and used in the autoregistration. This parameter is optional, and
does not have to be set. Within AutoReg, will default to the Isis
ValidMaximum, if not provided.
Type
| integer |
Internal Default
| None |
SearchChip:
SSUBCHIPVALIDPERCENT
Description
The minimum percent of pixels in the subchip of the search chip that
must be valid in order for the autoregistration of the chip to be
used. This parameter is optional, and does not have to be set.
Within AutoReg, will default to 50.0, if not provided.
Type
| double |
Internal Default
| None |
SurfaceModel:
DISTANCETOLERANCE
Description
Set the distance the surface model is allowed to move away from
the best whole pixel fit in the chip.
SurfaceModel:
WINDOWSIZE
Description
Set the surface model window size in terms of the legnth of a
square window. The pixels in this window will be used to fit a
surface model in order to compute to sub-pixel accuracy. Must
be odd and greater than or equal to three.
SurfaceModel:
ECCENTRICITYTESTING
Description
Whether or not the eccentricity of the surface model should be
considered when calculating to sub-pixel accuracy. For the sake
of the template, disabling this parameter will result in no
EccentricityRatio keyword. In AutoReg, eccentricity testing is
disabled by not providing the EccentricityRatio keyword.
Type
| boolean |
Default
| FALSE |
Inclusions
|
|
SurfaceModel:
ECCENTRICITYRATIO
Description
Use eccentricity to throw out points whose surface models are
too elliptical. Though eccentricity is a decimal value between
0 and 1, it can also be thought of as the ratio of the major
axis to the minor axis. Normalazing the minor axis to 1.0, the
anetecedent of that ratio becomes this value. This parameter
states "the major axis length can be no more than this many
times larger than the minor axis."
SurfaceModel:
RESIDUALTESTING
Description
Whether or not the maximum average residual of the surface model
should be considered when calculating to sub-pixel accuracy. For the
sake of the template, disabling this parameter will result in no
ResidualTolerance keyword. In AutoReg, eccentricity testing is
disabled by not providing the ResidualTolerance keyword.
Type
| boolean |
Default
| FALSE |
Inclusions
|
|
SurfaceModel:
RESIDUALTOLERANCE
Description
Set the maximum average residual allowed from the surface model.
Changing this tolerance allows the user to throw out points whose
surfaces cannot be modeled well. The average residual is derived from
the least squares solution fitting a surface model to a set of known
data points, and computed by summing the absolute values of all the
residuals (computed z minus actual z) and dividing by the number of
residuals.
Examples
Example 1
Create an Autoreg Template with all Defaults
Description
This example shows how the autoregtemplate application works, and how
to create a simple AutoReg template. Here, only the required parameters
have been entered. Because SubpixelAccuracy is "true" by default, there
is a SurfaceModel group in the output PVL containing the default
DistanceTolerance and WindowSize.
Object = AutoRegistration
Group = Algorithm
Name = MaximumCorrelation
Tolerance = 0.7
SubpixelAccuracy = True
End_Group
Group = PatternChip
Samples = 15
Lines = 15
End_Group
Group = SearchChip
Samples = 31
Lines = 31
End_Group
Group = SurfaceModel
DistanceTolerance = 1.5
WindowSize = 5
End_Group
End_Object
End
The above output is the text file resulting when the following
command line is run:
Command Line
autoregtemplate
algorithm=MaximumCorrelation tolerance=0.7 psamp=15 pline=15
ssamp=31 sline=31 to=out.txt
Run autoregtemplate with an algorithm name, tolerance, output file
name, and search and pattern chip sizes.
Example 2
Create an Autoreg Template without Subpixel Accuracy and with Chip
Interpolator specified
Description
This example shows the process and results of creating an AutoReg
template that disables calculating to subpixel accuracy. All the
parameter values from the previous example are left the same, except
that the SUBPIXELACCURACY keyword is set to "false". As a result,
there is no SurfaceModel PVL group, and none of those keywords may be
entered. Notice, the INTERPOLATORTYPE parameter is not specified in the
commandline. Thus, the default cubic convolution type of interpolator
is used to load chips.
Object = AutoRegistration
Group = Algorithm
Name = MaximumCorrelation
Tolerance = 0.7
SubpixelAccuracy = False
ChipInterpolator = CubicConvolutionType
End_Group
Group = PatternChip
Samples = 15
Lines = 15
End_Group
Group = SearchChip
Samples = 31
Lines = 31
End_Group
End_Object
End
The above output is the text file resulting when the following
command line is run:
Command Line
autoregtemplate
algorithm=MaximumCorrelation tolerance=0.7 subpixelaccuracy=false
chipinterpolator=true psamp=15 pline=15 ssamp=31 sline=31 to=out.txt
Run autoregtemplate with an algorithm name, tolerance, output file
name, search and pattern chip sizes, specified chip interpolator, but
no subpixel accuracy computation.
Example 3
Create an AutoReg Template Specifying Every Parameter
Description
This example shows the kinds of values one might potentially enter for
every valid keyword in an AutoReg template. Every parameter is
specified in the template for this example. The only parameter not
specified in the command line is subpixel accuracy, which must remain at
its default ("true") in order to have a SurfaceModel group in the output
PVL. ChipInterpolator is enabled in order to choose an interpolator
type. Also, EccentricityTesting and ResidualTesting must be
enabled in order to enter values for their keywords, because unlike
MinimumZScore and ValidPercent (keywords that have defaults inside
AutoReg if not specified in the template), Eccentricity and Residual
testing are disabled altogether if EccentricityRatio and
ResidualTolerance are not specified in the AutoReg template.
Object = AutoRegistration
Group = Algorithm
Name = MinimumDifference
Tolerance = 0.7
ReductionFactor = 2
SubpixelAccuracy = True
ChipInterpolator = NearestNeighborType
End_Group
Group = PatternChip
Samples = 15
Lines = 15
ValidMinimum = 1200
ValidMaximum = 2800
MinimumZScore = 0.5
ValidPercent = 75.0
End_Group
Group = SearchChip
Samples = 31
Lines = 31
ValidMinimum = 1200
ValidMaximum = 2800
SubchipValidPercent = 80.0
End_Group
Group = SurfaceModel
DistanceTolerance = 2.5
WindowSize = 11
EccentricityRatio = 5.0
ResidualTolerance = 0.001
End_Group
End_Object
End
The above output is the text file resulting when the following command
line is run:
Command Line
autoregtemplate
algorithm=MinimumDifference tolerance=0.7 reductionfactor=2
chipinterpolator=true interpolatortype=nearestneighbor psamp=15
pline=15 pmin=1200 pmax=2800 pvalidpercent=75 ssamp=31 sline=31
smin=1200 smax=2800 minimumzscore = 0.5 ssubchipvalidpercent = 80
distancetolerance=2.5 windowsize=11 eccentricitytesting=true
eccentricityratio=5.0 residualtesting=true residualtolerance=0.001
to=out.txt
Run autoregtemplate with all parameters specified by the user.
History
Elizabeth Miller | 2005-09-28 |
Original Version
|
Jacob Danton | 2006-01-05 |
Added SubpixelAccuracy option.
|
Jacob Danton | 2006-05-17 |
Added MinimumPatternZScore option and updated appTest.
|
Brendan George | 2006-07-19 |
Moved MininmumPatternZScore keyword to PatternChip Group
|
Travis Addair | 2010-04-15 |
Updated to use the current version of keywords accepted by AutoReg,
improved documentation on parameters, and improved error reports.
|
Travis Addair | 2010-04-22 |
Updated tests and examples.
|
Jeannie Walldren | 2010-06-16 |
Added CHIPINTERPOLATOR and INTERPOLATORTYPE parameters to Algorithm
group. Updated examples and added error unitTest.
|
Jeannie Walldren | 2010-07-20 |
Changed VALIDPERCENT to SSUBCHIPVALIDPERCENT parameters in SearchChip
group. Added PVALIDPERCENT to PatternChip group. Updated examples
and unit tests.
|
Jeff Anderson | 2011-10-05 |
Updated documentation
|