GCP Collection module


Quick linksDescription :: Parameters :: Parameter descriptions :: Details :: References

Back to top

Description


The GCP Collection module reads the Input Scenes folder for a CATALYST Professional OrthoEngine project file (oe.prj) or, if the file does not exist, raw image scenes, and then creates a ground control point (GCP) collection job for each scene referenced in the project file or existing in the Input Scenes folder.
Back to top

Parameters


Name Caption
Send Email Email notification settings
Input Scenes Input scene folder
Output Folder Output folder
Overwrite Results Overwrite existing results
Source Background Type Source background type
Source Background Value Source background pixel value
Collect GCPs Whether to collect GCPs
Master Matching Channel Master matching channel
Math Model Input math model
RF Math Model Order RPC adjustment order
DEM Source DEM tile source
Reference Images Input reference images folder
Select Reference by Resolution Select reference images by resolution
Reference Channel for Matching Reference image channel to use for matching
Sampling Method GCP sampling method
GCP Samples Number of GCP samples to collect
Matching Algorithm Matching algorithm
Collection Strategy Number of passes for GCP collection
Search Radius Search radius (pixels)
Minimum Score Minimum score (percentage)
GCP Priority Prioritize GCPs for processing
Chip Database File Input chip database file
Chip Channels Input chip database channels
Chip Matching Algorithm Chip Matching algorithm
Chip Search Radius Chip Search radius (pixels)
Chip Minimum Score Chip minimum score (percentage)
GCP Priority Prioritize GCPs for processing
Road Network Input road network path
Road Width Field Name Input road width field name
Road Width Scale & Offset Input road width scale & offset
GCP Priority Prioritize GCPs for processing
Polygon Vector File Input polygon vector file
GCP Priority Prioritize GCPs for processing
GCP Text Files Input GCP text file or files
GCP Text File Format File format of GCP text file
GCP Priority Prioritize GCPs for processing
Water Mask File Input water-mask file
Prune GCPs Whether to prune GCPs
Prune GCPs Automatically Prune GCPs automatically
GCP Retention Percentage Percentage of GCPs to keep
Refine GCPs Whether to refine GCPs
Rejection Method GCP rejection method
Rejection Method Thresholds GCP rejection method thresholds
Maximum GCPs Maximum GCPs to accept
Minimum GCPs Minimum GCPs to accept
Refine GCPs (Block) Whether to refine GCPs
Rejection Method (Block) GCP rejection method
Residual Threshold (Block) Residual Threshold
Residual Threshold Type (Block) Residual Threshold Type
Maximum Residual Per GCP Maximum Residual Per GCP
Minimum GCPs Per Image Minimum GCPs Per Image
Back to top

Parameter descriptions

Send Email

If necessary, you can set up CATALYST Enterprise to send an email notification on job start and job completion.

With this check box selected, an email message is sent to each address specified in the Email Addresses box after the job starts and on completion.

You can specify one or more addresses, and each must be separated by a comma or a semi-colon. The email address of the user currently logged in displays by default.

Input Scenes

The path and name of a folder containing a valid CATALYST Professional OrthoEngine project file (oe.prj) or valid GDB-supported images.

This parameter can be specified by using any of the following:

Output Folder

The path and name of the folder to which to write the output files.

Overwrite Results

Select this check box to overwrite the existing output files, if any exist. If this check box is left clear, and an output file exists in the relevant folder, the status of the job displays a message informing you of the existence and name of the output file. The message is also written to the event log of the job.

Source Background Type

The method to use to determine which pixels in the source image to process as background (NoData) pixels. In general, if a pixel is considered NoData, the module processes it in a specific manner.

If the Any option or the All option is selected, a value must be specified for the Source Background Value parameter.

Available options are:

For specific examples, see the Source Background Value parameter description.

Source Background Value

The source background value or values when the Source Background Type parameter is set to:

The source background value is provided as either a single number (applied to all channels) or as a pixel "stack" (a comma-delimited list of values). If a pixel stack is provided, but the number of values does not equal the number of channels, the list is truncated or the last value is repeated as necessary. The background values provided is truncated to the range allowed by the source image data type.

The following examples apply to a 3-channel, 8-bit unsigned image:

Collect GCPs

Selected by default, this check box controls whether to collect the ground control points (GCPs) from various reference sources.

Master Matching Channel

The channel from the input image to use for matching when collecting ground control points (GCPs). If no value is specified for this parameter, channel 1 is used, by default.

Math Model

The math model to use for collection of ground control points (GCPs) and, subsequently, orthorectification.

Available options are:

The module first attempts to use the selected math model. If required information is missing from the specified math model, the module automatically tries to use another math-model option and, subsequently, a warning message is displayed.

RF Math Model Order

When using the Rational Function with satellite imagery, you can modify the RF math model to better agree with collected ground control points (GCPs) by selecting the correct RF math-model order.

Typically, performing a first-order transformation is best, except when the GCPs are not well distributed. If your GCPs are clustered together, a first-order transformation may introduce new and significant errors in the image away from the GCPs. If your GCPs are not well distributed, you will probably obtain better results with the zero-order transformation.

DEM Source

The name of a single digital elevation model (DEM) file or a folder containing one or more DEM tiles.

This parameter can be specified by using any of the following:

The index.txt file lists the DEM files contained in the specified folder and provides information describing each DEM tile. The information in the DEM index file supersedes other DEM parameters in the module; all other DEM-related parameters are ignored. For more information about the format of the index.txt file and specific requirements for the individual DEM tiles, see Format of the DEM index file.

When the value of DEM Source is the name of an existing folder, the module searches that folder for a file named index.txt, and a set of DEM raster tiles. The index.txt file contains a single vector channel that lists the DEM files contained in the specified folder and provides information describing each DEM tile.

If no value is specified for this parameter, the module uses the default global DEM installed with CATALYST Enterprise (gmted2010).

Note: With some modules, the DEM Source parameter is mandatory. That is, if in the interface an asterisk appears beside the parameter label, it is mandatory and you must enter a value; otherwise, the parameter is optional.

Reference Images

The path of a single reference image or a folder containing multiple reference images to be used for automatic collection of ground control points (GCP). Alternatively, you can enter a comma-delimited list of raster-image file names.

To use multiple GDB-supported geocoded reference images for automatic GCP collection, you can specify a reference-image folder (GDB-compatible) and an associated (GDB-compatible) digital elevation model for automatic GCP collection. The specified folder can contain multiple reference images to use for collecting GCPs.

Note: This module uses all of the images in the input folder. Ensure that the specified folder contains only the images destined for use as reference for automatic GCP collection. For example, in some cases, the mosaic tile folder contains a mosaic preview file and scaled tiles; because these are not appropriate for automatic GCP collection, ensure that there are no such files in the folder specified for Reference Images.

The value of Reference Images is an image file that has been orthorectified previously for use with to automatic GCP collection. The GCPs collected from one or more of the reference images are stored in a GCP segment of the PCISDK image. The module also creates an OrthoEngine project that contains the same GCPs for quality- assurance (QA) tasks and manual editing.

When collecting GCPs using reference images, the module searches for ORTHO_X_ACCURACY and ORTHO_Y_ACCURACY metadata tags in the images. When such tags are present, the module uses those values to determine the accuracy of each GCP, thereby weighting the value of that point against others. The ORTHO_X_ACCURACY and ORTHO_Y_ACCURACY metadata tags are set in the Index PIX File Creator module. If no metadata tags are found in the reference image, the GCP accuracy is calculated to be half of the resolution of the reference image.

Select Reference by Resolution

If selected, the selection of reference imagery is based on resolution of input source imagery.

Reference Channel for Matching

The channel from reference image to use for matching when collecting ground control points (GCPs). Channel 1 is the default.

Sampling Method

The method to use to create ground control point (GCP) samples from the source imagery.

Available options are:
The Grid and Susan options determine how to find the initial candidate positions in one image (the source image) for collecting sample points. The function builds a patch around each candidate position, and searches within that area for corresponding features in the overlapping images.

When collecting GCPs, the Grid option is recommended because the Susan option finds candidates on building corners that may not be represented in the digital elevation model (DEM), leading to GCPs with higher residuals due to height errors.

GCP Samples

The maximum number of ground control points (GCPs) to collect per reference image. For example, when a raw scene overlaps four reference images and you specify the value of this parameter as 50, the maximum number of GCPs collected is four times that value for a total of 200 (50 x 4 = 200).

If you are using the Grid option, available values are:

If using the Susan option, available values are:

Matching Algorithm

The algorithm to use for automated point matching.

Available options are:

When the two images being matched have similar gray values and appearances, Normalized Cross-Correlation (NCC) generally produces acceptable results. When there is a rotation or image-size error in the initial math models, NCC may produce better matching results than FFTP. Typically, this method also generates faster results, because the template size that NCC uses is smaller than that used by FFTP.

For more consistently accurate results, FFTP is recommended. This method uses a larger template size than NCC and, because it works in the frequency domain, it looks at the patterns of details in the image rather than the gray values in a small neighborhood, which NCC uses. This makes FFTP more robust than NCC when there is a large difference in brightness between images or when a major land-use change has occurred between the images. FFTP also allows for a better match between images of the same area from different sensors or spectral bands.

Collection Strategy

Number of passes in which to collect ground control points (GCPs) from reference images.

The available options are as follows:

The distance in the x and y directions from a starting location on the reference image over which the search for the best match with a fixed point on the input image is conducted.

The search radius is an estimation of error with the raw image's positional information and the digital elevation model (DEM) accuracy. If you know that your image is accurate to within 80 meters, and your DEM is accurate to within 200 meters, set the search radius to 280 meters. A larger search radius requires more processing time, because more locations are evaluated to determine the best match for a ground control point (GCP).

If this parameter is not specified, the function uses a default search radius based on the resolution of input data.

Minimum Score

The threshold value that controls whether a candidate ground control point (GCP) is accepted as a GCP or rejected. This parameter specifies the minimum-match quality that is considered acceptable, with 1.0 indicating a perfect match.

When using the Fast Fourier Transform Phase matching algorithm, this value is converted internally to a minimum acceptable phase-shift peak value.

When using the Normalized Cross-Correlation matching algorithm, this value specifies the minimum match score value required to accept a local match between the input and reference images as a GCP. The default value is 0.75.

GCP Priority

With this feature, you can set the priority of processing for one or more of your specific data aspects: your reference imagery, chip database, reference vectors, or GCPs you imported.

Each data aspect—reference imagery, chip database, reference vectors, or imported GCPs—has a GPC Priority parameter. The one with the highest selected value has the highest priority during processing. For example, if you set the GCP priority for your reference imagery to High, and the remaining aspects to Medium, the reference imagery is processed with the highest priority. Similarly, if you set the GCP priority for your reference imagery to Medium, and the remaining aspects to Low, the reference imagery is processed with the highest priority.

The Locked option retains the GCPs generated during the GCP collection process. GCP collection has two phases: collection and refinement. In the refinement phase, two separate subprocesses occur: GCP distribution and GCP refinement. During GCP distribution, the GCP priority applies. During the second phase, however, the GCP priority does not apply. Use this option when you want to retain the integrity of GCPs from a particular data aspect.

You can also set the GCP priority of more than one aspect to use the same value. That is, you can perhaps set a value of High to your reference imagery and your imported GCPs, as applicable.

Chip Database File

The path and file name of the chip database to use for automatically collecting ground control points (GCPs).

The module collects the GCPs from the chip database, and then automatically saves them to a GCP segment of the PCIDSK image associated with the GCP.

To improve the spatial accuracy of the collected GCPs, the chip database should contain high-quality image chips from a comparable sensor taken in similar conditions and be well-distributed over all of the scenes to be corrected.

Chip Channels

The number of the channels in the chip database to use for automated ground control point (GCP) matching.

Chip Matching Algorithm

The algorithm used for automated ground control point (GCP) matching.

Available options are:

The distance in the x and y directions from a starting location on the reference image over which the search for the best match with a fixed point on the input image is conducted.

The search radius is an estimation of error with the raw image's positional information and the accuracy of the digital elevation model (DEM). For example, if you know your image is accurate to within 80 meters and your DEM is accurate to within 200 meters, set the search radius to 280 meters. A larger search radius requires more processing time, due to more locations being evaluated to determine the best match for a ground control point (GCP).

If no value is specified for this parameter, the module uses the same value specified for the Search Radius parameter.

Chip Minimum Score

The threshold value that controls whether a candidate ground control point (GCP) is accepted or rejected as a GCP. This parameter specifies the minimum match quality that is considered an acceptable match, with 1.0 indicating a perfect match.

When using the Fast Fourier Transform Phase matching algorithm, this value is converted internally to a minimum acceptable phase shift peak value.

When using the Normalized Cross-Correlation matching algorithm, this value specifies the minimum match score value required to accept a local match between the input and reference images as a GCP. The system default value is 0.75.

GCP Priority

With this feature, you can set the priority of processing for one or more of your specific data aspects: your reference imagery, chip database, reference vectors, or GCPs you imported.

Each data aspect—reference imagery, chip database, reference vectors, or imported GCPs—has a GPC Priority parameter. The one with the highest selected value has the highest priority during processing. For example, if you set the GCP priority for your reference imagery to High, and the remaining aspects to Medium, the reference imagery is processed with the highest priority. Similarly, if you set the GCP priority for your reference imagery to Medium, and the remaining aspects to Low, the reference imagery is processed with the highest priority.

The Locked option retains the GCPs generated during the GCP collection process. GCP collection has two phases: collection and refinement. In the refinement phase, two separate subprocesses occur: GCP distribution and GCP refinement. During GCP distribution, the GCP priority applies. During the second phase, however, the GCP priority does not apply. Use this option when you want to retain the integrity of GCPs from a particular data aspect.

You can also set the GCP priority of more than one aspect to use the same value. That is, you can perhaps set a value of High to your reference imagery and your imported GCPs, as applicable.

Road Network

The path to a vector file that contains the road-network layers to use for automatic collection of ground control points (GCP).

GCP collection from the road network extracts GCPs by matching an optical image with rasterized lines.

The GCPs are collected automatically by matching patches in the image with roads. Matching is performed in the spatial-frequency domain using Fast Fourier Transform (FFT) to transform and match image patches and rasterized lines. The matching algorithm is based on the Kuglin and Hines (1975) paper cited in the References section later in this topic.

In a typical application, between 100 and 200 GCPs are extracted, with most of them being correct. The GCPs can then be used in automated image-orthorectification workflows. This method is well-suited to midresolution images from 5 meters through 15 meters.

Road Width Field Name

The field name of an attribute in the vector segment. The field must contain one or two numerical values. The values are converted to a line width, in meters. Float, double, and integer fields are supported.

If this parameter is not specified, then the following field names are checked:

If none of these fields exist, then the Road Width Scale & Offset parameter defines the width of all lines in the file.

If the field does exist, and it contains a single value, then the scale factor part of the Road Width Scale & Offset parameter is used in the computation of the road width:

If the field exists, and it contains two values, then the two values in the Road Width Scale & Offset parameter are used to compute the road width:

Road Width Scale & Offset

The scale and offset, in meters, used in conjunction with the Road Width Field Name parameter to compute the road width in meters. This parameter contains one or two values. The first value, the road width scale (roadWidthScale), must be greater than zero. If specified, the second value, the road width offset (roadWidthOffset), must be non-negative.

If no value is specified for the Road Width Field Name parameter, the road width scale defines the width of all lines (in meters) in the file and the second value is ignored.

If a value for the Road Width Field Name parameter is specified, the scale and offset values are used to convert attribute values in the field to road width values, in meters. For more information, see the description of the Road Width Field Name parameter.

GCP Priority

With this feature, you can set the priority of processing for one or more of your specific data aspects: your reference imagery, chip database, reference vectors, or GCPs you imported.

Each data aspect—reference imagery, chip database, reference vectors, or imported GCPs—has a GPC Priority parameter. The one with the highest selected value has the highest priority during processing. For example, if you set the GCP priority for your reference imagery to High, and the remaining aspects to Medium, the reference imagery is processed with the highest priority. Similarly, if you set the GCP priority for your reference imagery to Medium, and the remaining aspects to Low, the reference imagery is processed with the highest priority.

The Locked option retains the GCPs generated during the GCP collection process. GCP collection has two phases: collection and refinement. In the refinement phase, two separate subprocesses occur: GCP distribution and GCP refinement. During GCP distribution, the GCP priority applies. During the second phase, however, the GCP priority does not apply. Use this option when you want to retain the integrity of GCPs from a particular data aspect.

You can also set the GCP priority of more than one aspect to use the same value. That is, you can perhaps set a value of High to your reference imagery and your imported GCPs, as applicable.

Polygon Vector File

The path to a file containing the polygon layers to be used for automatic collection of ground control points (GCP). The path may also specify a folder containing multiple polygon files.

Note: In general, geo-morphologically stable lake and river polygon layers can be used as reference for GCP collection.

GCP Priority

With this feature, you can set the priority of processing for one or more of your specific data aspects: your reference imagery, chip database, reference vectors, or GCPs you imported.

Each data aspect—reference imagery, chip database, reference vectors, or imported GCPs—has a GPC Priority parameter. The one with the highest selected value has the highest priority during processing. For example, if you set the GCP priority for your reference imagery to High, and the remaining aspects to Medium, the reference imagery is processed with the highest priority. Similarly, if you set the GCP priority for your reference imagery to Medium, and the remaining aspects to Low, the reference imagery is processed with the highest priority.

The Locked option retains the GCPs generated during the GCP collection process. GCP collection has two phases: collection and refinement. In the refinement phase, two separate subprocesses occur: GCP distribution and GCP refinement. During GCP distribution, the GCP priority applies. During the second phase, however, the GCP priority does not apply. Use this option when you want to retain the integrity of GCPs from a particular data aspect.

You can also set the GCP priority of more than one aspect to use the same value. That is, you can perhaps set a value of High to your reference imagery and your imported GCPs, as applicable.

GCP Text Files

The path and file name of a text file, or a folder of text files, that contains ground control points (GCPs) from other sources.

Each text file must have the MAPUNITS parameter specified in its required format. You can also specify up to two additional parameters, ELEVREF, and ELEVUNIT. The following table shows the supported values, a description, and an example for each parameter.

Parameter Supported values Description Example
MAPUNITS PIXEL Pixel and line MAPUNITS=PIXEL
  UTM Universal Transverse Mercator MAPUNITS=UTM 32 T D000
  SPCS State Plane Coordinate System MAPUNITS=SPCS
  LONG/LAT Longitude and latitude MAPUNITS=LONG/LAT D000
  METER Image along-row and along-column, in meters MAPUNITS=METER
  FEET Image along-row and along-column, in feet MAPUNITS=FEET
ELEVREF MSL Mean sea level ELEVREF=MSL
  ELLIPS Ellipsoid ELEVREF=ELLIPS
ELEVUNIT METER Meters ELEVUNIT=METER
  US_FEET U.S. feet ELEVUNIT=US_FEET
  FEET Feet ELEVUNIT=FEET

When the path points to a folder, each text file must follow a naming convention, <filename>*GCP.txt, where <filename> is the file name of the ingested image.

For example:

GCP Text File Format

The format of the file or files specified for the GCP Text File parameter, if specified.

Note: Your GCPs must be the same units as the map units (MAPUNITS) in the text file you specify.

The available formats, including a link to an example of each, are as follows.

Format Example
2D: ID P L X Y S
2D: ID P L X Y S Sample 2D GCP file
2DERR: ID P L X Y eP eL eX eY S
2DERR: ID P L X Y eP eL eX eY S Sample 2DERR GCP file
3D: ID P L X Y Z S
3D: ID P L X Y Z S Sample 3D GCP file
3DERR: ID P L X Y Z eP eL eX eY eZ S
3DERR: ID P L X Y Z eP eL eX eY eZ S Sample 3DERR GCP file
Bulk GCP File
Bulk GCP File Sample bulk GCP file
Note: The standard formats support only points from a single image in each text file. The Bulk GCP File format includes all GCPs from a group of images in a single text file.

GCP Priority

With this feature, you can set the priority of processing for one or more of your specific data aspects: your reference imagery, chip database, reference vectors, or GCPs you imported.

Each data aspect—reference imagery, chip database, reference vectors, or imported GCPs—has a GPC Priority parameter. The one with the highest selected value has the highest priority during processing. For example, if you set the GCP priority for your reference imagery to High, and the remaining aspects to Medium, the reference imagery is processed with the highest priority. Similarly, if you set the GCP priority for your reference imagery to Medium, and the remaining aspects to Low, the reference imagery is processed with the highest priority.

The Locked option retains the GCPs generated during the GCP collection process. GCP collection has two phases: collection and refinement. In the refinement phase, two separate subprocesses occur: GCP distribution and GCP refinement. During GCP distribution, the GCP priority applies. During the second phase, however, the GCP priority does not apply. Use this option when you want to retain the integrity of GCPs from a particular data aspect.

You can also set the GCP priority of more than one aspect to use the same value. That is, you can perhaps set a value of High to your reference imagery and your imported GCPs, as applicable.

Water Mask File

The path to a file that contains the polygon water-mask layer to be used for refinement of ground control points (GCPs). The path can also specify a folder that contains multiple water-mask files.

Prune GCPs

Selected by default, this check box controls whether to prune the ground control points (GCPs).

Prune GCPs Automatically

Selected by default, this check box controls whether to automatically prune the ground control points (GCPs) spatially. Pruning helps to achieve a complete coverage of image extents by GCPs, without overweighting any particular area with too many points. The spatially uniform GCP coverage ensures that the math model refined with the points is stable and accurate.

You can use this parameter in conjunction with GCP Retention Percentage to set how to prune the GCPs.

GCP Retention Percentage

Available when the Prune GCPs Automatically check box is unselected, the entered value determines the percentage of GCPs to be retained. The process adapts to the density of GCPs in different parts of the image.

GCP Retention Percentage is a value between 1 and 100, with larger values retaining a higher fraction of available GCPs. Blunder and duplicate GCPs are always eliminated; therefore, even with 100 percent requested, some GCPs may be eliminated.

Refine GCPs

Selected by default, this check box controls whether to refine the ground control points (GCP). Refinement is to systematically eliminate GCPs that have large errors. To retain the integrity of the GCPs you have imported or otherwise referenced in a text file associated with the project, clear the Refine GCPs check box.

Rejection Method

The method used to reject ground control points (GCP).

Available options are:

You can specify various values for this parameter, depending on the method selected.

Rejection Method Thresholds

The rejection threshold values for the value selected for the Rejection Method parameter.

This parameter is defined using two values (THRESH1, THRESH2); these differ in meaning depending on the selected rejection method:

Maximum GCPs

The maximum number of ground control points (GCPs) to accept.

After the module performs an initial collection of GCPs using the reference data, it refines the collection to ensure that only the most accurate points are retained.

If there are more GCPs collected than the specified maximum value, the module performs a second refinement, keeping only the GCPs with the lowest RMS error, up to the specified maximum number of GCPs. The second refinement uses the following rejection method:

RMS Error: for the second refinement, the rejection threshold value is set to the specified Maximum GCPs value.

Minimum GCPs

The minimum number of ground control points (GCPs) to accept.

After the module performs an initial collection of GCPs using the reference data, it refines the GCPs, and then verifies that the number of remaining GCPs is greater than or equal to the minimum number of GCPs.

When there are fewer GCPs remaining than the specified minimum value, the module performs a second refinement of the original GCPs, using less stringent rejection-threshold values. These values, specified for the Rejection Method Threshold parameter, differ based on the value selected for the Rejection Method parameter:

If there are still too few GCPs after the second refinement, the module aborts and displays an error message.

Refine GCPs (Block)

Selected by default, this check box controls whether to refine the ground control points (GCP) on the final block of images/GCPs. Refinement is to systematically eliminate GCPs that have large errors. To retain the integrity of the GCPs you have imported or otherwise referenced in a text file associated with the project, clear the Refine GCPs check box.

Rejection Method (Block)

The method used to reject GCPs.

Available options are:

Residual Threshold (Block)

The job removes GCPs until the Block Residual Threshold is reached. The method in which GCPs are removed is defined by the Rejection Method (Block).

Residual Threshold Type (Block)

The statistic used to reject GCPs.

Available options are:

Maximum Residual Per GCP

The maximum residual a GCP can have after refinement.

Minimum GCPs Per Image

Refinement stops removing GCPs from an image if the image does not contain the specified amount of GCPs.

Back to top

Details

General job details

Preprocessing requirements

Before running this module, the following requirements must be met to ensure the job processes successfully and produces accurate results:

Module details

The GCP Collection module, automatically collects GCPs from a variety of resources, such as geocoded images, vectors, and chip databases. This is an optional step in the CATALYST Enterprise workflow for satellite and aerial imagery. A multitude of actions take place, including:
  • Refining the math model with the GCPs collected from the reference data sources
  • Providing quality-assurance (QA) metadata for performing QA procedures on the data before proceeding in the CATALYST Enterprise workflow

With satellite imagery, the module supports all valid GDB-format images, whether or not they contain a math model. If no math model or orbit segment can be found in the given image, GCPs will be collected, and a polynomial math model will be generated from the GCPs.

With aerial imagery, the module supprts only, a valid CATALYST Professional OrthoEngine project file (oe.prj) containing exterior orientation (EO) and the camera model. When a valid OrthoEngine project file is unavailable, no GCPs are collected.

The GCP Collection module applies a series of predefined configuration files that define characteristics of the GCP-collection process and the type of output to create. These are defined in the settings.py file located in the PROHOME\exe\PGS\config folder of your CATALYST Enterprise installation.

About GCP collection on road vectors

This module extracts ground control points (GCPs) by matching an optical or SAR image with rasterized lines.

The module is designed to extract GCPs from road vectors in medium-resolution images with resolutions from about 4 meters through 15 meters. It models each road as a ribbon with a sinc-like cross-section. The ribbon is either dark on a uniform bright background, or bright on a dark background. The width of the ribbon is either set explicitly or derived from attributes of each road segment, such as the number of traffic lanes.

This model works very well for mid-resolution images, such as SPOT and Landsat 7 PAN, and provides GCPs accurate to about 1 pixel, or within 5 meters through 10 meters. PCI extended to higher-resolution images by averaging the images down to the matching resolution of 3 meters through 6 meters. The matcher can also be directed to try both bright-on-dark or dark-on-bright matches at every point, and then select whichever one is better.

The enhanced process extracts a sufficient number of GCPs, but their accuracy is still at the 5-meter through 10-meter level. This is due to several factors:
  1. Inherent accuracy of road vectors

    This factor alone limits the achievable accuracy of GCPs extracted from road vectors. Canadian experience shows that most road vectors have an accuracy of about 5 meter through 10 meter; for example, the current Canadian national road network claims an accuracy of 6.5 meters. In addition, many road vectors are less accurate, or even in disagreement with the images, due to rapid land-use changes in many areas. The road GCP module can even cope with large inaccuracies, or fail for such GCPs, but the overall achievable accuracy is limited.

  2. Road model used

    The "smooth-ribbon" model is well suited to mid-resolution images, particularly in non-urban areas. However, it becomes inadequate at higher resolutions due to other details in the images, such as vehicles, street furniture, road markings, vegetation, and building and tree shadows. Objects such as these introduce significant clutter, and lower the overall accuracy of the matches. These matches are often rejected. If they are not rejected, the matcher settles on nearby, more uniform linear objects, such as bright rooftops of large buildings or their shadows.

  3. Varied appearance of roads

    The roads may not be uniformly brighter or darker than their surroundings, as the model assumes. Their appearance depends on the spectral bands of the matched image, type and age of the road-surface material, season (snow versus no snow), and even the moisture content. In many images, roads are mid-gray, and, in such a case, are not handled well by the tool.

  4. Significant building lean in urban scenes

    High-resolution satellites fly at lower altitudes and, therefore, introduce a higher degree of building lean. Some images can also be taken in off-nadir orientation, which magnifies this effect even more. In urban areas, leaning buildings often obscure streets, at which point the matcher either fails or matches incorrect features.

  5. Elevated highways

    In most instances, the elevations of GCPs are extracted from a bare-earth digital elevation model (DEM), while some of the GCPs can be extracted from elevated highways, bridges, or multilevel highway intersections or interchanges. Such features are matched correctly in the image space, but have incorrect (ground) elevations, which leads to biased GCPs and an inaccurate refined model.

All of the preceding factors contribute to the lowered accuracy of road GCPs in high-resolution images, and limit their accuracy to the 5-meter through 10-meter range. They also introduce a possibility of systematic biases, particularly along the viewing direction of the satellite.

Road GCPs extracted from high-resolution images are still useful if the biases in the original (nominal) model of the scene exceed 10 meters through 5 meters. However, if the nominal model is already accurate to greater than 10 meters, the model refined with the road GCPs may be less accurate than the nominal one.

Images with resolutions outside the optimum range will be processed, but the results may be unsatisfactory: few extracted GCPs for low-resolution images, and many incorrect matches for high-resolution images. The module issues a warning for images with pixel sizes less than 1.9 meters.

Naming convention for GCP IDs

Each GCP collected has an ID. The naming convention of the ID is described in the following table, where the GCP ID is: XXXXXXXX_YYYY_N.

GCP ID element Description
XXXXXXXX Hash code of the input image
YYYY Hash code of the reference data
N Number of the GCP, one to any number

About GCP collection on polygon vectors

This module extracts ground control points (GCPs) by matching an optical or SAR image with rasterized polygons.

This module also automatically collects GCPs by matching patches in the image with polygons, usually lakes. The matching is performed in the spatial frequency domain using the Fast Fourier Transform (FFT) method to transform and match image patches and rasterized polygons. The matching algorithm is based on the Kuglin and Hines (1975) paper cited in the References section. The number of GCPs extracted depends on the number of polygons in the area used for GCP extraction. The GCPs can then be used in automated image orthorectification workflows.

Job results

For each scene found in the Input Scenes folder, the GCP Collection module creates a linked PCIDSK file.

With satellite imagery, the name of each PCIDSK file is system-generated with the scene ID, a state (includes a _RAW tag in the file name), and a type, such as _PAN, _MS, or _PSH. In addition to the PCIDSK files, a CATALYST Professional OrthoEngine project file is created for each scene type.

When the Input Scenes folder contains a data-ingest_RAW_PAN.prj file, GCPs are collected only on panchromatic scenes, and the GCP Collection module creates only one new OrthoEngine project file: gcp-collection_RAW_PAN.prj.

Should there be any additional OrthoEngine project files in the Input Scenes folder, they are simply copied to the output folder.

When a data-ingest_RAW_PAN.prj file does not exist in the Input Scenes folder, the GCP Collection module collects GCPs on all input OrthoEngine project files, and creates a gcp-collection.prj file for each.

With aerial imagery, the module creates, in addition to the PCIDSK file, an OrthoEngine project file of all the GCPs collected.

For each scene containing collected GCPs, the number of GCP segments created depends on various factors, such as GCP refinement, the number of GCPs collected, and the distribution of the GCPs, among others. With satellite imagery, in most cases, each scene contains at least two model segments (either a rational function model or a satellite model). The first comes from the raw data itself, and the second is created after collecting the GCPs. A new model can then be computed based on the GCPs.

When processing satellite imagery, the GCP Collection module produces:
  • gcp-collection_RAW_<TYPE>.prj: OrthoEngine project file for each scene type for which GCPs were collected. The module only collects GCPs on panchromatic data when a data-ingest_RAW_PAN.prj file exists in the Input Scenes folder.
  • data-ingest_RAW_<TYPE>.prj: OrthoEngine project files when no GCPs were collected. The module only collects GCPs on panchromatic data when a data-ingest_RAW_PAN.prj file exists in the Input Scenes folder.
  • Linked PCIDSK file of the multispectral image bands (when the Input Scenes folder contains raw multispectral data)
  • Linked PCIDSK file of the panchromatic image band (when the Input Scenes folder contains raw panchromatic data)
  • Linked PCIDSK file of the pansharpened multispectral bands (when the Input Scenes folder contains raw pansharpened data)
  • Linked PCIDSK file of the SAR image bands (when the Input Scenes folder contains raw SAR data)
  • Linked PCIDSK file of any valid raster channels other than the preceding, if existing
  • PCIDSK file of the footprint of each image
  • PCIDSK file in MFILE format (.mfile) of each image
  • Text file of information on the GCPs collected for each scene
  • Text file summarizing all GCPs collected, including residuals and error information
  • Text file summarizing all exported math models
When processing aerial-triangulation imagery, the GCP Collection module produces:
  • gcp-collection_RAW_MS.prj: OrthoEngine project file of all images and collected GCPs
  • Linked PCIDSK file to the aerial image
  • PCIDSK file in MFILE format (.mfile) of all images
  • Text file of information on the GCPs collected for each aerial scene
  • Text file summarizing all GCPs collected, including residuals and error information
  • Text file summarizing all exported math models
Note: The output folder also contains a gcp-collection_RAW_<TYPE>.prj.refhash.txt file, which contains a list of hash values of reference data.

The files are created from all of the data in the output folder each time you run the GCP Collection module (even when the Overwrite Results check box is clear).

Important: The summary files retain data from the previous GCP-collection task. That is, if you delete one or more of your input scenes, but not the corresponding output data, the summary files will still contain information on the deleted scenes when you run the module. To avoid having data from a previous GCP-collection task in your summary files, first remove them from your output folder.

You can now open the scenes in CATALYST Professional Focus or open the OrthoEngine project file in OrthoEngine to perform quality assurance (QA) tasks, or proceed to use the next module in the CATALYST Enterprise workflow.

After successfully running this module, you will generally proceed to use one or more of the following modules:
  • Tie-Point Collection and Refinement module: for tie-point collection, to improve relative accuracy between overlapping scenes
  • DEM Extraction module: uses the improved math model of stereo images to extract a digital surface model (DSM) or digital terrain model (DTM)
  • Orthorectification module: uses the updated math model to orthorectify a set of images
Back to top

References

Kuglin, C.D. and D.C. Hines (1975). "The phase correlation image alignment method." Proceedings of the IEEE 1975 International Conference on Cybernetics and Society , San Francisco, California, 163-165

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