User's Guide

EDITCORR

Automatically edits a set of tie points

Function:

Automatically edits a set of tie points. Points that exceed defined error limits are marked as inactive in the output tie point location file.

Parameters:

Subcommand -MODEL:
Edits points using a polynomial based model. Points that cause excessive error are marked inactive until the root mean squared error (RMSE) is within a user specified limit.

INTL
Input tie point location file. This file contains the input tie points.

OUTTL
Output tie point location file. The file that the output tie points are written to.

OUTFILE(--)
Output file. An optional output plot file. ";plt" will be appended to the name, unless otherwise specified. This plot file will contain each tie point location and the x and y residuals which are used by CORRPLOT to produce a plot of the errors. If NULL, a plot file will not be created.

PDEGREE(1)
Polynomial degree. The degree of the polynomial to be used in the modeling process of the data.

MAXRES(1.0)
Maximum RMSE. This is the maximum RMSE that will be allowed.

ACTFLG(ACTIVE)
Active flag. Indicates which tie points to use.

  = BOTH:       Use both active and inactive points
  = ACTIVE:     Use only active points
  = INACTIVE:   Use only inactive points
Subcommand -MAXIMUM:
Edits points based on maximum residual error.

INTL
Input tie point location file. This file contains the input tie points.

OUTTL
Output tie point location file. The file that the output tie points are written to.

OUTFILE(--)
Output file. An optional output plot file. ";plt" will be appended to the name, unless otherwise specified. This plot file will contain each tie point location and the x and y residuals which are used by CORRPLOT to produce a plot of the errors. If NULL, a plot file will not be created.

PDEGREE(1)
Polynomial degree. The degree of the polynomial to be used in the modeling process of the data.

MAXRES(1.0)
Maximum residual value. This is the maximum residual error that will be allowed before points are made inactive.
Subcommand -MEDIAN:
Edits points based on a least median of squares model.

INTL
Input tie point location file. This file contains the input tie points.

OUTTL
Output tie point location file. The file that the output tie points are written to.

OUTFILE(--)
Output file. An optional output plot file. ";plt" will be appended to the name, unless otherwise specified. This plot file will contain each tie point location and the x and y residuals which are used by CORRPLOT to produce a plot of the errors. If NULL, a plot file will not be created.

PDEGREE(1)
Polynomial degree. The degree of the polynomial to be used in the modeling process of the data.

MAXRES(1.0)
Maximum residual value. This is the maximum residual error that will be allowed.
Subcommand -BACKMATCH:
Edits points using backmatching. Tie point files are compared (See User Note 1). If the distances between the (X, Y) coordinates of corresponding search and reference points are not within a user specified tolerance value then the tie points are made inactive.

INTL
Input tie point location files. These two files contain the input tie points which are compared.

OUTTL
Output tie point location file. The file that the output tie points are written to.

TOLVAL(0.5)
Tolerance value. Distances between the (X, Y) coordinates of two corresponding points that are larger than TOLVAL will cause these two points to be made inactive.
Subcommand -DISTANCE:
Edits points based on distance from nominal line and sample. Points greater than (Mean Dist + TOLVAL) or less than (Mean Dist - TOLVAL) are made inactive.

INTL
Input tie point location file. This file contains the input tie points.

OUTTL
Output tie point location file. The file that the output tie points are written to.

TOLVAL(1.5)
Tolerance value. The distance, from the mean of the points, at which to stop editing. Points greater than the (Mean Dist + TOLVAL) or less than (Mean Dist - TOLVAL) are made inactive.
Subcommand -COMPARE:
Compares two CORRELATE runs. Compare tie point location files from two CORRELATE runs (See User Note 2). Distances between the (X, Y) coordinates of corresponding search points which are not within a user specified tolerance value are made inactive.

INTL
Input tie point location files. These two files contain the input tie points which are compared.

OUTTL
Output tie point location file. The file that the output tie points are written to.

TOLVAL(0.5)
Tolerance value. Distances between the (X, Y) coordinates of corresponding points that are larger than TOLVAL will cause these points to be made inactive.
Subcommand -PEAKS:
Edits correlation peaks based on mean and standard deviation. Peaks that lie below the mean minus a user defined multiple of the standard deviation are marked inactive.

INTL
Input tie point location file. This file contains the input tie points.

OUTTL
Output tie point location file. The file that the output tie points are written to.

NSTDEV(1.0)
Number of standard deviations. Points below (Mean_of_Points - NSTDEV) will be made inactive.

Examples:

  1. LAS> editcorr-model intl=input outtl=output pdegree=2

    The tie point location file INPUT;TPL is read. The RMSE is calculated as described in the DESCRIPTION/ ALGORITHM section using a polynomial of degree 2. MAXRES is defaulted to 1.0. After the bad points are marked inactive, all points are written to OUTPUT;TPL.

  2. LAS> editcorr-peaks intl=coor outtl=final nstdev=2

    The tie point location file COOR;TPL is read. The mean and standard deviation of the correlation peaks are calculated. Points that have peaks which lie below (Mean - NSTDEV * standard deviation) are marked inactive. All points are written to FINAL;TPL.

  3. LAS> editcorr-backmatch intl=(first,second) outtl=last

    The tie point location files FIRST;TPL and SECOND;TPL are read. The reference and search coordinates are compared. If the distance between the (X, Y) coordinates of the tie points FIRST;TPL and SECOND;TPL is greater than the default tolerance of 0.5, the points are made inactive and all points are written to LAST;TPL.

  4. LAS> editcorr-compare intl=(third,fourth) outtl=test tolval=1.

    The tie point location files THIRD;TPL and FOURTH;TPL are read. The search coordinates are compared. If the distance between the (X, Y) coordinates of the tie points is greater than 1.0, the points are made inactive and all points are written to TEST;TPL.

Description/Algorithm:

First, each tie point file is read. Then EDITCORR automatically edits a set of tie points and removes points that do not fall within preset limits. There are seven different methods by which this may be accomplished.

1.  The subcommand MODEL fits a bivariate polynomial of degree
    PDEGREE by using a least squares fit to the observed
    coordinates.  X and Y residuals are calculated by subtracting the
    calculated coordinates from the observed coordinates.  The RMSE
    is calculated by:

    RMSE = sqrt([(X_residual*X_residual+Y_residual*Y_residual)/N])

    If the RMSE is less than MAXRES the process is done.  Otherwise,
    each point is marked inactive one at a time. The surface is fit. The
    residuals are calculated. The RMSE is calculated and stored for
    that point, and the point is reinstated.  When all the points
    have been tested, the point which gave the lowest RMSE when held
    out is marked inactive.  If the RMSE is now lower than MAXRES, the
    process is done.  Otherwise, the process of testing each point
    until the RMSE is less than MAXRES is repeated.  If a plot file
    is requested, the coordinates and the residuals are written to the
    file.

2.  The subcommand MAXIMUM fits a bivariate polynomial of degree
    PDEGREE by using a least squares fit to the observed
    coordinates. The RESIDUAL is calculated by:

    sqrt(X_residual*X_residual + Y_residual*Y_residual)

    If the manimum RESIDUAL is less than MAXRES the process
    is done.  Otherwise, each point is marked inactive one
    at a time. The surface is fit. The residuals are
    calculated. The maximum RESIDUAL is calculated and
    stored for that point, and the point is reinstated.
    When all the points have been tested, the point which
    gave the lowest maximum RESIDUAL when held out is
    marked inactive.  If the maximum RESIDUAL is now lower
    than MAXRES, the process is done.  Otherwise the
    process of testing each point until the maximum
    RESIDUAL is less than MAXRES is repeated.  If a plot
    file is requested the coordinates and the residuals are
    written to the file.

3.  The subcommand MEDIAN fits a bivariate polynomial of degree
    PDEGREE by using a least squares fit to the observed
    coordinates. MAXERR is calculated by:

    sqrt(X_residual*X_residual + Y_residual*Y_residual)

    If MAXERR is less than MAXRES the process is done.  Otherwise,
    each point is marked inactive one at a time. The surface is fit. The
    residuals are calculated. The MEDIAN and MAXERR are calculated
    and stored for that point, and the point is reinstated.  When all
    the points have been tested, the point which gave the lowest
    MEDIAN when held out is marked inactive.  If MAXERR is now lower than
    MAXRES, the process is done.  Otherwise the process, of testing
    each point until the MAXERR is less than MAXRES, is repeated.  If
    a plot file is requested the coordinates and the residuals are
    written to the file.

4.  The subcommand BACKMATCH compares corresponding search and
    reference points in two tie point location (TPL) files and
    discards points that are not within TOLVAL.  See User Note 1.

5.  The subcommand DISTANCE first calculates the mean shifts between
    the coordinate found by correlation and the nominal coordinates.
    Then, all points outside of + or - TOLVAL are set to inactive.
    This is done separately for the line and sample coordinates.

6.  The subcommand COMPARE compares corresponding search points
    in two tie point location (TPL) files and discards points that
    are not within TOLVAL.  See User Note 2.

7.  The subcommand PEAKS calculates the mean and standard deviation
    of the correlation peak values.  All points with correlation peak
    values less than (mean - NSTDEV) are made inactive.


Finally, the points are written to OUTTL.

Nonfatal Error Messages:

    None.

Fatal Error Messages:

  1. [editcorr-0points] Zero points were used

    There were no points available. Re-run with more than one point in the TPL file.

  2. [editcorr-alloc] Unable to allocate dynamic memory

    An error occurred allocating memory during processing. Re-run the function, and if the error persists, contact the system manager.

  3. [editcorr-fatal] Fatal error encountered

    A fatal error was encountered. The error message displayed immediately preceding this message was the error encountered. Processing terminates.

  4. [editcorr-minpts] Too few points remain to model

    There are not enough points to model. Re-run with more points.

  5. [editcorr-notsame] TPL files are not similar

    The TPL files are not similar. Both TPL files must have the same reference points.

  6. [editcorr-npts] Unequal number of points in TPL files

    The input TPL files do not contain the same number of tie points. Re-run with files that have the same number of points.

User Notes:

  1. One way to prepare for subcommand BACKMATCH is to have one TPL file created by CORRELATE. The search and reference images are then swapped (see TPL2MTP), and CORRELATE is used to create the second TPL file.

  2. One way to prepare for subcommand COMPARE is to have the first TPL file created by CORRELATE-EDGE. The second TPL file is created by CORRELATE-GREY.