GCPREP

Ground Control Point Segment Report


EnvironmentsPYTHON :: EASI :: MODELER
Batch ModeYes
Quick linksDescription :: Parameters :: Parameter descriptions :: Details

Back to top

Description


Generates a report on the contents of a Ground Control Point segment (type GCP:214 or 213) and the regression model defined by the Ground Control Points.
Back to top

Parameters


Name Type Length Value range
InputGCP: Input Ground Control Point segment * GCP port 1 - 1  
Order Integer 0 - 1 1, 2, 3, 4, 5
Default: 
Report String 0 - 192 See parameter description

* Required parameter
Back to top

Parameter descriptions

InputGCP: Input Ground Control Point segment

Specifies the input GCP segment or layer for which to generate a report.

Order

Specifies the order of the polynomial equation used for the regression model that is used to fit the corrected-to-uncorrected GCP coordinates. If this parameter is not specified, the GCPs are printed with elevation values, but without the regression model.

The value used for ORDER is typically produced when collecting GCPs. If there are not enough GCPs for the specified order, a warning is displayed and the highest order allowable is used.

Note: A minimum of 3 GCPs are required for a 1st "ORDER" model. For example:
6                       2nd
10                       3rd
15                       4th
21                       5th

To obtain good results, it is best to have 2 or 3 times the minimum number of GCPs for a particular order; for example, 12 to 18 GCPs for 2nd ORDER. The GCPs should also be evenly distributed over the entire uncorrected image.

Report

Specifies where to direct the generated report.

Available options are:

Back to top

Details

GCPREP writes the contents of a ground control point segment held in a PCIDSK database to a report device. If ORDER is not specified, only the GCP coordinates and elevation values are printed. If ORDER is specified, GCP coordinates (without elevation) are printed along with information on the generated regression model and residuals for each GCP.

If GCP coordinates are stored in LONG/LAT units, then coordinate values are reported as degrees, minutes, seconds and hemisphere.

A report device (REPORT) must be selected. If the report device is "OFF", GCPREP will force its output to the user's terminal.

GCP report

GCPREP can generate two types of reports

If ORDER is not specified, GCPREP prints a dump of the segment. This is divided into two sections:

If ORDER is specified, GCPREP generates a regression model that maps the input GCP set to the output GCP set, the list of GCP coordinate pairs, and a residual report. This is divided into four sections:

Each of these sections is described in greater detail below.

General information

The general information section gives the file name and data on the segment including:

Regression model

The regression model used to map the input set of GCPs to the output set of GCPs has the following form:


                 k  k-j                     \
 X' = FX(X,Y) = SUM SUM BX(i,j) X**i Y**j   |
                j=0 i=0                     |
                                             >  k = specified order
                 k  k-j                     |       (1,2,3,4, or 5)
 Y' = FY(X,Y) = SUM SUM BY(i,j) X**i Y**j   |
                j=0 i=0                     /

where:

GCP list

If ORDER is not specified, each GCP coordinate pair are listed with elevation values, but without any extra information.

If ORDER is specified, the GCP coordinate pairs are listed along with information about how well they fit the regression model.

For each GCP, the residual is calculated as follows:

Residual report

The residual report provides a graphical representation of the distribution of error. Each GCP point is plotted with respect to its residual error in the X and Y axis. Points with high error are further away from the center. The right-most digit represents the location for a GCP's residual. For example, for GCP 12, the GCP residual would be where the 2 lies.

The RMS error (root of mean square) and distance provide an estimate of the overall error for the entire collection of GCPs (where N is the number of GCPs and K is the number of terms for the specified order):

RMS for X    = sqrt ( sum( (residual X)**2 ) / (N - K) )
RMS for Y    = sqrt ( sum( (residual Y)**2 ) / (N - K) )
RMS Distance = sqrt ( (RMS for X)**2 + (RMS for Y)**2 )

where: - K is  3 degrees of freedom for a 1st "ORDER" model.
                6                          2nd
               10                          3rd
               15                          4th
               21                          5th

If there are as many or fewer GCPs than K, the RMS error is reported as N/A (Not Applicable).

© PCI Geomatics Enterprises, Inc.®, 2026. All rights reserved.